Re: virt_to_bus and virt_to_phys on Apple G4 target
[EMAIL PROTECTED] writes: > 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. Paul. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: virt_to_bus and virt_to_phys on Apple G4 target
[EMAIL PROTECTED] writes: 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. Paul. - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
virt_to_bus and virt_to_phys on Apple G4 target
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 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? 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? thanks, Daljeet. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
virt_to_bus and virt_to_phys on Apple G4 target
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 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? 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? thanks, Daljeet. - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/