From 39f0d6fbdc3f205d0c61a9c530c6827193cba64b Mon Sep 17 00:00:00 2001 From: Gavin Shan Date: Thu, 29 Sep 2016 15:52:04 +1000 Subject: [PATCH] drivers/pci/hotplug: Use of_property_read_u32() in powernv driver This replaces of_get_property() with of_property_read_u32() or of_property_read_string() so that we needn't consider the endian issue, the returned value always is in CPU-endian. Signed-off-by: Gavin Shan [mpe: Fold in the change to the "ibm,slot-surprise-pluggable" case] Signed-off-by: Michael Ellerman --- drivers/pci/hotplug/pnv_php.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/drivers/pci/hotplug/pnv_php.c b/drivers/pci/hotplug/pnv_php.c index 5dd0d4f2f907..56efaf72d08e 100644 --- a/drivers/pci/hotplug/pnv_php.c +++ b/drivers/pci/hotplug/pnv_php.c @@ -547,9 +547,10 @@ static struct pnv_php_slot *pnv_php_alloc_slot(struct device_node *dn) struct pci_bus *bus; const char *label; uint64_t id; + int ret; - label = of_get_property(dn, "ibm,slot-label", NULL); - if (!label) + ret = of_property_read_string(dn, "ibm,slot-label", &label); + if (ret) return NULL; if (pnv_pci_get_slot_id(dn, &id)) @@ -821,16 +822,16 @@ static void pnv_php_enable_irq(struct pnv_php_slot *php_slot) static int pnv_php_register_one(struct device_node *dn) { struct pnv_php_slot *php_slot; - const __be32 *prop32; + u32 prop32; int ret; /* Check if it's hotpluggable slot */ - prop32 = of_get_property(dn, "ibm,slot-pluggable", NULL); - if (!prop32 || !of_read_number(prop32, 1)) + ret = of_property_read_u32(dn, "ibm,slot-pluggable", &prop32); + if (ret || !prop32) return -ENXIO; - prop32 = of_get_property(dn, "ibm,reset-by-firmware", NULL); - if (!prop32 || !of_read_number(prop32, 1)) + ret = of_property_read_u32(dn, "ibm,reset-by-firmware", &prop32); + if (ret || !prop32) return -ENXIO; php_slot = pnv_php_alloc_slot(dn); @@ -846,8 +847,8 @@ static int pnv_php_register_one(struct device_node *dn) goto unregister_slot; /* Enable interrupt if the slot supports surprise hotplug */ - prop32 = of_get_property(dn, "ibm,slot-surprise-pluggable", NULL); - if (prop32 && of_read_number(prop32, 1)) + ret = of_property_read_u32(dn, "ibm,slot-surprise-pluggable", &prop32); + if (!ret && prop32) pnv_php_enable_irq(php_slot); return 0; -- 2.20.1