summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/arch-mx28/sys_proto.h
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2012-05-01 11:09:45 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2012-05-15 08:31:35 +0200
commitf8c4a86b5e9717c1539b6aa45667ba531581ab28 (patch)
tree1b199abe6bb6ec47e183b9ab6330b2e2efd91162 /arch/arm/include/asm/arch-mx28/sys_proto.h
parent0239c2fb4a24f99e7d63d7ec0be04a05f0b895f4 (diff)
downloadblackbird-obmc-uboot-f8c4a86b5e9717c1539b6aa45667ba531581ab28.tar.gz
blackbird-obmc-uboot-f8c4a86b5e9717c1539b6aa45667ba531581ab28.zip
i.MX28: Implement boot pads sampling and reporting
This patch implements code that samples i.MX28 boot pads and reports boot mode accordingly. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Detlev Zundel <dzu@denx.de> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'arch/arm/include/asm/arch-mx28/sys_proto.h')
-rw-r--r--arch/arm/include/asm/arch-mx28/sys_proto.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch-mx28/sys_proto.h b/arch/arm/include/asm/arch-mx28/sys_proto.h
index 04f2e4db3c..e701c6409e 100644
--- a/arch/arm/include/asm/arch-mx28/sys_proto.h
+++ b/arch/arm/include/asm/arch-mx28/sys_proto.h
@@ -39,7 +39,33 @@ void mx28_common_spl_init(const iomux_cfg_t *iomux_setup,
const unsigned int iomux_size);
#endif
+struct mx28_pair {
+ uint8_t boot_pads;
+ uint8_t boot_mask;
+ const char *mode;
+};
+
+static const struct mx28_pair mx28_boot_modes[] = {
+ { 0x00, 0x0f, "USB #0" },
+ { 0x01, 0x1f, "I2C #0, master, 3V3" },
+ { 0x11, 0x1f, "I2C #0, master, 1V8" },
+ { 0x02, 0x1f, "SSP SPI #2, master, 3V3 NOR" },
+ { 0x12, 0x1f, "SSP SPI #2, master, 1V8 NOR" },
+ { 0x03, 0x1f, "SSP SPI #3, master, 3V3 NOR" },
+ { 0x13, 0x1f, "SSP SPI #3, master, 1V8 NOR" },
+ { 0x04, 0x1f, "NAND, 3V3" },
+ { 0x14, 0x1f, "NAND, 1V8" },
+ { 0x08, 0x1f, "SSP SPI #3, master, 3V3 EEPROM" },
+ { 0x18, 0x1f, "SSP SPI #3, master, 1V8 EEPROM" },
+ { 0x09, 0x1f, "SSP SD/MMC #0, 3V3" },
+ { 0x19, 0x1f, "SSP SD/MMC #0, 1V8" },
+ { 0x0a, 0x1f, "SSP SD/MMC #1, 3V3" },
+ { 0x1a, 0x1f, "SSP SD/MMC #1, 1V8" },
+ { 0x00, 0x00, "Reserved/Unknown/Wrong" },
+};
+
struct mx28_spl_data {
+ uint8_t boot_mode_idx;
uint32_t mem_dram_size;
};
OpenPOWER on IntegriCloud