Symbol: onboard_dev
drivers/usb/misc/onboard_usb_dev.c
104
err = regulator_bulk_enable(onboard_dev->pdata->num_supplies,
drivers/usb/misc/onboard_usb_dev.c
105
onboard_dev->supplies);
drivers/usb/misc/onboard_usb_dev.c
107
dev_err(onboard_dev->dev, "failed to enable supplies: %pe\n",
drivers/usb/misc/onboard_usb_dev.c
112
fsleep(onboard_dev->pdata->reset_us);
drivers/usb/misc/onboard_usb_dev.c
113
gpiod_set_value_cansleep(onboard_dev->reset_gpio, 0);
drivers/usb/misc/onboard_usb_dev.c
114
fsleep(onboard_dev->pdata->power_on_delay_us);
drivers/usb/misc/onboard_usb_dev.c
116
onboard_dev->is_powered_on = true;
drivers/usb/misc/onboard_usb_dev.c
121
clk_disable_unprepare(onboard_dev->clk);
drivers/usb/misc/onboard_usb_dev.c
125
static int onboard_dev_power_off(struct onboard_dev *onboard_dev)
drivers/usb/misc/onboard_usb_dev.c
129
gpiod_set_value_cansleep(onboard_dev->reset_gpio, 1);
drivers/usb/misc/onboard_usb_dev.c
131
err = regulator_bulk_disable(onboard_dev->pdata->num_supplies,
drivers/usb/misc/onboard_usb_dev.c
132
onboard_dev->supplies);
drivers/usb/misc/onboard_usb_dev.c
134
dev_err(onboard_dev->dev, "failed to disable supplies: %pe\n",
drivers/usb/misc/onboard_usb_dev.c
139
clk_disable_unprepare(onboard_dev->clk);
drivers/usb/misc/onboard_usb_dev.c
141
onboard_dev->is_powered_on = false;
drivers/usb/misc/onboard_usb_dev.c
148
struct onboard_dev *onboard_dev = dev_get_drvdata(dev);
drivers/usb/misc/onboard_usb_dev.c
152
if (onboard_dev->always_powered_in_suspend)
drivers/usb/misc/onboard_usb_dev.c
155
mutex_lock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
157
list_for_each_entry(node, &onboard_dev->udev_list, list) {
drivers/usb/misc/onboard_usb_dev.c
167
mutex_unlock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
172
return onboard_dev_power_off(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
177
struct onboard_dev *onboard_dev = dev_get_drvdata(dev);
drivers/usb/misc/onboard_usb_dev.c
179
if (onboard_dev->is_powered_on)
drivers/usb/misc/onboard_usb_dev.c
182
return onboard_dev_power_on(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
191
static int onboard_dev_add_usbdev(struct onboard_dev *onboard_dev,
drivers/usb/misc/onboard_usb_dev.c
198
mutex_lock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
200
if (onboard_dev->going_away) {
drivers/usb/misc/onboard_usb_dev.c
213
list_add(&node->list, &onboard_dev->udev_list);
drivers/usb/misc/onboard_usb_dev.c
215
mutex_unlock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
218
WARN_ON(sysfs_create_link(&onboard_dev->dev->kobj, &udev->dev.kobj,
drivers/usb/misc/onboard_usb_dev.c
224
mutex_unlock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
229
static void onboard_dev_remove_usbdev(struct onboard_dev *onboard_dev,
drivers/usb/misc/onboard_usb_dev.c
236
sysfs_remove_link(&onboard_dev->dev->kobj, link_name);
drivers/usb/misc/onboard_usb_dev.c
238
mutex_lock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
240
list_for_each_entry(node, &onboard_dev->udev_list, list) {
drivers/usb/misc/onboard_usb_dev.c
248
mutex_unlock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
255
const struct onboard_dev *onboard_dev = dev_get_drvdata(dev);
drivers/usb/misc/onboard_usb_dev.c
257
return sysfs_emit(buf, "%d\n", onboard_dev->always_powered_in_suspend);
drivers/usb/misc/onboard_usb_dev.c
264
struct onboard_dev *onboard_dev = dev_get_drvdata(dev);
drivers/usb/misc/onboard_usb_dev.c
272
onboard_dev->always_powered_in_suspend = val;
drivers/usb/misc/onboard_usb_dev.c
288
struct onboard_dev *onboard_dev = dev_get_drvdata(dev);
drivers/usb/misc/onboard_usb_dev.c
291
!onboard_dev->pdata->is_hub)
drivers/usb/misc/onboard_usb_dev.c
301
__ATTRIBUTE_GROUPS(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
431
struct onboard_dev *onboard_dev;
drivers/usb/misc/onboard_usb_dev.c
435
onboard_dev = devm_kzalloc(dev, sizeof(*onboard_dev), GFP_KERNEL);
drivers/usb/misc/onboard_usb_dev.c
436
if (!onboard_dev)
drivers/usb/misc/onboard_usb_dev.c
439
onboard_dev->pdata = device_get_match_data(dev);
drivers/usb/misc/onboard_usb_dev.c
440
if (!onboard_dev->pdata)
drivers/usb/misc/onboard_usb_dev.c
443
if (!onboard_dev->pdata->is_hub)
drivers/usb/misc/onboard_usb_dev.c
444
onboard_dev->always_powered_in_suspend = true;
drivers/usb/misc/onboard_usb_dev.c
446
onboard_dev->dev = dev;
drivers/usb/misc/onboard_usb_dev.c
448
err = onboard_dev_get_regulators(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
452
onboard_dev->clk = devm_clk_get_optional(dev, NULL);
drivers/usb/misc/onboard_usb_dev.c
453
if (IS_ERR(onboard_dev->clk))
drivers/usb/misc/onboard_usb_dev.c
454
return dev_err_probe(dev, PTR_ERR(onboard_dev->clk),
drivers/usb/misc/onboard_usb_dev.c
457
onboard_dev->reset_gpio = devm_gpiod_get_optional(dev, "reset",
drivers/usb/misc/onboard_usb_dev.c
459
if (IS_ERR(onboard_dev->reset_gpio))
drivers/usb/misc/onboard_usb_dev.c
460
return dev_err_probe(dev, PTR_ERR(onboard_dev->reset_gpio),
drivers/usb/misc/onboard_usb_dev.c
463
mutex_init(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
464
INIT_LIST_HEAD(&onboard_dev->udev_list);
drivers/usb/misc/onboard_usb_dev.c
466
dev_set_drvdata(dev, onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
468
err = onboard_dev_power_on(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
489
onboard_dev->always_powered_in_suspend = true;
drivers/usb/misc/onboard_usb_dev.c
510
onboard_dev_power_off(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
516
struct onboard_dev *onboard_dev = dev_get_drvdata(&pdev->dev);
drivers/usb/misc/onboard_usb_dev.c
520
onboard_dev->going_away = true;
drivers/usb/misc/onboard_usb_dev.c
522
mutex_lock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
525
while (!list_empty(&onboard_dev->udev_list)) {
drivers/usb/misc/onboard_usb_dev.c
526
node = list_first_entry(&onboard_dev->udev_list,
drivers/usb/misc/onboard_usb_dev.c
536
mutex_unlock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
539
mutex_lock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
542
mutex_unlock(&onboard_dev->lock);
drivers/usb/misc/onboard_usb_dev.c
544
onboard_dev_power_off(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
581
static struct onboard_dev *_find_onboard_dev(struct device *dev)
drivers/usb/misc/onboard_usb_dev.c
585
struct onboard_dev *onboard_dev;
drivers/usb/misc/onboard_usb_dev.c
602
onboard_dev = dev_get_drvdata(&pdev->dev);
drivers/usb/misc/onboard_usb_dev.c
612
if (!onboard_dev)
drivers/usb/misc/onboard_usb_dev.c
615
return onboard_dev;
drivers/usb/misc/onboard_usb_dev.c
627
struct onboard_dev *onboard_dev;
drivers/usb/misc/onboard_usb_dev.c
630
onboard_dev = _find_onboard_dev(dev);
drivers/usb/misc/onboard_usb_dev.c
631
if (IS_ERR(onboard_dev))
drivers/usb/misc/onboard_usb_dev.c
632
return PTR_ERR(onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
634
dev_set_drvdata(dev, onboard_dev);
drivers/usb/misc/onboard_usb_dev.c
636
err = onboard_dev_add_usbdev(onboard_dev, udev);
drivers/usb/misc/onboard_usb_dev.c
645
struct onboard_dev *onboard_dev = dev_get_drvdata(&udev->dev);
drivers/usb/misc/onboard_usb_dev.c
647
onboard_dev_remove_usbdev(onboard_dev, udev);
drivers/usb/misc/onboard_usb_dev.c
70
static int onboard_dev_get_regulators(struct onboard_dev *onboard_dev)
drivers/usb/misc/onboard_usb_dev.c
72
const char * const *supply_names = onboard_dev->pdata->supply_names;
drivers/usb/misc/onboard_usb_dev.c
73
unsigned int num_supplies = onboard_dev->pdata->num_supplies;
drivers/usb/misc/onboard_usb_dev.c
74
struct device *dev = onboard_dev->dev;
drivers/usb/misc/onboard_usb_dev.c
83
onboard_dev->supplies[i].supply = supply_names[i];
drivers/usb/misc/onboard_usb_dev.c
85
err = devm_regulator_bulk_get(dev, num_supplies, onboard_dev->supplies);
drivers/usb/misc/onboard_usb_dev.c
93
static int onboard_dev_power_on(struct onboard_dev *onboard_dev)
drivers/usb/misc/onboard_usb_dev.c
97
err = clk_prepare_enable(onboard_dev->clk);
drivers/usb/misc/onboard_usb_dev.c
99
dev_err(onboard_dev->dev, "failed to enable clock: %pe\n",