• Home
  • Raw
  • Download

Lines Matching refs:port1

122 static int hub_port_disable(struct usb_hub *hub, int port1, int set_state);
123 static bool hub_port_warm_reset_required(struct usb_hub *hub, int port1,
439 int usb_clear_port_feature(struct usb_device *hdev, int port1, int feature) in usb_clear_port_feature() argument
442 USB_REQ_CLEAR_FEATURE, USB_RT_PORT, feature, port1, in usb_clear_port_feature()
449 static int set_port_feature(struct usb_device *hdev, int port1, int feature) in set_port_feature() argument
452 USB_REQ_SET_FEATURE, USB_RT_PORT, feature, port1, in set_port_feature()
476 static void set_port_led(struct usb_hub *hub, int port1, int selector) in set_port_led() argument
478 struct usb_port *port_dev = hub->ports[port1 - 1]; in set_port_led()
481 status = set_port_feature(hub->hdev, (selector << 8) | port1, in set_port_led()
585 static int get_port_status(struct usb_device *hdev, int port1, in get_port_status() argument
594 port1, data, length, USB_STS_TIMEOUT); in get_port_status()
599 static int hub_ext_port_status(struct usb_hub *hub, int port1, int type, in hub_ext_port_status() argument
609 ret = get_port_status(hub->hdev, port1, &hub->status->port, type, len); in hub_ext_port_status()
644 port1 - 1, *status, *change); in hub_ext_port_status()
651 static int hub_port_status(struct usb_hub *hub, int port1, in hub_port_status() argument
654 return hub_ext_port_status(hub, port1, HUB_PORT_STATUS, in hub_port_status()
867 int port1, bool set) in usb_hub_set_port_power() argument
872 ret = set_port_feature(hdev, port1, USB_PORT_FEAT_POWER); in usb_hub_set_port_power()
874 ret = usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_POWER); in usb_hub_set_port_power()
880 set_bit(port1, hub->power_bits); in usb_hub_set_port_power()
882 clear_bit(port1, hub->power_bits); in usb_hub_set_port_power()
944 int port1; in hub_power_on() local
957 for (port1 = 1; port1 <= hub->hdev->maxchild; port1++) in hub_power_on()
958 if (test_bit(port1, hub->power_bits)) in hub_power_on()
959 set_port_feature(hub->hdev, port1, USB_PORT_FEAT_POWER); in hub_power_on()
961 usb_clear_port_feature(hub->hdev, port1, in hub_power_on()
987 static int hub_set_port_link_state(struct usb_hub *hub, int port1, in hub_set_port_link_state() argument
991 port1 | (link_status << 3), in hub_set_port_link_state()
1000 static void hub_port_logical_disconnect(struct usb_hub *hub, int port1) in hub_port_logical_disconnect() argument
1002 dev_dbg(&hub->ports[port1 - 1]->dev, "logical disconnect\n"); in hub_port_logical_disconnect()
1003 hub_port_disable(hub, port1, 1); in hub_port_logical_disconnect()
1014 set_bit(port1, hub->change_bits); in hub_port_logical_disconnect()
1064 int port1; in hub_activate() local
1158 for (port1 = 1; port1 <= hdev->maxchild; ++port1) { in hub_activate()
1159 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_activate()
1164 status = hub_port_status(hub, port1, &portstatus, &portchange); in hub_activate()
1191 usb_clear_port_feature(hdev, port1, in hub_activate()
1197 hub_port_warm_reset_required(hub, port1, portstatus)) in hub_activate()
1198 set_bit(port1, hub->event_bits); in hub_activate()
1213 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1218 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1223 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1229 usb_clear_port_feature(hub->hdev, port1, in hub_activate()
1237 clear_bit(port1, hub->removed_bits); in hub_activate()
1250 set_bit(port1, hub->change_bits); in hub_activate()
1266 set_bit(port1, hub->event_bits); in hub_activate()
1275 if (test_bit(port1, hub->power_bits)) in hub_activate()
1276 set_bit(port1, hub->change_bits); in hub_activate()
1281 set_bit(port1, hub->change_bits); in hub_activate()
1750 int port1; in hub_disconnect() local
1766 port1 = hdev->maxchild; in hub_disconnect()
1771 for (; port1 > 0; --port1) in hub_disconnect()
1772 usb_hub_remove_port_device(hub, port1); in hub_disconnect()
1973 static int find_port_owner(struct usb_device *hdev, unsigned port1, in find_port_owner() argument
1980 if (port1 == 0 || port1 > hdev->maxchild) in find_port_owner()
1986 *ppowner = &(hub->ports[port1 - 1]->port_owner); in find_port_owner()
1991 int usb_hub_claim_port(struct usb_device *hdev, unsigned port1, in usb_hub_claim_port() argument
1997 rc = find_port_owner(hdev, port1, &powner); in usb_hub_claim_port()
2007 int usb_hub_release_port(struct usb_device *hdev, unsigned port1, in usb_hub_release_port() argument
2013 rc = find_port_owner(hdev, port1, &powner); in usb_hub_release_port()
2253 int port1 = 1; in usb_disconnect() local
2282 port1 = udev->portnum; in usb_disconnect()
2284 port_dev = hub->ports[port1 - 1]; in usb_disconnect()
2293 if (!test_and_set_bit(port1, hub->child_usage_bits)) in usb_disconnect()
2316 if (port_dev && test_and_clear_bit(port1, hub->child_usage_bits)) in usb_disconnect()
2378 unsigned port1 = udev->portnum; in usb_enumerate_device_otg() local
2388 (port1 == bus->otg_port) ? "" : "non-"); in usb_enumerate_device_otg()
2391 if (port1 == bus->otg_port) { in usb_enumerate_device_otg()
2637 int port1 = udev->portnum; in usb_new_device() local
2638 struct usb_port *port_dev = hub->ports[port1 - 1]; in usb_new_device()
2652 if (!test_and_set_bit(port1, hub->child_usage_bits)) in usb_new_device()
2890 static bool hub_port_warm_reset_required(struct usb_hub *hub, int port1, in hub_port_warm_reset_required() argument
2898 if (test_bit(port1, hub->warm_reset_bits)) in hub_port_warm_reset_required()
2906 static int hub_port_wait_reset(struct usb_hub *hub, int port1, in hub_port_wait_reset() argument
2922 ret = hub_ext_port_status(hub, port1, in hub_port_wait_reset()
2927 ret = hub_port_status(hub, port1, &portstatus, in hub_port_wait_reset()
2947 dev_dbg(&hub->ports[port1 - 1]->dev, in hub_port_wait_reset()
2955 if (hub_port_warm_reset_required(hub, port1, portstatus)) in hub_port_wait_reset()
2968 usb_clear_port_feature(hub->hdev, port1, in hub_port_wait_reset()
3005 static int hub_port_reset(struct usb_hub *hub, int port1, in hub_port_reset() argument
3010 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_reset()
3028 if (hub_port_status(hub, port1, &portstatus, &portchange) == 0) in hub_port_reset()
3029 if (hub_port_warm_reset_required(hub, port1, in hub_port_reset()
3033 clear_bit(port1, hub->warm_reset_bits); in hub_port_reset()
3037 status = set_port_feature(hub->hdev, port1, (warm ? in hub_port_reset()
3047 status = hub_port_wait_reset(hub, port1, udev, delay, in hub_port_reset()
3057 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3063 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3065 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3069 usb_clear_port_feature(hub->hdev, port1, in hub_port_reset()
3076 if (hub_port_status(hub, port1, in hub_port_reset()
3080 if (!hub_port_warm_reset_required(hub, port1, in hub_port_reset()
3159 static bool hub_port_stop_enumerate(struct usb_hub *hub, int port1, int retries) in hub_port_stop_enumerate() argument
3161 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_stop_enumerate()
3236 struct usb_hub *hub, int port1, in check_port_resume_type() argument
3239 struct usb_port *port_dev = hub->ports[port1 - 1]; in check_port_resume_type()
3245 && hub_port_warm_reset_required(hub, port1, portstatus)) { in check_port_resume_type()
3256 status = hub_port_status(hub, port1, &portstatus, in check_port_resume_type()
3280 usb_clear_port_feature(hub->hdev, port1, in check_port_resume_type()
3283 usb_clear_port_feature(hub->hdev, port1, in check_port_resume_type()
3293 clear_bit(port1, hub->change_bits); in check_port_resume_type()
3455 int port1 = udev->portnum; in usb_port_suspend() local
3490 status = hub_set_port_link_state(hub, port1, USB_SS_PORT_LS_U3); in usb_port_suspend()
3504 status = set_port_feature(hub->hdev, port1, in usb_port_suspend()
3519 ret = hub_port_status(hub, port1, &portstatus, in usb_port_suspend()
3561 && test_and_clear_bit(port1, hub->child_usage_bits)) in usb_port_suspend()
3689 struct usb_hub *hub, int *port1, in wait_for_connected() argument
3703 status = hub_port_status(hub, *port1, portstatus, portchange); in wait_for_connected()
3747 int port1 = udev->portnum; in usb_port_resume() local
3751 if (!test_and_set_bit(port1, hub->child_usage_bits)) { in usb_port_resume()
3763 status = hub_port_status(hub, port1, &portstatus, &portchange); in usb_port_resume()
3772 status = hub_set_port_link_state(hub, port1, USB_SS_PORT_LS_U0); in usb_port_resume()
3775 port1, USB_PORT_FEAT_SUSPEND); in usb_port_resume()
3788 status = hub_port_status(hub, port1, &portstatus, &portchange); in usb_port_resume()
3796 usb_clear_port_feature(hub->hdev, port1, in usb_port_resume()
3800 usb_clear_port_feature(hub->hdev, port1, in usb_port_resume()
3809 status = wait_for_connected(udev, hub, &port1, &portchange, in usb_port_resume()
3813 hub, port1, status, portchange, portstatus); in usb_port_resume()
3818 hub_port_logical_disconnect(hub, port1); in usb_port_resume()
3895 int port1; in check_ports_changed() local
3897 for (port1 = 1; port1 <= hub->hdev->maxchild; ++port1) { in check_ports_changed()
3901 status = hub_port_status(hub, port1, &portstatus, &portchange); in check_ports_changed()
3912 unsigned port1; in hub_suspend() local
3919 for (port1 = 1; port1 <= hdev->maxchild; port1++) { in hub_suspend()
3920 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_suspend()
3945 for (port1 = 1; port1 <= hdev->maxchild; port1++) { in hub_suspend()
3947 port1 | in hub_suspend()
4610 static int hub_port_disable(struct usb_hub *hub, int port1, int set_state) in hub_port_disable() argument
4612 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_disable()
4622 ret = usb_clear_port_feature(hdev, port1, in hub_port_disable()
4662 int hub_port_debounce(struct usb_hub *hub, int port1, bool must_be_connected) in hub_port_debounce() argument
4668 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_debounce()
4671 ret = hub_port_status(hub, port1, &portstatus, &portchange); in hub_port_debounce()
4688 usb_clear_port_feature(hub->hdev, port1, in hub_port_debounce()
4866 hub_port_init(struct usb_hub *hub, struct usb_device *udev, int port1, in hub_port_init() argument
4871 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_init()
4892 if (port1 == hdev->bus->otg_port) in hub_port_init()
4903 retval = hub_port_reset(hub, port1, udev, delay, false); in hub_port_init()
4984 udev->ttport = port1; in hub_port_init()
5003 if (hub_port_stop_enumerate(hub, port1, retries)) { in hub_port_init()
5026 retval = hub_port_reset(hub, port1, udev, delay, false); in hub_port_init()
5174 hub_port_reset(hub, port1, udev, HUB_BH_RESET_TIME, true); in hub_port_init()
5196 hub_port_disable(hub, port1, 0); in hub_port_init()
5204 check_highspeed(struct usb_hub *hub, struct usb_device *udev, int port1) in check_highspeed() argument
5223 hub->indicator[port1-1] = INDICATOR_GREEN_BLINK; in check_highspeed()
5236 int port1; in hub_power_remaining() local
5242 for (port1 = 1; port1 <= hdev->maxchild; ++port1) { in hub_power_remaining()
5243 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_power_remaining()
5261 else if (port1 != udev->bus->otg_port || hdev->parent) in hub_power_remaining()
5363 static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus, in hub_port_connect() argument
5371 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_connect()
5388 clear_bit(port1, hub->removed_bits); in hub_port_connect()
5392 status = hub_port_debounce_be_stable(hub, port1); in hub_port_connect()
5395 port1 != unreliable_port && in hub_port_connect()
5399 unreliable_port = port1; in hub_port_connect()
5409 test_bit(port1, hub->removed_bits)) { in hub_port_connect()
5418 set_port_feature(hdev, port1, USB_PORT_FEAT_POWER); in hub_port_connect()
5432 if (hub_port_stop_enumerate(hub, port1, i)) { in hub_port_connect()
5443 udev = usb_alloc_dev(hdev, hdev->bus, port1); in hub_port_connect()
5470 status = hub_port_init(hub, udev, port1, i, NULL); in hub_port_connect()
5502 hub->indicator[port1-1] = in hub_port_connect()
5517 check_highspeed(hub, udev, port1); in hub_port_connect()
5565 hub_port_disable(hub, port1, 1); in hub_port_connect()
5581 usb_hub_set_port_power(hdev, hub, port1, false); in hub_port_connect()
5583 usb_hub_set_port_power(hdev, hub, port1, true); in hub_port_connect()
5589 !(hcd->driver->port_handed_over)(hcd, port1)) { in hub_port_connect()
5596 hub_port_disable(hub, port1, 1); in hub_port_connect()
5599 hcd->driver->relinquish_port(hcd, port1); in hub_port_connect()
5611 static void hub_port_connect_change(struct usb_hub *hub, int port1, in hub_port_connect_change() argument
5615 struct usb_port *port_dev = hub->ports[port1 - 1]; in hub_port_connect_change()
5624 set_port_led(hub, port1, HUB_LED_AUTO); in hub_port_connect_change()
5625 hub->indicator[port1-1] = INDICATOR_AUTO; in hub_port_connect_change()
5674 clear_bit(port1, hub->change_bits); in hub_port_connect_change()
5681 hub_port_connect(hub, port1, portstatus, portchange); in hub_port_connect_change()
5722 static void port_event(struct usb_hub *hub, int port1) in port_event() argument
5726 struct usb_port *port_dev = hub->ports[port1 - 1]; in port_event()
5731 connect_change = test_bit(port1, hub->change_bits); in port_event()
5732 clear_bit(port1, hub->event_bits); in port_event()
5733 clear_bit(port1, hub->wakeup_bits); in port_event()
5735 if (hub_port_status(hub, port1, &portstatus, &portchange) < 0) in port_event()
5739 usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_CONNECTION); in port_event()
5747 usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_ENABLE); in port_event()
5768 usb_clear_port_feature(hdev, port1, in port_event()
5772 hub_port_status(hub, port1, &status, &unused); in port_event()
5779 usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_RESET); in port_event()
5784 usb_clear_port_feature(hdev, port1, in port_event()
5789 usb_clear_port_feature(hdev, port1, in port_event()
5794 usb_clear_port_feature(hdev, port1, in port_event()
5806 if (hub_handle_remote_wakeup(hub, port1, portstatus, portchange)) in port_event()
5813 if (hub_port_warm_reset_required(hub, port1, portstatus)) { in port_event()
5817 if (hub_port_reset(hub, port1, NULL, in port_event()
5819 hub_port_disable(hub, port1, 1); in port_event()
5831 hub_port_connect_change(hub, port1, portstatus, portchange); in port_event()
6093 int port1 = udev->portnum; in usb_reset_and_verify_device() local
6128 if (hub_port_stop_enumerate(parent_hub, port1, i)) { in usb_reset_and_verify_device()
6136 ret = hub_port_init(parent_hub, udev, port1, i, &descriptor); in usb_reset_and_verify_device()
6231 hub_port_logical_disconnect(parent_hub, port1); in usb_reset_and_verify_device()
6405 int port1) in usb_hub_find_child() argument
6409 if (port1 < 1 || port1 > hdev->maxchild) in usb_hub_find_child()
6411 return hub->ports[port1 - 1]->child; in usb_hub_find_child()
6470 int port1) in usb_get_hub_port_acpi_handle() argument
6477 return ACPI_HANDLE(&hub->ports[port1 - 1]->dev); in usb_get_hub_port_acpi_handle()