[OpenBIOS] Adding support for more CPUs

Mark Cave-Ayland mark.cave-ayland at ilande.co.uk
Sat Jan 20 11:05:56 CET 2018


On 19/01/18 12:26, Jd Lyons via OpenBIOS wrote:

> As an addition to my post at qemu-ppc, I’d like to add support for a few 
> more cpus to Openbios, so when I get KVM to support -cpu host: openbios 
> will be able to boot from the cpu’s I have.
> 
> Right now I have a Powerbook6,8 with a 7447a ( PRV 80030105 ) I think 
> this CPU is V1.5.
> 
> I also have a iBook with a 750fx ( PVR 70000112 ).
> 
> Soon I will have a Quicksilver with Dual 1Ghz G4’s, and an iBook G4 with 
> a 7447a, not sure of the PVR’s yet.
> 
> So, I see that I need to edit the init.c, and I noticed we might need 
> some real values from some of the chips.
> 
> { // XXX find out real values
>          .iu_version = 0x800c0000,
>          .name = "PowerPC,74xx",
>          .icache_size = 0x8000,
>          .dcache_size = 0x8000,
>          .icache_sets = 0x80,
>          .dcache_sets = 0x80,
>          .icache_block_size = 0x20,
>          .dcache_block_size = 0x20,
>          .tlb_sets = 0x40,
>          .tlb_size = 0x80,
>          .initfn = cpu_750_init,
> 
> Mark, how can I get the values needed from my CPU’s?
> 
> I’m assuming we need the values for the .icach_size etc.

On a real Mac you can see them in the CPU node in the Open Firmware 
device tree. This is how it looks in OpenBIOS (should be fairly easy to 
do the equivalent on a real Mac):


0 > dev /cpus  ok
0 > ls
fff5ba80 PowerPC,750 at 0
  ok
0 > dev PowerPC,750  ok
0 > .properties
name                      "PowerPC,750"
device_type               "cpu"
cpu-version               80301
d-cache-size              8000
i-cache-size              8000
d-cache-sets              80
i-cache-sets              80
d-cache-block-size        20
i-cache-block-size        20
tlb-sets                  40
tlb-size                  80
timebase-frequency        fd4bc0
clock-frequency           fdad680
bus-frequency             3ef1480
state                     "running"
reservation-granule-size  20
reg                       00000000
available                 00004000   07c54000
                           07e10000   781f0000
translations              00001000   00003000   00001000   00000000
                           07c58000   001b8000   07c58000   00000000
                           fff00000   00100000   07f00000   00000000
  ok


ATB,

Mark.



More information about the OpenBIOS mailing list