On 11/26/2017 11:59 PM, Yangbo Lu wrote: > The BRDCFG5[SPISDHC] register field of Qixis device is used > to control SPI and SDHC signal routing. > > 10 = Force SDHC Mode > - SPI_CS[0] is routed to CPLD for SDHC_VS use. > - SPI_CS[1] is unused. > - SPI_CS[2:3] are routed to the TDMRiser slot. > > 11 = Force eMMC Mode > - SPI_CS[0:3] are routed to the eMMC card. > > 0X = Auto Mode > - If SDHC_CS_B=0 (SDHC card installed): Use SDHC mode > described above. > - Else SDHC_CS_B=1 (no SDHC card installed): Use eMMC > mode described above. > > In default the hardware uses auto mode, but sometimes we need > to use force SDHC mode to support SD card hotplug, or SD sleep > waking up in kernel. This patch is to support force SDHC mode > by hwconfig.
Help me understand this. When you eject the SD card, does the CPLD logic detect the SDHC_CS_B and change the signal routing? Are you trying to fix the signal routing by forcing the mode? > > Signed-off-by: Yangbo Lu <yangbo...@nxp.com> > --- > board/freescale/ls1088a/ls1088a.c | 18 ++++++++++++++++++ > board/freescale/ls1088a/ls1088a_qixis.h | 6 ++++++ > include/configs/ls1088ardb.h | 2 ++ > 3 files changed, 26 insertions(+) > > diff --git a/board/freescale/ls1088a/ls1088a.c > b/board/freescale/ls1088a/ls1088a.c > index 96d9ae7f1d..60f40edb5a 100644 > --- a/board/freescale/ls1088a/ls1088a.c > +++ b/board/freescale/ls1088a/ls1088a.c > @@ -18,6 +18,7 @@ > #include <environment.h> > #include <asm/arch-fsl-layerscape/soc.h> > #include <asm/arch/ppa.h> > +#include <hwconfig.h> > > #include "../common/qixis.h" > #include "ls1088a_qixis.h" > @@ -296,6 +297,23 @@ void board_retimer_init(void) > select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT); > } > > +#ifdef CONFIG_MISC_INIT_R > +int misc_init_r(void) > +{ > +#ifdef CONFIG_TARGET_LS1088ARDB > + u8 brdcfg5; > + > + if (hwconfig("esdhc-force-sd")) { > + brdcfg5 = QIXIS_READ(brdcfg[5]); > + brdcfg5 &= ~BRDCFG5_SPISDHC_MASK; > + brdcfg5 |= BRDCFG5_FORCE_SD; > + QIXIS_WRITE(brdcfg[5], brdcfg5); > + } > +#endif Would it be appropriate to check if eMMC is used before taking the forced value? York _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot