DMA-API: dcdbas: update DMA mask handing
authorRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 27 Jun 2013 13:14:43 +0000 (14:14 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 31 Oct 2013 14:49:16 +0000 (14:49 +0000)
dcdbas was explicitly initializing DMA masks thusly:
dcdbas_pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
dcdbas_pdev->dev.dma_mask = &dcdbas_pdev->dev.coherent_dma_mask;
which bypasses the architecture check.  Moreover, it is creating the
dcdbas_pdev device itself, and using the platform_device_register_full()
avoids some of this explicit initialization.

Convert the driver to use platform_device_register_full(), and as it
makes use of coherent DMA, also call dma_set_coherent_mask() to ensure
that the architecture gets to check the mask.

Tested-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

No differences found