OSDN Git Service

ACPI / scan: Refactor _CCA enforcement
authorRobin Murphy <robin.murphy@arm.com>
Thu, 6 Dec 2018 21:20:49 +0000 (13:20 -0800)
committerChristoph Hellwig <hch@lst.de>
Thu, 13 Dec 2018 20:06:13 +0000 (21:06 +0100)
commite5361ca29f2fea345c08d2b5cb5e3b1840cbafb8
tree697be029cf1427e187d1547d376c719b185b632b
parent90ac706e98fcb24fb0b0a259558987f33cc2f0f6
ACPI / scan: Refactor _CCA enforcement

Rather than checking the DMA attribute at each callsite, just pass it
through for acpi_dma_configure() to handle directly. That can then deal
with the relatively exceptional DEV_DMA_NOT_SUPPORTED case by explicitly
installing dummy DMA ops instead of just skipping setup entirely. This
will then free up the dev->dma_ops == NULL case for some valuable
fastpath optimisations.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Jesper Dangaard Brouer <brouer@redhat.com>
Tested-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Tony Luck <tony.luck@intel.com>
drivers/acpi/scan.c
drivers/base/platform.c
drivers/pci/pci-driver.c