We've recently applied the 2.6.13 patch. We're running on an embedded platform using 3 of the cpm uart ports on an 8xx cpu. After applying the 2.6.13 patch the non-console uarts no longer work. Upon investigation, we have found that cpu2cpm_addr() is giving us invalid results for memory addresses derived from dma_alloc_coherent(). This causes the cpm to hang. We believe that the better approach would be to use the dma address supplied by the call to dma_alloc_coherent() instead of trying to convert using bus_to_virt() and virt_to_bus(). We believe this is the approach taken by other drivers in the 2.6 kernel. Any comments? Thanks for your help.
-Chris cmurch at mrv.com