* [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support
@ 2013-04-19 13:41 Otavio Salvador
2013-04-19 13:41 ` [U-Boot] [PATCH v3 2/7] mx6qsabresd: Return status when initializing MMC Otavio Salvador
` (6 more replies)
0 siblings, 7 replies; 14+ messages in thread
From: Otavio Salvador @ 2013-04-19 13:41 UTC (permalink / raw)
To: u-boot
This allow for easy update of firmware in the SD card from a running
U-Boot.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- New patch
Changes in v2: None
include/configs/mx6qsabre_common.h | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/include/configs/mx6qsabre_common.h b/include/configs/mx6qsabre_common.h
index 015e2b0..a32d7dd 100644
--- a/include/configs/mx6qsabre_common.h
+++ b/include/configs/mx6qsabre_common.h
@@ -78,6 +78,7 @@
#define CONFIG_CMD_BMODE
#define CONFIG_CMD_BOOTZ
+#define CONFIG_CMD_SETEXPR
#undef CONFIG_CMD_IMLS
#define CONFIG_BOOTDELAY 10
@@ -98,6 +99,19 @@
"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
"mmcpart=" __stringify(CONFIG_SYS_MMC_ENV_PART) "\0" \
"mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
+ "update_sd_firmware=" \
+ "if test ${ip_dyn} = yes; then " \
+ "setenv get_cmd dhcp; " \
+ "else " \
+ "setenv get_cmd tftp; " \
+ "fi; " \
+ "if mmc dev ${mmcdev}; then " \
+ "if ${get_cmd} ${update_sd_firmware_filename}; then " \
+ "setexpr fw_sz ${filesize} / 0x200; " \
+ "setexpr fw_sz ${fw_sz} + 1; " \
+ "mmc write ${loadaddr} 0x2 ${fw_sz}; " \
+ "fi; " \
+ "fi\0" \
"mmcargs=setenv bootargs console=${console},${baudrate} " \
"root=${mmcroot}\0" \
"loadbootscript=" \
--
1.8.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 2/7] mx6qsabresd: Return status when initializing MMC
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
@ 2013-04-19 13:41 ` Otavio Salvador
2013-04-25 19:39 ` Stefano Babic
2013-04-19 13:41 ` [U-Boot] [PATCH v3 3/7] wandboard: Use env storage info for mmcdev/mmcpart Otavio Salvador
` (5 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Otavio Salvador @ 2013-04-19 13:41 UTC (permalink / raw)
To: u-boot
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- New patch
Changes in v2: None
board/freescale/mx6qsabresd/mx6qsabresd.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/board/freescale/mx6qsabresd/mx6qsabresd.c b/board/freescale/mx6qsabresd/mx6qsabresd.c
index 0d7cb9e..bf9beef 100644
--- a/board/freescale/mx6qsabresd/mx6qsabresd.c
+++ b/board/freescale/mx6qsabresd/mx6qsabresd.c
@@ -166,6 +166,7 @@ int board_mmc_getcd(struct mmc *mmc)
int board_mmc_init(bd_t *bis)
{
+ s32 status = 0;
int i;
/*
@@ -196,15 +197,15 @@ int board_mmc_init(bd_t *bis)
break;
default:
printf("Warning: you configured more USDHC controllers"
- "(%d) than supported by the board\n", i + 1);
- return 0;
- }
+ "(%d) then supported by the board (%d)\n",
+ i + 1, CONFIG_SYS_FSL_USDHC_NUM);
+ return status;
+ }
- if (fsl_esdhc_initialize(bis, &usdhc_cfg[i]))
- printf("Warning: failed to initialize mmc dev %d\n", i);
+ status |= fsl_esdhc_initialize(bis, &usdhc_cfg[i]);
}
- return 0;
+ return status;
}
#endif
--
1.8.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 3/7] wandboard: Use env storage info for mmcdev/mmcpart
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
2013-04-19 13:41 ` [U-Boot] [PATCH v3 2/7] mx6qsabresd: Return status when initializing MMC Otavio Salvador
@ 2013-04-19 13:41 ` Otavio Salvador
2013-04-25 19:39 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 4/7] wandboard: Add update_sd_firmware support Otavio Salvador
` (4 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Otavio Salvador @ 2013-04-19 13:41 UTC (permalink / raw)
To: u-boot
This makes environment and mmcdev/mmcpart in sync with SYS_MMC_ENV_DEV
and SYS_MMC_ENV_PART settings.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- New patch
Changes in v2: None
include/configs/wandboard.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
index 120e3f6..bd3e727 100644
--- a/include/configs/wandboard.h
+++ b/include/configs/wandboard.h
@@ -97,8 +97,8 @@
"fdt_addr=0x11000000\0" \
"boot_fdt=try\0" \
"ip_dyn=yes\0" \
- "mmcdev=0\0" \
- "mmcpart=2\0" \
+ "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
+ "mmcpart=" __stringify(CONFIG_SYS_MMC_ENV_PART) "\0" \
"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
"mmcargs=setenv bootargs console=${console},${baudrate} " \
"root=${mmcroot}\0" \
@@ -198,6 +198,7 @@
#define CONFIG_ENV_IS_IN_MMC
#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
#define CONFIG_SYS_MMC_ENV_DEV 0
+#define CONFIG_SYS_MMC_ENV_PART 2
#define CONFIG_OF_LIBFDT
#define CONFIG_CMD_BOOTZ
--
1.8.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 4/7] wandboard: Add update_sd_firmware support
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
2013-04-19 13:41 ` [U-Boot] [PATCH v3 2/7] mx6qsabresd: Return status when initializing MMC Otavio Salvador
2013-04-19 13:41 ` [U-Boot] [PATCH v3 3/7] wandboard: Use env storage info for mmcdev/mmcpart Otavio Salvador
@ 2013-04-19 13:42 ` Otavio Salvador
2013-04-25 19:39 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 5/7] wandboard: Add card detection for SOM MicroSD card Otavio Salvador
` (3 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Otavio Salvador @ 2013-04-19 13:42 UTC (permalink / raw)
To: u-boot
This allow for easy update of firmware in the SD card from a running
U-Boot.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- New patch
Changes in v2: None
include/configs/wandboard.h | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
index bd3e727..0dc3286 100644
--- a/include/configs/wandboard.h
+++ b/include/configs/wandboard.h
@@ -47,6 +47,8 @@
#undef CONFIG_CMD_IMLS
+#define CONFIG_CMD_SETEXPR
+
#define CONFIG_BOOTDELAY 5
#define CONFIG_SYS_MEMTEST_START 0x10000000
@@ -100,6 +102,20 @@
"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
"mmcpart=" __stringify(CONFIG_SYS_MMC_ENV_PART) "\0" \
"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
+ "update_sd_firmware_filename=u-boot.imx\0" \
+ "update_sd_firmware=" \
+ "if test ${ip_dyn} = yes; then " \
+ "setenv get_cmd dhcp; " \
+ "else " \
+ "setenv get_cmd tftp; " \
+ "fi; " \
+ "if mmc dev ${mmcdev}; then " \
+ "if ${get_cmd} ${update_sd_firmware_filename}; then " \
+ "setexpr fw_sz ${filesize} / 0x200; " \
+ "setexpr fw_sz ${fw_sz} + 1; " \
+ "mmc write ${loadaddr} 0x2 ${fw_sz}; " \
+ "fi; " \
+ "fi\0" \
"mmcargs=setenv bootargs console=${console},${baudrate} " \
"root=${mmcroot}\0" \
"loadbootscript=" \
--
1.8.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 5/7] wandboard: Add card detection for SOM MicroSD card
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
` (2 preceding siblings ...)
2013-04-19 13:42 ` [U-Boot] [PATCH v3 4/7] wandboard: Add update_sd_firmware support Otavio Salvador
@ 2013-04-19 13:42 ` Otavio Salvador
2013-04-25 19:41 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 6/7] wandboard: Add support for Carrier Board " Otavio Salvador
` (2 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Otavio Salvador @ 2013-04-19 13:42 UTC (permalink / raw)
To: u-boot
This add support to identify if the card is connected or not; so it
does not try to communicate with the controller if no card is
available.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- Move GPIO definition to the top
Changes in v2: None
arch/arm/include/asm/arch-mx6/mx6dl_pins.h | 1 +
board/wandboard/wandboard.c | 18 ++++++++++++++++++
2 files changed, 19 insertions(+)
diff --git a/arch/arm/include/asm/arch-mx6/mx6dl_pins.h b/arch/arm/include/asm/arch-mx6/mx6dl_pins.h
index 9846f1b..b8e6bf0 100644
--- a/arch/arm/include/asm/arch-mx6/mx6dl_pins.h
+++ b/arch/arm/include/asm/arch-mx6/mx6dl_pins.h
@@ -93,6 +93,7 @@ enum {
MX6_PAD_EIM_D28__I2C1_SDA = IOMUX_PAD(0x0544, 0x0174, 1 | IOMUX_CONFIG_SION, 0x086C, 1, 0),
MX6_PAD_EIM_D28__GPIO_3_28 = IOMUX_PAD(0x0544, 0x0174, 5, 0x0000, 0, 0),
MX6_PAD_EIM_D29__GPIO_3_29 = IOMUX_PAD(0x0548, 0x0178, 5, 0x0000, 0, 0),
+ MX6_PAD_EIM_DA9__GPIO_3_9 = IOMUX_PAD(0x0590, 0x01C0, 5, 0x0000, 0, 0),
MX6_PAD_ENET_MDC__ENET_MDC = IOMUX_PAD(0x05B8, 0x01E8, 1, 0x0000, 0, 0),
MX6_PAD_ENET_MDIO__ENET_MDIO = IOMUX_PAD(0x05BC, 0x01EC, 1, 0x0810, 0, 0),
MX6_PAD_ENET_REF_CLK__ENET_TX_CLK = IOMUX_PAD(0x05C0, 0x01F0, 1, 0x0000, 0, 0),
diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index ac7b89a..8ec7eb9 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -38,6 +38,7 @@ DECLARE_GLOBAL_DATA_PTR;
PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED | \
PAD_CTL_DSE_40ohm | PAD_CTL_HYS)
+#define USDHC3_CD_GPIO IMX_GPIO_NR(3, 9)
#define ETH_PHY_RESET IMX_GPIO_NR(3, 29)
int dram_init(void)
@@ -59,6 +60,8 @@ static iomux_v3_cfg_t const usdhc3_pads[] = {
MX6_PAD_SD3_DAT1__USDHC3_DAT1 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
MX6_PAD_SD3_DAT2__USDHC3_DAT2 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
MX6_PAD_SD3_DAT3__USDHC3_DAT3 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+ /* SOM MicroSD Card Detect */
+ MX6_PAD_EIM_DA9__GPIO_3_9 | MUX_PAD_CTRL(NO_PAD_CTRL),
};
static iomux_v3_cfg_t const enet_pads[] = {
@@ -100,12 +103,27 @@ static struct fsl_esdhc_cfg usdhc_cfg[1] = {
{USDHC3_BASE_ADDR},
};
+int board_mmc_getcd(struct mmc *mmc)
+{
+ struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
+ int ret = 0;
+
+ switch (cfg->esdhc_base) {
+ case USDHC3_BASE_ADDR:
+ ret = !gpio_get_value(USDHC3_CD_GPIO);
+ break;
+ }
+
+ return ret;
+}
+
int board_mmc_init(bd_t *bis)
{
imx_iomux_v3_setup_multiple_pads(usdhc3_pads, ARRAY_SIZE(usdhc3_pads));
usdhc_cfg[0].sdhc_clk = mxc_get_clock(MXC_ESDHC3_CLK);
usdhc_cfg[0].max_bus_width = 4;
+ gpio_direction_input(USDHC3_CD_GPIO);
return fsl_esdhc_initialize(bis, &usdhc_cfg[0]);
}
--
1.8.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 6/7] wandboard: Add support for Carrier Board MicroSD card
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
` (3 preceding siblings ...)
2013-04-19 13:42 ` [U-Boot] [PATCH v3 5/7] wandboard: Add card detection for SOM MicroSD card Otavio Salvador
@ 2013-04-19 13:42 ` Otavio Salvador
2013-04-25 19:41 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 7/7] wandboard: Add boot selection support Otavio Salvador
2013-04-25 19:38 ` [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Stefano Babic
6 siblings, 1 reply; 14+ messages in thread
From: Otavio Salvador @ 2013-04-19 13:42 UTC (permalink / raw)
To: u-boot
Allow use of the carrier board MicroSD card available in the
Wandboard; this allow for loading alternative system from the other
card for testing or upgrade proposes.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- Improve commit log
- Reword comment about the 'mmc' mapping
- Rework code which initialize mmc
- Move GPIO definition to the top
Changes in v2:
- Return -EINVAL when trying to initialize a wrong controller
arch/arm/include/asm/arch-mx6/mx6dl_pins.h | 7 ++++
board/wandboard/wandboard.c | 59 ++++++++++++++++++++++++++----
include/configs/wandboard.h | 1 +
3 files changed, 60 insertions(+), 7 deletions(-)
diff --git a/arch/arm/include/asm/arch-mx6/mx6dl_pins.h b/arch/arm/include/asm/arch-mx6/mx6dl_pins.h
index b8e6bf0..8cedbdc 100644
--- a/arch/arm/include/asm/arch-mx6/mx6dl_pins.h
+++ b/arch/arm/include/asm/arch-mx6/mx6dl_pins.h
@@ -103,6 +103,7 @@ enum {
MX6_PAD_GPIO_17__GPIO_7_12 = IOMUX_PAD(0x05E8, 0x0218, 5, 0x0000, 0, 0),
MX6_PAD_GPIO_18__GPIO_7_13 = IOMUX_PAD(0x05EC, 0x021C, 5, 0x0000, 0, 0),
MX6_PAD_GPIO_19__GPIO_4_5 = IOMUX_PAD(0x05F0, 0x0220, 5, 0x0000, 0, 0),
+ MX6_PAD_GPIO_2__GPIO_1_2 = IOMUX_PAD(0x05F4, 0x0224, 5, 0x0000, 0, 0),
MX6_PAD_GPIO_5__GPIO_1_5 = IOMUX_PAD(0x0600, 0x0230, 5, 0x0000, 0, 0),
MX6_PAD_GPIO_5__I2C3_SCL = IOMUX_PAD(0x0600, 0x0230, 6 | IOMUX_CONFIG_SION, 0x0878, 2, 0),
MX6_PAD_KEY_COL3__I2C2_SCL = IOMUX_PAD(0x0638, 0x0250, 4 | IOMUX_CONFIG_SION, 0x0870, 1, 0),
@@ -135,8 +136,14 @@ enum {
MX6_PAD_RGMII_TD3__ENET_RGMII_TD3 = IOMUX_PAD(0x06B8, 0x02D0, 1, 0x0000, 0, 0),
MX6_PAD_RGMII_TX_CTL__RGMII_TX_CTL = IOMUX_PAD(0x06BC, 0x02D4, 1, 0x0000, 0, 0),
MX6_PAD_RGMII_TXC__ENET_RGMII_TXC = IOMUX_PAD(0x06C0, 0x02D8, 1, 0x0000, 0, 0),
+ MX6_PAD_SD1_CLK__USDHC1_CLK = IOMUX_PAD(0x06C4, 0x02DC, 0, 0x0928, 1, 0),
+ MX6_PAD_SD1_CMD__USDHC1_CMD = IOMUX_PAD(0x06C8, 0x02E0, 0 | IOMUX_CONFIG_SION, 0x0000, 0, 0),
MX6_PAD_SD1_CMD__GPIO_1_18 = IOMUX_PAD(0x06C8, 0x02E0, 5, 0x0000, 0, 0),
MX6_PAD_SD1_DAT3__GPIO_1_21 = IOMUX_PAD(0x06D8, 0x02F0, 5, 0x0000, 0, 0),
+ MX6_PAD_SD1_DAT0__USDHC1_DAT0 = IOMUX_PAD(0x06CC, 0x02E4, 0, 0x0000, 0, 0),
+ MX6_PAD_SD1_DAT1__USDHC1_DAT1 = IOMUX_PAD(0x06D0, 0x02E8, 0, 0x0000, 0, 0),
+ MX6_PAD_SD1_DAT2__USDHC1_DAT2 = IOMUX_PAD(0x06D4, 0x02EC, 0, 0x0000, 0, 0),
+ MX6_PAD_SD1_DAT3__USDHC1_DAT3 = IOMUX_PAD(0x06D8, 0x02F0, 0, 0x0000, 0, 0),
MX6_PAD_SD3_CLK__USDHC3_CLK = IOMUX_PAD(0x06F4, 0x030C, 0, 0x0934, 1, 0),
MX6_PAD_SD3_CMD__USDHC3_CMD = IOMUX_PAD(0x06F8, 0x0310, 0 | IOMUX_CONFIG_SION, 0x0000, 0, 0),
MX6_PAD_SD3_DAT0__USDHC3_DAT0 = IOMUX_PAD(0x06FC, 0x0314, 0, 0x0000, 0, 0),
diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index 8ec7eb9..2bf121c 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -38,6 +38,7 @@ DECLARE_GLOBAL_DATA_PTR;
PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED | \
PAD_CTL_DSE_40ohm | PAD_CTL_HYS)
+#define USDHC1_CD_GPIO IMX_GPIO_NR(1, 2)
#define USDHC3_CD_GPIO IMX_GPIO_NR(3, 9)
#define ETH_PHY_RESET IMX_GPIO_NR(3, 29)
@@ -53,6 +54,17 @@ static iomux_v3_cfg_t const uart1_pads[] = {
MX6_PAD_CSI0_DAT11__UART1_RXD | MUX_PAD_CTRL(UART_PAD_CTRL),
};
+iomux_v3_cfg_t const usdhc1_pads[] = {
+ MX6_PAD_SD1_CLK__USDHC1_CLK | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+ MX6_PAD_SD1_CMD__USDHC1_CMD | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+ MX6_PAD_SD1_DAT0__USDHC1_DAT0 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+ MX6_PAD_SD1_DAT1__USDHC1_DAT1 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+ MX6_PAD_SD1_DAT2__USDHC1_DAT2 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+ MX6_PAD_SD1_DAT3__USDHC1_DAT3 | MUX_PAD_CTRL(USDHC_PAD_CTRL),
+ /* Carrier MicroSD Card Detect */
+ MX6_PAD_GPIO_2__GPIO_1_2 | MUX_PAD_CTRL(NO_PAD_CTRL),
+};
+
static iomux_v3_cfg_t const usdhc3_pads[] = {
MX6_PAD_SD3_CLK__USDHC3_CLK | MUX_PAD_CTRL(USDHC_PAD_CTRL),
MX6_PAD_SD3_CMD__USDHC3_CMD | MUX_PAD_CTRL(USDHC_PAD_CTRL),
@@ -99,8 +111,9 @@ static void setup_iomux_enet(void)
gpio_set_value(ETH_PHY_RESET, 1);
}
-static struct fsl_esdhc_cfg usdhc_cfg[1] = {
+static struct fsl_esdhc_cfg usdhc_cfg[2] = {
{USDHC3_BASE_ADDR},
+ {USDHC1_BASE_ADDR},
};
int board_mmc_getcd(struct mmc *mmc)
@@ -109,6 +122,9 @@ int board_mmc_getcd(struct mmc *mmc)
int ret = 0;
switch (cfg->esdhc_base) {
+ case USDHC1_BASE_ADDR:
+ ret = !gpio_get_value(USDHC1_CD_GPIO);
+ break;
case USDHC3_BASE_ADDR:
ret = !gpio_get_value(USDHC3_CD_GPIO);
break;
@@ -119,13 +135,42 @@ int board_mmc_getcd(struct mmc *mmc)
int board_mmc_init(bd_t *bis)
{
- imx_iomux_v3_setup_multiple_pads(usdhc3_pads, ARRAY_SIZE(usdhc3_pads));
-
- usdhc_cfg[0].sdhc_clk = mxc_get_clock(MXC_ESDHC3_CLK);
- usdhc_cfg[0].max_bus_width = 4;
- gpio_direction_input(USDHC3_CD_GPIO);
+ s32 status = 0;
+ u32 index = 0;
+
+ /*
+ * Following map is done:
+ * (U-boot device node) (Physical Port)
+ * mmc0 SOM MicroSD
+ * mmc1 Carrier board MicroSD
+ */
+ for (index = 0; index < CONFIG_SYS_FSL_USDHC_NUM; ++index) {
+ switch (index) {
+ case 0:
+ imx_iomux_v3_setup_multiple_pads(
+ usdhc3_pads, ARRAY_SIZE(usdhc3_pads));
+ usdhc_cfg[0].sdhc_clk = mxc_get_clock(MXC_ESDHC3_CLK);
+ usdhc_cfg[0].max_bus_width = 4;
+ gpio_direction_input(USDHC3_CD_GPIO);
+ break;
+ case 1:
+ imx_iomux_v3_setup_multiple_pads(
+ usdhc1_pads, ARRAY_SIZE(usdhc1_pads));
+ usdhc_cfg[1].sdhc_clk = mxc_get_clock(MXC_ESDHC_CLK);
+ usdhc_cfg[1].max_bus_width = 4;
+ gpio_direction_input(USDHC1_CD_GPIO);
+ break;
+ default:
+ printf("Warning: you configured more USDHC controllers"
+ "(%d) then supported by the board (%d)\n",
+ index + 1, CONFIG_SYS_FSL_USDHC_NUM);
+ return status;
+ }
+
+ status |= fsl_esdhc_initialize(bis, &usdhc_cfg[index]);
+ }
- return fsl_esdhc_initialize(bis, &usdhc_cfg[0]);
+ return status;
}
static int mx6_rgmii_rework(struct phy_device *phydev)
diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
index 0dc3286..9898f55 100644
--- a/include/configs/wandboard.h
+++ b/include/configs/wandboard.h
@@ -59,6 +59,7 @@
/* MMC Configuration */
#define CONFIG_FSL_ESDHC
#define CONFIG_FSL_USDHC
+#define CONFIG_SYS_FSL_USDHC_NUM 2
#define CONFIG_SYS_FSL_ESDHC_ADDR 0
#define CONFIG_MMC
--
1.8.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 7/7] wandboard: Add boot selection support
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
` (4 preceding siblings ...)
2013-04-19 13:42 ` [U-Boot] [PATCH v3 6/7] wandboard: Add support for Carrier Board " Otavio Salvador
@ 2013-04-19 13:42 ` Otavio Salvador
2013-04-25 19:41 ` Stefano Babic
2013-04-25 19:38 ` [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Stefano Babic
6 siblings, 1 reply; 14+ messages in thread
From: Otavio Salvador @ 2013-04-19 13:42 UTC (permalink / raw)
To: u-boot
Adds support for 'bmode' command which let user to choose where to
boot from; this allows U-Boot to load system from another storage
without messing with jumpers.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3: None
Changes in v2: None
board/wandboard/wandboard.c | 19 +++++++++++++++++++
include/configs/wandboard.h | 2 ++
2 files changed, 21 insertions(+)
diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index 2bf121c..c71c90d 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -16,6 +16,7 @@
#include <asm/arch/sys_proto.h>
#include <asm/gpio.h>
#include <asm/imx-common/iomux-v3.h>
+#include <asm/imx-common/boot_mode.h>
#include <asm/io.h>
#include <asm/sizes.h>
#include <common.h>
@@ -225,6 +226,24 @@ int board_early_init_f(void)
return 0;
}
+#ifdef CONFIG_CMD_BMODE
+static const struct boot_mode board_boot_modes[] = {
+ /* 4 bit bus width */
+ {"mmc0", MAKE_CFGVAL(0x40, 0x30, 0x00, 0x00)},
+ {"mmc1", MAKE_CFGVAL(0x40, 0x20, 0x00, 0x00)},
+ {NULL, 0},
+};
+#endif
+
+int board_late_init(void)
+{
+#ifdef CONFIG_CMD_BMODE
+ add_board_boot_modes(board_boot_modes);
+#endif
+
+ return 0;
+}
+
int board_init(void)
{
/* address of boot parameters */
diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
index 9898f55..9d7ec3f 100644
--- a/include/configs/wandboard.h
+++ b/include/configs/wandboard.h
@@ -32,6 +32,7 @@
#define CONFIG_SYS_MALLOC_LEN (3 * SZ_1M)
#define CONFIG_BOARD_EARLY_INIT_F
+#define CONFIG_BOARD_LATE_INIT
#define CONFIG_MXC_GPIO
#define CONFIG_MXC_UART
@@ -47,6 +48,7 @@
#undef CONFIG_CMD_IMLS
+#define CONFIG_CMD_BMODE
#define CONFIG_CMD_SETEXPR
#define CONFIG_BOOTDELAY 5
--
1.8.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
` (5 preceding siblings ...)
2013-04-19 13:42 ` [U-Boot] [PATCH v3 7/7] wandboard: Add boot selection support Otavio Salvador
@ 2013-04-25 19:38 ` Stefano Babic
6 siblings, 0 replies; 14+ messages in thread
From: Stefano Babic @ 2013-04-25 19:38 UTC (permalink / raw)
To: u-boot
On 19/04/2013 15:41, Otavio Salvador wrote:
> This allow for easy update of firmware in the SD card from a running
> U-Boot.
>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
Applied to u-boot-imx, -next branch, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 2/7] mx6qsabresd: Return status when initializing MMC
2013-04-19 13:41 ` [U-Boot] [PATCH v3 2/7] mx6qsabresd: Return status when initializing MMC Otavio Salvador
@ 2013-04-25 19:39 ` Stefano Babic
0 siblings, 0 replies; 14+ messages in thread
From: Stefano Babic @ 2013-04-25 19:39 UTC (permalink / raw)
To: u-boot
On 19/04/2013 15:41, Otavio Salvador wrote:
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
Applied to u-boot-imx, -next branch, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 3/7] wandboard: Use env storage info for mmcdev/mmcpart
2013-04-19 13:41 ` [U-Boot] [PATCH v3 3/7] wandboard: Use env storage info for mmcdev/mmcpart Otavio Salvador
@ 2013-04-25 19:39 ` Stefano Babic
0 siblings, 0 replies; 14+ messages in thread
From: Stefano Babic @ 2013-04-25 19:39 UTC (permalink / raw)
To: u-boot
On 19/04/2013 15:41, Otavio Salvador wrote:
> This makes environment and mmcdev/mmcpart in sync with SYS_MMC_ENV_DEV
> and SYS_MMC_ENV_PART settings.
>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
Applied to u-boot-imx, -next branch, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 4/7] wandboard: Add update_sd_firmware support
2013-04-19 13:42 ` [U-Boot] [PATCH v3 4/7] wandboard: Add update_sd_firmware support Otavio Salvador
@ 2013-04-25 19:39 ` Stefano Babic
0 siblings, 0 replies; 14+ messages in thread
From: Stefano Babic @ 2013-04-25 19:39 UTC (permalink / raw)
To: u-boot
On 19/04/2013 15:42, Otavio Salvador wrote:
> This allow for easy update of firmware in the SD card from a running
> U-Boot.
>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
> Changes in v3:
> - New patch
>
> Changes in v2: None
>
> include/configs/wandboard.h | 16 ++++++++++++++++
> 1 file changed, 16 insertions(+)
>
Applied to u-boot-imx branch, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 5/7] wandboard: Add card detection for SOM MicroSD card
2013-04-19 13:42 ` [U-Boot] [PATCH v3 5/7] wandboard: Add card detection for SOM MicroSD card Otavio Salvador
@ 2013-04-25 19:41 ` Stefano Babic
0 siblings, 0 replies; 14+ messages in thread
From: Stefano Babic @ 2013-04-25 19:41 UTC (permalink / raw)
To: u-boot
On 19/04/2013 15:42, Otavio Salvador wrote:
> This add support to identify if the card is connected or not; so it
> does not try to communicate with the controller if no card is
> available.
>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
Discharge wrong applied message - patches are applied to u-boot-imx,
master branch.
Applied to u-boot-imx, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 6/7] wandboard: Add support for Carrier Board MicroSD card
2013-04-19 13:42 ` [U-Boot] [PATCH v3 6/7] wandboard: Add support for Carrier Board " Otavio Salvador
@ 2013-04-25 19:41 ` Stefano Babic
0 siblings, 0 replies; 14+ messages in thread
From: Stefano Babic @ 2013-04-25 19:41 UTC (permalink / raw)
To: u-boot
On 19/04/2013 15:42, Otavio Salvador wrote:
> Allow use of the carrier board MicroSD card available in the
> Wandboard; this allow for loading alternative system from the other
> card for testing or upgrade proposes.
>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
Applied to u-boot-imx, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 7/7] wandboard: Add boot selection support
2013-04-19 13:42 ` [U-Boot] [PATCH v3 7/7] wandboard: Add boot selection support Otavio Salvador
@ 2013-04-25 19:41 ` Stefano Babic
0 siblings, 0 replies; 14+ messages in thread
From: Stefano Babic @ 2013-04-25 19:41 UTC (permalink / raw)
To: u-boot
On 19/04/2013 15:42, Otavio Salvador wrote:
> Adds support for 'bmode' command which let user to choose where to
> boot from; this allows U-Boot to load system from another storage
> without messing with jumpers.
>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
Applied to u-boot-imx, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2013-04-25 19:41 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-19 13:41 [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Otavio Salvador
2013-04-19 13:41 ` [U-Boot] [PATCH v3 2/7] mx6qsabresd: Return status when initializing MMC Otavio Salvador
2013-04-25 19:39 ` Stefano Babic
2013-04-19 13:41 ` [U-Boot] [PATCH v3 3/7] wandboard: Use env storage info for mmcdev/mmcpart Otavio Salvador
2013-04-25 19:39 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 4/7] wandboard: Add update_sd_firmware support Otavio Salvador
2013-04-25 19:39 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 5/7] wandboard: Add card detection for SOM MicroSD card Otavio Salvador
2013-04-25 19:41 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 6/7] wandboard: Add support for Carrier Board " Otavio Salvador
2013-04-25 19:41 ` Stefano Babic
2013-04-19 13:42 ` [U-Boot] [PATCH v3 7/7] wandboard: Add boot selection support Otavio Salvador
2013-04-25 19:41 ` Stefano Babic
2013-04-25 19:38 ` [U-Boot] [PATCH v3 1/7] mx6qsabre{sd, auto}: Add update_sd_firmware support Stefano Babic
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox