George Bișoc
f3dd15ad64
[CMBATT] Grab the design voltage after the BIF data gets copied
...
There was a risk of accessing invalid data as the design voltage was grabbed before the read BIF data was copied into the device extension.
2024-12-16 22:09:02 +01:00
George Bișoc
ea8315ba56
[CMBATT] Convert power statistics from mAh to mWh
...
ReactOS (like any other OSes) expects power data to be represented in milliwatts per hour, not in milliamps per hour.
Currently CMBATT defaults the stats to unknown values, if that's the case, and there are a bunch of machines that do report their data from _BIF ACPI method in ampere.
CORE-18969
CORE-19452
2024-12-16 17:33:51 +01:00
Hervé Poussineau
2d3f3a1613
[COMPBATT] Use BATTERY_TAG_INVALID instead 0 when applicable
2024-11-20 21:47:13 +01:00
Hervé Poussineau
05ae94092e
[COMPBATT] Free device-related memory only if we failed
...
Otherwise, we just inserted in the BatteryList this device, and we will
probably crash later when accessing it.
2024-11-20 21:47:13 +01:00
Hervé Poussineau
2323dbcb4f
[COMPBATT] Keep incoming Status on unknown IOCTL
2024-11-20 21:47:13 +01:00
Hervé Poussineau
81860b482a
[CMBATT] Fix battery Tag
...
0 (ie BATTERY_TAG_INVALID) is not a valid battery tag.
First battery must have a tag of 1.
2024-11-12 21:26:42 +01:00
Dmitry Borisov
10b08aa2bb
[ISAPNP] Detect I/O ports at runtime ( #7411 )
...
Improve the driver's portability.
CORE-17977
2024-10-07 16:10:08 +02:00
Hervé Poussineau
30ac80f36b
[CMBATT] Implement CmBattVerifyStaticInfo
2024-08-12 11:56:18 +02:00
Hervé Poussineau
2ff683fa33
[CMBATT] Remove useless fields in device extension
...
Information is already present in BifData, and those fields were never filled.
2024-08-12 11:56:18 +02:00
Hervé Poussineau
359e73d055
[CMBATT] Implement CmBattGetBifData/CmBattGetBstData
2024-08-12 11:56:18 +02:00
Dmitry Borisov
fdc1d96dc1
[ISAPNP] Make sure that APCs are disabled before acquiring a lock
...
Note: We could just use a fast mutex instead
2024-08-03 17:08:44 +06:00
Dmitry Borisov
6091dde0d3
[ISAPNP] Improvements around hardware access helpers
...
- Reimplement WriteWord using the WriteByte helper.
- Remove inline qualifiers from the bus read and write functions.
This code path is considered "cold" and using an inline for it is overkill.
- Don't apply the IRQL restrictions to our PnP state transition helpers.
They are only called at IRQL below dispatch level.
2024-08-03 17:08:43 +06:00
Dmitry Borisov
2981e63a31
[ISAPNP] Refactor the configuration code
...
- Remove useless checks
- Increase code readability
2024-08-03 17:08:43 +06:00
Dmitry Borisov
76ec8411a4
[ISAPNP] Fix parsing of complex resource data
...
- Properly handle the case when the dependent function is placed
after fixed resources
- Initialize the version and revision fields of resource lists
- Improve validation of resource data
- Add more debug prints
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
c1d7087352
[ISAPNP] Fix the reported length of the memory I/O ranges
...
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
9b7f34601a
[ISAPNP] Force clear the upper reserved bits on fixed I/O descriptors
...
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
991dbeff53
[ISAPNP] Fix the truncation of 32-bit configuration I/O reads
...
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
b36d9bd9c1
[ISAPNP_UNITTEST] Add unit tests exercising device discovery and device resources functionality
...
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
016d01e5d1
[ISAPNP] Extract resource definitions
...
Prepare the driver for upcoming API tests
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
4ba8a8b59b
[ISAPNP] Allocate the Read Port resources on demand
...
This will simplify failure paths and reduce memory usage
2024-08-03 17:08:42 +06:00
George Bișoc
f69e256376
[ACPI] Register a device interface class with ACPI fans
...
As the commit title says, the point of registering a device interface with ACPI fans is to receive incoming PnP notifications of incoming ACPI fan drivers so that the power manager can connect to them by creating a power device policies dedicated to them during power manager initialization.
CORE-18969
2024-05-22 20:23:06 +02:00
Dmitry Borisov
5070e8960a
[ACPI] Fix object evaluation ( #6302 )
...
CORE-17256
- Implement support for complex input buffers.
This will enable the IDE driver with some hack
to execute the _STM (channel timing settings) control method.
- Fix a memory leak.
- Fix returned status code.
- Correctly calculate the output buffer size.
- Improve buffer validation.
- Implement support for async control requests.
- Implement local reference conversion.
- Implement support for subpackage argument conversion.
- Place some code into INIT section.
2024-04-01 18:21:35 +02:00
Hervé Poussineau
0be4e4aa6d
[CMBATT] Correctly print UNICODE_STRING
2024-02-05 18:04:01 +01:00
Hervé Poussineau
913235952c
[ACPI] Return success even if AcpiInterfaceNotificationsRegister is not implemented
...
Drivers calling this function still won't be notified in case of event,
but they will at least succeed their initialization.
CORE-18309
2024-02-01 10:08:58 +01:00
Hervé Poussineau
7f1025dcce
[CMBATT] Send correct tag on IoAcquireRemoveLock
...
This prevents an assert in IoReleaseRemoveLock in debug builds, which
already receives the 'Irp' tag.
2024-02-01 10:08:58 +01:00
Thamatip Chitpong
2dd0c6c32b
[ACPI] Add acpi.rc to CMakeLists ( #6089 )
...
Fix missing version info.
2023-12-04 07:17:08 +07:00
Dmitry Borisov
3dd3d10531
[PCI] Fix I/O range size of the resource descriptors
...
Fixes incorrect PCI IDE resources in VPC 2007
CORE-17256
2023-01-21 07:33:03 +01:00
Thomas Faber
d3a718eb01
[COMPBATT] Add inf entry. CORE-18167
2023-01-21 00:10:06 -05:00
Thomas Faber
f0dd1e7b57
[ACPICA] Update to version 20221020. CORE-17905
2022-11-06 08:33:29 -05:00
Thomas Faber
03b24380a7
[ACPICA] Update to version 20220331. CORE-17905
2022-11-06 08:33:29 -05:00
Thomas Faber
8129fee128
[ACPICA] Update to version 20211217. CORE-17905
2022-11-06 08:33:28 -05:00
Thomas Faber
9b247f6ae3
[ACPICA] Update to version 20210930. CORE-17905
2022-11-06 08:33:25 -05:00
Hervé Poussineau
3a32d5980c
[ISAPNP] Generate hardware ids and compatible ids in upper case
2022-09-23 23:07:45 +02:00
Stanislav Motylkov
bbccad0ed6
[INF] Set manufacturer as ReactOS Project for consistency
...
Also make it non-localizable. CORE-18191
2022-06-27 17:00:18 +03:00
Dmitry Borisov
734cd5e842
[PCI][HALX86] Support PCI debugging devices
...
Also optimize the PCI bus scanning
CORE-17360
2022-06-06 01:47:21 +03:00
Serge Gautherie
abe8f0ab1d
[PCIX] Add 2 OBJ_KERNEL_HANDLE
...
Match Zw*() uses.
CORE-10207
2022-05-07 16:23:42 +02:00
Luke Luo
f59c58d833
[TRANSLATION] Improve Simplified & Traditional Chinese translations ( #4388 )
...
Reviewed-by: Chan Chilung <eason066@gmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-03-31 20:38:52 +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
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
ac13f37d0a
[ISAPNP] Generate a name for PDO, as required
2021-10-14 23:39:30 +02: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
Thomas Faber
0a656b574e
[ACPICA] Update to version 20210730. CORE-17760
2021-09-11 10:48:30 -04:00
Thomas Faber
3c2845607c
[ACPICA] Update to version 20210604. CORE-17760
2021-09-11 10:48:30 -04:00
Thomas Faber
6eb8cc4979
[ACPICA] Update to version 20210331. CORE-17760
2021-09-11 10:48:29 -04:00
Thomas Faber
05926c7ac5
[ACPICA] Update to version 20210105. CORE-17760
2021-09-11 10:48:17 -04:00
Dmitry Borisov
18b4cc1479
[ISAPNP] Start the driver early in the boot
...
Because our child devices can have boot-start drivers
2021-06-20 19:24:32 +06:00
Dmitry Borisov
adac7dc2e5
[ISAPNP] Implement device configuration
2021-06-20 19:24:32 +06:00
Dmitry Borisov
8939abf113
[ISAPNP] Disable bus scan on unsupported platforms
...
This speeds up boot a bit and also decreases binary size.
- Introduce a new CMake define ISAPNP_ENABLE that defined only in x86 platform
when ISA PnP is supported.
2021-06-20 19:24:32 +06:00
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