2022-06-20 11:08:48

by Alain Volmat

[permalink] [raw]
Subject: [PATCH 4/4] i2c: stm32: add support for the STM32MP13 soc

Add a new compatible for the stm32mp13. Fast Mode Plus control
register address differ from the one for STM32MP15.

Signed-off-by: Alain Volmat <[email protected]>
---
drivers/i2c/busses/i2c-stm32f7.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/i2c/busses/i2c-stm32f7.c b/drivers/i2c/busses/i2c-stm32f7.c
index b29d8e476342..9946b330ddce 100644
--- a/drivers/i2c/busses/i2c-stm32f7.c
+++ b/drivers/i2c/busses/i2c-stm32f7.c
@@ -410,6 +410,12 @@ static const struct stm32f7_i2c_setup stm32mp15_setup = {
.fmp_clr_offset = 0x40,
};

+static const struct stm32f7_i2c_setup stm32mp13_setup = {
+ .rise_time = STM32F7_I2C_RISE_TIME_DEFAULT,
+ .fall_time = STM32F7_I2C_FALL_TIME_DEFAULT,
+ .fmp_clr_offset = 0x4,
+};
+
static inline void stm32f7_i2c_set_bits(void __iomem *reg, u32 mask)
{
writel_relaxed(readl_relaxed(reg) | mask, reg);
@@ -2469,6 +2475,7 @@ static const struct dev_pm_ops stm32f7_i2c_pm_ops = {
static const struct of_device_id stm32f7_i2c_match[] = {
{ .compatible = "st,stm32f7-i2c", .data = &stm32f7_setup},
{ .compatible = "st,stm32mp15-i2c", .data = &stm32mp15_setup},
+ { .compatible = "st,stm32mp13-i2c", .data = &stm32mp13_setup},
{},
};
MODULE_DEVICE_TABLE(of, stm32f7_i2c_match);
--
2.25.1


2022-06-21 14:16:26

by Pierre Yves MORDRET

[permalink] [raw]
Subject: Re: [PATCH 4/4] i2c: stm32: add support for the STM32MP13 soc

Hi All

Look good to me.

Reviewed-by: Pierre-Yves MORDRET <[email protected]>

Regards

On 6/20/22 12:54, Alain Volmat wrote:
> Add a new compatible for the stm32mp13. Fast Mode Plus control
> register address differ from the one for STM32MP15.
>
> Signed-off-by: Alain Volmat <[email protected]>
> ---
> drivers/i2c/busses/i2c-stm32f7.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/drivers/i2c/busses/i2c-stm32f7.c b/drivers/i2c/busses/i2c-stm32f7.c
> index b29d8e476342..9946b330ddce 100644
> --- a/drivers/i2c/busses/i2c-stm32f7.c
> +++ b/drivers/i2c/busses/i2c-stm32f7.c
> @@ -410,6 +410,12 @@ static const struct stm32f7_i2c_setup stm32mp15_setup = {
> .fmp_clr_offset = 0x40,
> };
>
> +static const struct stm32f7_i2c_setup stm32mp13_setup = {
> + .rise_time = STM32F7_I2C_RISE_TIME_DEFAULT,
> + .fall_time = STM32F7_I2C_FALL_TIME_DEFAULT,
> + .fmp_clr_offset = 0x4,
> +};
> +
> static inline void stm32f7_i2c_set_bits(void __iomem *reg, u32 mask)
> {
> writel_relaxed(readl_relaxed(reg) | mask, reg);
> @@ -2469,6 +2475,7 @@ static const struct dev_pm_ops stm32f7_i2c_pm_ops = {
> static const struct of_device_id stm32f7_i2c_match[] = {
> { .compatible = "st,stm32f7-i2c", .data = &stm32f7_setup},
> { .compatible = "st,stm32mp15-i2c", .data = &stm32mp15_setup},
> + { .compatible = "st,stm32mp13-i2c", .data = &stm32mp13_setup},
> {},
> };
> MODULE_DEVICE_TABLE(of, stm32f7_i2c_match);

--
--
~ Py MORDRET
--