Commit graph

34 commits

Author SHA1 Message Date
Dmitry Borisov
6f4be52a1c
[HALX86] Print the correct size of the BAR in HalpDebugPciDumpBus()
Reference: https://wiki.osdev.org/PCI#Address_and_size_of_the_BAR

To determine the amount of address space needed by a PCI device,
you must save the original value of the BAR, write a value
of all 1's to the register, then read it back.

Note: 64-bit BARs are not supported yet.
2022-05-26 16:40:17 +03:00
Timo Kreuzer
a0fb02f7f3 [HAL] Fix build with CONFIG_SMP 2021-06-19 12:17:18 +02:00
Timo Kreuzer
64e52088d1 [HAL:APIC] Fix interrupt assignment
This is probably not how it is supposed to work, but the results are somewhat similar to what Windows has.
2021-06-17 23:27:44 +02:00
Timo Kreuzer
ee514e954b [MINIHAL] Compile less stuff 2021-06-17 23:27:44 +02:00
Victor Perevertkin
34593d933b
[FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
Stanislav Motylkov
dcc1506af5
[FREELDR][HALXBOX] Initialize PCI bridge secondary & subordinate bus values
This fixes the recursion when pci.sys attempts to get PCI bridge children
devices, which in fact are non-existing.

Note that the problem in pci.sys itself also deserves a separate fix.

CORE-16319 CORE-16216
2021-05-24 18:12:02 +03:00
Stanislav Motylkov
5caa59b31a
[HAL] HalpDebugPciDumpBus: Fix parsing bugs
- Bridge devices don't have Subsystem ID and Subsystem Vendor ID
- Also they have only two BARs, don't parse data outside of bounds

Addendum to b232efe1. CORE-16319 CORE-16216
2021-05-24 17:24:24 +03:00
Stanislav Motylkov
b232efe12a
[HAL] HalpDebugPciDumpBus: Print details about PCI bridges
CORE-16319 CORE-16216
2021-05-23 15:48:21 +03:00
Jérôme Gardou
3adf450867 [REACTOS] Addendum to 5c7ce4475e - Fix MSVC 2015 build
Put data into PAGEDATA or INITDATA sections
Keep section declaration for prototypes

CORE-17540
2021-05-12 11:04:29 +02:00
Victor Perevertkin
8248f02ff4
[HALX86] Restore Windows compatibility on reporting device IDs
And forwarding IRPs from FDO to PDO

This along with 8aff2c9de7 reverts the commit 74b889b397
2021-01-31 05:37:27 +03:00
Serge Gautherie
3e79cb8e6c
[HALX86] Update the PCI hardware IDs database.
Extracted from the pci.ids database at https://pci-ids.ucw.cz/ from 2020-11-14 03:15:02 .
Maintained by Albert Pool, Martin Mares, and other volunteers from the PCI ID Project.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-11-21 17:31:40 +01:00
Victor Perevertkin
f75318b606
[HALX86] Drop hacks in HalpAddDevice to work around PnP synchronization bugs
Our PnP manager handles OS boot in a synchronous manner thus we don't
need it anymore.
This effectively reverts f23e722, d974e84, 3aff101 and 4a9fcb6

CORE-5686
2020-11-09 01:28:50 +03:00
Victor Perevertkin
5c7ce4475e
[REACTOS] Cleanup INIT and some PAGE section allocations
- Change INIT_FUNCTION and INIT_SECTION to CODE_SEG("INIT") and DATA_SEG("INIT") respectively
- Remove INIT_FUNCTION from function prototypes
- Remove alloc_text pragma calls as they are not needed anymore
2020-11-02 21:45:31 +03:00
Victor Perevertkin
8aff2c9de7
[HALX86] Report HAL root device to the stack before passing it to the driver
PnP manager now correctly delays device actions if needed, so this can
be safely done as a one operation (IoReportDetectedDevice itself creates
a PDO for us if not passed)

CORE-10456
2020-08-21 08:19:53 +03:00
Victor Perevertkin
2839c85092
[NTOS:IO] Enumerate devices only inside the PipDeviceActionWorker
Introduce the PiPerformSyncDeviceAction routine for queuing
synchronous device actions
Change all kernel code to use PiPerformSyncDeviceAction and
PiQueueDeviceAction for device enumeration

CORE-10456
2020-08-21 08:02:26 +03:00
Dmitry Borisov
b36018ff26
[HALPC98] Add Hardware Abstraction Layer for NEC PC-98 series (#3002) 2020-07-25 15:31:02 +02:00
Stanislav Motylkov
dbeaef63c1
[HAL] Fix debug prints in ShowSize() and its caller (#2377) 2020-02-23 23:02:40 +01:00
Stanislav Motylkov
35710b51af
[HALXBOX][BOOTDATA][INF] Give the Xbox HAL its own personality (#2338)
CORE-16216
2020-02-13 14:02:11 +01:00
Hermès Bélusca-Maïto
e995147a1c
[HAL] Update the PCI hardware IDs database.
Extracted from the pci.ids database at https://pci-ids.ucw.cz/ from 2019-09-28 03:15:02 .
Maintained by Albert Pool, Martin Mares, Michal Vaner, and other volunteers from the PCI ID Project.
2019-09-28 18:52:59 +02:00
Stanislav Motylkov
07706eca3a [HAL] Fix more bugs in HalpDebugPciDumpBus (#1939)
- Don't match device id outside current vendor id list.
- Don't match subsystem id outside current device id list.
- Refactor some magic constants.

Addendum to 894635b.
2019-09-28 18:30:56 +02:00
Stanislav Motylkov
894635bb00 [HAL] Fix parser bugs in HalpDebugPciDumpBus (#1895)
- Match subclass properly, don't match third subclass.
- Don't match subclass from next class, add ClassEnd boundary.
- Use class name if subclass name not available.
- Gracefully return "Unknown" if no class name found.
2019-09-23 23:46:23 +02:00
Stanislav Motylkov
17bb6d10eb [HAL] Return correct bus handler in HaliFindBusAddressTranslation
This fixes the bug when VidInitialize asks for different translated addresses
and VgaIsPresent always returns FALSE either because the machine does not have
VGA controller at all (e.g. 86Duino Zero), or it does have video hardware
that is not compatible with VGA standard (e.g. Original Xbox).

The problem investigated by Stanislav Motylkov. Suggested fix by Thomas Faber.

CORE-14625 CORE-16216 CORE-16222

Co-authored-by: Thomas Faber <thomas.faber@reactos.org>
2019-09-01 16:37:56 +02:00
Stanislav Motylkov
b99272702c [HAL] Refactor PCI blacklisting for Xbox
- Use a separate function for detecting blacklisted PCI slots
- Blacklist PCI-to-PCI bridge to avoid stack overflow on real hardware Microsoft Xbox 1.3

CORE-16319 CORE-16216
2019-08-20 01:51:16 +02:00
Stanislav Motylkov
251bf49127 [HAL] Xbox needs more PCI blacklisting!
CORE-16216
2019-08-17 21:19:28 +02:00
Stanislav Motylkov
5d57e39655 [HAL] Add Xbox Hardware Abstraction Layer
- Create xbox.cmake based on legacy.cmake and pic.cmake
- Revive Xbox HAL files and add them to the build
- Fix boot with Xbox HAL, add missing parts from halinit_up.c
- Code style and debug logging improvements in pcibus.c
- Allow to choose Xbox HAL in usetup

CORE-16216
2019-08-16 18:28:52 +02:00
Extravert-ir
2b4108b2c6 [HALX86] Removed reduntant INIT_FUNCTION attribute from HalpGetSystemInterruptVector. (#1234)
This fixes livecd crashes started since 71fefa32db.
2019-01-13 01:01:31 +01:00
Timo Kreuzer
71fefa32db
[NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779)
* Add an NDK header to define INIT_FUNCTION/INIT_SECTION globally
* Use _declspec(allocate(x)) and _declspec(code_seg(x)) on MSVC versions that support it
* Use INIT_FUNCTION on functions only and INIT_SECTION on data only (required by MSVC)
* Place INIT_FUNCTION before the return type (required by MSVC)
* Make sure declarations and implementations share the same modifiers (required by MSVC)
* Add a global linker option to suppress warnings about defined but unused INIT section
* Merge INIT section into .text in freeldr
2018-12-30 12:19:11 +01:00
Hermès Bélusca-Maïto
94d8194376
[HAL] Update the PCI hardware IDs database.
Extracted from the pci.ids database at https://pci-ids.ucw.cz/ from 2018-11-21 03:15:02 .
Maintained by Albert Pool, Martin Mares, Michal Vaner, and other volunteers from the PCI ID Project.
2018-11-25 17:21:00 +01:00
Thomas Faber
1ed0f9ab57
[HAL] Remove misleading debug prints about USB controllers. 2018-08-08 20:08:38 +02:00
Denis Malikov
4ea570975c
[HAL] Add NT6-compatible version of HalpMapPhysicalMemory64 and HalpUnmapVirtualAddress 2018-08-05 10:14:57 +02:00
Hermès Bélusca-Maïto
0436a4c73b Add a small descriptive comment for the reason why the chosen files are specified in a .gitattributes file. 2017-10-08 15:48:07 +02:00
Colin Finck
950c86fb4c Fix remaining text file line endings in the tree. (#18)
Based on https://stackoverflow.com/a/1511273

Also enforce CRLF for all *.xml files in our tree, because they are distributed with ReactOS.
2017-10-06 15:00:36 +02:00
Colin Finck
9ebf43567d Add .gitattributes and .gitignore files and normalize line endings in the repository (#10) 2017-10-04 20:37:32 +02:00
Colin Finck
c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00