Michael Buesch wrote: > On Tuesday 08 July 2008 19:40:06 Steve Brown wrote: > >> There appears to be no function like pci_set_consistent_dma_mask to set >> the coherent mask for a non-pci device. >> >> What is the "proper" way to set it? >> >> The context for the question is a recent change to ssb_dma_set_mask() in >> drivers/ssb/main.c that removed the somewhat fragile, direct >> manipulation of dma_mask and coherent_dma_mask in favor of a call to >> dma_set_mask(). >> > > Note that SSB devices use the dma_*** API for doing DMA remappings. > So it uses dma_set_mask() for setting the mask. > > I can't find any dma_*** routine that references coherent_dma_mask. It looks like dma_set_mask() doesn't handle the case where the device doesn't support coherent dma (CONFIG_DMA_NONCOHERENT=y). Would this be the correct patch to handle that case? Steve