public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black
@ 2013-07-09 19:00 Justin Waters
  2013-07-09 19:00 ` [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular Justin Waters
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 19:00 UTC (permalink / raw)
  To: u-boot

There are a number of differences between the BeagleBone Black
and other AM335x boards that require some modification of the
default AM335x EVM configuration. In particular, it lacks NAND
flash, has multiple MMC interfaces, and can store its environment
in an unused eMMC partition.

The following patch set improves the out-of-box experience on the
BeagleBone Black without impacting the existing AM335x boards.

Justin Waters (5):
  am335x_evm: Make NAND support modular
  am335x_evm: Add am335x_boneblack variant
  am335x_evm: Add command line editing
  am335x_evm: Rework bootcmd to handle two MMC devs
  Add additional MLO images to .gitignore

 .gitignore                   |    2 +-
 boards.cfg                   |    1 +
 include/configs/am335x_evm.h |  107 +++++++++++++++++++++++++++---------------
 3 files changed, 70 insertions(+), 40 deletions(-)

-- 
1.7.9.6

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular
  2013-07-09 19:00 [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Justin Waters
@ 2013-07-09 19:00 ` Justin Waters
  2013-07-09 19:44   ` Tom Rini
  2013-07-17 21:05   ` Scott Wood
  2013-07-09 19:00 ` [U-Boot] [PATCH 2/5] am335x_evm: Add am335x_boneblack variant Justin Waters
                   ` (4 subsequent siblings)
  5 siblings, 2 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 19:00 UTC (permalink / raw)
  To: u-boot

Give the user the ability to disable NAND support by defining
CONFIG_NO_NAND. This will allow custom hardware to easily support
this configuration.

Signed-off-by: Justin Waters <justin.waters@timesys.com>
---
 include/configs/am335x_evm.h |   55 ++++++++++++++++++++++++++++--------------
 1 file changed, 37 insertions(+), 18 deletions(-)

diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index c5a6d4b..7bcfe2e 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -42,12 +42,39 @@
 
 #define CONFIG_SYS_CACHELINE_SIZE       64
 
+#ifdef CONFIG_NO_NAND
+#undef CONFIG_NAND
+#else
+#define CONFIG_NAND
+#endif
+
 /* commands to include */
 #include <config_cmd_default.h>
 
 #define CONFIG_CMD_ASKENV
 #define CONFIG_VERSION_VARIABLE
 
+#ifdef CONFIG_NAND
+#define NANDARGS \
+	"mtdids=" MTDIDS_DEFAULT "\0" \
+	"mtdparts=" MTDPARTS_DEFAULT "\0" \
+	"nandargs=setenv bootargs console=${console} " \
+		"${optargs} " \
+		"root=${nandroot} " \
+		"rootfstype=${nandrootfstype}\0" \
+	"dfu_alt_info_nand=" DFU_ALT_INFO_NAND "\0" \
+	"nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \
+	"nandrootfstype=ubifs rootwait=1\0" \
+	"nandsrcaddr=0x280000\0" \
+		"nandboot=echo Booting from nand ...; " \
+		"run nandargs; " \
+		"nand read ${loadaddr} ${nandsrcaddr} ${nandimgsize}; " \
+		"bootm ${loadaddr}\0" \
+	"nandimgsize=0x500000\0"
+#else
+#define NANDARGS ""
+#endif
+
 /* set to negative value for no autoboot */
 #define CONFIG_BOOTDELAY		1
 #define CONFIG_ENV_VARS_UBOOT_CONFIG
@@ -63,19 +90,12 @@
 	"fdtfile=undefined\0" \
 	"console=ttyO0,115200n8\0" \
 	"optargs=\0" \
-	"mtdids=" MTDIDS_DEFAULT "\0" \
-	"mtdparts=" MTDPARTS_DEFAULT "\0" \
 	"dfu_alt_info_mmc=" DFU_ALT_INFO_MMC "\0" \
 	"dfu_alt_info_emmc=rawemmc mmc 0 3751936\0" \
-	"dfu_alt_info_nand=" DFU_ALT_INFO_NAND "\0" \
 	"mmcdev=0\0" \
 	"mmcroot=/dev/mmcblk0p2 ro\0" \
 	"mmcrootfstype=ext4 rootwait\0" \
 	"bootpart=0:2\0" \
-	"nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \
-	"nandrootfstype=ubifs rootwait=1\0" \
-	"nandsrcaddr=0x280000\0" \
-	"nandimgsize=0x500000\0" \
 	"rootpath=/export/rootfs\0" \
 	"nfsopts=nolock\0" \
 	"static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}" \
@@ -86,10 +106,6 @@
 		"${optargs} " \
 		"root=${mmcroot} " \
 		"rootfstype=${mmcrootfstype}\0" \
-	"nandargs=setenv bootargs console=${console} " \
-		"${optargs} " \
-		"root=${nandroot} " \
-		"rootfstype=${nandrootfstype}\0" \
 	"spiroot=/dev/mtdblock4 rw\0" \
 	"spirootfstype=jffs2\0" \
 	"spisrcaddr=0xe0000\0" \
@@ -118,10 +134,6 @@
 	"mmcboot=echo Booting from mmc ...; " \
 		"run mmcargs; " \
 		"bootm ${loadaddr} - ${fdtaddr}\0" \
-	"nandboot=echo Booting from nand ...; " \
-		"run nandargs; " \
-		"nand read ${loadaddr} ${nandsrcaddr} ${nandimgsize}; " \
-		"bootm ${loadaddr}\0" \
 	"spiboot=echo Booting from spi ...; " \
 		"run spiargs; " \
 		"sf probe ${spibusno}:0; " \
@@ -147,7 +159,8 @@
 		"if test $board_name = A335X_SK; then " \
 			"setenv fdtfile am335x-evmsk.dtb; fi; " \
 		"if test $fdtfile = undefined; then " \
-			"echo WARNING: Could not determine device tree to use; fi; \0"
+			"echo WARNING: Could not determine device tree to use; fi; \0" \
+	NANDARGS
 #endif
 
 #define CONFIG_BOOTCOMMAND \
@@ -231,7 +244,6 @@
 /* USB Device Firmware Update support */
 #define CONFIG_DFU_FUNCTION
 #define CONFIG_DFU_MMC
-#define CONFIG_DFU_NAND
 #define CONFIG_CMD_DFU
 #define DFU_ALT_INFO_MMC \
 	"boot part 0 1;" \
@@ -241,6 +253,8 @@
 	"u-boot.img.raw mmc 300 3C0;" \
 	"u-boot.img fat 0 1;" \
 	"uEnv.txt fat 0 1"
+#ifdef CONFIG_NAND
+#define CONFIG_DFU_NAND
 #define DFU_ALT_INFO_NAND \
 	"SPL part 0 1;" \
 	"SPL.backup1 part 0 2;" \
@@ -249,6 +263,7 @@
 	"u-boot part 0 5;" \
 	"kernel part 0 7;" \
 	"rootfs part 0 8"
+#endif
 
  /* Physical Memory Map */
 #define CONFIG_NR_DRAM_BANKS		1		/*  1 bank of DRAM */
@@ -337,9 +352,11 @@
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS	8     /* 4KB */
 
 /* nand */
+#ifdef CONFIG_NAND
 #define CONFIG_CMD_SPL_NAND_OFS			0x240000 /* end of u-boot */
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS		0x280000
 #define CONFIG_CMD_SPL_WRITE_SIZE		0x1000
+#endif
 
 /* spl export command */
 #define CONFIG_CMD_SPL
@@ -369,6 +386,8 @@
 #define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/am33xx/u-boot-spl.lds"
 
 #define CONFIG_SPL_BOARD_INIT
+
+#ifdef CONFIG_NAND
 #define CONFIG_SPL_NAND_AM33XX_BCH
 #define CONFIG_SPL_NAND_SUPPORT
 #define CONFIG_SPL_NAND_BASE
@@ -395,6 +414,7 @@
 #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
 
 #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x80000
+#endif
 
 /*
  * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM
@@ -490,7 +510,6 @@
 #define CONFIG_PHY_ADDR			0
 #define CONFIG_PHY_SMSC
 
-#define CONFIG_NAND
 /* NAND support */
 #ifdef CONFIG_NAND
 #define CONFIG_CMD_NAND
-- 
1.7.9.6

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 2/5] am335x_evm: Add am335x_boneblack variant
  2013-07-09 19:00 [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Justin Waters
  2013-07-09 19:00 ` [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular Justin Waters
@ 2013-07-09 19:00 ` Justin Waters
  2013-07-09 19:00 ` [U-Boot] [PATCH 3/5] am335x_evm: Add command line editing Justin Waters
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 19:00 UTC (permalink / raw)
  To: u-boot

The BeagleBone Black differs from the other AM335x boards in a few
significant ways, so it makes sense to create a custom configuration
for it. In particular, it uses eMMC instead of NAND flash.

We can use the eMMC boot partition to store the environment, since it
isn't used for anything else.

Signed-off-by: Justin Waters <justin.waters@timesys.com>
---
 boards.cfg                   |    1 +
 include/configs/am335x_evm.h |    7 ++++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/boards.cfg b/boards.cfg
index c0c4282..7dea9e8 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -249,6 +249,7 @@ am335x_evm_uart3             arm         armv7       am335x              ti
 am335x_evm_uart4             arm         armv7       am335x              ti             am33xx      am335x_evm:SERIAL5,CONS_INDEX=5
 am335x_evm_uart5             arm         armv7       am335x              ti             am33xx      am335x_evm:SERIAL6,CONS_INDEX=6
 am335x_evm_usbspl            arm         armv7       am335x              ti             am33xx      am335x_evm:SERIAL1,CONS_INDEX=1,SPL_USBETH_SUPPORT
+am335x_boneblack             arm         armv7       am335x              ti             am33xx      am335x_evm:SERIAL1,CONS_INDEX=1,EMMC_BOOT,NO_NAND
 ti814x_evm                   arm         armv7       ti814x              ti             am33xx
 pcm051                       arm         armv7       pcm051              phytec         am33xx      pcm051
 sama5d3xek_mmc               arm         armv7       sama5d3xek          atmel          at91        sama5d3xek:SAMA5D3,SYS_USE_MMC
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index 7bcfe2e..5947f5a 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -487,7 +487,12 @@
 # define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 # define CONFIG_ENV_OFFSET		(892 << 10) /* 892 KiB in */
 # define CONFIG_ENV_SECT_SIZE		(4 << 10) /* 4 KB sectors */
-#endif /* SPI support */
+#elif defined(CONFIG_EMMC_BOOT)
+# undef CONFIG_ENV_IS_NOWHERE
+# define CONFIG_ENV_IS_IN_MMC
+# define CONFIG_SYS_MMC_ENV_DEV		1
+# define CONFIG_SYS_MMC_ENV_PART	2
+#endif
 
 /* Unsupported features */
 #undef CONFIG_USE_IRQ
-- 
1.7.9.6

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 3/5] am335x_evm: Add command line editing
  2013-07-09 19:00 [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Justin Waters
  2013-07-09 19:00 ` [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular Justin Waters
  2013-07-09 19:00 ` [U-Boot] [PATCH 2/5] am335x_evm: Add am335x_boneblack variant Justin Waters
@ 2013-07-09 19:00 ` Justin Waters
  2013-07-09 19:00 ` [U-Boot] [PATCH 4/5] am335x_evm: Rework bootcmd to handle two MMC devs Justin Waters
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 19:00 UTC (permalink / raw)
  To: u-boot

Many modern U-Boot ports enable command line editing and
a history buffer. The am335x_evm configuration is fairly
comprehensive as it is, so a few extra kb should not be
noticable, and it adds a very convenient feature.

Signed-off-by: Justin Waters <justin.waters@timesys.com>
---
 include/configs/am335x_evm.h |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index 5947f5a..e33d0ea 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -37,6 +37,9 @@
 #define CONFIG_OF_LIBFDT
 #define CONFIG_CMD_BOOTZ
 #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */
+#define CONFIG_CMDLINE_EDITING
+#define CONFIG_STACKSIZE		(128 * 1024)
+#define CONFIG_AUTO_COMPLETE
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
 
-- 
1.7.9.6

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 4/5] am335x_evm: Rework bootcmd to handle two MMC devs
  2013-07-09 19:00 [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Justin Waters
                   ` (2 preceding siblings ...)
  2013-07-09 19:00 ` [U-Boot] [PATCH 3/5] am335x_evm: Add command line editing Justin Waters
@ 2013-07-09 19:00 ` Justin Waters
  2013-07-09 19:00 ` [U-Boot] [PATCH 5/5] Add additional MLO images to .gitignore Justin Waters
  2013-07-09 19:47 ` [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Tom Rini
  5 siblings, 0 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 19:00 UTC (permalink / raw)
  To: u-boot

The BeagleBone Black can boot from either the MMC card
or eMMC chip on board. We should try both interfaces.

This modification also allows a graceful fallback if
a device exists but boot images are not present on it.

Signed-off-by: Justin Waters <justin.waters@timesys.com>
---
 include/configs/am335x_evm.h |   42 ++++++++++++++++++++++--------------------
 1 file changed, 22 insertions(+), 20 deletions(-)

diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index e33d0ea..0e3db27 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -134,9 +134,22 @@
 	"loadramdisk=load mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \
 	"loaduimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \
 	"loadfdt=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \
-	"mmcboot=echo Booting from mmc ...; " \
-		"run mmcargs; " \
-		"bootm ${loadaddr} - ${fdtaddr}\0" \
+	"mmcboot=mmc dev ${mmcdev}; " \
+		"if mmc rescan; then " \
+			"echo SD/MMC found on device ${mmcdev};" \
+			"if run loadbootenv; then " \
+				"echo Loaded environment from ${bootenv};" \
+				"run importbootenv;" \
+			"fi;" \
+			"if test -n $uenvcmd; then " \
+				"echo Running uenvcmd ...;" \
+				"run uenvcmd;" \
+			"fi;" \
+			"if run loaduimage; then " \
+				"run mmcargs; " \
+				"bootm ${loadaddr} - ${fdtaddr};" \
+			"fi;" \
+		"fi;\0" \
 	"spiboot=echo Booting from spi ...; " \
 		"run spiargs; " \
 		"sf probe ${spibusno}:0; " \
@@ -168,23 +181,12 @@
 
 #define CONFIG_BOOTCOMMAND \
 	"run findfdt; " \
-	"mmc dev ${mmcdev}; if mmc rescan; then " \
-		"echo SD/MMC found on device ${mmcdev};" \
-		"if run loadbootenv; then " \
-			"echo Loaded environment from ${bootenv};" \
-			"run importbootenv;" \
-		"fi;" \
-		"if test -n $uenvcmd; then " \
-			"echo Running uenvcmd ...;" \
-			"run uenvcmd;" \
-		"fi;" \
-		"if run loaduimage; then " \
-			"run loadfdt;" \
-			"run mmcboot;" \
-		"fi;" \
-	"else " \
-		"run nandboot;" \
-	"fi;" \
+	"run mmcboot;" \
+	"setenv mmcdev 1; " \
+	"setenv bootpart 1:2; " \
+	"setenv mmcroot /dev/mmcblk1p2 ro; " \
+	"run mmcboot;" \
+	"run nandboot;"
 
 /* Clock Defines */
 #define V_OSCK				24000000  /* Clock output from T2 */
-- 
1.7.9.6

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 5/5] Add additional MLO images to .gitignore
  2013-07-09 19:00 [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Justin Waters
                   ` (3 preceding siblings ...)
  2013-07-09 19:00 ` [U-Boot] [PATCH 4/5] am335x_evm: Rework bootcmd to handle two MMC devs Justin Waters
@ 2013-07-09 19:00 ` Justin Waters
  2013-07-09 19:47 ` [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Tom Rini
  5 siblings, 0 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 19:00 UTC (permalink / raw)
  To: u-boot

This rule catches images such as MLO.byteswap

Signed-off-by: Justin Waters <justin.waters@timesys.com>
---
 .gitignore |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitignore b/.gitignore
index 771b860..d1282e7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -24,7 +24,7 @@
 # Top-level generic files
 #
 
-/MLO
+/MLO*
 /SPL
 /System.map
 /u-boot
-- 
1.7.9.6

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular
  2013-07-09 19:00 ` [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular Justin Waters
@ 2013-07-09 19:44   ` Tom Rini
  2013-07-09 19:48     ` Justin Waters
  2013-07-17 21:05   ` Scott Wood
  1 sibling, 1 reply; 12+ messages in thread
From: Tom Rini @ 2013-07-09 19:44 UTC (permalink / raw)
  To: u-boot

On Tue, Jul 09, 2013 at 03:00:06PM -0400, Justin Waters wrote:

> Give the user the ability to disable NAND support by defining
> CONFIG_NO_NAND. This will allow custom hardware to easily support
> this configuration.
> 
> Signed-off-by: Justin Waters <justin.waters@timesys.com>

Just make boards.cfg set NAND by default, ala the console number.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130709/f80bde75/attachment.pgp>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black
  2013-07-09 19:00 [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Justin Waters
                   ` (4 preceding siblings ...)
  2013-07-09 19:00 ` [U-Boot] [PATCH 5/5] Add additional MLO images to .gitignore Justin Waters
@ 2013-07-09 19:47 ` Tom Rini
  2013-07-09 20:18   ` Justin Waters
  5 siblings, 1 reply; 12+ messages in thread
From: Tom Rini @ 2013-07-09 19:47 UTC (permalink / raw)
  To: u-boot

On Tue, Jul 09, 2013 at 03:00:05PM -0400, Justin Waters wrote:

> There are a number of differences between the BeagleBone Black
> and other AM335x boards that require some modification of the
> default AM335x EVM configuration. In particular, it lacks NAND
> flash, has multiple MMC interfaces, and can store its environment
> in an unused eMMC partition.
> 
> The following patch set improves the out-of-box experience on the
> BeagleBone Black without impacting the existing AM335x boards.

So, I was wondering how to best handle this last week.  The problem is
that most of what you've done for BeagleBone Black also fits with
BeagleBone White and EVM SK.  Or all 3 may be best served (depending on
the use case) with env as a file on FAT.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130709/e256d989/attachment.pgp>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular
  2013-07-09 19:44   ` Tom Rini
@ 2013-07-09 19:48     ` Justin Waters
  0 siblings, 0 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 19:48 UTC (permalink / raw)
  To: u-boot

Tom,

On Tue, 2013-07-09 at 15:44 -0400, Tom Rini wrote:
> On Tue, Jul 09, 2013 at 03:00:06PM -0400, Justin Waters wrote:
> 
> > Give the user the ability to disable NAND support by defining
> > CONFIG_NO_NAND. This will allow custom hardware to easily support
> > this configuration.
> > 
> > Signed-off-by: Justin Waters <justin.waters@timesys.com>
> 
> Just make boards.cfg set NAND by default, ala the console number.

Sounds good to me. That was my original preference, but I was trying to
be as non-invasive as possible. I'll make the change now that I have the
blessing.

-Justin

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black
  2013-07-09 19:47 ` [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Tom Rini
@ 2013-07-09 20:18   ` Justin Waters
  0 siblings, 0 replies; 12+ messages in thread
From: Justin Waters @ 2013-07-09 20:18 UTC (permalink / raw)
  To: u-boot

Tom,

On Tue, 2013-07-09 at 15:47 -0400, Tom Rini wrote:
> On Tue, Jul 09, 2013 at 03:00:05PM -0400, Justin Waters wrote:
> 
> > There are a number of differences between the BeagleBone Black
> > and other AM335x boards that require some modification of the
> > default AM335x EVM configuration. In particular, it lacks NAND
> > flash, has multiple MMC interfaces, and can store its environment
> > in an unused eMMC partition.
> > 
> > The following patch set improves the out-of-box experience on the
> > BeagleBone Black without impacting the existing AM335x boards.
> 
> So, I was wondering how to best handle this last week.  The problem is
> that most of what you've done for BeagleBone Black also fits with
> BeagleBone White and EVM SK.  Or all 3 may be best served (depending on
> the use case) with env as a file on FAT.
> 

I tried to factor out the work as best I could. For instance, the Black
is the only board with eMMC (to my knowledge), so I wanted to treat that
similiarly to the SPI flash- if we have the ability to store the
environment in a read/write fashion, I'd like to take advantage of it.

The multiple SD card boot changes are generic, though- they should work
on any of the AM335x boards without any modification. So something like
the EVM will function out of the box. I have one on hand- I can give it
a try.

My personal preference is to provide different targets for each of the
flavors (evm, sk, bone, boneblack). The boards.cfg file provides a
really nice mechanism for supporting similar platforms, so I tried to
separate my changes to allow for that. Then again, I'm not the one
maintaining these boards, and there's already an EEPROM on the board for
differentiating between the different platforms, so perhaps multiple
configurations are overkill.

In any event, let me know if you have any preferences. I'm certainly
open to suggestions, and I have other AM335x platforms to test on as
well.

-Justin

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular
  2013-07-09 19:00 ` [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular Justin Waters
  2013-07-09 19:44   ` Tom Rini
@ 2013-07-17 21:05   ` Scott Wood
  2013-07-17 21:08     ` Scott Wood
  1 sibling, 1 reply; 12+ messages in thread
From: Scott Wood @ 2013-07-17 21:05 UTC (permalink / raw)
  To: u-boot

On 07/09/2013 02:00:06 PM, Justin Waters wrote:
> Give the user the ability to disable NAND support by defining
> CONFIG_NO_NAND. This will allow custom hardware to easily support
> this configuration.
> 
> Signed-off-by: Justin Waters <justin.waters@timesys.com>
> ---
>  include/configs/am335x_evm.h |   55  
> ++++++++++++++++++++++++++++--------------
>  1 file changed, 37 insertions(+), 18 deletions(-)
> 
> diff --git a/include/configs/am335x_evm.h  
> b/include/configs/am335x_evm.h
> index c5a6d4b..7bcfe2e 100644
> --- a/include/configs/am335x_evm.h
> +++ b/include/configs/am335x_evm.h
> @@ -42,12 +42,39 @@
> 
>  #define CONFIG_SYS_CACHELINE_SIZE       64
> 
> +#ifdef CONFIG_NO_NAND
> +#undef CONFIG_NAND
> +#else
> +#define CONFIG_NAND
> +#endif

Wouldn't it be cleaner to move CONFIG_NAND into boards.cfg, so if you  
want NAND to be absent, you just add a similar target that doesn't set  
it?

Especially if this is for custom hardware, which ought to get its own  
board.cfg line.

-Scott

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular
  2013-07-17 21:05   ` Scott Wood
@ 2013-07-17 21:08     ` Scott Wood
  0 siblings, 0 replies; 12+ messages in thread
From: Scott Wood @ 2013-07-17 21:08 UTC (permalink / raw)
  To: u-boot

On 07/17/2013 04:05:37 PM, Scott Wood wrote:
> On 07/09/2013 02:00:06 PM, Justin Waters wrote:
>> Give the user the ability to disable NAND support by defining
>> CONFIG_NO_NAND. This will allow custom hardware to easily support
>> this configuration.
>> 
>> Signed-off-by: Justin Waters <justin.waters@timesys.com>
>> ---
>>  include/configs/am335x_evm.h |   55  
>> ++++++++++++++++++++++++++++--------------
>>  1 file changed, 37 insertions(+), 18 deletions(-)
>> 
>> diff --git a/include/configs/am335x_evm.h  
>> b/include/configs/am335x_evm.h
>> index c5a6d4b..7bcfe2e 100644
>> --- a/include/configs/am335x_evm.h
>> +++ b/include/configs/am335x_evm.h
>> @@ -42,12 +42,39 @@
>> 
>>  #define CONFIG_SYS_CACHELINE_SIZE       64
>> 
>> +#ifdef CONFIG_NO_NAND
>> +#undef CONFIG_NAND
>> +#else
>> +#define CONFIG_NAND
>> +#endif
> 
> Wouldn't it be cleaner to move CONFIG_NAND into boards.cfg, so if you  
> want NAND to be absent, you just add a similar target that doesn't  
> set it?
> 
> Especially if this is for custom hardware, which ought to get its own  
> board.cfg line.

Sigh, as soon as I sent this my mail client decided it would be a good  
idea to show me the other replies from a couple days ago saying the  
same thing.  I need a new mail client...

-Scott

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2013-07-17 21:08 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-09 19:00 [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Justin Waters
2013-07-09 19:00 ` [U-Boot] [PATCH 1/5] am335x_evm: Make NAND support modular Justin Waters
2013-07-09 19:44   ` Tom Rini
2013-07-09 19:48     ` Justin Waters
2013-07-17 21:05   ` Scott Wood
2013-07-17 21:08     ` Scott Wood
2013-07-09 19:00 ` [U-Boot] [PATCH 2/5] am335x_evm: Add am335x_boneblack variant Justin Waters
2013-07-09 19:00 ` [U-Boot] [PATCH 3/5] am335x_evm: Add command line editing Justin Waters
2013-07-09 19:00 ` [U-Boot] [PATCH 4/5] am335x_evm: Rework bootcmd to handle two MMC devs Justin Waters
2013-07-09 19:00 ` [U-Boot] [PATCH 5/5] Add additional MLO images to .gitignore Justin Waters
2013-07-09 19:47 ` [U-Boot] [PATCH 0/5] Enhance support for BeagleBone Black Tom Rini
2013-07-09 20:18   ` Justin Waters

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox