diff mbox

[v2,3/5] ARM: dts: Add I2C1 support for STM32F429 SoC

Message ID 1464877568-21897-4-git-send-email-cedric.madianga@gmail.com
State Superseded
Headers show

Commit Message

M'boumba Cedric Madianga June 2, 2016, 2:26 p.m. UTC
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Signed-off-by: M'boumba Cedric Madianga <cedric.madianga@gmail.com>
---
 arch/arm/boot/dts/stm32f429.dtsi | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

Comments

Maxime Coquelin June 2, 2016, 4:07 p.m. UTC | #1
2016-06-02 16:26 GMT+02:00 M'boumba Cedric Madianga <cedric.madianga@gmail.com>:
> Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
> Signed-off-by: M'boumba Cedric Madianga <cedric.madianga@gmail.com>
> ---
>  arch/arm/boot/dts/stm32f429.dtsi | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/arch/arm/boot/dts/stm32f429.dtsi b/arch/arm/boot/dts/stm32f429.dtsi
> index 434d4b9..d5857eb 100644
> --- a/arch/arm/boot/dts/stm32f429.dtsi
> +++ b/arch/arm/boot/dts/stm32f429.dtsi
> @@ -323,6 +323,18 @@
>                                         slew-rate = <2>;
>                                 };
>                         };
> +
> +                       i2c1_sda_pin: i2c1_sda@0 {
> +                               pins {
> +                                       pinmux = <STM32F429_PB9_FUNC_I2C1_SDA>;
> +                                       drive-open-drain;
> +                               };
> +                       };
> +                       i2c1_scl_pin: i2c1_scl@0 {
> +                               pins {
> +                                       pinmux = <STM32F429_PB6_FUNC_I2C1_SCL>;
> +                               };
> +                       };
>                 };
Shouldn't be preferrable to group the two functions in a single one,
as done for usart config in this file?:

            usart1_pins_a: usart1@0 {
                pins1 {
                    pinmux = <STM32F429_PA9_FUNC_USART1_TX>;
                    bias-disable;
                    drive-push-pull;
                    slew-rate = <0>;
                };
                pins2 {
                    pinmux = <STM32F429_PA10_FUNC_USART1_RX>;
                    bias-disable;
                };
            };

Also, I would prefer the phandle to be suffixed with the port number,
as multiple muxing options are available, for example "i2c1_pins_b".

Thanks,
Maxime
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
M'boumba Cedric Madianga June 3, 2016, 7:57 a.m. UTC | #2
2016-06-02 18:07 GMT+02:00 Maxime Coquelin <mcoquelin.stm32@gmail.com>:
> 2016-06-02 16:26 GMT+02:00 M'boumba Cedric Madianga <cedric.madianga@gmail.com>:
>> Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
>> Signed-off-by: M'boumba Cedric Madianga <cedric.madianga@gmail.com>
>> ---
>>  arch/arm/boot/dts/stm32f429.dtsi | 24 ++++++++++++++++++++++++
>>  1 file changed, 24 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/stm32f429.dtsi b/arch/arm/boot/dts/stm32f429.dtsi
>> index 434d4b9..d5857eb 100644
>> --- a/arch/arm/boot/dts/stm32f429.dtsi
>> +++ b/arch/arm/boot/dts/stm32f429.dtsi
>> @@ -323,6 +323,18 @@
>>                                         slew-rate = <2>;
>>                                 };
>>                         };
>> +
>> +                       i2c1_sda_pin: i2c1_sda@0 {
>> +                               pins {
>> +                                       pinmux = <STM32F429_PB9_FUNC_I2C1_SDA>;
>> +                                       drive-open-drain;
>> +                               };
>> +                       };
>> +                       i2c1_scl_pin: i2c1_scl@0 {
>> +                               pins {
>> +                                       pinmux = <STM32F429_PB6_FUNC_I2C1_SCL>;
>> +                               };
>> +                       };
>>                 };
> Shouldn't be preferrable to group the two functions in a single one,
I agree. It is better.
>
>             usart1_pins_a: usart1@0 {
>                 pins1 {
>                     pinmux = <STM32F429_PA9_FUNC_USART1_TX>;
>                     bias-disable;
>                     drive-push-pull;
>                     slew-rate = <0>;
>                 };
>                 pins2 {
>                     pinmux = <STM32F429_PA10_FUNC_USART1_RX>;
>                     bias-disable;
>                 };
>             };
>
> Also, I would prefer the phandle to be suffixed with the port number,
> as multiple muxing options are available, for example "i2c1_pins_b".
Ok understood. I will fix that in the V3.
Thanks
>
> Thanks,
> Maxime
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/boot/dts/stm32f429.dtsi b/arch/arm/boot/dts/stm32f429.dtsi
index 434d4b9..d5857eb 100644
--- a/arch/arm/boot/dts/stm32f429.dtsi
+++ b/arch/arm/boot/dts/stm32f429.dtsi
@@ -323,6 +323,18 @@ 
 					slew-rate = <2>;
 				};
 			};
+
+			i2c1_sda_pin: i2c1_sda@0 {
+				pins {
+					pinmux = <STM32F429_PB9_FUNC_I2C1_SDA>;
+					drive-open-drain;
+				};
+			};
+			i2c1_scl_pin: i2c1_scl@0 {
+				pins {
+					pinmux = <STM32F429_PB6_FUNC_I2C1_SCL>;
+				};
+			};
 		};
 
 		rcc: rcc@40023800 {
@@ -395,6 +407,18 @@ 
 			interrupts = <80>;
 			clocks = <&rcc 0 38>;
 		};
+
+		i2c1: i2c@40005400 {
+			compatible = "st,stm32f4-i2c";
+			reg = <0x40005400 0x400>;
+			interrupts = <31>,
+				     <32>;
+			resets = <&rcc 277>;
+			clocks = <&rcc 0 149>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			status = "disabled";
+		};
 	};
 };