On Thu, Sep 12, 2019 at 12:15 PM Marcel Ziswiler <mar...@ziswiler.com> wrote: > > From: Marcel Ziswiler <marcel.ziswi...@toradex.com> > > Avoid UART input from floating RX pins on UARTB and UARTC (Colibri T30) > and UARTB, UARTC and UARTD (Apalis T30). > > Note: Floating pins may cause spurious break conditions potentially > interrupting U-Boot's autoboot. > > Signed-off-by: Marcel Ziswiler <marcel.ziswi...@toradex.com> > > --- > > board/toradex/apalis_t30/pinmux-config-apalis_t30.h | 9 ++++++--- > board/toradex/colibri_t30/pinmux-config-colibri_t30.h | 7 ++++--- > 2 files changed, 10 insertions(+), 6 deletions(-) > > diff --git a/board/toradex/apalis_t30/pinmux-config-apalis_t30.h > b/board/toradex/apalis_t30/pinmux-config-apalis_t30.h > index 8d6696aaad..3a2cf4606e 100644 > --- a/board/toradex/apalis_t30/pinmux-config-apalis_t30.h > +++ b/board/toradex/apalis_t30/pinmux-config-apalis_t30.h > @@ -120,7 +120,8 @@ static struct pmux_pingrp_config tegra3_pinmux_common[] = > { > DEFAULT_PINMUX(ULPI_DATA6_PO7, UARTA, NORMAL, NORMAL, INPUT), > DEFAULT_PINMUX(ULPI_DATA7_PO0, UARTA, NORMAL, NORMAL, OUTPUT), > DEFAULT_PINMUX(ULPI_CLK_PY0, UARTD, NORMAL, NORMAL, OUTPUT), > - DEFAULT_PINMUX(ULPI_DIR_PY1, UARTD, NORMAL, NORMAL, INPUT), > + /* UARTD RX, make sure we don't get input form a floating Pin */ > + DEFAULT_PINMUX(ULPI_DIR_PY1, UARTD, UP, NORMAL, INPUT), > DEFAULT_PINMUX(ULPI_NXT_PY2, UARTD, NORMAL, NORMAL, INPUT), > DEFAULT_PINMUX(ULPI_STP_PY3, UARTD, NORMAL, NORMAL, OUTPUT), > DEFAULT_PINMUX(DAP3_FS_PP0, I2S2, NORMAL, NORMAL, INPUT), > @@ -189,12 +190,14 @@ static struct pmux_pingrp_config tegra3_pinmux_common[] > = { > LV_PINMUX(VI_MCLK_PT1, VI, NORMAL, NORMAL, OUTPUT, DISABLE, DISABLE), > LV_PINMUX(VI_PCLK_PT0, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), > LV_PINMUX(VI_VSYNC_PD6, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), > - DEFAULT_PINMUX(UART2_RXD_PC3, UARTB, NORMAL, NORMAL, INPUT), > + /* UARTB RX, make sure we don't get input form a floating Pin */ > + DEFAULT_PINMUX(UART2_RXD_PC3, UARTB, UP, NORMAL, INPUT), > DEFAULT_PINMUX(UART2_TXD_PC2, UARTB, NORMAL, NORMAL, OUTPUT), > DEFAULT_PINMUX(UART2_RTS_N_PJ6, UARTB, DOWN, TRISTATE, OUTPUT), /* NC > */ > DEFAULT_PINMUX(UART2_CTS_N_PJ5, UARTB, DOWN, TRISTATE, OUTPUT), /* NC > */ > DEFAULT_PINMUX(UART3_TXD_PW6, UARTC, NORMAL, NORMAL, OUTPUT), > - DEFAULT_PINMUX(UART3_RXD_PW7, UARTC, NORMAL, NORMAL, INPUT), > + /* UARTC RX, make sure we don't get input form a floating Pin */ > + DEFAULT_PINMUX(UART3_RXD_PW7, UARTC, UP, NORMAL, INPUT), > DEFAULT_PINMUX(UART3_CTS_N_PA1, UARTC, NORMAL, NORMAL, INPUT), > DEFAULT_PINMUX(UART3_RTS_N_PC0, PWM0, NORMAL, NORMAL, OUTPUT), > DEFAULT_PINMUX(PU0, RSVD1, DOWN, TRISTATE, OUTPUT), > diff --git a/board/toradex/colibri_t30/pinmux-config-colibri_t30.h > b/board/toradex/colibri_t30/pinmux-config-colibri_t30.h > index c583583b3f..5ac1a6da97 100644 > --- a/board/toradex/colibri_t30/pinmux-config-colibri_t30.h > +++ b/board/toradex/colibri_t30/pinmux-config-colibri_t30.h > @@ -180,7 +180,8 @@ static struct pmux_pingrp_config tegra3_pinmux_common[] = > { > LV_PINMUX(VI_D7_PL5, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), > LV_PINMUX(VI_D10_PT2, RSVD1, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), > LV_PINMUX(VI_MCLK_PT1, VI, UP, NORMAL, INPUT, DISABLE, DISABLE), > - DEFAULT_PINMUX(UART2_RXD_PC3, UARTB, NORMAL, NORMAL, INPUT), > + /* UARTC RX, make sure we don't get input form a floating Pin */ > + DEFAULT_PINMUX(UART2_RXD_PC3, UARTB, UP, NORMAL, INPUT), > DEFAULT_PINMUX(UART2_TXD_PC2, UARTB, NORMAL, NORMAL, INPUT), > DEFAULT_PINMUX(UART2_RTS_N_PJ6, GMI, NORMAL, NORMAL, INPUT), > DEFAULT_PINMUX(UART2_CTS_N_PJ5, GMI, NORMAL, NORMAL, INPUT), > @@ -207,11 +208,11 @@ static struct pmux_pingrp_config tegra3_pinmux_common[] > = { > DEFAULT_PINMUX(GMI_AD8_PH0, PWM0, NORMAL, NORMAL, OUTPUT), /* > LCD1_BL_PWM */ > DEFAULT_PINMUX(GMI_AD10_PH2, NAND, NORMAL, NORMAL, OUTPUT), /* > LCD1_BL_EN */ > DEFAULT_PINMUX(GMI_A16_PJ7, UARTD, NORMAL, NORMAL, INPUT), > - DEFAULT_PINMUX(GMI_A17_PB0, UARTD, NORMAL, NORMAL, INPUT), > + /* UARTB RX, make sure we don't get input form a floating Pin */ > + DEFAULT_PINMUX(GMI_A17_PB0, UARTD, UP, NORMAL, INPUT), > DEFAULT_PINMUX(GMI_A18_PB1, UARTD, NORMAL, NORMAL, INPUT), > DEFAULT_PINMUX(GMI_A19_PK7, UARTD, NORMAL, NORMAL, INPUT), > > - > /* Multiplexed with KB_ROW10/KB_ROW11/KB_ROW12/KB_ROW15 */ > DEFAULT_PINMUX(CAM_MCLK_PCC0, VI_ALT2, UP, TRISTATE, INPUT), > DEFAULT_PINMUX(PCC1, RSVD1, NORMAL, TRISTATE, INPUT), > -- > 2.21.0 > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > https://lists.denx.de/listinfo/u-boot
Reviewed-by: Igor Opaniuk <igor.opan...@toradex.com> -- Best regards - Freundliche GrĂ¼sse - Meilleures salutations Igor Opaniuk mailto: igor.opan...@gmail.com skype: igor.opanyuk +380 (93) 836 40 67 http://ua.linkedin.com/in/iopaniuk _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot