Lines Matching full:port1

141 static int hub_port_disable(struct usb_hub *hub, int port1, int set_state);
142 static bool hub_port_warm_reset_required(struct usb_hub *hub, int port1,
458 int usb_clear_port_feature(struct usb_device *hdev, int port1, int feature) in usb_clear_port_feature() argument
461 USB_REQ_CLEAR_FEATURE, USB_RT_PORT, feature, port1, in usb_clear_port_feature()
468 static int set_port_feature(struct usb_device *hdev, int port1, int feature) in set_port_feature() argument
471 USB_REQ_SET_FEATURE, USB_RT_PORT, feature, port1, in set_port_feature()
495 static void set_port_led(struct usb_hub *hub, int port1, int selector) in set_port_led() argument
497 struct usb_port *port_dev = hub->ports[port1 - 1]; in set_port_led()
500 status = set_port_feature(hub->hdev, (selector << 8) | port1, in set_port_led()
604 static int get_port_status(struct usb_device *hdev, int port1, in get_port_status() argument
613 port1, data, length, USB_STS_TIMEOUT); in get_port_status()
618 static int hub_ext_port_status(struct usb_hub *hub, int port1, int type, in hub_ext_port_status() argument
628 ret = get_port_status(hub->hdev, port1, &hub->status->port, type, len); in hub_ext_port_status()
666 usb_phy_roothub_notify_connect(hcd->phy_roothub, port1 - 1); in hub_ext_port_status()
668 usb_phy_roothub_notify_disconnect(hcd->phy_roothub, port1 - 1); in hub_ext_port_status()
675 int usb_hub_port_status(struct usb_hub *hub, int port1, in usb_hub_port_status() argument
678 return hub_ext_port_status(hub, port1, HUB_PORT_STATUS, in usb_hub_port_status()
882 * @port1: port index
891 int port1, bool set) in usb_hub_set_port_power() argument
896 ret = set_port_feature(hdev, port1, USB_PORT_FEAT_POWER); in usb_hub_set_port_power()
898 ret = usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_POWER); in usb_hub_set_port_power()
904 set_bit(port1, hub->power_bits); in usb_hub_set_port_power()
906 clear_bit(port1, hub->power_bits); in usb_hub_set_port_power()
968 int port1; in hub_power_on() local
981 for (port1 = 1; port1 <= hub->hdev->maxchild; port1++) in hub_power_on()
982 if (test_bit(port1, hub->power_bits)) in hub_power_on()
983 set_port_feature(hub->hdev, port1, USB_PORT_FEAT_POWER); in hub_power_on()
985 usb_clear_port_feature(hub->hdev, port1, in hub_power_on()
1011 static int hub_set_port_link_state(struct usb_hub *hub, int port1, in hub_set_port_link_state() argument
1015 port1 | (link_status << 3), in hub_set_port_link_state()
1024 static void hub_port_logical_disconnect(struct usb_hub *hub, int port1) in hub_port_logical_disconnect() argument
1026 dev_dbg(&hub->ports[port1 - 1]->dev, "logical disconnect\n"); in hub_port_logical_disconnect()
1027 hub_port_disable(hub, port1, 1); in hub_port_logical_disconnect()
1038 set_bit(port1, hub->change_bits); in hub_port_logical_disconnect()
1088 int port1; in hub_activate() local
1183 for (port1 = 1; port1 <= hdev->maxchild; ++port1) { in hub_activate()
1184 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_activate()
1189 status = usb_hub_port_status(hub, port1, &portstatus, &portchange); in hub_activate()
1216 usb_clear_port_feature(hdev, port1, in hub_activate()
1222 hub_port_warm_reset_required(hub, port1, portstatus)) in hub_activate()
1223 set_bit(port1, hub->event_bits); in hub_activate()
1238 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1243 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1248 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1254 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1262 clear_bit(port1, hub->removed_bits); in hub_activate()
1275 set_bit(port1, hub->change_bits); in hub_activate()
1291 set_bit(port1, hub->event_bits); in hub_activate()
1300 if (test_bit(port1, hub->power_bits)) in hub_activate()
1301 set_bit(port1, hub->change_bits); in hub_activate()
1306 set_bit(port1, hub->change_bits); in hub_activate()
1805 int port1; in hub_disconnect() local
1821 port1 = hdev->maxchild; in hub_disconnect()
1826 for (; port1 > 0; --port1) in hub_disconnect()
1827 usb_hub_remove_port_device(hub, port1); in hub_disconnect()
2054 static int find_port_owner(struct usb_device *hdev, unsigned port1, in find_port_owner() argument
2061 if (port1 == 0 || port1 > hdev->maxchild) in find_port_owner()
2067 *ppowner = &(hub->ports[port1 - 1]->port_owner); in find_port_owner()
2072 int usb_hub_claim_port(struct usb_device *hdev, unsigned port1, in usb_hub_claim_port() argument
2078 rc = find_port_owner(hdev, port1, &powner); in usb_hub_claim_port()
2088 int usb_hub_release_port(struct usb_device *hdev, unsigned port1, in usb_hub_release_port() argument
2094 rc = find_port_owner(hdev, port1, &powner); in usb_hub_release_port()
2319 int port1 = 1; in usb_disconnect() local
2348 port1 = udev->portnum; in usb_disconnect()
2350 port_dev = hub->ports[port1 - 1]; in usb_disconnect()
2359 if (!test_and_set_bit(port1, hub->child_usage_bits)) in usb_disconnect()
2387 if (port_dev && test_and_clear_bit(port1, hub->child_usage_bits)) in usb_disconnect()
2449 unsigned port1 = udev->portnum; in usb_enumerate_device_otg() local
2459 (port1 == bus->otg_port) ? "" : "non-"); in usb_enumerate_device_otg()
2462 if (port1 == bus->otg_port) { in usb_enumerate_device_otg()
2703 int port1 = udev->portnum; in usb_new_device() local
2704 struct usb_port *port_dev = hub->ports[port1 - 1]; in usb_new_device()
2718 if (!test_and_set_bit(port1, hub->child_usage_bits)) in usb_new_device()
2936 static bool hub_port_warm_reset_required(struct usb_hub *hub, int port1, in hub_port_warm_reset_required() argument
2944 if (test_bit(port1, hub->warm_reset_bits)) in hub_port_warm_reset_required()
2952 static int hub_port_wait_reset(struct usb_hub *hub, int port1, in hub_port_wait_reset() argument
2968 ret = hub_ext_port_status(hub, port1, in hub_port_wait_reset()
2973 ret = usb_hub_port_status(hub, port1, &portstatus, in hub_port_wait_reset()
2993 dev_dbg(&hub->ports[port1 - 1]->dev, in hub_port_wait_reset()
3001 if (hub_port_warm_reset_required(hub, port1, portstatus)) in hub_port_wait_reset()
3014 usb_clear_port_feature(hub->hdev, port1, in hub_port_wait_reset()
3049 static int hub_port_reset(struct usb_hub *hub, int port1, in hub_port_reset() argument
3054 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_reset()
3072 if (usb_hub_port_status(hub, port1, &portstatus, in hub_port_reset()
3074 if (hub_port_warm_reset_required(hub, port1, in hub_port_reset()
3078 clear_bit(port1, hub->warm_reset_bits); in hub_port_reset()
3082 status = set_port_feature(hub->hdev, port1, (warm ? in hub_port_reset()
3092 status = hub_port_wait_reset(hub, port1, udev, delay, in hub_port_reset()
3106 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3112 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3114 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3118 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3125 if (usb_hub_port_status(hub, port1, in hub_port_reset()
3129 if (!hub_port_warm_reset_required(hub, port1, in hub_port_reset()
3193 * @port1: port num of the port
3208 static bool hub_port_stop_enumerate(struct usb_hub *hub, int port1, int retries) in hub_port_stop_enumerate() argument
3210 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_stop_enumerate()
3285 struct usb_hub *hub, int port1, in check_port_resume_type() argument
3288 struct usb_port *port_dev = hub->ports[port1 - 1]; in check_port_resume_type()
3294 && hub_port_warm_reset_required(hub, port1, portstatus)) { in check_port_resume_type()
3305 status = usb_hub_port_status(hub, port1, &portstatus, in check_port_resume_type()
3329 usb_clear_port_feature(hub->hdev, port1, in check_port_resume_type()
3332 usb_clear_port_feature(hub->hdev, port1, in check_port_resume_type()
3337 * turned on the port1 bit in hub->change_bits. But after in check_port_resume_type()
3342 clear_bit(port1, hub->change_bits); in check_port_resume_type()
3504 int port1 = udev->portnum; in usb_port_suspend() local
3539 status = hub_set_port_link_state(hub, port1, USB_SS_PORT_LS_U3); in usb_port_suspend()
3553 status = set_port_feature(hub->hdev, port1, in usb_port_suspend()
3568 ret = usb_hub_port_status(hub, port1, &portstatus, in usb_port_suspend()
3610 && test_and_clear_bit(port1, hub->child_usage_bits)) in usb_port_suspend()
3738 struct usb_hub *hub, int port1, in wait_for_connected() argument
3752 status = usb_hub_port_status(hub, port1, portstatus, portchange); in wait_for_connected()
3796 int port1 = udev->portnum; in usb_port_resume() local
3800 if (!test_and_set_bit(port1, hub->child_usage_bits)) { in usb_port_resume()
3812 status = usb_hub_port_status(hub, port1, &portstatus, &portchange); in usb_port_resume()
3821 status = hub_set_port_link_state(hub, port1, USB_SS_PORT_LS_U0); in usb_port_resume()
3824 port1, USB_PORT_FEAT_SUSPEND); in usb_port_resume()
3837 status = usb_hub_port_status(hub, port1, &portstatus, &portchange); in usb_port_resume()
3845 usb_clear_port_feature(hub->hdev, port1, in usb_port_resume()
3849 usb_clear_port_feature(hub->hdev, port1, in usb_port_resume()
3858 status = wait_for_connected(udev, hub, port1, &portchange, in usb_port_resume()
3862 hub, port1, status, portchange, portstatus); in usb_port_resume()
3867 hub_port_logical_disconnect(hub, port1); in usb_port_resume()
3944 int port1; in check_ports_changed() local
3946 for (port1 = 1; port1 <= hub->hdev->maxchild; ++port1) { in check_ports_changed()
3950 status = usb_hub_port_status(hub, port1, &portstatus, &portchange); in check_ports_changed()
3961 unsigned port1; in hub_suspend() local
3968 for (port1 = 1; port1 <= hdev->maxchild; port1++) { in hub_suspend()
3969 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_suspend()
3994 for (port1 = 1; port1 <= hdev->maxchild; port1++) { in hub_suspend()
3996 port1 | in hub_suspend()
4643 static int hub_port_disable(struct usb_hub *hub, int port1, int set_state) in hub_port_disable() argument
4645 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_disable()
4655 ret = usb_clear_port_feature(hdev, port1, in hub_port_disable()
4695 int hub_port_debounce(struct usb_hub *hub, int port1, bool must_be_connected) in hub_port_debounce() argument
4701 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_debounce()
4704 ret = usb_hub_port_status(hub, port1, &portstatus, &portchange); in hub_port_debounce()
4721 usb_clear_port_feature(hub->hdev, port1, in hub_port_debounce()
4901 hub_port_init(struct usb_hub *hub, struct usb_device *udev, int port1, in hub_port_init() argument
4906 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_init()
4927 if (port1 == hdev->bus->otg_port) in hub_port_init()
4938 retval = hub_port_reset(hub, port1, udev, delay, false); in hub_port_init()
5013 udev->ttport = port1; in hub_port_init()
5032 if (hub_port_stop_enumerate(hub, port1, retries)) { in hub_port_init()
5055 retval = hub_port_reset(hub, port1, udev, delay, false); in hub_port_init()
5198 hub_port_reset(hub, port1, udev, HUB_BH_RESET_TIME, true); in hub_port_init()
5222 hub_port_disable(hub, port1, 0); in hub_port_init()
5230 check_highspeed(struct usb_hub *hub, struct usb_device *udev, int port1) in check_highspeed() argument
5249 hub->indicator[port1-1] = INDICATOR_GREEN_BLINK; in check_highspeed()
5262 int port1; in hub_power_remaining() local
5268 for (port1 = 1; port1 <= hdev->maxchild; ++port1) { in hub_power_remaining()
5269 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_power_remaining()
5287 else if (port1 != udev->bus->otg_port || hdev->parent) in hub_power_remaining()
5389 static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus, in hub_port_connect() argument
5397 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_connect()
5414 clear_bit(port1, hub->removed_bits); in hub_port_connect()
5418 status = hub_port_debounce_be_stable(hub, port1); in hub_port_connect()
5421 port1 != unreliable_port && in hub_port_connect()
5425 unreliable_port = port1; in hub_port_connect()
5435 test_bit(port1, hub->removed_bits)) { in hub_port_connect()
5444 set_port_feature(hdev, port1, USB_PORT_FEAT_POWER); in hub_port_connect()
5458 if (hub_port_stop_enumerate(hub, port1, i)) { in hub_port_connect()
5469 udev = usb_alloc_dev(hdev, hdev->bus, port1); in hub_port_connect()
5495 status = hub_port_init(hub, udev, port1, i, NULL); in hub_port_connect()
5527 hub->indicator[port1-1] = in hub_port_connect()
5542 check_highspeed(hub, udev, port1); in hub_port_connect()
5590 hub_port_disable(hub, port1, 1); in hub_port_connect()
5606 usb_hub_set_port_power(hdev, hub, port1, false); in hub_port_connect()
5608 usb_hub_set_port_power(hdev, hub, port1, true); in hub_port_connect()
5614 !(hcd->driver->port_handed_over)(hcd, port1)) { in hub_port_connect()
5621 hub_port_disable(hub, port1, 1); in hub_port_connect()
5624 hcd->driver->relinquish_port(hcd, port1); in hub_port_connect()
5636 static void hub_port_connect_change(struct usb_hub *hub, int port1, in hub_port_connect_change() argument
5640 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_connect_change()
5649 set_port_led(hub, port1, HUB_LED_AUTO); in hub_port_connect_change()
5650 hub->indicator[port1-1] = INDICATOR_AUTO; in hub_port_connect_change()
5699 clear_bit(port1, hub->change_bits); in hub_port_connect_change()
5706 hub_port_connect(hub, port1, portstatus, portchange); in hub_port_connect_change()
5745 static void port_event(struct usb_hub *hub, int port1) in port_event() argument
5749 struct usb_port *port_dev = hub->ports[port1 - 1]; in port_event()
5756 connect_change = test_bit(port1, hub->change_bits); in port_event()
5757 clear_bit(port1, hub->event_bits); in port_event()
5758 clear_bit(port1, hub->wakeup_bits); in port_event()
5760 if (usb_hub_port_status(hub, port1, &portstatus, &portchange) < 0) in port_event()
5764 usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_CONNECTION); in port_event()
5772 usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_ENABLE); in port_event()
5793 usb_clear_port_feature(hdev, port1, in port_event()
5797 usb_hub_port_status(hub, port1, &status, &unused); in port_event()
5804 usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_RESET); in port_event()
5809 usb_clear_port_feature(hdev, port1, in port_event()
5814 usb_clear_port_feature(hdev, port1, in port_event()
5819 usb_clear_port_feature(hdev, port1, in port_event()
5831 if (hub_handle_remote_wakeup(hub, port1, portstatus, portchange)) in port_event()
5840 while (hub_port_warm_reset_required(hub, port1, portstatus)) { in port_event()
5845 usb_hub_port_status(hub, port1, &portstatus, &unused); in port_event()
5851 err = hub_port_reset(hub, port1, NULL, in port_event()
5856 hub_port_disable(hub, port1, 1); in port_event()
5870 hub_port_connect_change(hub, port1, portstatus, portchange); in port_event()
6178 int port1 = udev->portnum; in usb_reset_and_verify_device() local
6206 if (hub_port_stop_enumerate(parent_hub, port1, i)) { in usb_reset_and_verify_device()
6214 ret = hub_port_init(parent_hub, udev, port1, i, &descriptor); in usb_reset_and_verify_device()
6318 hub_port_logical_disconnect(parent_hub, port1); in usb_reset_and_verify_device()
6480 * attached to the port which is specified by @port1.
6482 * @port1: port num to indicate which port the child device
6492 int port1) in usb_hub_find_child() argument
6496 if (port1 < 1 || port1 > hdev->maxchild) in usb_hub_find_child()
6498 return hub->ports[port1 - 1]->child; in usb_hub_find_child()
6551 * @port1: port num of the port
6557 int port1) in usb_get_hub_port_acpi_handle() argument
6564 return ACPI_HANDLE(&hub->ports[port1 - 1]->dev); in usb_get_hub_port_acpi_handle()