Lines Matching defs:usb

27 #include <linux/usb.h>
28 #include <linux/usb/hcd.h>
59 u16 fhci_get_sof_timer_count(struct fhci_usb *usb)
61 return be16_to_cpu(in_be16(&usb->fhci->regs->usb_sof_tmr) / 12);
65 static u32 endpoint_zero_init(struct fhci_usb *usb,
71 rc = fhci_create_ep(usb, data_mem, ring_len);
76 fhci_init_ep_registers(usb, usb->ep0, data_mem);
82 void fhci_usb_enable_interrupt(struct fhci_usb *usb)
84 struct fhci_hcd *fhci = usb->fhci;
86 if (usb->intr_nesting_cnt == 1) {
91 out_be16(&usb->fhci->regs->usb_event, 0xffff);
92 out_be16(&usb->fhci->regs->usb_mask, usb->saved_msk);
96 } else if (usb->intr_nesting_cnt > 1)
98 usb->intr_nesting_cnt--;
101 /* disable the usb interrupt */
102 void fhci_usb_disable_interrupt(struct fhci_usb *usb)
104 struct fhci_hcd *fhci = usb->fhci;
106 if (usb->intr_nesting_cnt == 0) {
110 /* disable the usb interrupt */
112 out_be16(&usb->fhci->regs->usb_mask, 0);
114 usb->intr_nesting_cnt++;
120 struct fhci_usb *usb = fhci->usb_lld;
122 out_be16(&usb->fhci->regs->usb_event, 0xffff);
123 out_be16(&usb->fhci->regs->usb_mask, usb->saved_msk);
124 setbits8(&usb->fhci->regs->usb_mod, USB_MODE_EN);
134 struct fhci_usb *usb = fhci->usb_lld;
136 fhci_usb_disable_interrupt(usb);
139 /* disable the usb controller */
140 if (usb->port_status == FHCI_PORT_FULL ||
141 usb->port_status == FHCI_PORT_LOW)
144 clrbits8(&usb->fhci->regs->usb_mod, USB_MODE_EN);
245 struct fhci_usb *usb = lld;
248 if (usb) {
249 fhci = usb->fhci;
251 fhci_ep0_free(usb);
252 kfree(usb->actual_frame);
253 kfree(usb);
260 struct fhci_usb *usb = fhci->usb_lld;
262 memset_io(usb->fhci->pram, 0, FHCI_PRAM_SIZE);
264 usb->port_status = FHCI_PORT_DISABLED;
265 usb->max_frame_usage = FRAME_TIME_USAGE;
266 usb->sw_transaction_time = SW_FIX_TIME_BETWEEN_TRANSACTION;
268 usb->actual_frame = kzalloc(sizeof(*usb->actual_frame), GFP_KERNEL);
269 if (!usb->actual_frame) {
270 fhci_usb_free(usb);
274 INIT_LIST_HEAD(&usb->actual_frame->tds_list);
283 usb->saved_msk = (USB_E_TXB_MASK |
288 out_8(&usb->fhci->regs->usb_mod, USB_MODE_HOST | USB_MODE_EN);
291 out_be16(&usb->fhci->regs->usb_mask, 0);
294 out_be16(&usb->fhci->regs->usb_event, 0xffff);
296 if (endpoint_zero_init(usb, DEFAULT_DATA_MEM, DEFAULT_RING_LEN) != 0) {
297 fhci_usb_free(usb);
307 struct fhci_usb *usb;
310 usb = kzalloc(sizeof(*usb), GFP_KERNEL);
311 if (!usb) {
316 usb->fhci = fhci;
317 usb->hc_list = fhci->hc_list;
318 usb->vroot_hub = fhci->vroot_hub;
320 usb->transfer_confirm = fhci_transfer_confirm_callback;
322 return usb;
471 struct fhci_usb *usb = fhci->usb_lld;
484 if (usb->port_status != FHCI_PORT_DISABLED) {
539 .description = "fsl,usb-fhci",
626 dev_err(dev, "failed to allocate usb pram\n");
692 0, "qe timer (usb)", hcd);
701 dev_err(dev, "could not get usb irq\n");
812 { .compatible = "fsl,mpc8323-qe-usb", },
819 .name = "fsl,usb-fhci",