[PATCH v3 9/9] pci, ecam: Improve naming for ecam.c content and areas where it is used.
Tomasz Nowicki
tomasz.nowicki at linaro.org
Tue Mar 10 05:22:46 PDT 2015
I forgot to rename pci_mmcfg_for_each_region() content. Will send fixed
patch.
Tomasz
On 10.03.2015 12:35, Tomasz Nowicki wrote:
> This commit is consequence of making x86 MMCONFIG code available for all
> architectures. Current code has old name fashion so for the sake of
> making it more understandable and express where it comes from,
> we are changing functions/variables/macros etc. name *mmconfig* -> *ecam*
>
> Signed-off-by: Tomasz Nowicki <tomasz.nowicki at linaro.org>
> ---
> arch/x86/pci/acpi.c | 2 +-
> arch/x86/pci/mmconfig-shared.c | 64 ++++++++--------
> arch/x86/pci/mmconfig_32.c | 16 ++--
> arch/x86/pci/numachip.c | 2 +-
> drivers/acpi/mcfg.c | 22 +++---
> drivers/pci/ecam.c | 162 ++++++++++++++++++++---------------------
> drivers/xen/pci.c | 6 +-
> include/linux/ecam.h | 42 +++++------
> 8 files changed, 158 insertions(+), 158 deletions(-)
>
> diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
> index 5dfccef..fa3ef35 100644
> --- a/arch/x86/pci/acpi.c
> +++ b/arch/x86/pci/acpi.c
> @@ -199,7 +199,7 @@ static int setup_mcfg_map(struct pci_root_info *info, u16 seg, u8 start,
> static void teardown_mcfg_map(struct pci_root_info *info)
> {
> if (info->mcfg_added) {
> - pci_mmconfig_delete(info->segment, info->start_bus,
> + pci_ecam_delete(info->segment, info->start_bus,
> info->end_bus);
> info->mcfg_added = false;
> }
> diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c
> index 6dfe614..719dccf 100644
> --- a/arch/x86/pci/mmconfig-shared.c
> +++ b/arch/x86/pci/mmconfig-shared.c
> @@ -30,8 +30,8 @@ static bool pci_mmcfg_running_state;
> static bool pci_mmcfg_arch_init_failed;
>
> const struct pci_raw_ops pci_mmcfg = {
> - .read = pci_mmcfg_read,
> - .write = pci_mmcfg_write,
> + .read = pci_ecam_read,
> + .write = pci_ecam_write,
> };
>
> static u32
> @@ -70,7 +70,7 @@ pci_mmconfig_amd_write(int len, void __iomem *addr, u32 value)
> }
> }
>
> -static struct pci_mmcfg_mmio_ops pci_mmcfg_mmio_amd_fam10h = {
> +static struct pci_ecam_mmio_ops pci_mmcfg_mmio_amd_fam10h = {
> .read = pci_mmconfig_amd_read,
> .write = pci_mmconfig_amd_write,
> };
> @@ -84,7 +84,7 @@ static const char *__init pci_mmcfg_e7520(void)
> if (win == 0x0000 || win == 0xf000)
> return NULL;
>
> - if (pci_mmconfig_add(0, 0, 255, win << 16) == NULL)
> + if (pci_ecam_add(0, 0, 255, win << 16) == NULL)
> return NULL;
>
> return "Intel Corporation E7520 Memory Controller Hub";
> @@ -128,7 +128,7 @@ static const char *__init pci_mmcfg_intel_945(void)
> if ((pciexbar & mask) >= 0xf0000000U)
> return NULL;
>
> - if (pci_mmconfig_add(0, 0, (len >> 20) - 1, pciexbar & mask) == NULL)
> + if (pci_ecam_add(0, 0, (len >> 20) - 1, pciexbar & mask) == NULL)
> return NULL;
>
> return "Intel Corporation 945G/GZ/P/PL Express Memory Controller Hub";
> @@ -175,13 +175,13 @@ static const char *__init pci_mmcfg_amd_fam10h(void)
>
> end_bus = (1 << busnbits) - 1;
> for (i = 0; i < (1 << segnbits); i++)
> - if (pci_mmconfig_add(i, 0, end_bus,
> + if (pci_ecam_add(i, 0, end_bus,
> base + (1<<28) * i) == NULL) {
> - free_all_mmcfg();
> + pci_ecam_free_all();
> return NULL;
> }
>
> - pci_mmconfig_register_mmio(&pci_mmcfg_mmio_amd_fam10h);
> + pci_ecam_register_mmio(&pci_mmcfg_mmio_amd_fam10h);
>
> return "AMD Family 10h NB";
> }
> @@ -210,7 +210,7 @@ static const char *__init pci_mmcfg_nvidia_mcp55(void)
> /*
> * do check if amd fam10h already took over
> */
> - if (!acpi_disabled || !list_empty(&pci_mmcfg_list) || mcp55_checked)
> + if (!acpi_disabled || !list_empty(&pci_ecam_list) || mcp55_checked)
> return NULL;
>
> mcp55_checked = true;
> @@ -239,7 +239,7 @@ static const char *__init pci_mmcfg_nvidia_mcp55(void)
> base <<= extcfg_base_lshift;
> start = (extcfg & extcfg_start_mask) >> extcfg_start_shift;
> end = start + extcfg_sizebus[size_index] - 1;
> - if (pci_mmconfig_add(0, start, end, base) == NULL)
> + if (pci_ecam_add(0, start, end, base) == NULL)
> continue;
> mcp55_mmconf_found++;
> }
> @@ -273,15 +273,15 @@ static const struct pci_mmcfg_hostbridge_probe pci_mmcfg_probes[] __initconst =
>
> static void __init pci_mmcfg_check_end_bus_number(void)
> {
> - struct pci_mmcfg_region *cfg, *cfgx;
> + struct pci_ecam_region *cfg, *cfgx;
>
> /* Fixup overlaps */
> - list_for_each_entry(cfg, &pci_mmcfg_list, list) {
> + list_for_each_entry(cfg, &pci_ecam_list, list) {
> if (cfg->end_bus < cfg->start_bus)
> cfg->end_bus = 255;
>
> /* Don't access the list head ! */
> - if (cfg->list.next == &pci_mmcfg_list)
> + if (cfg->list.next == &pci_ecam_list)
> break;
>
> cfgx = list_entry(cfg->list.next, typeof(*cfg), list);
> @@ -301,7 +301,7 @@ static int __init pci_mmcfg_check_hostbridge(void)
> if (!raw_pci_ops)
> return 0;
>
> - free_all_mmcfg();
> + pci_ecam_free_all();
>
> for (i = 0; i < ARRAY_SIZE(pci_mmcfg_probes); i++) {
> bus = pci_mmcfg_probes[i].bus;
> @@ -322,7 +322,7 @@ static int __init pci_mmcfg_check_hostbridge(void)
> /* some end_bus_number is crazy, fix it */
> pci_mmcfg_check_end_bus_number();
>
> - return !list_empty(&pci_mmcfg_list);
> + return !list_empty(&pci_ecam_list);
> }
>
> static acpi_status check_mcfg_resource(struct acpi_resource *res, void *data)
> @@ -395,7 +395,7 @@ static int is_acpi_reserved(u64 start, u64 end, unsigned not_used)
> typedef int (*check_reserved_t)(u64 start, u64 end, unsigned type);
>
> static int __ref is_mmconf_reserved(check_reserved_t is_reserved,
> - struct pci_mmcfg_region *cfg,
> + struct pci_ecam_region *cfg,
> struct device *dev, int with_e820)
> {
> u64 addr = cfg->res.start;
> @@ -425,8 +425,8 @@ static int __ref is_mmconf_reserved(check_reserved_t is_reserved,
> cfg->end_bus = cfg->start_bus + ((size>>20) - 1);
> num_buses = cfg->end_bus - cfg->start_bus + 1;
> cfg->res.end = cfg->res.start +
> - PCI_MMCFG_BUS_OFFSET(num_buses) - 1;
> - snprintf(cfg->name, PCI_MMCFG_RESOURCE_NAME_LEN,
> + PCI_ECAM_BUS_OFFSET(num_buses) - 1;
> + snprintf(cfg->name, PCI_ECAM_RESOURCE_NAME_LEN,
> "PCI MMCONFIG %04x [bus %02x-%02x]",
> cfg->segment, cfg->start_bus, cfg->end_bus);
>
> @@ -447,7 +447,7 @@ static int __ref is_mmconf_reserved(check_reserved_t is_reserved,
> }
>
> static int __ref pci_mmcfg_check_reserved(struct device *dev,
> - struct pci_mmcfg_region *cfg, int early)
> + struct pci_ecam_region *cfg, int early)
> {
> if (!early && !acpi_disabled) {
> if (is_mmconf_reserved(is_acpi_reserved, cfg, dev, 0))
> @@ -484,12 +484,12 @@ static int __ref pci_mmcfg_check_reserved(struct device *dev,
>
> static void __init pci_mmcfg_reject_broken(int early)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> - list_for_each_entry(cfg, &pci_mmcfg_list, list) {
> + list_for_each_entry(cfg, &pci_ecam_list, list) {
> if (pci_mmcfg_check_reserved(NULL, cfg, early) == 0) {
> pr_info(PREFIX "not using MMCONFIG\n");
> - free_all_mmcfg();
> + pci_ecam_free_all();
> return;
> }
> }
> @@ -524,24 +524,24 @@ static int pci_mmcfg_for_each_region(int (*func)(__u64 start, __u64 size,
> static void __init __pci_mmcfg_init(int early)
> {
> pci_mmcfg_reject_broken(early);
> - if (list_empty(&pci_mmcfg_list))
> + if (list_empty(&pci_ecam_list))
> return;
>
> if (pcibios_last_bus < 0) {
> - const struct pci_mmcfg_region *cfg;
> + const struct pci_ecam_region *cfg;
>
> - list_for_each_entry(cfg, &pci_mmcfg_list, list) {
> + list_for_each_entry(cfg, &pci_ecam_list, list) {
> if (cfg->segment)
> break;
> pcibios_last_bus = cfg->end_bus;
> }
> }
>
> - if (pci_mmcfg_arch_init()) {
> + if (pci_ecam_arch_init()) {
> raw_pci_ext_ops = &pci_mmcfg;
> pci_probe = (pci_probe & ~PCI_PROBE_MASK) | PCI_PROBE_MMCONF;
> } else {
> - free_all_mmcfg();
> + pci_ecam_free_all();
> pci_mmcfg_arch_init_failed = true;
> }
> }
> @@ -579,7 +579,7 @@ void __init pci_mmcfg_late_init(void)
>
> static int __init pci_mmcfg_late_insert_resources(void)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> pci_mmcfg_running_state = true;
>
> @@ -592,7 +592,7 @@ static int __init pci_mmcfg_late_insert_resources(void)
> * marked so it won't cause request errors when __request_region is
> * called.
> */
> - list_for_each_entry(cfg, &pci_mmcfg_list, list)
> + list_for_each_entry(cfg, &pci_ecam_list, list)
> if (!cfg->res.parent)
> insert_resource(&iomem_resource, &cfg->res);
>
> @@ -612,7 +612,7 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 start, u8 end,
> {
> int rc;
> struct resource *tmp = NULL;
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> if (!(pci_probe & PCI_PROBE_MMCONF) || pci_mmcfg_arch_init_failed)
> return -ENODEV;
> @@ -621,7 +621,7 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 start, u8 end,
> return -EINVAL;
>
> rc = -EBUSY;
> - cfg = pci_mmconfig_alloc(seg, start, end, addr);
> + cfg = pci_ecam_alloc(seg, start, end, addr);
> if (cfg == NULL) {
> dev_warn(dev, "fail to add MMCONFIG (out of memory)\n");
> return -ENOMEM;
> @@ -642,7 +642,7 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 start, u8 end,
> goto error;
> }
>
> - rc = pci_mmconfig_inject(cfg);
> + rc = pci_ecam_inject(cfg);
> if (rc)
> goto error;
>
> diff --git a/arch/x86/pci/mmconfig_32.c b/arch/x86/pci/mmconfig_32.c
> index 7a050cb..27e707d 100644
> --- a/arch/x86/pci/mmconfig_32.c
> +++ b/arch/x86/pci/mmconfig_32.c
> @@ -28,7 +28,7 @@ static int mmcfg_last_accessed_cpu;
> */
> static u32 get_base_addr(unsigned int seg, int bus, unsigned devfn)
> {
> - struct pci_mmcfg_region *cfg = pci_mmconfig_lookup(seg, bus);
> + struct pci_ecam_region *cfg = pci_ecam_lookup(seg, bus);
>
> if (cfg)
> return cfg->address;
> @@ -40,7 +40,7 @@ static u32 get_base_addr(unsigned int seg, int bus, unsigned devfn)
> */
> static void pci_exp_set_dev_base(unsigned int base, int bus, int devfn)
> {
> - u32 dev_base = base | PCI_MMCFG_BUS_OFFSET(bus) | (devfn << 12);
> + u32 dev_base = base | PCI_ECAM_BUS_OFFSET(bus) | (devfn << 12);
> int cpu = smp_processor_id();
> if (dev_base != mmcfg_last_accessed_device ||
> cpu != mmcfg_last_accessed_cpu) {
> @@ -50,7 +50,7 @@ static void pci_exp_set_dev_base(unsigned int base, int bus, int devfn)
> }
> }
>
> -int pci_mmcfg_read(unsigned int seg, unsigned int bus,
> +int pci_ecam_read(unsigned int seg, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 *value)
> {
> unsigned long flags;
> @@ -79,7 +79,7 @@ err: *value = -1;
> return 0;
> }
>
> -int pci_mmcfg_write(unsigned int seg, unsigned int bus,
> +int pci_ecam_write(unsigned int seg, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 value)
> {
> unsigned long flags;
> @@ -106,22 +106,22 @@ int pci_mmcfg_write(unsigned int seg, unsigned int bus,
> return 0;
> }
>
> -int __init pci_mmcfg_arch_init(void)
> +int __init pci_ecam_arch_init(void)
> {
> printk(KERN_INFO "PCI: Using MMCONFIG for extended config space\n");
> return 1;
> }
>
> -void __init pci_mmcfg_arch_free(void)
> +void __init pci_ecam_arch_free(void)
> {
> }
>
> -int pci_mmcfg_arch_map(struct pci_mmcfg_region *cfg)
> +int pci_ecam_arch_map(struct pci_ecam_region *cfg)
> {
> return 0;
> }
>
> -void pci_mmcfg_arch_unmap(struct pci_mmcfg_region *cfg)
> +void pci_ecam_arch_unmap(struct pci_ecam_region *cfg)
> {
> unsigned long flags;
>
> diff --git a/arch/x86/pci/numachip.c b/arch/x86/pci/numachip.c
> index 01868b6..f60d403 100644
> --- a/arch/x86/pci/numachip.c
> +++ b/arch/x86/pci/numachip.c
> @@ -21,7 +21,7 @@ static u8 limit __read_mostly;
>
> static inline char __iomem *pci_dev_base(unsigned int seg, unsigned int bus, unsigned int devfn)
> {
> - struct pci_mmcfg_region *cfg = pci_mmconfig_lookup(seg, bus);
> + struct pci_ecam_region *cfg = pci_ecam_lookup(seg, bus);
>
> if (cfg && cfg->virt)
> return cfg->virt + (PCI_MMCFG_BUS_OFFSET(bus) | (devfn << 12));
> diff --git a/drivers/acpi/mcfg.c b/drivers/acpi/mcfg.c
> index e285f62..40926a3 100644
> --- a/drivers/acpi/mcfg.c
> +++ b/drivers/acpi/mcfg.c
> @@ -24,13 +24,13 @@
> int __weak raw_pci_read(unsigned int domain, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 *val)
> {
> - return pci_mmcfg_read(domain, bus, devfn, reg, len, val);
> + return pci_ecam_read(domain, bus, devfn, reg, len, val);
> }
>
> int __weak raw_pci_write(unsigned int domain, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 val)
> {
> - return pci_mmcfg_write(domain, bus, devfn, reg, len, val);
> + return pci_ecam_write(domain, bus, devfn, reg, len, val);
> }
>
> static int __init acpi_mcfg_check_entry(struct acpi_table_mcfg *mcfg,
> @@ -69,7 +69,7 @@ int __init acpi_parse_mcfg(struct acpi_table_header *header)
> mcfg = (struct acpi_table_mcfg *)header;
>
> /* how many config structures do we have */
> - free_all_mmcfg();
> + pci_ecam_free_all();
> entries = 0;
> i = header->length - sizeof(struct acpi_table_mcfg);
> while (i >= sizeof(struct acpi_mcfg_allocation)) {
> @@ -85,14 +85,14 @@ int __init acpi_parse_mcfg(struct acpi_table_header *header)
> for (i = 0; i < entries; i++) {
> cfg = &cfg_table[i];
> if (acpi_mcfg_check_entry(mcfg, cfg)) {
> - free_all_mmcfg();
> + pci_ecam_free_all();
> return -ENODEV;
> }
>
> - if (pci_mmconfig_add(cfg->pci_segment, cfg->start_bus_number,
> + if (pci_ecam_add(cfg->pci_segment, cfg->start_bus_number,
> cfg->end_bus_number, cfg->address) == NULL) {
> pr_warn(PREFIX "no memory for MCFG entries\n");
> - free_all_mmcfg();
> + pci_ecam_free_all();
> return -ENOMEM;
> }
> }
> @@ -107,15 +107,15 @@ void __init __weak pci_mmcfg_early_init(void)
>
> void __init __weak pci_mmcfg_late_init(void)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> acpi_table_parse(ACPI_SIG_MCFG, acpi_parse_mcfg);
>
> - if (list_empty(&pci_mmcfg_list))
> + if (list_empty(&pci_ecam_list))
> return;
> - if (!pci_mmcfg_arch_init())
> - free_all_mmcfg();
> + if (!pci_ecam_arch_init())
> + pci_ecam_free_all();
>
> - list_for_each_entry(cfg, &pci_mmcfg_list, list)
> + list_for_each_entry(cfg, &pci_ecam_list, list)
> insert_resource(&iomem_resource, &cfg->res);
> }
> diff --git a/drivers/pci/ecam.c b/drivers/pci/ecam.c
> index f886796..6396944 100644
> --- a/drivers/pci/ecam.c
> +++ b/drivers/pci/ecam.c
> @@ -15,24 +15,24 @@
> #include <linux/rculist.h>
> #include <linux/ecam.h>
>
> -#define PREFIX "PCI: "
> +#define PREFIX "PCI ECAM: "
>
> -static DEFINE_MUTEX(pci_mmcfg_lock);
> +static DEFINE_MUTEX(pci_ecam_lock);
>
> -LIST_HEAD(pci_mmcfg_list);
> +LIST_HEAD(pci_ecam_list);
>
> #ifdef CONFIG_PCI_ECAM_GENERIC
> static char __iomem *pci_dev_base(unsigned int seg, unsigned int bus,
> unsigned int devfn)
> {
> - struct pci_mmcfg_region *cfg = pci_mmconfig_lookup(seg, bus);
> + struct pci_ecam_region *cfg = pci_ecam_lookup(seg, bus);
>
> if (cfg && cfg->virt)
> - return cfg->virt + (PCI_MMCFG_BUS_OFFSET(bus) | (devfn << 12));
> + return cfg->virt + (PCI_ECAM_BUS_OFFSET(bus) | (devfn << 12));
> return NULL;
> }
>
> -int pci_mmcfg_read(unsigned int seg, unsigned int bus,
> +int pci_ecam_read(unsigned int seg, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 *value)
> {
> char __iomem *addr;
> @@ -56,7 +56,7 @@ err: *value = -1;
> return 0;
> }
>
> -int pci_mmcfg_write(unsigned int seg, unsigned int bus,
> +int pci_ecam_write(unsigned int seg, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 value)
> {
> char __iomem *addr;
> @@ -78,64 +78,64 @@ int pci_mmcfg_write(unsigned int seg, unsigned int bus,
> return 0;
> }
>
> -static void __iomem *mcfg_ioremap(struct pci_mmcfg_region *cfg)
> +static void __iomem *pci_ecam_ioremap(struct pci_ecam_region *cfg)
> {
> void __iomem *addr;
> u64 start, size;
> int num_buses;
>
> - start = cfg->address + PCI_MMCFG_BUS_OFFSET(cfg->start_bus);
> + start = cfg->address + PCI_ECAM_BUS_OFFSET(cfg->start_bus);
> num_buses = cfg->end_bus - cfg->start_bus + 1;
> - size = PCI_MMCFG_BUS_OFFSET(num_buses);
> + size = PCI_ECAM_BUS_OFFSET(num_buses);
> addr = ioremap_nocache(start, size);
> if (addr)
> - addr -= PCI_MMCFG_BUS_OFFSET(cfg->start_bus);
> + addr -= PCI_ECAM_BUS_OFFSET(cfg->start_bus);
> return addr;
> }
>
> -int __init pci_mmcfg_arch_init(void)
> +int __init pci_ecam_arch_init(void)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> - list_for_each_entry(cfg, &pci_mmcfg_list, list)
> - if (pci_mmcfg_arch_map(cfg)) {
> - pci_mmcfg_arch_free();
> + list_for_each_entry(cfg, &pci_ecam_list, list)
> + if (pci_ecam_arch_map(cfg)) {
> + pci_ecam_arch_free();
> return 0;
> }
>
> return 1;
> }
>
> -void __init pci_mmcfg_arch_free(void)
> +void __init pci_ecam_arch_free(void)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> - list_for_each_entry(cfg, &pci_mmcfg_list, list)
> - pci_mmcfg_arch_unmap(cfg);
> + list_for_each_entry(cfg, &pci_ecam_list, list)
> + pci_ecam_arch_unmap(cfg);
> }
>
> -int pci_mmcfg_arch_map(struct pci_mmcfg_region *cfg)
> +int pci_ecam_arch_map(struct pci_ecam_region *cfg)
> {
> - cfg->virt = mcfg_ioremap(cfg);
> + cfg->virt = pci_ecam_ioremap(cfg);
> if (!cfg->virt) {
> - pr_err(PREFIX "can't map MMCONFIG at %pR\n", &cfg->res);
> + pr_err(PREFIX "can't map ECAM at %pR\n", &cfg->res);
> return -ENOMEM;
> }
>
> return 0;
> }
>
> -void pci_mmcfg_arch_unmap(struct pci_mmcfg_region *cfg)
> +void pci_ecam_arch_unmap(struct pci_ecam_region *cfg)
> {
> if (cfg && cfg->virt) {
> - iounmap(cfg->virt + PCI_MMCFG_BUS_OFFSET(cfg->start_bus));
> + iounmap(cfg->virt + PCI_ECAM_BUS_OFFSET(cfg->start_bus));
> cfg->virt = NULL;
> }
> }
> #endif
>
> static u32
> -pci_mmconfig_generic_read(int len, void __iomem *addr)
> +pci_ecam_generic_read(int len, void __iomem *addr)
> {
> u32 data = 0;
>
> @@ -155,7 +155,7 @@ pci_mmconfig_generic_read(int len, void __iomem *addr)
> }
>
> static void
> -pci_mmconfig_generic_write(int len, void __iomem *addr, u32 value)
> +pci_ecam_generic_write(int len, void __iomem *addr, u32 value)
> {
> switch (len) {
> case 1:
> @@ -170,42 +170,42 @@ pci_mmconfig_generic_write(int len, void __iomem *addr, u32 value)
> }
> }
>
> -static struct pci_mmcfg_mmio_ops pci_mmcfg_mmio_default = {
> - .read = pci_mmconfig_generic_read,
> - .write = pci_mmconfig_generic_write,
> +static struct pci_ecam_mmio_ops pci_ecam_mmio_default = {
> + .read = pci_ecam_generic_read,
> + .write = pci_ecam_generic_write,
> };
>
> -static struct pci_mmcfg_mmio_ops *pci_mmcfg_mmio = &pci_mmcfg_mmio_default;
> +static struct pci_ecam_mmio_ops *pci_ecam_mmio = &pci_ecam_mmio_default;
>
> void
> -pci_mmconfig_register_mmio(struct pci_mmcfg_mmio_ops *ops)
> +pci_ecam_register_mmio(struct pci_ecam_mmio_ops *ops)
> {
> - pci_mmcfg_mmio = ops;
> + pci_ecam_mmio = ops;
> }
>
> u32
> pci_mmio_read(int len, void __iomem *addr)
> {
> - if (!pci_mmcfg_mmio) {
> + if (!pci_ecam_mmio) {
> pr_err("PCI config space has no accessors !");
> return 0;
> }
>
> - return pci_mmcfg_mmio->read(len, addr);
> + return pci_ecam_mmio->read(len, addr);
> }
>
> void
> pci_mmio_write(int len, void __iomem *addr, u32 value)
> {
> - if (!pci_mmcfg_mmio) {
> + if (!pci_ecam_mmio) {
> pr_err("PCI config space has no accessors !");
> return;
> }
>
> - pci_mmcfg_mmio->write(len, addr, value);
> + pci_ecam_mmio->write(len, addr, value);
> }
>
> -static void __init pci_mmconfig_remove(struct pci_mmcfg_region *cfg)
> +static void __init pci_ecam_remove(struct pci_ecam_region *cfg)
> {
> if (cfg->res.parent)
> release_resource(&cfg->res);
> @@ -213,21 +213,21 @@ static void __init pci_mmconfig_remove(struct pci_mmcfg_region *cfg)
> kfree(cfg);
> }
>
> -void __init free_all_mmcfg(void)
> +void __init pci_ecam_free_all(void)
> {
> - struct pci_mmcfg_region *cfg, *tmp;
> + struct pci_ecam_region *cfg, *tmp;
>
> - pci_mmcfg_arch_free();
> - list_for_each_entry_safe(cfg, tmp, &pci_mmcfg_list, list)
> - pci_mmconfig_remove(cfg);
> + pci_ecam_arch_free();
> + list_for_each_entry_safe(cfg, tmp, &pci_ecam_list, list)
> + pci_ecam_remove(cfg);
> }
>
> -void list_add_sorted(struct pci_mmcfg_region *new)
> +void pci_ecam_list_add_sorted(struct pci_ecam_region *new)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> /* keep list sorted by segment and starting bus number */
> - list_for_each_entry_rcu(cfg, &pci_mmcfg_list, list) {
> + list_for_each_entry_rcu(cfg, &pci_ecam_list, list) {
> if (cfg->segment > new->segment ||
> (cfg->segment == new->segment &&
> cfg->start_bus >= new->start_bus)) {
> @@ -235,13 +235,13 @@ void list_add_sorted(struct pci_mmcfg_region *new)
> return;
> }
> }
> - list_add_tail_rcu(&new->list, &pci_mmcfg_list);
> + list_add_tail_rcu(&new->list, &pci_ecam_list);
> }
>
> -struct pci_mmcfg_region *pci_mmconfig_alloc(int segment, int start,
> +struct pci_ecam_region *pci_ecam_alloc(int segment, int start,
> int end, u64 addr)
> {
> - struct pci_mmcfg_region *new;
> + struct pci_ecam_region *new;
> struct resource *res;
>
> if (addr == 0)
> @@ -257,29 +257,29 @@ struct pci_mmcfg_region *pci_mmconfig_alloc(int segment, int start,
> new->end_bus = end;
>
> res = &new->res;
> - res->start = addr + PCI_MMCFG_BUS_OFFSET(start);
> - res->end = addr + PCI_MMCFG_BUS_OFFSET(end + 1) - 1;
> + res->start = addr + PCI_ECAM_BUS_OFFSET(start);
> + res->end = addr + PCI_ECAM_BUS_OFFSET(end + 1) - 1;
> res->flags = IORESOURCE_MEM | IORESOURCE_BUSY;
> - snprintf(new->name, PCI_MMCFG_RESOURCE_NAME_LEN,
> - "PCI MMCONFIG %04x [bus %02x-%02x]", segment, start, end);
> + snprintf(new->name, PCI_ECAM_RESOURCE_NAME_LEN,
> + "PCI ECAM %04x [bus %02x-%02x]", segment, start, end);
> res->name = new->name;
>
> return new;
> }
>
> -struct pci_mmcfg_region *pci_mmconfig_add(int segment, int start,
> +struct pci_ecam_region *pci_ecam_add(int segment, int start,
> int end, u64 addr)
> {
> - struct pci_mmcfg_region *new;
> + struct pci_ecam_region *new;
>
> - new = pci_mmconfig_alloc(segment, start, end, addr);
> + new = pci_ecam_alloc(segment, start, end, addr);
> if (new) {
> - mutex_lock(&pci_mmcfg_lock);
> - list_add_sorted(new);
> - mutex_unlock(&pci_mmcfg_lock);
> + mutex_lock(&pci_ecam_lock);
> + pci_ecam_list_add_sorted(new);
> + mutex_unlock(&pci_ecam_lock);
>
> pr_info(PREFIX
> - "MMCONFIG for domain %04x [bus %02x-%02x] at %pR "
> + "ECAM for domain %04x [bus %02x-%02x] at %pR "
> "(base %#lx)\n",
> segment, start, end, &new->res, (unsigned long)addr);
> }
> @@ -287,11 +287,11 @@ struct pci_mmcfg_region *pci_mmconfig_add(int segment, int start,
> return new;
> }
>
> -struct pci_mmcfg_region *pci_mmconfig_lookup(int segment, int bus)
> +struct pci_ecam_region *pci_ecam_lookup(int segment, int bus)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> - list_for_each_entry_rcu(cfg, &pci_mmcfg_list, list)
> + list_for_each_entry_rcu(cfg, &pci_ecam_list, list)
> if (cfg->segment == segment &&
> cfg->start_bus <= bus && bus <= cfg->end_bus)
> return cfg;
> @@ -299,39 +299,39 @@ struct pci_mmcfg_region *pci_mmconfig_lookup(int segment, int bus)
> return NULL;
> }
>
> -/* Delete MMCFG information for host bridges */
> -int pci_mmconfig_delete(u16 seg, u8 start, u8 end)
> +/* Delete ECAM information for host bridges */
> +int pci_ecam_delete(u16 seg, u8 start, u8 end)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
>
> - mutex_lock(&pci_mmcfg_lock);
> - list_for_each_entry_rcu(cfg, &pci_mmcfg_list, list)
> + mutex_lock(&pci_ecam_lock);
> + list_for_each_entry_rcu(cfg, &pci_ecam_list, list)
> if (cfg->segment == seg && cfg->start_bus == start &&
> cfg->end_bus == end) {
> list_del_rcu(&cfg->list);
> synchronize_rcu();
> - pci_mmcfg_arch_unmap(cfg);
> + pci_ecam_arch_unmap(cfg);
> if (cfg->res.parent)
> release_resource(&cfg->res);
> - mutex_unlock(&pci_mmcfg_lock);
> + mutex_unlock(&pci_ecam_lock);
> kfree(cfg);
> return 0;
> }
> - mutex_unlock(&pci_mmcfg_lock);
> + mutex_unlock(&pci_ecam_lock);
>
> return -ENOENT;
> }
>
> -int pci_mmconfig_inject(struct pci_mmcfg_region *cfg)
> +int pci_ecam_inject(struct pci_ecam_region *cfg)
> {
> - struct pci_mmcfg_region *cfg_conflict;
> + struct pci_ecam_region *cfg_conflict;
> int err = 0;
>
> - mutex_lock(&pci_mmcfg_lock);
> - cfg_conflict = pci_mmconfig_lookup(cfg->segment, cfg->start_bus);
> + mutex_lock(&pci_ecam_lock);
> + cfg_conflict = pci_ecam_lookup(cfg->segment, cfg->start_bus);
> if (cfg_conflict) {
> if (cfg_conflict->end_bus < cfg->end_bus)
> - pr_info(FW_INFO "MMCONFIG for "
> + pr_info(FW_INFO "ECAM for "
> "domain %04x [bus %02x-%02x] "
> "only partially covers this bridge\n",
> cfg_conflict->segment, cfg_conflict->start_bus,
> @@ -340,17 +340,17 @@ int pci_mmconfig_inject(struct pci_mmcfg_region *cfg)
> goto out;
> }
>
> - if (pci_mmcfg_arch_map(cfg)) {
> - pr_warn("fail to map MMCONFIG %pR.\n", &cfg->res);
> + if (pci_ecam_arch_map(cfg)) {
> + pr_warn("fail to map ECAM %pR.\n", &cfg->res);
> err = -ENOMEM;
> goto out;
> } else {
> - list_add_sorted(cfg);
> - pr_info("MMCONFIG at %pR (base %#lx)\n",
> + pci_ecam_list_add_sorted(cfg);
> + pr_info("ECAM at %pR (base %#lx)\n",
> &cfg->res, (unsigned long)cfg->address);
>
> }
> out:
> - mutex_unlock(&pci_mmcfg_lock);
> + mutex_unlock(&pci_ecam_lock);
> return err;
> }
> diff --git a/drivers/xen/pci.c b/drivers/xen/pci.c
> index 95ee430..eff4035 100644
> --- a/drivers/xen/pci.c
> +++ b/drivers/xen/pci.c
> @@ -204,7 +204,7 @@ arch_initcall(register_xen_pci_notifier);
> #ifdef CONFIG_PCI_MMCONFIG
> static int __init xen_mcfg_late(void)
> {
> - struct pci_mmcfg_region *cfg;
> + struct pci_ecam_region *cfg;
> int rc;
>
> if (!xen_initial_domain())
> @@ -213,11 +213,11 @@ static int __init xen_mcfg_late(void)
> if ((pci_probe & PCI_PROBE_MMCONF) == 0)
> return 0;
>
> - if (list_empty(&pci_mmcfg_list))
> + if (list_empty(&pci_ecam_list))
> return 0;
>
> /* Check whether they are in the right area. */
> - list_for_each_entry(cfg, &pci_mmcfg_list, list) {
> + list_for_each_entry(cfg, &pci_ecam_list, list) {
> struct physdev_pci_mmcfg_reserved r;
>
> r.address = cfg->address;
> diff --git a/include/linux/ecam.h b/include/linux/ecam.h
> index fba5d6b..363691b 100644
> --- a/include/linux/ecam.h
> +++ b/include/linux/ecam.h
> @@ -5,10 +5,10 @@
> #include <linux/types.h>
> #include <linux/acpi.h>
>
> -/* "PCI MMCONFIG %04x [bus %02x-%02x]" */
> -#define PCI_MMCFG_RESOURCE_NAME_LEN (22 + 4 + 2 + 2)
> +/* "PCI ECAM %04x [bus %02x-%02x]" */
> +#define PCI_ECAM_RESOURCE_NAME_LEN (22 + 4 + 2 + 2)
>
> -struct pci_mmcfg_region {
> +struct pci_ecam_region {
> struct list_head list;
> struct resource res;
> u64 address;
> @@ -16,40 +16,40 @@ struct pci_mmcfg_region {
> u16 segment;
> u8 start_bus;
> u8 end_bus;
> - char name[PCI_MMCFG_RESOURCE_NAME_LEN];
> + char name[PCI_ECAM_RESOURCE_NAME_LEN];
> };
>
> -struct pci_mmcfg_mmio_ops {
> +struct pci_ecam_mmio_ops {
> u32 (*read)(int len, void __iomem *addr);
> void (*write)(int len, void __iomem *addr, u32 value);
> };
>
> -struct pci_mmcfg_region *pci_mmconfig_lookup(int segment, int bus);
> -struct pci_mmcfg_region *pci_mmconfig_alloc(int segment, int start,
> +struct pci_ecam_region *pci_ecam_lookup(int segment, int bus);
> +struct pci_ecam_region *pci_ecam_alloc(int segment, int start,
> int end, u64 addr);
> -int pci_mmconfig_inject(struct pci_mmcfg_region *cfg);
> -struct pci_mmcfg_region *pci_mmconfig_add(int segment, int start,
> +int pci_ecam_inject(struct pci_ecam_region *cfg);
> +struct pci_ecam_region *pci_ecam_add(int segment, int start,
> int end, u64 addr);
> -void list_add_sorted(struct pci_mmcfg_region *new);
> -void free_all_mmcfg(void);
> -int pci_mmconfig_delete(u16 seg, u8 start, u8 end);
> +void pci_ecam_list_add_sorted(struct pci_ecam_region *new);
> +void pci_ecam_free_all(void);
> +int pci_ecam_delete(u16 seg, u8 start, u8 end);
>
> /* Arch specific calls */
> -int pci_mmcfg_arch_init(void);
> -void pci_mmcfg_arch_free(void);
> -int pci_mmcfg_arch_map(struct pci_mmcfg_region *cfg);
> -void pci_mmcfg_arch_unmap(struct pci_mmcfg_region *cfg);
> +int pci_ecam_arch_init(void);
> +void pci_ecam_arch_free(void);
> +int pci_ecam_arch_map(struct pci_ecam_region *cfg);
> +void pci_ecam_arch_unmap(struct pci_ecam_region *cfg);
> extern u32 pci_mmio_read(int len, void __iomem *addr);
> extern void pci_mmio_write(int len, void __iomem *addr, u32 value);
> -extern void pci_mmconfig_register_mmio(struct pci_mmcfg_mmio_ops *ops);
> +extern void pci_ecam_register_mmio(struct pci_ecam_mmio_ops *ops);
>
> -extern struct list_head pci_mmcfg_list;
> +extern struct list_head pci_ecam_list;
>
> -#define PCI_MMCFG_BUS_OFFSET(bus) ((bus) << 20)
> +#define PCI_ECAM_BUS_OFFSET(bus) ((bus) << 20)
>
> -int pci_mmcfg_read(unsigned int seg, unsigned int bus,
> +int pci_ecam_read(unsigned int seg, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 *value);
> -int pci_mmcfg_write(unsigned int seg, unsigned int bus,
> +int pci_ecam_write(unsigned int seg, unsigned int bus,
> unsigned int devfn, int reg, int len, u32 value);
>
> #endif /* __KERNEL__ */
>
More information about the linux-arm-kernel
mailing list