All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
@ 2018-12-27 18:52 Pali Rohár
  2018-12-27 18:57 ` Tom Rini
  0 siblings, 1 reply; 9+ messages in thread
From: Pali Rohár @ 2018-12-27 18:52 UTC (permalink / raw)
  To: u-boot

Hello, it seems that MTD partition definitions for Nokia N900 were
removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).

See diff:
http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672

Can you bring them back?

Note that those PART*_* macros are used not only for constructing
MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
for booting Maemo 5.

-- 
Pali Rohár
pali.rohar at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/8e1f9170/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 18:52 [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT) Pali Rohár
@ 2018-12-27 18:57 ` Tom Rini
  2018-12-27 19:09   ` Pali Rohár
  0 siblings, 1 reply; 9+ messages in thread
From: Tom Rini @ 2018-12-27 18:57 UTC (permalink / raw)
  To: u-boot

On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:

> Hello, it seems that MTD partition definitions for Nokia N900 were
> removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> 
> See diff:
> http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> 
> Can you bring them back?
> 
> Note that those PART*_* macros are used not only for constructing
> MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> for booting Maemo 5.

Yes, please update the defconfig file with whatever needs to be in the
option there, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/45d361a1/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 18:57 ` Tom Rini
@ 2018-12-27 19:09   ` Pali Rohár
  2018-12-27 19:12     ` Tom Rini
  0 siblings, 1 reply; 9+ messages in thread
From: Pali Rohár @ 2018-12-27 19:09 UTC (permalink / raw)
  To: u-boot

On Thursday 27 December 2018 13:57:59 Tom Rini wrote:
> On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:
> 
> > Hello, it seems that MTD partition definitions for Nokia N900 were
> > removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> > Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> > 
> > See diff:
> > http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> > 
> > Can you bring them back?
> > 
> > Note that those PART*_* macros are used not only for constructing
> > MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> > for booting Maemo 5.
> 
> Yes, please update the defconfig file with whatever needs to be in the
> option there, thanks!

Looking at it... and it is problematic.

At time when Nokia N900 code was put into U-Boot mainline repository,
UBIFS and OneNand code in U-Boot was broken. Therefore I added only
#ifdef switch to enable MTD support optionally. Ideally once, OneNand is
in U-Boot fixed, then it can be enabled. I do not know what is current
state.

And definition for MTD was not moved out of nokia_rx51.h file to
nokia_rx51_defconfig. But if you look at old definition of
MTDPART_DEFAULT it is composed from other macros in that nokia_rx51.h
file.

So I cannot move it for obvious reason to nokia_rx51_defconfig, without
including nokia_rx51.h in nokia_rx51_defconfig file. So how to solve
this problem?

-- 
Pali Rohár
pali.rohar at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/87a997b0/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 19:09   ` Pali Rohár
@ 2018-12-27 19:12     ` Tom Rini
  2018-12-27 19:32       ` Pali Rohár
  0 siblings, 1 reply; 9+ messages in thread
From: Tom Rini @ 2018-12-27 19:12 UTC (permalink / raw)
  To: u-boot

On Thu, Dec 27, 2018 at 08:09:56PM +0100, Pali Rohár wrote:
> On Thursday 27 December 2018 13:57:59 Tom Rini wrote:
> > On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:
> > 
> > > Hello, it seems that MTD partition definitions for Nokia N900 were
> > > removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> > > Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> > > 
> > > See diff:
> > > http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> > > 
> > > Can you bring them back?
> > > 
> > > Note that those PART*_* macros are used not only for constructing
> > > MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> > > for booting Maemo 5.
> > 
> > Yes, please update the defconfig file with whatever needs to be in the
> > option there, thanks!
> 
> Looking at it... and it is problematic.
> 
> At time when Nokia N900 code was put into U-Boot mainline repository,
> UBIFS and OneNand code in U-Boot was broken. Therefore I added only
> #ifdef switch to enable MTD support optionally. Ideally once, OneNand is
> in U-Boot fixed, then it can be enabled. I do not know what is current
> state.

OneNAND is probably still broken then, and should probably just be
removed if so?

> And definition for MTD was not moved out of nokia_rx51.h file to
> nokia_rx51_defconfig. But if you look at old definition of
> MTDPART_DEFAULT it is composed from other macros in that nokia_rx51.h
> file.
> 
> So I cannot move it for obvious reason to nokia_rx51_defconfig, without
> including nokia_rx51.h in nokia_rx51_defconfig file. So how to solve
> this problem?

You should construct and pass the final string as it doesn't look like
it changes dynamically, right?

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/cc7675af/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 19:12     ` Tom Rini
@ 2018-12-27 19:32       ` Pali Rohár
  2018-12-27 20:35         ` Pali Rohár
  2018-12-27 20:53         ` Tom Rini
  0 siblings, 2 replies; 9+ messages in thread
From: Pali Rohár @ 2018-12-27 19:32 UTC (permalink / raw)
  To: u-boot

On Thursday 27 December 2018 14:12:35 Tom Rini wrote:
> On Thu, Dec 27, 2018 at 08:09:56PM +0100, Pali Rohár wrote:
> > On Thursday 27 December 2018 13:57:59 Tom Rini wrote:
> > > On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:
> > > 
> > > > Hello, it seems that MTD partition definitions for Nokia N900 were
> > > > removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> > > > Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> > > > 
> > > > See diff:
> > > > http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> > > > 
> > > > Can you bring them back?
> > > > 
> > > > Note that those PART*_* macros are used not only for constructing
> > > > MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> > > > for booting Maemo 5.
> > > 
> > > Yes, please update the defconfig file with whatever needs to be in the
> > > option there, thanks!
> > 
> > Looking at it... and it is problematic.
> > 
> > At time when Nokia N900 code was put into U-Boot mainline repository,
> > UBIFS and OneNand code in U-Boot was broken. Therefore I added only
> > #ifdef switch to enable MTD support optionally. Ideally once, OneNand is
> > in U-Boot fixed, then it can be enabled. I do not know what is current
> > state.
> 
> OneNAND is probably still broken then, and should probably just be
> removed if so?

Now it even does not compile... I'm getting following error:

drivers/mtd/onenand/onenand_uboot.c: In function ‘onenand_init’:
drivers/mtd/onenand/onenand_uboot.c:37:31: error: ‘CONFIG_SYS_ONENAND_BASE’ undeclared (first use in this function)
  onenand_chip.base = (void *) CONFIG_SYS_ONENAND_BASE;
                               ^~~~~~~~~~~~~~~~~~~~~~~
drivers/mtd/onenand/onenand_uboot.c:37:31: note: each undeclared identifier is reported only once for each function it appears in

After I applied

diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
index fe2ecf6c94..905bdee249 100644
--- a/configs/nokia_rx51_defconfig
+++ b/configs/nokia_rx51_defconfig
@@ -36,3 +36,6 @@ CONFIG_TWL4030_USB=y
 CONFIG_VIDEO=y
 CONFIG_CFB_CONSOLE_ANSI=y
 # CONFIG_VGA_AS_SINGLE_DEVICE is not set
+CONFIG_CMD_ONENAND=y
+CONFIG_CMD_MTDPARTS=y
+CONFIG_CMD_UBIFS=y


> > And definition for MTD was not moved out of nokia_rx51.h file to
> > nokia_rx51_defconfig. But if you look at old definition of
> > MTDPART_DEFAULT it is composed from other macros in that nokia_rx51.h
> > file.
> > 
> > So I cannot move it for obvious reason to nokia_rx51_defconfig, without
> > including nokia_rx51.h in nokia_rx51_defconfig file. So how to solve
> > this problem?
> 
> You should construct and pass the final string as it doesn't look like
> it changes dynamically, right?

Yes, that is possible. But then definition for partitions would be at
two places. Once in nokia_rx51_defconfig and second time in nokia_rx51.h

-- 
Pali Rohár
pali.rohar at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/44ba02a5/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 19:32       ` Pali Rohár
@ 2018-12-27 20:35         ` Pali Rohár
  2018-12-27 20:53         ` Tom Rini
  1 sibling, 0 replies; 9+ messages in thread
From: Pali Rohár @ 2018-12-27 20:35 UTC (permalink / raw)
  To: u-boot

On Thursday 27 December 2018 20:32:56 Pali Rohár wrote:
> On Thursday 27 December 2018 14:12:35 Tom Rini wrote:
> > On Thu, Dec 27, 2018 at 08:09:56PM +0100, Pali Rohár wrote:
> > > On Thursday 27 December 2018 13:57:59 Tom Rini wrote:
> > > > On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:
> > > > 
> > > > > Hello, it seems that MTD partition definitions for Nokia N900 were
> > > > > removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> > > > > Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> > > > > 
> > > > > See diff:
> > > > > http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> > > > > 
> > > > > Can you bring them back?
> > > > > 
> > > > > Note that those PART*_* macros are used not only for constructing
> > > > > MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> > > > > for booting Maemo 5.
> > > > 
> > > > Yes, please update the defconfig file with whatever needs to be in the
> > > > option there, thanks!
> > > 
> > > Looking at it... and it is problematic.
> > > 
> > > At time when Nokia N900 code was put into U-Boot mainline repository,
> > > UBIFS and OneNand code in U-Boot was broken. Therefore I added only
> > > #ifdef switch to enable MTD support optionally. Ideally once, OneNand is
> > > in U-Boot fixed, then it can be enabled. I do not know what is current
> > > state.
> > 
> > OneNAND is probably still broken then, and should probably just be
> > removed if so?
> 
> Now it even does not compile... I'm getting following error:
> 
> drivers/mtd/onenand/onenand_uboot.c: In function ‘onenand_init’:
> drivers/mtd/onenand/onenand_uboot.c:37:31: error: ‘CONFIG_SYS_ONENAND_BASE’ undeclared (first use in this function)
>   onenand_chip.base = (void *) CONFIG_SYS_ONENAND_BASE;
>                                ^~~~~~~~~~~~~~~~~~~~~~~
> drivers/mtd/onenand/onenand_uboot.c:37:31: note: each undeclared identifier is reported only once for each function it appears in
> 
> After I applied
> 
> diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
> index fe2ecf6c94..905bdee249 100644
> --- a/configs/nokia_rx51_defconfig
> +++ b/configs/nokia_rx51_defconfig
> @@ -36,3 +36,6 @@ CONFIG_TWL4030_USB=y
>  CONFIG_VIDEO=y
>  CONFIG_CFB_CONSOLE_ANSI=y
>  # CONFIG_VGA_AS_SINGLE_DEVICE is not set
> +CONFIG_CMD_ONENAND=y
> +CONFIG_CMD_MTDPARTS=y
> +CONFIG_CMD_UBIFS=y
> 

Compilation is definitely broken in U-Boot.

$ git grep CONFIG_SYS_ONENAND_BASE
include/configs/nokia_rx51.h:#define CONFIG_SYS_ONENAND_BASE            ONENAND_MAP

$ git grep ONENAND_MAP
arch/arm/include/asm/arch-omap3/cpu.h:#define ONENAND_MAP               0x20000000      /* OneNand addr */

I applied following patch and then compilation succeeded.

diff --git a/arch/arm/mach-omap2/mem-common.c b/arch/arm/mach-omap2/mem-common.c
index ff1e3125a0..aca834d0f3 100644
--- a/arch/arm/mach-omap2/mem-common.c
+++ b/arch/arm/mach-omap2/mem-common.c
@@ -138,7 +138,7 @@ void set_gpmc_cs0(int flash_type)
 #if defined(CONFIG_CMD_ONENAND)
 	case MTD_DEV_TYPE_ONENAND:
 		gpmc_regs = gpmc_regs_onenand;
-		base = CONFIG_SYS_ONENAND_BASE;
+		base = 0x20000000;
 		size = GPMC_SIZE_128M;
 		break;
 #endif
diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
index fe2ecf6c94..7f817a57cc 100644
--- a/configs/nokia_rx51_defconfig
+++ b/configs/nokia_rx51_defconfig
@@ -36,3 +36,11 @@ CONFIG_TWL4030_USB=y
 CONFIG_VIDEO=y
 CONFIG_CFB_CONSOLE_ANSI=y
 # CONFIG_VGA_AS_SINGLE_DEVICE is not set
+CONFIG_MTD_DEVICE=y
+CONFIG_MTDIDS_DEFAULT="onenand0=onenand"
+CONFIG_MTDPARTS_DEFAULT="mtdparts=onenand:128k(bootloader)ro,384k(config),256k(log),2m(kernel),2m(initfs),-(rootfs)"
+CONFIG_CMD_ONENAND=y
+CONFIG_CMD_MTDPARTS=y
+CONFIG_CMD_MTD=y
+CONFIG_CMD_UBI=y
+CONFIG_CMD_UBIFS=y
diff --git a/drivers/mtd/onenand/onenand_uboot.c b/drivers/mtd/onenand/onenand_uboot.c
index c15ec9df07..5f2b094dfc 100644
--- a/drivers/mtd/onenand/onenand_uboot.c
+++ b/drivers/mtd/onenand/onenand_uboot.c
@@ -34,7 +34,7 @@ void onenand_init(void)
 	/* It's used for some board init required */
 	err = onenand_board_init(&onenand_mtd);
 #else
-	onenand_chip.base = (void *) CONFIG_SYS_ONENAND_BASE;
+	onenand_chip.base = (void *) 0x20000000;
 #endif
 
 	if (!err && !(onenand_scan(&onenand_mtd, 1))) {

Looks like that OneNand & UBI code is working, at least in qemu. I have
not tested real N900 device yet. But UBIFS does not work :-( See tests
below.

Nokia RX-51 # onenand info
Muxed OneNAND 256MB 1.8V 16-bit (0x40)
OneNAND version = 0x0121

Nokia RX-51 # mtd list
List of MTD devices:
* onenand0
  - type: Unknown
  - block size: 0x20000 bytes
  - min I/O: 0x800 bytes
  - OOB size: 64 bytes
  - OOB available: 20 bytes
  - 0x000000000000-0x000010000000 : "onenand0"
          - 0x000000000000-0x000000020000 : "bootloader"
          - 0x000000020000-0x000000080000 : "config"
          - 0x000000080000-0x0000000c0000 : "log"
          - 0x0000000c0000-0x0000002c0000 : "kernel"
          - 0x0000002c0000-0x0000004c0000 : "initfs"
          - 0x0000004c0000-0x000010000000 : "rootfs"

Nokia RX-51 # mtd dump bootloader       
Reading 2048 byte(s) at offset 0x00000000

Dump 2048 data bytes from 0x0:
0x00000000:     dc 21 00 00 00 00 20 40  0a 00 00 ea 4e 4f 4c 4f 
0x00000010:     58 6c 64 72 14 0e 00 00  00 00 20 40 09 00 00 00
...

Nokia RX-51 # ubi part rootfs
ubi0: attaching mtd6
ubi0: scanning is finished
ubi0: volume 0 ("rootfs") re-sized from 1870 to 1966 LEBs
ubi0: attached mtd6 (name "rootfs", size 251 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 129024 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 512
ubi0: VID header offset: 512 (aligned 512), data offset: 2048
ubi0: good PEBs: 2010, bad PEBs: 0, corrupted PEBs: 0
ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 1/1, WL threshold: 4096, image sequence number: 1
ubi0: available PEBs: 0, total reserved PEBs: 2010, PEBs reserved for bad PEB handling: 40


Nokia RX-51 # ubi info l
Volume information dump:
        vol_id          0
        reserved_pebs   1966
        alignment       1
        data_pad        0
        vol_type        3
        name_len        6
        usable_leb_size 129024
        used_ebs        1966
        used_bytes      253661184
        last_eb_bytes   129024
        corrupted       0
        upd_marker      0
        name            rootfs
Volume information dump:
        vol_id          2147479551
        reserved_pebs   2
        alignment       1
        data_pad        0
        vol_type        3
        name_len        13
        usable_leb_size 129024
        used_ebs        2
        used_bytes      258048
        last_eb_bytes   2
        corrupted       0
        upd_marker      0
        name            layout volume

Nokia RX-51 # ubifsmount rootfs
UBIFS error (pid: 1): cannot open "rootfs", error -22
Error reading superblock on volume 'rootfs' errno=-22!
...

Nokia RX-51 # ubifsmount ubi0:rootfs
Error reading superblock on volume 'ubi0:rootfs' errno=-22!
...

> > > And definition for MTD was not moved out of nokia_rx51.h file to
> > > nokia_rx51_defconfig. But if you look at old definition of
> > > MTDPART_DEFAULT it is composed from other macros in that nokia_rx51.h
> > > file.
> > > 
> > > So I cannot move it for obvious reason to nokia_rx51_defconfig, without
> > > including nokia_rx51.h in nokia_rx51_defconfig file. So how to solve
> > > this problem?
> > 
> > You should construct and pass the final string as it doesn't look like
> > it changes dynamically, right?
> 
> Yes, that is possible. But then definition for partitions would be at
> two places. Once in nokia_rx51_defconfig and second time in nokia_rx51.h

-- 
Pali Rohár
pali.rohar at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/43baa2b1/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 19:32       ` Pali Rohár
  2018-12-27 20:35         ` Pali Rohár
@ 2018-12-27 20:53         ` Tom Rini
  2018-12-27 21:01           ` Pali Rohár
  1 sibling, 1 reply; 9+ messages in thread
From: Tom Rini @ 2018-12-27 20:53 UTC (permalink / raw)
  To: u-boot

On Thu, Dec 27, 2018 at 08:32:56PM +0100, Pali Rohár wrote:
> On Thursday 27 December 2018 14:12:35 Tom Rini wrote:
> > On Thu, Dec 27, 2018 at 08:09:56PM +0100, Pali Rohár wrote:
> > > On Thursday 27 December 2018 13:57:59 Tom Rini wrote:
> > > > On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:
> > > > 
> > > > > Hello, it seems that MTD partition definitions for Nokia N900 were
> > > > > removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> > > > > Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> > > > > 
> > > > > See diff:
> > > > > http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> > > > > 
> > > > > Can you bring them back?
> > > > > 
> > > > > Note that those PART*_* macros are used not only for constructing
> > > > > MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> > > > > for booting Maemo 5.
> > > > 
> > > > Yes, please update the defconfig file with whatever needs to be in the
> > > > option there, thanks!
> > > 
> > > Looking at it... and it is problematic.
> > > 
> > > At time when Nokia N900 code was put into U-Boot mainline repository,
> > > UBIFS and OneNand code in U-Boot was broken. Therefore I added only
> > > #ifdef switch to enable MTD support optionally. Ideally once, OneNand is
> > > in U-Boot fixed, then it can be enabled. I do not know what is current
> > > state.
> > 
> > OneNAND is probably still broken then, and should probably just be
> > removed if so?
> 
> Now it even does not compile... I'm getting following error:
> 
> drivers/mtd/onenand/onenand_uboot.c: In function ‘onenand_init’:
> drivers/mtd/onenand/onenand_uboot.c:37:31: error: ‘CONFIG_SYS_ONENAND_BASE’ undeclared (first use in this function)
>   onenand_chip.base = (void *) CONFIG_SYS_ONENAND_BASE;
>                                ^~~~~~~~~~~~~~~~~~~~~~~
> drivers/mtd/onenand/onenand_uboot.c:37:31: note: each undeclared identifier is reported only once for each function it appears in
> 
> After I applied
> 
> diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
> index fe2ecf6c94..905bdee249 100644
> --- a/configs/nokia_rx51_defconfig
> +++ b/configs/nokia_rx51_defconfig
> @@ -36,3 +36,6 @@ CONFIG_TWL4030_USB=y
>  CONFIG_VIDEO=y
>  CONFIG_CFB_CONSOLE_ANSI=y
>  # CONFIG_VGA_AS_SINGLE_DEVICE is not set
> +CONFIG_CMD_ONENAND=y
> +CONFIG_CMD_MTDPARTS=y
> +CONFIG_CMD_UBIFS=y
> 
> 
> > > And definition for MTD was not moved out of nokia_rx51.h file to
> > > nokia_rx51_defconfig. But if you look at old definition of
> > > MTDPART_DEFAULT it is composed from other macros in that nokia_rx51.h
> > > file.
> > > 
> > > So I cannot move it for obvious reason to nokia_rx51_defconfig, without
> > > including nokia_rx51.h in nokia_rx51_defconfig file. So how to solve
> > > this problem?
> > 
> > You should construct and pass the final string as it doesn't look like
> > it changes dynamically, right?
> 
> Yes, that is possible. But then definition for partitions would be at
> two places. Once in nokia_rx51_defconfig and second time in nokia_rx51.h

It shouldn't be in nokia_rx51.h at all, it needs to be migrated to
nokia_rx51_defconfig and any comments about where/why put into the
existing board README, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/2b8ee548/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 20:53         ` Tom Rini
@ 2018-12-27 21:01           ` Pali Rohár
  2018-12-27 21:07             ` Tom Rini
  0 siblings, 1 reply; 9+ messages in thread
From: Pali Rohár @ 2018-12-27 21:01 UTC (permalink / raw)
  To: u-boot

On Thursday 27 December 2018 15:53:06 Tom Rini wrote:
> On Thu, Dec 27, 2018 at 08:32:56PM +0100, Pali Rohár wrote:
> > On Thursday 27 December 2018 14:12:35 Tom Rini wrote:
> > > On Thu, Dec 27, 2018 at 08:09:56PM +0100, Pali Rohár wrote:
> > > > On Thursday 27 December 2018 13:57:59 Tom Rini wrote:
> > > > > On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:
> > > > > 
> > > > > > Hello, it seems that MTD partition definitions for Nokia N900 were
> > > > > > removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> > > > > > Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> > > > > > 
> > > > > > See diff:
> > > > > > http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> > > > > > 
> > > > > > Can you bring them back?
> > > > > > 
> > > > > > Note that those PART*_* macros are used not only for constructing
> > > > > > MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> > > > > > for booting Maemo 5.
> > > > > 
> > > > > Yes, please update the defconfig file with whatever needs to be in the
> > > > > option there, thanks!
> > > > 
> > > > Looking at it... and it is problematic.
> > > > 
> > > > At time when Nokia N900 code was put into U-Boot mainline repository,
> > > > UBIFS and OneNand code in U-Boot was broken. Therefore I added only
> > > > #ifdef switch to enable MTD support optionally. Ideally once, OneNand is
> > > > in U-Boot fixed, then it can be enabled. I do not know what is current
> > > > state.
> > > 
> > > OneNAND is probably still broken then, and should probably just be
> > > removed if so?
> > 
> > Now it even does not compile... I'm getting following error:
> > 
> > drivers/mtd/onenand/onenand_uboot.c: In function ‘onenand_init’:
> > drivers/mtd/onenand/onenand_uboot.c:37:31: error: ‘CONFIG_SYS_ONENAND_BASE’ undeclared (first use in this function)
> >   onenand_chip.base = (void *) CONFIG_SYS_ONENAND_BASE;
> >                                ^~~~~~~~~~~~~~~~~~~~~~~
> > drivers/mtd/onenand/onenand_uboot.c:37:31: note: each undeclared identifier is reported only once for each function it appears in
> > 
> > After I applied
> > 
> > diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
> > index fe2ecf6c94..905bdee249 100644
> > --- a/configs/nokia_rx51_defconfig
> > +++ b/configs/nokia_rx51_defconfig
> > @@ -36,3 +36,6 @@ CONFIG_TWL4030_USB=y
> >  CONFIG_VIDEO=y
> >  CONFIG_CFB_CONSOLE_ANSI=y
> >  # CONFIG_VGA_AS_SINGLE_DEVICE is not set
> > +CONFIG_CMD_ONENAND=y
> > +CONFIG_CMD_MTDPARTS=y
> > +CONFIG_CMD_UBIFS=y
> > 
> > 
> > > > And definition for MTD was not moved out of nokia_rx51.h file to
> > > > nokia_rx51_defconfig. But if you look at old definition of
> > > > MTDPART_DEFAULT it is composed from other macros in that nokia_rx51.h
> > > > file.
> > > > 
> > > > So I cannot move it for obvious reason to nokia_rx51_defconfig, without
> > > > including nokia_rx51.h in nokia_rx51_defconfig file. So how to solve
> > > > this problem?
> > > 
> > > You should construct and pass the final string as it doesn't look like
> > > it changes dynamically, right?
> > 
> > Yes, that is possible. But then definition for partitions would be at
> > two places. Once in nokia_rx51_defconfig and second time in nokia_rx51.h
> 
> It shouldn't be in nokia_rx51.h at all, it needs to be migrated to
> nokia_rx51_defconfig and any comments about where/why put into the
> existing board README, thanks!

As wrote, reason is that those definitions are used also for
regenerating OMAP N900 atags for Linux kernel. See:

http://git.denx.de/?p=u-boot.git;a=blob;f=board/nokia/rx51/rx51.c;h=76f6ede38c62d8b9811c717b59762b5d584fb49c;hb=HEAD#l71

OMAP_TAG_PARTITION_CONFIG is macro which takes partition name, size in
bytes, offset in bytes and mask (use for indicating RO).

But CONFIG_MTDPARTS_DEFAULT is one string which contains everything
concatenated and so...

And input for OMAP_TAG_PARTITION_CONFIG and CONFIG_MTDPARTS_DEFAULT was
generated from PART*_* macros which are there:

http://git.denx.de/?p=u-boot.git;a=blob;f=include/configs/nokia_rx51.h;h=453dd32fbdc4ec018d462cbcf82ab77b20ec4e50;hb=HEAD#l97

If you have an idea how to solve this problem, you can try it...

-- 
Pali Rohár
pali.rohar at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/a452f99f/attachment.sig>

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

* [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT)
  2018-12-27 21:01           ` Pali Rohár
@ 2018-12-27 21:07             ` Tom Rini
  0 siblings, 0 replies; 9+ messages in thread
From: Tom Rini @ 2018-12-27 21:07 UTC (permalink / raw)
  To: u-boot

On Thu, Dec 27, 2018 at 10:01:43PM +0100, Pali Rohár wrote:
> On Thursday 27 December 2018 15:53:06 Tom Rini wrote:
> > On Thu, Dec 27, 2018 at 08:32:56PM +0100, Pali Rohár wrote:
> > > On Thursday 27 December 2018 14:12:35 Tom Rini wrote:
> > > > On Thu, Dec 27, 2018 at 08:09:56PM +0100, Pali Rohár wrote:
> > > > > On Thursday 27 December 2018 13:57:59 Tom Rini wrote:
> > > > > > On Thu, Dec 27, 2018 at 07:52:54PM +0100, Pali Rohár wrote:
> > > > > > 
> > > > > > > Hello, it seems that MTD partition definitions for Nokia N900 were
> > > > > > > removed in commit 43ede0bca7fc1590b623832b743213b818257a27 (Kconfig:
> > > > > > > Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT).
> > > > > > > 
> > > > > > > See diff:
> > > > > > > http://git.denx.de/?p=u-boot.git;a=blobdiff;f=include/configs/nokia_rx51.h;h=b7fe7341e407fd16275ed06d2cd399a3a2fc0e6a;hp=20b8c345f06620210d4852f547b1e64c54e48904;hb=43ede0bca7fc1590b623832b743213b818257a27;hpb=804dcf771aacc75f595d3656be0ca6a7887b6672
> > > > > > > 
> > > > > > > Can you bring them back?
> > > > > > > 
> > > > > > > Note that those PART*_* macros are used not only for constructing
> > > > > > > MTDPARTS_DEFAULT, but also for OMAP Nokia N900 atags, which are needed
> > > > > > > for booting Maemo 5.
> > > > > > 
> > > > > > Yes, please update the defconfig file with whatever needs to be in the
> > > > > > option there, thanks!
> > > > > 
> > > > > Looking at it... and it is problematic.
> > > > > 
> > > > > At time when Nokia N900 code was put into U-Boot mainline repository,
> > > > > UBIFS and OneNand code in U-Boot was broken. Therefore I added only
> > > > > #ifdef switch to enable MTD support optionally. Ideally once, OneNand is
> > > > > in U-Boot fixed, then it can be enabled. I do not know what is current
> > > > > state.
> > > > 
> > > > OneNAND is probably still broken then, and should probably just be
> > > > removed if so?
> > > 
> > > Now it even does not compile... I'm getting following error:
> > > 
> > > drivers/mtd/onenand/onenand_uboot.c: In function ‘onenand_init’:
> > > drivers/mtd/onenand/onenand_uboot.c:37:31: error: ‘CONFIG_SYS_ONENAND_BASE’ undeclared (first use in this function)
> > >   onenand_chip.base = (void *) CONFIG_SYS_ONENAND_BASE;
> > >                                ^~~~~~~~~~~~~~~~~~~~~~~
> > > drivers/mtd/onenand/onenand_uboot.c:37:31: note: each undeclared identifier is reported only once for each function it appears in
> > > 
> > > After I applied
> > > 
> > > diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
> > > index fe2ecf6c94..905bdee249 100644
> > > --- a/configs/nokia_rx51_defconfig
> > > +++ b/configs/nokia_rx51_defconfig
> > > @@ -36,3 +36,6 @@ CONFIG_TWL4030_USB=y
> > >  CONFIG_VIDEO=y
> > >  CONFIG_CFB_CONSOLE_ANSI=y
> > >  # CONFIG_VGA_AS_SINGLE_DEVICE is not set
> > > +CONFIG_CMD_ONENAND=y
> > > +CONFIG_CMD_MTDPARTS=y
> > > +CONFIG_CMD_UBIFS=y
> > > 
> > > 
> > > > > And definition for MTD was not moved out of nokia_rx51.h file to
> > > > > nokia_rx51_defconfig. But if you look at old definition of
> > > > > MTDPART_DEFAULT it is composed from other macros in that nokia_rx51.h
> > > > > file.
> > > > > 
> > > > > So I cannot move it for obvious reason to nokia_rx51_defconfig, without
> > > > > including nokia_rx51.h in nokia_rx51_defconfig file. So how to solve
> > > > > this problem?
> > > > 
> > > > You should construct and pass the final string as it doesn't look like
> > > > it changes dynamically, right?
> > > 
> > > Yes, that is possible. But then definition for partitions would be at
> > > two places. Once in nokia_rx51_defconfig and second time in nokia_rx51.h
> > 
> > It shouldn't be in nokia_rx51.h at all, it needs to be migrated to
> > nokia_rx51_defconfig and any comments about where/why put into the
> > existing board README, thanks!
> 
> As wrote, reason is that those definitions are used also for
> regenerating OMAP N900 atags for Linux kernel. See:
> 
> http://git.denx.de/?p=u-boot.git;a=blob;f=board/nokia/rx51/rx51.c;h=76f6ede38c62d8b9811c717b59762b5d584fb49c;hb=HEAD#l71
> 
> OMAP_TAG_PARTITION_CONFIG is macro which takes partition name, size in
> bytes, offset in bytes and mask (use for indicating RO).
> 
> But CONFIG_MTDPARTS_DEFAULT is one string which contains everything
> concatenated and so...
> 
> And input for OMAP_TAG_PARTITION_CONFIG and CONFIG_MTDPARTS_DEFAULT was
> generated from PART*_* macros which are there:
> 
> http://git.denx.de/?p=u-boot.git;a=blob;f=include/configs/nokia_rx51.h;h=453dd32fbdc4ec018d462cbcf82ab77b20ec4e50;hb=HEAD#l97
> 
> If you have an idea how to solve this problem, you can try it...

As I believe we're in the middle of removing the only current board that
did run-time setting of mtdparts/etc, I think you're just going to have
to live with doing it twice, and should move the second instance into
rx51.c to make life easier down the line.  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181227/df47d6b8/attachment.sig>

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

end of thread, other threads:[~2018-12-27 21:07 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-27 18:52 [U-Boot] Nokia N900: MTDPARTS_DEFAULT was removed in 43ede0bc (Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT) Pali Rohár
2018-12-27 18:57 ` Tom Rini
2018-12-27 19:09   ` Pali Rohár
2018-12-27 19:12     ` Tom Rini
2018-12-27 19:32       ` Pali Rohár
2018-12-27 20:35         ` Pali Rohár
2018-12-27 20:53         ` Tom Rini
2018-12-27 21:01           ` Pali Rohár
2018-12-27 21:07             ` Tom Rini

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.