diff mbox series

[U-Boot,3/3] mx6sxsabresd: Use PARTUUID to specify the rootfs location

Message ID 1511356528-8005-3-git-send-email-festevam@gmail.com
State Accepted
Commit f086812acd3f8dad365ab328e426178ca36a8408
Delegated to: Stefano Babic
Headers show
Series [U-Boot,1/3] imx: Add a common way for detecting NXP boards revision | expand

Commit Message

Fabio Estevam Nov. 22, 2017, 1:15 p.m. UTC
From: Fabio Estevam <fabio.estevam@nxp.com>

mx6sxsabresd can run different kernel versions, such as NXP 4.1 or mainline.
    
Currently the rootfs location is passed via mmcblk number and the
problem with this approach is that the mmcblk number for the SD
card changes depending on the kernel version.
    
In order to avoid such issue, use the UUID method to specify the
rootfs location.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
---
 configs/mx6sxsabresd_defconfig | 1 +
 include/configs/mx6sxsabresd.h | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)

Comments

Stefano Babic Nov. 22, 2017, 2:01 p.m. UTC | #1
On 22/11/2017 14:15, Fabio Estevam wrote:
> From: Fabio Estevam <fabio.estevam@nxp.com>
> 
> mx6sxsabresd can run different kernel versions, such as NXP 4.1 or mainline.
>     
> Currently the rootfs location is passed via mmcblk number and the
> problem with this approach is that the mmcblk number for the SD
> card changes depending on the kernel version.
>     
> In order to avoid such issue, use the UUID method to specify the
> rootfs location.
> 
> Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
> ---
>  configs/mx6sxsabresd_defconfig | 1 +
>  include/configs/mx6sxsabresd.h | 5 +++--
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/configs/mx6sxsabresd_defconfig b/configs/mx6sxsabresd_defconfig
> index ac36a18..b707322 100644
> --- a/configs/mx6sxsabresd_defconfig
> +++ b/configs/mx6sxsabresd_defconfig
> @@ -12,6 +12,7 @@ CONFIG_CMD_BOOTZ=y
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_I2C=y
>  CONFIG_CMD_MMC=y
> +CONFIG_CMD_PART=y
>  CONFIG_CMD_PCI=y
>  CONFIG_CMD_USB=y
>  # CONFIG_CMD_SETEXPR is not set
> diff --git a/include/configs/mx6sxsabresd.h b/include/configs/mx6sxsabresd.h
> index 85b8601..906e677 100644
> --- a/include/configs/mx6sxsabresd.h
> +++ b/include/configs/mx6sxsabresd.h
> @@ -58,9 +58,9 @@
>  	"videomode=video=ctfb:x:800,y:480,depth:24,pclk:29850,le:89,ri:164,up:23,lo:10,hs:10,vs:10,sync:0,vmode:0\0" \
>  	"mmcdev=2\0" \
>  	"mmcpart=1\0" \
> -	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
> +	"finduuid=part uuid mmc 2:2 uuid\0" \
>  	"mmcargs=setenv bootargs console=${console},${baudrate} " \
> -		"root=${mmcroot}\0" \
> +		"root=PARTUUID=${uuid} rootwait rw\0" \
>  	"loadbootscript=" \
>  		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
>  	"bootscript=echo Running bootscript from mmc ...; " \
> @@ -68,6 +68,7 @@
>  	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
>  	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
>  	"mmcboot=echo Booting from mmc ...; " \
> +		"run finduuid; " \
>  		"run mmcargs; " \
>  		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
>  			"if run loadfdt; then " \
> 

Reviewed-by: Stefano Babic <sbabic@denx.de>

Best regards,
Stefano
Lukasz Majewski Nov. 23, 2017, 9:08 a.m. UTC | #2
Hi Fabio,

> From: Fabio Estevam <fabio.estevam@nxp.com>
> 
> mx6sxsabresd can run different kernel versions, such as NXP 4.1 or
> mainline. 
> Currently the rootfs location is passed via mmcblk number and the
> problem with this approach is that the mmcblk number for the SD
> card changes depending on the kernel version.
>     
> In order to avoid such issue, use the UUID method to specify the
> rootfs location.
> 
> Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
> ---
>  configs/mx6sxsabresd_defconfig | 1 +
>  include/configs/mx6sxsabresd.h | 5 +++--
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/configs/mx6sxsabresd_defconfig
> b/configs/mx6sxsabresd_defconfig index ac36a18..b707322 100644
> --- a/configs/mx6sxsabresd_defconfig
> +++ b/configs/mx6sxsabresd_defconfig
> @@ -12,6 +12,7 @@ CONFIG_CMD_BOOTZ=y
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_I2C=y
>  CONFIG_CMD_MMC=y
> +CONFIG_CMD_PART=y
>  CONFIG_CMD_PCI=y
>  CONFIG_CMD_USB=y
>  # CONFIG_CMD_SETEXPR is not set
> diff --git a/include/configs/mx6sxsabresd.h
> b/include/configs/mx6sxsabresd.h index 85b8601..906e677 100644
> --- a/include/configs/mx6sxsabresd.h
> +++ b/include/configs/mx6sxsabresd.h
> @@ -58,9 +58,9 @@
>  	"videomode=video=ctfb:x:800,y:480,depth:24,pclk:29850,le:89,ri:164,up:23,lo:10,hs:10,vs:10,sync:0,vmode:0\0"
> \ "mmcdev=2\0" \
>  	"mmcpart=1\0" \
> -	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
> +	"finduuid=part uuid mmc 2:2 uuid\0" \
>  	"mmcargs=setenv bootargs console=${console},${baudrate} " \
> -		"root=${mmcroot}\0" \
> +		"root=PARTUUID=${uuid} rootwait rw\0" \
>  	"loadbootscript=" \
>  		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr}
> ${script};\0" \ "bootscript=echo Running bootscript from mmc ...; " \
> @@ -68,6 +68,7 @@
>  	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr}
> ${image}\0" \ "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr}
> ${fdt_file}\0" \ "mmcboot=echo Booting from mmc ...; " \
> +		"run finduuid; " \
>  		"run mmcargs; " \
>  		"if test ${boot_fdt} = yes || test ${boot_fdt} =
> try; then " \ "if run loadfdt; then " \

Reviewed-by: Lukasz Majewski <lukma@denx.de>

Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
diff mbox series

Patch

diff --git a/configs/mx6sxsabresd_defconfig b/configs/mx6sxsabresd_defconfig
index ac36a18..b707322 100644
--- a/configs/mx6sxsabresd_defconfig
+++ b/configs/mx6sxsabresd_defconfig
@@ -12,6 +12,7 @@  CONFIG_CMD_BOOTZ=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_I2C=y
 CONFIG_CMD_MMC=y
+CONFIG_CMD_PART=y
 CONFIG_CMD_PCI=y
 CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
diff --git a/include/configs/mx6sxsabresd.h b/include/configs/mx6sxsabresd.h
index 85b8601..906e677 100644
--- a/include/configs/mx6sxsabresd.h
+++ b/include/configs/mx6sxsabresd.h
@@ -58,9 +58,9 @@ 
 	"videomode=video=ctfb:x:800,y:480,depth:24,pclk:29850,le:89,ri:164,up:23,lo:10,hs:10,vs:10,sync:0,vmode:0\0" \
 	"mmcdev=2\0" \
 	"mmcpart=1\0" \
-	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
+	"finduuid=part uuid mmc 2:2 uuid\0" \
 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
-		"root=${mmcroot}\0" \
+		"root=PARTUUID=${uuid} rootwait rw\0" \
 	"loadbootscript=" \
 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
 	"bootscript=echo Running bootscript from mmc ...; " \
@@ -68,6 +68,7 @@ 
 	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
 	"mmcboot=echo Booting from mmc ...; " \
+		"run finduuid; " \
 		"run mmcargs; " \
 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
 			"if run loadfdt; then " \