All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults
@ 2014-02-05 16:24 Stephen Warren
  2014-02-05 16:24 ` [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts Stephen Warren
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Stephen Warren @ 2014-02-05 16:24 UTC (permalink / raw)
  To: u-boot

From: Stephen Warren <swarren@nvidia.com>

Modify all Tegra boards to include the "distro defaults" header, so that
all the config options distros expect are enabled. Remove any #defines
that enable the same options from the Tegra files.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
v4: No change.
v3: No change.
v2: No change.

Note: These patches depend on:
a) The very latest u-boot/master, in particular "config:
   add config_distro_defaults.h".
b) The very latest u-boot-tegra/next.

I suggest rebasing u-boot-tegra/next on top of u-boot/master before applying
this series.
---
 include/configs/tegra-common.h | 20 ++++----------------
 1 file changed, 4 insertions(+), 16 deletions(-)

diff --git a/include/configs/tegra-common.h b/include/configs/tegra-common.h
index 522cd4133d77..bbe417a13ec7 100644
--- a/include/configs/tegra-common.h
+++ b/include/configs/tegra-common.h
@@ -29,7 +29,6 @@
 #define CONFIG_DISPLAY_BOARDINFO
 
 #define CONFIG_CMDLINE_TAG		/* enable passing of ATAGs */
-#define CONFIG_OF_LIBFDT		/* enable passing of devicetree */
 
 /* Environment */
 #define CONFIG_ENV_VARS_UBOOT_CONFIG
@@ -69,33 +68,20 @@
 #undef CONFIG_CMD_NET		/* network support */
 
 /* turn on command-line edit/hist/auto */
-#define CONFIG_CMDLINE_EDITING
 #define CONFIG_COMMAND_HISTORY
-#define CONFIG_AUTO_COMPLETE
 
 /* turn on commonly used storage-related commands */
-
-#define CONFIG_DOS_PARTITION
-#define CONFIG_EFI_PARTITION
 #define CONFIG_PARTITION_UUIDS
-#define CONFIG_FS_EXT4
-#define CONFIG_FS_FAT
-#define CONFIG_CMD_EXT2
-#define CONFIG_CMD_FAT
-#define CONFIG_CMD_FS_GENERIC
 #define CONFIG_CMD_PART
 
 #define CONFIG_SYS_NO_FLASH
 
 #define CONFIG_CONSOLE_MUX
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
-#define CONFIG_BOOTDELAY	2		/* -1 to disable auto boot */
 
 /*
  * Miscellaneous configurable options
  */
-#define CONFIG_SYS_LONGHELP		/* undef to save memory */
-#define CONFIG_SYS_HUSH_PARSER		/* use "hush" command parser */
 #define CONFIG_SYS_PROMPT		V_PROMPT
 /*
  * Increasing the size of the IO buffer as default nfsargs size is more
@@ -133,8 +119,6 @@
 #define CONFIG_TEGRA_GPIO
 #define CONFIG_CMD_GPIO
 #define CONFIG_CMD_ENTERRCM
-#define CONFIG_CMD_BOOTZ
-#define CONFIG_SUPPORT_RAW_INITRD
 
 /* Defines for SPL */
 #define CONFIG_SPL
@@ -157,4 +141,8 @@
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_CRC32_VERIFY
 
+#ifndef CONFIG_SPL_BUILD
+#include <config_distro_defaults.h>
+#endif
+
 #endif /* _TEGRA_COMMON_H_ */
-- 
1.8.1.5

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

* [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts
  2014-02-05 16:24 [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults Stephen Warren
@ 2014-02-05 16:24 ` Stephen Warren
  2014-02-13 11:13   ` Dennis Gilmore
  2014-02-05 16:24 ` [U-Boot] [PATCH V4 3/3] ARM: tegra: implement bootcmd_pxe Stephen Warren
  2014-02-27 17:22 ` [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults Stephen Warren
  2 siblings, 1 reply; 8+ messages in thread
From: Stephen Warren @ 2014-02-05 16:24 UTC (permalink / raw)
  To: u-boot

From: Stephen Warren <swarren@nvidia.com>

Update the common Tegra boot scripts in the default environment to

a) Make use of the new "test -e" shell command to avoid some error
   messages.

b) Allow booting using the sysboot command and extlinux.conf. This
   allows easy creation of boot menus, and provides a simple interface
   for distros to parameterize/configure the boot process.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
v4:
* Prioritize extlinux.conf over boot.scr.uimg when searching; it makes
  sense to use the cross-distro/-bootloader (hopeful) standard first.
* Replace ; in the middle of echo'd text in boot scripts.
* Add missing space between commands in boot scripts.
* s/exists/test -e/ in commmit description.
v3: s/exists/test -e/ in shell commands.
v2: No change.
---
 include/configs/tegra-common-post.h | 39 ++++++++++++++++++++++++++++---------
 1 file changed, 30 insertions(+), 9 deletions(-)

diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h
index e1a3bbc62636..3bf55ce428f2 100644
--- a/include/configs/tegra-common-post.h
+++ b/include/configs/tegra-common-post.h
@@ -69,20 +69,41 @@
 #define BOOTCMDS_COMMON \
 	"rootpart=1\0" \
 	\
+	"do_script_boot="                                                 \
+		"load ${devtype} ${devnum}:${rootpart} "                  \
+			"${scriptaddr} ${prefix}${script}; "              \
+		"source ${scriptaddr}\0"                                  \
+	\
 	"script_boot="                                                    \
-		"if load ${devtype} ${devnum}:${rootpart} "               \
-				"${scriptaddr} ${prefix}${script}; then " \
-			"echo ${script} found! Executing ...;"            \
-			"source ${scriptaddr};"                           \
-		"fi;\0"                                                   \
+		"for script in ${boot_scripts}; do "                      \
+			"if test -e ${devtype} ${devnum}:${rootpart} "    \
+					"${prefix}${script}; then "       \
+				"echo Found U-Boot script "               \
+					"${prefix}${script}; "            \
+				"run do_script_boot; "                    \
+				"echo SCRIPT FAILED: continuing...; "     \
+			"fi; "                                            \
+		"done\0"                                                  \
+	\
+	"do_sysboot_boot="                                                \
+		"sysboot ${devtype} ${devnum}:${rootpart} any "           \
+			"${scriptaddr} ${prefix}extlinux.conf\0"          \
+	\
+	"sysboot_boot="                                                   \
+		"if test -e ${devtype} ${devnum}:${rootpart} "            \
+				"${prefix}extlinux.conf; then "           \
+			"echo Found extlinux config "                     \
+				"${prefix}extlinux.conf; "                \
+			"run do_sysboot_boot; "                           \
+			"echo SCRIPT FAILED: continuing...; "             \
+		"fi\0"                                                    \
 	\
 	"scan_boot="                                                      \
 		"echo Scanning ${devtype} ${devnum}...; "                 \
 		"for prefix in ${boot_prefixes}; do "                     \
-			"for script in ${boot_scripts}; do "              \
-				"run script_boot; "                       \
-			"done; "                                          \
-		"done;\0"                                                 \
+			"run sysboot_boot; "                              \
+			"run script_boot; "                               \
+		"done\0"                                                  \
 	\
 	"boot_targets=" \
 		BOOT_TARGETS_MMC " " \
-- 
1.8.1.5

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

* [U-Boot] [PATCH V4 3/3] ARM: tegra: implement bootcmd_pxe
  2014-02-05 16:24 [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults Stephen Warren
  2014-02-05 16:24 ` [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts Stephen Warren
@ 2014-02-05 16:24 ` Stephen Warren
  2014-02-27 17:22 ` [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults Stephen Warren
  2 siblings, 0 replies; 8+ messages in thread
From: Stephen Warren @ 2014-02-05 16:24 UTC (permalink / raw)
  To: u-boot

From: Stephen Warren <swarren@nvidia.com>

This retrieves a PXE config file over the network, and executes it. This
allows an extlinux config file  to be retrieved over the network and
executed, whereas the existing bootcmd_dhcp retrieves a U-Boot script.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
v4: No change.
v3: No change.
v2: No change.
---
 include/configs/tegra-common-post.h | 18 +++++++++++++++++-
 include/configs/tegra114-common.h   |  4 ++++
 include/configs/tegra20-common.h    |  4 ++++
 include/configs/tegra30-common.h    |  4 ++++
 4 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h
index 3bf55ce428f2..76dad4e88cd9 100644
--- a/include/configs/tegra-common-post.h
+++ b/include/configs/tegra-common-post.h
@@ -66,6 +66,20 @@
 #define BOOT_TARGETS_DHCP ""
 #endif
 
+#if defined(CONFIG_CMD_DHCP) && defined(CONFIG_CMD_PXE)
+#define BOOTCMDS_PXE \
+	"bootcmd_pxe=" \
+		BOOTCMD_INIT_USB \
+		"dhcp; " \
+		"if pxe get; then " \
+			"pxe boot; " \
+		"fi\0"
+#define BOOT_TARGETS_PXE "pxe"
+#else
+#define BOOTCMDS_PXE ""
+#define BOOT_TARGETS_PXE ""
+#endif
+
 #define BOOTCMDS_COMMON \
 	"rootpart=1\0" \
 	\
@@ -108,6 +122,7 @@
 	"boot_targets=" \
 		BOOT_TARGETS_MMC " " \
 		BOOT_TARGETS_USB " " \
+		BOOT_TARGETS_PXE " " \
 		BOOT_TARGETS_DHCP " " \
 		"\0" \
 	\
@@ -117,7 +132,8 @@
 	\
 	BOOTCMDS_MMC \
 	BOOTCMDS_USB \
-	BOOTCMDS_DHCP
+	BOOTCMDS_DHCP \
+	BOOTCMDS_PXE
 
 #define CONFIG_BOOTCOMMAND \
 	"set usb_need_init; " \
diff --git a/include/configs/tegra114-common.h b/include/configs/tegra114-common.h
index 1bf5af5b3830..bff5447fe421 100644
--- a/include/configs/tegra114-common.h
+++ b/include/configs/tegra114-common.h
@@ -46,6 +46,9 @@
  * scriptaddr can be pretty much anywhere that doesn't conflict with something
  *   else. Put it above BOOTMAPSZ to eliminate conflicts.
  *
+ * pxefile_addr_r can be pretty much anywhere that doesn't conflict with
+ *   something else. Put it above BOOTMAPSZ to eliminate conflicts.
+ *
  * kernel_addr_r must be within the first 128M of RAM in order for the
  *   kernel's CONFIG_AUTO_ZRELADDR option to work. Since the kernel will
  *   decompress itself to 0x8000 after the start of RAM, kernel_addr_r
@@ -63,6 +66,7 @@
  */
 #define MEM_LAYOUT_ENV_SETTINGS \
 	"scriptaddr=0x90000000\0" \
+	"pxefile_addr_r=0x90100000\0" \
 	"kernel_addr_r=0x81000000\0" \
 	"fdt_addr_r=0x82000000\0" \
 	"ramdisk_addr_r=0x82100000\0"
diff --git a/include/configs/tegra20-common.h b/include/configs/tegra20-common.h
index d2c45321b46a..933130a405da 100644
--- a/include/configs/tegra20-common.h
+++ b/include/configs/tegra20-common.h
@@ -44,6 +44,9 @@
  * scriptaddr can be pretty much anywhere that doesn't conflict with something
  *   else. Put it above BOOTMAPSZ to eliminate conflicts.
  *
+ * pxefile_addr_r can be pretty much anywhere that doesn't conflict with
+ *   something else. Put it above BOOTMAPSZ to eliminate conflicts.
+ *
  * kernel_addr_r must be within the first 128M of RAM in order for the
  *   kernel's CONFIG_AUTO_ZRELADDR option to work. Since the kernel will
  *   decompress itself to 0x8000 after the start of RAM, kernel_addr_r
@@ -61,6 +64,7 @@
  */
 #define MEM_LAYOUT_ENV_SETTINGS \
 	"scriptaddr=0x10000000\0" \
+	"pxefile_addr_r=0x10100000\0" \
 	"kernel_addr_r=0x01000000\0" \
 	"fdt_addr_r=0x02000000\0" \
 	"ramdisk_addr_r=0x02100000\0"
diff --git a/include/configs/tegra30-common.h b/include/configs/tegra30-common.h
index edb930e032bc..4b6f8d128e63 100644
--- a/include/configs/tegra30-common.h
+++ b/include/configs/tegra30-common.h
@@ -43,6 +43,9 @@
  * scriptaddr can be pretty much anywhere that doesn't conflict with something
  *   else. Put it above BOOTMAPSZ to eliminate conflicts.
  *
+ * pxefile_addr_r can be pretty much anywhere that doesn't conflict with
+ *   something else. Put it above BOOTMAPSZ to eliminate conflicts.
+ *
  * kernel_addr_r must be within the first 128M of RAM in order for the
  *   kernel's CONFIG_AUTO_ZRELADDR option to work. Since the kernel will
  *   decompress itself to 0x8000 after the start of RAM, kernel_addr_r
@@ -60,6 +63,7 @@
  */
 #define MEM_LAYOUT_ENV_SETTINGS \
 	"scriptaddr=0x90000000\0" \
+	"pxefile_addr_r=0x90100000\0" \
 	"kernel_addr_r=0x81000000\0" \
 	"fdt_addr_r=0x82000000\0" \
 	"ramdisk_addr_r=0x82100000\0"
-- 
1.8.1.5

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

* [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts
  2014-02-05 16:24 ` [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts Stephen Warren
@ 2014-02-13 11:13   ` Dennis Gilmore
  2014-02-13 16:39     ` Stephen Warren
  0 siblings, 1 reply; 8+ messages in thread
From: Dennis Gilmore @ 2014-02-13 11:13 UTC (permalink / raw)
  To: u-boot

Hi Stephen,

I noticed one issue

On Wed,  5 Feb 2014 09:24:58 -0700
Stephen Warren <swarren@wwwdotorg.org> wrote:

> From: Stephen Warren <swarren@nvidia.com>
> 
> Update the common Tegra boot scripts in the default environment to
> 
> a) Make use of the new "test -e" shell command to avoid some error
>    messages.
> 
> b) Allow booting using the sysboot command and extlinux.conf. This
>    allows easy creation of boot menus, and provides a simple interface
>    for distros to parameterize/configure the boot process.
> 
> Signed-off-by: Stephen Warren <swarren@nvidia.com>
> ---
> v4:
> * Prioritize extlinux.conf over boot.scr.uimg when searching; it makes
>   sense to use the cross-distro/-bootloader (hopeful) standard first.
> * Replace ; in the middle of echo'd text in boot scripts.
> * Add missing space between commands in boot scripts.
> * s/exists/test -e/ in commmit description.
> v3: s/exists/test -e/ in shell commands.
> v2: No change.
> ---
>  include/configs/tegra-common-post.h | 39
> ++++++++++++++++++++++++++++--------- 1 file changed, 30
> insertions(+), 9 deletions(-)
> 
> diff --git a/include/configs/tegra-common-post.h
> b/include/configs/tegra-common-post.h index
> e1a3bbc62636..3bf55ce428f2 100644 ---
> a/include/configs/tegra-common-post.h +++
> b/include/configs/tegra-common-post.h @@ -69,20 +69,41 @@
>  #define BOOTCMDS_COMMON \
>  	"rootpart=1\0" \
>  	\
> +	"do_script_boot="
> \
> +		"load ${devtype} ${devnum}:${rootpart}
> "                  \
> +			"${scriptaddr} ${prefix}${script};
> "              \
> +		"source
> ${scriptaddr}\0"                                  \
> +	\
>  	"script_boot="
> \
> -		"if load ${devtype} ${devnum}:${rootpart}
> "               \
> -				"${scriptaddr} ${prefix}${script};
> then " \
> -			"echo ${script} found!
> Executing ...;"            \
> -			"source
> ${scriptaddr};"                           \
> -		"fi;\0"
> \
> +		"for script in ${boot_scripts}; do
> "                      \
> +			"if test -e ${devtype} ${devnum}:${rootpart}
> "    \
> +					"${prefix}${script}; then
> "       \
> +				"echo Found U-Boot script
> "               \
> +					"${prefix}${script};
> "            \
> +				"run do_script_boot;
> "                    \
> +				"echo SCRIPT FAILED: continuing...;
> "     \
> +			"fi;
> "                                            \
> +		"done\0"
> \
> +	\
> +	"do_sysboot_boot="
> \
> +		"sysboot ${devtype} ${devnum}:${rootpart} any
> "           \
> +			"${scriptaddr}
> ${prefix}extlinux.conf\0"          \

extlinux config files are placed into an extlinux directory
you will need to use ${prefix}extlinux/extlinux.conf

> +	\
> +	"sysboot_boot="
> \
> +		"if test -e ${devtype} ${devnum}:${rootpart}
> "            \
> +				"${prefix}extlinux.conf; then
> "           \
> +			"echo Found extlinux config
> "                     \
> +				"${prefix}extlinux.conf;
> "                \
> +			"run do_sysboot_boot;
> "                           \
> +			"echo SCRIPT FAILED: continuing...;
> "             \
> +		"fi\0"
> \ \
>  	"scan_boot="
> \ "echo Scanning ${devtype} ${devnum}...; "                 \
>  		"for prefix in ${boot_prefixes}; do
> "                     \
> -			"for script in ${boot_scripts}; do
> "              \
> -				"run script_boot;
> "                       \
> -			"done;
> "                                          \
> -		"done;\0"
> \
> +			"run sysboot_boot;
> "                              \
> +			"run script_boot;
> "                               \
> +		"done\0"
> \ \
>  	"boot_targets=" \
>  		BOOT_TARGETS_MMC " " \

Dennis

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

* [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts
  2014-02-13 11:13   ` Dennis Gilmore
@ 2014-02-13 16:39     ` Stephen Warren
  2014-02-13 17:16       ` Dennis Gilmore
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Warren @ 2014-02-13 16:39 UTC (permalink / raw)
  To: u-boot

On 02/13/2014 04:13 AM, Dennis Gilmore wrote:
> Hi Stephen,
> 
> I noticed one issue
> 
> On Wed,  5 Feb 2014 09:24:58 -0700
> Stephen Warren <swarren@wwwdotorg.org> wrote:
> 
>> From: Stephen Warren <swarren@nvidia.com>
>>
>> Update the common Tegra boot scripts in the default environment to
>>
>> a) Make use of the new "test -e" shell command to avoid some error
>>    messages.
>>
>> b) Allow booting using the sysboot command and extlinux.conf. This
>>    allows easy creation of boot menus, and provides a simple interface
>>    for distros to parameterize/configure the boot process.

>> diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h index

>> +	"do_sysboot_boot="
>> \
>> +		"sysboot ${devtype} ${devnum}:${rootpart} any
>> "           \
>> +			"${scriptaddr}
>> ${prefix}extlinux.conf\0"          \
> 
> extlinux config files are placed into an extlinux directory
> you will need to use ${prefix}extlinux/extlinux.conf

What places them there? The spec doesn't say anything about placement of
this file. Since this is a new feature, I don't think there's any
de-facto standard, is there? I'd prefer that the files be placed in the
same location as any other boot file, to avoid pointless extra directory
levels (i.e. / for a partition that's mounted as /boot, or in /boot for
a partition that's mounted as /).

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

* [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts
  2014-02-13 16:39     ` Stephen Warren
@ 2014-02-13 17:16       ` Dennis Gilmore
  2014-02-14  0:32         ` Stephen Warren
  0 siblings, 1 reply; 8+ messages in thread
From: Dennis Gilmore @ 2014-02-13 17:16 UTC (permalink / raw)
  To: u-boot

On Thu, 13 Feb 2014 09:39:41 -0700
Stephen Warren <swarren@wwwdotorg.org> wrote:

> On 02/13/2014 04:13 AM, Dennis Gilmore wrote:
> > Hi Stephen,
> > 
> > I noticed one issue
> > 
> > On Wed,  5 Feb 2014 09:24:58 -0700
> > Stephen Warren <swarren@wwwdotorg.org> wrote:
> > 
> >> From: Stephen Warren <swarren@nvidia.com>
> >>
> >> Update the common Tegra boot scripts in the default environment to
> >>
> >> a) Make use of the new "test -e" shell command to avoid some error
> >>    messages.
> >>
> >> b) Allow booting using the sysboot command and extlinux.conf. This
> >>    allows easy creation of boot menus, and provides a simple
> >> interface for distros to parameterize/configure the boot process.
> 
> >> diff --git a/include/configs/tegra-common-post.h
> >> b/include/configs/tegra-common-post.h index
> 
> >> +	"do_sysboot_boot="
> >> \
> >> +		"sysboot ${devtype} ${devnum}:${rootpart} any
> >> "           \
> >> +			"${scriptaddr}
> >> ${prefix}extlinux.conf\0"          \
> > 
> > extlinux config files are placed into an extlinux directory
> > you will need to use ${prefix}extlinux/extlinux.conf
> 
> What places them there? The spec doesn't say anything about placement
> of this file. Since this is a new feature, I don't think there's any
> de-facto standard, is there? I'd prefer that the files be placed in
> the same location as any other boot file, to avoid pointless extra
> directory levels (i.e. / for a partition that's mounted as /boot, or
> in /boot for a partition that's mounted as /).


http://www.syslinux.org/wiki/index.php/EXTLINUX

anaconda and the image creation tools both use /boot/extlinux
according to http://shallowsky.com/linux/extlinux.html debian also uses
it

extlinux is not bootloaderspec.   bootloaderspec does say where to put
them:

Inside the $BOOT/loader/entries/ directory each OS vendor may drop one
or more configuration snippets with the suffix ".conf", one for each
boot menu item. The file name of the file is used for identification of
the boot item, but shall never be presented to the user in the UI. The
file name may be chosen freely but should be unique enough to avoid
clashes between OS installations. More specifically it is suggested to
include the machine ID (/etc/machine-id or the D-Bus machine ID for
OSes that lack /etc/machine-id), the kernel version (as returned by
uname -r) and an OS identifier (The ID field of /etc/os-release).
Example:
$BOOT/loader/entries/6a9857a393724b7a981ebb5b8495b9ea-3.8.0-2.fc19.x86_64.conf

to implement bootloader spec fully u-boot will need to find all
the .conf snippets in the loader/entries/ directory and load them up
and show the menu. 


It just happens that bootloaderspec uses the same format used by
extlinux for its snippets

Dennis

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

* [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts
  2014-02-13 17:16       ` Dennis Gilmore
@ 2014-02-14  0:32         ` Stephen Warren
  0 siblings, 0 replies; 8+ messages in thread
From: Stephen Warren @ 2014-02-14  0:32 UTC (permalink / raw)
  To: u-boot

On 02/13/2014 10:16 AM, Dennis Gilmore wrote:
> On Thu, 13 Feb 2014 09:39:41 -0700
> Stephen Warren <swarren@wwwdotorg.org> wrote:
> 
>> On 02/13/2014 04:13 AM, Dennis Gilmore wrote:
>>> Hi Stephen,
>>>
>>> I noticed one issue
>>>
>>> On Wed,  5 Feb 2014 09:24:58 -0700
>>> Stephen Warren <swarren@wwwdotorg.org> wrote:
>>>
>>>> From: Stephen Warren <swarren@nvidia.com>
>>>>
>>>> Update the common Tegra boot scripts in the default environment to
>>>>
>>>> a) Make use of the new "test -e" shell command to avoid some error
>>>>    messages.
>>>>
>>>> b) Allow booting using the sysboot command and extlinux.conf. This
>>>>    allows easy creation of boot menus, and provides a simple
>>>> interface for distros to parameterize/configure the boot process.
>>
>>>> diff --git a/include/configs/tegra-common-post.h
>>>> b/include/configs/tegra-common-post.h index
>>
>>>> +	"do_sysboot_boot="
>>>> \
>>>> +		"sysboot ${devtype} ${devnum}:${rootpart} any
>>>> "           \
>>>> +			"${scriptaddr}
>>>> ${prefix}extlinux.conf\0"          \
>>>
>>> extlinux config files are placed into an extlinux directory
>>> you will need to use ${prefix}extlinux/extlinux.conf
>>
>> What places them there? The spec doesn't say anything about placement
>> of this file. Since this is a new feature, I don't think there's any
>> de-facto standard, is there? I'd prefer that the files be placed in
>> the same location as any other boot file, to avoid pointless extra
>> directory levels (i.e. / for a partition that's mounted as /boot, or
>> in /boot for a partition that's mounted as /).
> 
> 
> http://www.syslinux.org/wiki/index.php/EXTLINUX
> 
> anaconda and the image creation tools both use /boot/extlinux
> according to http://shallowsky.com/linux/extlinux.html debian also uses
> it

OK. I wasn't aware that people were using these config files for
anything yet; I thought it was something new being rolled out to get
bootloader-agnostic boot config on ARM, and assumed that non-ARM was
still using e.g. grub etc.

Neither of those links specify that the extlinux.conf file has to be
named (/boot)/extlinux/extlinux.conf. The first link simply specifies
that it's possible to put the file in such a sub-directory, and the
second that Debian just happens to do so.

Still, in the interests of conforming to the de-facto standard, I'll
repost the Tegra and bcm2835 boot script patches to adjust to that.

> extlinux is not bootloaderspec.   bootloaderspec does say where to put
> them:
> 
> Inside the $BOOT/loader/entries/ directory each OS vendor may drop one
> ...

Ah right. I'd meant to say that bootloaderspec doesn't say anything
about an "extlinux/" directory, not to say that it didn't say anything
about where to put the files.

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

* [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults
  2014-02-05 16:24 [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults Stephen Warren
  2014-02-05 16:24 ` [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts Stephen Warren
  2014-02-05 16:24 ` [U-Boot] [PATCH V4 3/3] ARM: tegra: implement bootcmd_pxe Stephen Warren
@ 2014-02-27 17:22 ` Stephen Warren
  2 siblings, 0 replies; 8+ messages in thread
From: Stephen Warren @ 2014-02-27 17:22 UTC (permalink / raw)
  To: u-boot

On 02/05/2014 09:24 AM, Stephen Warren wrote:
> From: Stephen Warren <swarren@nvidia.com>
> 
> Modify all Tegra boards to include the "distro defaults" header, so that
> all the config options distros expect are enabled. Remove any #defines
> that enable the same options from the Tegra files.

Tom, does this series look good? I'd really like to get it into 2014.04
so that Tegra can demonstrate the use of extlinux.conf boot scripts.
Note that I posted an updated patch 2/3 V5. Thanks.

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

end of thread, other threads:[~2014-02-27 17:22 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-05 16:24 [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults Stephen Warren
2014-02-05 16:24 ` [U-Boot] [PATCH V4 2/3] ARM: tegra: rework boot scripts Stephen Warren
2014-02-13 11:13   ` Dennis Gilmore
2014-02-13 16:39     ` Stephen Warren
2014-02-13 17:16       ` Dennis Gilmore
2014-02-14  0:32         ` Stephen Warren
2014-02-05 16:24 ` [U-Boot] [PATCH V4 3/3] ARM: tegra: implement bootcmd_pxe Stephen Warren
2014-02-27 17:22 ` [U-Boot] [PATCH V4 1/3] ARM: tegra: convert tegra to use distro defaults Stephen Warren

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.