diff options
| author | Prathima <Prathima.Lk@amd.com> | 2026-07-10 16:46:39 +0530 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2026-07-17 15:50:48 +0200 |
| commit | f61a6fd4593bddc0f2109a1d3359fd2a88124d33 (patch) | |
| tree | 6862aa3a6692ffa9df4947b77b3a17821a654104 /include/linux/misc | |
| parent | ba27ea7abd35d260e3b489f985ec2b4113c0fd85 (diff) | |
| download | linux-next-f61a6fd4593bddc0f2109a1d3359fd2a88124d33.tar.gz linux-next-f61a6fd4593bddc0f2109a1d3359fd2a88124d33.zip | |
misc: amd-sbi: Add support for SB-TSI over I3C
AMD SB-TSI temperature sensors can be accessed over both
I2C and I3C buses depending on the platform configuration.
Extend the SB-TSI driver to support both I2C and I3C bus interfaces
by selecting the appropriate transport based on the probed bus type.
The driver maintains backward compatibility with existing I2C
deployments while enabling support for systems using the I3C bus.
Register both I2C and I3C drivers using module_i3c_i2c_driver() and
update the Kconfig dependency from I2C to I3C_OR_I2C.
Reviewed-by: Akshay Gupta <Akshay.Gupta@amd.com>
Signed-off-by: Prathima <Prathima.Lk@amd.com>
Link: https://patch.msgid.link/20260710111642.850022-6-Akshay.Gupta@amd.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/misc')
| -rw-r--r-- | include/linux/misc/tsi.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/include/linux/misc/tsi.h b/include/linux/misc/tsi.h index 6533879cc358..0bdd9d923f92 100644 --- a/include/linux/misc/tsi.h +++ b/include/linux/misc/tsi.h @@ -9,20 +9,27 @@ #define _LINUX_MISC_TSI_H_ #include <linux/i2c.h> +#include <linux/i3c/device.h> #include <linux/types.h> /** * struct sbtsi_data - driver private data for an AMD SB-TSI device * @client: underlying I2C client - * @dev_addr: I2C device address, used as the auxiliary device instance id + * @i3cdev: underlying I3C device (when using I3C bus) + * @dev_addr: I2C/I3C device address, used as the auxiliary device instance id * @ext_range_mode: sensor uses extended temperature range * @read_order: if set, decimal part must be read before integer part + * @is_i3c: true when the device is accessed over I3C */ struct sbtsi_data { - struct i2c_client *client; + union { + struct i2c_client *client; + struct i3c_device *i3cdev; + }; u8 dev_addr; bool ext_range_mode; bool read_order; + bool is_i3c; }; /* |
