Crie o kernel powerpc e inicialize o kernel powerpc no qemu

0

Eu compilei um kernel Linux e gerou um sistema de arquivos raiz usando buildroot para o PowerPC de 64 bits. A CPU alvo é o POWER7.

Saída do buildroot:

1] rootfs.cpio 2] rootfs.ext2 3] rootfs.tar.gz 4] vmlinux

Se eu iniciar a simulação qemu com:

qemu-system-ppc64 -m 1024 -kernel output/images/vmlinux -initrd output/images/rootfs.cpio -serial stdio

Eu recebo:

No console specified using screen & keyboard
Detected RAM kernel at 400000 (1427538 bytes)
  Welcome to Open Firmware

  Copyright (c) 2004, 2011 IBM Corporation All rights reserved.
  This program and the accompanying materials are made available
  under the terms of the BSD License available at
  http://www.opensource.org/licenses/bsd-license.php

Booting from memory...
OF stdout device is: /pci@800000020000000/vga@0
Preparing to boot Linux version 4.13.16 (root@CPU03) (gcc version 6.4.0 (Buildroot 2017.11-rc2-00050-gad477b0-dirty)) #0 SMP Mon Dec 18 19:47:46 IST 2017
Detected machine type: 0000000000000101
command line:
Max number of cores passed to firmware: 32 (NR_CPUS = 32)
Calling ibm,client-architecture-support... done
memory layout at init:
  memory_limit : 0000000000000000 (16 MB aligned)
  alloc_bottom : 000000000182c000
  alloc_top    : 0000000030000000
  alloc_top_hi : 0000000040000000
  rmo_top      : 0000000030000000
  ram_top      : 0000000040000000
found display   : /pci@800000020000000/vga@0, opening... done
Setting btext !
W=800 H=600 LB=3200 addr=0x0000000000000002
instantiating rtas at 0x000000002ffff000... done
prom_hold_cpus: skipped
copying OF device tree...
Building dt strings...
Building dt structure...
Device tree strings 0x000000000422d000 -> 0x000000000422dabf
Device tree struct  0x000000000422e000 -> 0x0000000004232000
Quiescing Open Firmware ...
Booting Linux via __start() @ 0x0000000000400000 ...

Se eu iniciar qemu com:

qemu-system-ppc64 -M pseries -cpu POWER7 -m 1024 -kernel output/images/vmlinux -append 'console=hvc0 root=/dev/sda' -drive file=output/images/rootfs.ext2,if=scsi,index=0,format=raw -serial stdio

Eu recebo:

No console specified using screen & keyboard
Detected RAM kernel at 400000 (1427538 bytes)
  Welcome to Open Firmware

  Copyright (c) 2004, 2011 IBM Corporation All rights reserved.
  This program and the accompanying materials are made available
  under the terms of the BSD License available at
  http://www.opensource.org/licenses/bsd-license.php

Booting from memory...
OF stdout device is: /pci@800000020000000/vga@0
Preparing to boot Linux version 4.13.16 (root@CPU03) (gcc version 6.4.0 (Buildroot 2017.11-rc2-00050-gad477b0-dirty)) #0 SMP Mon Dec 18 19:47:46 IST 2017
Detected machine type: 0000000000000101
command line: console=hvc0 root=/dev/sda
Max number of cores passed to firmware: 32 (NR_CPUS = 32)
Calling ibm,client-architecture-support... done
memory layout at init:
  memory_limit : 0000000000000000 (16 MB aligned)
  alloc_bottom : 000000000182c000
  alloc_top    : 0000000030000000
  alloc_top_hi : 0000000040000000
  rmo_top      : 0000000030000000
  ram_top      : 0000000040000000
found display   : /pci@800000020000000/vga@0, opening... done
Setting btext !
W=800 H=600 LB=3200 addr=0x0000000000000002
instantiating rtas at 0x000000002ffff000... done
prom_hold_cpus: skipped
copying OF device tree...
Building dt strings...
Building dt structure...
Device tree strings 0x000000000182d000 -> 0x000000000182dac4
Device tree struct  0x000000000182e000 -> 0x0000000001832000
Quiescing Open Firmware ...
Booting Linux via __start() @ 0x0000000000400000 ...

O que eu fiz de errado e o que posso fazer para corrigir isso?

    
por Shail Thacker 29.12.2017 / 09:46

0 respostas