lkml.org 
[lkml]   [2015]   [Jan]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 08/30] PCI: Introduce pci_host_assign_domain_nr() to assign domain
    Date
    Introduce pci_host_assign_domain_nr() to assign domain
    number for pci_host_bridge. Later we will remove
    pci_bus_assign_domain_nr().

    Signed-off-by: Yijing Wang <wangyijing@huawei.com>
    ---
    drivers/pci/pci.c | 14 +++++++++++---
    include/linux/pci.h | 4 ++++
    2 files changed, 15 insertions(+), 3 deletions(-)

    diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
    index c419554..3e10772 100644
    --- a/drivers/pci/pci.c
    +++ b/drivers/pci/pci.c
    @@ -4443,10 +4443,10 @@ int pci_get_new_domain_nr(void)
    }

    #ifdef CONFIG_PCI_DOMAINS_GENERIC
    -void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent)
    +static int pci_assign_domain_nr(struct device *dev)
    {
    static int use_dt_domains = -1;
    - int domain = of_get_pci_domain_nr(parent->of_node);
    + int domain = of_get_pci_domain_nr(dev->of_node);

    /*
    * Check DT domain and use_dt_domains values.
    @@ -4484,8 +4484,16 @@ void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent)
    parent->of_node->full_name);
    domain = -1;
    }
    +}

    - bus->domain_nr = domain;
    +void pci_host_assign_domain_nr(struct pci_host_bridge *host)
    +{
    + host->domain = pci_assign_domain_nr(host->dev.parent);
    +}
    +
    +void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent)
    +{
    + bus->domain_nr = pci_assign_domain_nr(parent);
    }
    #endif
    #endif
    diff --git a/include/linux/pci.h b/include/linux/pci.h
    index c771508..1b9c799 100644
    --- a/include/linux/pci.h
    +++ b/include/linux/pci.h
    @@ -1316,11 +1316,15 @@ static inline int pci_domain_nr(struct pci_bus *bus)
    return bus->domain_nr;
    }
    void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent);
    +void pci_host_assign_domain_nr(struct pci_host_bridge *host);
    #else
    static inline void pci_bus_assign_domain_nr(struct pci_bus *bus,
    struct device *parent)
    {
    }
    +static inline void pci_host_assign_domain_nr(struct pci_host_bridge *host)
    +{
    +}
    #endif

    /* some architectures require additional setup to direct VGA traffic */
    --
    1.7.1


    \
     
     \ /
      Last update: 2015-01-21 03:41    [W:6.330 / U:0.064 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site