diff options
author | Dongjin Kim <tobetter@gmail.com> | 2013-01-12 15:54:33 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-01-17 22:21:15 +0400 |
commit | 7a8ea7ebe4cf698918e7d3c860587e815eaa0f28 (patch) | |
tree | 21110e14d410ac5b46b8aed4ca8c9af56b074137 /drivers/usb/misc | |
parent | 74ff31b81d94c139882258e9e4a73aca28d05b0a (diff) | |
download | linux-7a8ea7ebe4cf698918e7d3c860587e815eaa0f28.tar.xz |
USB: misc: fixup smatch WARNING
This patch fixes the warning,
6a099c63650e50ebf7d1259b859a3d230aec4207 [4/10] USB: misc: Add USB3503 High-Speed Hub Controller
drivers/usb/misc/usb3503.c:238 usb3503_probe() error: we previously assumed 'pdata' could be null (see line 196)
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/misc')
-rw-r--r-- | drivers/usb/misc/usb3503.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/usb/misc/usb3503.c b/drivers/usb/misc/usb3503.c index c3770734da42..dc2c993ea189 100644 --- a/drivers/usb/misc/usb3503.c +++ b/drivers/usb/misc/usb3503.c @@ -182,12 +182,12 @@ static int usb3503_probe(struct i2c_client *i2c, const struct i2c_device_id *id) { struct usb3503_platform_data *pdata = i2c->dev.platform_data; struct usb3503 *hub; - int err; + int err = -ENOMEM; hub = kzalloc(sizeof(struct usb3503), GFP_KERNEL); if (!hub) { dev_err(&i2c->dev, "private data alloc fail\n"); - return -ENOMEM; + return err; } i2c_set_clientdata(i2c, hub); @@ -195,6 +195,7 @@ static int usb3503_probe(struct i2c_client *i2c, const struct i2c_device_id *id) if (!pdata) { dev_dbg(&i2c->dev, "missing platform data\n"); + goto err_out; } else { hub->gpio_intn = pdata->gpio_intn; hub->gpio_connect = pdata->gpio_connect; @@ -209,7 +210,7 @@ static int usb3503_probe(struct i2c_client *i2c, const struct i2c_device_id *id) dev_err(&i2c->dev, "unable to request GPIO %d as connect pin (%d)\n", hub->gpio_intn, err); - goto err_gpio_intn; + goto err_out; } } @@ -248,7 +249,7 @@ err_gpio_reset: err_gpio_connect: if (gpio_is_valid(hub->gpio_intn)) gpio_free(hub->gpio_intn); -err_gpio_intn: +err_out: kfree(hub); return err; |