isp116x 90 drivers/usb/host/isp116x-hcd.c static void write_ptddata_to_fifo(struct isp116x *isp116x, void *buf, int len) isp116x 106 drivers/usb/host/isp116x-hcd.c isp116x_raw_write_data16(isp116x, w); isp116x 109 drivers/usb/host/isp116x-hcd.c isp116x_write_data16(isp116x, (u16) * dp); isp116x 114 drivers/usb/host/isp116x-hcd.c isp116x_raw_write_data16(isp116x, cpu_to_le16(*dp2++)); isp116x 118 drivers/usb/host/isp116x-hcd.c isp116x_write_data16(isp116x, 0xff & *((u8 *) dp2)); isp116x 121 drivers/usb/host/isp116x-hcd.c isp116x_raw_write_data16(isp116x, 0); isp116x 127 drivers/usb/host/isp116x-hcd.c static void read_ptddata_from_fifo(struct isp116x *isp116x, void *buf, int len) isp116x 141 drivers/usb/host/isp116x-hcd.c w = isp116x_raw_read_data16(isp116x); isp116x 147 drivers/usb/host/isp116x-hcd.c *dp = 0xff & isp116x_read_data16(isp116x); isp116x 152 drivers/usb/host/isp116x-hcd.c *dp2++ = le16_to_cpu(isp116x_raw_read_data16(isp116x)); isp116x 156 drivers/usb/host/isp116x-hcd.c *(u8 *) dp2 = 0xff & isp116x_read_data16(isp116x); isp116x 159 drivers/usb/host/isp116x-hcd.c isp116x_raw_read_data16(isp116x); isp116x 166 drivers/usb/host/isp116x-hcd.c static void pack_fifo(struct isp116x *isp116x) isp116x 170 drivers/usb/host/isp116x-hcd.c int buflen = isp116x->atl_last_dir == PTD_DIR_IN isp116x 171 drivers/usb/host/isp116x-hcd.c ? isp116x->atl_bufshrt : isp116x->atl_buflen; isp116x 173 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINT, HCuPINT_AIIEOT); isp116x 174 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCXFERCTR, buflen); isp116x 175 drivers/usb/host/isp116x-hcd.c isp116x_write_addr(isp116x, HCATLPORT | ISP116x_WRITE_OFFSET); isp116x 176 drivers/usb/host/isp116x-hcd.c for (ep = isp116x->atl_active; ep; ep = ep->active) { isp116x 180 drivers/usb/host/isp116x-hcd.c isp116x_write_data16(isp116x, ptd->count); isp116x 181 drivers/usb/host/isp116x-hcd.c isp116x_write_data16(isp116x, ptd->mps); isp116x 182 drivers/usb/host/isp116x-hcd.c isp116x_write_data16(isp116x, ptd->len); isp116x 183 drivers/usb/host/isp116x-hcd.c isp116x_write_data16(isp116x, ptd->faddr); isp116x 186 drivers/usb/host/isp116x-hcd.c if (ep->active || (isp116x->atl_last_dir != PTD_DIR_IN)) { isp116x 187 drivers/usb/host/isp116x-hcd.c write_ptddata_to_fifo(isp116x, ep->data, ep->length); isp116x 198 drivers/usb/host/isp116x-hcd.c static void unpack_fifo(struct isp116x *isp116x) isp116x 202 drivers/usb/host/isp116x-hcd.c int buflen = isp116x->atl_last_dir == PTD_DIR_IN isp116x 203 drivers/usb/host/isp116x-hcd.c ? isp116x->atl_buflen : isp116x->atl_bufshrt; isp116x 205 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINT, HCuPINT_AIIEOT); isp116x 206 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCXFERCTR, buflen); isp116x 207 drivers/usb/host/isp116x-hcd.c isp116x_write_addr(isp116x, HCATLPORT); isp116x 208 drivers/usb/host/isp116x-hcd.c for (ep = isp116x->atl_active; ep; ep = ep->active) { isp116x 210 drivers/usb/host/isp116x-hcd.c ptd->count = isp116x_read_data16(isp116x); isp116x 211 drivers/usb/host/isp116x-hcd.c ptd->mps = isp116x_read_data16(isp116x); isp116x 212 drivers/usb/host/isp116x-hcd.c ptd->len = isp116x_read_data16(isp116x); isp116x 213 drivers/usb/host/isp116x-hcd.c ptd->faddr = isp116x_read_data16(isp116x); isp116x 216 drivers/usb/host/isp116x-hcd.c if (ep->active || (isp116x->atl_last_dir == PTD_DIR_IN)) { isp116x 217 drivers/usb/host/isp116x-hcd.c read_ptddata_from_fifo(isp116x, ep->data, ep->length); isp116x 231 drivers/usb/host/isp116x-hcd.c static void preproc_atl_queue(struct isp116x *isp116x) isp116x 238 drivers/usb/host/isp116x-hcd.c for (ep = isp116x->atl_active; ep; ep = ep->active) { isp116x 283 drivers/usb/host/isp116x-hcd.c isp116x->atl_last_dir = dir; isp116x 285 drivers/usb/host/isp116x-hcd.c isp116x->atl_bufshrt = sizeof(struct ptd) + isp116x->atl_buflen; isp116x 286 drivers/usb/host/isp116x-hcd.c isp116x->atl_buflen = isp116x->atl_bufshrt + ALIGN(len, 4); isp116x 294 drivers/usb/host/isp116x-hcd.c static void finish_request(struct isp116x *isp116x, struct isp116x_ep *ep, isp116x 296 drivers/usb/host/isp116x-hcd.c __releases(isp116x->lock) __acquires(isp116x->lock) isp116x 307 drivers/usb/host/isp116x-hcd.c usb_hcd_unlink_urb_from_ep(isp116x_to_hcd(isp116x), urb); isp116x 308 drivers/usb/host/isp116x-hcd.c spin_unlock(&isp116x->lock); isp116x 309 drivers/usb/host/isp116x-hcd.c usb_hcd_giveback_urb(isp116x_to_hcd(isp116x), urb, status); isp116x 310 drivers/usb/host/isp116x-hcd.c spin_lock(&isp116x->lock); isp116x 326 drivers/usb/host/isp116x-hcd.c struct isp116x_ep **prev = &isp116x->periodic[i]; isp116x 332 drivers/usb/host/isp116x-hcd.c isp116x->load[i] -= ep->load; isp116x 335 drivers/usb/host/isp116x-hcd.c isp116x_to_hcd(isp116x)->self.bandwidth_allocated -= isp116x 339 drivers/usb/host/isp116x-hcd.c if (!--isp116x->periodic_count) { isp116x 340 drivers/usb/host/isp116x-hcd.c isp116x->irqenb &= ~HCuPINT_SOF; isp116x 341 drivers/usb/host/isp116x-hcd.c isp116x->irqenb |= HCuPINT_ATL; isp116x 348 drivers/usb/host/isp116x-hcd.c static void postproc_atl_queue(struct isp116x *isp116x) isp116x 358 drivers/usb/host/isp116x-hcd.c for (ep = isp116x->atl_active; ep; ep = ep->active) { isp116x 472 drivers/usb/host/isp116x-hcd.c finish_request(isp116x, ep, urb, status); isp116x 480 drivers/usb/host/isp116x-hcd.c static void start_atl_transfers(struct isp116x *isp116x) isp116x 487 drivers/usb/host/isp116x-hcd.c if (atomic_read(&isp116x->atl_finishing)) isp116x 490 drivers/usb/host/isp116x-hcd.c if (!HC_IS_RUNNING(isp116x_to_hcd(isp116x)->state)) isp116x 494 drivers/usb/host/isp116x-hcd.c if (isp116x_read_reg16(isp116x, HCBUFSTAT) & HCBUFSTAT_ATL_FULL) isp116x 497 drivers/usb/host/isp116x-hcd.c isp116x->atl_active = NULL; isp116x 498 drivers/usb/host/isp116x-hcd.c isp116x->atl_buflen = isp116x->atl_bufshrt = 0; isp116x 501 drivers/usb/host/isp116x-hcd.c if (isp116x->periodic_count) { isp116x 502 drivers/usb/host/isp116x-hcd.c isp116x->fmindex = index = isp116x 503 drivers/usb/host/isp116x-hcd.c (isp116x->fmindex + 1) & (PERIODIC_SIZE - 1); isp116x 504 drivers/usb/host/isp116x-hcd.c load = isp116x->load[index]; isp116x 508 drivers/usb/host/isp116x-hcd.c isp116x->atl_active = last_ep = isp116x 509 drivers/usb/host/isp116x-hcd.c isp116x->periodic[index]; isp116x 517 drivers/usb/host/isp116x-hcd.c list_for_each_entry(ep, &isp116x->async, schedule) { isp116x 560 drivers/usb/host/isp116x-hcd.c isp116x->atl_active = ep; isp116x 565 drivers/usb/host/isp116x-hcd.c if ((&isp116x->async)->next != (&isp116x->async)->prev) isp116x 566 drivers/usb/host/isp116x-hcd.c list_move(&isp116x->async, (&isp116x->async)->next); isp116x 568 drivers/usb/host/isp116x-hcd.c if (isp116x->atl_active) { isp116x 569 drivers/usb/host/isp116x-hcd.c preproc_atl_queue(isp116x); isp116x 570 drivers/usb/host/isp116x-hcd.c pack_fifo(isp116x); isp116x 577 drivers/usb/host/isp116x-hcd.c static void finish_atl_transfers(struct isp116x *isp116x) isp116x 579 drivers/usb/host/isp116x-hcd.c if (!isp116x->atl_active) isp116x 582 drivers/usb/host/isp116x-hcd.c if (!(isp116x_read_reg16(isp116x, HCBUFSTAT) & HCBUFSTAT_ATL_DONE)) isp116x 585 drivers/usb/host/isp116x-hcd.c atomic_inc(&isp116x->atl_finishing); isp116x 586 drivers/usb/host/isp116x-hcd.c unpack_fifo(isp116x); isp116x 587 drivers/usb/host/isp116x-hcd.c postproc_atl_queue(isp116x); isp116x 588 drivers/usb/host/isp116x-hcd.c atomic_dec(&isp116x->atl_finishing); isp116x 593 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 597 drivers/usb/host/isp116x-hcd.c spin_lock(&isp116x->lock); isp116x 598 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINTENB, 0); isp116x 599 drivers/usb/host/isp116x-hcd.c irqstat = isp116x_read_reg16(isp116x, HCuPINT); isp116x 600 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINT, irqstat); isp116x 604 drivers/usb/host/isp116x-hcd.c finish_atl_transfers(isp116x); isp116x 608 drivers/usb/host/isp116x-hcd.c u32 intstat = isp116x_read_reg32(isp116x, HCINTSTAT); isp116x 609 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCINTSTAT, intstat); isp116x 634 drivers/usb/host/isp116x-hcd.c start_atl_transfers(isp116x); isp116x 637 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINTENB, isp116x->irqenb); isp116x 639 drivers/usb/host/isp116x-hcd.c spin_unlock(&isp116x->lock); isp116x 652 drivers/usb/host/isp116x-hcd.c static int balance(struct isp116x *isp116x, u16 period, u16 load) isp116x 659 drivers/usb/host/isp116x-hcd.c if (branch < 0 || isp116x->load[branch] > isp116x->load[i]) { isp116x 663 drivers/usb/host/isp116x-hcd.c if ((isp116x->load[j] + load) isp116x 685 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 711 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 773 drivers/usb/host/isp116x-hcd.c list_add_tail(&ep->schedule, &isp116x->async); isp116x 784 drivers/usb/host/isp116x-hcd.c ep->branch = ret = balance(isp116x, ep->period, ep->load); isp116x 789 drivers/usb/host/isp116x-hcd.c urb->start_frame = (isp116x->fmindex & (PERIODIC_SIZE - 1)) isp116x 797 drivers/usb/host/isp116x-hcd.c struct isp116x_ep **prev = &isp116x->periodic[i]; isp116x 810 drivers/usb/host/isp116x-hcd.c isp116x->load[i] += ep->load; isp116x 815 drivers/usb/host/isp116x-hcd.c if (!isp116x->periodic_count++) { isp116x 816 drivers/usb/host/isp116x-hcd.c isp116x->irqenb &= ~HCuPINT_ATL; isp116x 817 drivers/usb/host/isp116x-hcd.c isp116x->irqenb |= HCuPINT_SOF; isp116x 818 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINTENB, isp116x 819 drivers/usb/host/isp116x-hcd.c isp116x->irqenb); isp116x 824 drivers/usb/host/isp116x-hcd.c start_atl_transfers(isp116x); isp116x 830 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 840 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 846 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 858 drivers/usb/host/isp116x-hcd.c for (ep_act = isp116x->atl_active; ep_act; isp116x 868 drivers/usb/host/isp116x-hcd.c finish_request(isp116x, ep, urb, status); isp116x 870 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 895 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 899 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 900 drivers/usb/host/isp116x-hcd.c fmnum = isp116x_read_reg32(isp116x, HCFMNUM); isp116x 901 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 910 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 922 drivers/usb/host/isp116x-hcd.c ports = isp116x->rhdesca & RH_A_NDP; isp116x 923 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 924 drivers/usb/host/isp116x-hcd.c isp116x->rhstatus = isp116x_read_reg32(isp116x, HCRHSTATUS); isp116x 925 drivers/usb/host/isp116x-hcd.c if (isp116x->rhstatus & (RH_HS_LPSC | RH_HS_OCIC)) isp116x 931 drivers/usb/host/isp116x-hcd.c u32 status = isp116x_read_reg32(isp116x, i ? HCRHPORT2 : HCRHPORT1); isp116x 939 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 943 drivers/usb/host/isp116x-hcd.c static void isp116x_hub_descriptor(struct isp116x *isp116x, isp116x 946 drivers/usb/host/isp116x-hcd.c u32 reg = isp116x->rhdesca; isp116x 970 drivers/usb/host/isp116x-hcd.c static inline void root_port_reset(struct isp116x *isp116x, unsigned port) isp116x 980 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 983 drivers/usb/host/isp116x-hcd.c tmp = isp116x_read_reg32(isp116x, port ? isp116x 991 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 995 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, port ? HCRHPORT2 : isp116x 997 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1007 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 1010 drivers/usb/host/isp116x-hcd.c int ports = isp116x->rhdesca & RH_A_NDP; isp116x 1019 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1020 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHSTATUS, RH_HS_OCIC); isp116x 1021 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1043 drivers/usb/host/isp116x-hcd.c isp116x_hub_descriptor(isp116x, isp116x 1054 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1055 drivers/usb/host/isp116x-hcd.c tmp = isp116x_read_reg32(isp116x, (--wIndex) ? HCRHPORT2 : HCRHPORT1); isp116x 1056 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1102 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1103 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, wIndex isp116x 1105 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1115 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1116 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, wIndex isp116x 1118 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1122 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1123 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, wIndex isp116x 1125 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1129 drivers/usb/host/isp116x-hcd.c root_port_reset(isp116x, wIndex); isp116x 1173 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = s->private; isp116x 1176 drivers/usb/host/isp116x-hcd.c isp116x_to_hcd(isp116x)->product_desc, hcd_name, isp116x 1179 drivers/usb/host/isp116x-hcd.c if (HC_IS_SUSPENDED(isp116x_to_hcd(isp116x)->state)) { isp116x 1183 drivers/usb/host/isp116x-hcd.c if (!HC_IS_RUNNING(isp116x_to_hcd(isp116x)->state)) { isp116x 1188 drivers/usb/host/isp116x-hcd.c spin_lock_irq(&isp116x->lock); isp116x 1189 drivers/usb/host/isp116x-hcd.c dump_irq(s, "hc_irq_enable", isp116x_read_reg16(isp116x, HCuPINTENB)); isp116x 1190 drivers/usb/host/isp116x-hcd.c dump_irq(s, "hc_irq_status", isp116x_read_reg16(isp116x, HCuPINT)); isp116x 1191 drivers/usb/host/isp116x-hcd.c dump_int(s, "hc_int_enable", isp116x_read_reg32(isp116x, HCINTENB)); isp116x 1192 drivers/usb/host/isp116x-hcd.c dump_int(s, "hc_int_status", isp116x_read_reg32(isp116x, HCINTSTAT)); isp116x 1193 drivers/usb/host/isp116x-hcd.c isp116x_show_regs_seq(isp116x, s); isp116x 1194 drivers/usb/host/isp116x-hcd.c spin_unlock_irq(&isp116x->lock); isp116x 1201 drivers/usb/host/isp116x-hcd.c static void create_debug_file(struct isp116x *isp116x) isp116x 1203 drivers/usb/host/isp116x-hcd.c isp116x->dentry = debugfs_create_file(hcd_name, isp116x 1204 drivers/usb/host/isp116x-hcd.c S_IRUGO, NULL, isp116x, isp116x 1208 drivers/usb/host/isp116x-hcd.c static void remove_debug_file(struct isp116x *isp116x) isp116x 1210 drivers/usb/host/isp116x-hcd.c debugfs_remove(isp116x->dentry); isp116x 1215 drivers/usb/host/isp116x-hcd.c static inline void create_debug_file(struct isp116x *isp116x) { } isp116x 1216 drivers/usb/host/isp116x-hcd.c static inline void remove_debug_file(struct isp116x *isp116x) { } isp116x 1225 drivers/usb/host/isp116x-hcd.c static int isp116x_sw_reset(struct isp116x *isp116x) isp116x 1231 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1232 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCSWRES, HCSWRES_MAGIC); isp116x 1233 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCCMDSTAT, HCCMDSTAT_HCR); isp116x 1237 drivers/usb/host/isp116x-hcd.c if (!(isp116x_read_reg32(isp116x, HCCMDSTAT) & HCCMDSTAT_HCR)) isp116x 1244 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1250 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 1255 drivers/usb/host/isp116x-hcd.c ret = isp116x_sw_reset(isp116x); isp116x 1262 drivers/usb/host/isp116x-hcd.c spin_lock_irq(&isp116x->lock); isp116x 1263 drivers/usb/host/isp116x-hcd.c clkrdy = isp116x_read_reg16(isp116x, HCuPINT) & HCuPINT_CLKRDY; isp116x 1264 drivers/usb/host/isp116x-hcd.c spin_unlock_irq(&isp116x->lock); isp116x 1280 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 1284 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1285 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINTENB, 0); isp116x 1289 drivers/usb/host/isp116x-hcd.c val = isp116x_read_reg32(isp116x, HCRHDESCA); isp116x 1291 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHDESCA, val); isp116x 1292 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHSTATUS, RH_HS_LPS); isp116x 1293 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1295 drivers/usb/host/isp116x-hcd.c isp116x_sw_reset(isp116x); isp116x 1303 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 1304 drivers/usb/host/isp116x-hcd.c struct isp116x_platform_data *board = isp116x->board; isp116x 1308 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1311 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINT, 0xff); isp116x 1312 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINTENB, 0); isp116x 1314 drivers/usb/host/isp116x-hcd.c val = isp116x_read_reg16(isp116x, HCCHIPID); isp116x 1317 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1324 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCITLBUFLEN, ISP116x_ITL_BUFSIZE); isp116x 1325 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCATLBUFLEN, ISP116x_ATL_BUFSIZE); isp116x 1340 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCHWCFG, val); isp116x 1350 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHDESCA, val); isp116x 1351 drivers/usb/host/isp116x-hcd.c isp116x->rhdesca = isp116x_read_reg32(isp116x, HCRHDESCA); isp116x 1354 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHDESCB, val); isp116x 1355 drivers/usb/host/isp116x-hcd.c isp116x->rhdescb = isp116x_read_reg32(isp116x, HCRHDESCB); isp116x 1363 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHSTATUS, val); isp116x 1364 drivers/usb/host/isp116x-hcd.c isp116x->rhstatus = isp116x_read_reg32(isp116x, HCRHSTATUS); isp116x 1366 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCFMINTVL, 0x27782edf); isp116x 1371 drivers/usb/host/isp116x-hcd.c isp116x->intenb = HCINT_MIE | HCINT_RHSC | HCINT_UE; isp116x 1373 drivers/usb/host/isp116x-hcd.c isp116x->intenb |= HCINT_RD; isp116x 1374 drivers/usb/host/isp116x-hcd.c isp116x->irqenb = HCuPINT_ATL | HCuPINT_OPR; /* | HCuPINT_SUSP; */ isp116x 1375 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCINTENB, isp116x->intenb); isp116x 1376 drivers/usb/host/isp116x-hcd.c isp116x_write_reg16(isp116x, HCuPINTENB, isp116x->irqenb); isp116x 1382 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCCONTROL, val); isp116x 1385 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHPORT1, RH_PS_CCS); isp116x 1386 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCRHPORT2, RH_PS_CCS); isp116x 1388 drivers/usb/host/isp116x-hcd.c isp116x_show_regs_log(isp116x); isp116x 1389 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1397 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 1402 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1403 drivers/usb/host/isp116x-hcd.c val = isp116x_read_reg32(isp116x, HCCONTROL); isp116x 1407 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1414 drivers/usb/host/isp116x-hcd.c spin_lock_irqsave(&isp116x->lock, flags); isp116x 1415 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCCONTROL, val); isp116x 1416 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1421 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCCONTROL, isp116x 1429 drivers/usb/host/isp116x-hcd.c spin_unlock_irqrestore(&isp116x->lock, flags); isp116x 1438 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x = hcd_to_isp116x(hcd); isp116x 1442 drivers/usb/host/isp116x-hcd.c spin_lock_irq(&isp116x->lock); isp116x 1444 drivers/usb/host/isp116x-hcd.c val = isp116x_read_reg32(isp116x, HCCONTROL); isp116x 1449 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCCONTROL, val); isp116x 1453 drivers/usb/host/isp116x-hcd.c spin_unlock_irq(&isp116x->lock); isp116x 1458 drivers/usb/host/isp116x-hcd.c spin_unlock_irq(&isp116x->lock); isp116x 1464 drivers/usb/host/isp116x-hcd.c if ((isp116x->rhdesca & RH_A_NDP) == 2) isp116x 1470 drivers/usb/host/isp116x-hcd.c val = isp116x->rhdesca & RH_A_NDP; isp116x 1473 drivers/usb/host/isp116x-hcd.c isp116x_read_reg32(isp116x, val ? HCRHPORT2 : HCRHPORT1); isp116x 1478 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, RH_PS_POCI, val isp116x 1481 drivers/usb/host/isp116x-hcd.c spin_unlock_irq(&isp116x->lock); isp116x 1487 drivers/usb/host/isp116x-hcd.c spin_lock_irq(&isp116x->lock); isp116x 1488 drivers/usb/host/isp116x-hcd.c val = isp116x_read_reg32(isp116x, HCCONTROL); isp116x 1489 drivers/usb/host/isp116x-hcd.c isp116x_write_reg32(isp116x, HCCONTROL, isp116x 1491 drivers/usb/host/isp116x-hcd.c spin_unlock_irq(&isp116x->lock); isp116x 1507 drivers/usb/host/isp116x-hcd.c .hcd_priv_size = sizeof(struct isp116x), isp116x 1533 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x; isp116x 1538 drivers/usb/host/isp116x-hcd.c isp116x = hcd_to_isp116x(hcd); isp116x 1539 drivers/usb/host/isp116x-hcd.c remove_debug_file(isp116x); isp116x 1542 drivers/usb/host/isp116x-hcd.c iounmap(isp116x->data_reg); isp116x 1545 drivers/usb/host/isp116x-hcd.c iounmap(isp116x->addr_reg); isp116x 1556 drivers/usb/host/isp116x-hcd.c struct isp116x *isp116x; isp116x 1611 drivers/usb/host/isp116x-hcd.c isp116x = hcd_to_isp116x(hcd); isp116x 1612 drivers/usb/host/isp116x-hcd.c isp116x->data_reg = data_reg; isp116x 1613 drivers/usb/host/isp116x-hcd.c isp116x->addr_reg = addr_reg; isp116x 1614 drivers/usb/host/isp116x-hcd.c spin_lock_init(&isp116x->lock); isp116x 1615 drivers/usb/host/isp116x-hcd.c INIT_LIST_HEAD(&isp116x->async); isp116x 1616 drivers/usb/host/isp116x-hcd.c isp116x->board = dev_get_platdata(&pdev->dev); isp116x 1618 drivers/usb/host/isp116x-hcd.c if (!isp116x->board) { isp116x 1623 drivers/usb/host/isp116x-hcd.c if (isp116x_check_platform_delay(isp116x)) { isp116x 1637 drivers/usb/host/isp116x-hcd.c create_debug_file(isp116x); isp116x 292 drivers/usb/host/isp116x.h static inline struct isp116x *hcd_to_isp116x(struct usb_hcd *hcd) isp116x 294 drivers/usb/host/isp116x.h return (struct isp116x *)(hcd->hcd_priv); isp116x 297 drivers/usb/host/isp116x.h static inline struct usb_hcd *isp116x_to_hcd(struct isp116x *isp116x) isp116x 299 drivers/usb/host/isp116x.h return container_of((void *)isp116x, struct usb_hcd, hcd_priv); isp116x 358 drivers/usb/host/isp116x.h static inline void isp116x_write_addr(struct isp116x *isp116x, unsigned reg) isp116x 360 drivers/usb/host/isp116x.h writew(reg & 0xff, isp116x->addr_reg); isp116x 361 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 300); isp116x 364 drivers/usb/host/isp116x.h static inline void isp116x_write_data16(struct isp116x *isp116x, u16 val) isp116x 366 drivers/usb/host/isp116x.h writew(val, isp116x->data_reg); isp116x 367 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 370 drivers/usb/host/isp116x.h static inline void isp116x_raw_write_data16(struct isp116x *isp116x, u16 val) isp116x 372 drivers/usb/host/isp116x.h __raw_writew(val, isp116x->data_reg); isp116x 373 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 376 drivers/usb/host/isp116x.h static inline u16 isp116x_read_data16(struct isp116x *isp116x) isp116x 380 drivers/usb/host/isp116x.h val = readw(isp116x->data_reg); isp116x 381 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 385 drivers/usb/host/isp116x.h static inline u16 isp116x_raw_read_data16(struct isp116x *isp116x) isp116x 389 drivers/usb/host/isp116x.h val = __raw_readw(isp116x->data_reg); isp116x 390 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 394 drivers/usb/host/isp116x.h static inline void isp116x_write_data32(struct isp116x *isp116x, u32 val) isp116x 396 drivers/usb/host/isp116x.h writew(val & 0xffff, isp116x->data_reg); isp116x 397 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 398 drivers/usb/host/isp116x.h writew(val >> 16, isp116x->data_reg); isp116x 399 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 402 drivers/usb/host/isp116x.h static inline u32 isp116x_read_data32(struct isp116x *isp116x) isp116x 406 drivers/usb/host/isp116x.h val = (u32) readw(isp116x->data_reg); isp116x 407 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 408 drivers/usb/host/isp116x.h val |= ((u32) readw(isp116x->data_reg)) << 16; isp116x 409 drivers/usb/host/isp116x.h isp116x_delay(isp116x, 150); isp116x 416 drivers/usb/host/isp116x.h static u16 isp116x_read_reg16(struct isp116x *isp116x, unsigned reg) isp116x 418 drivers/usb/host/isp116x.h isp116x_write_addr(isp116x, reg); isp116x 419 drivers/usb/host/isp116x.h return isp116x_read_data16(isp116x); isp116x 422 drivers/usb/host/isp116x.h static u32 isp116x_read_reg32(struct isp116x *isp116x, unsigned reg) isp116x 424 drivers/usb/host/isp116x.h isp116x_write_addr(isp116x, reg); isp116x 425 drivers/usb/host/isp116x.h return isp116x_read_data32(isp116x); isp116x 428 drivers/usb/host/isp116x.h static void isp116x_write_reg16(struct isp116x *isp116x, unsigned reg, isp116x 431 drivers/usb/host/isp116x.h isp116x_write_addr(isp116x, reg | ISP116x_WRITE_OFFSET); isp116x 432 drivers/usb/host/isp116x.h isp116x_write_data16(isp116x, (u16) (val & 0xffff)); isp116x 435 drivers/usb/host/isp116x.h static void isp116x_write_reg32(struct isp116x *isp116x, unsigned reg, isp116x 438 drivers/usb/host/isp116x.h isp116x_write_addr(isp116x, reg | ISP116x_WRITE_OFFSET); isp116x 439 drivers/usb/host/isp116x.h isp116x_write_data32(isp116x, (u32) val); isp116x 493 drivers/usb/host/isp116x.h static inline void isp116x_show_regs_seq(struct isp116x *isp116x, isp116x 496 drivers/usb/host/isp116x.h isp116x_show_regs(isp116x, seq, s); isp116x 502 drivers/usb/host/isp116x.h static inline void isp116x_show_regs_log(struct isp116x *isp116x) isp116x 504 drivers/usb/host/isp116x.h isp116x_show_regs(isp116x, log, NULL);