* [U-Boot] [PATCH 0/3] davinci: spl: select boot device based on boot pin cfg
@ 2017-01-09 10:06 Fabien Parent
2017-01-09 10:06 ` [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device Fabien Parent
` (2 more replies)
0 siblings, 3 replies; 10+ messages in thread
From: Fabien Parent @ 2017-01-09 10:06 UTC (permalink / raw)
To: u-boot
Right now the SPL is trying to load u-boot based on defines, i.e. one has to
define CONFIG_SPL_NAND_SIMPLE to boot from NAND, or CONFIG_SPL_SPI_LOAD to boot
from SPI FLASH, etc...
This prevent us from having a single SPL image that is able to boot from all
media, and one need to build an image for each medium. This patchset is
replacing the #ifdef that select the boot medium by reading the value of the
boot pins (via the BOOTCFG register).
Now a single SPL image will be able to read from the boot pin to know
which device should be used to load u-boot.
This patchset is also enable SPL's MMC boot for the OMAPL138-LCDK in order
to have one image that is able to boot from MMC and NAND.
Fabien Parent (3):
davinci: spl: use bootcfg to select boot device
omapl138_lcdk: enable SPL MMC support
omapl138_lcdk: remove empty ifdef block
arch/arm/mach-davinci/include/mach/hardware.h | 16 ++++++++++++--
arch/arm/mach-davinci/spl.c | 31 +++++++++++++++++++--------
configs/omapl138_lcdk_defconfig | 1 +
include/configs/omapl138_lcdk.h | 3 ---
4 files changed, 37 insertions(+), 14 deletions(-)
--
2.11.0
^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device
2017-01-09 10:06 [U-Boot] [PATCH 0/3] davinci: spl: select boot device based on boot pin cfg Fabien Parent
@ 2017-01-09 10:06 ` Fabien Parent
2017-01-11 3:19 ` Tom Rini
2017-01-15 18:31 ` [U-Boot] [U-Boot, " Tom Rini
2017-01-09 10:06 ` [U-Boot] [PATCH 2/3] omapl138_lcdk: enable SPL MMC support Fabien Parent
2017-01-09 10:06 ` [U-Boot] [PATCH 3/3] omapl138_lcdk: remove empty ifdef block Fabien Parent
2 siblings, 2 replies; 10+ messages in thread
From: Fabien Parent @ 2017-01-09 10:06 UTC (permalink / raw)
To: u-boot
Right now the SPL is trying to load u-boot based on defines, i.e. one
has to define CONFIG_SPL_NAND_SIMPLE to boot from NAND,
or CONFIG_SPL_SPI_LOAD to boot from SPI FLASH, etc...
This prevent us from having a single SPL image that is able to boot from
all media, and one need to build an image for each medium. This
commit is replacing the #ifdef that select the boot medium by reading
the value of the boot pins (via the BOOTCFG register).
Now a single SPL image will be able to read from the boot pin to know
which device should be used to load u-boot.
Signed-off-by: Fabien Parent <fparent@baylibre.com>
---
arch/arm/mach-davinci/include/mach/hardware.h | 16 ++++++++++++--
arch/arm/mach-davinci/spl.c | 31 +++++++++++++++++++--------
2 files changed, 36 insertions(+), 11 deletions(-)
diff --git a/arch/arm/mach-davinci/include/mach/hardware.h b/arch/arm/mach-davinci/include/mach/hardware.h
index 2a0360a785..c31f38c8a2 100644
--- a/arch/arm/mach-davinci/include/mach/hardware.h
+++ b/arch/arm/mach-davinci/include/mach/hardware.h
@@ -475,12 +475,15 @@ int clk_get(enum davinci_clk_ids id);
/* Boot config */
struct davinci_syscfg_regs {
dv_reg revid;
- dv_reg rsvd[13];
+ dv_reg rsvd[7];
+ dv_reg bootcfg;
+ dv_reg chiprevidr;
+ dv_reg rsvd2[4];
dv_reg kick0;
dv_reg kick1;
dv_reg rsvd1[52];
dv_reg mstpri[3];
- dv_reg rsvd2;
+ dv_reg rsvd3;
dv_reg pinmux[20];
dv_reg suspsrc;
dv_reg chipsig;
@@ -495,6 +498,15 @@ struct davinci_syscfg_regs {
#define davinci_syscfg_regs \
((struct davinci_syscfg_regs *)DAVINCI_BOOTCFG_BASE)
+enum {
+ DAVINCI_NAND8_BOOT = 0b001110,
+ DAVINCI_NAND16_BOOT = 0b010000,
+ DAVINCI_SD_OR_MMC_BOOT = 0b011100,
+ DAVINCI_MMC_ONLY_BOOT = 0b111100,
+ DAVINCI_SPI0_FLASH_BOOT = 0b001010,
+ DAVINCI_SPI1_FLASH_BOOT = 0b001100,
+};
+
#define pinmux(x) (&davinci_syscfg_regs->pinmux[x])
/* Emulation suspend bits */
diff --git a/arch/arm/mach-davinci/spl.c b/arch/arm/mach-davinci/spl.c
index 0aeaa7d8b7..564c2008e0 100644
--- a/arch/arm/mach-davinci/spl.c
+++ b/arch/arm/mach-davinci/spl.c
@@ -52,14 +52,27 @@ u32 spl_boot_mode(const u32 boot_device)
u32 spl_boot_device(void)
{
-#ifdef CONFIG_SPL_NAND_SIMPLE
- return BOOT_DEVICE_NAND;
-#elif defined(CONFIG_SPL_SPI_LOAD)
- return BOOT_DEVICE_SPI;
-#elif defined(CONFIG_SPL_MMC_LOAD)
- return BOOT_DEVICE_MMC1;
-#else
- puts("Unknown boot device\n");
- hang();
+ switch (davinci_syscfg_regs->bootcfg) {
+#ifdef CONFIG_SPL_NAND_SUPPORT
+ case DAVINCI_NAND8_BOOT:
+ case DAVINCI_NAND16_BOOT:
+ return BOOT_DEVICE_NAND;
#endif
+
+#ifdef CONFIG_SPL_MMC_SUPPORT
+ case DAVINCI_SD_OR_MMC_BOOT:
+ case DAVINCI_MMC_ONLY_BOOT:
+ return BOOT_DEVICE_MMC1;
+#endif
+
+#ifdef CONFIG_SPL_SPI_FLASH_SUPPORT
+ case DAVINCI_SPI0_FLASH_BOOT:
+ case DAVINCI_SPI1_FLASH_BOOT:
+ return BOOT_DEVICE_SPI;
+#endif
+
+ default:
+ puts("Unknown boot device\n");
+ hang();
+ }
}
--
2.11.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 2/3] omapl138_lcdk: enable SPL MMC support
2017-01-09 10:06 [U-Boot] [PATCH 0/3] davinci: spl: select boot device based on boot pin cfg Fabien Parent
2017-01-09 10:06 ` [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device Fabien Parent
@ 2017-01-09 10:06 ` Fabien Parent
2017-01-11 3:19 ` Tom Rini
2017-01-15 18:31 ` [U-Boot] [U-Boot,2/3] " Tom Rini
2017-01-09 10:06 ` [U-Boot] [PATCH 3/3] omapl138_lcdk: remove empty ifdef block Fabien Parent
2 siblings, 2 replies; 10+ messages in thread
From: Fabien Parent @ 2017-01-09 10:06 UTC (permalink / raw)
To: u-boot
Enable SPL MMC support in order to allow to build a single u-boot image
that is able to boot from MMC and NAND devices.
Signed-off-by: Fabien Parent <fparent@baylibre.com>
---
configs/omapl138_lcdk_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
index d030ffafc3..77ede8a1c8 100644
--- a/configs/omapl138_lcdk_defconfig
+++ b/configs/omapl138_lcdk_defconfig
@@ -3,6 +3,7 @@ CONFIG_ARCH_DAVINCI=y
CONFIG_TARGET_OMAPL138_LCDK=y
CONFIG_SPL_LIBCOMMON_SUPPORT=y
CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_SPL_MMC_SUPPORT=y
CONFIG_SPL_NAND_SUPPORT=y
CONFIG_SPL_SERIAL_SUPPORT=y
CONFIG_BOOTDELAY=3
--
2.11.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 3/3] omapl138_lcdk: remove empty ifdef block
2017-01-09 10:06 [U-Boot] [PATCH 0/3] davinci: spl: select boot device based on boot pin cfg Fabien Parent
2017-01-09 10:06 ` [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device Fabien Parent
2017-01-09 10:06 ` [U-Boot] [PATCH 2/3] omapl138_lcdk: enable SPL MMC support Fabien Parent
@ 2017-01-09 10:06 ` Fabien Parent
2017-01-11 3:20 ` Tom Rini
2017-01-15 18:32 ` [U-Boot] [U-Boot,3/3] " Tom Rini
2 siblings, 2 replies; 10+ messages in thread
From: Fabien Parent @ 2017-01-09 10:06 UTC (permalink / raw)
To: u-boot
Small clean-up.
Signed-off-by: Fabien Parent <fparent@baylibre.com>
---
include/configs/omapl138_lcdk.h | 3 ---
1 file changed, 3 deletions(-)
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index cdc93c38c8..15e900f6e2 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -315,9 +315,6 @@
#define CONFIG_CMD_UBIFS
#endif
-#ifdef CONFIG_USE_SPIFLASH
-#endif
-
#if !defined(CONFIG_USE_NAND) && \
!defined(CONFIG_SYS_USE_NOR) && \
!defined(CONFIG_USE_SPIFLASH)
--
2.11.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device
2017-01-09 10:06 ` [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device Fabien Parent
@ 2017-01-11 3:19 ` Tom Rini
2017-01-15 18:31 ` [U-Boot] [U-Boot, " Tom Rini
1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2017-01-11 3:19 UTC (permalink / raw)
To: u-boot
On Mon, Jan 09, 2017 at 11:06:36AM +0100, Fabien Parent wrote:
> Right now the SPL is trying to load u-boot based on defines, i.e. one
> has to define CONFIG_SPL_NAND_SIMPLE to boot from NAND,
> or CONFIG_SPL_SPI_LOAD to boot from SPI FLASH, etc...
> This prevent us from having a single SPL image that is able to boot from
> all media, and one need to build an image for each medium. This
> commit is replacing the #ifdef that select the boot medium by reading
> the value of the boot pins (via the BOOTCFG register).
>
> Now a single SPL image will be able to read from the boot pin to know
> which device should be used to load u-boot.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170110/9c81dd98/attachment.sig>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 2/3] omapl138_lcdk: enable SPL MMC support
2017-01-09 10:06 ` [U-Boot] [PATCH 2/3] omapl138_lcdk: enable SPL MMC support Fabien Parent
@ 2017-01-11 3:19 ` Tom Rini
2017-01-15 18:31 ` [U-Boot] [U-Boot,2/3] " Tom Rini
1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2017-01-11 3:19 UTC (permalink / raw)
To: u-boot
On Mon, Jan 09, 2017 at 11:06:37AM +0100, Fabien Parent wrote:
> Enable SPL MMC support in order to allow to build a single u-boot image
> that is able to boot from MMC and NAND devices.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170110/4fe65452/attachment.sig>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 3/3] omapl138_lcdk: remove empty ifdef block
2017-01-09 10:06 ` [U-Boot] [PATCH 3/3] omapl138_lcdk: remove empty ifdef block Fabien Parent
@ 2017-01-11 3:20 ` Tom Rini
2017-01-15 18:32 ` [U-Boot] [U-Boot,3/3] " Tom Rini
1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2017-01-11 3:20 UTC (permalink / raw)
To: u-boot
On Mon, Jan 09, 2017 at 11:06:38AM +0100, Fabien Parent wrote:
> Small clean-up.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170110/84ac4d64/attachment.sig>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [U-Boot, 1/3] davinci: spl: use bootcfg to select boot device
2017-01-09 10:06 ` [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device Fabien Parent
2017-01-11 3:19 ` Tom Rini
@ 2017-01-15 18:31 ` Tom Rini
1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2017-01-15 18:31 UTC (permalink / raw)
To: u-boot
On Mon, Jan 09, 2017 at 11:06:36AM +0100, Fabien Parent wrote:
> Right now the SPL is trying to load u-boot based on defines, i.e. one
> has to define CONFIG_SPL_NAND_SIMPLE to boot from NAND,
> or CONFIG_SPL_SPI_LOAD to boot from SPI FLASH, etc...
> This prevent us from having a single SPL image that is able to boot from
> all media, and one need to build an image for each medium. This
> commit is replacing the #ifdef that select the boot medium by reading
> the value of the boot pins (via the BOOTCFG register).
>
> Now a single SPL image will be able to read from the boot pin to know
> which device should be used to load u-boot.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Reviewed-by: Tom Rini <trini@konsulko.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170115/eb0713ff/attachment.sig>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [U-Boot,2/3] omapl138_lcdk: enable SPL MMC support
2017-01-09 10:06 ` [U-Boot] [PATCH 2/3] omapl138_lcdk: enable SPL MMC support Fabien Parent
2017-01-11 3:19 ` Tom Rini
@ 2017-01-15 18:31 ` Tom Rini
1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2017-01-15 18:31 UTC (permalink / raw)
To: u-boot
On Mon, Jan 09, 2017 at 11:06:37AM +0100, Fabien Parent wrote:
> Enable SPL MMC support in order to allow to build a single u-boot image
> that is able to boot from MMC and NAND devices.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Reviewed-by: Tom Rini <trini@konsulko.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170115/b83dce96/attachment.sig>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [U-Boot,3/3] omapl138_lcdk: remove empty ifdef block
2017-01-09 10:06 ` [U-Boot] [PATCH 3/3] omapl138_lcdk: remove empty ifdef block Fabien Parent
2017-01-11 3:20 ` Tom Rini
@ 2017-01-15 18:32 ` Tom Rini
1 sibling, 0 replies; 10+ messages in thread
From: Tom Rini @ 2017-01-15 18:32 UTC (permalink / raw)
To: u-boot
On Mon, Jan 09, 2017 at 11:06:38AM +0100, Fabien Parent wrote:
> Small clean-up.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Reviewed-by: Tom Rini <trini@konsulko.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170115/f6422102/attachment.sig>
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2017-01-15 18:32 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-09 10:06 [U-Boot] [PATCH 0/3] davinci: spl: select boot device based on boot pin cfg Fabien Parent
2017-01-09 10:06 ` [U-Boot] [PATCH 1/3] davinci: spl: use bootcfg to select boot device Fabien Parent
2017-01-11 3:19 ` Tom Rini
2017-01-15 18:31 ` [U-Boot] [U-Boot, " Tom Rini
2017-01-09 10:06 ` [U-Boot] [PATCH 2/3] omapl138_lcdk: enable SPL MMC support Fabien Parent
2017-01-11 3:19 ` Tom Rini
2017-01-15 18:31 ` [U-Boot] [U-Boot,2/3] " Tom Rini
2017-01-09 10:06 ` [U-Boot] [PATCH 3/3] omapl138_lcdk: remove empty ifdef block Fabien Parent
2017-01-11 3:20 ` Tom Rini
2017-01-15 18:32 ` [U-Boot] [U-Boot,3/3] " Tom Rini
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.