From: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
To: Rob Herring <robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
Paul Mundt <lethal-M7jkjyW5wf5g9hUCZPvPmw@public.gmane.org>,
Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] devicetree: add helper inline for retrieving a node's full name
Date: Wed, 11 Jul 2012 14:57:27 +0100 [thread overview]
Message-ID: <20120711135727.666D43E09CC@localhost> (raw)
In-Reply-To: <4FF5BBC3.6020900-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
On Thu, 05 Jul 2012 11:07:31 -0500, Rob Herring <robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> Grant,
>
> On 06/15/2012 12:50 PM, Grant Likely wrote:
> > The pattern (np ? np->full_name : "<none>") is rather common in the
> > kernel, but can also make for quite long lines. This patch adds a new
> > inline function, of_node_full_name() so that the test for a valid node
> > pointer doesn't need to be open coded at all call sites.
> >
> > Signed-off-by: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
> > Cc: Paul Mundt <lethal-M7jkjyW5wf5g9hUCZPvPmw@public.gmane.org>
> > Cc: Benjamin Herrenschmidt <benh-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org>
> > Cc: Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>
> > ---
>
> I'm assuming you want me to apply this now, so I have.
I've had this one in linux-next via irqdomain/next for a while now, and
the next round of irqdomain patches are based on it.
g.
>
> Rob
>
> > arch/microblaze/pci/pci-common.c | 6 ++----
> > arch/powerpc/kernel/pci-common.c | 6 ++----
> > arch/powerpc/kernel/vio.c | 5 ++---
> > arch/powerpc/platforms/cell/iommu.c | 3 +--
> > arch/powerpc/platforms/pseries/iommu.c | 2 +-
> > arch/sparc/kernel/of_device_64.c | 2 +-
> > drivers/of/base.c | 2 +-
> > drivers/of/irq.c | 2 +-
> > include/linux/of.h | 10 ++++++++++
> > kernel/irq/irqdomain.c | 8 ++++----
> > 10 files changed, 25 insertions(+), 21 deletions(-)
> >
> > diff --git a/arch/microblaze/pci/pci-common.c b/arch/microblaze/pci/pci-common.c
> > index ed22bfc..ca8f6e7 100644
> > --- a/arch/microblaze/pci/pci-common.c
> > +++ b/arch/microblaze/pci/pci-common.c
> > @@ -249,8 +249,7 @@ int pci_read_irq_line(struct pci_dev *pci_dev)
> > } else {
> > pr_debug(" Got one, spec %d cells (0x%08x 0x%08x...) on %s\n",
> > oirq.size, oirq.specifier[0], oirq.specifier[1],
> > - oirq.controller ? oirq.controller->full_name :
> > - "<default>");
> > + of_node_full_name(oirq.controller));
> >
> > virq = irq_create_of_mapping(oirq.controller, oirq.specifier,
> > oirq.size);
> > @@ -1493,8 +1492,7 @@ static void __devinit pcibios_scan_phb(struct pci_controller *hose)
> > struct pci_bus *bus;
> > struct device_node *node = hose->dn;
> >
> > - pr_debug("PCI: Scanning PHB %s\n",
> > - node ? node->full_name : "<NO NAME>");
> > + pr_debug("PCI: Scanning PHB %s\n", of_node_full_name(node));
> >
> > pcibios_setup_phb_resources(hose, &resources);
> >
> > diff --git a/arch/powerpc/kernel/pci-common.c b/arch/powerpc/kernel/pci-common.c
> > index 8e78e93..886c254 100644
> > --- a/arch/powerpc/kernel/pci-common.c
> > +++ b/arch/powerpc/kernel/pci-common.c
> > @@ -248,8 +248,7 @@ static int pci_read_irq_line(struct pci_dev *pci_dev)
> > } else {
> > pr_debug(" Got one, spec %d cells (0x%08x 0x%08x...) on %s\n",
> > oirq.size, oirq.specifier[0], oirq.specifier[1],
> > - oirq.controller ? oirq.controller->full_name :
> > - "<default>");
> > + of_node_full_name(oirq.controller));
> >
> > virq = irq_create_of_mapping(oirq.controller, oirq.specifier,
> > oirq.size);
> > @@ -1628,8 +1627,7 @@ void __devinit pcibios_scan_phb(struct pci_controller *hose)
> > struct device_node *node = hose->dn;
> > int mode;
> >
> > - pr_debug("PCI: Scanning PHB %s\n",
> > - node ? node->full_name : "<NO NAME>");
> > + pr_debug("PCI: Scanning PHB %s\n", of_node_full_name(node));
> >
> > /* Get some IO space for the new PHB */
> > pcibios_setup_phb_io_space(hose);
> > diff --git a/arch/powerpc/kernel/vio.c b/arch/powerpc/kernel/vio.c
> > index cb87301..63f72ed 100644
> > --- a/arch/powerpc/kernel/vio.c
> > +++ b/arch/powerpc/kernel/vio.c
> > @@ -1296,8 +1296,7 @@ static void __devinit vio_dev_release(struct device *dev)
> > struct iommu_table *tbl = get_iommu_table_base(dev);
> >
> > if (tbl)
> > - iommu_free_table(tbl, dev->of_node ?
> > - dev->of_node->full_name : dev_name(dev));
> > + iommu_free_table(tbl, of_node_full_name(dev->of_node));
> > of_node_put(dev->of_node);
> > kfree(to_vio_dev(dev));
> > }
> > @@ -1509,7 +1508,7 @@ static ssize_t devspec_show(struct device *dev,
> > {
> > struct device_node *of_node = dev->of_node;
> >
> > - return sprintf(buf, "%s\n", of_node ? of_node->full_name : "none");
> > + return sprintf(buf, "%s\n", of_node_full_name(of_node));
> > }
> >
> > static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> > diff --git a/arch/powerpc/platforms/cell/iommu.c b/arch/powerpc/platforms/cell/iommu.c
> > index b9f509a..b673200 100644
> > --- a/arch/powerpc/platforms/cell/iommu.c
> > +++ b/arch/powerpc/platforms/cell/iommu.c
> > @@ -552,8 +552,7 @@ static struct iommu_table *cell_get_iommu_table(struct device *dev)
> > iommu = cell_iommu_for_node(dev_to_node(dev));
> > if (iommu == NULL || list_empty(&iommu->windows)) {
> > printk(KERN_ERR "iommu: missing iommu for %s (node %d)\n",
> > - dev->of_node ? dev->of_node->full_name : "?",
> > - dev_to_node(dev));
> > + of_node_full_name(dev->of_node), dev_to_node(dev));
> > return NULL;
> > }
> > window = list_entry(iommu->windows.next, struct iommu_window, list);
> > diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c
> > index 0915b1a..aab5fbc 100644
> > --- a/arch/powerpc/platforms/pseries/iommu.c
> > +++ b/arch/powerpc/platforms/pseries/iommu.c
> > @@ -1051,7 +1051,7 @@ static void pci_dma_dev_setup_pSeriesLP(struct pci_dev *dev)
> > if (!pdn || !PCI_DN(pdn)) {
> > printk(KERN_WARNING "pci_dma_dev_setup_pSeriesLP: "
> > "no DMA window found for pci dev=%s dn=%s\n",
> > - pci_name(dev), dn? dn->full_name : "<null>");
> > + pci_name(dev), of_node_full_name(dn));
> > return;
> > }
> > pr_debug(" parent is %s\n", pdn->full_name);
> > diff --git a/arch/sparc/kernel/of_device_64.c b/arch/sparc/kernel/of_device_64.c
> > index 7a3be6f..7bbdc26 100644
> > --- a/arch/sparc/kernel/of_device_64.c
> > +++ b/arch/sparc/kernel/of_device_64.c
> > @@ -580,7 +580,7 @@ static unsigned int __init build_one_device_irq(struct platform_device *op,
> > printk("%s: Apply [%s:%x] imap --> [%s:%x]\n",
> > op->dev.of_node->full_name,
> > pp->full_name, this_orig_irq,
> > - (iret ? iret->full_name : "NULL"), irq);
> > + of_node_full_name(iret), irq);
> >
> > if (!iret)
> > break;
> > diff --git a/drivers/of/base.c b/drivers/of/base.c
> > index d9bfd49..9282d4c 100644
> > --- a/drivers/of/base.c
> > +++ b/drivers/of/base.c
> > @@ -1173,7 +1173,7 @@ static void of_alias_add(struct alias_prop *ap, struct device_node *np,
> > ap->stem[stem_len] = 0;
> > list_add_tail(&ap->link, &aliases_lookup);
> > pr_debug("adding DT alias:%s: stem=%s id=%i node=%s\n",
> > - ap->alias, ap->stem, ap->id, np ? np->full_name : NULL);
> > + ap->alias, ap->stem, ap->id, of_node_full_name(np));
> > }
> >
> > /**
> > diff --git a/drivers/of/irq.c b/drivers/of/irq.c
> > index 9cf0060..ff8ab7b 100644
> > --- a/drivers/of/irq.c
> > +++ b/drivers/of/irq.c
> > @@ -255,7 +255,7 @@ int of_irq_map_raw(struct device_node *parent, const __be32 *intspec,
> >
> > skiplevel:
> > /* Iterate again with new parent */
> > - pr_debug(" -> new parent: %s\n", newpar ? newpar->full_name : "<>");
> > + pr_debug(" -> new parent: %s\n", of_node_full_name(newpar));
> > of_node_put(ipar);
> > ipar = newpar;
> > newpar = NULL;
> > diff --git a/include/linux/of.h b/include/linux/of.h
> > index 2ec1083..1012377 100644
> > --- a/include/linux/of.h
> > +++ b/include/linux/of.h
> > @@ -163,6 +163,11 @@ static inline int of_node_to_nid(struct device_node *np) { return -1; }
> > #define of_node_to_nid of_node_to_nid
> > #endif
> >
> > +static inline const char* of_node_full_name(struct device_node *np)
> > +{
> > + return np ? np->full_name : "<no-node>";
> > +}
> > +
> > extern struct device_node *of_find_node_by_name(struct device_node *from,
> > const char *name);
> > #define for_each_node_by_name(dn, name) \
> > @@ -303,6 +308,11 @@ const char *of_prop_next_string(struct property *prop, const char *cur);
> >
> > #else /* CONFIG_OF */
> >
> > +static inline const char* of_node_full_name(struct device_node *np)
> > +{
> > + return "<no-node>";
> > +}
> > +
> > static inline bool of_have_populated_dt(void)
> > {
> > return false;
> > diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
> > index 41c1564..38c5eb8 100644
> > --- a/kernel/irq/irqdomain.c
> > +++ b/kernel/irq/irqdomain.c
> > @@ -448,7 +448,7 @@ unsigned int irq_create_mapping(struct irq_domain *domain,
> > }
> >
> > pr_debug("irq %lu on domain %s mapped to virtual irq %u\n",
> > - hwirq, domain->of_node ? domain->of_node->full_name : "null", virq);
> > + hwirq, of_node_full_name(domain->of_node), virq);
> >
> > return virq;
> > }
> > @@ -477,7 +477,7 @@ unsigned int irq_create_of_mapping(struct device_node *controller,
> > return intspec[0];
> > #endif
> > pr_warning("no irq domain found for %s !\n",
> > - controller->full_name);
> > + of_node_full_name(controller));
> > return 0;
> > }
> >
> > @@ -725,8 +725,8 @@ static int virq_debug_show(struct seq_file *m, void *private)
> > data = irq_desc_get_chip_data(desc);
> > seq_printf(m, data ? "0x%p " : " %p ", data);
> >
> > - if (desc->irq_data.domain && desc->irq_data.domain->of_node)
> > - p = desc->irq_data.domain->of_node->full_name;
> > + if (desc->irq_data.domain)
> > + p = of_node_full_name(desc->irq_data.domain->of_node);
> > else
> > p = none;
> > seq_printf(m, "%s\n", p);
> >
>
>
--
Grant Likely, B.Sc, P.Eng.
Secret Lab Technologies, Ltd.
WARNING: multiple messages have this Message-ID (diff)
From: Grant Likely <grant.likely@secretlab.ca>
To: Rob Herring <robherring2@gmail.com>
Cc: linux-kernel@vger.kernel.org,
devicetree-discuss@lists.ozlabs.org,
Thomas Gleixner <tglx@linutronix.de>,
Paul Mundt <lethal@linux-sh.org>
Subject: Re: [PATCH] devicetree: add helper inline for retrieving a node's full name
Date: Wed, 11 Jul 2012 14:57:27 +0100 [thread overview]
Message-ID: <20120711135727.666D43E09CC@localhost> (raw)
In-Reply-To: <4FF5BBC3.6020900@gmail.com>
On Thu, 05 Jul 2012 11:07:31 -0500, Rob Herring <robherring2@gmail.com> wrote:
> Grant,
>
> On 06/15/2012 12:50 PM, Grant Likely wrote:
> > The pattern (np ? np->full_name : "<none>") is rather common in the
> > kernel, but can also make for quite long lines. This patch adds a new
> > inline function, of_node_full_name() so that the test for a valid node
> > pointer doesn't need to be open coded at all call sites.
> >
> > Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
> > Cc: Paul Mundt <lethal@linux-sh.org>
> > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> > Cc: Thomas Gleixner <tglx@linutronix.de>
> > ---
>
> I'm assuming you want me to apply this now, so I have.
I've had this one in linux-next via irqdomain/next for a while now, and
the next round of irqdomain patches are based on it.
g.
>
> Rob
>
> > arch/microblaze/pci/pci-common.c | 6 ++----
> > arch/powerpc/kernel/pci-common.c | 6 ++----
> > arch/powerpc/kernel/vio.c | 5 ++---
> > arch/powerpc/platforms/cell/iommu.c | 3 +--
> > arch/powerpc/platforms/pseries/iommu.c | 2 +-
> > arch/sparc/kernel/of_device_64.c | 2 +-
> > drivers/of/base.c | 2 +-
> > drivers/of/irq.c | 2 +-
> > include/linux/of.h | 10 ++++++++++
> > kernel/irq/irqdomain.c | 8 ++++----
> > 10 files changed, 25 insertions(+), 21 deletions(-)
> >
> > diff --git a/arch/microblaze/pci/pci-common.c b/arch/microblaze/pci/pci-common.c
> > index ed22bfc..ca8f6e7 100644
> > --- a/arch/microblaze/pci/pci-common.c
> > +++ b/arch/microblaze/pci/pci-common.c
> > @@ -249,8 +249,7 @@ int pci_read_irq_line(struct pci_dev *pci_dev)
> > } else {
> > pr_debug(" Got one, spec %d cells (0x%08x 0x%08x...) on %s\n",
> > oirq.size, oirq.specifier[0], oirq.specifier[1],
> > - oirq.controller ? oirq.controller->full_name :
> > - "<default>");
> > + of_node_full_name(oirq.controller));
> >
> > virq = irq_create_of_mapping(oirq.controller, oirq.specifier,
> > oirq.size);
> > @@ -1493,8 +1492,7 @@ static void __devinit pcibios_scan_phb(struct pci_controller *hose)
> > struct pci_bus *bus;
> > struct device_node *node = hose->dn;
> >
> > - pr_debug("PCI: Scanning PHB %s\n",
> > - node ? node->full_name : "<NO NAME>");
> > + pr_debug("PCI: Scanning PHB %s\n", of_node_full_name(node));
> >
> > pcibios_setup_phb_resources(hose, &resources);
> >
> > diff --git a/arch/powerpc/kernel/pci-common.c b/arch/powerpc/kernel/pci-common.c
> > index 8e78e93..886c254 100644
> > --- a/arch/powerpc/kernel/pci-common.c
> > +++ b/arch/powerpc/kernel/pci-common.c
> > @@ -248,8 +248,7 @@ static int pci_read_irq_line(struct pci_dev *pci_dev)
> > } else {
> > pr_debug(" Got one, spec %d cells (0x%08x 0x%08x...) on %s\n",
> > oirq.size, oirq.specifier[0], oirq.specifier[1],
> > - oirq.controller ? oirq.controller->full_name :
> > - "<default>");
> > + of_node_full_name(oirq.controller));
> >
> > virq = irq_create_of_mapping(oirq.controller, oirq.specifier,
> > oirq.size);
> > @@ -1628,8 +1627,7 @@ void __devinit pcibios_scan_phb(struct pci_controller *hose)
> > struct device_node *node = hose->dn;
> > int mode;
> >
> > - pr_debug("PCI: Scanning PHB %s\n",
> > - node ? node->full_name : "<NO NAME>");
> > + pr_debug("PCI: Scanning PHB %s\n", of_node_full_name(node));
> >
> > /* Get some IO space for the new PHB */
> > pcibios_setup_phb_io_space(hose);
> > diff --git a/arch/powerpc/kernel/vio.c b/arch/powerpc/kernel/vio.c
> > index cb87301..63f72ed 100644
> > --- a/arch/powerpc/kernel/vio.c
> > +++ b/arch/powerpc/kernel/vio.c
> > @@ -1296,8 +1296,7 @@ static void __devinit vio_dev_release(struct device *dev)
> > struct iommu_table *tbl = get_iommu_table_base(dev);
> >
> > if (tbl)
> > - iommu_free_table(tbl, dev->of_node ?
> > - dev->of_node->full_name : dev_name(dev));
> > + iommu_free_table(tbl, of_node_full_name(dev->of_node));
> > of_node_put(dev->of_node);
> > kfree(to_vio_dev(dev));
> > }
> > @@ -1509,7 +1508,7 @@ static ssize_t devspec_show(struct device *dev,
> > {
> > struct device_node *of_node = dev->of_node;
> >
> > - return sprintf(buf, "%s\n", of_node ? of_node->full_name : "none");
> > + return sprintf(buf, "%s\n", of_node_full_name(of_node));
> > }
> >
> > static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> > diff --git a/arch/powerpc/platforms/cell/iommu.c b/arch/powerpc/platforms/cell/iommu.c
> > index b9f509a..b673200 100644
> > --- a/arch/powerpc/platforms/cell/iommu.c
> > +++ b/arch/powerpc/platforms/cell/iommu.c
> > @@ -552,8 +552,7 @@ static struct iommu_table *cell_get_iommu_table(struct device *dev)
> > iommu = cell_iommu_for_node(dev_to_node(dev));
> > if (iommu == NULL || list_empty(&iommu->windows)) {
> > printk(KERN_ERR "iommu: missing iommu for %s (node %d)\n",
> > - dev->of_node ? dev->of_node->full_name : "?",
> > - dev_to_node(dev));
> > + of_node_full_name(dev->of_node), dev_to_node(dev));
> > return NULL;
> > }
> > window = list_entry(iommu->windows.next, struct iommu_window, list);
> > diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c
> > index 0915b1a..aab5fbc 100644
> > --- a/arch/powerpc/platforms/pseries/iommu.c
> > +++ b/arch/powerpc/platforms/pseries/iommu.c
> > @@ -1051,7 +1051,7 @@ static void pci_dma_dev_setup_pSeriesLP(struct pci_dev *dev)
> > if (!pdn || !PCI_DN(pdn)) {
> > printk(KERN_WARNING "pci_dma_dev_setup_pSeriesLP: "
> > "no DMA window found for pci dev=%s dn=%s\n",
> > - pci_name(dev), dn? dn->full_name : "<null>");
> > + pci_name(dev), of_node_full_name(dn));
> > return;
> > }
> > pr_debug(" parent is %s\n", pdn->full_name);
> > diff --git a/arch/sparc/kernel/of_device_64.c b/arch/sparc/kernel/of_device_64.c
> > index 7a3be6f..7bbdc26 100644
> > --- a/arch/sparc/kernel/of_device_64.c
> > +++ b/arch/sparc/kernel/of_device_64.c
> > @@ -580,7 +580,7 @@ static unsigned int __init build_one_device_irq(struct platform_device *op,
> > printk("%s: Apply [%s:%x] imap --> [%s:%x]\n",
> > op->dev.of_node->full_name,
> > pp->full_name, this_orig_irq,
> > - (iret ? iret->full_name : "NULL"), irq);
> > + of_node_full_name(iret), irq);
> >
> > if (!iret)
> > break;
> > diff --git a/drivers/of/base.c b/drivers/of/base.c
> > index d9bfd49..9282d4c 100644
> > --- a/drivers/of/base.c
> > +++ b/drivers/of/base.c
> > @@ -1173,7 +1173,7 @@ static void of_alias_add(struct alias_prop *ap, struct device_node *np,
> > ap->stem[stem_len] = 0;
> > list_add_tail(&ap->link, &aliases_lookup);
> > pr_debug("adding DT alias:%s: stem=%s id=%i node=%s\n",
> > - ap->alias, ap->stem, ap->id, np ? np->full_name : NULL);
> > + ap->alias, ap->stem, ap->id, of_node_full_name(np));
> > }
> >
> > /**
> > diff --git a/drivers/of/irq.c b/drivers/of/irq.c
> > index 9cf0060..ff8ab7b 100644
> > --- a/drivers/of/irq.c
> > +++ b/drivers/of/irq.c
> > @@ -255,7 +255,7 @@ int of_irq_map_raw(struct device_node *parent, const __be32 *intspec,
> >
> > skiplevel:
> > /* Iterate again with new parent */
> > - pr_debug(" -> new parent: %s\n", newpar ? newpar->full_name : "<>");
> > + pr_debug(" -> new parent: %s\n", of_node_full_name(newpar));
> > of_node_put(ipar);
> > ipar = newpar;
> > newpar = NULL;
> > diff --git a/include/linux/of.h b/include/linux/of.h
> > index 2ec1083..1012377 100644
> > --- a/include/linux/of.h
> > +++ b/include/linux/of.h
> > @@ -163,6 +163,11 @@ static inline int of_node_to_nid(struct device_node *np) { return -1; }
> > #define of_node_to_nid of_node_to_nid
> > #endif
> >
> > +static inline const char* of_node_full_name(struct device_node *np)
> > +{
> > + return np ? np->full_name : "<no-node>";
> > +}
> > +
> > extern struct device_node *of_find_node_by_name(struct device_node *from,
> > const char *name);
> > #define for_each_node_by_name(dn, name) \
> > @@ -303,6 +308,11 @@ const char *of_prop_next_string(struct property *prop, const char *cur);
> >
> > #else /* CONFIG_OF */
> >
> > +static inline const char* of_node_full_name(struct device_node *np)
> > +{
> > + return "<no-node>";
> > +}
> > +
> > static inline bool of_have_populated_dt(void)
> > {
> > return false;
> > diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
> > index 41c1564..38c5eb8 100644
> > --- a/kernel/irq/irqdomain.c
> > +++ b/kernel/irq/irqdomain.c
> > @@ -448,7 +448,7 @@ unsigned int irq_create_mapping(struct irq_domain *domain,
> > }
> >
> > pr_debug("irq %lu on domain %s mapped to virtual irq %u\n",
> > - hwirq, domain->of_node ? domain->of_node->full_name : "null", virq);
> > + hwirq, of_node_full_name(domain->of_node), virq);
> >
> > return virq;
> > }
> > @@ -477,7 +477,7 @@ unsigned int irq_create_of_mapping(struct device_node *controller,
> > return intspec[0];
> > #endif
> > pr_warning("no irq domain found for %s !\n",
> > - controller->full_name);
> > + of_node_full_name(controller));
> > return 0;
> > }
> >
> > @@ -725,8 +725,8 @@ static int virq_debug_show(struct seq_file *m, void *private)
> > data = irq_desc_get_chip_data(desc);
> > seq_printf(m, data ? "0x%p " : " %p ", data);
> >
> > - if (desc->irq_data.domain && desc->irq_data.domain->of_node)
> > - p = desc->irq_data.domain->of_node->full_name;
> > + if (desc->irq_data.domain)
> > + p = of_node_full_name(desc->irq_data.domain->of_node);
> > else
> > p = none;
> > seq_printf(m, "%s\n", p);
> >
>
>
--
Grant Likely, B.Sc, P.Eng.
Secret Lab Technologies, Ltd.
next prev parent reply other threads:[~2012-07-11 13:57 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-15 17:50 [PATCH] devicetree: add helper inline for retrieving a node's full name Grant Likely
2012-06-15 22:57 ` Benjamin Herrenschmidt
2012-06-16 4:00 ` Grant Likely
2012-06-16 4:59 ` Benjamin Herrenschmidt
2012-07-05 16:07 ` Rob Herring
[not found] ` <4FF5BBC3.6020900-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-07-11 13:57 ` Grant Likely [this message]
2012-07-11 13:57 ` Grant Likely
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=20120711135727.666D43E09CC@localhost \
--to=grant.likely-s3s/wqlpoipyb63q8fvjnq@public.gmane.org \
--cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
--cc=lethal-M7jkjyW5wf5g9hUCZPvPmw@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.