summaryrefslogtreecommitdiff
path: root/drivers/hwmon/scmi-hwmon.c
diff options
context:
space:
mode:
authorFrank Crawford <frank@crawford.emu.id.au>2024-04-28 16:06:35 +1000
committerGuenter Roeck <linux@roeck-us.net>2024-04-30 10:32:14 -0700
commite58095cfc55692e4da4a5e87322e09a9b75186e0 (patch)
treeae8fce4fa0a805acbfecd60d0356a96713fc4e85 /drivers/hwmon/scmi-hwmon.c
parente2e6a23f4bda2de9c7096aa9c310bc3400187e90 (diff)
hwmon: (it87) Test for chipset before entering configuration mode
Major part of the change for the new method to avoid chipset issues. The actual update does the following: 1) Lock the memory, but does not perform a SIO entry (previously it would have performed an SIO entry). 2) Attempt to read the chipID. This should be safe no matter which chip we have. 3) If step (2) fails, then perform SIO entry and retry chipID read. For older chips and on failure it acts similarly to prior to this patch. 4) Set the sio_data->type, similar to previously. 5) If we have not performed an SIO entry, and this is not a chip type with the NOCONF feature, then it will perform an SIO entry at this point. 6) Proceed with setup as prior to this patch. 7) Any following access to the SIO registers will invoke the SIO entry and SIO exit steps unless it is a chip with the NOCONF feature set. This was set up in the previous patches in this patchset. 8) Update to the exit based on if it had performed a SIO entry or not. Signed-off-by: Frank Crawford <frank@crawford.emu.id.au> Link: https://lore.kernel.org/r/20240428060653.2425296-4-frank@crawford.emu.id.au [groeck: s/intialised/initialized/] Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'drivers/hwmon/scmi-hwmon.c')
0 files changed, 0 insertions, 0 deletions