Lines Matching refs:handle

31 	__le16 handle;  member
192 u16 handle, u16 rx_slot) in dln2_transfer_complete() argument
195 struct dln2_mod_rx_slots *rxs = &dln2->mod_rx_slots[handle]; in dln2_transfer_complete()
219 dev_warn(dev, "bad/late response %d/%d\n", handle, rx_slot); in dln2_transfer_complete()
246 u16 id, echo, handle, size; in dln2_rx() local
272 handle = le16_to_cpu(hdr->handle); in dln2_rx()
279 handle, id, echo, size, urb->actual_length); in dln2_rx()
283 if (handle >= DLN2_HANDLES) { in dln2_rx()
284 dev_warn(dev, "invalid handle %d\n", handle); in dln2_rx()
291 if (handle == DLN2_HANDLE_EVENT) { in dln2_rx()
295 if (dln2_transfer_complete(dln2, urb, handle, echo)) in dln2_rx()
305 static void *dln2_prep_buf(u16 handle, u16 cmd, u16 echo, const void *obuf, in dln2_prep_buf() argument
321 hdr->handle = cpu_to_le16(handle); in dln2_prep_buf()
330 static int dln2_send_wait(struct dln2_dev *dln2, u16 handle, u16 cmd, u16 echo, in dln2_send_wait() argument
338 buf = dln2_prep_buf(handle, cmd, echo, obuf, &len, GFP_KERNEL); in dln2_send_wait()
351 static bool find_free_slot(struct dln2_dev *dln2, u16 handle, int *slot) in find_free_slot() argument
361 rxs = &dln2->mod_rx_slots[handle]; in find_free_slot()
379 static int alloc_rx_slot(struct dln2_dev *dln2, u16 handle) in alloc_rx_slot() argument
388 ret = wait_event_interruptible(dln2->mod_rx_slots[handle].wq, in alloc_rx_slot()
389 find_free_slot(dln2, handle, &slot)); in alloc_rx_slot()
396 static void free_rx_slot(struct dln2_dev *dln2, u16 handle, int slot) in free_rx_slot() argument
403 rxs = &dln2->mod_rx_slots[handle]; in free_rx_slot()
429 static int _dln2_transfer(struct dln2_dev *dln2, u16 handle, u16 cmd, in _dln2_transfer() argument
439 struct dln2_mod_rx_slots *rxs = &dln2->mod_rx_slots[handle]; in _dln2_transfer()
452 rx_slot = alloc_rx_slot(dln2, handle); in _dln2_transfer()
458 ret = dln2_send_wait(dln2, handle, cmd, rx_slot, obuf, obuf_len); in _dln2_transfer()
491 handle, le16_to_cpu(rsp->result)); in _dln2_transfer()
505 free_rx_slot(dln2, handle, rx_slot); in _dln2_transfer()
522 u16 handle; in dln2_transfer() local
526 handle = dln2_pdata->handle; in dln2_transfer()
528 return _dln2_transfer(dln2, handle, cmd, obuf, obuf_len, ibuf, in dln2_transfer()
651 .handle = DLN2_HANDLE_GPIO,
656 .handle = DLN2_HANDLE_I2C,
662 .handle = DLN2_HANDLE_SPI,