ARM: dts: am43x-epos-evm: Reduce i2c0 bus speed for tps65218
authorDave Gerlach <d-gerlach@ti.com>
Fri, 16 Jul 2021 16:07:30 +0000 (09:07 -0700)
committerSasha Levin <sashal@kernel.org>
Thu, 26 Aug 2021 12:37:25 +0000 (08:37 -0400)
commita617330fc5d96b213c796fd6227bf49134ecdaff
tree316f0f19a3290d03bae424011845a4f27aa78ab4
parent072cc0ba56d7302bc9c3809378a14c3a5e4eccf8
ARM: dts: am43x-epos-evm: Reduce i2c0 bus speed for tps65218

[ Upstream commit 20a6b3fd8e2e2c063b25fbf2ee74d86b898e5087 ]

Based on the latest timing specifications for the TPS65218 from the data
sheet, http://www.ti.com/lit/ds/symlink/tps65218.pdf, document SLDS206
from November 2014, we must change the i2c bus speed to better fit within
the minimum high SCL time required for proper i2c transfer.

When running at 400khz, measurements show that SCL spends
0.8125 uS/1.666 uS high/low which violates the requirement for minimum
high period of SCL provided in datasheet Table 7.6 which is 1 uS.
Switching to 100khz gives us 5 uS/5 uS high/low which both fall above
the minimum given values for 100 khz, 4.0 uS/4.7 uS high/low.

Without this patch occasionally a voltage set operation from the kernel
will appear to have worked but the actual voltage reflected on the PMIC
will not have updated, causing problems especially with cpufreq that may
update to a higher OPP without actually raising the voltage on DCDC2,
leading to a hang.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/arm/boot/dts/am43x-epos-evm.dts