Lines Matching defs:usb2
285 if (strcmp(soc->name, "usb2") == 0)
286 padctl->usb2 = pad;
489 port = tegra_xusb_find_port(padctl, "usb2", index);
688 lane = tegra_xusb_find_lane(port->padctl, "usb2", port->index);
712 static int tegra_xusb_usb2_port_parse_dt(struct tegra_xusb_usb2_port *usb2)
714 struct tegra_xusb_port *port = &usb2->base;
719 usb2->internal = of_property_read_bool(np, "nvidia,internal");
726 usb2->mode = USB_DR_MODE_UNKNOWN;
728 usb2->mode = err;
731 usb2->mode = USB_DR_MODE_HOST;
735 if (usb2->mode == USB_DR_MODE_PERIPHERAL ||
736 usb2->mode == USB_DR_MODE_OTG) {
743 modes[usb2->mode]);
748 usb2->supply = regulator_get(&port->dev, "vbus");
749 return PTR_ERR_OR_ZERO(usb2->supply);
755 struct tegra_xusb_usb2_port *usb2;
763 np = tegra_xusb_find_port_node(padctl, "usb2", index);
767 usb2 = kzalloc(sizeof(*usb2), GFP_KERNEL);
768 if (!usb2) {
773 err = tegra_xusb_port_init(&usb2->base, padctl, np, "usb2", index);
777 usb2->base.ops = padctl->soc->ports.usb2.ops;
779 usb2->base.lane = usb2->base.ops->map(&usb2->base);
780 if (IS_ERR(usb2->base.lane)) {
781 err = PTR_ERR(usb2->base.lane);
782 tegra_xusb_port_unregister(&usb2->base);
786 err = tegra_xusb_usb2_port_parse_dt(usb2);
788 tegra_xusb_port_unregister(&usb2->base);
792 list_add_tail(&usb2->base.list, &padctl->ports);
801 struct tegra_xusb_usb2_port *usb2 = to_usb2_port(port);
803 kfree(usb2);
808 struct tegra_xusb_usb2_port *usb2 = to_usb2_port(port);
810 regulator_put(usb2->supply);
936 err = of_property_read_u32(np, "nvidia,usb2-companion", &value);
1045 static bool tegra_xusb_port_is_companion(struct tegra_xusb_usb2_port *usb2)
1049 struct tegra_xusb_padctl *padctl = usb2->base.padctl;
1053 if (usb3 && usb3->port == usb2->base.index)
1060 static int tegra_xusb_update_usb3_fake_port(struct tegra_xusb_usb2_port *usb2)
1065 usb2->usb3_port_fake = -1;
1067 if ((usb2->mode == USB_DR_MODE_OTG ||
1068 usb2->mode == USB_DR_MODE_PERIPHERAL) &&
1069 !tegra_xusb_port_is_companion(usb2)) {
1070 fake = tegra_xusb_find_unused_usb3_port(usb2->base.padctl);
1072 dev_err(&usb2->base.dev, "no unused USB3 ports available\n");
1076 dev_dbg(&usb2->base.dev, "Found unused usb3 port: %d\n", fake);
1077 usb2->usb3_port_fake = fake;
1086 struct tegra_xusb_usb2_port *usb2;
1092 for (i = 0; i < padctl->soc->ports.usb2.count; i++) {
1117 for (i = 0; i < padctl->soc->ports.usb2.count; i++) {
1118 usb2 = tegra_xusb_find_usb2_port(padctl, i);
1119 if (!usb2)
1122 err = tegra_xusb_update_usb3_fake_port(usb2);
1384 struct tegra_xusb_usb2_port *usb2;
1388 usb2 = tegra_xusb_find_usb2_port(padctl, port);
1389 if (!usb2)
1394 if (usb3 && usb3->port == usb2->base.index)