diff options
author | Jason <r64343@freescale.com> | 2010-03-25 15:36:28 +0800 |
---|---|---|
committer | Jason <r64343@freescale.com> | 2010-03-25 19:46:28 +0800 |
commit | 46b29af149c186ed5097ba2b4cc13c2f0d5d0c35 (patch) | |
tree | 2e3c4bf595f831ae6533aacaeb96c425633d71e1 /board | |
parent | 1842946ef735d969e99be097812bbc383e7f8dc1 (diff) | |
download | u-boot-imx-46b29af149c186ed5097ba2b4cc13c2f0d5d0c35.zip u-boot-imx-46b29af149c186ed5097ba2b4cc13c2f0d5d0c35.tar.gz u-boot-imx-46b29af149c186ed5097ba2b4cc13c2f0d5d0c35.tar.bz2 |
ENGR00121976 UBOOT: some fix for SD/MMC card
-Update eSDHC clock setting,
-Fix the GPT timer setting,
-Fix the boot option pars,
-Remove mdelay() function call to improve the performance
Signed-off-by:Jason Liu <r64343@freescale.com>
Diffstat (limited to 'board')
-rw-r--r-- | board/freescale/mx53_evk/mx53_evk.c | 49 |
1 files changed, 43 insertions, 6 deletions
diff --git a/board/freescale/mx53_evk/mx53_evk.c b/board/freescale/mx53_evk/mx53_evk.c index ceef3c3..4804b02 100644 --- a/board/freescale/mx53_evk/mx53_evk.c +++ b/board/freescale/mx53_evk/mx53_evk.c @@ -57,15 +57,34 @@ static inline void setup_boot_device(void) uint bt_mem_type = (soc_sbmr & 0x00000008) >> 3; switch (bt_mem_ctl) { - case 0x4: - boot_dev = MMC_BOOT; + case 0x0: + if (bt_mem_type) + boot_dev = ONE_NAND_BOOT; + else + boot_dev = WEIM_NOR_BOOT; break; - case 0x8: - boot_dev = NAND_BOOT; + case 0x2: + if (bt_mem_type) + boot_dev = SATA_BOOT; + else + boot_dev = PATA_BOOT; break; case 0x3: if (bt_mem_type) boot_dev = SPI_NOR_BOOT; + else + boot_dev = I2C_BOOT; + break; + case 0x4: + case 0x5: + boot_dev = SD_BOOT; + break; + case 0x6: + case 0x7: + boot_dev = MMC_BOOT; + break; + case 0x8 ... 0xf: + boot_dev = NAND_BOOT; break; default: boot_dev = UNKNOWN_BOOT; @@ -505,15 +524,33 @@ int checkboard(void) printf("Boot Device: "); switch (get_boot_device()) { - case NAND_BOOT: - printf("NAND\n"); + case WEIM_NOR_BOOT: + printf("NOR\n"); + break; + case ONE_NAND_BOOT: + printf("ONE NAND\n"); + break; + case PATA_BOOT: + printf("PATA\n"); + break; + case SATA_BOOT: + printf("SATA\n"); + break; + case I2C_BOOT: + printf("I2C\n"); break; case SPI_NOR_BOOT: printf("SPI NOR\n"); break; + case SD_BOOT: + printf("SD\n"); + break; case MMC_BOOT: printf("MMC\n"); break; + case NAND_BOOT: + printf("NAND\n"); + break; case UNKNOWN_BOOT: default: printf("UNKNOWN\n"); |