diff options
| author | Anton Vorontsov <avorontsov@ru.mvista.com> | 2009-12-16 01:14:31 +0300 | 
|---|---|---|
| committer | Kumar Gala <galak@kernel.crashing.org> | 2010-01-05 13:49:10 -0600 | 
| commit | c4ca10f1db36c3ce649c656dec14f7aab644dd86 (patch) | |
| tree | ff84a6f10476c14fedfda3f0ed314a5b9c80f496 /board/freescale | |
| parent | bc20f9a9527afe8ae406a74f74765d4323f04922 (diff) | |
| download | olio-uboot-2014.01-c4ca10f1db36c3ce649c656dec14f7aab644dd86.tar.xz olio-uboot-2014.01-c4ca10f1db36c3ce649c656dec14f7aab644dd86.zip | |
mpc85xx: Add 4-bits eSDHC support for MPC8569E-MDS boards
Thanks to "Errata to MPC8569E PowerQUICC III Integrated Host Processor
Family Reference Manual, Rev. 0" document, which describes all eSDHC
pins, we can add 4-bits eSDHC support for MPC8569E-MDS boards.
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'board/freescale')
| -rw-r--r-- | board/freescale/mpc8569mds/mpc8569mds.c | 14 | 
1 files changed, 14 insertions, 0 deletions
| diff --git a/board/freescale/mpc8569mds/mpc8569mds.c b/board/freescale/mpc8569mds/mpc8569mds.c index 4612d165b..56854caa8 100644 --- a/board/freescale/mpc8569mds/mpc8569mds.c +++ b/board/freescale/mpc8569mds/mpc8569mds.c @@ -437,6 +437,11 @@ int board_mmc_init(bd_t *bd)  		console_assign(stdin, "eserial1");  		printf("Switched to UART1 (initial log has been printed to "  		       "UART0).\n"); + +		clrsetbits_be32(&gur->plppar1, PLPPAR1_UART0_BIT_MASK, +					       PLPPAR1_ESDHC_4BITS_VAL); +		clrsetbits_be32(&gur->plpdir1, PLPDIR1_UART0_BIT_MASK, +					       PLPDIR1_ESDHC_4BITS_VAL);  		bcsr6 |= BCSR6_SD_CARD_4BITS;  	} else {  		printf("should be disabled.\n"); @@ -483,6 +488,15 @@ static void fdt_board_fixup_esdhc(void *blob, bd_t *bd)  			break;  		}  	} + +	if (hwconfig_subarg_cmp("esdhc", "mode", "4-bits")) { +		off = fdt_node_offset_by_compatible(blob, -1, "fsl,esdhc"); +		if (off < 0) { +			printf("WARNING: could not find esdhc node\n"); +			return; +		} +		fdt_delprop(blob, off, "sdhci,1-bit-only"); +	}  }  #else  static inline void fdt_board_fixup_esdhc(void *blob, bd_t *bd) {} |