
HI
thanks for this hint, i also tried this. But unfortunately without success. But it is good to know that this way on your side works.
what i've done to try make it work:
add to my dts: chosen { stdout-path = &uart1; };
&uart1 { u-boot,dm-spl; u-boot,dm-preloc; status = "okay"; };
Don't you need pins muxing properties in uart1 ( pinctrl-names / pinctrl-0 ) ?
No, pinmux is done with:
static iomux_v3_cfg_t const board_pads_spl[] = { /* UART#1 PADS */ MUXDESC(PAD_CSI0_DAT10__UART1_TX_DATA, UART_PAD_CTRL), MUXDESC(PAD_CSI0_DAT11__UART1_RX_DATA, UART_PAD_CTRL), }
SETUP_IOMUX_PADS(board_pads_spl);
SPL console output is fine working once DM_SERIAL for SPL is disabled. But with this option enabled i get no output during spl stage. Once the full u-boot payload is loaded the console works with DM as excpected.
In: serial@02020000 Out: serial@02020000 Err: serial@02020000
=> dm tree Class Probed Driver Name ---------------------------------------- root [ + ] root_drive root_driver simple_bus [ + ] generic_si |-- soc simple_bus [ + ] generic_si | |-- aips-bus@02000000 simple_bus [ + ] generic_si | | |-- spba-bus@02000000 spi [ + ] mxc_spi | | | |-- ecspi@02008000 spi_flash [ + ] spi_flash_ | | | | `-- spi_flash@0:1 serial [ + ] serial_mxc | | | `-- serial@02020000
so the device should be present during spl stage and console should be set to it.
# Serial drivers # CONFIG_BAUDRATE=115200 CONFIG_SERIAL_PRESENT=y CONFIG_SPL_SERIAL_PRESENT=y CONFIG_DM_SERIAL=y CONFIG_SPL_DM_SERIAL=y CONFIG_MXC_UART=y
maybe i'm still missing something.
cheers, Hannes