* use new PCI.h rom flags

* clean up tracing
* remove infinite loop :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42556 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Alexander von Gluck IV
2011-08-03 20:46:26 +00:00
parent cd4c994bdf
commit 77a64ff2c8
@@ -51,14 +51,14 @@ radeon_hd_getbios(radeon_info &info)
set_pci_config(info.pci, PCI_rom_base, 4, 0xffffffff); set_pci_config(info.pci, PCI_rom_base, 4, 0xffffffff);
uint32 flags = get_pci_config(info.pci, PCI_rom_base, 4); uint32 flags = get_pci_config(info.pci, PCI_rom_base, 4);
if (flags & 1) if (flags & PCI_rom_enable)
dprintf(DEVICE_NAME ": PCI ROM Disabled\n"); dprintf(DEVICE_NAME ": PCI ROM decode enabled\n");
if (flags & 2) if (flags & PCI_rom_shadow)
dprintf(DEVICE_NAME ": PCI ROM Shadowed\n"); dprintf(DEVICE_NAME ": PCI ROM shadowed\n");
if (flags & 4) if (flags & PCI_rom_copy)
dprintf(DEVICE_NAME ": PCI ROM Copied\n"); dprintf(DEVICE_NAME ": PCI ROM allocated copy\n");
if (flags & 8) if (flags & PCI_rom_bios)
dprintf(DEVICE_NAME ": PCI ROM BIOS copied\n"); dprintf(DEVICE_NAME ": PCI ROM BIOS copy\n");
uint32 rom_base = info.pci->u.h0.rom_base; uint32 rom_base = info.pci->u.h0.rom_base;
uint32 rom_size = info.pci->u.h0.rom_size; uint32 rom_size = info.pci->u.h0.rom_size;
@@ -74,6 +74,9 @@ radeon_hd_getbios(radeon_info &info)
} }
} }
TRACE("%s: seeking rom at 0x%" B_PRIX32 " [size: 0x%" B_PRIX32 "]\n",
__func__, rom_base, rom_size);
uint8* bios; uint8* bios;
status_t result = B_ERROR; status_t result = B_ERROR;
@@ -87,7 +90,7 @@ radeon_hd_getbios(radeon_info &info)
if (info.rom_area < B_OK) { if (info.rom_area < B_OK) {
dprintf(DEVICE_NAME ": failed to map rom\n"); dprintf(DEVICE_NAME ": failed to map rom\n");
result = B_ERROR;; result = B_ERROR;
} else } else
result = B_OK; result = B_OK;
@@ -107,6 +110,7 @@ radeon_hd_getbios(radeon_info &info)
} }
delete_area(rom_area); delete_area(rom_area);
} }
set_pci_config(info.pci, PCI_rom_base, 4, backuprom); set_pci_config(info.pci, PCI_rom_base, 4, backuprom);
info.shared_info->rom_phys = rom_base; info.shared_info->rom_phys = rom_base;
@@ -171,7 +175,7 @@ radeon_hd_getbios_r600(radeon_info &info)
write32(info.registers + R600_LOWER_GPIO_ENABLE, write32(info.registers + R600_LOWER_GPIO_ENABLE,
(lower_gpio_enable | 0x400)); (lower_gpio_enable | 0x400));
status_t result = radeon_hd_getbios_r600(info); status_t result = radeon_hd_getbios(info);
// restore regs // restore regs
write32(info.registers + RADEON_VIPH_CONTROL, viph_control); write32(info.registers + RADEON_VIPH_CONTROL, viph_control);
@@ -239,7 +243,7 @@ radeon_hd_init(radeon_info &info)
} }
// *** VGA rom / AtomBIOS mapping // *** VGA rom / AtomBIOS mapping
status_t foundRom = radeon_hd_getbios(info); status_t foundRom = radeon_hd_getbios_r600(info);
// Turn on write combining for the area // Turn on write combining for the area
vm_set_area_memory_type(info.framebuffer_area, vm_set_area_memory_type(info.framebuffer_area,