Lines Matching refs:devctl

477 	u8 devctl;  in musb_set_host()  local
482 devctl = musb_read_devctl(musb); in musb_set_host()
483 if (!(devctl & MUSB_DEVCTL_BDEVICE)) { in musb_set_host()
484 trace_musb_state(musb, devctl, "Already in host mode"); in musb_set_host()
488 devctl |= MUSB_DEVCTL_SESSION; in musb_set_host()
489 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl); in musb_set_host()
491 error = readx_poll_timeout(musb_read_devctl, musb, devctl, in musb_set_host()
492 !(devctl & MUSB_DEVCTL_BDEVICE), 5000, in musb_set_host()
496 __func__, devctl); in musb_set_host()
501 devctl = musb_read_devctl(musb); in musb_set_host()
502 trace_musb_state(musb, devctl, "Host mode set"); in musb_set_host()
524 u8 devctl; in musb_set_peripheral() local
529 devctl = musb_read_devctl(musb); in musb_set_peripheral()
530 if (devctl & MUSB_DEVCTL_BDEVICE) { in musb_set_peripheral()
531 trace_musb_state(musb, devctl, "Already in peripheral mode"); in musb_set_peripheral()
535 devctl &= ~MUSB_DEVCTL_SESSION; in musb_set_peripheral()
536 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl); in musb_set_peripheral()
538 error = readx_poll_timeout(musb_read_devctl, musb, devctl, in musb_set_peripheral()
539 devctl & MUSB_DEVCTL_BDEVICE, 5000, in musb_set_peripheral()
543 __func__, devctl); in musb_set_peripheral()
548 devctl = musb_read_devctl(musb); in musb_set_peripheral()
549 trace_musb_state(musb, devctl, "Peripheral mode set"); in musb_set_peripheral()
667 static void musb_handle_intr_resume(struct musb *musb, u8 devctl) in musb_handle_intr_resume() argument
671 if (devctl & MUSB_DEVCTL_HM) { in musb_handle_intr_resume()
708 if ((devctl & MUSB_DEVCTL_VBUS) in musb_handle_intr_resume()
729 static irqreturn_t musb_handle_intr_sessreq(struct musb *musb, u8 devctl) in musb_handle_intr_sessreq() argument
733 if ((devctl & MUSB_DEVCTL_VBUS) == MUSB_DEVCTL_VBUS in musb_handle_intr_sessreq()
734 && (devctl & MUSB_DEVCTL_BDEVICE)) { in musb_handle_intr_sessreq()
757 static void musb_handle_intr_vbuserr(struct musb *musb, u8 devctl) in musb_handle_intr_vbuserr() argument
792 devctl |= MUSB_DEVCTL_SESSION; in musb_handle_intr_vbuserr()
793 musb_writeb(mbase, MUSB_DEVCTL, devctl); in musb_handle_intr_vbuserr()
807 devctl, in musb_handle_intr_vbuserr()
809 switch (devctl & MUSB_DEVCTL_VBUS) { in musb_handle_intr_vbuserr()
828 static void musb_handle_intr_suspend(struct musb *musb, u8 devctl) in musb_handle_intr_suspend() argument
831 musb_otg_state_string(musb), devctl); in musb_handle_intr_suspend()
885 static void musb_handle_intr_connect(struct musb *musb, u8 devctl, u8 int_usb) in musb_handle_intr_connect() argument
905 if (devctl & MUSB_DEVCTL_LSDEV) in musb_handle_intr_connect()
927 if ((devctl & MUSB_DEVCTL_VBUS) in musb_handle_intr_connect()
939 musb_otg_state_string(musb), devctl); in musb_handle_intr_connect()
942 static void musb_handle_intr_disconnect(struct musb *musb, u8 devctl) in musb_handle_intr_disconnect() argument
946 MUSB_MODE(musb), devctl); in musb_handle_intr_disconnect()
1052 u8 devctl) in musb_stage0_irq() argument
1056 musb_dbg(musb, "<== DevCtl=%02x, int_usb=0x%x", devctl, int_usb); in musb_stage0_irq()
1063 musb_handle_intr_resume(musb, devctl); in musb_stage0_irq()
1069 if (musb_handle_intr_sessreq(musb, devctl)) in musb_stage0_irq()
1075 musb_handle_intr_vbuserr(musb, devctl); in musb_stage0_irq()
1080 musb_handle_intr_suspend(musb, devctl); in musb_stage0_irq()
1085 musb_handle_intr_connect(musb, devctl, int_usb); in musb_stage0_irq()
1090 musb_handle_intr_disconnect(musb, devctl); in musb_stage0_irq()
1187 u8 devctl = musb_readb(regs, MUSB_DEVCTL); in musb_start() local
1190 musb_dbg(musb, "<== devctl %02x", devctl); in musb_start()
1206 devctl = musb_readb(regs, MUSB_DEVCTL); in musb_start()
1207 devctl &= ~MUSB_DEVCTL_SESSION; in musb_start()
1216 (devctl & MUSB_DEVCTL_VBUS) == MUSB_DEVCTL_VBUS) { in musb_start()
1219 devctl |= MUSB_DEVCTL_SESSION; in musb_start()
1223 musb_writeb(regs, MUSB_DEVCTL, devctl); in musb_start()
1727 u8 devctl; in musb_interrupt() local
1732 devctl = musb_readb(musb->mregs, MUSB_DEVCTL); in musb_interrupt()
1757 retval |= musb_stage0_irq(musb, musb->int_usb, devctl); in musb_interrupt()
1922 u8 devctl; in vbus_show() local
1930 devctl = musb_readb(musb->mregs, MUSB_DEVCTL); in vbus_show()
1931 if ((devctl & MUSB_DEVCTL_VBUS) in vbus_show()
1984 static bool musb_state_needs_recheck(struct musb *musb, u8 devctl, in musb_state_needs_recheck() argument
1988 trace_musb_state(musb, devctl, desc); in musb_state_needs_recheck()
2009 u8 devctl, s; in musb_pm_runtime_check_session() local
2012 devctl = musb_readb(musb->mregs, MUSB_DEVCTL); in musb_pm_runtime_check_session()
2017 switch (devctl & ~s) { in musb_pm_runtime_check_session()
2019 musb_state_needs_recheck(musb, devctl, in musb_pm_runtime_check_session()
2023 if (musb_state_needs_recheck(musb, devctl, in musb_pm_runtime_check_session()
2028 if (musb_state_needs_recheck(musb, devctl, in musb_pm_runtime_check_session()
2033 trace_musb_state(musb, devctl, "Allow PM on possible host mode disconnect"); in musb_pm_runtime_check_session()
2043 s = devctl & MUSB_DEVCTL_SESSION; in musb_pm_runtime_check_session()
2049 trace_musb_state(musb, devctl, "Block PM on active session"); in musb_pm_runtime_check_session()
2061 if (devctl & MUSB_DEVCTL_BDEVICE) in musb_pm_runtime_check_session()
2065 trace_musb_state(musb, devctl, "Allow PM with no session"); in musb_pm_runtime_check_session()
2100 u8 devctl; in musb_recover_from_babble() local
2117 devctl = musb_readb(musb->mregs, MUSB_DEVCTL); in musb_recover_from_babble()
2118 devctl &= ~MUSB_DEVCTL_SESSION; in musb_recover_from_babble()
2119 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl); in musb_recover_from_babble()
2676 musb->context.devctl = musb_readb(musb_base, MUSB_DEVCTL); in musb_save_context()
2750 if (musb->context.devctl & MUSB_DEVCTL_SESSION) in musb_restore_context()
2751 musb_writeb(musb_base, MUSB_DEVCTL, musb->context.devctl); in musb_restore_context()
2853 u8 devctl; in musb_resume() local
2868 devctl = musb_readb(musb->mregs, MUSB_DEVCTL); in musb_resume()
2870 if ((devctl & mask) != (musb->context.devctl & mask)) in musb_resume()
2879 devctl |= MUSB_DEVCTL_SESSION; in musb_resume()
2880 musb_writeb(musb->mregs, MUSB_DEVCTL, devctl); in musb_resume()