* [U-Boot] [PATCH v5 0/3] i.MX6 SabreSD and SabreAUTO bmode support
@ 2013-03-16 18:05 Otavio Salvador
2013-03-16 18:05 ` [U-Boot] [PATCH v5 1/3] mx6qsabresd: Document the mapping of USDHC[2-4] Otavio Salvador
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Otavio Salvador @ 2013-03-16 18:05 UTC (permalink / raw)
To: u-boot
This adds the bmode support for i.MX6 SabreSD and SabreAUTO
boards. This allows user to choose the boot mode at runtime making it
easy to boot from USB or other media.
This patchset has been tested in SabreSD but only build tested in
SabreAUTO as I don't have the board for testing.
Changes in v5:
- Improve comment in code for easier understanding (Fabio)
- Fix build failure in SabreAUTO
- Move include of boot_mode.h header to this patch
Changes in v4:
- Fix switch code to proper break (Stefano)
Changes in v3:
- Drop change in bootdelay; the change where done by me while testing
it and I mistakenly included it.
Changes in v2:
- Improve commit log
- Rework code to use a 'ret' variable (Fabio)
Otavio Salvador (3):
mx6qsabresd: Document the mapping of USDHC[2-4]
mx6qsabresd: Fix card detection for invalid card id case
mx6qsabre{sd,auto}: Add boot mode select
board/freescale/mx6qsabreauto/mx6qsabreauto.c | 18 +++++++++++
board/freescale/mx6qsabresd/mx6qsabresd.c | 43 ++++++++++++++++++++++++---
include/configs/mx6qsabre_common.h | 2 ++
3 files changed, 59 insertions(+), 4 deletions(-)
--
1.8.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH v5 1/3] mx6qsabresd: Document the mapping of USDHC[2-4]
2013-03-16 18:05 [U-Boot] [PATCH v5 0/3] i.MX6 SabreSD and SabreAUTO bmode support Otavio Salvador
@ 2013-03-16 18:05 ` Otavio Salvador
2013-04-03 8:44 ` Stefano Babic
2013-03-16 18:05 ` [U-Boot] [PATCH v5 2/3] mx6qsabresd: Fix card detection for invalid card id case Otavio Salvador
2013-03-16 18:05 ` [U-Boot] [PATCH v5 3/3] mx6qsabre{sd,auto}: Add boot mode select Otavio Salvador
2 siblings, 1 reply; 7+ messages in thread
From: Otavio Salvador @ 2013-03-16 18:05 UTC (permalink / raw)
To: u-boot
This documents the SD card identifier so it is easier for user to spot
which card number will be used, if need.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v5:
- Improve comment in code for easier understanding (Fabio)
Changes in v4: None
Changes in v3: None
Changes in v2:
- Improve commit log
board/freescale/mx6qsabresd/mx6qsabresd.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/board/freescale/mx6qsabresd/mx6qsabresd.c b/board/freescale/mx6qsabresd/mx6qsabresd.c
index 2b3926a..5ebbff3 100644
--- a/board/freescale/mx6qsabresd/mx6qsabresd.c
+++ b/board/freescale/mx6qsabresd/mx6qsabresd.c
@@ -160,6 +160,13 @@ int board_mmc_init(bd_t *bis)
{
int i;
+ /*
+ * According to the board_mmc_init() the following map is done:
+ * (U-boot device node) (Physical Port)
+ * mmc0 SD2
+ * mmc1 SD3
+ * mmc2 eMMC
+ */
for (i = 0; i < CONFIG_SYS_FSL_USDHC_NUM; i++) {
switch (i) {
case 0:
--
1.8.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH v5 2/3] mx6qsabresd: Fix card detection for invalid card id case
2013-03-16 18:05 [U-Boot] [PATCH v5 0/3] i.MX6 SabreSD and SabreAUTO bmode support Otavio Salvador
2013-03-16 18:05 ` [U-Boot] [PATCH v5 1/3] mx6qsabresd: Document the mapping of USDHC[2-4] Otavio Salvador
@ 2013-03-16 18:05 ` Otavio Salvador
2013-04-03 8:44 ` Stefano Babic
2013-03-16 18:05 ` [U-Boot] [PATCH v5 3/3] mx6qsabre{sd,auto}: Add boot mode select Otavio Salvador
2 siblings, 1 reply; 7+ messages in thread
From: Otavio Salvador @ 2013-03-16 18:05 UTC (permalink / raw)
To: u-boot
This changes the code so in case an unkown value is passed it will
return as invalid.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v5: None
Changes in v4:
- Fix switch code to proper break (Stefano)
Changes in v3: None
Changes in v2:
- Rework code to use a 'ret' variable (Fabio)
board/freescale/mx6qsabresd/mx6qsabresd.c | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/board/freescale/mx6qsabresd/mx6qsabresd.c b/board/freescale/mx6qsabresd/mx6qsabresd.c
index 5ebbff3..d3019e9 100644
--- a/board/freescale/mx6qsabresd/mx6qsabresd.c
+++ b/board/freescale/mx6qsabresd/mx6qsabresd.c
@@ -145,15 +145,21 @@ struct fsl_esdhc_cfg usdhc_cfg[3] = {
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 USDHC2_BASE_ADDR:
- return !gpio_get_value(USDHC2_CD_GPIO);
+ ret = !gpio_get_value(USDHC2_CD_GPIO);
+ break;
case USDHC3_BASE_ADDR:
- return !gpio_get_value(USDHC3_CD_GPIO);
- default:
- return 1; /* eMMC/uSDHC4 is always present */
+ ret = !gpio_get_value(USDHC3_CD_GPIO);
+ break;
+ case USDHC4_BASE_ADDR:
+ ret = 1; /* eMMC/uSDHC4 is always present */
+ break;
}
+
+ return ret;
}
int board_mmc_init(bd_t *bis)
--
1.8.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH v5 3/3] mx6qsabre{sd,auto}: Add boot mode select
2013-03-16 18:05 [U-Boot] [PATCH v5 0/3] i.MX6 SabreSD and SabreAUTO bmode support Otavio Salvador
2013-03-16 18:05 ` [U-Boot] [PATCH v5 1/3] mx6qsabresd: Document the mapping of USDHC[2-4] Otavio Salvador
2013-03-16 18:05 ` [U-Boot] [PATCH v5 2/3] mx6qsabresd: Fix card detection for invalid card id case Otavio Salvador
@ 2013-03-16 18:05 ` Otavio Salvador
2013-04-03 8:44 ` [U-Boot] [PATCH v5 3/3] mx6qsabre{sd, auto}: " Stefano Babic
2 siblings, 1 reply; 7+ messages in thread
From: Otavio Salvador @ 2013-03-16 18:05 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 v5:
- Fix build failure in SabreAUTO
- Move include of boot_mode.h header to this patch
Changes in v4: None
Changes in v3:
- Drop change in bootdelay; the change where done by me while testing
it and I mistakenly included it.
Changes in v2: None
board/freescale/mx6qsabreauto/mx6qsabreauto.c | 18 ++++++++++++++++++
board/freescale/mx6qsabresd/mx6qsabresd.c | 22 ++++++++++++++++++++++
include/configs/mx6qsabre_common.h | 2 ++
3 files changed, 42 insertions(+)
diff --git a/board/freescale/mx6qsabreauto/mx6qsabreauto.c b/board/freescale/mx6qsabreauto/mx6qsabreauto.c
index 91cc007..aec3286 100644
--- a/board/freescale/mx6qsabreauto/mx6qsabreauto.c
+++ b/board/freescale/mx6qsabreauto/mx6qsabreauto.c
@@ -26,6 +26,7 @@
#include <asm/errno.h>
#include <asm/gpio.h>
#include <asm/imx-common/iomux-v3.h>
+#include <asm/imx-common/boot_mode.h>
#include <mmc.h>
#include <fsl_esdhc.h>
#include <miiphy.h>
@@ -216,6 +217,23 @@ int board_init(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)},
+ {NULL, 0},
+};
+#endif
+
+int board_late_init(void)
+{
+#ifdef CONFIG_CMD_BMODE
+ add_board_boot_modes(board_boot_modes);
+#endif
+
+ return 0;
+}
+
int checkboard(void)
{
int rev = mx6sabre_rev();
diff --git a/board/freescale/mx6qsabresd/mx6qsabresd.c b/board/freescale/mx6qsabresd/mx6qsabresd.c
index d3019e9..73ab448 100644
--- a/board/freescale/mx6qsabresd/mx6qsabresd.c
+++ b/board/freescale/mx6qsabresd/mx6qsabresd.c
@@ -26,10 +26,12 @@
#include <asm/errno.h>
#include <asm/gpio.h>
#include <asm/imx-common/iomux-v3.h>
+#include <asm/imx-common/boot_mode.h>
#include <mmc.h>
#include <fsl_esdhc.h>
#include <miiphy.h>
#include <netdev.h>
+
DECLARE_GLOBAL_DATA_PTR;
#define UART_PAD_CTRL (PAD_CTL_PKE | PAD_CTL_PUE | \
@@ -272,6 +274,26 @@ int board_init(void)
return 0;
}
+#ifdef CONFIG_CMD_BMODE
+static const struct boot_mode board_boot_modes[] = {
+ /* 4 bit bus width */
+ {"sd2", MAKE_CFGVAL(0x40, 0x28, 0x00, 0x00)},
+ {"sd3", MAKE_CFGVAL(0x40, 0x30, 0x00, 0x00)},
+ /* 8 bit bus width */
+ {"emmc", MAKE_CFGVAL(0x40, 0x38, 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 checkboard(void)
{
puts("Board: MX6Q-SabreSD\n");
diff --git a/include/configs/mx6qsabre_common.h b/include/configs/mx6qsabre_common.h
index 9eda9ed..0965b8f 100644
--- a/include/configs/mx6qsabre_common.h
+++ b/include/configs/mx6qsabre_common.h
@@ -36,6 +36,7 @@
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * 1024 * 1024)
#define CONFIG_BOARD_EARLY_INIT_F
+#define CONFIG_BOARD_LATE_INIT
#define CONFIG_MXC_GPIO
#define CONFIG_MXC_UART
@@ -75,6 +76,7 @@
/* Command definition */
#include <config_cmd_default.h>
+#define CONFIG_CMD_BMODE
#define CONFIG_CMD_BOOTZ
#undef CONFIG_CMD_IMLS
--
1.8.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH v5 3/3] mx6qsabre{sd, auto}: Add boot mode select
2013-03-16 18:05 ` [U-Boot] [PATCH v5 3/3] mx6qsabre{sd,auto}: Add boot mode select Otavio Salvador
@ 2013-04-03 8:44 ` Stefano Babic
0 siblings, 0 replies; 7+ messages in thread
From: Stefano Babic @ 2013-04-03 8:44 UTC (permalink / raw)
To: u-boot
On 16/03/2013 19:05, 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] 7+ messages in thread
* [U-Boot] [PATCH v5 1/3] mx6qsabresd: Document the mapping of USDHC[2-4]
2013-03-16 18:05 ` [U-Boot] [PATCH v5 1/3] mx6qsabresd: Document the mapping of USDHC[2-4] Otavio Salvador
@ 2013-04-03 8:44 ` Stefano Babic
0 siblings, 0 replies; 7+ messages in thread
From: Stefano Babic @ 2013-04-03 8:44 UTC (permalink / raw)
To: u-boot
On 16/03/2013 19:05, Otavio Salvador wrote:
> This documents the SD card identifier so it is easier for user to spot
> which card number will be used, if need.
>
> 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] 7+ messages in thread
* [U-Boot] [PATCH v5 2/3] mx6qsabresd: Fix card detection for invalid card id case
2013-03-16 18:05 ` [U-Boot] [PATCH v5 2/3] mx6qsabresd: Fix card detection for invalid card id case Otavio Salvador
@ 2013-04-03 8:44 ` Stefano Babic
0 siblings, 0 replies; 7+ messages in thread
From: Stefano Babic @ 2013-04-03 8:44 UTC (permalink / raw)
To: u-boot
On 16/03/2013 19:05, Otavio Salvador wrote:
> This changes the code so in case an unkown value is passed it will
> return as invalid.
>
> 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] 7+ messages in thread
end of thread, other threads:[~2013-04-03 8:44 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-16 18:05 [U-Boot] [PATCH v5 0/3] i.MX6 SabreSD and SabreAUTO bmode support Otavio Salvador
2013-03-16 18:05 ` [U-Boot] [PATCH v5 1/3] mx6qsabresd: Document the mapping of USDHC[2-4] Otavio Salvador
2013-04-03 8:44 ` Stefano Babic
2013-03-16 18:05 ` [U-Boot] [PATCH v5 2/3] mx6qsabresd: Fix card detection for invalid card id case Otavio Salvador
2013-04-03 8:44 ` Stefano Babic
2013-03-16 18:05 ` [U-Boot] [PATCH v5 3/3] mx6qsabre{sd,auto}: Add boot mode select Otavio Salvador
2013-04-03 8:44 ` [U-Boot] [PATCH v5 3/3] mx6qsabre{sd, auto}: " Stefano Babic
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox