Commit Graph
52 Commits
Author SHA1 Message Date
Alcolawl 24e76153eb Add support for MSI MAG B850 Tomahawk Wifi (non-max) using NCT6687DR Controller (#2199) 2026-02-06 12:54:53 +01:00
Blacktempel 541926c757 Add detection for MSI MAG B850 Tomahawk Wifi. (#2191)
Handle two mainboards for NCT6687D with fan mapping for newer models.
2026-02-02 16:32:38 +01:00
AlcolawlandPhyxionNL 0b42635cf6 Add support for MSI PRO B850M-A Project Zero (#2190)
* Support for 10 new MSI motherboards with NCT6687D-R SIO controller

* Support for newly established fan and control register structure

WILL ABSOLUTELY BREAK FAN CONTROL CONFIGS FOR NCT6687DR USERS. This introduces Support for 16 System Fans and Controls, including EZ-Connect, Pump Fan 2, and System Fan 7. Also improved the logic for nct6687dr control.

* Add support for X870E Tomahawk WIFI, fix B850 Gaming Plus WIFI PZ identification

Additionally sync with upstream

* Add support for B850M Gaming Plus WIFI and Z890 Unify-X

Also removes duplicate model identification case for B850M GAMING PLUS WIFI6E

* Rename temperature sensor to proper name for X870E Carbon Wifi and GODLIKE motherboards

* Add support for MSI PRO B850M-A Project Zero (MS-7E78)

* Rename 'T_Sensor' to 'Temperature Sensor' for clarity

* T Sensor > Temperature Sensor

* Rename Temperature Sensors to Thermistor Sensors

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2026-02-02 15:40:09 +01:00
Alcolawl 1ee7c16cba Add support for three additional MSI Motherboards (#2132)
* Support for 10 new MSI motherboards with NCT6687D-R SIO controller

* Support for newly established fan and control register structure

WILL ABSOLUTELY BREAK FAN CONTROL CONFIGS FOR NCT6687DR USERS. This introduces Support for 16 System Fans and Controls, including EZ-Connect, Pump Fan 2, and System Fan 7. Also improved the logic for nct6687dr control.

* Add support for X870E Tomahawk WIFI, fix B850 Gaming Plus WIFI PZ identification

Additionally sync with upstream

* Add support for B850M Gaming Plus WIFI and Z890 Unify-X

Also removes duplicate model identification case for B850M GAMING PLUS WIFI6E
2026-01-03 10:30:16 +01:00
Blacktempel cc13e1e909 Add MAG B850M MORTAR (MS-7E61). (#2125) 2025-12-30 17:08:27 +01:00
lochorst e41611863b Add support for MSI MAG X870E TOMAHAWK MAX WIFI PZ (#2120) 2025-12-24 10:49:22 +01:00
Alcolawl affd01db48 Re-Structure Fan and Control Register Layout for NCT6687DR, Support 10 new MSI Motherboards (#2068)
* Support for 10 new MSI motherboards with NCT6687D-R SIO controller

* Support for newly established fan and control register structure

WILL ABSOLUTELY BREAK FAN CONTROL CONFIGS FOR NCT6687DR USERS. This introduces Support for 16 System Fans and Controls, including EZ-Connect, Pump Fan 2, and System Fan 7. Also improved the logic for nct6687dr control.
2025-11-24 16:40:59 +01:00
Rémi MercierandPhyxionNL f6c2c70a50 Try and migrate the old GigabyteController stuff with PawnIO (#2014)
* Try and migrate the old GigabyteController stuff with PawnIO

* Bring back WinRing0 era GigabyteController stuff
* ISABridge use the PawnIO module with its built-in logic
* Ecio uses LpcIO directly (not sure about the initialization logic in TryCreate() to make this work)

* Code-review

* Fix inverted logic
* Remove IsaBridgeEc field init
* Format document

* Combine logic

* Gigabyte Implementation best attempt

* Update IsaBridgeGigabyteController.cs

* Cleanup and fix enablind logic for Isa version

* Add debug logs

* Update IsaBridgeGigabyteController.cs

* Code review

* Unmap + restore the mmio state  is done through the closing of the module.
* Fix boolean logic
* Restore the fan control byte instead

* Fallback to ECIO if FanControl enable byte is 0xFF

+ add logs to ECIO

* Port back to validation logic

* Allow for one or the other MMIO to be 0

* Wrap enter/exit mmio logic + enter/exit each time

* Keep state of EcioPort enable

* Missing dispose + close order fix

* Update IsaBridgeGigabyteController.cs

* Remove empty line before TryCreate method

* Code review

* Remove try/finally for SW

* Cleanup debug log methods

* Add DEBUG_LOG define conditional

* Misc

* Misc

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-11-20 19:06:32 +01:00
objecttothis 517794ce53 Add ASRock X870E Nova WiFi Support (#2012)
* Add ASRock X870E Nova WiFi Support

- Added support for Nuvoton NCT5585D chip
- Added support for Nuvoton NCT6796D-S chip
- Added motherboard-specific switch to select the correct chip due to duplicate chip ID/Revision (see #2005)
- Added chips to disable monitor i/o space lock block
- Added business logic to include chips in _superIOs.Add for the Nct677X() logic.
- Added chips to business logic to properly assign indices for fans, controls, temperatures and voltages.
- Added TSENSOR to the enum for SourceNct67Xxd to display the 3rd thermistor sensor.
- Added Naming and Identification for the X870E Nova WiFi
- Supressed warnings and added documentation

* Corrections

These changes reflect scraping the datasheet for the correct registers, half-registers, halfBits, sourceRegisters and alternateRegisters
- Replaced TSENSOR with AUXTIN5 as it is named in the datasheet
- Corrected Register values
- Reworked indexes and temperature naming

* Requested Changes

- Linked to PR instead of Datasheet which may change.
- Changed descriptions to be more understandable rather than using Datasheet labels

* Removed duplicate TSENSOR in enum
2025-11-06 13:39:13 +01:00
Riccardo Manzan 3abeda696b [#1934] dev: add support for MSI B850M GAMING PLUS WIFI6E (#1967) 2025-10-17 16:45:26 +02:00
hopsaandStephan Koster 8b42be793b added support for MSI PRO B850-S WIFI6E (#1948)
added identifier string to Identification.cs
added new model enum entry B850S_PRO_WIFI6E
added B850S_PRO_WIFI6E to the list of models that get the NCT6687DR instead of NCT6687D

Co-authored-by: Stephan Koster <skoster@enclustra.com>
2025-10-09 13:06:30 +02:00
JoeBroesele a18b1221ad Added support for Lenovo V50t Gen 2. (#1897) 2025-09-25 11:54:33 +02:00
namazsoandPhyxionNL eb5e1a20be Swap WinRing0 to PawnIO (#1857)
* Replace WinRing0 with PawnIO

* Update RAMSPDToolkit

* Add install check + cleanup

* Move folder + formatting

* Add back missing TryLoadDll

* Update PawnIo.cs

* Add third party notices file

* Remove the how to apply section

* Drop silent

* Don't crash if PawnIO isn't installed

* Formatting

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-09-16 11:58:31 +02:00
Mihai Vasiliu c40db485f9 Add support for MSI PRO Z890 WIFI (Nuvoton NCT6687D) (#1809) 2025-08-05 12:42:27 +02:00
PhyxionNL e920eca98d Fix whitespace 2025-07-21 17:03:44 +02:00
fd3bfeb7c5 GIGABYTE X870 AORUS ELITE WIFI7 (ITE IT8696E, ITE IT87952E) (#1510)
* Initial support for Gigabyte X870 AORUS ELITE WIFI 7 and ITE IT8696E

* remove unintentional gitignore change

* Add support of X870E AORUS ELITE WIFI7

* Remove X870E

* move x870 to its own case

* rename fan#3

* apply suggestion from code review

* Fix broken merge

* Update IT87XX.cs

* Update IT87XX.cs

---------

Co-authored-by: davidmoellmann <public.cushy530@passinbox.com>
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-07-21 17:01:53 +02:00
Alcolawl 3b1c1cbd12 Add support for three additional MSI motherboards (#1791)
* Add Support for MSI B840P PRO WIFI

* Rectify loop mathematical operator syntax

* Add support for two additional motherboards

Z890 Gaming Plus Wifi and Pro Z890-S Wifi Project Zero
2025-07-17 13:30:56 +02:00
Scott Chow 2aa06cfdf7 Add support for MSI B850M Mortar (#1702) 2025-05-12 11:13:17 +02:00
Alcolawl a6cb35feb4 Add Support for MSI B840 PRO WIFI (#1716)
* Add Support for MSI B840P PRO WIFI

* Rectify loop mathematical operator syntax
2025-05-12 11:11:30 +02:00
5da7fafd93 Add support for ROG STRIX B850-I GAMING WIFI and fix for NCT6701D (#1704)
* Add support for ROG STRIX B850-I GAMING WIFI and fix for NCT6701D

* Update Model.cs

---------

Co-authored-by: Fabio Simoes <fsimoes@outlook.de>
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-05-02 16:01:24 +02:00
CoxxsandCoxxs 9d6ed38e2d Add support for MSI Pro Z890-A WiFi (MS-7E32) (#1705)
Co-authored-by: Coxxs <coxxs@users.noreply.github.com>
2025-05-02 16:00:31 +02:00
clownpiece 788103df77 Add support for MSI MPG B850 EDGE TI WIFI (#1707)
* Update LpcIO.cs

Add support for MSI MPG B850 EDGE TI WIFI (MS-7E62)

* Update Identification.cs

Add support for MSI MPG B850 EDGE TI WIFI (MS-7E62)

* Update Model.cs

Add support for MSI MPG B850 EDGE TI WIFI (MS-7E62)
2025-05-02 16:00:16 +02:00
a55a7a772e Add support for MSI AM5/LGA1851 Motherboards using the NCT6687D SIO Controller (#1644)
* Add Identification Support for 15 new MSI AM5/LGA1851 Motherboards with the NCT6687D SIO Controller

* Create dummy chip entry NCT6687DR

* Assign NCT6687DR SIO to 15 newly added MSI AM5/LGA1851 Motherboards

This also requires passing Motherboard into DetectWinbondFintek() as we want to maintain prior compatibility while also assigning NCT6687DR to the new motherboards

* Add proper voltage, fan, and temperature sensor layouts for motherboards assigned the NCT6687DR controller

* Add support for NCT6687DR including dedicated fan control function for system fan manipulation

NCT6687DRFanCtrl() is only called when chip == NCT6687DR, otherwise legacy control is maintained. This function works by setting the 7-point fan curve of the system fans to the same requested value where the system fan has no choice but to comply

* Rectify code style in new functions to follow standards

* Update Nct677X.cs

---------

Co-authored-by: Alcolawl <tdean@live.esu.edu>
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-04-22 16:18:02 +02:00
Lukas MeyerandPhyxionNL 210fb7b6af Add Support For ASUS ROG STRIX X870E-E GAMING WIFI Fan Sensors And Control (#1523)
* Add Support For Asus ROG Strix X870E-E Fan Sensors And Control

* Add voltages and temperatures

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-01-17 12:58:57 +01:00
7753ee91b9 Proart x870e creator wifi (#1547)
* fix line endings to lf

* add support for proart_x870e_creator_wifi

---------

Co-authored-by: damesene <reg.sliva@hotmail.com>
Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-01-17 12:56:44 +01:00
Jacob Gorney 880321f2a7 Add support for ASUS ROG Crosshair X870E Hero motherboard (#1581)
* Add support for ASUS ROG Crosshair X870E Hero motherboard

* Fix a typo

* Add CPU Package temperature sensor.

* Cleanup code

* Aligning W_PUMP+ naming to others
2025-01-16 15:09:12 +01:00
Sunwoo Jung 4193b58145 Add Gigabyte X870E AORUS PRO (ICE) (ITE IT8696E, ITE IT87952E) (#1533)
* Add Gigabyte X870E AORUS PRO (ICE)

* Separate case and rename some voltages

* Increase array size for Fans and Controls from 5 to 6

* Add external temperature sensor
2024-11-22 18:36:14 +01:00
Ezra Indrastata af7fca1397 Fix missing view for IT8792E and allow fan control for IT8792E on some Gigabyte AMD boards (#1313)
* Check before entering bugged 0x4E IT87

* Specify fan control registers for IT8792E

* Refactor chip ID reading using TryReadWord

* Introduce ECIO gigabyte EC control

* Add ECIO compatibility check

* Refactor to consider result of read/write

* Refactor styles and syntaxes

* Rename SMFI to Smfi

* Remove public modifier for consistency

* Update code style

* Increase timeout and remove sleep for ecio waits

* Remove extra WaitIBE
2024-06-11 17:28:37 +02:00
PhyxionNL c0f2740ed3 Move mutexes out of Ring0 2023-06-14 11:58:26 +02:00
Maximilian RehkopfandPhyxionNL 701e8ad514 Add support for IT87952E EC on Gigabyte boards (#1091)
* Rename IT8795E to IT87952E

IT8795E and IT87952E are distinct chips (with their own IC markings).
The IT8795E, as the IT8791E and IT8792E, reports chip ID 0x8733 whereas
the IT87952E identifies as 0x8695.

* Gigabyte EC: Fix typo in LPC register restore

When the AMD LPC Bridge registers are restored after configuring memory
mapping, restore the correct value for the "Memory Address for LPC
target cycles" register.

* Add IT87952E fan control for Gigabyte boards

IT87952E (ID 0x8695) has a third byte in SuperIO config space
(LDN 0x0F) that determines more bits of the host address for LPC memory
mapping.

Also the base address for Gigabyte boards is 0xFC000000 instead of
0xFF000000 (as is the case with IT8790/1/2/5).
This should make additional fan controls work on Gigabyte mainboards
where the settings had no effect previously, e.g: X570S AORUS MASTER
and X670E AORUS MASTER. (cf. Issue #251)
It does not yet work for Intel boards as the LPC bridge requires
different programming.

* Update LpcIO.cs

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2023-06-13 13:44:24 +02:00
PhyxionNL e236d7c9a0 Add support for IPMI sensors and Supermicro IPMI fan control (#1024)
* Add support for IPMI sensors and Supermicro IPMI fan control

Closes #958, thanks to @lukefor
2023-03-21 19:14:10 +01:00
PhyxionNL cd77cec0b5 Unify CPU namespace with folder (#1023) 2023-03-21 18:11:40 +01:00
javs 297c3485d6 Add support for Gigabyte's custom fan controller (#1020) 2023-03-21 17:55:15 +01:00
masaki takagi 14a070b94a Add Support IT8625E and X670E Valkyrie (#982) 2023-02-23 13:20:22 +01:00
PhyxionNL 42253a303c Fixes #911 2022-11-25 18:59:54 +01:00
PhyxionNL 1cc688388d Added preliminary support for Nuvoton NCT6686D chip #2 (#897) 2022-11-18 17:27:26 +01:00
Alexander Vostres f9cfde5f91 Add preliminary support for Nuvoton NCT6799D (#846) 2022-11-10 13:41:21 +01:00
PhyxionNL 58cef111a1 Use file-scoped namespaces (#842) 2022-10-09 13:22:57 +02:00
PhyxionNL 3ac329f247 Fix some code analysis issues (#841) 2022-10-09 13:16:31 +02:00
PhyxionNL 38b97e10d0 Update editorconfig + changes (#771) 2022-06-29 19:38:57 +02:00
Carlinux c7ff2efd91 IT8613E and Biostar B660GTN support (#690) 2022-03-13 10:57:11 +01:00
zokradonh f8af4bd307 Support Z690 Aorus Pro (DDR5) (#672)
Thanks to @zokradonh.
2022-02-27 16:21:39 +01:00
darkbrain-fcandDino Puller 625d446cb2 Add support to IT8631E (#591)
Co-authored-by: Dino Puller <dino.puller@uqido.com>
2021-11-13 08:52:58 +01:00
PhyxionNL f395092b31 IT8689E (#554)
Thanks to @kolaqsq.
2021-09-29 10:25:15 +02:00
Chris Crews 931bfed9f8 Add support for ASRock X570 Phantom Gaming-ITX/TB3 (NCT6683D) (#406) 2021-03-22 18:20:02 +01:00
Lich 64bb929330 Added support for NCT6687D (#288)
Thanks to @lich426
2020-08-26 17:03:20 +02:00
Phyxion 2aed86785e Add IT8655E to LPC 2020-03-09 13:03:27 +01:00
Phyxion 5bd108167d Restore OHM in copyright statement 2020-02-28 11:39:25 +01:00
Phyxion 9a9d670ca7 Update from upstream 2020-02-26 10:58:56 +01:00
Phyxion 2c8ee5e7d0 Update motherboard and chips
Add X570 Aorus Master @moellerm.
Update chip names.
Unify more sensor names.
2020-01-31 13:51:57 +01:00