This patchset primarily adds Broadcom FlexRM reset module for VFIO platform driver. The patches are based on Linux-4.14-rc3 and can also be found at flexrm-vfio-v10 branch of https://github.com/Broadcom/arm64-linux.git Changes since v9: - Make GPL comment header similar to other Broadcom drivers Changes since v8: - Add missing "ring_num++" in vfio_platform_bcmflexrm_reset() Changes since v7: - Use "ret |= rc" instead of "ret = rc" in vfio_platform_bcmflexrm_reset() Changes since v6: - Update the FlexRM ring flush sequence as suggested by HW folks - Shutdown all FlexRM ring anyway even if it fails on any of the FlexRM rings - Use dev_warn() instead of pr_warn() Changes since v5: - Make kconfig option VFIO_PLATFORM_BCMFLEXRM_RESET default to ARCH_BCM_IPROC Changes since v4: - Use "--timeout" instead of "timeout--" in vfio_platform_bcmflexrm_shutdown() Changes since v3: - Improve "depends on" for Kconfig option VFIO_PLATFORM_BCMFLEXRM_RESET - Fix typo in pr_warn() called by vfio_platform_bcmflexrm_shutdown() - Return error from vfio_platform_bcmflexrm_shutdown() when FlexRM ring flush timeout happens Changes since v2: - Remove PATCH1 because fixing VFIO no-IOMMU mode is a separate topic Changes since v1: - Remove iommu_present() check in vfio_iommu_group_get() - Drop PATCH1-to-PATCH3 because IOMMU_CAP_BYPASS is not required - Move additional comments out of license header in vfio_platform_bcmflexrm.c Anup Patel (1): vfio: platform: reset: Add Broadcom FlexRM reset module drivers/vfio/platform/reset/Kconfig | 9 ++ drivers/vfio/platform/reset/Makefile | 1 + .../vfio/platform/reset/vfio_platform_bcmflexrm.c | 113 +++++++++++++++++++++ 3 files changed, 123 insertions(+) create mode 100644 drivers/vfio/platform/reset/vfio_platform_bcmflexrm.c -- 2.7.4