mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-31 10:31:33 -04:00
i2c: qcom-geni: fix I2C frequency table to achieve accurate bus rates
Update the I2C frequency table to match the recommended values
specified in the I2C hardware programming guide. In the current IPQ5424
configuration where 32MHz is the source clock, the I2C bus frequencies do
not meet expectations—for instance, 363KHz is achieved instead of the
expected 400KHz.
Fixes: 506bb2ab00 ("i2c: qcom-geni: Support systems with 32MHz serial engine clock")
Signed-off-by: Kathiravan Thirumoorthy <kathiravan.thirumoorthy@oss.qualcomm.com>
Cc: <stable@vger.kernel.org> # v6.13+
Reviewed-by: Mukesh Kumar Savaliya <quic_msavaliy@quicinc.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20250513-i2c-bus-freq-v1-1-9a333ad5757f@oss.qualcomm.com
This commit is contained in:
committed by
Andi Shyti
parent
f632472a2a
commit
85c3453284
@@ -155,9 +155,9 @@ static const struct geni_i2c_clk_fld geni_i2c_clk_map_19p2mhz[] = {
|
||||
|
||||
/* source_clock = 32 MHz */
|
||||
static const struct geni_i2c_clk_fld geni_i2c_clk_map_32mhz[] = {
|
||||
{ I2C_MAX_STANDARD_MODE_FREQ, 8, 14, 18, 40 },
|
||||
{ I2C_MAX_FAST_MODE_FREQ, 4, 3, 11, 20 },
|
||||
{ I2C_MAX_FAST_MODE_PLUS_FREQ, 2, 3, 6, 15 },
|
||||
{ I2C_MAX_STANDARD_MODE_FREQ, 8, 14, 18, 38 },
|
||||
{ I2C_MAX_FAST_MODE_FREQ, 4, 3, 9, 19 },
|
||||
{ I2C_MAX_FAST_MODE_PLUS_FREQ, 2, 3, 5, 15 },
|
||||
{}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user