Lines Matching refs:wusb_dev
81 static u32 wusbhc_next_tkid(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) in wusbhc_next_tkid() argument
86 if (wusb_dev == NULL) { in wusbhc_next_tkid()
90 tkid = &wusb_port_by_idx(wusbhc, wusb_dev->port_idx)->ptk_tkid; in wusbhc_next_tkid()
91 addr = wusb_dev->addr & 0x7f; in wusbhc_next_tkid()
172 struct wusb_dev *wusb_dev = usb_dev->wusb_dev; in wusb_dev_set_encryption() local
175 value = wusb_dev->ccm1_etd.bEncryptionValue; in wusb_dev_set_encryption()
188 wusb_et_name(wusb_dev->ccm1_etd.bEncryptionType), in wusb_dev_set_encryption()
189 wusb_dev->ccm1_etd.bEncryptionValue, result); in wusb_dev_set_encryption()
198 static int wusb_dev_set_gtk(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) in wusb_dev_set_gtk() argument
200 struct usb_device *usb_dev = wusb_dev->usb_dev; in wusb_dev_set_gtk()
216 struct usb_device *usb_dev, struct wusb_dev *wusb_dev) in wusb_dev_sec_add() argument
288 wusb_dev->ccm1_etd = *ccm1_etd; in wusb_dev_sec_add()
298 void wusb_dev_sec_rm(struct wusb_dev *wusb_dev) in wusb_dev_sec_rm() argument
312 int wusb_dev_update_address(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev) in wusb_dev_update_address() argument
315 struct usb_device *usb_dev = wusb_dev->usb_dev; in wusb_dev_update_address()
317 u8 new_address = wusb_dev->addr & 0x7F; in wusb_dev_update_address()
329 result = wusb_set_dev_addr(wusbhc, wusb_dev, 0); in wusb_dev_update_address()
346 result = wusb_set_dev_addr(wusbhc, wusb_dev, new_address); in wusb_dev_update_address()
362 int wusb_dev_4way_handshake(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev, in wusb_dev_4way_handshake() argument
366 struct usb_device *usb_dev = wusb_dev->usb_dev; in wusb_dev_4way_handshake()
388 tkid = wusbhc_next_tkid(wusbhc, wusb_dev); in wusb_dev_4way_handshake()
395 memcpy(hs[0].CDID, &wusb_dev->cdid, sizeof(hs[0].CDID)); in wusb_dev_4way_handshake()
447 ccm_n.dest_addr.data[0] = wusb_dev->addr; in wusb_dev_4way_handshake()
478 memcpy(hs[2].CDID, &wusb_dev->cdid, sizeof(hs[2].CDID)); in wusb_dev_4way_handshake()
497 result = wusbhc->set_ptk(wusbhc, wusb_dev->port_idx, tkid, in wusb_dev_4way_handshake()
502 result = wusb_dev_set_gtk(wusbhc, wusb_dev); in wusb_dev_4way_handshake()
511 result = wusb_dev_update_address(wusbhc, wusb_dev); in wusb_dev_4way_handshake()
547 struct wusb_dev *wusb_dev, *wusb_dev_next; in wusbhc_gtk_rekey_work() local
561 wusb_dev = wusbhc->port[port_idx].wusb_dev; in wusbhc_gtk_rekey_work()
562 if (!wusb_dev || !wusb_dev->usb_dev in wusbhc_gtk_rekey_work()
563 || !wusb_dev->usb_dev->authenticated) in wusbhc_gtk_rekey_work()
566 wusb_dev_get(wusb_dev); in wusbhc_gtk_rekey_work()
567 list_add_tail(&wusb_dev->rekey_node, &rekey_list); in wusbhc_gtk_rekey_work()
572 list_for_each_entry_safe(wusb_dev, wusb_dev_next, &rekey_list, in wusbhc_gtk_rekey_work()
574 list_del_init(&wusb_dev->rekey_node); in wusbhc_gtk_rekey_work()
575 dev_dbg(&wusb_dev->usb_dev->dev, in wusbhc_gtk_rekey_work()
577 __func__, wusb_dev->port_idx); in wusbhc_gtk_rekey_work()
579 if (wusb_dev_set_gtk(wusbhc, wusb_dev) < 0) { in wusbhc_gtk_rekey_work()
580 dev_err(&wusb_dev->usb_dev->dev, in wusbhc_gtk_rekey_work()
582 __func__, wusb_dev->port_idx); in wusbhc_gtk_rekey_work()
584 wusb_dev_put(wusb_dev); in wusbhc_gtk_rekey_work()