From: Guenter Roeck Date: Sun, 3 Dec 2017 18:28:15 +0000 (-0800) Subject: Add comment explaining why smbus_disable is needed in probe X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=6d26a04b3b31333ab21e44d1816c7b1e77c523e7;p=groeck-it87 Add comment explaining why smbus_disable is needed in probe Signed-off-by: Guenter Roeck --- diff --git a/it87.c b/it87.c index 7c1e7e4..92415e3 100644 --- a/it87.c +++ b/it87.c @@ -3949,6 +3949,17 @@ static int it87_probe(struct platform_device *pdev) /* Initialize register pointers */ it87_init_regs(pdev); + /* + * We need to disable SMBus before we can read any registers in + * the envmon address space, even if it is for chip identification + * purposes. If the chip has SMBus client support, it likely also has + * multi-page envmon registers, so we have to set the page anyway + * before accessing those registers. Kind of a chicken-and-egg + * problem. + * Fortunately, the chip was already identified through the SIO + * address space, only recent chips are affected, and this is just + * an additional safeguard. + */ err = smbus_disable(data); if (err) return err;