On Tue, Feb 16, 2016 at 02:53:32PM +0100, Tomasz Nowicki wrote: > Lets keep RAW ACPI PCI config space accessors empty by default, > since we are note sure if they are necessary accross all archs. > Once we sort this out, we can provide generic version or let > architectures to overwrite, like now x86. "ACPICA code requires raw PCI bus accessors in order to give AML access to PCI_Config regions in platforms where they are actually used. The raw PCI bus accessors implementation is arch-dependent, therefore this patch adds a weak generic implementation (for now empty but can be generalized if common functionality is found among arches) allowing arches where PCI_Config regions are currently required to override it (eg x86) as needed and providing at the same time default stubs for arches that do not require them". ? > Suggested-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx> > Signed-off-by: Tomasz Nowicki <tn@xxxxxxxxxxxx> > Tested-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@xxxxxxx> > Tested-by: Jeremy Linton <jeremy.linton@xxxxxxx> > Tested-by: Duc Dang <dhdang@xxxxxxx> > Tested-by: Dongdong Liu <liudongdong3@xxxxxxxxxx> > Tested-by: Hanjun Guo <hanjun.guo@xxxxxxxxxx> > Tested-by: Graeme Gregory <graeme.gregory@xxxxxxxxxx> > Tested-by: Sinan Kaya <okaya@xxxxxxxxxxxxxx> > --- > drivers/acpi/pci_mcfg.c | 20 ++++++++++++++++++++ > 1 file changed, 20 insertions(+) > > diff --git a/drivers/acpi/pci_mcfg.c b/drivers/acpi/pci_mcfg.c > index ea84365..0467b00 100644 > --- a/drivers/acpi/pci_mcfg.c > +++ b/drivers/acpi/pci_mcfg.c > @@ -21,6 +21,26 @@ > static DEFINE_MUTEX(pci_mmcfg_lock); > LIST_HEAD(pci_mmcfg_list); > > +/* > + * raw_pci_read/write - raw ACPI PCI config space accessors. > + * > + * By defauly (__weak) these accessors are empty and should be overwritten s/defauly/default > + * by architectures which support operations on ACPI PCI_Config regions, > + * see osl.c file. Add the path or remove the file reference. > + */ > + > +int __weak raw_pci_read(unsigned int domain, unsigned int bus, > + unsigned int devfn, int reg, int len, u32 *val) > +{ > + return PCIBIOS_DEVICE_NOT_FOUND; > +} > + > +int __weak raw_pci_write(unsigned int domain, unsigned int bus, > + unsigned int devfn, int reg, int len, u32 val) > +{ > + return PCIBIOS_DEVICE_NOT_FOUND; > +} > + > static void list_add_sorted(struct pci_mmcfg_region *new) > { > struct pci_mmcfg_region *cfg; Note: this patch is not strictly required, but it is nice because it removes the raw/dumb/empty accessors from ARM64 code (where they do not belong), so: Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html