public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] [UBI] Set default UBI partition name at configuration
@ 2008-11-26  0:52 Kyungmin Park
  2008-11-26  8:47 ` Stefan Roese
  0 siblings, 1 reply; 2+ messages in thread
From: Kyungmin Park @ 2008-11-26  0:52 UTC (permalink / raw)
  To: u-boot

As usually fixed partition used for UBI.
So it's defined at configuration and use it.

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
---
diff --git a/common/cmd_ubi.c b/common/cmd_ubi.c
index 8446765..d018dc1 100644
--- a/common/cmd_ubi.c
+++ b/common/cmd_ubi.c
@@ -40,7 +40,11 @@ struct selected_dev {
 	struct mtd_info *mtd_info;
 };
 
-static struct selected_dev ubi_dev;
+static struct selected_dev ubi_dev = {
+#ifdef CONFIG_UBI_PART_NAME
+	.part_name	= CONFIG_UBI_PART_NAME,
+#endif
+};
 
 static void ubi_dump_vol_info(const struct ubi_volume *vol)
 {
@@ -455,11 +459,6 @@ static int do_ubi(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
 			return 0;
 		}
 
-		if (argc < 4) {
-			printf("Usage:\n%s\n", cmdtp->usage);
-			return 1;
-		}
-
 		/* todo: get dev number for NAND... */
 		ubi_dev.nr = 0;
 
@@ -481,7 +480,7 @@ static int do_ubi(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
 		}
 #endif
 #if defined(CONFIG_CMD_ONENAND)
-		if (strcmp(argv[2], "onenand") == 0) {
+		if (strcmp(argv[2], "onenand") == 0 || ubi_dev.part_name) {
 			strcpy(ubi_dev.dev_name, "OneNAND");
 			ubi_dev.type = DEV_TYPE_ONENAND;
 			ubi_dev.mtd_info = &onenand_mtd;
@@ -493,7 +492,12 @@ static int do_ubi(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
 			return 1;
 		}
 
-		strcpy(ubi_dev.part_name, argv[3]);
+		if (argv[3])
+			strcpy(ubi_dev.part_name, argv[3]);
+		if (strcmp(ubi_dev.part_name, "") == 0) {
+			printf("Please give part name\n");
+			return 1;
+		}
 		err = ubi_dev_scan(ubi_dev.mtd_info, ubi_dev.part_name);
 		if (err) {
 			printf("UBI init error %d\n", err);
diff --git a/include/configs/apollon.h b/include/configs/apollon.h
index dff47fc..a29d739 100644
--- a/include/configs/apollon.h
+++ b/include/configs/apollon.h
@@ -259,13 +259,14 @@
 
 #ifdef CONFIG_SYS_USE_UBI
 #define CONFIG_JFFS2_CMDLINE
+#define CONFIG_UBI_PART_NAME	"UBI"
 #define MTDIDS_DEFAULT		"onenand0=onenand"
 #define MTDPARTS_DEFAULT	"mtdparts=onenand:128k(bootloader),"	\
 					"128k(params),"			\
 					"2m(kernel),"			\
 					"16m(rootfs),"			\
 					"32m(fs),"			\
-					"-(ubifs)"
+					"-(UBI)"
 #endif
 
 #endif /* __CONFIG_H */

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

* [U-Boot] [PATCH] [UBI] Set default UBI partition name at configuration
  2008-11-26  0:52 [U-Boot] [PATCH] [UBI] Set default UBI partition name at configuration Kyungmin Park
@ 2008-11-26  8:47 ` Stefan Roese
  0 siblings, 0 replies; 2+ messages in thread
From: Stefan Roese @ 2008-11-26  8:47 UTC (permalink / raw)
  To: u-boot

On Wednesday 26 November 2008, Kyungmin Park wrote:
> As usually fixed partition used for UBI.
> So it's defined at configuration and use it.
>
> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>

Please find a few comment below.

> diff --git a/common/cmd_ubi.c b/common/cmd_ubi.c
> index 8446765..d018dc1 100644
> --- a/common/cmd_ubi.c
> +++ b/common/cmd_ubi.c
> @@ -40,7 +40,11 @@ struct selected_dev {
>  	struct mtd_info *mtd_info;
>  };
>
> -static struct selected_dev ubi_dev;
> +static struct selected_dev ubi_dev = {
> +#ifdef CONFIG_UBI_PART_NAME
> +	.part_name	= CONFIG_UBI_PART_NAME,
> +#endif
> +};
>
>  static void ubi_dump_vol_info(const struct ubi_volume *vol)
>  {
> @@ -455,11 +459,6 @@ static int do_ubi(cmd_tbl_t * cmdtp, int flag, int
> argc, char *argv[]) return 0;
>  		}
>
> -		if (argc < 4) {
> -			printf("Usage:\n%s\n", cmdtp->usage);
> -			return 1;
> -		}
> -
>  		/* todo: get dev number for NAND... */
>  		ubi_dev.nr = 0;
>
> @@ -481,7 +480,7 @@ static int do_ubi(cmd_tbl_t * cmdtp, int flag, int
> argc, char *argv[]) }
>  #endif
>  #if defined(CONFIG_CMD_ONENAND)
> -		if (strcmp(argv[2], "onenand") == 0) {
> +		if (strcmp(argv[2], "onenand") == 0 || ubi_dev.part_name) {

You only add this feature for the OneNAND part. Please add it for NOR & NAND 
as well. You need a different approach then though. By simply adding this 
part_name via the board config header, you can't distinguish between the 
different FLASH choices.

>  			strcpy(ubi_dev.dev_name, "OneNAND");
>  			ubi_dev.type = DEV_TYPE_ONENAND;
>  			ubi_dev.mtd_info = &onenand_mtd;
> @@ -493,7 +492,12 @@ static int do_ubi(cmd_tbl_t * cmdtp, int flag, int
> argc, char *argv[]) return 1;
>  		}
>
> -		strcpy(ubi_dev.part_name, argv[3]);
> +		if (argv[3])
> +			strcpy(ubi_dev.part_name, argv[3]);

		if (argc >= 4)
			strcpy(ubi_dev.part_name, argv[3]);

> +		if (strcmp(ubi_dev.part_name, "") == 0) {
> +			printf("Please give part name\n");

			printf("Please enter partition name!\n");


Best regards,
Stefan

=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================

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

end of thread, other threads:[~2008-11-26  8:47 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-26  0:52 [U-Boot] [PATCH] [UBI] Set default UBI partition name at configuration Kyungmin Park
2008-11-26  8:47 ` Stefan Roese

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