From: Will Deacon <will.deacon@arm.com>
To: Rob Herring <robh@kernel.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Arnd Bergmann <arnd@arndb.de>,
"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
Bjorn Helgaas <bhelgaas@google.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 12/16] pci/host: generic: convert to use generic config accesses
Date: Mon, 12 Jan 2015 17:51:25 +0000 [thread overview]
Message-ID: <20150112175125.GM13360@arm.com> (raw)
In-Reply-To: <1420857290-8373-13-git-send-email-robh@kernel.org>
On Sat, Jan 10, 2015 at 02:34:46AM +0000, Rob Herring wrote:
> Convert the generic host PCI driver to use the generic config access
> functions.
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> Cc: Will Deacon <will.deacon@arm.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: linux-pci@vger.kernel.org
> Cc: linux-arm-kernel@lists.infradead.org
> ---
> drivers/pci/host/pci-host-generic.c | 51 +++----------------------------------
> 1 file changed, 3 insertions(+), 48 deletions(-)
Looks like a fairly straightforward conversion for this driver!
Acked-by: Will Deacon <will.deacon@arm.com>
Will
> diff --git a/drivers/pci/host/pci-host-generic.c b/drivers/pci/host/pci-host-generic.c
> index 6eb1aa7..925e29e 100644
> --- a/drivers/pci/host/pci-host-generic.c
> +++ b/drivers/pci/host/pci-host-generic.c
> @@ -76,55 +76,9 @@ static struct gen_pci_cfg_bus_ops gen_pci_cfg_ecam_bus_ops = {
> .map_bus = gen_pci_map_cfg_bus_ecam,
> };
>
> -static int gen_pci_config_read(struct pci_bus *bus, unsigned int devfn,
> - int where, int size, u32 *val)
> -{
> - void __iomem *addr;
> - struct pci_sys_data *sys = bus->sysdata;
> - struct gen_pci *pci = sys->private_data;
> -
> - addr = pci->cfg.ops->map_bus(bus, devfn, where);
> -
> - switch (size) {
> - case 1:
> - *val = readb(addr);
> - break;
> - case 2:
> - *val = readw(addr);
> - break;
> - default:
> - *val = readl(addr);
> - }
> -
> - return PCIBIOS_SUCCESSFUL;
> -}
> -
> -static int gen_pci_config_write(struct pci_bus *bus, unsigned int devfn,
> - int where, int size, u32 val)
> -{
> - void __iomem *addr;
> - struct pci_sys_data *sys = bus->sysdata;
> - struct gen_pci *pci = sys->private_data;
> -
> - addr = pci->cfg.ops->map_bus(bus, devfn, where);
> -
> - switch (size) {
> - case 1:
> - writeb(val, addr);
> - break;
> - case 2:
> - writew(val, addr);
> - break;
> - default:
> - writel(val, addr);
> - }
> -
> - return PCIBIOS_SUCCESSFUL;
> -}
> -
> static struct pci_ops gen_pci_ops = {
> - .read = gen_pci_config_read,
> - .write = gen_pci_config_write,
> + .read = pci_generic_config_read,
> + .write = pci_generic_config_write,
> };
>
> static const struct of_device_id gen_pci_of_match[] = {
> @@ -287,6 +241,7 @@ static int gen_pci_probe(struct platform_device *pdev)
>
> of_id = of_match_node(gen_pci_of_match, np);
> pci->cfg.ops = of_id->data;
> + gen_pci_ops.map_bus = pci->cfg.ops->map_bus;
> pci->host.dev.parent = dev;
> INIT_LIST_HEAD(&pci->host.windows);
> INIT_LIST_HEAD(&pci->resources);
> --
> 2.1.0
>
>
next prev parent reply other threads:[~2015-01-12 17:51 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-10 2:34 [PATCH 00/16] PCI generic configuration space accessors Rob Herring
2015-01-10 2:34 ` [PATCH 01/16] frv: add struct pci_ops member names to initialization Rob Herring
2015-01-10 2:34 ` [PATCH 02/16] mips: " Rob Herring
2015-01-10 2:34 ` [PATCH 03/16] mn10300: " Rob Herring
2015-01-10 2:34 ` [PATCH 04/16] powerpc: " Rob Herring
2015-01-10 2:34 ` [PATCH 05/16] pci: introduce common pci config space accessors Rob Herring
2015-01-12 10:01 ` Thierry Reding
2015-01-12 10:04 ` Thierry Reding
2015-01-10 2:34 ` [PATCH 06/16] ARM: cns3xxx: convert PCI to use generic config accesses Rob Herring
2015-01-29 6:16 ` Krzysztof Hałasa
2015-01-29 14:35 ` Bjorn Helgaas
2015-01-10 2:34 ` [PATCH 07/16] ARM: integrator: " Rob Herring
2015-01-10 21:40 ` Linus Walleij
2015-01-10 21:53 ` Arnd Bergmann
2015-01-12 0:05 ` Linus Walleij
2015-01-22 20:33 ` Bjorn Helgaas
2015-01-26 18:22 ` Bjorn Helgaas
2015-01-26 23:22 ` Linus Walleij
2015-01-10 2:34 ` [PATCH 08/16] ARM: sa1100: " Rob Herring
2015-01-10 2:34 ` [PATCH 09/16] ARM: ks8695: " Rob Herring
2015-01-12 12:38 ` Greg Ungerer
2015-01-10 2:34 ` [PATCH 10/16] powerpc: fsl_pci: " Rob Herring
2015-01-10 2:34 ` [PATCH 11/16] powerpc: powermac: " Rob Herring
2015-01-10 2:34 ` [PATCH 12/16] pci/host: generic: convert " Rob Herring
2015-01-12 17:51 ` Will Deacon [this message]
2015-01-10 2:34 ` [PATCH 13/16] pci/host: rcar-gen2: " Rob Herring
2015-01-12 9:25 ` Geert Uytterhoeven
2015-01-10 2:34 ` [PATCH 14/16] pci/host: tegra: " Rob Herring
2015-01-12 10:07 ` Thierry Reding
2015-01-10 2:34 ` [PATCH 15/16] pci/host: xgene: " Rob Herring
2015-01-10 2:34 ` [PATCH 16/16] pci/host: xilinx: " Rob Herring
2015-01-22 21:03 ` [PATCH 00/16] PCI generic configuration space accessors Bjorn Helgaas
2015-01-22 23:47 ` Rob Herring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150112175125.GM13360@arm.com \
--to=will.deacon@arm.com \
--cc=arnd@arndb.de \
--cc=bhelgaas@google.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).