* [PATCH] [RFC] omap: xload - try to get partition from dts
@ 2014-05-12 14:57 Christoph Fritz
2014-05-12 15:21 ` Christoph Fritz
2014-05-13 8:21 ` Sascha Hauer
0 siblings, 2 replies; 3+ messages in thread
From: Christoph Fritz @ 2014-05-12 14:57 UTC (permalink / raw)
To: barebox
dev_add_bb_dev("x", "bbx") doesn't work here anymore.
Since pcm051 supports dts, nand boot works again with this patch.
Any ideas?
---
arch/arm/mach-omap/xload.c | 26 +++++++++++++++++---------
1 file changed, 17 insertions(+), 9 deletions(-)
diff --git a/arch/arm/mach-omap/xload.c b/arch/arm/mach-omap/xload.c
index a309450..c360568 100644
--- a/arch/arm/mach-omap/xload.c
+++ b/arch/arm/mach-omap/xload.c
@@ -56,18 +56,22 @@ static unsigned int get_image_size(void *head)
return ret;
}
-static void *omap_xload_boot_nand(int offset, int part_size)
+static void *omap_xload_boot_nand(unsigned int offset, unsigned int part_size)
{
int ret;
int size;
void *to, *header;
struct cdev *cdev;
+ const char *bbx = "nand0.barebox";
- devfs_add_partition("nand0", offset, part_size,
+ if (!cdev_by_name(bbx)) { /* currently not all support dts */
+ bbx = "bbx";
+ devfs_add_partition("nand0", offset, part_size,
DEVFS_PARTITION_FIXED, "x");
- dev_add_bb_dev("x", "bbx");
+ dev_add_bb_dev("x", bbx);
+ }
- header = read_image_head("bbx");
+ header = read_image_head(bbx);
if (header == NULL)
return NULL;
@@ -79,7 +83,7 @@ static void *omap_xload_boot_nand(int offset, int part_size)
to = xmalloc(size);
- cdev = cdev_open("bbx", O_RDONLY);
+ cdev = cdev_open(bbx, O_RDONLY);
if (!cdev) {
printf("failed to open nand\n");
return NULL;
@@ -134,11 +138,15 @@ static void *omap_xload_boot_spi(int offset, int part_size)
int size;
void *to, *header;
struct cdev *cdev;
+ onst char *x = "m25p0.barebox";
- devfs_add_partition("m25p0", offset, part_size,
- DEVFS_PARTITION_FIXED, "x");
+ if (!cdev_by_name(x)) { /* currently not all support dts */
+ x = "x";
+ devfs_add_partition("m25p0", offset, part_size,
+ DEVFS_PARTITION_FIXED, x);
+ }
- header = read_image_head("x");
+ header = read_image_head(x);
if (header == NULL)
return NULL;
@@ -150,7 +158,7 @@ static void *omap_xload_boot_spi(int offset, int part_size)
to = xmalloc(size);
- cdev = cdev_open("x", O_RDONLY);
+ cdev = cdev_open(x, O_RDONLY);
if (!cdev) {
printf("failed to open spi flash\n");
return NULL;
--
1.7.10.4
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] [RFC] omap: xload - try to get partition from dts
2014-05-12 14:57 [PATCH] [RFC] omap: xload - try to get partition from dts Christoph Fritz
@ 2014-05-12 15:21 ` Christoph Fritz
2014-05-13 8:21 ` Sascha Hauer
1 sibling, 0 replies; 3+ messages in thread
From: Christoph Fritz @ 2014-05-12 15:21 UTC (permalink / raw)
To: barebox
On Mon, 2014-05-12 at 16:57 +0200, Christoph Fritz wrote:
> dev_add_bb_dev("x", "bbx") doesn't work here anymore.
> Since pcm051 supports dts, nand boot works again with this patch.
>
> Any ideas?
> ---
> arch/arm/mach-omap/xload.c | 26 +++++++++++++++++---------
> 1 file changed, 17 insertions(+), 9 deletions(-)
>
> diff --git a/arch/arm/mach-omap/xload.c b/arch/arm/mach-omap/xload.c
> index a309450..c360568 100644
> --- a/arch/arm/mach-omap/xload.c
> +++ b/arch/arm/mach-omap/xload.c
> @@ -56,18 +56,22 @@ static unsigned int get_image_size(void *head)
> return ret;
> }
>
> -static void *omap_xload_boot_nand(int offset, int part_size)
> +static void *omap_xload_boot_nand(unsigned int offset, unsigned int part_size)
> {
> int ret;
> int size;
> void *to, *header;
> struct cdev *cdev;
> + const char *bbx = "nand0.barebox";
>
> - devfs_add_partition("nand0", offset, part_size,
> + if (!cdev_by_name(bbx)) { /* currently not all support dts */
> + bbx = "bbx";
> + devfs_add_partition("nand0", offset, part_size,
> DEVFS_PARTITION_FIXED, "x");
> - dev_add_bb_dev("x", "bbx");
> + dev_add_bb_dev("x", bbx);
> + }
>
> - header = read_image_head("bbx");
> + header = read_image_head(bbx);
> if (header == NULL)
> return NULL;
>
> @@ -79,7 +83,7 @@ static void *omap_xload_boot_nand(int offset, int part_size)
>
> to = xmalloc(size);
>
> - cdev = cdev_open("bbx", O_RDONLY);
> + cdev = cdev_open(bbx, O_RDONLY);
> if (!cdev) {
> printf("failed to open nand\n");
> return NULL;
> @@ -134,11 +138,15 @@ static void *omap_xload_boot_spi(int offset, int part_size)
> int size;
> void *to, *header;
> struct cdev *cdev;
> + onst char *x = "m25p0.barebox";
typo: const
>
> - devfs_add_partition("m25p0", offset, part_size,
> - DEVFS_PARTITION_FIXED, "x");
> + if (!cdev_by_name(x)) { /* currently not all support dts */
> + x = "x";
> + devfs_add_partition("m25p0", offset, part_size,
> + DEVFS_PARTITION_FIXED, x);
> + }
>
> - header = read_image_head("x");
> + header = read_image_head(x);
> if (header == NULL)
> return NULL;
>
> @@ -150,7 +158,7 @@ static void *omap_xload_boot_spi(int offset, int part_size)
>
> to = xmalloc(size);
>
> - cdev = cdev_open("x", O_RDONLY);
> + cdev = cdev_open(x, O_RDONLY);
> if (!cdev) {
> printf("failed to open spi flash\n");
> return NULL;
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] [RFC] omap: xload - try to get partition from dts
2014-05-12 14:57 [PATCH] [RFC] omap: xload - try to get partition from dts Christoph Fritz
2014-05-12 15:21 ` Christoph Fritz
@ 2014-05-13 8:21 ` Sascha Hauer
1 sibling, 0 replies; 3+ messages in thread
From: Sascha Hauer @ 2014-05-13 8:21 UTC (permalink / raw)
To: Christoph Fritz; +Cc: barebox
Hi Christoph,
On Mon, May 12, 2014 at 04:57:01PM +0200, Christoph Fritz wrote:
> dev_add_bb_dev("x", "bbx") doesn't work here anymore.
> Since pcm051 supports dts, nand boot works again with this patch.
>
> Any ideas?
Could you try "drop CONFIG_PARTITION_NEED_MTD" which I just sent to the
list? This should fix this issue.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-05-13 8:22 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-12 14:57 [PATCH] [RFC] omap: xload - try to get partition from dts Christoph Fritz
2014-05-12 15:21 ` Christoph Fritz
2014-05-13 8:21 ` Sascha Hauer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox