Use of_get_named_gpio instead of of_property_read_u32.

Signed-off-by: Jürg Billeter <j...@bitron.ch>
---
 drivers/misc/ti-st/st_kim.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/drivers/misc/ti-st/st_kim.c b/drivers/misc/ti-st/st_kim.c
index af71584..8df8faa 100644
--- a/drivers/misc/ti-st/st_kim.c
+++ b/drivers/misc/ti-st/st_kim.c
@@ -38,6 +38,7 @@
 #include <linux/module.h>
 #include <linux/of.h>
 #include <linux/of_device.h>
+#include <linux/of_gpio.h>
 
 #define MAX_ST_DEVICES 3       /* Imagine 1 on each UART for now */
 static struct platform_device *st_kim_devices[MAX_ST_DEVICES];
@@ -749,7 +750,7 @@ static struct ti_st_plat_data *get_platform_data(struct 
device *dev)
 {
        struct device_node *np = dev->of_node;
        const u32 *dt_property;
-       int len;
+       int len, gpio;
 
        dt_pdata = kzalloc(sizeof(*dt_pdata), GFP_KERNEL);
 
@@ -761,8 +762,14 @@ static struct ti_st_plat_data *get_platform_data(struct 
device *dev)
        dt_property = of_get_property(np, "dev_name", &len);
        if (dt_property)
                memcpy(&dt_pdata->dev_name, dt_property, len);
-       of_property_read_u32(np, "nshutdown_gpio",
-                            &dt_pdata->nshutdown_gpio);
+
+       gpio = of_get_named_gpio(np, "nshutdown_gpio", 0);
+       if (gpio < 0) {
+               kfree(dt_pdata);
+               return ERR_PTR(gpio);
+       }
+       dt_pdata->nshutdown_gpio = gpio;
+
        of_property_read_u32(np, "flow_cntrl", &dt_pdata->flow_cntrl);
        of_property_read_u32(np, "baud_rate", &dt_pdata->baud_rate);
 
-- 
2.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to