DMA-API: others: use dma_set_coherent_mask()
The correct way for a driver to specify the coherent DMA mask is not to directly access the field in the struct device, but to use dma_set_coherent_mask(). Only arch and bus code should access this member directly. Convert all direct write accesses to using the correct API. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
4cdbb4ff7f
commit
d6cfaaba1a
3 changed files with 12 additions and 4 deletions
|
@ -144,6 +144,7 @@ static int ixp4xx_pata_probe(struct platform_device *pdev)
|
||||||
struct ata_host *host;
|
struct ata_host *host;
|
||||||
struct ata_port *ap;
|
struct ata_port *ap;
|
||||||
struct ixp4xx_pata_data *data = dev_get_platdata(&pdev->dev);
|
struct ixp4xx_pata_data *data = dev_get_platdata(&pdev->dev);
|
||||||
|
int ret;
|
||||||
|
|
||||||
cs0 = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
cs0 = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||||
cs1 = platform_get_resource(pdev, IORESOURCE_MEM, 1);
|
cs1 = platform_get_resource(pdev, IORESOURCE_MEM, 1);
|
||||||
|
@ -157,7 +158,9 @@ static int ixp4xx_pata_probe(struct platform_device *pdev)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
/* acquire resources and fill host */
|
/* acquire resources and fill host */
|
||||||
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
|
ret = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
data->cs0 = devm_ioremap(&pdev->dev, cs0->start, 0x1000);
|
data->cs0 = devm_ioremap(&pdev->dev, cs0->start, 0x1000);
|
||||||
data->cs1 = devm_ioremap(&pdev->dev, cs1->start, 0x1000);
|
data->cs1 = devm_ioremap(&pdev->dev, cs1->start, 0x1000);
|
||||||
|
|
|
@ -286,7 +286,11 @@ static struct drm_driver exynos_drm_driver = {
|
||||||
|
|
||||||
static int exynos_drm_platform_probe(struct platform_device *pdev)
|
static int exynos_drm_platform_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
|
int ret;
|
||||||
|
|
||||||
|
ret = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
return drm_platform_init(&exynos_drm_driver, pdev);
|
return drm_platform_init(&exynos_drm_driver, pdev);
|
||||||
}
|
}
|
||||||
|
|
|
@ -664,8 +664,9 @@ static int omap_dmm_probe(struct platform_device *dev)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* set dma mask for device */
|
/* set dma mask for device */
|
||||||
/* NOTE: this is a workaround for the hwmod not initializing properly */
|
ret = dma_set_coherent_mask(&dev->dev, DMA_BIT_MASK(32));
|
||||||
dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
|
if (ret)
|
||||||
|
goto fail;
|
||||||
|
|
||||||
omap_dmm->dummy_pa = page_to_phys(omap_dmm->dummy_page);
|
omap_dmm->dummy_pa = page_to_phys(omap_dmm->dummy_page);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue