mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
watchdog: sp5100_tco: Use EFCH MMIO for newer Hygon FCH
Commit009637de1f("watchdog: sp5100_tco: support Hygon FCH/SCH (Server Controller Hub)") added Hygon vendor matching to the efch layout selection, but newer Hygon 0x790b SMBus devices still need the efch_mmio path. The efch_mmio path enables EFCH_PM_DECODEEN_WDT_TMREN before probing the watchdog MMIO block. If firmware leaves that bit clear and the driver picks the legacy efch path instead, probe falls back to the alternate window and fails with "Watchdog hardware is disabled". Select efch_mmio for Hygon 0x790b devices with revision 0x51 or later, matching the equivalent AMD behavior and allowing the watchdog to initialize on those systems. Fixes:009637de1f("watchdog: sp5100_tco: support Hygon FCH/SCH (Server Controller Hub)") Signed-off-by: Yingjie Gao <gaoyingjie@uniontech.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Link: https://lore.kernel.org/r/20260402071617.634563-2-gaoyingjie@uniontech.com Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
066f6001fb
commit
4f675f036c
|
|
@ -92,7 +92,8 @@ static enum tco_reg_layout tco_reg_layout(struct pci_dev *dev)
|
|||
dev->device == PCI_DEVICE_ID_ATI_SBX00_SMBUS &&
|
||||
dev->revision < 0x40) {
|
||||
return sp5100;
|
||||
} else if (dev->vendor == PCI_VENDOR_ID_AMD &&
|
||||
} else if ((dev->vendor == PCI_VENDOR_ID_AMD ||
|
||||
dev->vendor == PCI_VENDOR_ID_HYGON) &&
|
||||
sp5100_tco_pci->device == PCI_DEVICE_ID_AMD_KERNCZ_SMBUS &&
|
||||
sp5100_tco_pci->revision >= AMD_ZEN_SMBUS_PCI_REV) {
|
||||
return efch_mmio;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user