wusbhc 22 drivers/staging/wusbcore/dev-sysfs.c struct wusbhc *wusbhc; wusbhc 31 drivers/staging/wusbcore/dev-sysfs.c wusbhc = wusbhc_get_by_usb_dev(usb_dev); wusbhc 32 drivers/staging/wusbcore/dev-sysfs.c if (wusbhc == NULL) wusbhc 35 drivers/staging/wusbcore/dev-sysfs.c mutex_lock(&wusbhc->mutex); wusbhc 37 drivers/staging/wusbcore/dev-sysfs.c __wusbhc_dev_disable(wusbhc, port_idx); wusbhc 38 drivers/staging/wusbcore/dev-sysfs.c mutex_unlock(&wusbhc->mutex); wusbhc 39 drivers/staging/wusbcore/dev-sysfs.c wusbhc_put(wusbhc); wusbhc 65 drivers/staging/wusbcore/dev-sysfs.c struct wusbhc *wusbhc; wusbhc 85 drivers/staging/wusbcore/dev-sysfs.c wusbhc = wusbhc_get_by_usb_dev(usb_dev); wusbhc 86 drivers/staging/wusbcore/dev-sysfs.c if (wusbhc == NULL) wusbhc 88 drivers/staging/wusbcore/dev-sysfs.c result = wusb_dev_4way_handshake(wusbhc, usb_dev->wusb_dev, &ck); wusbhc 90 drivers/staging/wusbcore/dev-sysfs.c wusbhc_put(wusbhc); wusbhc 107 drivers/staging/wusbcore/dev-sysfs.c int wusb_dev_sysfs_add(struct wusbhc *wusbhc, struct usb_device *usb_dev, wusbhc 89 drivers/staging/wusbcore/devconnect.c static struct wusb_dev *wusb_dev_alloc(struct wusbhc *wusbhc) wusbhc 97 drivers/staging/wusbcore/devconnect.c wusb_dev->wusbhc = wusbhc; wusbhc 118 drivers/staging/wusbcore/devconnect.c static void wusbhc_fill_cack_ie(struct wusbhc *wusbhc) wusbhc 124 drivers/staging/wusbcore/devconnect.c cack_ie = &wusbhc->cack_ie; wusbhc 126 drivers/staging/wusbcore/devconnect.c list_for_each_entry(dev_itr, &wusbhc->cack_list, cack_node) { wusbhc 148 drivers/staging/wusbcore/devconnect.c static struct wusb_dev *wusbhc_cack_add(struct wusbhc *wusbhc, wusbhc 152 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 159 drivers/staging/wusbcore/devconnect.c list_for_each_entry(wusb_dev, &wusbhc->cack_list, cack_node) wusbhc 164 drivers/staging/wusbcore/devconnect.c wusb_dev = wusb_dev_alloc(wusbhc); wusbhc 190 drivers/staging/wusbcore/devconnect.c result = wusb_set_dev_addr(wusbhc, wusb_dev, dev_addr); wusbhc 195 drivers/staging/wusbcore/devconnect.c list_add_tail(&wusb_dev->cack_node, &wusbhc->cack_list); wusbhc 196 drivers/staging/wusbcore/devconnect.c wusbhc->cack_count++; wusbhc 197 drivers/staging/wusbcore/devconnect.c wusbhc_fill_cack_ie(wusbhc); wusbhc 207 drivers/staging/wusbcore/devconnect.c static void wusbhc_cack_rm(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) wusbhc 210 drivers/staging/wusbcore/devconnect.c wusbhc->cack_count--; wusbhc 211 drivers/staging/wusbcore/devconnect.c wusbhc_fill_cack_ie(wusbhc); wusbhc 217 drivers/staging/wusbcore/devconnect.c void wusbhc_devconnect_acked(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) wusbhc 219 drivers/staging/wusbcore/devconnect.c wusbhc_cack_rm(wusbhc, wusb_dev); wusbhc 220 drivers/staging/wusbcore/devconnect.c if (wusbhc->cack_count) wusbhc 221 drivers/staging/wusbcore/devconnect.c wusbhc_mmcie_set(wusbhc, 0, 0, &wusbhc->cack_ie.hdr); wusbhc 223 drivers/staging/wusbcore/devconnect.c wusbhc_mmcie_rm(wusbhc, &wusbhc->cack_ie.hdr); wusbhc 230 drivers/staging/wusbcore/devconnect.c struct wusbhc *wusbhc = wusb_dev->wusbhc; wusbhc 232 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 233 drivers/staging/wusbcore/devconnect.c wusbhc_devconnect_acked(wusbhc, wusb_dev); wusbhc 234 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 266 drivers/staging/wusbcore/devconnect.c void wusbhc_devconnect_ack(struct wusbhc *wusbhc, struct wusb_dn_connect *dnc, wusbhc 270 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 275 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 278 drivers/staging/wusbcore/devconnect.c for (idx = 0; idx < wusbhc->ports_max; idx++) { wusbhc 279 drivers/staging/wusbcore/devconnect.c port = wusb_port_by_idx(wusbhc, idx); wusbhc 285 drivers/staging/wusbcore/devconnect.c for (idx = 0; idx < wusbhc->ports_max; idx++) { wusbhc 286 drivers/staging/wusbcore/devconnect.c port = wusb_port_by_idx(wusbhc, idx); wusbhc 291 drivers/staging/wusbcore/devconnect.c if (idx >= wusbhc->ports_max) { wusbhc 294 drivers/staging/wusbcore/devconnect.c wusbhc->ports_max, pr_cdid); wusbhc 302 drivers/staging/wusbcore/devconnect.c wusbhc->set_ptk(wusbhc, idx, 0, NULL, 0); wusbhc 306 drivers/staging/wusbcore/devconnect.c wusb_dev = wusbhc_cack_add(wusbhc, dnc, pr_cdid, idx); wusbhc 309 drivers/staging/wusbcore/devconnect.c result = wusbhc_mmcie_set(wusbhc, 0, 0, &wusbhc->cack_ie.hdr); wusbhc 324 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 344 drivers/staging/wusbcore/devconnect.c static void __wusbhc_dev_disconnect(struct wusbhc *wusbhc, wusbhc 354 drivers/staging/wusbcore/devconnect.c dev_dbg(wusbhc->dev, "disconnecting device from port %d\n", wusb_dev->port_idx); wusbhc 364 drivers/staging/wusbcore/devconnect.c if (wusbhc->active) wusbhc 365 drivers/staging/wusbcore/devconnect.c wusbhc_gtk_rekey(wusbhc); wusbhc 389 drivers/staging/wusbcore/devconnect.c static void __wusbhc_keep_alive(struct wusbhc *wusbhc) wusbhc 391 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 395 drivers/staging/wusbcore/devconnect.c struct wuie_keep_alive *ie = &wusbhc->keep_alive_ie; wusbhc 401 drivers/staging/wusbcore/devconnect.c keep_alives < WUIE_ELT_MAX && cnt < wusbhc->ports_max; wusbhc 403 drivers/staging/wusbcore/devconnect.c unsigned tt = msecs_to_jiffies(wusbhc->trust_timeout); wusbhc 405 drivers/staging/wusbcore/devconnect.c wusb_port = wusb_port_by_idx(wusbhc, cnt); wusbhc 416 drivers/staging/wusbcore/devconnect.c __wusbhc_dev_disconnect(wusbhc, wusb_port); wusbhc 427 drivers/staging/wusbcore/devconnect.c wusbhc_mmcie_set(wusbhc, 10, 5, &ie->hdr); wusbhc 429 drivers/staging/wusbcore/devconnect.c wusbhc_mmcie_rm(wusbhc, &ie->hdr); wusbhc 438 drivers/staging/wusbcore/devconnect.c struct wusbhc *wusbhc = container_of(dw, struct wusbhc, keep_alive_timer); wusbhc 440 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 441 drivers/staging/wusbcore/devconnect.c __wusbhc_keep_alive(wusbhc); wusbhc 442 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 444 drivers/staging/wusbcore/devconnect.c queue_delayed_work(wusbd, &wusbhc->keep_alive_timer, wusbhc 445 drivers/staging/wusbcore/devconnect.c msecs_to_jiffies(wusbhc->trust_timeout / 2)); wusbhc 455 drivers/staging/wusbcore/devconnect.c static struct wusb_dev *wusbhc_find_dev_by_addr(struct wusbhc *wusbhc, u8 addr) wusbhc 464 drivers/staging/wusbcore/devconnect.c if (port < 0 || port >= wusbhc->ports_max) wusbhc 466 drivers/staging/wusbcore/devconnect.c return wusb_port_by_idx(wusbhc, port)->wusb_dev; wusbhc 470 drivers/staging/wusbcore/devconnect.c for (p = 0; p < wusbhc->ports_max; p++) { wusbhc 471 drivers/staging/wusbcore/devconnect.c struct wusb_dev *wusb_dev = wusb_port_by_idx(wusbhc, p)->wusb_dev; wusbhc 486 drivers/staging/wusbcore/devconnect.c static void wusbhc_handle_dn_alive(struct wusbhc *wusbhc, u8 srcaddr) wusbhc 490 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 491 drivers/staging/wusbcore/devconnect.c wusb_dev = wusbhc_find_dev_by_addr(wusbhc, srcaddr); wusbhc 493 drivers/staging/wusbcore/devconnect.c dev_dbg(wusbhc->dev, "ignoring DN_Alive from unconnected device %02x\n", wusbhc 497 drivers/staging/wusbcore/devconnect.c __wusbhc_keep_alive(wusbhc); wusbhc 499 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 514 drivers/staging/wusbcore/devconnect.c static void wusbhc_handle_dn_connect(struct wusbhc *wusbhc, wusbhc 518 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 542 drivers/staging/wusbcore/devconnect.c wusbhc_devconnect_ack(wusbhc, dnc, pr_cdid); wusbhc 552 drivers/staging/wusbcore/devconnect.c static void wusbhc_handle_dn_disconnect(struct wusbhc *wusbhc, u8 srcaddr) wusbhc 554 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 557 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 558 drivers/staging/wusbcore/devconnect.c wusb_dev = wusbhc_find_dev_by_addr(wusbhc, srcaddr); wusbhc 565 drivers/staging/wusbcore/devconnect.c __wusbhc_dev_disconnect(wusbhc, wusb_port_by_idx(wusbhc, wusbhc 568 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 585 drivers/staging/wusbcore/devconnect.c void wusbhc_handle_dn(struct wusbhc *wusbhc, u8 srcaddr, wusbhc 588 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 597 drivers/staging/wusbcore/devconnect.c wusbhc_handle_dn_connect(wusbhc, dn_hdr, size); wusbhc 600 drivers/staging/wusbcore/devconnect.c wusbhc_handle_dn_alive(wusbhc, srcaddr); wusbhc 603 drivers/staging/wusbcore/devconnect.c wusbhc_handle_dn_disconnect(wusbhc, srcaddr); wusbhc 639 drivers/staging/wusbcore/devconnect.c void __wusbhc_dev_disable(struct wusbhc *wusbhc, u8 port_idx) wusbhc 642 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 646 drivers/staging/wusbcore/devconnect.c wusb_dev = wusb_port_by_idx(wusbhc, port_idx)->wusb_dev; wusbhc 653 drivers/staging/wusbcore/devconnect.c __wusbhc_dev_disconnect(wusbhc, wusb_port_by_idx(wusbhc, port_idx)); wusbhc 661 drivers/staging/wusbcore/devconnect.c result = wusbhc_mmcie_set(wusbhc, 0, 0, &ie->hdr); wusbhc 667 drivers/staging/wusbcore/devconnect.c wusbhc_mmcie_rm(wusbhc, &ie->hdr); wusbhc 842 drivers/staging/wusbcore/devconnect.c struct wusbhc *wusbhc; wusbhc 851 drivers/staging/wusbcore/devconnect.c wusbhc = wusbhc_get_by_usb_dev(usb_dev); wusbhc 852 drivers/staging/wusbcore/devconnect.c if (wusbhc == NULL) wusbhc 854 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 855 drivers/staging/wusbcore/devconnect.c wusb_dev = __wusb_dev_get_by_usb_dev(wusbhc, usb_dev); wusbhc 857 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 862 drivers/staging/wusbcore/devconnect.c result = wusb_dev_sec_add(wusbhc, usb_dev, wusb_dev); wusbhc 873 drivers/staging/wusbcore/devconnect.c result = wusb_dev_sysfs_add(wusbhc, usb_dev, wusb_dev); wusbhc 878 drivers/staging/wusbcore/devconnect.c wusbhc_put(wusbhc); wusbhc 887 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 888 drivers/staging/wusbcore/devconnect.c __wusbhc_dev_disconnect(wusbhc, wusb_port_by_idx(wusbhc, port_idx)); wusbhc 889 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 948 drivers/staging/wusbcore/devconnect.c struct wusb_dev *__wusb_dev_get_by_usb_dev(struct wusbhc *wusbhc, wusbhc 955 drivers/staging/wusbcore/devconnect.c BUG_ON(port_idx > wusbhc->ports_max); wusbhc 956 drivers/staging/wusbcore/devconnect.c wusb_dev = wusb_port_by_idx(wusbhc, port_idx)->wusb_dev; wusbhc 978 drivers/staging/wusbcore/devconnect.c int wusbhc_devconnect_create(struct wusbhc *wusbhc) wusbhc 980 drivers/staging/wusbcore/devconnect.c wusbhc->keep_alive_ie.hdr.bIEIdentifier = WUIE_ID_KEEP_ALIVE; wusbhc 981 drivers/staging/wusbcore/devconnect.c wusbhc->keep_alive_ie.hdr.bLength = sizeof(wusbhc->keep_alive_ie.hdr); wusbhc 982 drivers/staging/wusbcore/devconnect.c INIT_DELAYED_WORK(&wusbhc->keep_alive_timer, wusbhc_keep_alive_run); wusbhc 984 drivers/staging/wusbcore/devconnect.c wusbhc->cack_ie.hdr.bIEIdentifier = WUIE_ID_CONNECTACK; wusbhc 985 drivers/staging/wusbcore/devconnect.c wusbhc->cack_ie.hdr.bLength = sizeof(wusbhc->cack_ie.hdr); wusbhc 986 drivers/staging/wusbcore/devconnect.c INIT_LIST_HEAD(&wusbhc->cack_list); wusbhc 994 drivers/staging/wusbcore/devconnect.c void wusbhc_devconnect_destroy(struct wusbhc *wusbhc) wusbhc 1008 drivers/staging/wusbcore/devconnect.c int wusbhc_devconnect_start(struct wusbhc *wusbhc) wusbhc 1010 drivers/staging/wusbcore/devconnect.c struct device *dev = wusbhc->dev; wusbhc 1020 drivers/staging/wusbcore/devconnect.c hi->attributes = cpu_to_le16((wusbhc->rsv->stream << 3) | WUIE_HI_CAP_ALL); wusbhc 1021 drivers/staging/wusbcore/devconnect.c hi->CHID = wusbhc->chid; wusbhc 1022 drivers/staging/wusbcore/devconnect.c result = wusbhc_mmcie_set(wusbhc, 0, 0, &hi->hdr); wusbhc 1027 drivers/staging/wusbcore/devconnect.c wusbhc->wuie_host_info = hi; wusbhc 1029 drivers/staging/wusbcore/devconnect.c queue_delayed_work(wusbd, &wusbhc->keep_alive_timer, wusbhc 1030 drivers/staging/wusbcore/devconnect.c msecs_to_jiffies(wusbhc->trust_timeout / 2)); wusbhc 1046 drivers/staging/wusbcore/devconnect.c void wusbhc_devconnect_stop(struct wusbhc *wusbhc) wusbhc 1050 drivers/staging/wusbcore/devconnect.c mutex_lock(&wusbhc->mutex); wusbhc 1051 drivers/staging/wusbcore/devconnect.c for (i = 0; i < wusbhc->ports_max; i++) { wusbhc 1052 drivers/staging/wusbcore/devconnect.c if (wusbhc->port[i].wusb_dev) wusbhc 1053 drivers/staging/wusbcore/devconnect.c __wusbhc_dev_disconnect(wusbhc, &wusbhc->port[i]); wusbhc 1055 drivers/staging/wusbcore/devconnect.c mutex_unlock(&wusbhc->mutex); wusbhc 1057 drivers/staging/wusbcore/devconnect.c cancel_delayed_work_sync(&wusbhc->keep_alive_timer); wusbhc 1058 drivers/staging/wusbcore/devconnect.c wusbhc_mmcie_rm(wusbhc, &wusbhc->wuie_host_info->hdr); wusbhc 1059 drivers/staging/wusbcore/devconnect.c kfree(wusbhc->wuie_host_info); wusbhc 1060 drivers/staging/wusbcore/devconnect.c wusbhc->wuie_host_info = NULL; wusbhc 1069 drivers/staging/wusbcore/devconnect.c int wusb_set_dev_addr(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev, u8 addr) wusbhc 1074 drivers/staging/wusbcore/devconnect.c result = wusbhc->dev_info_set(wusbhc, wusb_dev); wusbhc 1076 drivers/staging/wusbcore/devconnect.c dev_err(wusbhc->dev, "device %d: failed to set device " wusbhc 1079 drivers/staging/wusbcore/devconnect.c dev_info(wusbhc->dev, "device %d: %s addr %u\n", wusbhc 52 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc wusbhc; /* has to be 1st */ wusbhc 65 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = &hwahc->wusbhc; wusbhc 79 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->cluster_id = cluster_id; wusbhc 84 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_set_num_dnts(struct wusbhc *wusbhc, u8 interval, u8 slots) wusbhc 86 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 106 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 107 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 110 drivers/staging/wusbcore/host/hwa-hc.c mutex_lock(&wusbhc->mutex); wusbhc 123 drivers/staging/wusbcore/host/hwa-hc.c mutex_unlock(&wusbhc->mutex); wusbhc 134 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 135 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 138 drivers/staging/wusbcore/host/hwa-hc.c mutex_lock(&wusbhc->mutex); wusbhc 158 drivers/staging/wusbcore/host/hwa-hc.c mutex_unlock(&wusbhc->mutex); wusbhc 176 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 178 drivers/staging/wusbcore/host/hwa-hc.c mutex_lock(&wusbhc->mutex); wusbhc 179 drivers/staging/wusbcore/host/hwa-hc.c wusb_cluster_id_put(wusbhc->cluster_id); wusbhc 180 drivers/staging/wusbcore/host/hwa-hc.c mutex_unlock(&wusbhc->mutex); wusbhc 185 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 186 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 200 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 201 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 209 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 210 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 223 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 224 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 229 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_wusbhc_start(struct wusbhc *wusbhc) wusbhc 232 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 293 drivers/staging/wusbcore/host/hwa-hc.c static void __hwahc_op_wusbhc_stop(struct wusbhc *wusbhc, int delay) wusbhc 295 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 319 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_bwa_set(struct wusbhc *wusbhc, s8 stream_index, wusbhc 323 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 366 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_mmcie_add(struct wusbhc *wusbhc, u8 interval, wusbhc 370 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 387 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_mmcie_rm(struct wusbhc *wusbhc, u8 handle) wusbhc 389 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 405 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_dev_info_set(struct wusbhc *wusbhc, wusbhc 408 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 451 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_dev_set_key(struct wusbhc *wusbhc, u8 port_idx, u32 tkid, wusbhc 456 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 492 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_set_ptk(struct wusbhc *wusbhc, u8 port_idx, u32 tkid, wusbhc 496 drivers/staging/wusbcore/host/hwa-hc.c struct hwahc *hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 506 drivers/staging/wusbcore/host/hwa-hc.c result = __hwahc_dev_set_key(wusbhc, port_idx, tkid, wusbhc 510 drivers/staging/wusbcore/host/hwa-hc.c encryption_value = wusbhc->ccm1_etd->bEncryptionValue; wusbhc 523 drivers/staging/wusbcore/host/hwa-hc.c dev_err(wusbhc->dev, "Can't set host's WUSB encryption for " wusbhc 525 drivers/staging/wusbcore/host/hwa-hc.c wusb_et_name(wusbhc->ccm1_etd->bEncryptionType), wusbhc 526 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->ccm1_etd->bEncryptionValue, result); wusbhc 534 drivers/staging/wusbcore/host/hwa-hc.c static int __hwahc_op_set_gtk(struct wusbhc *wusbhc, u32 tkid, wusbhc 540 drivers/staging/wusbcore/host/hwa-hc.c return __hwahc_dev_set_key(wusbhc, 0, tkid, key, key_size, key_idx); wusbhc 625 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = &hwahc->wusbhc; wusbhc 687 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->ccm1_etd = etd; wusbhc 690 drivers/staging/wusbcore/host/hwa-hc.c if (wusbhc->ccm1_etd == NULL) { wusbhc 708 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = &hwahc->wusbhc; wusbhc 714 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->dev = dev; wusbhc 717 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->uwb_rc = NULL; wusbhc 724 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->ports_max = USB_MAXCHILDREN; wusbhc 726 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->ports_max = wa->wa_descr->bNumPorts; wusbhc 728 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->mmcies_max = wa->wa_descr->bNumMMCIEs; wusbhc 729 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->start = __hwahc_op_wusbhc_start; wusbhc 730 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->stop = __hwahc_op_wusbhc_stop; wusbhc 731 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->mmcie_add = __hwahc_op_mmcie_add; wusbhc 732 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->mmcie_rm = __hwahc_op_mmcie_rm; wusbhc 733 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->dev_info_set = __hwahc_op_dev_info_set; wusbhc 734 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->bwa_set = __hwahc_op_bwa_set; wusbhc 735 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->set_num_dnts = __hwahc_op_set_num_dnts; wusbhc 736 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->set_ptk = __hwahc_op_set_ptk; wusbhc 737 drivers/staging/wusbcore/host/hwa-hc.c wusbhc->set_gtk = __hwahc_op_set_gtk; wusbhc 743 drivers/staging/wusbcore/host/hwa-hc.c wa->wusb = wusbhc; /* FIXME: ugly, need to fix */ wusbhc 744 drivers/staging/wusbcore/host/hwa-hc.c result = wusbhc_create(&hwahc->wusbhc); wusbhc 755 drivers/staging/wusbcore/host/hwa-hc.c wusbhc_destroy(&hwahc->wusbhc); wusbhc 767 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc = &hwahc->wusbhc; wusbhc 769 drivers/staging/wusbcore/host/hwa-hc.c mutex_lock(&wusbhc->mutex); wusbhc 771 drivers/staging/wusbcore/host/hwa-hc.c wusbhc_destroy(&hwahc->wusbhc); wusbhc 773 drivers/staging/wusbcore/host/hwa-hc.c hwahc->wusbhc.dev = NULL; wusbhc 774 drivers/staging/wusbcore/host/hwa-hc.c uwb_rc_put(wusbhc->uwb_rc); wusbhc 777 drivers/staging/wusbcore/host/hwa-hc.c mutex_unlock(&wusbhc->mutex); wusbhc 790 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc; wusbhc 802 drivers/staging/wusbcore/host/hwa-hc.c wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 803 drivers/staging/wusbcore/host/hwa-hc.c hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 816 drivers/staging/wusbcore/host/hwa-hc.c result = wusbhc_b_create(&hwahc->wusbhc); wusbhc 836 drivers/staging/wusbcore/host/hwa-hc.c struct wusbhc *wusbhc; wusbhc 840 drivers/staging/wusbcore/host/hwa-hc.c wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 841 drivers/staging/wusbcore/host/hwa-hc.c hwahc = container_of(wusbhc, struct hwahc, wusbhc); wusbhc 843 drivers/staging/wusbcore/host/hwa-hc.c wusbhc_b_destroy(&hwahc->wusbhc); wusbhc 165 drivers/staging/wusbcore/host/whci/asl.c struct wusbhc *wusbhc = &whc->wusbhc; wusbhc 168 drivers/staging/wusbcore/host/whci/asl.c mutex_lock(&wusbhc->mutex); wusbhc 169 drivers/staging/wusbcore/host/whci/asl.c if (wusbhc->active) { wusbhc 178 drivers/staging/wusbcore/host/whci/asl.c mutex_unlock(&wusbhc->mutex); wusbhc 260 drivers/staging/wusbcore/host/whci/asl.c err = usb_hcd_link_urb_to_ep(&whc->wusbhc.usb_hcd, urb); wusbhc 275 drivers/staging/wusbcore/host/whci/asl.c usb_hcd_unlink_urb_from_ep(&whc->wusbhc.usb_hcd, urb); wusbhc 306 drivers/staging/wusbcore/host/whci/asl.c ret = usb_hcd_check_unlink_urb(&whc->wusbhc.usb_hcd, urb, status); wusbhc 127 drivers/staging/wusbcore/host/whci/debug.c if (whc->wusbhc.pal.debugfs_dir == NULL) wusbhc 135 drivers/staging/wusbcore/host/whci/debug.c whc->wusbhc.pal.debugfs_dir, whc, wusbhc 138 drivers/staging/wusbcore/host/whci/debug.c whc->wusbhc.pal.debugfs_dir, whc, wusbhc 141 drivers/staging/wusbcore/host/whci/debug.c whc->wusbhc.pal.debugfs_dir, whc, wusbhc 35 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 36 drivers/staging/wusbcore/host/whci/hcd.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 40 drivers/staging/wusbcore/host/whci/hcd.c mutex_lock(&wusbhc->mutex); wusbhc 55 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->cluster_id = bcid; wusbhc 65 drivers/staging/wusbcore/host/whci/hcd.c mutex_unlock(&wusbhc->mutex); wusbhc 79 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 80 drivers/staging/wusbcore/host/whci/hcd.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 82 drivers/staging/wusbcore/host/whci/hcd.c mutex_lock(&wusbhc->mutex); wusbhc 91 drivers/staging/wusbcore/host/whci/hcd.c wusb_cluster_id_put(wusbhc->cluster_id); wusbhc 93 drivers/staging/wusbcore/host/whci/hcd.c mutex_unlock(&wusbhc->mutex); wusbhc 109 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 110 drivers/staging/wusbcore/host/whci/hcd.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 136 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 137 drivers/staging/wusbcore/host/whci/hcd.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 164 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 165 drivers/staging/wusbcore/host/whci/hcd.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 182 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 183 drivers/staging/wusbcore/host/whci/hcd.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 230 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc; wusbhc 243 drivers/staging/wusbcore/host/whci/hcd.c wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 244 drivers/staging/wusbcore/host/whci/hcd.c whc = wusbhc_to_whc(wusbhc); wusbhc 251 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->dev = dev; wusbhc 252 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->uwb_rc = uwb_rc_get_by_grandpa(umc->dev.parent); wusbhc 253 drivers/staging/wusbcore/host/whci/hcd.c if (!wusbhc->uwb_rc) { wusbhc 262 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->ports_max = USB_MAXCHILDREN; wusbhc 264 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->ports_max = whc->n_devices; wusbhc 265 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->mmcies_max = whc->n_mmc_ies; wusbhc 266 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->start = whc_wusbhc_start; wusbhc 267 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->stop = whc_wusbhc_stop; wusbhc 268 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->mmcie_add = whc_mmcie_add; wusbhc 269 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->mmcie_rm = whc_mmcie_rm; wusbhc 270 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->dev_info_set = whc_dev_info_set; wusbhc 271 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->bwa_set = whc_bwa_set; wusbhc 272 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->set_num_dnts = whc_set_num_dnts; wusbhc 273 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->set_ptk = whc_set_ptk; wusbhc 274 drivers/staging/wusbcore/host/whci/hcd.c wusbhc->set_gtk = whc_set_gtk; wusbhc 276 drivers/staging/wusbcore/host/whci/hcd.c ret = wusbhc_create(wusbhc); wusbhc 287 drivers/staging/wusbcore/host/whci/hcd.c ret = wusbhc_b_create(wusbhc); wusbhc 300 drivers/staging/wusbcore/host/whci/hcd.c wusbhc_destroy(wusbhc); wusbhc 302 drivers/staging/wusbcore/host/whci/hcd.c uwb_rc_put(wusbhc->uwb_rc); wusbhc 314 drivers/staging/wusbcore/host/whci/hcd.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 315 drivers/staging/wusbcore/host/whci/hcd.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 319 drivers/staging/wusbcore/host/whci/hcd.c wusbhc_b_destroy(wusbhc); wusbhc 321 drivers/staging/wusbcore/host/whci/hcd.c wusbhc_destroy(wusbhc); wusbhc 322 drivers/staging/wusbcore/host/whci/hcd.c uwb_rc_put(wusbhc->uwb_rc); wusbhc 89 drivers/staging/wusbcore/host/whci/hw.c struct wusbhc *wusbhc = &whc->wusbhc; wusbhc 92 drivers/staging/wusbcore/host/whci/hw.c wusbhc_reset_all(wusbhc); wusbhc 22 drivers/staging/wusbcore/host/whci/int.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(hcd); wusbhc 23 drivers/staging/wusbcore/host/whci/int.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 58 drivers/staging/wusbcore/host/whci/int.c struct wusbhc *wusbhc = &whc->wusbhc; wusbhc 64 drivers/staging/wusbcore/host/whci/int.c wusbhc_handle_dn(wusbhc, dn->src_addr, wusbhc 178 drivers/staging/wusbcore/host/whci/pzl.c struct wusbhc *wusbhc = &whc->wusbhc; wusbhc 181 drivers/staging/wusbcore/host/whci/pzl.c mutex_lock(&wusbhc->mutex); wusbhc 182 drivers/staging/wusbcore/host/whci/pzl.c if (wusbhc->active) { wusbhc 191 drivers/staging/wusbcore/host/whci/pzl.c mutex_unlock(&wusbhc->mutex); wusbhc 288 drivers/staging/wusbcore/host/whci/pzl.c err = usb_hcd_link_urb_to_ep(&whc->wusbhc.usb_hcd, urb); wusbhc 303 drivers/staging/wusbcore/host/whci/pzl.c usb_hcd_unlink_urb_from_ep(&whc->wusbhc.usb_hcd, urb); wusbhc 334 drivers/staging/wusbcore/host/whci/pzl.c ret = usb_hcd_check_unlink_urb(&whc->wusbhc.usb_hcd, urb, status); wusbhc 74 drivers/staging/wusbcore/host/whci/qset.c if (phy_rate > whc->wusbhc.phy_rate) wusbhc 75 drivers/staging/wusbcore/host/whci/qset.c phy_rate = whc->wusbhc.phy_rate; wusbhc 299 drivers/staging/wusbcore/host/whci/qset.c dma_unmap_single(whc->wusbhc.dev, dma_addr, wusbhc 306 drivers/staging/wusbcore/host/whci/qset.c if (!dma_mapping_error(whc->wusbhc.dev, std->dma_addr)) wusbhc 307 drivers/staging/wusbcore/host/whci/qset.c dma_unmap_single(whc->wusbhc.dev, std->dma_addr, wusbhc 367 drivers/staging/wusbcore/host/whci/qset.c std->dma_addr = dma_map_single(whc->wusbhc.dev, std->pl_virt, pl_len, DMA_TO_DEVICE); wusbhc 368 drivers/staging/wusbcore/host/whci/qset.c if (dma_mapping_error(whc->wusbhc.dev, std->dma_addr)) { wusbhc 527 drivers/staging/wusbcore/host/whci/qset.c std->dma_addr = dma_map_single(whc->wusbhc.dev, std->pl_virt, wusbhc 529 drivers/staging/wusbcore/host/whci/qset.c if (dma_mapping_error(whc->wusbhc.dev, std->dma_addr)) wusbhc 702 drivers/staging/wusbcore/host/whci/qset.c struct wusbhc *wusbhc = &whc->wusbhc; wusbhc 705 drivers/staging/wusbcore/host/whci/qset.c usb_hcd_unlink_urb_from_ep(&wusbhc->usb_hcd, urb); wusbhc 708 drivers/staging/wusbcore/host/whci/qset.c wusbhc_giveback_urb(wusbhc, urb, status); wusbhc 22 drivers/staging/wusbcore/host/whci/whcd.h struct wusbhc wusbhc; wusbhc 65 drivers/staging/wusbcore/host/whci/whcd.h #define wusbhc_to_whc(w) (container_of((w), struct whc, wusbhc)) wusbhc 139 drivers/staging/wusbcore/host/whci/whcd.h int whc_wusbhc_start(struct wusbhc *wusbhc); wusbhc 140 drivers/staging/wusbcore/host/whci/whcd.h void whc_wusbhc_stop(struct wusbhc *wusbhc, int delay); wusbhc 141 drivers/staging/wusbcore/host/whci/whcd.h int whc_mmcie_add(struct wusbhc *wusbhc, u8 interval, u8 repeat_cnt, wusbhc 143 drivers/staging/wusbcore/host/whci/whcd.h int whc_mmcie_rm(struct wusbhc *wusbhc, u8 handle); wusbhc 144 drivers/staging/wusbcore/host/whci/whcd.h int whc_bwa_set(struct wusbhc *wusbhc, s8 stream_index, const struct uwb_mas_bm *mas_bm); wusbhc 145 drivers/staging/wusbcore/host/whci/whcd.h int whc_dev_info_set(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev); wusbhc 146 drivers/staging/wusbcore/host/whci/whcd.h int whc_set_num_dnts(struct wusbhc *wusbhc, u8 interval, u8 slots); wusbhc 147 drivers/staging/wusbcore/host/whci/whcd.h int whc_set_ptk(struct wusbhc *wusbhc, u8 port_idx, u32 tkid, wusbhc 149 drivers/staging/wusbcore/host/whci/whcd.h int whc_set_gtk(struct wusbhc *wusbhc, u32 tkid, wusbhc 32 drivers/staging/wusbcore/host/whci/wusb.c int whc_wusbhc_start(struct wusbhc *wusbhc) wusbhc 34 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 42 drivers/staging/wusbcore/host/whci/wusb.c void whc_wusbhc_stop(struct wusbhc *wusbhc, int delay) wusbhc 44 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 58 drivers/staging/wusbcore/host/whci/wusb.c int whc_mmcie_add(struct wusbhc *wusbhc, u8 interval, u8 repeat_cnt, wusbhc 61 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 72 drivers/staging/wusbcore/host/whci/wusb.c int whc_mmcie_rm(struct wusbhc *wusbhc, u8 handle) wusbhc 74 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 82 drivers/staging/wusbcore/host/whci/wusb.c int whc_bwa_set(struct wusbhc *wusbhc, s8 stream_index, const struct uwb_mas_bm *mas_bm) wusbhc 84 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 92 drivers/staging/wusbcore/host/whci/wusb.c int whc_dev_info_set(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) wusbhc 94 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 116 drivers/staging/wusbcore/host/whci/wusb.c int whc_set_num_dnts(struct wusbhc *wusbhc, u8 interval, u8 slots) wusbhc 118 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 160 drivers/staging/wusbcore/host/whci/wusb.c int whc_set_ptk(struct wusbhc *wusbhc, u8 port_idx, u32 tkid, wusbhc 163 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 191 drivers/staging/wusbcore/host/whci/wusb.c int whc_set_gtk(struct wusbhc *wusbhc, u32 tkid, wusbhc 194 drivers/staging/wusbcore/host/whci/wusb.c struct whc *whc = wusbhc_to_whc(wusbhc); wusbhc 31 drivers/staging/wusbcore/mmc.c int wusbhc_mmcie_create(struct wusbhc *wusbhc) wusbhc 33 drivers/staging/wusbcore/mmc.c u8 mmcies = wusbhc->mmcies_max; wusbhc 34 drivers/staging/wusbcore/mmc.c wusbhc->mmcie = kcalloc(mmcies, sizeof(wusbhc->mmcie[0]), GFP_KERNEL); wusbhc 35 drivers/staging/wusbcore/mmc.c if (wusbhc->mmcie == NULL) wusbhc 37 drivers/staging/wusbcore/mmc.c mutex_init(&wusbhc->mmcie_mutex); wusbhc 42 drivers/staging/wusbcore/mmc.c void wusbhc_mmcie_destroy(struct wusbhc *wusbhc) wusbhc 44 drivers/staging/wusbcore/mmc.c kfree(wusbhc->mmcie); wusbhc 80 drivers/staging/wusbcore/mmc.c int wusbhc_mmcie_set(struct wusbhc *wusbhc, u8 interval, u8 repeat_cnt, wusbhc 87 drivers/staging/wusbcore/mmc.c mutex_lock(&wusbhc->mmcie_mutex); wusbhc 91 drivers/staging/wusbcore/mmc.c handle = wusbhc->mmcies_max - 1; wusbhc 94 drivers/staging/wusbcore/mmc.c dev_err(wusbhc->dev, "Special ordering case for WUIE ID 0x%x " wusbhc 101 drivers/staging/wusbcore/mmc.c for (itr = 0; itr < wusbhc->mmcies_max - 1; itr++) { wusbhc 102 drivers/staging/wusbcore/mmc.c if (wusbhc->mmcie[itr] == wuie) { wusbhc 106 drivers/staging/wusbcore/mmc.c if (wusbhc->mmcie[itr] == NULL) wusbhc 112 drivers/staging/wusbcore/mmc.c result = (wusbhc->mmcie_add)(wusbhc, interval, repeat_cnt, handle, wusbhc 115 drivers/staging/wusbcore/mmc.c wusbhc->mmcie[handle] = wuie; wusbhc 117 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mmcie_mutex); wusbhc 127 drivers/staging/wusbcore/mmc.c void wusbhc_mmcie_rm(struct wusbhc *wusbhc, struct wuie_hdr *wuie) wusbhc 132 drivers/staging/wusbcore/mmc.c mutex_lock(&wusbhc->mmcie_mutex); wusbhc 133 drivers/staging/wusbcore/mmc.c for (itr = 0; itr < wusbhc->mmcies_max; itr++) { wusbhc 134 drivers/staging/wusbcore/mmc.c if (wusbhc->mmcie[itr] == wuie) { wusbhc 139 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mmcie_mutex); wusbhc 143 drivers/staging/wusbcore/mmc.c result = (wusbhc->mmcie_rm)(wusbhc, handle); wusbhc 145 drivers/staging/wusbcore/mmc.c wusbhc->mmcie[itr] = NULL; wusbhc 146 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mmcie_mutex); wusbhc 150 drivers/staging/wusbcore/mmc.c static int wusbhc_mmc_start(struct wusbhc *wusbhc) wusbhc 154 drivers/staging/wusbcore/mmc.c mutex_lock(&wusbhc->mutex); wusbhc 155 drivers/staging/wusbcore/mmc.c ret = wusbhc->start(wusbhc); wusbhc 157 drivers/staging/wusbcore/mmc.c wusbhc->active = 1; wusbhc 158 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mutex); wusbhc 163 drivers/staging/wusbcore/mmc.c static void wusbhc_mmc_stop(struct wusbhc *wusbhc) wusbhc 165 drivers/staging/wusbcore/mmc.c mutex_lock(&wusbhc->mutex); wusbhc 166 drivers/staging/wusbcore/mmc.c wusbhc->active = 0; wusbhc 167 drivers/staging/wusbcore/mmc.c wusbhc->stop(wusbhc, WUSB_CHANNEL_STOP_DELAY_MS); wusbhc 168 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mutex); wusbhc 178 drivers/staging/wusbcore/mmc.c int wusbhc_start(struct wusbhc *wusbhc) wusbhc 181 drivers/staging/wusbcore/mmc.c struct device *dev = wusbhc->dev; wusbhc 183 drivers/staging/wusbcore/mmc.c WARN_ON(wusbhc->wuie_host_info != NULL); wusbhc 184 drivers/staging/wusbcore/mmc.c BUG_ON(wusbhc->uwb_rc == NULL); wusbhc 186 drivers/staging/wusbcore/mmc.c result = wusbhc_rsv_establish(wusbhc); wusbhc 193 drivers/staging/wusbcore/mmc.c result = wusbhc_devconnect_start(wusbhc); wusbhc 200 drivers/staging/wusbcore/mmc.c result = wusbhc_sec_start(wusbhc); wusbhc 207 drivers/staging/wusbcore/mmc.c result = wusbhc->set_num_dnts(wusbhc, wusbhc->dnts_interval, wusbhc 208 drivers/staging/wusbcore/mmc.c wusbhc->dnts_num_slots); wusbhc 213 drivers/staging/wusbcore/mmc.c result = wusbhc_mmc_start(wusbhc); wusbhc 222 drivers/staging/wusbcore/mmc.c wusbhc_sec_stop(wusbhc); wusbhc 225 drivers/staging/wusbcore/mmc.c wusbhc_devconnect_stop(wusbhc); wusbhc 227 drivers/staging/wusbcore/mmc.c wusbhc_rsv_terminate(wusbhc); wusbhc 238 drivers/staging/wusbcore/mmc.c void wusbhc_stop(struct wusbhc *wusbhc) wusbhc 240 drivers/staging/wusbcore/mmc.c wusbhc_mmc_stop(wusbhc); wusbhc 241 drivers/staging/wusbcore/mmc.c wusbhc_sec_stop(wusbhc); wusbhc 242 drivers/staging/wusbcore/mmc.c wusbhc_devconnect_stop(wusbhc); wusbhc 243 drivers/staging/wusbcore/mmc.c wusbhc_rsv_terminate(wusbhc); wusbhc 253 drivers/staging/wusbcore/mmc.c int wusbhc_chid_set(struct wusbhc *wusbhc, const struct wusb_ckhdid *chid) wusbhc 260 drivers/staging/wusbcore/mmc.c mutex_lock(&wusbhc->mutex); wusbhc 262 drivers/staging/wusbcore/mmc.c if (wusbhc->active) { wusbhc 263 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mutex); wusbhc 266 drivers/staging/wusbcore/mmc.c wusbhc->chid = *chid; wusbhc 271 drivers/staging/wusbcore/mmc.c if ((chid) && (wusbhc->uwb_rc == NULL)) { wusbhc 272 drivers/staging/wusbcore/mmc.c wusbhc->uwb_rc = uwb_rc_get_by_grandpa(wusbhc->dev->parent); wusbhc 273 drivers/staging/wusbcore/mmc.c if (wusbhc->uwb_rc == NULL) { wusbhc 275 drivers/staging/wusbcore/mmc.c dev_err(wusbhc->dev, wusbhc 280 drivers/staging/wusbcore/mmc.c result = wusbhc_pal_register(wusbhc); wusbhc 282 drivers/staging/wusbcore/mmc.c dev_err(wusbhc->dev, "Cannot register as a UWB PAL\n"); wusbhc 286 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mutex); wusbhc 289 drivers/staging/wusbcore/mmc.c result = uwb_radio_start(&wusbhc->pal); wusbhc 290 drivers/staging/wusbcore/mmc.c else if (wusbhc->uwb_rc) wusbhc 291 drivers/staging/wusbcore/mmc.c uwb_radio_stop(&wusbhc->pal); wusbhc 296 drivers/staging/wusbcore/mmc.c uwb_rc_put(wusbhc->uwb_rc); wusbhc 297 drivers/staging/wusbcore/mmc.c wusbhc->uwb_rc = NULL; wusbhc 299 drivers/staging/wusbcore/mmc.c mutex_unlock(&wusbhc->mutex); wusbhc 12 drivers/staging/wusbcore/pal.c struct wusbhc *wusbhc = container_of(pal, struct wusbhc, pal); wusbhc 14 drivers/staging/wusbcore/pal.c dev_dbg(wusbhc->dev, "%s: channel = %d\n", __func__, channel); wusbhc 16 drivers/staging/wusbcore/pal.c wusbhc_stop(wusbhc); wusbhc 18 drivers/staging/wusbcore/pal.c wusbhc_start(wusbhc); wusbhc 25 drivers/staging/wusbcore/pal.c int wusbhc_pal_register(struct wusbhc *wusbhc) wusbhc 27 drivers/staging/wusbcore/pal.c uwb_pal_init(&wusbhc->pal); wusbhc 29 drivers/staging/wusbcore/pal.c wusbhc->pal.name = "wusbhc"; wusbhc 30 drivers/staging/wusbcore/pal.c wusbhc->pal.device = wusbhc->usb_hcd.self.controller; wusbhc 31 drivers/staging/wusbcore/pal.c wusbhc->pal.rc = wusbhc->uwb_rc; wusbhc 32 drivers/staging/wusbcore/pal.c wusbhc->pal.channel_changed = wusbhc_channel_changed; wusbhc 34 drivers/staging/wusbcore/pal.c return uwb_pal_register(&wusbhc->pal); wusbhc 41 drivers/staging/wusbcore/pal.c void wusbhc_pal_unregister(struct wusbhc *wusbhc) wusbhc 43 drivers/staging/wusbcore/pal.c if (wusbhc->uwb_rc) wusbhc 44 drivers/staging/wusbcore/pal.c uwb_pal_unregister(&wusbhc->pal); wusbhc 20 drivers/staging/wusbcore/reservation.c static int wusbhc_bwa_set(struct wusbhc *wusbhc, u8 stream, wusbhc 25 drivers/staging/wusbcore/reservation.c return wusbhc->bwa_set(wusbhc, stream, mas); wusbhc 38 drivers/staging/wusbcore/reservation.c struct wusbhc *wusbhc = rsv->pal_priv; wusbhc 39 drivers/staging/wusbcore/reservation.c struct device *dev = wusbhc->dev; wusbhc 48 drivers/staging/wusbcore/reservation.c wusbhc_bwa_set(wusbhc, rsv->stream, &mas); wusbhc 52 drivers/staging/wusbcore/reservation.c wusbhc_bwa_set(wusbhc, 0, NULL); wusbhc 65 drivers/staging/wusbcore/reservation.c int wusbhc_rsv_establish(struct wusbhc *wusbhc) wusbhc 67 drivers/staging/wusbcore/reservation.c struct uwb_rc *rc = wusbhc->uwb_rc; wusbhc 75 drivers/staging/wusbcore/reservation.c rsv = uwb_rsv_create(rc, wusbhc_rsv_complete_cb, wusbhc); wusbhc 79 drivers/staging/wusbcore/reservation.c bcid.data[0] = wusbhc->cluster_id; wusbhc 92 drivers/staging/wusbcore/reservation.c wusbhc->rsv = rsv; wusbhc 103 drivers/staging/wusbcore/reservation.c void wusbhc_rsv_terminate(struct wusbhc *wusbhc) wusbhc 105 drivers/staging/wusbcore/reservation.c if (wusbhc->rsv) { wusbhc 106 drivers/staging/wusbcore/reservation.c uwb_rsv_terminate(wusbhc->rsv); wusbhc 107 drivers/staging/wusbcore/reservation.c uwb_rsv_destroy(wusbhc->rsv); wusbhc 108 drivers/staging/wusbcore/reservation.c wusbhc->rsv = NULL; wusbhc 85 drivers/staging/wusbcore/rh.c static int wusbhc_rh_port_reset(struct wusbhc *wusbhc, u8 port_idx) wusbhc 88 drivers/staging/wusbcore/rh.c struct wusb_port *port = wusb_port_by_idx(wusbhc, port_idx); wusbhc 100 drivers/staging/wusbcore/rh.c result = wusb_dev_update_address(wusbhc, wusb_dev); wusbhc 129 drivers/staging/wusbcore/rh.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 134 drivers/staging/wusbcore/rh.c size = DIV_ROUND_UP(wusbhc->ports_max + 1, 8); wusbhc 139 drivers/staging/wusbcore/rh.c for (cnt = 0; cnt < wusbhc->ports_max; cnt++) { wusbhc 141 drivers/staging/wusbcore/rh.c if (wusb_port_by_idx(wusbhc, cnt)->change) { wusbhc 160 drivers/staging/wusbcore/rh.c static int wusbhc_rh_get_hub_descr(struct wusbhc *wusbhc, u16 wValue, wusbhc 165 drivers/staging/wusbcore/rh.c u16 temp = 1 + (wusbhc->ports_max / 8); wusbhc 172 drivers/staging/wusbcore/rh.c descr->bNbrPorts = wusbhc->ports_max; wusbhc 194 drivers/staging/wusbcore/rh.c static int wusbhc_rh_clear_hub_feat(struct wusbhc *wusbhc, u16 feature) wusbhc 219 drivers/staging/wusbcore/rh.c static int wusbhc_rh_get_hub_status(struct wusbhc *wusbhc, u32 *buf, wusbhc 232 drivers/staging/wusbcore/rh.c static int wusbhc_rh_set_port_feat(struct wusbhc *wusbhc, u16 feature, wusbhc 235 drivers/staging/wusbcore/rh.c struct device *dev = wusbhc->dev; wusbhc 237 drivers/staging/wusbcore/rh.c if (port_idx > wusbhc->ports_max) wusbhc 251 drivers/staging/wusbcore/rh.c mutex_lock(&wusbhc->mutex); wusbhc 252 drivers/staging/wusbcore/rh.c wusb_port_by_idx(wusbhc, port_idx)->status |= USB_PORT_STAT_POWER; wusbhc 253 drivers/staging/wusbcore/rh.c mutex_unlock(&wusbhc->mutex); wusbhc 256 drivers/staging/wusbcore/rh.c return wusbhc_rh_port_reset(wusbhc, port_idx); wusbhc 276 drivers/staging/wusbcore/rh.c static int wusbhc_rh_clear_port_feat(struct wusbhc *wusbhc, u16 feature, wusbhc 280 drivers/staging/wusbcore/rh.c struct device *dev = wusbhc->dev; wusbhc 282 drivers/staging/wusbcore/rh.c if (port_idx > wusbhc->ports_max) wusbhc 285 drivers/staging/wusbcore/rh.c mutex_lock(&wusbhc->mutex); wusbhc 292 drivers/staging/wusbcore/rh.c wusb_port_by_idx(wusbhc, port_idx)->change &= ~USB_PORT_STAT_C_RESET; wusbhc 295 drivers/staging/wusbcore/rh.c wusb_port_by_idx(wusbhc, port_idx)->change &= ~USB_PORT_STAT_C_CONNECTION; wusbhc 298 drivers/staging/wusbcore/rh.c __wusbhc_dev_disable(wusbhc, port_idx); wusbhc 301 drivers/staging/wusbcore/rh.c wusb_port_by_idx(wusbhc, port_idx)->change &= ~USB_PORT_STAT_C_ENABLE; wusbhc 315 drivers/staging/wusbcore/rh.c mutex_unlock(&wusbhc->mutex); wusbhc 325 drivers/staging/wusbcore/rh.c static int wusbhc_rh_get_port_status(struct wusbhc *wusbhc, u16 port_idx, wusbhc 330 drivers/staging/wusbcore/rh.c if (port_idx > wusbhc->ports_max) wusbhc 333 drivers/staging/wusbcore/rh.c mutex_lock(&wusbhc->mutex); wusbhc 334 drivers/staging/wusbcore/rh.c buf[0] = cpu_to_le16(wusb_port_by_idx(wusbhc, port_idx)->status); wusbhc 335 drivers/staging/wusbcore/rh.c buf[1] = cpu_to_le16(wusb_port_by_idx(wusbhc, port_idx)->change); wusbhc 336 drivers/staging/wusbcore/rh.c mutex_unlock(&wusbhc->mutex); wusbhc 350 drivers/staging/wusbcore/rh.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 355 drivers/staging/wusbcore/rh.c wusbhc, wValue, wIndex, wusbhc 359 drivers/staging/wusbcore/rh.c result = wusbhc_rh_clear_hub_feat(wusbhc, wValue); wusbhc 362 drivers/staging/wusbcore/rh.c result = wusbhc_rh_get_hub_status(wusbhc, (u32 *)buf, wLength); wusbhc 366 drivers/staging/wusbcore/rh.c result = wusbhc_rh_set_port_feat(wusbhc, wValue, wIndex >> 8, wusbhc 370 drivers/staging/wusbcore/rh.c result = wusbhc_rh_clear_port_feat(wusbhc, wValue, wIndex >> 8, wusbhc 374 drivers/staging/wusbcore/rh.c result = wusbhc_rh_get_port_status(wusbhc, wIndex - 1, wusbhc 380 drivers/staging/wusbcore/rh.c dev_err(wusbhc->dev, "%s (%p [%p], %x, %x, %x, %p, %x) " wusbhc 381 drivers/staging/wusbcore/rh.c "UNIMPLEMENTED\n", __func__, usb_hcd, wusbhc, reqntype, wusbhc 392 drivers/staging/wusbcore/rh.c struct wusbhc *wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 393 drivers/staging/wusbcore/rh.c dev_err(wusbhc->dev, "%s (%p [%p], port_idx %u) UNIMPLEMENTED\n", wusbhc 394 drivers/staging/wusbcore/rh.c __func__, usb_hcd, wusbhc, port_idx); wusbhc 408 drivers/staging/wusbcore/rh.c int wusbhc_rh_create(struct wusbhc *wusbhc) wusbhc 412 drivers/staging/wusbcore/rh.c port_size = wusbhc->ports_max * sizeof(wusbhc->port[0]); wusbhc 413 drivers/staging/wusbcore/rh.c wusbhc->port = kzalloc(port_size, GFP_KERNEL); wusbhc 414 drivers/staging/wusbcore/rh.c if (wusbhc->port == NULL) wusbhc 416 drivers/staging/wusbcore/rh.c for (itr = 0; itr < wusbhc->ports_max; itr++) wusbhc 417 drivers/staging/wusbcore/rh.c wusb_port_init(&wusbhc->port[itr]); wusbhc 423 drivers/staging/wusbcore/rh.c void wusbhc_rh_destroy(struct wusbhc *wusbhc) wusbhc 425 drivers/staging/wusbcore/rh.c kfree(wusbhc->port); wusbhc 21 drivers/staging/wusbcore/security.c int wusbhc_sec_create(struct wusbhc *wusbhc) wusbhc 31 drivers/staging/wusbcore/security.c wusbhc->wq_security = create_singlethread_workqueue("wusbd_security"); wusbhc 32 drivers/staging/wusbcore/security.c if (wusbhc->wq_security == NULL) { wusbhc 37 drivers/staging/wusbcore/security.c wusbhc->gtk.descr.bLength = sizeof(wusbhc->gtk.descr) + wusbhc 38 drivers/staging/wusbcore/security.c sizeof(wusbhc->gtk.data); wusbhc 39 drivers/staging/wusbcore/security.c wusbhc->gtk.descr.bDescriptorType = USB_DT_KEY; wusbhc 40 drivers/staging/wusbcore/security.c wusbhc->gtk.descr.bReserved = 0; wusbhc 41 drivers/staging/wusbcore/security.c wusbhc->gtk_index = 0; wusbhc 43 drivers/staging/wusbcore/security.c INIT_WORK(&wusbhc->gtk_rekey_work, wusbhc_gtk_rekey_work); wusbhc 50 drivers/staging/wusbcore/security.c void wusbhc_sec_destroy(struct wusbhc *wusbhc) wusbhc 52 drivers/staging/wusbcore/security.c destroy_workqueue(wusbhc->wq_security); wusbhc 68 drivers/staging/wusbcore/security.c static u32 wusbhc_next_tkid(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) wusbhc 74 drivers/staging/wusbcore/security.c tkid = &wusbhc->gtk_tkid; wusbhc 77 drivers/staging/wusbcore/security.c tkid = &wusb_port_by_idx(wusbhc, wusb_dev->port_idx)->ptk_tkid; wusbhc 86 drivers/staging/wusbcore/security.c static void wusbhc_generate_gtk(struct wusbhc *wusbhc) wusbhc 88 drivers/staging/wusbcore/security.c const size_t key_size = sizeof(wusbhc->gtk.data); wusbhc 91 drivers/staging/wusbcore/security.c tkid = wusbhc_next_tkid(wusbhc, NULL); wusbhc 93 drivers/staging/wusbcore/security.c wusbhc->gtk.descr.tTKID[0] = (tkid >> 0) & 0xff; wusbhc 94 drivers/staging/wusbcore/security.c wusbhc->gtk.descr.tTKID[1] = (tkid >> 8) & 0xff; wusbhc 95 drivers/staging/wusbcore/security.c wusbhc->gtk.descr.tTKID[2] = (tkid >> 16) & 0xff; wusbhc 97 drivers/staging/wusbcore/security.c get_random_bytes(wusbhc->gtk.descr.bKeyData, key_size); wusbhc 108 drivers/staging/wusbcore/security.c int wusbhc_sec_start(struct wusbhc *wusbhc) wusbhc 110 drivers/staging/wusbcore/security.c const size_t key_size = sizeof(wusbhc->gtk.data); wusbhc 113 drivers/staging/wusbcore/security.c wusbhc_generate_gtk(wusbhc); wusbhc 115 drivers/staging/wusbcore/security.c result = wusbhc->set_gtk(wusbhc, wusbhc->gtk_tkid, wusbhc 116 drivers/staging/wusbcore/security.c &wusbhc->gtk.descr.bKeyData, key_size); wusbhc 118 drivers/staging/wusbcore/security.c dev_err(wusbhc->dev, "cannot set GTK for the host: %d\n", wusbhc 130 drivers/staging/wusbcore/security.c void wusbhc_sec_stop(struct wusbhc *wusbhc) wusbhc 132 drivers/staging/wusbcore/security.c cancel_work_sync(&wusbhc->gtk_rekey_work); wusbhc 185 drivers/staging/wusbcore/security.c static int wusb_dev_set_gtk(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) wusbhc 188 drivers/staging/wusbcore/security.c u8 key_index = wusb_key_index(wusbhc->gtk_index, wusbhc 196 drivers/staging/wusbcore/security.c &wusbhc->gtk.descr, wusbhc->gtk.descr.bLength, wusbhc 202 drivers/staging/wusbcore/security.c int wusb_dev_sec_add(struct wusbhc *wusbhc, wusbhc 300 drivers/staging/wusbcore/security.c int wusb_dev_update_address(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) wusbhc 317 drivers/staging/wusbcore/security.c result = wusb_set_dev_addr(wusbhc, wusb_dev, 0); wusbhc 334 drivers/staging/wusbcore/security.c result = wusb_set_dev_addr(wusbhc, wusb_dev, new_address); wusbhc 350 drivers/staging/wusbcore/security.c int wusb_dev_4way_handshake(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev, wusbhc 373 drivers/staging/wusbcore/security.c tkid = wusbhc_next_tkid(wusbhc, wusb_dev); wusbhc 430 drivers/staging/wusbcore/security.c ccm_n.src_addr = wusbhc->uwb_rc->uwb_dev.dev_addr; wusbhc 481 drivers/staging/wusbcore/security.c result = wusbhc->set_ptk(wusbhc, wusb_dev->port_idx, tkid, wusbhc 486 drivers/staging/wusbcore/security.c result = wusb_dev_set_gtk(wusbhc, wusb_dev); wusbhc 495 drivers/staging/wusbcore/security.c result = wusb_dev_update_address(wusbhc, wusb_dev); wusbhc 527 drivers/staging/wusbcore/security.c struct wusbhc *wusbhc = container_of(work, wusbhc 528 drivers/staging/wusbcore/security.c struct wusbhc, gtk_rekey_work); wusbhc 529 drivers/staging/wusbcore/security.c size_t key_size = sizeof(wusbhc->gtk.data); wusbhc 534 drivers/staging/wusbcore/security.c mutex_lock(&wusbhc->mutex); wusbhc 536 drivers/staging/wusbcore/security.c wusbhc_generate_gtk(wusbhc); wusbhc 538 drivers/staging/wusbcore/security.c wusbhc->gtk_index = (wusbhc->gtk_index + 1) % (WUSB_KEY_INDEX_MAX + 1); wusbhc 544 drivers/staging/wusbcore/security.c for (port_idx = 0; port_idx < wusbhc->ports_max; port_idx++) { wusbhc 545 drivers/staging/wusbcore/security.c wusb_dev = wusbhc->port[port_idx].wusb_dev; wusbhc 553 drivers/staging/wusbcore/security.c mutex_unlock(&wusbhc->mutex); wusbhc 563 drivers/staging/wusbcore/security.c if (wusb_dev_set_gtk(wusbhc, wusb_dev) < 0) { wusbhc 572 drivers/staging/wusbcore/security.c mutex_lock(&wusbhc->mutex); wusbhc 573 drivers/staging/wusbcore/security.c wusbhc->set_gtk(wusbhc, wusbhc->gtk_tkid, wusbhc 574 drivers/staging/wusbcore/security.c &wusbhc->gtk.descr.bKeyData, key_size); wusbhc 575 drivers/staging/wusbcore/security.c mutex_unlock(&wusbhc->mutex); wusbhc 589 drivers/staging/wusbcore/security.c void wusbhc_gtk_rekey(struct wusbhc *wusbhc) wusbhc 598 drivers/staging/wusbcore/security.c queue_work(wusbhc->wq_security, &wusbhc->gtk_rekey_work); wusbhc 77 drivers/staging/wusbcore/wa-hc.h struct wusbhc; wusbhc 178 drivers/staging/wusbcore/wa-hc.h struct wusbhc *wusb; wusbhc 1645 drivers/staging/wusbcore/wa-xfer.c struct wusbhc *wusbhc = wa->wusb; wusbhc 1656 drivers/staging/wusbcore/wa-xfer.c mutex_lock(&wusbhc->mutex); /* get a WUSB dev */ wusbhc 1658 drivers/staging/wusbcore/wa-xfer.c mutex_unlock(&wusbhc->mutex); wusbhc 1662 drivers/staging/wusbcore/wa-xfer.c wusb_dev = __wusb_dev_get_by_usb_dev(wusbhc, urb->dev); wusbhc 1664 drivers/staging/wusbcore/wa-xfer.c mutex_unlock(&wusbhc->mutex); wusbhc 1669 drivers/staging/wusbcore/wa-xfer.c mutex_unlock(&wusbhc->mutex); wusbhc 28 drivers/staging/wusbcore/wusbhc.c static struct wusbhc *usbhc_dev_to_wusbhc(struct device *dev) wusbhc 47 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 49 drivers/staging/wusbcore/wusbhc.c return scnprintf(buf, PAGE_SIZE, "%u\n", wusbhc->trust_timeout); wusbhc 56 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 65 drivers/staging/wusbcore/wusbhc.c wusbhc->trust_timeout = min_t(unsigned, trust_timeout, 500); wusbhc 66 drivers/staging/wusbcore/wusbhc.c cancel_delayed_work(&wusbhc->keep_alive_timer); wusbhc 68 drivers/staging/wusbcore/wusbhc.c queue_delayed_work(wusbd, &wusbhc->keep_alive_timer, wusbhc 69 drivers/staging/wusbcore/wusbhc.c msecs_to_jiffies(wusbhc->trust_timeout / 2)); wusbhc 81 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 84 drivers/staging/wusbcore/wusbhc.c if (wusbhc->wuie_host_info != NULL) wusbhc 85 drivers/staging/wusbcore/wusbhc.c chid = &wusbhc->wuie_host_info->CHID; wusbhc 104 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 126 drivers/staging/wusbcore/wusbhc.c result = wusbhc_chid_set(wusbhc, &chid); wusbhc 136 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 138 drivers/staging/wusbcore/wusbhc.c return sprintf(buf, "%d\n", wusbhc->phy_rate); wusbhc 145 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 155 drivers/staging/wusbcore/wusbhc.c wusbhc->phy_rate = phy_rate; wusbhc 164 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 167 drivers/staging/wusbcore/wusbhc.c wusbhc->dnts_num_slots, wusbhc->dnts_interval); wusbhc 174 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 183 drivers/staging/wusbcore/wusbhc.c wusbhc->dnts_num_slots = num_slots; wusbhc 184 drivers/staging/wusbcore/wusbhc.c wusbhc->dnts_interval = interval; wusbhc 194 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 196 drivers/staging/wusbcore/wusbhc.c return sprintf(buf, "%d\n", wusbhc->retry_count); wusbhc 203 drivers/staging/wusbcore/wusbhc.c struct wusbhc *wusbhc = usbhc_dev_to_wusbhc(dev); wusbhc 212 drivers/staging/wusbcore/wusbhc.c wusbhc->retry_count = max_t(uint8_t, retry_count, wusbhc 247 drivers/staging/wusbcore/wusbhc.c int wusbhc_create(struct wusbhc *wusbhc) wusbhc 252 drivers/staging/wusbcore/wusbhc.c wusbhc->trust_timeout = WUSB_TRUST_TIMEOUT_MS; wusbhc 253 drivers/staging/wusbcore/wusbhc.c wusbhc->phy_rate = UWB_PHY_RATE_INVALID - 1; wusbhc 254 drivers/staging/wusbcore/wusbhc.c wusbhc->dnts_num_slots = 4; wusbhc 255 drivers/staging/wusbcore/wusbhc.c wusbhc->dnts_interval = 2; wusbhc 256 drivers/staging/wusbcore/wusbhc.c wusbhc->retry_count = WUSB_RETRY_COUNT_INFINITE; wusbhc 258 drivers/staging/wusbcore/wusbhc.c mutex_init(&wusbhc->mutex); wusbhc 259 drivers/staging/wusbcore/wusbhc.c result = wusbhc_mmcie_create(wusbhc); wusbhc 262 drivers/staging/wusbcore/wusbhc.c result = wusbhc_devconnect_create(wusbhc); wusbhc 265 drivers/staging/wusbcore/wusbhc.c result = wusbhc_rh_create(wusbhc); wusbhc 268 drivers/staging/wusbcore/wusbhc.c result = wusbhc_sec_create(wusbhc); wusbhc 274 drivers/staging/wusbcore/wusbhc.c wusbhc_rh_destroy(wusbhc); wusbhc 276 drivers/staging/wusbcore/wusbhc.c wusbhc_devconnect_destroy(wusbhc); wusbhc 278 drivers/staging/wusbcore/wusbhc.c wusbhc_mmcie_destroy(wusbhc); wusbhc 284 drivers/staging/wusbcore/wusbhc.c static inline struct kobject *wusbhc_kobj(struct wusbhc *wusbhc) wusbhc 286 drivers/staging/wusbcore/wusbhc.c return &wusbhc->usb_hcd.self.controller->kobj; wusbhc 299 drivers/staging/wusbcore/wusbhc.c int wusbhc_b_create(struct wusbhc *wusbhc) wusbhc 302 drivers/staging/wusbcore/wusbhc.c struct device *dev = wusbhc->usb_hcd.self.controller; wusbhc 304 drivers/staging/wusbcore/wusbhc.c result = sysfs_create_group(wusbhc_kobj(wusbhc), &wusbhc_attr_group); wusbhc 317 drivers/staging/wusbcore/wusbhc.c void wusbhc_b_destroy(struct wusbhc *wusbhc) wusbhc 319 drivers/staging/wusbcore/wusbhc.c wusbhc_pal_unregister(wusbhc); wusbhc 320 drivers/staging/wusbcore/wusbhc.c sysfs_remove_group(wusbhc_kobj(wusbhc), &wusbhc_attr_group); wusbhc 324 drivers/staging/wusbcore/wusbhc.c void wusbhc_destroy(struct wusbhc *wusbhc) wusbhc 326 drivers/staging/wusbcore/wusbhc.c wusbhc_sec_destroy(wusbhc); wusbhc 327 drivers/staging/wusbcore/wusbhc.c wusbhc_rh_destroy(wusbhc); wusbhc 328 drivers/staging/wusbcore/wusbhc.c wusbhc_devconnect_destroy(wusbhc); wusbhc 329 drivers/staging/wusbcore/wusbhc.c wusbhc_mmcie_destroy(wusbhc); wusbhc 409 drivers/staging/wusbcore/wusbhc.c void wusbhc_giveback_urb(struct wusbhc *wusbhc, struct urb *urb, int status) wusbhc 411 drivers/staging/wusbcore/wusbhc.c struct wusb_dev *wusb_dev = __wusb_dev_get_by_usb_dev(wusbhc, wusbhc 425 drivers/staging/wusbcore/wusbhc.c usb_hcd_giveback_urb(&wusbhc->usb_hcd, urb, status); wusbhc 436 drivers/staging/wusbcore/wusbhc.c void wusbhc_reset_all(struct wusbhc *wusbhc) wusbhc 438 drivers/staging/wusbcore/wusbhc.c if (wusbhc->uwb_rc) wusbhc 439 drivers/staging/wusbcore/wusbhc.c uwb_rc_reset_all(wusbhc->uwb_rc); wusbhc 84 drivers/staging/wusbcore/wusbhc.h struct wusbhc *wusbhc; wusbhc 264 drivers/staging/wusbcore/wusbhc.h int (*start)(struct wusbhc *wusbhc); wusbhc 265 drivers/staging/wusbcore/wusbhc.h void (*stop)(struct wusbhc *wusbhc, int delay); wusbhc 266 drivers/staging/wusbcore/wusbhc.h int (*mmcie_add)(struct wusbhc *wusbhc, u8 interval, u8 repeat_cnt, wusbhc 268 drivers/staging/wusbcore/wusbhc.h int (*mmcie_rm)(struct wusbhc *wusbhc, u8 handle); wusbhc 269 drivers/staging/wusbcore/wusbhc.h int (*dev_info_set)(struct wusbhc *, struct wusb_dev *wusb_dev); wusbhc 270 drivers/staging/wusbcore/wusbhc.h int (*bwa_set)(struct wusbhc *wusbhc, s8 stream_index, wusbhc 272 drivers/staging/wusbcore/wusbhc.h int (*set_ptk)(struct wusbhc *wusbhc, u8 port_idx, wusbhc 274 drivers/staging/wusbcore/wusbhc.h int (*set_gtk)(struct wusbhc *wusbhc, wusbhc 276 drivers/staging/wusbcore/wusbhc.h int (*set_num_dnts)(struct wusbhc *wusbhc, u8 interval, u8 slots); wusbhc 292 drivers/staging/wusbcore/wusbhc.h #define usb_hcd_to_wusbhc(u) container_of((u), struct wusbhc, usb_hcd) wusbhc 295 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_create(struct wusbhc *); wusbhc 296 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_b_create(struct wusbhc *); wusbhc 297 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_b_destroy(struct wusbhc *); wusbhc 298 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_destroy(struct wusbhc *); wusbhc 299 drivers/staging/wusbcore/wusbhc.h extern int wusb_dev_sysfs_add(struct wusbhc *, struct usb_device *, wusbhc 302 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_sec_create(struct wusbhc *); wusbhc 303 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_sec_start(struct wusbhc *); wusbhc 304 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_sec_stop(struct wusbhc *); wusbhc 305 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_sec_destroy(struct wusbhc *); wusbhc 306 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_giveback_urb(struct wusbhc *wusbhc, struct urb *urb, wusbhc 308 drivers/staging/wusbcore/wusbhc.h void wusbhc_reset_all(struct wusbhc *wusbhc); wusbhc 310 drivers/staging/wusbcore/wusbhc.h int wusbhc_pal_register(struct wusbhc *wusbhc); wusbhc 311 drivers/staging/wusbcore/wusbhc.h void wusbhc_pal_unregister(struct wusbhc *wusbhc); wusbhc 334 drivers/staging/wusbcore/wusbhc.h static inline struct wusbhc *wusbhc_get(struct wusbhc *wusbhc) wusbhc 336 drivers/staging/wusbcore/wusbhc.h return usb_get_hcd(&wusbhc->usb_hcd) ? wusbhc : NULL; wusbhc 349 drivers/staging/wusbcore/wusbhc.h static inline struct wusbhc *wusbhc_get_by_usb_dev(struct usb_device *usb_dev) wusbhc 351 drivers/staging/wusbcore/wusbhc.h struct wusbhc *wusbhc = NULL; wusbhc 363 drivers/staging/wusbcore/wusbhc.h return wusbhc = usb_hcd_to_wusbhc(usb_hcd); wusbhc 367 drivers/staging/wusbcore/wusbhc.h static inline void wusbhc_put(struct wusbhc *wusbhc) wusbhc 369 drivers/staging/wusbcore/wusbhc.h usb_put_hcd(&wusbhc->usb_hcd); wusbhc 372 drivers/staging/wusbcore/wusbhc.h int wusbhc_start(struct wusbhc *wusbhc); wusbhc 373 drivers/staging/wusbcore/wusbhc.h void wusbhc_stop(struct wusbhc *wusbhc); wusbhc 374 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_chid_set(struct wusbhc *, const struct wusb_ckhdid *); wusbhc 377 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_devconnect_create(struct wusbhc *); wusbhc 378 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_devconnect_destroy(struct wusbhc *); wusbhc 379 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_devconnect_start(struct wusbhc *wusbhc); wusbhc 380 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_devconnect_stop(struct wusbhc *wusbhc); wusbhc 381 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_handle_dn(struct wusbhc *, u8 srcaddr, wusbhc 383 drivers/staging/wusbcore/wusbhc.h extern void __wusbhc_dev_disable(struct wusbhc *wusbhc, u8 port); wusbhc 386 drivers/staging/wusbcore/wusbhc.h extern int wusb_set_dev_addr(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev, wusbhc 390 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_rh_create(struct wusbhc *); wusbhc 391 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_rh_destroy(struct wusbhc *); wusbhc 398 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_mmcie_create(struct wusbhc *); wusbhc 399 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_mmcie_destroy(struct wusbhc *); wusbhc 400 drivers/staging/wusbcore/wusbhc.h extern int wusbhc_mmcie_set(struct wusbhc *, u8 interval, u8 repeat_cnt, wusbhc 402 drivers/staging/wusbcore/wusbhc.h extern void wusbhc_mmcie_rm(struct wusbhc *, struct wuie_hdr *); wusbhc 405 drivers/staging/wusbcore/wusbhc.h int wusbhc_rsv_establish(struct wusbhc *wusbhc); wusbhc 406 drivers/staging/wusbcore/wusbhc.h void wusbhc_rsv_terminate(struct wusbhc *wusbhc); wusbhc 420 drivers/staging/wusbcore/wusbhc.h extern int wusb_dev_sec_add(struct wusbhc *, struct usb_device *, wusbhc 423 drivers/staging/wusbcore/wusbhc.h extern int wusb_dev_4way_handshake(struct wusbhc *, struct wusb_dev *, wusbhc 425 drivers/staging/wusbcore/wusbhc.h void wusbhc_gtk_rekey(struct wusbhc *wusbhc); wusbhc 426 drivers/staging/wusbcore/wusbhc.h int wusb_dev_update_address(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev); wusbhc 440 drivers/staging/wusbcore/wusbhc.h static inline struct wusb_port *wusb_port_by_idx(struct wusbhc *wusbhc, wusbhc 443 drivers/staging/wusbcore/wusbhc.h return &wusbhc->port[port_idx]; wusbhc 459 drivers/staging/wusbcore/wusbhc.h extern struct wusb_dev *__wusb_dev_get_by_usb_dev(struct wusbhc *, wusbhc 472 drivers/staging/wusbcore/wusbhc.h struct wusbhc *wusbhc; wusbhc 474 drivers/staging/wusbcore/wusbhc.h wusbhc = wusbhc_get_by_usb_dev(usb_dev); wusbhc 475 drivers/staging/wusbcore/wusbhc.h if (wusbhc == NULL) wusbhc 477 drivers/staging/wusbcore/wusbhc.h mutex_lock(&wusbhc->mutex); wusbhc 478 drivers/staging/wusbcore/wusbhc.h wusb_dev = __wusb_dev_get_by_usb_dev(wusbhc, usb_dev); wusbhc 479 drivers/staging/wusbcore/wusbhc.h mutex_unlock(&wusbhc->mutex); wusbhc 480 drivers/staging/wusbcore/wusbhc.h wusbhc_put(wusbhc);