722
716
pci_config_set_prog_interface(dev->config, 0x00);
724
718
/* set the north bridge register mapping */
725
memory_region_init_io(&s->iomem, &bonito_ops, s,
719
memory_region_init_io(&s->iomem, OBJECT(s), &bonito_ops, s,
726
720
"north-bridge-register", BONITO_INTERNAL_REG_SIZE);
727
721
sysbus_init_mmio(sysbus, &s->iomem);
728
722
sysbus_mmio_map(sysbus, 0, BONITO_INTERNAL_REG_BASE);
730
724
/* set the north bridge pci configure mapping */
731
memory_region_init_io(&phb->conf_mem, &bonito_pciconf_ops, s,
725
memory_region_init_io(&phb->conf_mem, OBJECT(s), &bonito_pciconf_ops, s,
732
726
"north-bridge-pci-config", BONITO_PCICONFIG_SIZE);
733
727
sysbus_init_mmio(sysbus, &phb->conf_mem);
734
728
sysbus_mmio_map(sysbus, 1, BONITO_PCICONFIG_BASE);
736
730
/* set the south bridge pci configure mapping */
737
memory_region_init_io(&phb->data_mem, &bonito_spciconf_ops, s,
731
memory_region_init_io(&phb->data_mem, OBJECT(s), &bonito_spciconf_ops, s,
738
732
"south-bridge-pci-config", BONITO_SPCICONFIG_SIZE);
739
733
sysbus_init_mmio(sysbus, &phb->data_mem);
740
734
sysbus_mmio_map(sysbus, 2, BONITO_SPCICONFIG_BASE);
742
memory_region_init_io(&s->iomem_ldma, &bonito_ldma_ops, s,
736
memory_region_init_io(&s->iomem_ldma, OBJECT(s), &bonito_ldma_ops, s,
744
738
sysbus_init_mmio(sysbus, &s->iomem_ldma);
745
739
sysbus_mmio_map(sysbus, 3, 0xbfe00200);
747
memory_region_init_io(&s->iomem_cop, &bonito_cop_ops, s,
741
memory_region_init_io(&s->iomem_cop, OBJECT(s), &bonito_cop_ops, s,
749
743
sysbus_init_mmio(sysbus, &s->iomem_cop);
750
744
sysbus_mmio_map(sysbus, 4, 0xbfe00300);
752
746
/* Map PCI IO Space 0x1fd0 0000 - 0x1fd1 0000 */
753
s->bonito_pciio_start = BONITO_PCIIO_BASE;
754
s->bonito_pciio_length = BONITO_PCIIO_SIZE;
755
isa_mem_base = s->bonito_pciio_start;
756
isa_mmio_init(s->bonito_pciio_start, s->bonito_pciio_length);
747
memory_region_init_alias(&s->bonito_pciio, OBJECT(s), "isa_mmio",
748
get_system_io(), 0, BONITO_PCIIO_SIZE);
749
sysbus_init_mmio(sysbus, &s->bonito_pciio);
750
sysbus_mmio_map(sysbus, 5, BONITO_PCIIO_BASE);
758
752
/* add pci local io mapping */
759
s->bonito_localio_start = BONITO_DEV_BASE;
760
s->bonito_localio_length = BONITO_DEV_SIZE;
761
isa_mmio_init(s->bonito_localio_start, s->bonito_localio_length);
753
memory_region_init_alias(&s->bonito_localio, OBJECT(s), "isa_mmio",
754
get_system_io(), 0, BONITO_DEV_SIZE);
755
sysbus_init_mmio(sysbus, &s->bonito_localio);
756
sysbus_mmio_map(sysbus, 6, BONITO_DEV_BASE);
763
758
/* set the default value of north bridge pci config */
764
759
pci_set_word(dev->config + PCI_COMMAND, 0x0000);