lkml.org 
[lkml]   [2019]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v3 10/12] hikey960: Support usb functionality of Hikey960
On Sat, Mar 2, 2019 at 11:05 AM Yu Chen <chenyu56@huawei.com> wrote:
>
> This driver handles usb hub power on and typeC port event of HiKey960 board:
> 1)DP&DM switching between usb hub and typeC port base on typeC port
> state
> 2)Control power of usb hub on Hikey960
> 3)Control vbus of typeC port

> +config HISI_HIKEY_USB
> + tristate "USB functionality of HiSilicon Hikey Platform"
> + depends on OF && GPIOLIB
> + help
> + If you say yes here you get support for usb functionality of HiSilicon Hikey Platform.

> +#include <linux/of.h>

It's hard to see why this have
depends on OF followed by above header inclusion.

> + hisi_hikey_usb->typec_vbus = devm_gpiod_get(dev, "typec-vbus",
> + GPIOD_OUT_LOW);

> + if (!hisi_hikey_usb->typec_vbus)
> + return -ENOENT;

Hmm... Is it possible to get NULL pointer from gpiod_get() at all?

> + if (!hisi_hikey_usb->otg_switch)
> + return -ENOENT;

Ditto.

> + /* hub-vdd33-en is optional */
> + hisi_hikey_usb->hub_vbus = devm_gpiod_get(dev, "hub-vdd33-en",
> + GPIOD_OUT_HIGH);

devm_gpio_get_optional() if it's indeed optional.

> + hisi_hikey_usb->role_sw = usb_role_switch_get(dev);
> + if (!hisi_hikey_usb->role_sw)
> + return -EPROBE_DEFER;

> + else if (IS_ERR(hisi_hikey_usb->role_sw))

Redundant 'else'

> + return PTR_ERR(hisi_hikey_usb->role_sw);

> +static const struct of_device_id id_table_hisi_hikey_usb[] = {
> + {.compatible = "hisilicon,gpio_hubv1"},
> + {.compatible = "hisilicon,hikey960_usb"},
> + {}
> +};

MODULE_DEVICE_TABLE()?

--
With Best Regards,
Andy Shevchenko

\
 
 \ /
  Last update: 2019-03-02 17:02    [W:0.275 / U:0.436 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site