Lines Matching refs:phy
35 struct usb_phy phy; member
107 if (!gpio_vbus->phy.otg->gadget) in gpio_vbus_work()
124 gpio_vbus->phy.otg->state = OTG_STATE_B_PERIPHERAL; in gpio_vbus_work()
125 gpio_vbus->phy.last_event = status; in gpio_vbus_work()
126 usb_gadget_vbus_connect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work()
135 atomic_notifier_call_chain(&gpio_vbus->phy.notifier, in gpio_vbus_work()
136 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work()
137 usb_phy_set_event(&gpio_vbus->phy, USB_EVENT_ENUMERATED); in gpio_vbus_work()
145 usb_gadget_vbus_disconnect(gpio_vbus->phy.otg->gadget); in gpio_vbus_work()
147 gpio_vbus->phy.otg->state = OTG_STATE_B_IDLE; in gpio_vbus_work()
148 gpio_vbus->phy.last_event = status; in gpio_vbus_work()
150 atomic_notifier_call_chain(&gpio_vbus->phy.notifier, in gpio_vbus_work()
151 status, gpio_vbus->phy.otg->gadget); in gpio_vbus_work()
152 usb_phy_set_event(&gpio_vbus->phy, USB_EVENT_NONE); in gpio_vbus_work()
162 struct usb_otg *otg = gpio_vbus->phy.otg; in gpio_vbus_irq()
185 gpio_vbus = container_of(otg->usb_phy, struct gpio_vbus_data, phy); in gpio_vbus_set_peripheral()
217 static int gpio_vbus_set_power(struct usb_phy *phy, unsigned mA) in gpio_vbus_set_power() argument
221 gpio_vbus = container_of(phy, struct gpio_vbus_data, phy); in gpio_vbus_set_power()
223 if (phy->otg->state == OTG_STATE_B_PERIPHERAL) in gpio_vbus_set_power()
229 static int gpio_vbus_set_suspend(struct usb_phy *phy, int suspend) in gpio_vbus_set_suspend() argument
233 gpio_vbus = container_of(phy, struct gpio_vbus_data, phy); in gpio_vbus_set_suspend()
241 return gpio_vbus_set_power(phy, suspend ? 0 : gpio_vbus->mA); in gpio_vbus_set_suspend()
263 gpio_vbus->phy.otg = devm_kzalloc(&pdev->dev, sizeof(struct usb_otg), in gpio_vbus_probe()
265 if (!gpio_vbus->phy.otg) in gpio_vbus_probe()
270 gpio_vbus->phy.label = "gpio-vbus"; in gpio_vbus_probe()
271 gpio_vbus->phy.dev = gpio_vbus->dev; in gpio_vbus_probe()
272 gpio_vbus->phy.set_power = gpio_vbus_set_power; in gpio_vbus_probe()
273 gpio_vbus->phy.set_suspend = gpio_vbus_set_suspend; in gpio_vbus_probe()
275 gpio_vbus->phy.otg->state = OTG_STATE_UNDEFINED; in gpio_vbus_probe()
276 gpio_vbus->phy.otg->usb_phy = &gpio_vbus->phy; in gpio_vbus_probe()
277 gpio_vbus->phy.otg->set_peripheral = gpio_vbus_set_peripheral; in gpio_vbus_probe()
329 err = usb_add_phy(&gpio_vbus->phy, USB_PHY_TYPE_USB2); in gpio_vbus_probe()
348 usb_remove_phy(&gpio_vbus->phy); in gpio_vbus_remove()