Re: virt_to_bus and virt_to_phys on Apple G4 target

2001-07-04 Thread Paul Mackerras

[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

2001-07-04 Thread Paul Mackerras

[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

2001-07-02 Thread mdaljeet

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

2001-07-02 Thread mdaljeet

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/