Dmitry Borisov
e318d22940
[ISAPNP] Disable I/O range check before activation
...
See Table A-2 of "Plug and Play ISA Specification 1.0a"
2021-06-20 19:24:31 +06:00
Dmitry Borisov
367f4b1581
[ISAPNP] Map configuration states to PnP states
...
Rework the hardware support code to avoid unneeded transitions
between configuration states.
- Only call WaitForKey when needed.
- Each PnP state transition causes the bus to move to WaitForKey state.
Besides, deactivate logical device during processing remove request.
2021-06-20 19:24:31 +06:00
Dmitry Borisov
d6dca83baf
[ISAPNP] Reduce software delay
2021-06-20 19:24:31 +06:00
Dmitry Borisov
8ed43b6907
[ISAPNP] Fix descriptors and support alternative configurations
...
- Fix empty resource descriptors being created.
- Properly support IRQ descriptors.
- Introduce four helpers made to help search descriptors
in the logical device's requirements.
- Implement support for memory descriptors and alternative configurations.
- DMA descriptors are always DMA_8.
2021-06-20 19:24:31 +06:00
Dmitry Borisov
b29a3ac524
[ISAPNP] Read all resources when detecting devices
2021-06-20 19:24:31 +06:00
Dmitry Borisov
ca42de9c31
[ISAPNP] Rewrite the tag parser
...
- Support all resource descriptors.
- Optimize card identification.
- Detect cards that is no longer present on the bus.
- Deactivate cards after the identification phase; they will be activated
by start device IRP.
- Provide a device description and compatible IDs to the device manager.
- Prevent duplicate IDs across multiple logical devices.
- Suppress warning about the usage of literals in port addresses.
2021-06-20 19:24:31 +06:00
Dmitry Borisov
7c897dfbd1
[ISAPNP] Use the correct types for helper functions
2021-06-20 19:24:31 +06:00
Dmitry Borisov
c4b6330b14
[ISAPNP] Implement the Read Port resource management
...
Currently disabled until the kernel is ready
2021-06-20 19:24:31 +06:00
Dmitry Borisov
f15de15554
[ISAPNP] Fixes and improvements for IRP handling
...
- Implement device removal.
- Finish the Read Port special handling
introduced in 21514e473f
.
- Gracefully handle low memory situations.
- Implement IRQ translator.
- Correctly stub power IRP handling.
- Remove unneeded dispatch routines; implement WMI IRP handling.
- Do not handle requests like WRITE_CONFIG.
- Add a signature member to device extensions to make checks clearer.
2021-06-20 19:24:26 +06:00
Dmitry Borisov
e19595572a
[ISAPNP] Implement querying bus information
2021-06-20 19:24:25 +06:00
Dmitry Borisov
8f36dee6ff
[ISAPNP] Properly count descriptors
...
Fixes random pool corruptions
2021-06-20 19:24:25 +06:00
Dmitry Borisov
2d367001bd
[ISAPNP] Fix device capabilities
...
- The bus does not supply an address.
- Read Port ID is always unique.
This reverts commit fc0a0b9f84
.
See also commit 21514e473f
.
CORE-17034
2021-06-20 19:24:19 +06:00
Dmitry Borisov
21514e473f
[ISAPNP] Make Read Data Port PDO unique
...
This PDO is created only once during start of first FDO.
Other buses will remain in an inactive state until
the first FDO receives a remove request.
CORE-17034
2021-06-20 19:22:32 +06:00
Dmitry Borisov
c92bec609b
[ISAPNP] Refactor string handling
...
- Don't allocate string buffers twice.
2021-06-20 19:22:32 +06:00
Dmitry Borisov
70ba96f164
[ISAPNP] Make the driver pageable
2021-06-20 19:22:31 +06:00
Dmitry Borisov
66c195755c
[ISAPNP] Use pool tagging
2021-06-20 19:22:31 +06:00
Dmitry Borisov
8f44930f91
[ISAPNP] Code formatting
...
- Add SAL2 annotations.
- Use RTL_NUMBER_OF macro in kernel mode.
- Use better function/member names.
- Less hardcoded values.
- Add license information. See commit
d9face83c6
for details.
No functional changes.
2021-06-20 19:22:31 +06:00
Serge Gautherie
ba77a09c04
[UNIATA] Workaround random crashes on Virtual PC ( #3377 )
...
I am not sure why this line was added.
I don't know how I could improve that case.
Then, disable it, for the time being.
Addendum to 4b9cf2e
(r71252). CORE-12441 CORE-17371
2021-06-20 00:44:09 +03:00
Serge Gautherie
d65d4137d3
[UNIATA] BusMasterAdapters[]: 8086:7111 is really PIIX4, not PIIX3
...
Reverts a part of deaba45
(r57265).
2021-06-20 00:34:23 +03:00
Stanislav Motylkov
a4405f9610
[PCI] Filter out devices with null vendor and device ID
...
Some virtual machines errorneously expose null PCI device function
on PIIX4 chipset where an USB controller should normally reside.
Windows pci.sys driver does not enumerate these devices.
Affected virtual machines:
- Connectix Virtual PC 5.1.370
- Connectix Virtual PC 5.2.418
- Microsoft Virtual PC 2004 SP1 (5.3.582.27)
- Microsoft Virtual PC 2007 SP1 (6.0.156.0)
Non-affected virtual machines:
- Connectix Virtual PC 4.0
- Microsoft Hyper-V
Fixes CORE-17636.
2021-06-19 20:58:27 +03:00
Victor Perevertkin
34593d933b
[FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces
2021-06-11 15:33:08 +03:00
Timo Kreuzer
e693d5ffc0
[USBPORT] Make unload work
2021-05-28 22:29:44 +02:00
Mark Jansen
9f549dba1e
[USBHUB] Mute debug spam
2021-05-20 08:35:39 +02:00
Mark Jansen
17acec6d13
[USBCCGP] Mute debug spam
2021-05-20 08:35:39 +02:00
Piotr Hetnarowicz
07ad5eb338
[DISK_NEW] Add Polish (pl-PL) translation ( #3660 )
...
Addendum to f144b8c1
and da4ee18c
. CORE-17129
2021-05-18 14:58:34 +03:00
Piotr Hetnarowicz
3a7cd6256b
[CDROM_NEW] Add Polish (pl-PL) translation ( #3659 )
...
Addendum to 83b85e21
. CORE-17129
Co-authored-by: Adam Słaboń <asaillen@protonmail.com>
2021-05-18 14:54:05 +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
Jérôme Gardou
9930eeca76
[KDGDB] Implement TIB address retrieval
2021-05-11 11:00:49 +02:00
Dmitry Borisov
0fb3c1e91e
[PCIIDE] Make the resource section not discardable. CORE-17401 ( #3594 )
...
[PCIX] Make the resource section not discardable.
These drivers need to be able to access their message resources at any time.
2021-05-10 00:36:38 +02:00
Hervé Poussineau
a1fc312a89
[NE2000] Use the real MAC address instead of a fake one
...
These lines were added 15 years ago, in r18445.
2021-04-28 17:28:38 +02:00
Jérôme Gardou
0ab44664b6
[KDGDB] Remove debugging leftover
2021-04-28 14:52:05 +02:00
Jérôme Gardou
3ee1eb42a5
[KDGDB] Avoid looping for ever when something unexpected happens
2021-04-28 13:10:23 +02:00
Jérôme Gardou
6f000979eb
[BTRFS] Use addressing relative to RIP
2021-04-28 13:10:23 +02:00
Jérôme Gardou
0eea78648c
[KDGDB] Adapt to amd64
2021-04-28 13:10:23 +02:00
Stanislav Motylkov
4959ccc8df
[ACPI] Improve Russian translation INF file
...
Also some minor whitespace fixes
2021-04-27 23:58:53 +03:00
Victor Perevertkin
7194f2f044
[UDFS] Remove /Gz flag from options on MSVC
2021-04-15 06:45:54 +03:00
Serge Gautherie
ea3eaa5d87
[UNIATA] uniata_reg.inf: Add 'PnpInterface\5' key
...
commented out, for the time being.
CORE-17395
2021-04-11 09:30:42 +03:00
Serge Gautherie
29c061e499
[UNIATA] DriverEntry(): Fix 'Paramaters' typo, in reg key names
...
CORE-17524
2021-04-11 09:30:28 +03:00
Victor Perevertkin
74ec94e12c
[CMAKE] Some options are only supported by GCC, don't use them for clang
...
These are (so far):
-Wno-format-overflow
-Wno-nonnull-compare
-Wno-old-style-declaration
-Wno-unused-but-set-variable
2021-04-09 03:58:19 +03:00
Eric Kohl
a959d6e473
[PARTMGR] Volume devices do not have compatible IDs and their instance IDs are not unique
2021-04-05 15:35:21 +02:00
Jérôme Gardou
10379811c0
[KDGDB] Break and ignore when being prompted.
2021-03-30 17:20:57 +02:00
Jérôme Gardou
00ce9ad42a
[CMAKE] Declare KD stub Dlls as kerneldll
2021-03-24 15:20:06 +01:00
Serge Gautherie
0cf1169dd0
[CDROM_NEW] CMakeLists.txt: Add cdrom.rc ( #3513 )
...
Addendum to 83b85e2
.
CORE-17129
2021-03-08 19:10:43 +01:00
Timo Kreuzer
ca74467904
[NTOS:CC] Raise status, when CcMapData fails ( #3348 )
...
Also add a check in fastfat, that asserts, when CcMapData returns FALSE.
2021-02-09 09:29:48 +01:00
Victor Perevertkin
b705df731e
[NTOS:MM][FASTFAT_NEW] Fix DBG usage, fixes Release build
2021-02-05 11:54:10 +03:00
Nikolay Burshtyn
87a76a3b53
[CDROM_NEW][DISK_NEW] Add Russian translation ( #3427 )
2021-02-04 14:14:33 +03:00
Jérôme Gardou
c05f3d8d1c
[FASTFAT_NEW] Enable the driver
2021-02-03 09:41:22 +01:00
Serge Gautherie
fa47d6f852
[CMIPCI][DOC] Fix 4 DriverVer values
...
And add entry to '3rd Party Files.txt'.
Addendum to 4b4d95d
(r39827) and ee4368d
(r58644).
2021-02-02 01:56:50 +03:00
Stanislav Motylkov
df0261e799
[SCSIPORT] Append GEN_SCSIADAPTER compatible ID for legacy adapters ( #3441 )
...
Fixes UniATA root SCSI devices detection in the Device Manager.
Based on the description of GEN_SCSIADAPTER from Windows pnpscsi.inf:
- https://community.osr.com/discussion/41967/installing-isa-scsi-miniport-driver-through-f6-on-fresh-install-of-windows-2000-problem
- https://chat.reactos.org/reactos/pl/qii1w36wu7yrxyukh9b5dzwnje
- https://chat.reactos.org/reactos/pl/f5tanc9nfjdb5m17nhrq33994a
CORE-17398
2021-02-02 01:38:06 +03:00
Serge Gautherie
511134ec91
[CMIPCI] Compile it as NT5.2, not NT6.0
...
Addendum to ba2ab59
(r61334).
2021-02-01 09:43:31 +01:00
Hervé Poussineau
2a6d8465d6
[KDVBOX] Fix compilation with GAS x64
2021-01-28 23:10:01 +01:00
Victor Perevertkin
b0c931ac91
[PARTMGR] Remove hacks as PnP manager should not send bogus IRPs anymore
2021-01-27 05:15:16 +03:00
Victor Perevertkin
d14d7e5b8c
[USBHUB] Add a delay hack for USB boot
...
CORE-7826
2021-01-27 05:15:15 +03:00
Victor Perevertkin
af0f8581ad
[HDAUDBUS] Return failure from HDA_SendVerbs on a timeout
...
Addendum to 48b3c61b5d
2021-01-18 04:02:32 +03:00
Victor Perevertkin
66cf1d20f4
[SCSIPORT] Use pointer alignment for MiniPortDeviceExtension
...
This seems logical and some miniport drivers (uniata) actually rely on
that.
CORE-17424
2021-01-17 01:46:35 +03:00
Hervé Poussineau
31fd1ba0c6
[ACPI] Fix compilation with GCC x64
2021-01-05 14:19:45 +01:00
Jérôme Gardou
c8d07514c8
[CMAKE] Fix GCC -fstack-protector usage
2021-01-05 13:38:57 +01:00
Stanislav Motylkov
8cf363feb1
[UNIATA] Fix one of INF sections that made device unrecognized
...
In fact, UniATA todo.txt file mentions it implicitly:
- 159.fix bug with invalid INF section under XP+ (43e2)
CORE-17398
2021-01-05 02:58:04 +03:00
Victor Perevertkin
06bff99edb
[I8042PRT][RAMDISK] Fix usage of the RegistryPath in DriverEntry
...
We can't rely on it being zero-terminated, so ensure that it's
duplicated first before usage in RtlQueryRegistryValues
2021-01-04 17:19:12 +03:00
Victor Perevertkin
b1c460d34e
[I8042PRT] Add service registry entry for the driver
2021-01-04 16:50:31 +03:00
Victor Perevertkin
9029f51d8c
[UNIATA] Reduce the stack usage in AtapiDmaInit
2021-01-04 16:43:23 +03:00
Thomas Faber
9587fe1c36
[ACPICA] Update to version 20201217. CORE-17410
2021-01-01 16:20:53 +01:00
Stanislav Motylkov
88d36c93a2
[UNIATA] Properly mark ReactOS diff from upstream
...
Addendum to 4b9cf2e
(r71252), d14a872
(r73324), 7d65f2a
(r71262), and 6c0ff7b
.
CORE-11157 CORE-16078
2020-12-31 22:14:39 +03:00
Jérôme Gardou
c9f1501373
[FASTFAT_NEW] Fix callback calling convention
2020-12-31 17:14:04 +01:00
Serge Gautherie
685f15e253
[ACPI] acpi_create_registry_table(): Close the key handle, on errors ( #3372 )
...
Addendum to 44f1cf1
(r74559). CORE-12942
2020-12-31 17:42:42 +03:00
Serge Gautherie
309ed0d1fe
[ACPI] AcpiRegOpenKey(): Add a missing OBJ_KERNEL_HANDLE ( #3370 )
...
CORE-10207
2020-12-31 17:42:03 +03:00
Stanislav Motylkov
0ed5db45a4
[UNIATA] Emulate SCSI INQUIRY to properly recognize Xbox DVD drives
...
CORE-16692
2020-12-31 15:54:42 +03:00
Stanislav Motylkov
c57d0b7b98
[ACPI] Do not panic if ProcessorNameString does not exist
...
Windows does not create this value in the registry if the processor core
does not expose the Brand String. It's an optional value and existing code
accessing it already has proper NULL checks:
https://git.reactos.org/?p=reactos.git;a=blob;f=drivers/bus/acpi/buspdo.c;hb=b96e88894a4d55f5e8b94430deeb0f086151b24f#l748
This is the proper fix for regression in CORE-7952.
Addendum to 48912992
(r61666) and 4d992804
(r62642).
CORE-17413
2020-12-30 19:38:33 +03:00
Victor Perevertkin
62a4f9d42b
[MOUNTMGR] Do not handle device removal notification
...
Do not treat target device change notification as
DEVICE_INTERFACE_CHANGE_NOTIFICATION. The notification have to be
unregistered while handling GUID_DEVICE_INTERFACE_REMOVAL, so
GUID_TARGET_DEVICE_REMOVE_COMPLETE should never be sent to mountmgr in a
normal case.
CORE-16106
2020-12-27 18:35:52 +03:00
Hermès Bélusca-Maïto
8be5f73255
[SAC] Fix the HeadlessInformation.PortType checks in DriverEntry().
2020-12-27 00:51:58 +01:00
Hermès Bélusca-Maïto
5214d2fab7
[SAC] Use NULL for null pointer in last argument in HeadlessDispatch() calls.
2020-12-27 00:51:58 +01:00
Hermès Bélusca-Maïto
4ab49bc276
[BLUE] IOCTL_CONSOLE_DRAW: Fix ConsoleDraw.SizeX/Y boundary checks. Always set the cursor position before possibly refreshing screen.
2020-12-27 00:51:42 +01:00
Jérôme Gardou
9e6866402b
[FASTFAT_NEW] Fix ReactOS compiler workaround
2020-12-22 11:08:21 +01:00
Jérôme Gardou
57cf5cdc5d
[FASTFAT_NEW] Tune compile options and definitions for debugging
2020-12-22 11:08:06 +01:00
Jérôme Gardou
db34250b03
[FASTFAT_NEW] Fix build
2020-12-22 11:07:54 +01:00
Victor Perevertkin
97cf947919
[CDROM_NEW] Add the registry file to CMakeLists.txt
...
Addendum to 2f6abcc4c3
2020-12-19 21:41:52 +03:00
Victor Perevertkin
2f6abcc4c3
[CDROM_NEW] Add a registry file for use on livecd and setup
2020-12-19 21:24:24 +03:00
Joachim Henze
889eab78ca
[CDFS] Fix a macro-copy-paste and shrink the binary size CORE-17405
2020-12-18 04:48:31 +01:00
Victor Perevertkin
f9f5a78715
[MOUNTMGR] Fix bugs in MountMgrQueryDosVolumePath
...
- Do not access uninitialized SymlinkInformation on failure case
and just return
- Do not make an assumption that MOUNTMGR_TARGET_NAME has a zero-string
2020-12-16 01:13:57 +03:00
Eric Kohl
f095ff418b
[SCSIPORT] Append the missing "SCSI <device type> Device" string to the device description
2020-12-13 16:24:58 +01:00
Eric Kohl
e64984cabb
[SCSIPORT] Trim the Device ID and the Device Description
...
- Extend CopyField to support a default character and trimming.
- Use CopyField instead of CopyFieldTruncate.
CORE-17396
2020-12-12 12:46:11 +01:00
Eric Kohl
8ba87f972d
[SCSIPORT] Fix the hardware IDs and remove the superfluous one
2020-12-10 23:25:06 +01:00
Eric Kohl
5099f24373
[SCSIPORT] Add the enumerator (SCSI) to the Compatible IDs
2020-12-09 23:58:12 +01:00
Jérôme Gardou
b089903520
[SCSIPORT] Addendum to 58ad5d9e02
2020-12-09 12:40:51 +01:00
Jérôme Gardou
58ad5d9e02
[SCSIPORT] Fix locking the device extension.
...
From MSDN:
It is an error to call KeReleaseSpinLockFromDpcLevel if the specified spin lock was acquired by calling KeAcquireSpinLock because the caller's original IRQL is not restored, which can cause deadlocks or fatal page faults.
2020-12-09 12:24:23 +01:00
Victor Perevertkin
da1f4ed6af
[SCSIPORT] Fix setting the "Driver" field in the DeviceMap\Scsi registry key
2020-12-08 01:32:15 +03:00
Victor Perevertkin
39c48a4d91
[USBSTOR] Remove workarounds for old storage stack
2020-12-06 23:32:29 +03:00
Victor Perevertkin
2d6c6fa38d
[PARTMGR] Register a disk interface for disk PDO
...
CORE-14187
2020-12-06 19:47:15 +03:00
Eric Kohl
cac7b003c0
Implement IRP_MN_QUERY_DEVICE_TEXT.DeviceTextLocationInformation
2020-12-06 12:42:50 +01:00
Victor Perevertkin
f722be93d5
[USBSTOR] Enable USB (ATAPI) cdroms
...
With the cdrom_new driver, they now work
CORE-16112
2020-12-06 02:08:32 +03:00
Victor Perevertkin
cbe88e287f
[USBSTOR][SCSIPORT] Use STORAGE_ADAPTER_DESCRIPTOR from WIN8
...
This way, these drivers are more compatible with classpnp and cdrom used
by ReactOS (and don't fire asserts)
2020-12-06 01:57:56 +03:00
Victor Perevertkin
139e8f5308
[BOOTDATA] Fix boot (addendum to dd56e065bc
)
...
- GenCdRom is actually required now to be in CDDB
- Forgot to add partmgr registry keys
CORE-6264
2020-12-06 01:55:20 +03:00
Victor Perevertkin
dd56e065bc
[REACTOS] Enable PnP storage stack
...
- Use PnP storage class drivers
- Make partmgr an upper filter driver for Disk class
- Fill upper filters in txtsetup and usetup/devinst
- Add cdrom driver to the critical device database
CORE-6264
2020-12-05 22:30:43 +03:00
Victor Perevertkin
fb155b4ea4
[SCSIPORT] Fix Sense request sending
...
- Pass all SRB flags which Windows scsiport passes
- Correctly reset the queue after completion
This fixes the bug when MS cdrom driver hangs after media ejection
2020-12-05 22:28:54 +03:00
Victor Perevertkin
a97c6e0aa9
[SCSIPORT] Make the driver PnP-aware
...
Basic functions are implemented in order to work in PnP stack,
only legacy (non-pnp) miniport drivers are supported.
Tested mostly with uniata
CORE-17132
2020-12-05 22:28:54 +03:00
Victor Perevertkin
15a7b9dd2f
[CLASSPNP][CDROM_NEW][DISK_NEW] Fix clang build
...
CORE-17129
2020-12-05 22:15:29 +03:00
Victor Perevertkin
fe1b98fc36
[CLASSPNP] Fix amd64 build
...
CORE-17129
2020-12-05 22:15:10 +03:00
Victor Perevertkin
eb682bbfab
[DISK_NEW] Various small fixes
...
- Silence a (possibly wrong) assert in DiskShutdownFlush
- Fix build with GCC and MSVC amd64
CORE-17129
2020-12-05 22:14:50 +03:00
Victor Perevertkin
99f16dc8a7
[STORAHCI] Do not put the driver onto cd
...
Meanwhile, fix add_registry_inf usage (it is really a driver inf)
2020-12-05 18:06:42 +03:00
Victor Perevertkin
16e5ce8fb1
[CMAKE] Use C_STANDARD property instead of command line option
...
Addendum to 64211aa696
and 19779b3f96
2020-12-05 15:35:06 +03:00
Jérôme Gardou
3ec3e1a7f6
[BTRFS] Fix wrong condition check
2020-12-04 15:49:39 +01:00
Thomas Faber
9cc1a26b70
[ACPICA] Update to version 20201113. CORE-17382
2020-11-22 11:23:25 +01:00
Jérôme Gardou
6488440a6a
[PARTMGR] Use FORCEINLINE
2020-11-16 16:58:10 +01:00
Jérôme Gardou
f424d52488
[EXT2FS] Use GNU89 standard when using CLang
2020-11-16 16:58:10 +01:00
Jérôme Gardou
cab3e62f0e
[CDFS] Use GNU89 standard when using CLang
2020-11-16 16:58:10 +01:00
Jérôme Gardou
567a5231d5
[NFS41_DRIVER] Use GNU89 standard when compiling with CLang.
2020-11-16 16:58:10 +01:00
Jérôme Gardou
1f8db9824e
[STORAHCI] Use FORCEINLINE instead of __inline
2020-11-16 16:58:10 +01:00
Jérôme Gardou
378642eb4f
[NDIS] Use FORCEINLINE instead of __inline
2020-11-16 16:58:10 +01:00
Hervé Poussineau
65cc802b73
[PCI] Accept a bus number range instead of a single bus number
2020-11-15 18:38:37 +01:00
Serge Gautherie
33714797f4
[COMPBATT] Add a missing OBJ_KERNEL_HANDLE
...
CORE-10207
2020-11-14 12:03:27 +01:00
Victor Perevertkin
4fc9467815
[PARTMGR] Disable driver startup
2020-11-13 04:13:32 +03:00
Victor Perevertkin
bd8226afe7
[PARTMGR] Add the Partition Manager driver
...
This driver works as complement to disk.sys/classpnp.sys from Windows 10
Manages partition PDOs and exposes them as volumes to mountmgr.sys.
The driver is almost complete, just some minor IOCTLs missing (will be
added on demand)
2020-11-13 03:04:15 +03:00
Victor Perevertkin
bbfc515eb3
[MOUNTMGR] Volumes with NO_DRIVE_LETTER attribute should not be mounted, not the opposite
2020-11-12 19:19:27 +03:00
Jérôme Gardou
3acbec4851
[KDGDB] Always use kernel stack to get stack frame
2020-11-09 10:47:05 +01:00
Victor Perevertkin
b8525ce7a5
[MOUNTMGR] Fix ReparseFile concatenation in OnlineMountedVolumes
...
- ReparseFile was concatenated with itself, instead of ReparseIndex
- Meanwhile, use RtlAppendUnicodeStringToString for concatenating
strings instead of raw memory operations
2020-11-08 23:32:25 +03:00
Victor Perevertkin
ae72f18b55
[UNIATA] Add an inf file for UniATA Management Port
2020-11-03 23:23:35 +03:00
Victor Perevertkin
48b3c61b5d
[HDAUDBUS] Add a timeout into HDA_SendVerbs
...
This function may stuck during device installation if there are issues
with interrupts (or with a device itself).
This fixes the boot on my testing ThinkPad x60s
2020-11-03 23:18:14 +03:00
Victor Perevertkin
da4ee18cc9
[STORPROP][CDROM_NEW][DISK_NEW] Improve disk and cdrom device installation
...
- Take a proper inf file for disk.sys
- Add class information into cdrom.inf
- Make a correct stub for storprop!DvdClassInstaller
2020-11-03 23:12:40 +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
ba447018c8
[MOUNTMGR] Move the driver to drivers/storage
...
Effectively mountmgr.sys is an essential part of the storage stack
2020-11-01 12:35:56 +03:00
Timo Kreuzer
0e5a4d5afe
[PSDK] Import some SAL headers from MS
...
Taken from https://github.com/microsoft/ChakraCore/tree/master/pal/inc/rt
* Move _Check_return_opt_ and _Check_return_wat_ to crtdefs.h
* Update sal.h from https://github.com/microsoft/ChakraCore/blob/master/pal/inc/rt/sal.h
* Import no_sal2.h from MS and remove the one in NDK
* Import specstrings.h from MS
* Import specstrings_strict.h from MS
* Add specstrings_undef.h (based on defines in specstrings_strict.h)
* Remove __REACTOS__ hacks from cdfs
2020-10-29 06:51:28 +01:00
Thomas Faber
303f17f884
[FASTFAT] Implement the overflow queue. CORE-17344 CORE-17328
...
This avoids blocking all Ex worker threads in fastfat, thereby making Cc
unable to issue the lazy writes that would unblock those workers.
This is more or less directly taken from fastfat_new.
2020-10-24 19:53:36 +02:00
Victor Perevertkin
ba09834c5e
[PARPORT] Fix I/O port length check
...
The Standard Parallel Port (SPP) has 3 registers, not 4: data, status, control
This fixes the driver on the Compaq N600c laptop
2020-10-21 15:24:10 +03:00
Jérôme Gardou
ed61512236
[CMAKE] Get rid of add_compile_flags_language macro
...
in favor of add_compile_options and the like with generator expressions
Also take this as an opportunity to remove the C++11 standard hack, GCC 8 now defaults to C++14
2020-10-20 21:44:54 +02:00
Jérôme Gardou
7e116f0ef3
[CMAKE] Get rid of replace_compile_flags
...
Introduce a finer-grained remove_target_compile_option instead
2020-10-20 21:44:54 +02:00
Jérôme Gardou
d6ea8659c8
[CMAKE] Get rid of the set_cpp macro
...
Instead of messing with global variables and the like, we introduce two target properties:
- WITH_CXX_EXCEPTIONS: if you want to use C++ exceptions
- WITH_CXX_RTTI: if you need RTTI in your module
You can use the newly introduced set_target_cpp_properties function, with WITH_EXCEPTIONS and WITH_RTTI arguments
We also introduce two libraries :
- cpprt: for C++ runtime routines
- cppstl: for the C++ standard template library
NB: On GCC, this requires to create imported libraries with the related built-in libraries:libsupc++, limingwex, libstdc++
Finally, we manage the relevant flags with the ad-hoc generator expressions
So, if you don't need exceptions, nor RTTI, nor use any runtime at all: you simply have nothing else to do than add your C++ file to your module
2020-10-20 21:44:54 +02:00
Victor Perevertkin
1b45d9ee4b
[SCSIPORT] Split scsiport.c file into several ones, prepare for the refactoring
...
CORE-17132
2020-10-17 04:06:36 +03:00
Thomas Faber
320abafdc3
[FASTFAT] Ensure that deferred write IRP contexts are not touched. CORE-17328
...
Cc may decide to process deferred writes any time, so the context might
already be freed by the time we return from CcDeferWrite.
Also mark the IRP as pending, since we're going to return STATUS_PENDING.
2020-10-16 16:18:56 +02:00
Victor Perevertkin
83b85e2124
[CDROM_NEW] Import Microsoft CDROM class driver from GitHub
...
The source code is licensed under MS-PL license, taken from Windows Driver Samples
repository (microsoft/Windows-driver-samples@master/storage/class/cdrom/)
Synched with commit 96eb96dfb613e4c745db6bd1f53a92fe7e2290fc
The driver is written for Windows 10 and uses KMDF so we compile it with ntoskrnl_vista
and wdf01000 statically linked (for wdf01000 this will likely be changed in future)
CORE-17129
2020-10-16 04:37:10 +03:00
Thomas Faber
3499b96682
[ACPICA] Update to version 20200925. CORE-17170
2020-10-16 01:21:52 +02:00
Thomas Faber
8605f660f4
[ACPICA] Update to version 20200717. CORE-17170
2020-10-16 01:21:47 +02:00
Jérôme Gardou
612b1f2e6e
[UDFS] Fix build with lower optimization level
2020-10-15 11:29:09 +02:00
Doug Lyons
79794b524c
[FASTFAT] Fix create for DOT and DOT-DOT leaving bad directory entry ( #3241 )
2020-10-12 18:54:06 +03:00
Dmitry Borisov
310a24da6e
[INPORT] Add driver for bus mouse devices ( #3173 )
...
It adds basic input support for:
- Standard Bus Mouse
- Standard InPort Mouse
- Logitech Bus Mouse
- Microsoft Bus Mouse
- Microsoft InPort Mouse
- NEC PC-98 Bus Mouse
Untested on PC/AT, but should work.
2020-10-10 16:46:16 +03:00
Thomas Brogan
2e1aeb12df
[TCPIP] Add NULL checks in DispTdiQueryInformation. CORE-12274
...
Add additional NULL checks to DispTdiQueryInformation,
which return STATUS_INVALID_PARAMETER.
Co-authored-by: Peter Hater <7element@mail.bg>
2020-10-03 13:05:12 +02:00
Adam Słaboń
50ff453434
[TRANSLATION] Polish translation update ( #3233 )
2020-09-26 21:42:36 +03:00
Katayama Hirofumi MZ
1062a297bf
[DRIVERS][SCSIPORT] Fix build fdc47e7
2020-09-26 11:20:11 +09:00
Victor Perevertkin
fdc47e7ea7
[SCSIPORT][FORMATTING] Fix formatting and PCH generation
2020-09-26 03:47:52 +03:00
Timo Kreuzer
ab43f86980
[KSECDD] Fix RtlEncryptMemory and improve test
2020-09-25 09:39:51 +02:00
Victor Perevertkin
d01518da7c
[XDK] Add definitions required for newer storage class drivers (cdrom)
...
That introduced some warnings in the current code which were corrected as well
CORE-17129
2020-09-24 22:30:52 +03:00
Michael Stamper
e45bacda07
[PORTCLS] Fix audio stutter with official AC97 driver ( #3225 )
...
Replace call to AllocatedBufferSize(), with BufferSize().
Indeed (quoting https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/portcls/nf-portcls-idmachannel-buffersize ):
> The BufferSize() method returns the buffer size that was set by the previous call to IDmaChannel::SetBufferSize(). If SetBufferSize() has not been called since the IDmaChannel::AllocateBuffer() call, BufferSize returns the allocated buffer size. The DMA-channel object does not actually use this value internally. This value is maintained by the object to **allow its various clients to communicate the intended size of the buffer**.
And this is exactly what we want to do.
2020-09-22 15:49:34 +02:00
Serge Gautherie
889b077b23
[REACTOS] *.spec: Fix some function/parameter types ( #3154 )
2020-09-20 19:21:11 +02:00
Dmitry Borisov
0f8de896aa
[PCIIDEX] Implement missing PciIdeXDebugPrint function ( #3146 )
...
It's useful for debugging IDE controller minidrivers, and it makes pciidex.sys work on Windows XP/2003.
- https://user-images.githubusercontent.com/37072976/92856412-39d56b80-f415-11ea-880f-48998c11112d.png
CORE-17256
2020-09-15 15:10:52 +03:00
Nguyen Trung Khanh
166f815e7b
[FILESYSTEMS] Fix pool memory disclosure in filesystem drivers supporting FS_INFORMATION_CLASS.FileFsVolumeInformation ( #2975 )
...
* FileFsVolumeInformation-memory-disclosure
* remove unnecessary assignment to 0
* fix
2020-09-11 15:51:35 +03:00
Nguyen Trung Khanh
ede7a20a17
[FILESYSTEMS] Fix pool memory disclosure in NtQueryAttributesFile handlers ( #2926 )
...
Fix pool memory disclosure caused by alignment bytes at the end of the _FILE_BASIC_INFORMATION structure
2020-09-11 15:47:43 +03:00
Kyle Katarn
038daa6367
[SHELL32][PAINT][DRIVERS][SHELLEXT] French translation update ( #3092 )
...
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-03 15:16:44 +02:00
Victor Perevertkin
f144b8c10d
[DISK_NEW] Import Microsoft Disk class driver from GitHub
...
The source code is licensed under MS-PL license, taken from Windows Driver Samples
repository (https://github.com/microsoft/Windows-driver-samples/tree/master/storage/class/disk/ )
Synched with commit 3428c5feaac7c1a5e2a09db0ed93392f7568f9e6
The driver is written for Windows 8+, so we compile it with ntoskrnl_vista
statically linked and with NTDDI_WIN8 defined
CORE-17129
2020-08-30 03:43:14 +03:00
Victor Perevertkin
fa8ce680d4
[CLASSPNP] Add the license text along with the driver
...
Addendum to bf1b3cb175
2020-08-30 03:40:37 +03:00
Victor Perevertkin
bf1b3cb175
[CLASSPNP] Import Microsoft SCSI class driver from GitHub
...
The source code is licensed under MS-PL license, taken from Windows Driver Samples
repository (https://github.com/microsoft/Windows-driver-samples/tree/master/storage/class/classpnp/ )
Synched with commit 88541f70c4273ecd30c8c7c72135bc038a00fd88
The driver is written for Windows 8+, so we compile it with ntoskrnl_vista
statically linked and with NTDDI_WIN8 defined
CORE-17129
2020-08-29 06:06:22 +03:00
Victor Perevertkin
c57350e295
[CLASSPNP][DISK_NEW][CDROM_NEW] Remove the drivers
...
Due to WDK/DDK licensing issues
CORE-17129
2020-08-28 05:47:27 +03:00
Stanislav Motylkov
27ad576ff1
[RAMDISK] Add Russian (ru-RU) translation to INF file
...
Addendum to c166933
.
2020-08-27 02:36:27 +03:00
Adam Słaboń
c166933135
[RAMDISK] Add setup information file for the ramdisk driver ( #3100 )
2020-08-27 01:28:31 +03:00
Stanislav Motylkov
2a77e359e4
[XBOX] Move NV2A XGPU definitions into header file
...
TODO: helper functions should be also moved. CORE-16216
2020-08-26 16:58:01 +03:00
Thomas Faber
dff2d58693
[NPFS] Set completion routine on the correct IRP in NpTransceive.
2020-08-23 17:05:52 +02:00
Thomas Faber
794d00c303
[FREELDR][NETKVM][ATL_APITEST] Pick the GCC code path for clang in some cases. CORE-17202
2020-08-23 12:07:37 +02:00
Serge Gautherie
6b8f3967ae
[REISERFS] Fix MSVC compilation with '_VS_ANALYZE_' ( #3013 )
...
'...\write.c(38): error C2373: 'RfsdFloppyFlush': redefinition; different type modifiers'
'...\write.c(45): error C2373: 'RfsdFloppyFlushDpc': redefinition; different type modifiers'
2020-08-18 14:20:30 +03:00
Nguyen Trung Khanh
9adcacdbc8
[MOUNTMGR] Fix pool memory disclosure in QueryPointsFromMemory ( #3022 )
2020-08-17 16:45:35 +02:00
Joachim Henze
011a9e2ae8
[SCSIPORT] Demote a noisy DPRINT1 to DPRINT CORE-17200
...
It started to spam when more components of the MountMgr
were coded during 0.4.14dev.
According to Victor Perevertkin it is not crucial for us
to see it, as those are 'optional MountMgr features'.
Imho this points towards unimplemented stuff.
No official ros release has been affected, because I did
revert most of the new MountMgr features for 0.4.14release
earlier.
2020-08-15 12:50:45 +02:00
Victor Perevertkin
a77a65ab6d
[MOUNTMGR] Avoid an endless loop while sending GUID_IO_VOLUME_NAME_CHANGE notification
2020-08-01 04:58:08 +03:00
Hervé Poussineau
9df05ba4b6
[ISAPNP] Properly stub IRP_MJ_POWER
2020-07-30 13:24:29 +02:00
Dmitry Borisov
06cbc2acd2
[BOOTVID] More improvements for PC-98 ( #2936 )
...
- Fix failure handling
- Reduce memory mapping that's not needed
2020-07-29 19:10:39 +03:00
Dmitry Borisov
e318801c1c
[BOOTVID] Fix screen buffer copying code for PC-98 ( #2936 )
2020-07-29 19:10:39 +03:00
Dmitry Borisov
c87be643f8
[BOOTVID] Improve text scrolling performance for PC-98 ( #2936 )
2020-07-29 19:10:39 +03:00
Dmitry Borisov
5d40981efa
[BOOTVID] Fix BitBlt behavior ( #2936 )
2020-07-29 19:10:38 +03:00
Dmitry Borisov
da9384b918
[BOOTVID] Annotate some functions to avoid confusing ( #2936 )
...
Also fix some magic constants.
2020-07-29 19:10:38 +03:00
Dmitry Borisov
4d54b8ce69
[BOOTVID] Fix drawing strings on top of the bitmap ( #2936 )
...
Also fix VGA pixel drawing.
CORE-15896
2020-07-29 19:10:38 +03:00
Stanislav Motylkov
06d5ed7ece
[FASTFAT] Support 64 KiB cluster sizes
...
FAT16 filesystem was not recognized on some 4GB USB flash drives.
This change makes them just work.
References:
- https://chat.reactos.org/reactos/pl/h83pm5ngkffk7qiyrmqnaaopxh
- https://support.microsoft.com/en-us/help/140365/default-cluster-size-for-ntfs-fat-and-exfat
CORE-16511
2020-07-22 19:50:24 +03:00
Trevor Thompson
b338fb7beb
[CLASS2]: Set DiskSize member of deviceExtension->DiskGeometry in ScsiClassReadDriveCapacity(). Consolidate code and comment for setting media capacity in bytes. CORE-17166
2020-07-21 01:21:16 +03:00
Serge Gautherie
89971a3757
[CDFS][FLOPPY_NEW] Simplify unsupported NT6.2+ workarounds ( #2956 )
2020-07-18 15:31:48 +02:00
Victor Perevertkin
c40b0866b1
[UDFS] Zero-initialize IO_STATUS_BLOCK data in UDFCommonCreate
...
Some places have been changed to return FILE_DOES_NOT_EXIST, everything
else just returns 0. FastFAT driver from MS does the same (tm),
so I'm not going to have a big research here.
CORE-16623
Co-authored-by: Suraj K Suresh <kssuraj15@gmail.com>
2020-06-29 02:37:12 +03:00
Serge Gautherie
8983adf967
[FASTFAT_NEW] Sync to upstream 16022c5 ( #2938 )
2020-06-26 20:03:01 +03:00
Victor Perevertkin
1e512e29dc
[USBSTOR] Correctly terminate a REG_MULTI_SZ string
...
returned by the IRP_MN_QUERY_ID handler
2020-06-24 21:15:58 +03:00
Thomas Faber
67592f9750
[NPFS] Fix querying FileAllInformation.
2020-06-24 09:04:05 +02:00
Thomas Faber
29b49c36ff
[KBDCLASS][MOUCLASS] Properly stub power IRP handling. CORE-12148 CORE-17136
2020-06-21 10:39:49 +02:00
Thomas Faber
23ccd13639
[I8042PRT] Get rid of IrpStub. CORE-12148 CORE-17136
...
We neither want to handle IRPs we don't understand, nor do we want to
assert in case of unexpected IOCTLs.
2020-06-21 10:39:34 +02:00
Serge Gautherie
ab2b7a6bc6
[FASTFAT_NEW] Simplify unsupported NT6.2+ workarounds
2020-06-21 09:27:44 +03:00
Serge Gautherie
1ceed5ad5a
[FASTFAT_NEW] Remove obsolete compiler workarounds
...
following upgrade to GCC 8.4 and MSVC 2015.
2020-06-21 09:27:44 +03:00
Serge Gautherie
9611e88624
[FASTFAT_NEW] Fix GCC 8.4 build
...
'.../strucsup.c:...:...: error: 'Ex*NPagedLookasideList' is static but used in inline function 'Fat*' which is not static [-Werror]'
2020-06-21 09:27:44 +03:00
Serge Gautherie
f26fa55891
[FASTFAT_NEW] fatdata.h: Properly mark ReactOS own code
...
Addendum to 3013e15
.
2020-06-21 09:27:44 +03:00
Hervé Poussineau
2b9941e7cb
[PCI] Fix PDO removal
...
We must not do anything on PDO removal, especially not deleting it.
We are allowed to delete it, only once we successfully completed a IRP_MN_QUERY_DEVICE_RELATIONS without with PDO.
2020-06-20 08:16:24 +02:00
Thomas Faber
cab7e9ade8
[ACPICA] Update to version 20200528. CORE-17094
2020-06-14 09:19:02 +02:00
Victor Perevertkin
2540c3b1e8
[USBSTOR] Fix unused variable introduced in 94e61c3
2020-06-13 03:20:08 +03:00
Victor Perevertkin
493f2ace11
[USBSTOR] Fix wrong function name in a9b97ae
2020-06-13 03:07:00 +03:00
Victor Perevertkin
94e61c3080
[USBSTOR] Move PDO's Inquiry data and FDO's SCSI context
...
to their Device Extensions.
This way the driver can better handle low memory situations
2020-06-12 16:55:27 +03:00
Victor Perevertkin
a9b97aeded
[USBSTOR] General refactoring.
...
Remove unused structures and unused fields in device extensions.
Replaced magic numbers with constants
2020-06-12 16:55:27 +03:00
Amine Khaldi
139a3d6661
[CMAKE] Implement PCH builds with target_precompile_headers. CORE-16905
2020-06-06 21:58:41 +03:00
Serge Gautherie
11345aedd8
[FORMATTING] [CMAKE] Remove space in 'if (' ( #2847 )
2020-05-26 20:24:02 +02:00
Stanislav Motylkov
7c8d5635aa
[PROCESSR][INF] Fix "Intel Intel" duplication typos
...
Addendum to 3509318
.
2020-05-25 02:36:17 +03:00
Serge Gautherie
924f19f6dc
[REACTOS] Remove executable bits on source files ( #2822 )
2020-05-20 23:09:44 +02:00
Stanislav Motylkov
fa1ec0a2ed
[BOOTVID][HALXBOX] Implement boot video driver for Xbox ( #2774 )
...
Also make HalpBiosDisplayReset() function always return FALSE,
because we don't have a BIOS on Xbox.
CORE-16216 CORE-16219
2020-05-17 19:18:32 +03:00
Hervé Poussineau
e246b9947e
[ISAPNP] Mark read data port as started, even if no ISAPNP card is present
...
CORE-17056
2020-05-16 23:20:38 +02:00
Mark Jansen
da777baa3d
[ISAPNP] Initialize uninitialized variable
...
Return value was a suggestion from Thomas,
it still boots for me (tm)
2020-05-16 14:03:04 +02:00
Dmitry Borisov
e901489574
[BOOTVID] Add boot video driver for NEC PC-98 series ( #2787 )
2020-05-15 22:28:34 +03:00
Joachim Henze
6c0ff7bd84
[UNIATA] Workaround regression CORE-16078, booting broke on specific Intel Z170
...
JIRA-user "Illen" reported booting from his Z170 controller worked up to
0.4.12-dev-936-g89aaf0e
and would refuse booting - beginning with uniata commit
0.4.12-dev-937-g
b546130731
For sure this workaround is just a temporary and no proper solution,
but was confirmed to be working by "Illen".
We have no clear understanding of the real bug yet.
Can be replaced by something better at any time.
It was already committed into 0.4.12, 0.4.13, 0.4.14.
We never had an affected release therefore.
Since no one took care of this bug ever,
the workaround will now be committed to master as well.
cherry picked from commit 0.4.13-RC-9-g
11178f38e4
2020-05-12 21:13:21 +02:00
Stanislav Motylkov
cd91271796
[NTOSKRNL][HAL][BOOTVID] Some more code refactoring
...
- Add boot video color constants
- Refactor palette initialization
- Move some common stuff in right place
- Get rid of some magic constants and hardcoded values
- Get rid of TopDelta variable (calculated at compile time)
- Update SAL annotations
Addendum to 5f2ca473
. CORE-16216 CORE-16219
2020-05-12 15:56:37 +03:00
Hervé Poussineau
fc0a0b9f84
[ISAPNP] Mark Read Data Port as not having a unique ID
...
This fixes a bugcheck in ntoskrnl.exe when computer has multiple ISA buses.
CORE-17034
2020-05-09 16:54:46 +02:00
Serge Gautherie
8ae1702a16
[PCIIDEX] Increase command port length to 8 from 7. CORE-9922 ( #2711 )
...
Co-Authored-By: Vadim Galyant <vgal@rambler.ru>
2020-05-07 10:16:18 +03:00
Sylvain Deverre
140ec9d037
[KDGDB] Fix GCC8 build
2020-05-01 16:37:13 +02:00
Thomas Faber
baa3380649
[ACPICA] Update to version 20190430. CORE-16998
2020-05-01 12:18:48 +02:00
Thomas Faber
71a4462ad5
[USBCCGP] Ignore IRP_MN_REMOVE_DEVICE return status and don't wait for it to complete.
2020-05-01 12:05:12 +02:00
Thomas Faber
823101274a
[USBCCGP] Don't handle IRP_MN_QUERY_DEVICE_TEXT requests other than device description.
2020-05-01 12:05:11 +02:00
Thomas Faber
0d15b2a3cb
[USBCCGP] Correctly stub PDO power IRP handling.
2020-05-01 12:05:11 +02:00
Thomas Faber
6c3a10c55a
[USBCCGP] Always forward device relations IRPs.
2020-05-01 12:05:06 +02:00
Victor Perevertkin
019f21ee1d
[MEDIA][CMAKE] Create add_driver_inf cmake function
...
*.inf files for drivers can now be placed along with the driver code
2020-04-26 20:28:04 +03:00
Hervé Poussineau
aaa416d36a
[BLUE] Add an IOCTL to directly choose which font to use (instead of codepage)
2020-04-26 14:54:09 +02:00
Timo Kreuzer
b82bf8ce16
[NTOS:IO] Fix parsing of resource lists
...
Also add a hack to avoid failing on now occurring resource conflict detection and try to fix at least one resource in ACPI hal.
CORE-10146
CORE-12892
2020-04-24 13:58:09 +03:00
Sylvain Deverre
ca2aab6964
[NETKVM] Fix GCC build
2020-04-23 20:11:10 +02:00
James Tabor
eecfb2362d
[NETKVM] Fix Build
2020-04-23 09:33:32 -05:00
Nguyen Trung Khanh
4c37757e81
[NETKVM] Import NetKVM network adapter driver by Red Hat
...
CORE-15841
2020-04-23 16:33:09 +03:00
Victor Perevertkin
3c4a68ec46
[BTRFS] Fix amd64 build
...
CORE-16679
2020-04-23 07:49:35 +03:00
Victor Perevertkin
3ba423996c
[BTRFS] Fix build
...
CORE-16679
2020-04-23 07:29:04 +03:00
Victor Perevertkin
194ea909fd
[BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.2
...
CORE-16679
2020-04-23 07:07:36 +03:00
Dmitry Borisov
4501bbac8f
[KDCOM][NTOS:INBV][FREELDR] Decrease default baud rate for PC-98 target ( #2601 )
...
According to PC-9801 Bible p. 50, divisor for PIT will become unsupported in some cases after having removed the fractional part. Replace 19200 value with 9600 which is supported by both 10 MHz and 8 MHz machines.
2020-04-21 23:22:42 +03:00
Sylvain Deverre
309e9c13e1
[KDGDB] Allow kdgdb to continue when hit by a first-chance exception.
...
When gdb receives a fault, it converts it to "signal", and send "C"
command to server to transfer the signal it couldn't handle.
On ReactOS (and Windows ?) side, we tell KD API that we continue with an
error code, so the exception handler can be called.
This is useful when playing with gflags, especially +soe, with KDGDB.
2020-04-19 15:01:41 +02:00
Victor Perevertkin
7e069ccdb2
[CMAKE] Replace custom functions to built-in ones
...
add_target_compile_definitions -> target_compile_definitions
add_target_compile_flags -> target_compile_options
add_target_include_directories -> target_include_directories
2020-04-16 15:59:38 +03:00
Doug Lyons
cb10698316
[KSECDD] Improve GetSecurityUserInfo stub ( #2438 )
...
- Fix UNIMPLEMENTED_DBGBREAK seen using FileMon
- Add SAL2 Annotations and remove unneeded comments
- Return NULL pointer
CORE-15186
2020-04-16 01:32:47 +03:00
Thomas Faber
152265729b
[ACPI] Properly return a single alternative in Bus_PDO_QueryResourceRequirements. CORE-12892 CORE-14688
...
In ACPI resource descriptors, alternatives are marked with
StartDependent tags. Only the last set is terminated with EndDependent.
Therefore, since we only return the first alternative list for now,
ignore the first StartDependent tag and terminate enumeration at the second.
In the future we will need to build the full set of alternative lists here,
which will also make the unit test succeed fully.
This should fix random resource conflicts and make COM ports usable.
2020-04-11 23:43:05 +02:00
Thomas Faber
28be285da5
[ACPI] Avoid unnecessary casts.
2020-04-11 23:43:05 +02:00
Thomas Faber
9bcd835074
[ACPI_APITEST] Add a unit test for Bus_PDO_QueryResourceRequirements. CORE-12892
...
This will allow us to verify fixes made to function, which is quite broken.
2020-04-11 23:42:59 +02:00
Eric Kohl
7bef5b882a
[USBSTOR] Add missing compatible device id 5
2020-04-10 13:41:01 +02:00
Vadim Galyant
ef2323a146
[HALX86][PCIX] Statically link HALx86 and PCIX to the arbiter library. ( #2471 )
2020-04-09 19:41:16 +02:00
Hermès Bélusca-Maïto
85f3eeabc4
[BOOTVID] Addendum to 5f2ca473
: Forgot to include the precompiled header.
2020-04-09 17:45:40 +02:00
Hermès Bélusca-Maïto
7e0927a39f
[FLTMGR][NDK] Fix typos.
2020-04-09 16:05:26 +02:00
Dmitry Borisov
5f2ca473dc
[BOOTVID] Code refactoring. ( #2510 )
...
- Abstract the VGA and LCD code.
- Create a common file for all platforms.
2020-04-09 15:56:16 +02:00
Dmitry Borisov
df23bb779e
[BOOTVID] Move the VGA code into the PC directory. ( #2510 )
2020-04-09 15:33:58 +02:00
Dmitry Borisov
1610367fe2
[BOOTVID][NTOSKRNL][HALX86] Move hardcoded coordinates of bootvid into one place. ( #2504 )
...
Co-Authored-By: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2020-04-09 15:17:48 +02:00
Victor Perevertkin
167fa2c26a
[TCPIP] Remove duplicate declarations from ticonsts.h
2020-04-07 05:32:40 +03:00
Victor Perevertkin
740a859e92
[TCPIP] Implement IOCTL_ICMP_ECHO_REQUEST in tcpip.sys
...
Also clean up ICMP handling code in sdk/lib/drivers/ip
CORE-10760
2020-04-07 05:32:40 +03:00
Victor Perevertkin
792b64ea46
[TCPIP][FORMATTING] Format TiDispatch function. No functional changes
2020-04-07 05:32:40 +03:00
Thomas Faber
040546d8ff
[ACPICA] Update to version 20200326. CORE-16783
2020-04-05 14:44:53 +02:00
Benjamin Aerni
66cf7b6028
[PORTCLS] Stub missing IoControlCode switches ( #1756 )
...
Stub missing switches: IOCTL_KS_HANDSHAKE and IOCTL_KS_METHOD.
2020-03-30 12:58:25 +02:00
Jérôme Gardou
de369ce26b
[KDGDB] Various fixes and improvements
2020-03-30 07:53:34 +00:00
Hervé Poussineau
f5658fd3b4
[STORAHCI] Replace some __inline by FORCEINLINE
...
Functions were declared as __inline, then used, and then defined.
This leads to some linking errors with some compilers.
2020-03-26 16:39:16 +01:00
Hervé Poussineau
796c1ac993
[TCPIP] Add some static specifiers, to prevent exporting FORCEINLINE function outside compilation unit
2020-03-26 16:39:16 +01:00
Hervé Poussineau
7cda1ed2f5
[ISAPNP] Report DMA channels
2020-03-26 16:36:23 +01:00
Hervé Poussineau
eb66324d7c
[ISAPNP] Fix reporting of devices with hexadecimal productId
2020-03-26 16:36:22 +01:00
Hervé Poussineau
67141abef1
[ISAPNP] Create requirements and resource lists when detecting a device
2020-03-22 14:29:38 +01:00
Hervé Poussineau
0ca5567894
[ISAPNP] Read all tags when detecting devices, and keep interesting ones
...
Currently, we only keep device identification, IO ports and IRQs.
2020-03-22 14:29:38 +01:00
Hervé Poussineau
61c1079a18
[ISAPNP] Create resource list ahead of IRP_MN_QUERY_RESOURCES
2020-03-22 14:29:38 +01:00
Hervé Poussineau
debec8c96e
[ISAPNP] Create resource requirements ahead of IRP_MN_QUERY_RESOURCE_REQUIREMENTS
2020-03-22 14:29:38 +01:00
Hervé Poussineau
1dcc6f8b94
[ISAPNP] Fix capabilities for devices
2020-03-22 14:29:38 +01:00
Hervé Poussineau
42724f47f8
[ISAPNP] Return a compatibleIDs only if defined
2020-03-22 14:29:38 +01:00
Hervé Poussineau
b905c40d2e
[ISAPNP] Fix some indentation
2020-03-22 14:29:38 +01:00
Eric Kohl
bac4e185fb
[USBHUB] Set the Removable flag for all ports of a USB hub
2020-03-21 13:23:21 +01:00
Hervé Poussineau
7b1e28e724
[ISAPNP] Fix some warnings
2020-03-21 08:29:15 +01:00
Hervé Poussineau
2abd853b37
[ISAPNP] Implement some more IRP_MJ_PNP/IRP_MN_* requests
...
We either succeed them, or we pass them down to the ISAPNP FDO.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
8b53ed1d9b
[ISAPNP] Implement IRP_MN_QUERY_PNP_DEVICE_STATE for ReadDataPort
2020-03-20 22:40:11 +01:00
Hervé Poussineau
5b9929a076
[ISAPNP] Detect devices only once ReadDataPort is started
...
Also let kernel choose the read data port address, by using the resources given in IRP_MN_START_DEVICE.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
5a404e6c50
[ISAPNP] Implement IRP_MN_QUERY_RESOURCES/IRP_MN_QUERY_RESOURCE_REQUIREMENTS for ReadDataPort
2020-03-20 22:40:11 +01:00
Hervé Poussineau
2fe644dc86
[ISAPNP] Report removal relations on ReadDataPort
2020-03-20 22:40:11 +01:00
Hervé Poussineau
c4813f73f5
[ISAPNP] Report a ReadDataPort PDO
...
This PDO will later request resources required for ISAPNP bus.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
e0607fcebf
[ISAPNP] Create PDO identifiers ahead of IRP_MN_QUERY_ID
2020-03-20 22:40:11 +01:00
Hervé Poussineau
89aff07a67
[ISAPNP] Extract function to create DOs
2020-03-20 22:40:11 +01:00
Hervé Poussineau
d0c7bd98c7
[ISAPNP] Fix some return codes
2020-03-20 22:40:11 +01:00
Hervé Poussineau
947b49aac3
[ISAPNP] Reformat files. No code change.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
7a98d28d7f
[ISAPNP] Rewrite device reporting method
...
IoCreateDevice() was called too early, when a spinlock was acquired.
Create ISAPNP_LOGICAL_DEVICE structure when a device is detected, and call IoCreateDevice() later, when required.
2020-03-14 23:39:01 +01:00
Hervé Poussineau
58e8be6258
[ISAPNP] Fix reading of serial number
2020-03-14 23:39:00 +01:00
Joachim Henze
23f6b36174
[USBHUB] Demote a DbgBreakPoint CORE-16394
...
The DbgBreakPoint() was reported to be continuable without
obvious side-effects by Doug Lyons.
Thank you for your tests Doug.
To prevent what end-users may otherwise perceive as a
freeze-regression caused by enabling the new driver in
0.4.13-dev-1048-g
6392c5a78c
2020-03-10 22:48:02 +01:00
Dmitry Borisov
222e79232c
[CPORTLIB][NTOS:INBV][KDCOM][FREELDR] Add ComPort library for NEC PC-98 series ( #2407 )
...
There are 2 known serial ports:
COM1 - based on Intel 8251A
COM2 - National Semiconductor 16550
2020-03-06 19:50:31 +01:00
Thomas Faber
67b3b73d82
[USBHUB] Partially implement USBH_ProcessHubStateChange. CORE-16704
2020-03-02 20:47:01 +01:00
Thomas Faber
76a075867e
[USBHUB] Fix recipient in USBH_SyncClearPortStatus. CORE-16704
2020-03-02 20:46:56 +01:00
Thomas Faber
80296be1eb
[CMAKE] When disabling C4101, explicitly remove the error flag.
...
Fixes VC2010 build.
Addendum to 11ecf5c969
.
2020-02-24 22:29:33 +01:00
Serge Gautherie
b326312d52
[KS] KsQueryInformationFile(): Fallback to IRP if FastIO failed
...
Or, if it succeeded, return the actual NTSTATUS, not an unrelated BOOLEAN.
Addendum to commit 4725a4fd9c
(r42117).
CORE-16618
2020-02-17 19:08:57 +03:00
Serge Gautherie
7405dc36b6
[KS] KsQueryInformationFile(): Merge IoStatus and StatusBlock
...
Addendum to commit 9061b8ee40
(r42334).
2020-02-17 19:08:57 +03:00
Thomas Faber
696cdc635b
[ACPICA] Update to version 20200214. CORE-16696
2020-02-15 20:45:53 +01:00
Thomas Faber
81e6846e06
[ACPICA] Update to version 20200110 (Copyright update only). CORE-16696
2020-02-15 20:45:48 +01:00
Hervé Poussineau
4788676671
[ISAPNP] Implement IRP_MN_QUERY_CAPABILITIES + IRP_MN_QUERY_ID
2020-02-10 21:33:36 +01:00
Hervé Poussineau
c96ba5a713
[ISAPNP] Also read serial numbers of devices
2020-02-10 21:33:36 +01:00
Hervé Poussineau
bec0ceb82f
[ISAPNP] Store VendorId/ProdId in the usual form
2020-02-10 21:33:36 +01:00
Hervé Poussineau
8eb3173896
[ISAPNP] When skipping a wrong tag in configuration, skip the length of this tag
2020-02-10 21:33:36 +01:00
Thomas Faber
e4e86c32e7
[PORTCLS] Handle failure return from QueryPowerChangeState. CORE-16611
2020-02-08 13:07:34 +01:00
Thomas Faber
5a43c52bbb
[PORTCLS] Return STATUS_PENDING after calling IoMarkIrpPending. CORE-16611
2020-02-08 13:07:34 +01:00
Thomas Faber
606c912aa4
[PORTCLS] Don't unnecessarily wait for lower drivers to complete power IRPs. CORE-16611
...
Also use PoCallDriver to forward power IRPs.
2020-02-08 13:07:34 +01:00
Hervé Poussineau
40b2f65f0c
[ISAPNP] Correctly calculate checksum
...
See appendix B.2 of "Plug and Play ISA Specification 1.0a"
2020-02-07 23:48:53 +01:00
Thomas Faber
f32e1acd3c
[USBHUB] Only break into the debugger in the case that is actually unimplemented. CORE-16394
2020-02-01 13:17:30 +01:00
Thomas Faber
9215413a68
[FLTMGR] Safely query object name in FltpGetObjectName. CID 1420811
2020-01-18 13:19:22 +01:00
Serge Gautherie
82d2f13cea
[FLOPPY_NEW] WindowsSync to 8fb512a ( #2238 )
...
* [FLOPPY_NEW] Make 6 '#ifdef' explicit about '__REACTOS__'
* [FLOPPY_NEW] RtlStringCbPrintf?() need bytes, not chars
Import
8fb512ac67
2020-01-14 18:50:19 +01:00
Thomas Faber
bd7121862a
[NTFS] Fix use after free in failure case of NtfsMountVolume.
...
NtfsGetVolumeData frees FileRecLookasideList in case of failure, so don't
free it again.
Dereferencing NewDeviceObject invalidates Vcb.
2020-01-11 14:10:55 +01:00
Suraj K Suresh
88f7be101a
[UDFS] Fix uninitialized var use in UDFCommonCreate, return the right error code
...
CORE-16174
2020-01-11 02:45:45 +02:00
Serge Gautherie
e2b536bcb1
[KS] KsQueryInformationFile(): Fix 'FastIoQueryBasicInfo' copypasta ( #2236 )
...
Addendum to commit 4725a4fd
(r42117).
2020-01-07 15:13:40 +01:00
Oleg Dubinskiy
611d925d32
[USB] Update the names of new USB drivers
2020-01-06 21:16:08 +02:00
Oleg Dubinskiy
83c07f4e4c
[SDK][USB] Delete old USB drivers and libusb
2020-01-06 21:16:08 +02:00
Hermès Bélusca-Maïto
afb14bff33
[BLUE] Add IOCTL buffers validation. Addendum to commit bfd8a848
.
...
Also convert all sizes and positions of CONSOLE_DRAW to USHORT since
this is the standard type for all console buffer positions & sizes
(minimum value 0, maximum value 0xFFFF == 65535).
2020-01-03 17:17:03 +01:00
Thomas Faber
0d745e0698
[DISK_NEW] Return correct info size in failure case of DiskIoctlGetPartitionInfoEx.
2020-01-02 16:36:15 +01:00
Thomas Faber
2fa7b1dcc1
[CDROM] Return the correct data length for IOCTL_DISK_GET_LENGTH_INFO. CORE-16607
2020-01-02 14:08:46 +01:00
Victor Perevertkin
e92ab76d0d
[REACTOS] Exclude some modules from clang-format
2019-12-28 01:23:49 +02:00
Hermès Bélusca-Maïto
1928e170f2
[BLUE] Fix a visual regression introduced in bfd8a848
: Don't touch INBV when resetting internal screen state during driver loading.
2019-12-24 16:13:10 +01:00
Hermès Bélusca-Maïto
aca7ff54b0
[BOOTVID] Correctly fix scrolling and printing when the scroll region contains the whole screen.
...
Addendum fixes to ca370b49
(r52239) and a965ca6b
(r52409).
- Fix the comments to explain what is really happening.
- Fix the boundary calculations in VidDisplayString() so that we can
correctly display a character in the very last column before going
to the next line, and fix similarly the vertical boundary calculation.
- Port the fixes to the ARM code.
2019-12-23 21:06:59 +01:00
Hermès Bélusca-Maïto
93e9877225
[BOOTVID] Factor out the common code that is used before setting pixels.
2019-12-23 21:06:58 +01:00
Hermès Bélusca-Maïto
4f76cffb59
[BOOTVID] Code style fixes; Replace some 'do-while' loops by 'for' loops when it makes the code simpler.
...
+ Fix a potential bug in BitBlt() "4bpp blitting" in case Top == Bottom (i.e. Height == 0).
2019-12-23 21:06:57 +01:00
Hermès Bélusca-Maïto
1d2b0fbcd1
[BOOTVID] Replace hardcoded screen and font size numbers by #define-d values.
2019-12-23 21:06:57 +01:00
Victor Perevertkin
23147330dd
[USBOHCI] Use KeQueryTickCount for timeouts instead of KeQuerySystemTime
2019-12-16 03:21:28 +03:00
Victor Perevertkin
1d9e03b708
[KS] Use KeQueryTickCount for timeouts instead of KeQuerySystemTime
...
This avoids overflow when system time is changed between calls (for example, via NTP)
2019-12-16 02:28:41 +03:00
Hermès Bélusca-Maïto
bfd8a84865
[BLUE] Improve initialization and interfacing with INBV.
...
CORE-15901
This fixes display reset transition when an external module acquired
INBV ownership and then released it, similarly to what was done in
commit 0ad65796
for VIDEOPRT.
For this a backup screenbuffer is used to store the contents of the
screen just before an INBV screen acquire transition, and these contents
are restored when it is detected that INBV ownership has been released.
Also, the active text font associated with the active console code-page
is restored, as well as the cursor state and shape.
In addition, any user of BLUE.SYS is now required to explicitly issue
a new IOCTL_CONSOLE_RESET_SCREEN to either enable or disable the screen.
This allows avoiding nasty unwanted screen mode switches when a handle
to the \Device\BlueScreen device is opened but no screen mode switch was
actually wanted - This "fixes" this annoyance on ReactOS and Windows,
when these are running witha VGA-compatible video driver and one wants
to look at properties of the \Device\BlueScreen device using
Sysinternals' WinObj.
Following this, we don't need to check anymore for explicit INBV
ownership by issuing calls to InbvCheckDisplayOwnership(), but instead
we check whether the screen has beeen manually enabled using the
aforementioned IOCTL. This partly supersedes commit 8b553a4b
, and allows
fixing the second bug, namely that if we start ReactOS without the
/NOGUIBOOT option (and thus, INBV is active during boot), USETUP would
not show up anything because BLUE.SYS wouldn't display anything on screen.
See CORE-15901.
[USETUP][CONSRV] Call IOCTL_CONSOLE_RESET_SCREEN to tell BlueScreen device to enable the screen.
2019-12-15 03:37:52 +01:00
Hermès Bélusca-Maïto
67c9e81cb0
[BLUE] Use ExFreePoolWithTag().
2019-12-15 03:36:24 +01:00
Hermès Bélusca-Maïto
45b655ec3a
[BLUE] Improve includes.
2019-12-15 03:36:21 +01:00
Hermès Bélusca-Maïto
d684f90632
[BLUE] Code formatting, add SAL2 annotations, and update file source headers.
2019-12-15 03:36:17 +01:00
Thomas Faber
be617cf987
[ACPICA] Update to version 20191213. CORE-16559
2019-12-14 09:48:11 +01:00
Eric Kohl
c1f22c88ca
[STORAGE] Storage driver cleanup part 5 (last part)
...
Move the fdc and flpydrv drivers into the floppy directory.
2019-11-30 13:33:32 +01:00
Eric Kohl
2a2040a9fe
[STORAGE] Storage driver cleanup part 4
...
Move the floppy driver into the floppy/floppy directory.
2019-11-30 13:13:59 +01:00