Thread (19 messages) 19 messages, 3 authors, 2015-06-02

[Patch v3 5/7] PCI/ACPI: Consolidate common PCI host bridge code into ACPI core

From: Hanjun Guo <hidden>
Date: 2015-05-18 13:08:48
Also in: linux-acpi, linux-pci, lkml
Subsystem: arm64 port (aarch64 architecture), the rest · Maintainers: Catalin Marinas, Will Deacon, Linus Torvalds

Hi Jiang,

On 2015?05?14? 16:56, Jiang Liu wrote:
Introduce common interface acpi_pci_root_create() and related data
structures to create PCI root bus for ACPI PCI host bridges. It will
be used to kill duplicated arch specific code for IA64 and x86. It may
also help ARM64 in future.
As I commented in previous version, this patch will introduce
compile error on ACPI enabled ARM64 kernel because struct
pci_controller is not defined for ARM64, so how about adding
the following patch before this patch, or squash to this one,
does it make sense?

 From 11d0e98154e681e75936698208398cb4dcd73632 Mon Sep 17 00:00:00 2001
From: Hanjun Guo <redacted>
Date: Mon, 18 May 2015 19:41:56 +0800
Subject: [PATCH] ARM64 / PCI: introduce struct pci_controller for ACPI

ARM64 ACPI based PCI host bridge init needs a arch dependent
struct pci_controller to accommodate common PCI host bridge
code which is introduced later, or it will lead to compile
errors on ARM64.

Signed-off-by: Hanjun Guo <redacted>
CC: Liviu Dudau <Liviu.Dudau@arm.com>
CC: Will Deacon <redacted>
CC: Catalin Marinas <catalin.marinas@arm.com>
CC: Lorenzo Pieralisi <redacted>
CC: Arnd Bergmann <arnd@arndb.de>
---
  arch/arm64/include/asm/pci.h | 10 ++++++++++
  1 file changed, 10 insertions(+)
diff --git a/arch/arm64/include/asm/pci.h b/arch/arm64/include/asm/pci.h
index b008a72..7088495 100644
--- a/arch/arm64/include/asm/pci.h
+++ b/arch/arm64/include/asm/pci.h
@@ -10,6 +10,16 @@
  #include <asm-generic/pci-bridge.h>
  #include <asm-generic/pci-dma-compat.h>

+struct acpi_device;
+
+struct pci_controller {
+#ifdef CONFIG_ACPI
+       struct acpi_device *companion;  /* ACPI companion device */
+#endif
+       int             segment;        /* PCI domain */
+       int             node;           /* NUMA node */
+};
+
  #define PCIBIOS_MIN_IO         0x1000
  #define PCIBIOS_MIN_MEM                0

Thanks
Hanjun
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help