Re: Using IDMA1 ( or IDMA2 ) on 860
From: John Francis <hidden>
Date: 2001-08-20 19:16:55
Dan,
quoted
/* version2 of GetChipAddress this WORKS why? */Because you can't directly access physical bus addresses from the kernel. They have to be mapped to some virtual address. The IMMR is mapped to a well known address that can generally be used anywhere in the kernel. Anything else must be mapped, as your example shows. Just make sure you do this _once_, don't keep calling ioremap() over and over or you will exhaust the VM space and get a different address every time. -- Dan
Thanks for all your help and education. One last question on this, if I have a pointer that is returned by doing ioremap_noncache() if I want to assign this pointer in buffer descriptor setup should i be doing __pa () correct? Will __pa() translate that address back to the actual physical address? John ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/