On 08/21/2018 10:53 AM, Shawn Guo wrote: > On Fri, Jul 20, 2018 at 12:23:21PM +0200, Sébastien Szymanski wrote: >> Signals available on both i.MX6UL and i.MX6ULL should have the same name >> because it is the case of all others common signals, it avoids to make >> mistakes (use the wrong ones) and it makes writing device tree files >> less complicated. For example: >> >> imx6ul-imx6ull-board.dtsi: >> ... >> pinctrl_uart5: uart5grp { >> fsl,pins = < >> MX6UL_PAD_UART5_TX_DATA__UART5_DCE_TX 0x1b0b1 >> MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX 0x1b0b1 >> >; >> }; >> >> imx6ul-board.dts: >> #include <imx6ul.dtsi> >> #include <imx6ul-imx6ull-board.dtsi> >> ... >> >> imx6ull-board.dts: >> #include <imx6ull.dtsi> >> #include <imx6ul-imx6ull-board.dtsi> >> ... >> >> Without this patch, the imx6ull-board.dtb will use >> MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX instead of >> MX6ULL_PAD_UART5_RX_DATA__UART5_DCE_RX and the uart5 will be >> misconfigured. >> >> Signed-off-by: Sébastien Szymanski <sebastien.szymanski@xxxxxxxxxxxx> >> --- >> arch/arm/boot/dts/imx6ull-pinfunc.h | 27 +++++++++++++++++++-------- >> 1 file changed, 19 insertions(+), 8 deletions(-) >> >> diff --git a/arch/arm/boot/dts/imx6ull-pinfunc.h b/arch/arm/boot/dts/imx6ull-pinfunc.h >> index fdc46bb09cc1..7d7f05f7ea77 100644 >> --- a/arch/arm/boot/dts/imx6ull-pinfunc.h >> +++ b/arch/arm/boot/dts/imx6ull-pinfunc.h >> @@ -14,14 +14,25 @@ >> * The pin function ID is a tuple of >> * <mux_reg conf_reg input_reg mux_mode input_val> >> */ >> -#define MX6ULL_PAD_UART1_TX_DATA__UART5_DTE_RX 0x0084 0x0310 0x0644 0x9 0x4 >> -#define MX6ULL_PAD_UART1_RX_DATA__UART5_DCE_RX 0x0088 0x0314 0x0644 0x9 0x5 >> -#define MX6ULL_PAD_UART1_CTS_B__UART5_DCE_RTS 0x008C 0x0318 0x0640 0x9 0x3 >> -#define MX6ULL_PAD_UART1_RTS_B__UART5_DTE_RTS 0x0090 0x031C 0x0640 0x9 0x4 >> -#define MX6ULL_PAD_UART5_TX_DATA__UART5_DTE_RX 0x00BC 0x0348 0x0644 0x0 0x6 >> -#define MX6ULL_PAD_UART5_RX_DATA__UART5_DCE_RX 0x00C0 0x034C 0x0644 0x0 0x7 >> -#define MX6ULL_PAD_ENET1_RX_EN__UART5_DCE_RTS 0x00CC 0x0358 0x0640 0x1 0x5 >> -#define MX6ULL_PAD_ENET1_TX_DATA0__UART5_DTE_RTS 0x00D0 0x035C 0x0640 0x1 0x6 >> +/* signals common for i.MX6UL and i.MX6ULL */ >> +#undef MX6UL_PAD_UART1_TX_DATA__UART5_DTE_RX >> +#define MX6UL_PAD_UART1_TX_DATA__UART5_DTE_RX 0x0084 0x0310 0x0644 0x9 0x4 >> +#undef MX6UL_PAD_UART1_RX_DATA__UART5_DCE_RX >> +#define MX6UL_PAD_UART1_RX_DATA__UART5_DCE_RX 0x0088 0x0314 0x0644 0x9 0x5 >> +#undef MX6UL_PAD_UART1_CTS_B__UART5_DCE_RTS >> +#define MX6UL_PAD_UART1_CTS_B__UART5_DCE_RTS 0x008C 0x0318 0x0640 0x9 0x3 >> +#undef MX6UL_PAD_UART1_RTS_B__UART5_DTE_RTS >> +#define MX6UL_PAD_UART1_RTS_B__UART5_DTE_RTS 0x0090 0x031C 0x0640 0x9 0x4 > > I do not see these 4 pinfunc in imx6ul-pinfunc.h. Are they really > available for i.MX6UL? They are not. I've just sent a v2. Thanks. Regards, > > Shawn > >> +#undef MX6UL_PAD_UART5_TX_DATA__UART5_DTE_RX >> +#define MX6UL_PAD_UART5_TX_DATA__UART5_DTE_RX 0x00BC 0x0348 0x0644 0x0 0x6 >> +#undef MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX >> +#define MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX 0x00C0 0x034C 0x0644 0x0 0x7 >> +#undef MX6UL_PAD_ENET1_RX_EN__UART5_DCE_RTS >> +#define MX6UL_PAD_ENET1_RX_EN__UART5_DCE_RTS 0x00CC 0x0358 0x0640 0x1 0x5 >> +#undef MX6UL_PAD_ENET1_TX_DATA0__UART5_DTE_RTS >> +#define MX6UL_PAD_ENET1_TX_DATA0__UART5_DTE_RTS 0x00D0 0x035C 0x0640 0x1 0x6 >> + >> +/* signals for i.MX6ULL only */ >> #define MX6ULL_PAD_ENET2_RX_DATA0__EPDC_SDDO08 0x00E4 0x0370 0x0000 0x9 0x0 >> #define MX6ULL_PAD_ENET2_RX_DATA1__EPDC_SDDO09 0x00E8 0x0374 0x0000 0x9 0x0 >> #define MX6ULL_PAD_ENET2_RX_EN__EPDC_SDDO10 0x00EC 0x0378 0x0000 0x9 0x0 >> -- >> 2.16.4 >> >> >> _______________________________________________ >> linux-arm-kernel mailing list >> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx >> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel -- Sébastien Szymanski Software engineer, Armadeus Systems Tel: +33 (0)9 72 29 41 44 Fax: +33 (0)9 72 28 79 26