Re: doubt about where to put pin-mux in MX28 based platform DT
From: Maxime Ripard <hidden>
Date: 2013-03-07 13:06:27
Also in:
linux-arm-kernel
Hi Hector, Le 06/03/2013 18:02, Hector Palacios a écrit :
quoted hunk
I'm creating the DT for a custom platform based on Freescale MX28 CPU and I have some doubts about where to add some pin mux configurations: whether in imx28.dtsi or in my platform dts. A pair of examples folow: Example #1. My platform is using a valid IOMUX for DUART TX/RX lines which is not covered in imx28.dtsi, namely the I2C0 pins. Since this is a valid IOMUX that can be used by other platforms, I'd say I should included it in imx28.dtsi:diff --git a/arch/arm/boot/dts/imx28.dtsi b/arch/arm/boot/dts/imx28.dtsi index 3fa6d19..8928b7b 100644 --- a/arch/arm/boot/dts/imx28.dtsi +++ b/arch/arm/boot/dts/imx28.dtsi@@ -186,6 +186,17 @@ fsl,pull-up = <0>; }; + duart_pins_c: duart@2 { + reg = <2>; + fsl,pinmux-ids = < + 0x3182 /*MX28_PAD_I2C0_SCL__DUART_RX */ + 0x3192 /* MX28_PAD_I2C0_SDA__DUART_TX */ + >; + fsl,drive-strength = <0>; + fsl,voltage = <1>; + fsl,pull-up = <0>; + }; + duart_4pins_a: duart-4pins@0 { reg = <0>; fsl,pinmux-ids = <
That's right.
Example #2. My platform assembles a NAND chip which is powered at 1.8V. The imx28.dtsi has a configuration 'gpmi_pins_a: gpmi-nand@0' that configures the pins at 3.3V. Should I create another entry here 'gpmi_pins_b: gpmi-nand@1' with fsl,voltage = <0>; or should I create a specific entry in my platform's DT instead? What is the convention?
Since it's the same pinset, I'd rather go for using gpmi_pins_a in your
NAND chip node, but also overload the fsl,voltage property of
gpmi_pins_a in your board device tree.
That would give something like
pinctrl@80018000 {
gpmi_pins_a: gpmi-nand@0 {
fsl,voltage = <0>;
};
};
nand@deadbeef {
pinctrl-names = "default";
pinctrl-0 = <&gpmi_pins_a>;
}
But maybe Sascha will have a different view on this.
Maxime
--
Maxime Ripard, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com