Hi Dan, I have been playing with this, and these changes kind of makes it work on arm64 and hopefully for others with CONFIG_PCI_DOMAINS_GENERIC. The first patch is a build failure fix for my toolchain. [RFC PATCH 0/3] samples: devsec: Add support for PCI_DOMAINS_GENERIC # insmod devsec_common.ko # insmod devsec_bus.ko # insmod devsec_tsm.ko # dmesg [ 7817.297135] devsec_bus devsec_bus: PCI host bridge to bus 0001:00 [ 7817.297251] pci_bus 0001:00: root bus resource [bus 00-01] [ 7817.297374] pci_bus 0001:00: root bus resource [mem 0xfffffff000000000-0xffffffffffffffff 64bit] [ 7817.297653] pci 0001:00:00.0: [8086:7075] type 01 class 0x060400 PCIe Root Port [ 7817.297856] pci 0001:00:00.0: PCI bridge to [bus 00] [ 7817.297986] pci 0001:00:00.0: bridge window [io 0x0000-0x0fff] [ 7817.298115] pci 0001:00:00.0: bridge window [mem 0x00000000-0x000fffff] [ 7817.298267] pci 0001:00:00.0: bridge window [mem 0x00000000-0x000fffff 64bit pref] [ 7817.304866] pci 0001:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 7817.305464] pci 0001:01:00.0: [8086:ffff] type 00 class 0x000000 PCIe Endpoint [ 7817.305664] pci 0001:01:00.0: BAR 0 [mem 0x00000000-0x001fffff] [ 7817.312503] pci 0001:01:00.0: disabling ASPM on pre-1.1 PCIe device. You can enable it with 'pcie_aspm=force' [ 7817.312714] pci_bus 0001:01: busn_res: [bus 01] end is updated to 01 # cd /sys/bus/pci/devices/0001\:01\:00.0/ # cat tsm/connect 0 # echo 1 > tsm/connect # cat authenticated 1 # echo 0 > tsm/connect # cat authenticated 0 Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> Cc: Lukas Wunner <lukas@xxxxxxxxx> Cc: Samuel Ortiz <sameo@xxxxxxxxxxxx> Cc: Alexey Kardashevskiy <aik@xxxxxxx> Cc: Xu Yilun <yilun.xu@xxxxxxxxxxxxxxx> Cc: linux-pci@xxxxxxxxxxxxxxx Cc: linux-coco@xxxxxxxxxxxxxxx Suzuki K Poulose (3): pci: ide: Fix build failure pci: generic-domains: Add helpers to alloc/free dynamic bus numbers samples: devsec: Add support for PCI_DOMAINS_GENERIC drivers/pci/ide.c | 5 +++-- drivers/pci/pci.c | 16 ++++++++++++++-- include/linux/pci.h | 3 +++ samples/Kconfig | 1 - samples/devsec/bus.c | 32 +++++++++++++++++++++----------- samples/devsec/common.c | 2 +- samples/devsec/devsec.h | 2 +- 7 files changed, 43 insertions(+), 18 deletions(-) -- 2.43.0