Re: [PATCH v2 3/4] PCI: generic, thunder: update to use generic ECAM API

From: David Daney
Date: Mon Apr 11 2016 - 20:34:46 EST


On 04/11/2016 03:45 PM, Jayachandran C wrote:
Use functions provided by drivers/pci/ecam.h for mapping the config
space in drivers/pci/host/pci-host-common.c, and update its users to
use 'struct pci_config_window' and 'struct pci_generic_ecam_ops'

The changes are mostly to use 'struct pci_config_window' in place of
'struct gen_pci'. Some of the fields of gen_pci were only used
temporarily and can be eliminated by using local variables or function
arguments, these are not carried over to struct pci_config_window.

pci-thunder-ecam.c and pci-thunder-pem.c are the only users of the
pci_host_common_probe function and the gen_pci structure, these have
been updated to use the new API as well.

The patch does not introduce any functional changes other than a very
minor one: with the new code, on 64-bit platforms, we do just a single
ioremap for the whole config space.

Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>

Tested-by: David Daney <david.daney@xxxxxxxxxx>

However, ...

---
drivers/pci/ecam.h | 5 ++
drivers/pci/host/Kconfig | 1 +
drivers/pci/host/pci-host-common.c | 121 ++++++++++++++++--------------------
drivers/pci/host/pci-host-common.h | 47 --------------
drivers/pci/host/pci-host-generic.c | 50 +++------------
drivers/pci/host/pci-thunder-ecam.c | 37 +++--------
drivers/pci/host/pci-thunder-pem.c | 53 +++++-----------

... The patch conflicts with a bug-fix patch I just sent to pci-thunder-pem.c, so there will be a race to see who gets in first.

Also, I don't know if it would make sense to split out the pci-thunder-* changes to a separate patch.


7 files changed, 93 insertions(+), 221 deletions(-)
delete mode 100644 drivers/pci/host/pci-host-common.h

[...]