Hi Enrico, thank you for your help and for telling me about fdtdump. Works great. I could not find any references to state in the device tree. There where no references to state and bootchooser in the devicetree. The only references to barebox are two addresses inside the nand: gpmi-nand@00112000 { ... partition@0 { label = "barebox"; reg = <0x00000000 0x00400000>; }; partition@1 { label = "barebox-environment"; reg = <0x00400000 0x00100000>; }; ... And there is a eeprom entry: i2c@021a8000 { ... eeprom@50 { compatible = "atmel,24c32"; reg = <0x00000050>; }; Where to look for state in the devicetree? Anyhow I compiled a zeus image using the old barebox version 2017.12.0 and bootchooser works again with zeus. Interesting is that ubi fails too like in thud. So it seems as long as ubi fails state could be used or the other way around. Here the zeus logs: ------------------------------------------------------------------------------------------ barebox 2017.12.0 #1 Wed Jan 15 16:36:29 UTC 2020 Board: Phytec phyCORE-i.MX6 Quad with NAND detected i.MX6 Quad revision 1.5 i.MX6 unique ID: ee803c540f2359d4 mdio_bus: miibus0: probed eth0: got preset MAC address: 50:2d:f4:1b:af:b1 nand: ONFI flash detected nand: NAND device: Manufacturer ID: 0xef, Chip ID: 0xd3 (Winbond W29N08GV), 1024MiB, page size: 2048, OOB size: 64 Bad block table found at page 524224, version 0x01 Bad block table found at page 524160, version 0x01 m25p80 flash@00: n25q128a13 (16384 Kbytes) imx-usb 2184200.usb: USB EHCI 1.00 imx-esdhc 2190000.usdhc: registered as 2190000.usdhc da9063 da90620: da9062 with id 62.22.ff.1a detected state: New state registered 'state' state: Using bucket 0@0x00000000 netconsole: registered as netconsole-1 phySOM-i.MX6: Using environment in MMC malloc space: 0x2fefb480 -> 0x4fdf68ff (size 511 MiB) mmc0: detected SD card version 2.0 mmc0: registered mmc0 envfs: no envfs (magic mismatch) - envfs never written? running /env/bin/init... Hit m for menu or any other key to stop autoboot: 0 testing for update ubi0: scanning is finished ubi0 error: ubi_read_volume_table: the layout volume was not found ubi0 error: ubi_attach_mtd_dev: failed to attach mtd0, error -22 failed to attach: Invalid argument updating kernel open volume: No such file or directory updating oftree open volume: No such file or directory booting 'bootchooser' booting 'mmc' ----------------------------------------------------------------------------------- barebox 2019.01.0 #1 Thu Jan 16 12:17:51 UTC 2020 Board: Phytec phyCORE-i.MX6 Quad with NAND detected i.MX6 Quad revision 1.5 i.MX reset reason POR (SRSR: 0x00000001) i.MX6 Quad unique ID: ee803c540f2359d4 mdio_bus: miibus0: probed eth0: got preset MAC address: 50:2d:f4:1b:af:b1 nand: ONFI flash detected nand: NAND device: Manufacturer ID: 0xef, Chip ID: 0xd3 (Winbond W29N08GV), 1024MiB, page size: 2048, OOB size: 64 Bad block table found at page 524224, version 0x01 Bad block table found at page 524160, version 0x01 m25p80 flash@00: n25q128a13 (16384 Kbytes) imx-usb 2184200.usb@xxxxxxxxxx: USB EHCI 1.00 imx-esdhc 2190000.usdhc@xxxxxxxxxx: registered as mmc0 imx-ipuv3 2400000.ipu@xxxxxxxxxx: IPUv3H probed imx-ipuv3 2800000.ipu@xxxxxxxxxx: IPUv3H probed da9063 da90620: da9062 with id 62.22.ff.1a detected netconsole: registered as netconsole-1 phySOM-i.MX6: Using environment in MMC malloc space: 0x2fe7b860 -> 0x4fcf70bf (size 510.5 MiB) mmc0: detected SD card version 2.0 mmc0: registered mmc0 envfs: no envfs (magic mismatch) - envfs never written? running /env/bin/init... Hit m for menu or any other key to stop autoboot: 0 testing for update ubi0: scanning is finished ubi0: registering /dev/nand0.root.ubi ubi0: attached mtd0 (name "nand0.root", size 1019 MiB) to ubi0 ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096 ubi0: good PEBs: 8148, bad PEBs: 4, corrupted PEBs: 0 ubi0: user volume: 0, internal volumes: 1, max. volumes count: 128 ubi0: max/mean erase counter: 1/1, WL threshold: 65536, image sequence number: 1694817280 ubi0: available PEBs: 7986, total reserved PEBs: 162, PEBs reserved for bad PEB handling: 156 updating kernel open volume: No such file or directory updating oftree open volume: No such file or directory bootchooser: Cannot get state 'state' Nothing bootable found on 'bootchooser' Nothing bootable found ----------------------------------------------------------------------------------- -----Original Message----- From: Enrico Joerns <ejo@xxxxxxxxxxxxxx> Sent: Wednesday, 15 January 2020 15:48 To: Hans-Ulrich Schlieben <hu.schlieben@xxxxxxxxxxxxxx> Cc: barebox@xxxxxxxxxxxxxxxxxxx; yocto@xxxxxxxxxxxxxxxxxxxxxx; Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> Subject: Re: [yocto] #yocto bootchooser: Cannot get state 'state' On Wed, 2020-01-15 at 15:36 +0100, Ahmad Fatoum wrote: > Hello Hans-Ulrich, > > On 1/15/20 3:25 PM, Hans-Ulrich Schlieben wrote: > > > Can you copy the device tree snippet you use for defining state? > > > > Is there a problem because ubi works now and garbles the data in the flash? > > > > > What does running the state command say? > > > > barebox@Phytec phyCORE-i.MX6 Quad with NAND:/ state registered state > > instances: > > > > is empty in zeus, whereas thud returned: (backend: raw, path: > > /dev/eeprom0.update-eeprom) The difference between 'zeus' and 'thud' is mainly the barebox version that you get from the meta-phytec layer. We had some changes in requirements for the state node alias within the two year, but unsure if that hits you. Note that you can find the build dtb in your BSP's deploy dir. You could run fdtdump tmp/deploy/images/<machine>/<name-of-dtb>.dtb to dump it. Regards, Enrico > According to the state command output under thud, your state is stored > on the EEPROM, not the NAND. Look for update-eeprom in your device tree. > There should also be an /dev/eeprom0.update-eeprom in barebox. > if not, try executing the drvinfo command and see if the driver has > probed the EEPROM. > > Can you also paste the full barebox output from power-on till failure? > > Your board should boot normally with upstream barebox, I think. > Can you try and see if v2020.01.0 suffers from the same problem? > > Cheers > Ahmad > > > > > Thank you and Regards > > > > hu > > > > > > -----Original Message----- > > From: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> > > Sent: Wednesday, 15 January 2020 14:40 > > To: Hans-Ulrich Schlieben <hu.schlieben@xxxxxxxxxxxxxx>; Enrico > > Joerns <ejo@xxxxxxxxxxxxxx>; yocto@xxxxxxxxxxxxxxxxxxxxxx > > Cc: barebox@xxxxxxxxxxxxxxxxxxx > > Subject: Re: [yocto] #yocto bootchooser: Cannot get state 'state' > > > > On 1/15/20 2:26 PM, Hans-Ulrich Schlieben wrote: > > > Hi Enrico, > > > > > > thank you very much for your help. > > > I'm using barebox_2019.01.0-phy4-r7.0 now. In thud I used > > > barebox_2017.12.0 The image is built using my own ims layer which > > > depends on core-image-minimal LAYERDEPENDS_ims-layer = "core-image-minimal openembedded-layer phytec-layer" > > > Its using the meta-phytec Layer and a custom layer from phytec named meta-ksp0663. > > > Forgot to mention that rauc is used too, which moved from 1.1 to now 1.2. > > > Just changed the LAYERSERIES_COMPAT to "zeus" here to check whether yocto zeus works. > > > > > > Is there some info what to change in the devicetree and so on when moving to warrior/zeus? > > > In thud this worked. > > > > Are there any other error messages? > > Can you copy the device tree snippet you use for defining state? > > What does running the state command say? > > > > (now again, but with CC-list intact) > > > > > > > > Thank you > > > Regards > > > > > > hu > > > > > > > -----Original Message----- > > > > From: Enrico Joerns <ejo@xxxxxxxxxxxxxx> > > > > Sent: Wednesday, 15 January 2020 14:03 > > > > To: Hans-Ulrich Schlieben <hu.schlieben@xxxxxxxxxxxxxx>; > > > > yocto@xxxxxxxxxxxxxxxxxxxxxx > > > > Cc: barebox@xxxxxxxxxxxxxxxxxxx > > > > Subject: Re: [yocto] #yocto bootchooser: Cannot get state 'state' > > > > > > > > Hi, > > > > > > > > this is mainly a barebox-related question, thus I'd suggest asking it on the barebox ML. > > > > > > > > [cc-ing barebox mailing list] > > > > > > > > On Wed, 2020-01-15 at 04:10 -0800, hu.schlieben@xxxxxxxxxxxxxx wrote: > > > > > Hi, > > > > > > > > > > booting the new yocto zeus system manually by "boot mmc" works > > > > > fine but default bootchooser fails with: > > > > > > > > > > bootchooser: Cannot get state 'state' > > > > > Nothing bootable found on 'bootchooser' > > > > > Nothing bootable found > > > > > > > > Looks like the state node is missing in your device tree. > > > > Which version of barebox do you use? > > > > And from which layer / recipe? > > > > > > > > > Building the "same" image in yocto thud works fine. The boot > > > > > variables > > > > > are: > > > > > > > > > > * BOOT_system0_.default: 3 > > > > > * BOOT_system1_.default: 3 > > > > > * allow_color: 0 > > > > > * autoboot_timeout: 3 > > > > > * boot.default: bootchooser > > > > > boot.watchdog_timeout: 0 > > > > > bootchooser.default_attempts: 3 > > > > > bootchooser.default_priority: 1 > > > > > bootchooser.disable_on_zero_attempts: 0 > > > > > bootchooser.reset_attempts: (list: "power-on", "all-zero") > > > > > bootchooser.reset_priorities: > > > > > bootchooser.retry: 0 > > > > > * bootchooser.state_prefix: state.bootstate > > > > > * bootchooser.system0.boot: mmc > > > > > * bootchooser.system0.default_attempts: 3 > > > > > * bootchooser.system0.default_priority: 20 > > > > > * bootchooser.system1.boot: mmc1 > > > > > * bootchooser.system1.default_attempts: 3 > > > > > * bootchooser.system1.default_priority: 21 > > > > > * bootchooser.targets: system0 system1 > > > > > bootm.appendroot: 0 > > > > > ... > > > > > > > > > > > > > Regards, Enrico > > > > > > _______________________________________________ > > > barebox mailing list > > > barebox@xxxxxxxxxxxxxxxxxxx > > > https://eur04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fl > > > ists > > > .infradead.org%2Fmailman%2Flistinfo%2Fbarebox&data=01%7C01%7Ch > > > u.sc > > > hlieben%40codewrights.de%7Cb6b1eddf633845b6004308d799c06b3c%7C0974 > > > af9b > > > 352b437cb606e9f242c0c227%7C0&sdata=xYCzF1pdhTQArF5%2BHffieEkHN > > > mdqX > > > w%2BVo2EFWg%2FKOHY%3D&reserved=0 > > > > > > > > > -- Pengutronix e.K. | Enrico Jörns | Embedded Linux Consulting & Support | Team Lead Integration | Steuerwalder Str. 21 | https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.pengutronix.de&data=01%7C01%7Chu.schlieben%40codewrights.de%7C7bea6efe1782401bc43f08d799c9e2c8%7C0974af9b352b437cb606e9f242c0c227%7C0&sdata=rPKoAb3cJyvDjdw7Fh9Z6RH2y1Oa2kagXFob7UJNswk%3D&reserved=0 | 31137 Hildesheim, Germany | Phone: +49-5121-206917-5080 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox