• Kumar Gala's avatar
    powerpc: Dont require a dma_ops struct to set dma mask · 6471fc66
    Kumar Gala authored
    The only reason to require a dma_ops struct is to see if it has
    implemented set_dma_mask.  If not we can fall back to setting the mask
    directly.
    
    This resolves an issue with how to sequence the setting of a DMA mask
    for platform devices.  Before we had an issue in that we have no way of
    setting the DMA mask before the various low level bus notifiers get
    called that might check it (swiotlb).
    
    So now we can do:
    
    	pdev = platform_device_alloc("foobar", 0);
    	dma_set_mask(&pdev->dev, DMA_BIT_MASK(37));
    	platform_device_add(pdev);
    
    And expect the right thing to happen with the bus notifiers get called
    via platform_device_add.
    Acked-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
    6471fc66
dma.c 5.06 KB