Re: [PATCH v12 4/6] i2c: tegra: Add HS mode support

Akhil R
2025-11-18T11:09:28Z

On Mon, 17 Nov 2025 11:07:07 +0000, Jon Hunter wrote:
> On 15/11/2025 04:26, Akhil R wrote:
>> Add support for HS (High Speed) mode transfers, which is supported by
>> Tegra194 onwards. Also adjust the bus frequency such that it uses the
>> fast plus mode when HS mode is not supported.
>>
>> Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
>> Signed-off-by: Kartik Rajput <kkartik@nvidia.com>
>> ---
>> v10 -> v12:
>> * Update bus_freq_hz to max supported freq and updates to
>> accomodate the changes from Patch 2/6.
>> v10 -> v11:
>> * Update the if condition as per the comments received on:
>> https://lore.kernel.org/linux-tegra/20251110080502.865953-1-kkartik@nvidia.com/T/#t
>> v9 -> v10:
>> * Change switch block to an if-else block.
>> v5 -> v9:
>> * In the switch block, handle the case when hs mode is not
>> supported. Also update it to use Fast mode for master code
>> byte as per the I2C spec for HS mode.
>> v3 -> v5:
>> * Set has_hs_mode_support to false for unsupported SoCs.
>> v2 -> v3:
>> * Document tlow_hs_mode and thigh_hs_mode.
>> v1 -> v2:
>> * Document has_hs_mode_support.
>> * Add a check to set the frequency to fastmode+ if the device
>> does not support HS mode but the requested frequency is more
>> than fastmode+.
>> ---
>> drivers/i2c/busses/i2c-tegra.c | 59 ++++++++++++++++++++++++++++++++--
>> 1 file changed, 57 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c
>> index 8a696c88882e..9ebeb6a2eaf5 100644
>> --- a/drivers/i2c/busses/i2c-tegra.c
>> +++ b/drivers/i2c/busses/i2c-tegra.c
>> @@ -91,6 +91,7 @@
>> #define I2C_HEADER_IE_ENABLE BIT(17)
>> #define I2C_HEADER_REPEAT_START BIT(16)
>> #define I2C_HEADER_CONTINUE_XFER BIT(15)
>> +#define I2C_HEADER_HS_MODE BIT(22)
>
> This should be ordered according to the value. So place this above
> I2C_HEADER_CONT_ON_NAK.

Agree.

Do we need a new version with this change or would it be possible to
update while applying?

Regards,
Akhil