> I am running linux 2.4.2 on Apple G4 machine. I think the 'PCI bus
> addresses' and 'physical addresses' are same on this architecture. I
They are the same on an Apple G4 but not necessarily on other PowerPC
machines. It depends on the PCI host bridge implementation.
> expected the two be different but according to asm/io.h 'virt_to_bus(addr)
> = virt_to_phys(addr) + PCI_DRAM_OFFSET'. I printed the value of
> 'PCI_DRAM_OFFSET' and that come out to be zero. Is this correct?
Yes, for an Apple G4.
> If I somehow get the physical address of a user space buffer in a module
> and take this as a PCI bus address, will I be able to do DMA properly?
Yes, on an Apple G4. If you use virt_to_bus then it should work on
all PowerPC machines that I know of (that run 32-bit PPC/Linux). But
as Dave points out, you should use the interfaces described in
Documentation/DMA-mapping.txt instead if at all possible. It's quite
possible that virt_to_bus will be removed during 2.5.x development.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to email@example.com
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/