[PATCH v4 0/4] ACPI: LoongArch: Add IOVT table support

Bibo Mao posted 4 patches 2 days, 2 hours ago
MAINTAINERS                     |   9 +
arch/loongarch/Kconfig          |   1 +
drivers/acpi/Kconfig            |   4 +
drivers/acpi/Makefile           |   2 +-
drivers/acpi/bus.c              |   2 +
drivers/acpi/loongarch/Kconfig  |   7 +
drivers/acpi/loongarch/Makefile |   3 +
drivers/acpi/loongarch/init.c   |  16 ++
drivers/acpi/loongarch/init.h   |   5 +
drivers/acpi/loongarch/iovt.c   | 280 ++++++++++++++++++++++++++++++++
drivers/acpi/scan.c             |   3 +
include/acpi/actbl2.h           |   7 +
include/linux/acpi.h            |   1 +
include/linux/acpi_iovt.h       |  13 ++
14 files changed, 352 insertions(+), 1 deletion(-)
create mode 100644 drivers/acpi/loongarch/Kconfig
create mode 100644 drivers/acpi/loongarch/Makefile
create mode 100644 drivers/acpi/loongarch/init.c
create mode 100644 drivers/acpi/loongarch/init.h
create mode 100644 drivers/acpi/loongarch/iovt.c
create mode 100644 include/linux/acpi_iovt.h
[PATCH v4 0/4] ACPI: LoongArch: Add IOVT table support
Posted by Bibo Mao 2 days, 2 hours ago
I/O Virtualization Table is ACPI table for LoongArch IOMMU devices, it
is merged on ACPI Spec 6.6, and it can be located at
  https://www.loongson.cn/uploads/images/2024110517404135188.LoongArch-IO-Virtualization-Table-Specification.pdf

Here add IOVT table parsing on LoongArch system, it is for LoongArch
IOMMU driver use in future.
---
v3 ... v4:
  1. Move kernel option ACPI_IOVT from patch 4 to patch 2.
  2. Move function call with iovt_iommu_configure_id() before function
     viot_iommu_configure() in acpi_iommu_configure_id().
  3. Rename LoongArch with LOONGARCH like other architecture in file
     MAINTAINERS.
  4. Set Huacai as one of Maintainers.

v2 ... v3:
  1. Add separate patch with header file include/linux/acpi_iovt.h,
     after it is merged in acpica tree.
  2. Modify patch set since macro name is changed in acpi_iovt.h
  3. Merge patch 1 and patch 2 together.

v1 ... v2:
  1. Reorganize the patch, patch 1/4 are merged, patch 3/5/6 are merged,
     add patch 2/8 are merged together.
  2. Enrich error printk information in iovt_get_pci_iommu_fwnode().
---
Bibo Mao (4):
  ACPICA: actbl2.h: Add bit constants of the Flags field in the IOVT
    IOMMU structure
  ACPI: LoongArch: Add acpi_arch_[late]_init()
  ACPI: scan: Add support for LoongArch in acpi_iommu_configure_id()
  MAINTAINERS: Add entry for drivers/acpi/loongarch

 MAINTAINERS                     |   9 +
 arch/loongarch/Kconfig          |   1 +
 drivers/acpi/Kconfig            |   4 +
 drivers/acpi/Makefile           |   2 +-
 drivers/acpi/bus.c              |   2 +
 drivers/acpi/loongarch/Kconfig  |   7 +
 drivers/acpi/loongarch/Makefile |   3 +
 drivers/acpi/loongarch/init.c   |  16 ++
 drivers/acpi/loongarch/init.h   |   5 +
 drivers/acpi/loongarch/iovt.c   | 280 ++++++++++++++++++++++++++++++++
 drivers/acpi/scan.c             |   3 +
 include/acpi/actbl2.h           |   7 +
 include/linux/acpi.h            |   1 +
 include/linux/acpi_iovt.h       |  13 ++
 14 files changed, 352 insertions(+), 1 deletion(-)
 create mode 100644 drivers/acpi/loongarch/Kconfig
 create mode 100644 drivers/acpi/loongarch/Makefile
 create mode 100644 drivers/acpi/loongarch/init.c
 create mode 100644 drivers/acpi/loongarch/init.h
 create mode 100644 drivers/acpi/loongarch/iovt.c
 create mode 100644 include/linux/acpi_iovt.h


base-commit: 93f51579e7df248780214094418f205253383cc5
-- 
2.39.3