Re: [PATCH 2/5] [POWERPC] 8xx: generic 8xx code arch/powerpc port
flat view
From: Dan Malek <hidden>
Date: 2006-11-18 01:31:04
On Nov 17, 2006, at 3:00 AM, Christoph Hellwig wrote:
this is used by arch/ppc/fec.c to set mapping uncachable, which seems rather odd to me.
I thought arch/ppc/fec.c is dead in favor of the "generic" version in the drivers/net directory? We use the va_to_pte() functions to find the mappings to create "coherent" cache areas by changing the cache attributes of the vmalloc() space. We can't use virt_to_phys() or similar associated functions because they simply do the kernel virtual arithmetic and don't return the proper PTEs for for changing these attributes. I believe this is also used on the 4xx, but I could be mistaken.
..... For now we'll have to keep it I think, but it might make sense to move the implementation to fec.c.
I don't know what version of fec.c you are looking at, but it should use the dma_alloc_coherent() functions and be stashing both the physical and virtual addresses. I made this change long ago and I hope it hasn't been lost. The coherent dma functions will in turn use the va_to_pte() (or associated functions) mentioned above. Thanks. -- Dan