Hi, I'm trying to boot MCR3000 board with U-boot 2023.01 and it crashes in the weed in fdtdec_setup().
I bisected the issue to commit 50128aeb0f8 ("cyclic: get rid of cyclic_init()") At the time being I don't understand what happens. The problem is here below, idx is in the weed, I don't know why, any idea ? htab=0x4050288 <env_htab>, flag=flag@entry=0x0) at lib/hashtable.c:313 313 if (htab->table[idx].used) { => 0x04032098 <hsearch_r+120>: 1f 9d 00 14 mulli r28,r29,20 0x0403209c <hsearch_r+124>: 81 3f 00 00 lwz r9,0(r31) 0x040320a0 <hsearch_r+128>: 7d 49 e2 14 add r10,r9,r28 0x040320a4 <hsearch_r+132>: 7d 29 e0 2e lwzx r9,r9,r28 0x040320a8 <hsearch_r+136>: 2f 89 00 00 cmpwi cr7,r9,0 0x040320ac <hsearch_r+140>: 41 9e 01 00 beq cr7,0x40321ac <hsearch_r+396> (gdb) stepi 0x0403209c 313 if (htab->table[idx].used) { 0x04032098 <hsearch_r+120>: 1f 9d 00 14 mulli r28,r29,20 => 0x0403209c <hsearch_r+124>: 81 3f 00 00 lwz r9,0(r31) 0x040320a0 <hsearch_r+128>: 7d 49 e2 14 add r10,r9,r28 0x040320a4 <hsearch_r+132>: 7d 29 e0 2e lwzx r9,r9,r28 0x040320a8 <hsearch_r+136>: 2f 89 00 00 cmpwi cr7,r9,0 0x040320ac <hsearch_r+140>: 41 9e 01 00 beq cr7,0x40321ac <hsearch_r+396> (gdb) print $r31 $1 = 0x4050288 (gdb) stepi 0x040320a0 313 if (htab->table[idx].used) { 0x04032098 <hsearch_r+120>: 1f 9d 00 14 mulli r28,r29,20 0x0403209c <hsearch_r+124>: 81 3f 00 00 lwz r9,0(r31) => 0x040320a0 <hsearch_r+128>: 7d 49 e2 14 add r10,r9,r28 0x040320a4 <hsearch_r+132>: 7d 29 e0 2e lwzx r9,r9,r28 0x040320a8 <hsearch_r+136>: 2f 89 00 00 cmpwi cr7,r9,0 0x040320ac <hsearch_r+140>: 41 9e 01 00 beq cr7,0x40321ac <hsearch_r+396> (gdb) 0x040320a4 313 if (htab->table[idx].used) { 0x04032098 <hsearch_r+120>: 1f 9d 00 14 mulli r28,r29,20 0x0403209c <hsearch_r+124>: 81 3f 00 00 lwz r9,0(r31) 0x040320a0 <hsearch_r+128>: 7d 49 e2 14 add r10,r9,r28 => 0x040320a4 <hsearch_r+132>: 7d 29 e0 2e lwzx r9,r9,r28 0x040320a8 <hsearch_r+136>: 2f 89 00 00 cmpwi cr7,r9,0 0x040320ac <hsearch_r+140>: 41 9e 01 00 beq cr7,0x40321ac <hsearch_r+396> (gdb) print $r9 $2 = 0x0 (gdb) print $r28 $3 = 0x22b154f8 (gdb) print $r29 $4 = 0x9b55aaa6 (gdb) print idx $5 = 0x9b55aaa6 (gdb) bt #0 hsearch_r (item=..., action=action@entry=ENV_FIND, retval=retval@entry=0xff002890, htab=0x4050288 <env_htab>, flag=flag@entry=0x0) at lib/hashtable.c:313 #1 0x04026d1c in env_get (name=0x4042c81 "fdtcontroladdr") at env/common.c:122 #2 0x04026d74 in env_get_hex (varname=<optimized out>, default_val=default_val@entry=0x0) at env/common.c:81 #3 0x04031b68 in fdtdec_setup () at lib/fdtdec.c:1659 #4 0x04013188 in initcall_run_list (init_sequence=0x404bd90 <init_sequence_f>) at include/initcall.h:46 #5 board_init_f (boot_flags=<optimized out>) at common/board_f.c:981 #6 0x040001e4 in in_flash () at arch/powerpc/cpu/mpc8xx/start.S:174 $ git log -1 --oneline 50128aeb0f8 (HEAD) cyclic: get rid of cyclic_init() Reverting that commit on top of v2023.01 allows a successful boot. Thanks Christophe