Revision 0f921197 hw/ppc_newworld.c

b/hw/ppc_newworld.c
114 114
    void *fw_cfg;
115 115
    void *dbdma;
116 116
    uint8_t *vga_bios_ptr;
117
    int machine_arch;
117 118

  
118 119
    linux_boot = (kernel_filename != NULL);
119 120

  
......
317 318
        }
318 319
    }
319 320
    pic = openpic_init(NULL, &pic_mem_index, smp_cpus, openpic_irqs, NULL);
320
    pci_bus = pci_pmac_init(pic);
321
    if (PPC_INPUT(env) == PPC_FLAGS_INPUT_970) {
322
        /* 970 gets a U3 bus */
323
        pci_bus = pci_pmac_u3_init(pic);
324
        machine_arch = ARCH_MAC99_U3;
325
    } else {
326
        pci_bus = pci_pmac_init(pic);
327
        machine_arch = ARCH_MAC99;
328
    }
321 329
    /* init basic PC hardware */
322 330
    pci_vga_init(pci_bus, vga_bios_offset, vga_bios_size);
323 331

  
......
364 372
    fw_cfg = fw_cfg_init(0, 0, CFG_ADDR, CFG_ADDR + 2);
365 373
    fw_cfg_add_i32(fw_cfg, FW_CFG_ID, 1);
366 374
    fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size);
367
    fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, ARCH_MAC99);
375
    fw_cfg_add_i16(fw_cfg, FW_CFG_MACHINE_ID, machine_arch);
368 376
    fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, kernel_base);
369 377
    fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size);
370 378
    if (kernel_cmdline) {

Also available in: Unified diff