Re: [PATCH] pci: acpi: Generic function for setting up PCI device DMA coherency

From: Bjorn Helgaas
Date: Mon Aug 24 2015 - 16:15:31 EST


On Mon, Aug 24, 2015 at 12:09 PM, Suravee Suthikulpanit
<Suravee.Suthikulpanit@xxxxxxx> wrote:

>>> commit 84cfb2213cd400fef227ec0d7829ec4e12895da9
>>> Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
>>> Date: Thu Aug 13 19:49:52 2015 -0500
>>>
>>> ACPI / scan: Rename acpi_check_dma() to acpi_dma_is_coherent()
>>>
>>> The name "acpi_check_dma()" doesn't give any much indication about
>>> what
>>> exactly it checks. The function also returns information both as a
>>> normal
>>> return value and as the "bool *coherent" return parameter. But
>>> "*coherent"
>>> doesn't actually give any extra information: it is unchanged when
>>> returning
>>> false and set to true when returning true.
>>>
>>> Rename acpi_check_dma() to acpi_dma_is_coherent() so the callers
>>> read more
>>> naturally. Drop the return parameter and just use the function
>>> return
>>> value.
>>>
>>> Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
>
>
> This was because, at one point, we wanted to be able to differentiate
> between the case _CCA=0 and missing _CCA in ARM64, where we would support
> DMA (using arch-specific cache maintenance) if _CCA=0, and disable DMA when
> missing _CCA on ARM64.
>
> It seems like the logic is now required (please see
> https://www.mail-archive.com/linux-usb@xxxxxxxxxxxxxxx/msg62735.html). So,
> we would need the true/false return, and the coherent variable to be able to
> differentiate between the two cases.
>
> Please let me know what you think.

It's hard for me to comment without seeing the actual patches. I
think returning two values (_CCA-seen and coherent) is a confusing
interface.
--
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/