Re: [RFC v1 PATCH 1/2] of/pci: add of_pci_dma_configure() update dma configuration

From: Arnd Bergmann
Date: Tue Dec 23 2014 - 17:43:23 EST


On Tuesday 23 December 2014 12:42:05 Murali Karicheri wrote:
> > here.
>
> Arnd,
>
> I guess so. Besides we need to keep the default coherent dma mask to
> 32bit 0xffffffffull as well to work on Keystone and also in sync with
> current defaults used in pci_device_add() so that we don't break this
> behavior.
>
> Here is the summary of changes need to make on top of my existing patch.
>
> 1. of_dma_configure() - change size = dev->coherent_dma_mask to size =
> dev->coherent_dma_mask + 1. This is a new patch to fix existing code.

ok

> 2. Do the above change to of_pci_dma_configure() as well.

ok

> 3. in arch_setup_dma_ops() update the DMA mask to min((*dev->dma_mask),
> dma_base + size - 1) as
>
>
> diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
> index c17f6a9..88b4769 100644
> --- a/arch/arm/mm/dma-mapping.c
> +++ b/arch/arm/mm/dma-mapping.c
> @@ -2053,8 +2053,13 @@ void arch_setup_dma_ops(struct device *dev, u64
> dma_base, u64 size,
> {
> struct dma_map_ops *dma_ops;
>
> +
> + *dev->dma_mask = min((*dev->dma_mask), (dma_base + size - 1));
>
> I have tested this on keystone and it works fine with rootfs on PCI SATA
> harddisk. I will be doing more tests with this change. If you are in
> agreement with the above changes, I will re-spin the patch to accomodate
> them and send v1 of the same.

Ok, sounds good. I noticed that you did not put Russell into the Cc list
for the emails. Please do so when you send it again, as he may have some
additional comments.

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/