• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/drivers/usb/otg/

Lines Matching refs:gpio_vbus

22 #include <linux/usb/gpio_vbus.h>
58 static void set_vbus_draw(struct gpio_vbus_data *gpio_vbus, unsigned mA)
60 struct regulator *vbus_draw = gpio_vbus->vbus_draw;
66 enabled = gpio_vbus->vbus_draw_enabled;
71 gpio_vbus->vbus_draw_enabled = 1;
76 gpio_vbus->vbus_draw_enabled = 0;
79 gpio_vbus->mA = mA;
86 vbus = gpio_get_value(pdata->gpio_vbus);
95 struct gpio_vbus_data *gpio_vbus =
97 struct gpio_vbus_mach_info *pdata = gpio_vbus->dev->platform_data;
100 if (!gpio_vbus->otg.gadget)
110 gpio_vbus->otg.state = OTG_STATE_B_PERIPHERAL;
111 usb_gadget_vbus_connect(gpio_vbus->otg.gadget);
114 set_vbus_draw(gpio_vbus, 100);
124 set_vbus_draw(gpio_vbus, 0);
126 usb_gadget_vbus_disconnect(gpio_vbus->otg.gadget);
127 gpio_vbus->otg.state = OTG_STATE_B_IDLE;
136 struct gpio_vbus_data *gpio_vbus = platform_get_drvdata(pdev);
140 gpio_vbus->otg.gadget ? gpio_vbus->otg.gadget->name : "none");
142 if (gpio_vbus->otg.gadget)
143 schedule_work(&gpio_vbus->work);
154 struct gpio_vbus_data *gpio_vbus;
159 gpio_vbus = container_of(otg, struct gpio_vbus_data, otg);
160 pdev = to_platform_device(gpio_vbus->dev);
161 pdata = gpio_vbus->dev->platform_data;
162 irq = gpio_to_irq(pdata->gpio_vbus);
173 set_vbus_draw(gpio_vbus, 0);
193 struct gpio_vbus_data *gpio_vbus;
195 gpio_vbus = container_of(otg, struct gpio_vbus_data, otg);
198 set_vbus_draw(gpio_vbus, mA);
205 struct gpio_vbus_data *gpio_vbus;
207 gpio_vbus = container_of(otg, struct gpio_vbus_data, otg);
215 return gpio_vbus_set_power(otg, suspend ? 0 : gpio_vbus->mA);
223 struct gpio_vbus_data *gpio_vbus;
227 if (!pdata || !gpio_is_valid(pdata->gpio_vbus))
229 gpio = pdata->gpio_vbus;
231 gpio_vbus = kzalloc(sizeof(struct gpio_vbus_data), GFP_KERNEL);
232 if (!gpio_vbus)
235 platform_set_drvdata(pdev, gpio_vbus);
236 gpio_vbus->dev = &pdev->dev;
237 gpio_vbus->otg.label = "gpio-vbus";
238 gpio_vbus->otg.state = OTG_STATE_UNDEFINED;
239 gpio_vbus->otg.set_peripheral = gpio_vbus_set_peripheral;
240 gpio_vbus->otg.set_power = gpio_vbus_set_power;
241 gpio_vbus->otg.set_suspend = gpio_vbus_set_suspend;
267 gpio_free(pdata->gpio_vbus);
280 INIT_WORK(&gpio_vbus->work, gpio_vbus_work);
283 err = otg_set_transceiver(&gpio_vbus->otg);
290 gpio_vbus->vbus_draw = regulator_get(&pdev->dev, "vbus_draw");
291 if (IS_ERR(gpio_vbus->vbus_draw)) {
293 PTR_ERR(gpio_vbus->vbus_draw));
294 gpio_vbus->vbus_draw = NULL;
303 gpio_free(pdata->gpio_vbus);
306 kfree(gpio_vbus);
312 struct gpio_vbus_data *gpio_vbus = platform_get_drvdata(pdev);
314 int gpio = pdata->gpio_vbus;
316 regulator_put(gpio_vbus->vbus_draw);
325 kfree(gpio_vbus);