Commit graph

1046 commits

Author SHA1 Message Date
Dmitry Borisov
dc6dfbf668 [NETKVM] Fix calling convention for callback and variadic functions
Addendum to 4c37757e81.
2022-03-10 13:31:10 +03:00
Thamatip Chitpong
9ca32a2b95
[AC97] Improve driver version info (#4368) 2022-03-06 01:04:56 +03:00
Adam Słaboń
68e19a95d0
[AC97] Enable on all Intel AC'97 audio controllers (#4366) 2022-03-06 01:04:22 +03:00
Thomas Faber
f5c5426924
[USBPORT] Fix incorrect use of bitfields.
EndpointMoved == TRUE could never be true, because BOOL is a signed type,
and the only two values in a signed one-bit type are 0 and -1.

Courtesy of VS analysis warning C6299:
Explicitly comparing a bit field to a Boolean type will yield unexpected results.
2022-02-17 22:01:34 -05:00
Obaid51
9c79a7982b
[AC97] Import the AC97 driver sample
The source code is licensed under MIT license, taken from
"MSDN Code Gallery Microsoft Samples" repository
(https://github.com/microsoftarchive/msdn-code-gallery-microsoft)

The original license was MS-PL, but the driver was later relicensed
as MIT.

Adopted to ReactOS code base by Michael Stamper.

Co-authored-by: Michael Stamper <michaelstamper1@gmail.com>
2022-02-16 01:31:28 +03:00
Victor Perevertkin
6e97b4314f
[PORTCLS] Centralize AddRef/Release implementation.
And make it thread-safe.

Co-authored-by: Thomas Faber <thomas.faber@reactos.org>
2022-02-16 01:31:27 +03:00
Thomas Faber
7db9fb3ba6
[PORTCLS] Don't leak CPortWaveCyclic. 2022-02-15 08:43:08 -05:00
Thomas Faber
ec1eb52ebf
[PORTCLS] Do not rely on operator new to zero memory.
The standard operator new does not do this, and GCC will in fact
optimize out any zeroing done in the operator.
2022-02-15 08:43:05 -05:00
Hermès Bélusca-Maïto
78a7d7dc32
[CMIDRIVER] Remove useless Visual Studio resource editor file. 2022-02-12 16:21:32 +01:00
Hermès Bélusca-Maïto
f73c0e08e2
[FDEBUG][CMIDRIVER] Add missing psdk dependency for user-mode code. 2022-02-12 16:21:30 +01:00
Hermès Bélusca-Maïto
9f201d462d
[BLUE][CONSRV][USETUP] Completely remove support for CAB font extraction from driver, and move it to CONSRV, much like what was done for USETUP.
Addendum to aaa416d3 and 2391e31c.
2022-01-15 17:41:36 +01:00
Serge Gautherie
fdcefaa7cb [HDAUDBUS] HDA_PdoPnp(): Remove a redundant ASSERT()
Addendum to cf7fc81 (r68311).
2022-01-08 18:00:38 +03:00
Serge Gautherie
cba4fd57d0 [KS] KsServiceBusEnumPnpRequest(): Remove a redundant ASSERT()
Addendum to c6b26fa (r50531).
2022-01-08 18:00:38 +03:00
Stanislav Motylkov
84cc81ee29
[NTOS:KE/x64] Detect CPU vendor properly and store value in PRCB
Also generate processor identifier properly based on this value
on the Configuration Manager machine-dependent initialization.

Update processor driver INF file accordingly.

CORE-17970 CORE-14922
2022-01-05 18:28:40 +03:00
Victor Perevertkin
951e52104a
[HDAUDBUS] Fix uninitialized variable usage 2022-01-05 03:22:15 +03:00
Michael Stamper
378294a7df
[PORTCLS] Fix races, fix WavePci Port Drivers
- Split buffers on page to prevent non-contiguous memory being passed to driver.
- Protect CIrpQueue::GetMappingWithTag, ReleaseMappingWithTag with spinlock to prevent race conditions
  (GetMapping, ReleaseMapping do not need spinlock, they are only called from a service routine).
- Remove ASSERT in CIrpQueue::ReleaseMappingWithTag, when mappings are released out of order. Just ignore
  the tag argument and release the next one in the list. This is what windows does, confirmed by calling
  PortWavePciStream::ReleaseMapping() with tag argument set to 0, absolutly no difference observed.
  Allowing out of order release is essential given that a driver is not permitted to hold a spinlock when calling
  ReleaseMapping().
- Remove IIrpQueue::HasLastMappingFailed(), it never worked and there is no way it could work.
  CPortPinWavePci::HandleKsStream() call MappingAvailable() non-conditionally, this is what Windows does,
  verified by debug prints in ac97 driver.
- Implement CIrpQueue::NumData().
- Remove incorrect interlocked operations/volatile variables and several (now unused) class fields.
2022-01-05 03:20:44 +03:00
Victor Perevertkin
7ed1883c8e
[DRIVERS] Use IoForwardIrpSynchronously in drivers
Instead of having an own routine in each driver
IoForwardIrpSynchronously can be used.
2022-01-05 02:17:56 +03:00
Stanislav Motylkov
6ebe2ed3a1
[UNIATA] Fix packing for port configuration information structures
Now it's consistent with our structure in sdk/include/ddk/srb.h.
Thanks to Hervé Poussineau for help with problem analysis.

Also MSDN doesn't say anything about the structure packing:
https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/srb/ns-srb-_port_configuration_information

CORE-17966
2022-01-04 14:30:27 +03:00
Victor Perevertkin
1a6bd2704a
[SCSIPORT] Reduce and improve debug printing 2021-12-28 04:23:51 +03:00
Serge Gautherie
5ba5051f79 [FLTMGR] CreateClientPort(): Fix ObInsertObject() error handling
Avoid extra ObDereferenceObject().

CORE-17904
2021-12-28 02:27:50 +03:00
Scott Maday
99a6d03786
[I8042PRT] Add Latitude D820 to the hack list (#4185)
Fixes the Dell Latitude D820 TouchPad not working.
2021-12-25 03:07:33 +01:00
Ronny Borchert
9d33a2056e
[NTFS][UDFS] Fix build with NDEBUG undefined (#4171)
- Fix DumpBTreeNode() parameters in ntfs/btree.c
- Comment out unused variable in env_spec.cpp
- Fix missed brackets in else clause in wcache_lib.cpp
2021-12-20 21:19:53 +01:00
Hervé Poussineau
ac5536aa48 [SCSIPORT] Ignore LUNs not supported by the adapter
CORE-17641
2021-12-17 11:09:23 +01:00
Dmitry Borisov
3f97671319
[E1000] Minor improvements (#3904)
- Add support for 64-bit counters (Intel gigabit NICs)
- Properly handle OIDs
- Check that the packet filter is not 0
- Performance increase
2021-12-14 01:57:33 +03:00
Serge Gautherie
cd991e3d63 [UNIATA] Fix copy-pasta on 5 Promise device ids
Addendum to 5783342 (r62493).
CORE-17898
2021-12-09 17:10:09 +03:00
Stanislav Motylkov
07c534c863
[BOOTDATA][USBSTOR] Add device definitions for SFF-8070i (ARMD-style devices)
Confirmed working with our usbstor driver by Vort.

CORE-17895
2021-12-08 17:52:07 +03:00
Thomas Faber
0af3689c2e
[REACTOS] Fix traces with missing arguments.
Courtesy of VS Code Analysis warning C6064:
Missing integer argument to 'DbgPrint' that corresponds to conversion specifier 'N'.
2021-11-21 12:57:35 -05:00
Dmitry Borisov
84fabd819d [ISAPNP] Add support for NEC PC-98 series 2021-11-17 13:56:29 +03:00
Hervé Poussineau
06fc9c43ed [PARTMGR] Mark partitions as removable if device is removable
CORE-17392
2021-10-30 08:47:38 +02:00
Thomas Faber
fb3e2c7c8b
[USBUHCI] Fix always-false HcFlavor checks.
Powered by clang-cl.
2021-10-27 19:27:33 -04:00
Thomas Faber
555eec0306
[USBEHCI] Avoid uninitialized return status in EHCI_ReopenEndpoint.
Powered by clang-cl.
2021-10-27 19:27:33 -04:00
Thomas Faber
e7574ee5e8
[USBPORT] Don't use NTAPI for variadic function.
Powered by clang-cl.
2021-10-27 19:27:33 -04:00
Thomas Faber
4be3bc682d
[SACDRV] Fix uninitialized variable usage.
Powered by clang-cl.
2021-10-27 19:27:32 -04:00
Thomas Faber
4eb45209ea
[NDIS] Allow timer initialization at DISPATCH_LEVEL.
Spotted by Mortal Wombat.
2021-10-27 19:27:27 -04:00
Efe Itietie
c73c86419e
[USBUHCI] Fix wrong sizeof access (#4070)
Reviewed-by: Victor Perevertkin <victor.perevertkin@reactos.org>
Reviewed-by: Thomas Faber <thomas.faber@reactos.org>
2021-10-26 17:10:51 +03:00
Efe Itietie
feae6fbc64
[USBEHCI] Fix coverity #1476930 "Wrong sizeOf access" (#4070)
Reviewed-by: Victor Perevertkin <victor.perevertkin@reactos.org>
Reviewed-by: Thomas Faber <thomas.faber@reactos.org>
2021-10-26 17:10:51 +03:00
Doug Lyons
a91f5e8e4d
[UDFS] Fix crash on boot in release builds with UDFS removable media inserted (#4061) CORE-17598
Changes to specific files and their effects are as follows:
create.cpp - Allows booting past second stage with UDFS media inserted without BSOD
close.cpp - Allows shutdown without hang
dircntrl.cpp - Allows New Hardware Wizard not to hang on initial third phase install
2021-10-25 22:21:43 +02:00
Hervé Poussineau
ac13f37d0a [ISAPNP] Generate a name for PDO, as required 2021-10-14 23:39:30 +02:00
Victor Perevertkin
55f1f3000a
[CMAKE] Remove /fallback compile flag from clang-cl builds
This option is not needed anymore and was removed from LLVM 13
2021-10-14 20:30:27 +03:00
Süleyman Poyraz
05c39d8d62
[TRANSLATION] Update Turkish (tr-TR) translations (#3958)
Reviewed-by: Can Taşan <ctasan99@hotmail.com>
Signed-off-by: Süleyman Poyraz <zaryob.dev@gmail.com>
2021-10-10 16:00:12 +03:00
Hervé Poussineau
7fdf078134 [UNIATA] Better split of model name between Vendor and Product
UNIATA is converting IDE identify data into SCSI identify data.
However, IDE model is described with a unique field of 20 chars,
while SCSI model is described with 2 fields of 16 + 8 chars.
When displaying SCSI model, a space is added between vendor and product
fields.

Try to split model into vendor and product on a space if possible.

CORE-17400
2021-10-03 23:09:55 +02:00
Hermès Bélusca-Maïto
38ce67162f
[FS_REC] Fix load-lock acquisition. 2021-09-26 03:02:56 +02:00
Hermès Bélusca-Maïto
618076dc47
[FS_REC] Register a recognizer for FAT filesystem on CD-ROMs.
This handles the \FatCdrom device, supported by MS fastfat.
2021-09-26 03:02:56 +02:00
Hermès Bélusca-Maïto
9393fc320e
[FORMATTING] Remove trailing whitespace. Addendum to 34593d93.
Excluded: 3rd-party code (incl. wine) and most of the win32ss.
2021-09-13 03:52:22 +02:00
Hermès Bélusca-Maïto
9b1edceae1
[REACTOS] Fix some instances of DPRINTs with trailing whitespace before newlines. 2021-09-13 03:52:19 +02:00
Eric Kohl
d389a5d10c [KBDHID] Fix returned Status for IOCTL_KEYBOARD_QUERY_*
Addendum to 6249d5ede31ee6ba81f8b0cde94f5c8f875fd9a.
2021-09-12 23:36:18 +02:00
Eric Kohl
b6249d5ede [KBDHID] IOCTL_KEYBOARD_QUERY_ATTRIBUTES: Return proper KEYBOARD_ATTRIBUTES buffer size 2021-09-12 16:33:35 +02:00
Eric Kohl
f81fb355ae [KBDHID] Implement IOCTL_KEYBOARD_QUERY_INDICATOR_TRANSLATION 2021-09-12 14:40:26 +02:00
Eric Kohl
c1de553eba KBDHID: IOCTL_KEYBOARD_QUERY_* calls must return STATUS_BUFFER_TOO_SMALL if the output buffer is too small 2021-09-12 14:33:15 +02:00
Timo Kreuzer
0535332a69 [FASTFAT_NEW] "Fix" Flags bitfield to avoid RTC error
Since VS 16.11 the compiler sometimes emits calls to _RTC_UninitUse, when parts of a bitfield are initialized (See https://developercommunity.visualstudio.com/t/Broken-runtime-checks-with-CL-19293013/1503629). Fix this by using an ULONG instead of a bitfield.
Note: The structure uses a 24 bit bitfield plus an UCHAR, which is supposed to form a 32 bit field, but that doesn't work anyway.
2021-09-11 18:31:50 +02:00