hi,Jun Sun£¬ ÔÚ 2001-09-19 12:39:00 you wrote£º > >> >It is typically much easier to modify PCI device BARS so that they do coincide >> >with the same physical address. You can control that by using the correct >> >starting address for PCI MEM space in pci_auto.c resource assignment. >> It seems a good way to solve the ioremap problem and X problem.But virt_to_bus >> & bus_to_virt problem remains? >> > >What is the virt_to_bus() problem? Is the address beyond 512MB (phy addr)? No,I mean problem caused different cpu & pci address space.from pci's view, the main memory is at address 0x80000000-0x90000000 in p6032.But for cpu, they are 0x0-0x10000000.So current virt_to_bus & bus_to_virt won't work. >If PCI mem (BUS) address is identical to phy addr, you should not have problem >unless the address is beyond 512MB. yes:).When i solve the 8259,i will try to make them same. > >BTW, virt_to_bus()/bus_to_virt() are deprecicated. See >Documentation/DMA-mapping.txt. I think the "depreciated" is only for direct usage: they are used in arch/mips/pci-dma.c to implement new interface pci_alloc_consistent. And there are still many driver using them(grep tell me).Am i missing something? > >Jun Regards Zhang Fuxin fxzhang@ict.ac.cn