From a5f512cb01e48f5bfcdef800dd477c8b04a4cacf Mon Sep 17 00:00:00 2001
Sam Protsenko
semen.protsenko at linaro.org
Sat Dec 4 13:50:25 PST 2021
Modern ARM64 Samsung Exynos SoCs (like Exynos Auto V9 and Exynos850) use
pretty much the same High-Speed I2C controller supported in i2c-exynos5
driver ("samsung,exynos7-hsi2c" variant), but with some differences:
- timings are now calculated and configured a bit differently
- two clocks are now provided to HSI2C controller (and must be
asserted during I2C operation and register access)
This patch series implements these changes, making it possible to use
HSI2C driver on modern Exynos SoCs.
Another change in mentioned SoCs is that HSI2C controller is now a part
of USIv2 IP-core. But no USI modifications are needed in HSI2C driver,
as all USI related configuration is done in USI driver independently.
USI driver is added in [1] series (or its later revision, if available).
To make HSI2C functional, both patch series (this one and [1]) have to
be applied, but those can be applied independently.
Changes in v2:
- Added new patches renaming "hsi2c@*" nodes to "i2c@*" for Exynos
dts's
- Added R-b tags from v1 review
- Fixed and improved i2c-exynos5 dt-bindings
[1] https://patchwork.kernel.org/project/linux-samsung-soc/cover/20211204195757.8600-1-semen.protsenko@linaro.org/
Jaewon Kim (2):
dt-bindings: i2c: exynos5: Add exynosautov9-hsi2c compatible
i2c: exynos5: Add support for ExynosAutoV9 SoC
Sam Protsenko (6):
dt-bindings: i2c: exynos5: Convert to dtschema
dt-bindings: i2c: exynos5: Add bus clock
i2c: exynos5: Add bus clock support
i2c: exynos5: Mention Exynos850 and ExynosAutoV9 in Kconfig
arm: dts: exynos: Rename hsi2c nodes to i2c for Exynos5260
arm64: dts: exynos: Rename hsi2c nodes to i2c for Exynos5433 and
Exynos7
.../devicetree/bindings/i2c/i2c-exynos5.txt | 53 -------
.../devicetree/bindings/i2c/i2c-exynos5.yaml | 133 ++++++++++++++++++
arch/arm/boot/dts/exynos5260.dtsi | 8 +-
arch/arm64/boot/dts/exynos/exynos5433.dtsi | 24 ++--
arch/arm64/boot/dts/exynos/exynos7.dtsi | 24 ++--
drivers/i2c/busses/Kconfig | 2 +-
drivers/i2c/busses/i2c-exynos5.c | 108 +++++++++++---
7 files changed, 253 insertions(+), 99 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-exynos5.txt
create mode 100644 Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml
--
2.30.2
More information about the linux-arm-kernel
mailing list