Commit 851a1511 authored by Felipe Balbi's avatar Felipe Balbi Committed by Wolfram Sang

i2c: i801: fix DNV's SMBCTRL register offset

DNV's iTCO is slightly different with SMBCTRL sitting at a different
offset when compared to all other devices. Let's fix so that we can
properly use iTCO watchdog.

Fixes: 84d7f2eb ("i2c: i801: Add support for Intel DNV")
Cc: <> # v4.4+
Signed-off-by: default avatarFelipe Balbi <>
Reviewed-by: default avatarJean Delvare <>
Signed-off-by: default avatarWolfram Sang <>
parent 20fdcd76
......@@ -140,6 +140,7 @@
#define SBREG_BAR 0x10
#define SBREG_SMBCTRL 0xc6000c
#define SBREG_SMBCTRL_DNV 0xcf000c
/* Host status bits for SMBPCISTS */
......@@ -1399,7 +1400,11 @@ static void i801_add_tco(struct i801_priv *priv)
res = &tco_res[ICH_RES_MEM_OFF];
res->start = (resource_size_t)base64_addr + SBREG_SMBCTRL;
if (pci_dev->device == PCI_DEVICE_ID_INTEL_DNV_SMBUS)
res->start = (resource_size_t)base64_addr + SBREG_SMBCTRL_DNV;
res->start = (resource_size_t)base64_addr + SBREG_SMBCTRL;
res->end = res->start + 3;
res->flags = IORESOURCE_MEM;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment