> > a full dmesg might also be useful -- might help identify what > > else has mapped this. (perhaps vga@something.) > > Tha is probably I did not hava a bus_space_unmap in my code. And since > the system finds two radeon devices one is (0x1002, 0x1309) and the > other is (0x1002, 0x6604) it is passing the first one and failing in > the second one.
you say "passing the first"? does vga@pci attach instead? that is very likely the reason it is double mapped, and it may be that the PCI BARs for the other are not setup for one or the other device. a dmesg would be really useful -- even if just the parts for both radeon cards. > Is using rdev->pdev->pd_pa.pa_memt incorrect when mapping the bus space? probably. > What address should I write to the ROM BAR? i think that you shouldn't do this, without coordination with the whole PCI subsystem. see the code that is behind the PCI_CONFIGURE_NETBSD option - this is not a simple task. > Is using BUS_SPACE_MAP_PREFETCHABLE in the flags in the bus_space_map > call correct? I saw this in the code for pci_map_rom, and thought that > it might need that? this part is probably going to be fine. .mrg.