Joerg Roedel
2016-12-15 17:01:23 UTC
Hi Linus,
This time there are a few patches from the driver-core tree in this
pull-request, which you already pulled from Greg. The reason is that I
had to merge the driver-core-next branch to get the device dependency
link patches into my tree, because the changes for the Exynos IOMMU
driver in this pull-request depend on them.
This is also the reason for a minor merge conflict in
drivers/base/power/main.c caused by the IOMMU updates this time.
Also the ACPI/IORT patches make changes outside of the IOMMU code. These
changes were acked by their respective maintainers.
With this disclaimer in mind, here is the meat:
The following changes since commit 3e5de27e940d00d8d504dfb96625fb654f641509:
Linux 4.9-rc8 (2016-12-04 12:50:51 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git tags/iommu-updates-v4.10
for you to fetch changes up to 1465f481460cbfc60dc119873099d89a58f9be4f:
Merge branches 'arm/mediatek', 'arm/smmu', 'x86/amd', 's390', 'core' and 'arm/exynos' into next (2016-12-06 17:32:16 +0100)
----------------------------------------------------------------
IOMMU Updates for Linux v4.10
These changes include:
* Support for the ACPI IORT table on ARM systems and patches to
make the ARM-SMMU driver make use of it
* Conversion of the Exynos IOMMU driver to device dependency
links and implementation of runtime pm support based on that
conversion
* Update the Mediatek IOMMU driver to use the new
struct device->iommu_fwspec member
* Implementation of dma_map/unmap_resource in the generic ARM
dma-iommu layer
* A number of smaller fixes and improvements all over the place
----------------------------------------------------------------
Arnd Bergmann (1):
debugfs: improve DEFINE_DEBUGFS_ATTRIBUTE for !CONFIG_DEBUG_FS
Ben Hutchings (1):
driver core: Add deferred_probe attribute to devices in sysfs
Bhumika Goyal (3):
iommu/arm-smmu: Constify iommu_gather_ops structures
iommu/arm-smmu: Constify iommu_gather_ops structures
iommu/io-pgtable-arm: Use const and __initconst for iommu_gather_ops structures
Dan Carpenter (1):
iommu/amd: Missing error code in amd_iommu_init_device()
Dmitry Torokhov (1):
driver-core: add test module for asynchronous probing
Geliang Tang (1):
iommu/s390: Drop duplicate header pci.h
Greg Kroah-Hartman (1):
Merge 4.9-rc3 into driver-core-next
Joerg Roedel (3):
Merge remote-tracking branch 'gregkh-driver-core/driver-core-next' into arm/exynos
Merge branch 'for-joerg/arm-smmu/updates' of git://git.kernel.org/.../will/linux into arm/smmu
Merge branches 'arm/mediatek', 'arm/smmu', 'x86/amd', 's390', 'core' and 'arm/exynos' into next
Julia Lawall (1):
kobject: improve function-level documentation
Kefeng Wang (1):
iommu/io-pgtable-arm: Use for_each_set_bit to simplify the code
Lorenzo Pieralisi (17):
ACPI: Add FWNODE_ACPI_STATIC fwnode type
ACPI/IORT: Introduce linker section for IORT entries probing
ACPI/IORT: Add support for IOMMU fwnode registration
iommu: Make of_iommu_set/get_ops() DT agnostic
iommu/arm-smmu: Convert struct device of_node to fwnode usage
iommu/arm-smmu-v3: Convert struct device of_node to fwnode usage
ACPI: Implement acpi_dma_configure
ACPI/IORT: Add node match function
ACPI/IORT: Add support for ARM SMMU platform devices creation
iommu/arm-smmu-v3: Split probe functions into DT/generic portions
iommu/arm-smmu-v3: Add IORT configuration
iommu/arm-smmu: Split probe functions into DT/generic portions
iommu/arm-smmu: Add IORT configuration
ACPI/IORT: Replace rid map type with type mask
ACPI/IORT: Add single mapping function
ACPI/IORT: Introduce iort_iommu_configure
ACPI/IORT: Make dma masks set-up IORT specific
Lucas Stach (1):
iommu/amd: Tell kmemleak about the irq_remap_table
Marek Szyprowski (8):
iommu/exynos: Add support for page access protection bits
iommu/exynos: Remove excessive, useless debug
iommu/exynos: Remove dead code
iommu/exynos: Simplify internal enable/disable functions
iommu/exynos: Set master device once on boot
iommu/exynos: Rework and fix internal locking
iommu/exynos: Add runtime pm support
iommu/exynos: Use device dependency links to control runtime pm
Nipun Gupta (1):
iommu/arm-smmu: Set SMTNMB_TLBEN in ACR to enable caching of bypass entries
Rafael J. Wysocki (5):
driver core: Add a wrapper around __device_release_driver()
driver core: Functional dependencies tracking support
PM / sleep: Make async suspend/resume of devices use device links
PM / runtime: Use device links
PM / runtime: Optimize the use of device links
Robin Murphy (10):
iommu/mediatek: Convert M4Uv2 to iommu_fwspec
iommu/mediatek: Convert M4Uv1 to iommu_fwspec
iommu/dma: Implement dma_{map,unmap}_resource()
arm64: Wire up iommu_dma_{map, unmap}_resource()
iommu: Allow taking a reference on a group directly
iommu/arm-smmu: Fix group refcounting
iommu/amd: Fix group refcounting
iommu/mediatek: Fix M4Uv2 group refcounting
iommu/mediatek: Fix M4Uv1 group refcounting
iommu/iova: Extend cached node lookup condition
Russell King (1):
iommu/mediatek: Convert DT component matching to component_match_add_release()
Sudeep Holla (4):
drivers: base: cacheinfo: fix x86 with CONFIG_OF enabled
drivers: base: cacheinfo: fix boot error message when acpi is enabled
drivers: base: cacheinfo: add pr_fmt logging
drivers: base: cacheinfo: support DT overrides for cache properties
.../ABI/testing/sysfs-devices-deferred_probe | 12 +
arch/arm64/mm/dma-mapping.c | 2 +
arch/x86/kernel/cpu/intel_cacheinfo.c | 2 +
drivers/acpi/arm64/iort.c | 607 ++++++++++++++++++++-
drivers/acpi/glue.c | 4 +-
drivers/acpi/scan.c | 33 ++
drivers/base/Kconfig | 2 +
drivers/base/Makefile | 2 +
drivers/base/base.h | 15 +
drivers/base/cacheinfo.c | 138 ++++-
drivers/base/core.c | 578 ++++++++++++++++++++
drivers/base/dd.c | 79 ++-
drivers/base/power/main.c | 87 ++-
drivers/base/power/power.h | 10 +
drivers/base/power/runtime.c | 174 +++++-
drivers/base/test/Kconfig | 9 +
drivers/base/test/Makefile | 1 +
drivers/base/test/test_async_driver_probe.c | 171 ++++++
drivers/iommu/amd_iommu.c | 2 +
drivers/iommu/amd_iommu_init.c | 4 +
drivers/iommu/amd_iommu_v2.c | 4 +-
drivers/iommu/arm-smmu-v3.c | 104 +++-
drivers/iommu/arm-smmu.c | 177 ++++--
drivers/iommu/dma-iommu.c | 24 +-
drivers/iommu/exynos-iommu.c | 293 +++++-----
drivers/iommu/io-pgtable-arm-v7s.c | 5 +-
drivers/iommu/io-pgtable-arm.c | 7 +-
drivers/iommu/iommu.c | 53 ++
drivers/iommu/iova.c | 2 +-
drivers/iommu/mtk_iommu.c | 85 +--
drivers/iommu/mtk_iommu.h | 11 +-
drivers/iommu/mtk_iommu_v1.c | 105 ++--
drivers/iommu/of_iommu.c | 39 --
drivers/iommu/s390-iommu.c | 1 -
drivers/pci/probe.c | 3 +-
include/acpi/acpi_bus.h | 2 +
include/asm-generic/vmlinux.lds.h | 1 +
include/linux/acpi.h | 26 +
include/linux/acpi_iort.h | 16 +
include/linux/cacheinfo.h | 1 +
include/linux/debugfs.h | 44 +-
include/linux/device.h | 86 +++
include/linux/dma-iommu.h | 4 +
include/linux/fwnode.h | 3 +-
include/linux/iommu.h | 15 +
include/linux/of_iommu.h | 12 +-
include/linux/pm.h | 2 +
include/linux/pm_runtime.h | 10 +
lib/kobject_uevent.c | 6 +-
49 files changed, 2621 insertions(+), 452 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-devices-deferred_probe
create mode 100644 drivers/base/test/Kconfig
create mode 100644 drivers/base/test/Makefile
create mode 100644 drivers/base/test/test_async_driver_probe.c
Please pull.
Thanks,
Joerg
This time there are a few patches from the driver-core tree in this
pull-request, which you already pulled from Greg. The reason is that I
had to merge the driver-core-next branch to get the device dependency
link patches into my tree, because the changes for the Exynos IOMMU
driver in this pull-request depend on them.
This is also the reason for a minor merge conflict in
drivers/base/power/main.c caused by the IOMMU updates this time.
Also the ACPI/IORT patches make changes outside of the IOMMU code. These
changes were acked by their respective maintainers.
With this disclaimer in mind, here is the meat:
The following changes since commit 3e5de27e940d00d8d504dfb96625fb654f641509:
Linux 4.9-rc8 (2016-12-04 12:50:51 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git tags/iommu-updates-v4.10
for you to fetch changes up to 1465f481460cbfc60dc119873099d89a58f9be4f:
Merge branches 'arm/mediatek', 'arm/smmu', 'x86/amd', 's390', 'core' and 'arm/exynos' into next (2016-12-06 17:32:16 +0100)
----------------------------------------------------------------
IOMMU Updates for Linux v4.10
These changes include:
* Support for the ACPI IORT table on ARM systems and patches to
make the ARM-SMMU driver make use of it
* Conversion of the Exynos IOMMU driver to device dependency
links and implementation of runtime pm support based on that
conversion
* Update the Mediatek IOMMU driver to use the new
struct device->iommu_fwspec member
* Implementation of dma_map/unmap_resource in the generic ARM
dma-iommu layer
* A number of smaller fixes and improvements all over the place
----------------------------------------------------------------
Arnd Bergmann (1):
debugfs: improve DEFINE_DEBUGFS_ATTRIBUTE for !CONFIG_DEBUG_FS
Ben Hutchings (1):
driver core: Add deferred_probe attribute to devices in sysfs
Bhumika Goyal (3):
iommu/arm-smmu: Constify iommu_gather_ops structures
iommu/arm-smmu: Constify iommu_gather_ops structures
iommu/io-pgtable-arm: Use const and __initconst for iommu_gather_ops structures
Dan Carpenter (1):
iommu/amd: Missing error code in amd_iommu_init_device()
Dmitry Torokhov (1):
driver-core: add test module for asynchronous probing
Geliang Tang (1):
iommu/s390: Drop duplicate header pci.h
Greg Kroah-Hartman (1):
Merge 4.9-rc3 into driver-core-next
Joerg Roedel (3):
Merge remote-tracking branch 'gregkh-driver-core/driver-core-next' into arm/exynos
Merge branch 'for-joerg/arm-smmu/updates' of git://git.kernel.org/.../will/linux into arm/smmu
Merge branches 'arm/mediatek', 'arm/smmu', 'x86/amd', 's390', 'core' and 'arm/exynos' into next
Julia Lawall (1):
kobject: improve function-level documentation
Kefeng Wang (1):
iommu/io-pgtable-arm: Use for_each_set_bit to simplify the code
Lorenzo Pieralisi (17):
ACPI: Add FWNODE_ACPI_STATIC fwnode type
ACPI/IORT: Introduce linker section for IORT entries probing
ACPI/IORT: Add support for IOMMU fwnode registration
iommu: Make of_iommu_set/get_ops() DT agnostic
iommu/arm-smmu: Convert struct device of_node to fwnode usage
iommu/arm-smmu-v3: Convert struct device of_node to fwnode usage
ACPI: Implement acpi_dma_configure
ACPI/IORT: Add node match function
ACPI/IORT: Add support for ARM SMMU platform devices creation
iommu/arm-smmu-v3: Split probe functions into DT/generic portions
iommu/arm-smmu-v3: Add IORT configuration
iommu/arm-smmu: Split probe functions into DT/generic portions
iommu/arm-smmu: Add IORT configuration
ACPI/IORT: Replace rid map type with type mask
ACPI/IORT: Add single mapping function
ACPI/IORT: Introduce iort_iommu_configure
ACPI/IORT: Make dma masks set-up IORT specific
Lucas Stach (1):
iommu/amd: Tell kmemleak about the irq_remap_table
Marek Szyprowski (8):
iommu/exynos: Add support for page access protection bits
iommu/exynos: Remove excessive, useless debug
iommu/exynos: Remove dead code
iommu/exynos: Simplify internal enable/disable functions
iommu/exynos: Set master device once on boot
iommu/exynos: Rework and fix internal locking
iommu/exynos: Add runtime pm support
iommu/exynos: Use device dependency links to control runtime pm
Nipun Gupta (1):
iommu/arm-smmu: Set SMTNMB_TLBEN in ACR to enable caching of bypass entries
Rafael J. Wysocki (5):
driver core: Add a wrapper around __device_release_driver()
driver core: Functional dependencies tracking support
PM / sleep: Make async suspend/resume of devices use device links
PM / runtime: Use device links
PM / runtime: Optimize the use of device links
Robin Murphy (10):
iommu/mediatek: Convert M4Uv2 to iommu_fwspec
iommu/mediatek: Convert M4Uv1 to iommu_fwspec
iommu/dma: Implement dma_{map,unmap}_resource()
arm64: Wire up iommu_dma_{map, unmap}_resource()
iommu: Allow taking a reference on a group directly
iommu/arm-smmu: Fix group refcounting
iommu/amd: Fix group refcounting
iommu/mediatek: Fix M4Uv2 group refcounting
iommu/mediatek: Fix M4Uv1 group refcounting
iommu/iova: Extend cached node lookup condition
Russell King (1):
iommu/mediatek: Convert DT component matching to component_match_add_release()
Sudeep Holla (4):
drivers: base: cacheinfo: fix x86 with CONFIG_OF enabled
drivers: base: cacheinfo: fix boot error message when acpi is enabled
drivers: base: cacheinfo: add pr_fmt logging
drivers: base: cacheinfo: support DT overrides for cache properties
.../ABI/testing/sysfs-devices-deferred_probe | 12 +
arch/arm64/mm/dma-mapping.c | 2 +
arch/x86/kernel/cpu/intel_cacheinfo.c | 2 +
drivers/acpi/arm64/iort.c | 607 ++++++++++++++++++++-
drivers/acpi/glue.c | 4 +-
drivers/acpi/scan.c | 33 ++
drivers/base/Kconfig | 2 +
drivers/base/Makefile | 2 +
drivers/base/base.h | 15 +
drivers/base/cacheinfo.c | 138 ++++-
drivers/base/core.c | 578 ++++++++++++++++++++
drivers/base/dd.c | 79 ++-
drivers/base/power/main.c | 87 ++-
drivers/base/power/power.h | 10 +
drivers/base/power/runtime.c | 174 +++++-
drivers/base/test/Kconfig | 9 +
drivers/base/test/Makefile | 1 +
drivers/base/test/test_async_driver_probe.c | 171 ++++++
drivers/iommu/amd_iommu.c | 2 +
drivers/iommu/amd_iommu_init.c | 4 +
drivers/iommu/amd_iommu_v2.c | 4 +-
drivers/iommu/arm-smmu-v3.c | 104 +++-
drivers/iommu/arm-smmu.c | 177 ++++--
drivers/iommu/dma-iommu.c | 24 +-
drivers/iommu/exynos-iommu.c | 293 +++++-----
drivers/iommu/io-pgtable-arm-v7s.c | 5 +-
drivers/iommu/io-pgtable-arm.c | 7 +-
drivers/iommu/iommu.c | 53 ++
drivers/iommu/iova.c | 2 +-
drivers/iommu/mtk_iommu.c | 85 +--
drivers/iommu/mtk_iommu.h | 11 +-
drivers/iommu/mtk_iommu_v1.c | 105 ++--
drivers/iommu/of_iommu.c | 39 --
drivers/iommu/s390-iommu.c | 1 -
drivers/pci/probe.c | 3 +-
include/acpi/acpi_bus.h | 2 +
include/asm-generic/vmlinux.lds.h | 1 +
include/linux/acpi.h | 26 +
include/linux/acpi_iort.h | 16 +
include/linux/cacheinfo.h | 1 +
include/linux/debugfs.h | 44 +-
include/linux/device.h | 86 +++
include/linux/dma-iommu.h | 4 +
include/linux/fwnode.h | 3 +-
include/linux/iommu.h | 15 +
include/linux/of_iommu.h | 12 +-
include/linux/pm.h | 2 +
include/linux/pm_runtime.h | 10 +
lib/kobject_uevent.c | 6 +-
49 files changed, 2621 insertions(+), 452 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-devices-deferred_probe
create mode 100644 drivers/base/test/Kconfig
create mode 100644 drivers/base/test/Makefile
create mode 100644 drivers/base/test/test_async_driver_probe.c
Please pull.
Thanks,
Joerg