Lines Matching refs:hc_regs
285 clrsetbits_le32(®s->hc_regs[i].hcchar, in dwc_otg_core_host_init()
291 clrsetbits_le32(®s->hc_regs[i].hcchar, in dwc_otg_core_host_init()
294 ret = wait_for_bit_le32(®s->hc_regs[i].hcchar, in dwc_otg_core_host_init()
482 struct dwc2_hc_regs *hc_regs = ®s->hc_regs[hc_num]; in dwc_otg_hc_init() local
496 writel(hcchar, &hc_regs->hcchar); in dwc_otg_hc_init()
499 writel(0, &hc_regs->hcsplt); in dwc_otg_hc_init()
502 static void dwc_otg_hc_init_split(struct dwc2_hc_regs *hc_regs, in dwc_otg_hc_init_split() argument
512 writel(hcsplt, &hc_regs->hcsplt); in dwc_otg_hc_init_split()
805 int wait_for_chhltd(struct dwc2_hc_regs *hc_regs, uint32_t *sub, u8 *toggle) in wait_for_chhltd() argument
810 ret = wait_for_bit_le32(&hc_regs->hcint, DWC2_HCINT_CHHLTD, true, in wait_for_chhltd()
815 hcint = readl(&hc_regs->hcint); in wait_for_chhltd()
816 hctsiz = readl(&hc_regs->hctsiz); in wait_for_chhltd()
841 static int transfer_chunk(struct dwc2_hc_regs *hc_regs, void *aligned_buffer, in transfer_chunk() argument
854 &hc_regs->hctsiz); in transfer_chunk()
871 writel(phys_to_bus((unsigned long)aligned_buffer), &hc_regs->hcdma); in transfer_chunk()
874 writel(0x3fff, &hc_regs->hcint); in transfer_chunk()
877 clrsetbits_le32(&hc_regs->hcchar, DWC2_HCCHAR_MULTICNT_MASK | in transfer_chunk()
884 ret = wait_for_chhltd(hc_regs, &sub, pid); in transfer_chunk()
906 struct dwc2_hc_regs *hc_regs = ®s->hc_regs[DWC2_HC_CHANNEL]; in chunk_msg() local
948 dwc_otg_hc_init_split(hc_regs, hub_addr, hub_port); in chunk_msg()
970 setbits_le32(&hc_regs->hcsplt, DWC2_HCSPLT_COMPSPLT); in chunk_msg()
972 clrbits_le32(&hc_regs->hcsplt, DWC2_HCSPLT_COMPSPLT); in chunk_msg()
980 ret = transfer_chunk(hc_regs, priv->aligned_buffer, pid, in chunk_msg()
984 hcint = readl(&hc_regs->hcint); in chunk_msg()
1019 writel(0, &hc_regs->hcintmsk); in chunk_msg()
1020 writel(0xFFFFFFFF, &hc_regs->hcint); in chunk_msg()