* [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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.