* [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