On Wed, Jun 08, 2016 at 03:48:17PM +0200, Cédric Le Goater wrote:
So it is hd:3 and then, openbios dies directly :
0xfff0d6c8: mr r28,r3
0xfff0d6cc: add r30,r30,r3
0xfff0d6d0: add r31,r31,r3
0xfff0d6d4: b 0xfff0d6a0
0xfff0d6a0: mr r3,r29
0xfff0d6a4: li r5,0
0xfff0d6a8: mr r6,r30
0xfff0d6ac: bl 0xfff279e8
0x00000300: .long 0x0
A DSI. How can BL cause a DSI? Shouldn't it be an ISI, if fff279e8
isn't mapped? What else can be going on, is the logging complete, or
did e.g. one of the first insns of fff279e8 cause the DSI?
DSISR, DAR, SRR0/1 here will tell you more.
0x00000700: .long 0x0
That's because the code at 300 is 0, which is an invalid opcode.
which is this loop in bootcode_load() :
bootcode = loadbase;
offset = 0;
if (seek_io(fd, offset) == -1)
count = read_io(fd, (void *)bootcode, 512);
offset += count;
bootcode += count;
The failing call is to seek_io.