Lines Matching refs:otg_ctrl

89 					  otg_ctrl.timer[A_WAIT_BCON_TIMER]);  in mv_otg_timer_await_bcon()
91 mvotg->otg_ctrl.a_wait_bcon_timeout = 1; in mv_otg_timer_await_bcon()
108 timer = &mvotg->otg_ctrl.timer[id]; in mv_otg_cancel_timer()
124 timer = &mvotg->otg_ctrl.timer[id]; in mv_otg_set_timer()
292 struct mv_otg_ctrl *otg_ctrl = &mvotg->otg_ctrl; in mv_otg_update_inputs() local
299 otg_ctrl->b_sess_vld = 1; in mv_otg_update_inputs()
300 otg_ctrl->b_sess_end = 0; in mv_otg_update_inputs()
302 otg_ctrl->b_sess_vld = 0; in mv_otg_update_inputs()
303 otg_ctrl->b_sess_end = 1; in mv_otg_update_inputs()
306 otg_ctrl->b_sess_vld = !!(otgsc & OTGSC_STS_B_SESSION_VALID); in mv_otg_update_inputs()
307 otg_ctrl->b_sess_end = !!(otgsc & OTGSC_STS_B_SESSION_END); in mv_otg_update_inputs()
311 otg_ctrl->id = !!mvotg->pdata->id->poll(); in mv_otg_update_inputs()
313 otg_ctrl->id = !!(otgsc & OTGSC_STS_USB_ID); in mv_otg_update_inputs()
315 if (mvotg->pdata->otg_force_a_bus_req && !otg_ctrl->id) in mv_otg_update_inputs()
316 otg_ctrl->a_bus_req = 1; in mv_otg_update_inputs()
318 otg_ctrl->a_sess_vld = !!(otgsc & OTGSC_STS_A_SESSION_VALID); in mv_otg_update_inputs()
319 otg_ctrl->a_vbus_vld = !!(otgsc & OTGSC_STS_A_VBUS_VALID); in mv_otg_update_inputs()
322 dev_dbg(&mvotg->pdev->dev, "id %d\n", otg_ctrl->id); in mv_otg_update_inputs()
323 dev_dbg(&mvotg->pdev->dev, "b_sess_vld %d\n", otg_ctrl->b_sess_vld); in mv_otg_update_inputs()
324 dev_dbg(&mvotg->pdev->dev, "b_sess_end %d\n", otg_ctrl->b_sess_end); in mv_otg_update_inputs()
325 dev_dbg(&mvotg->pdev->dev, "a_vbus_vld %d\n", otg_ctrl->a_vbus_vld); in mv_otg_update_inputs()
326 dev_dbg(&mvotg->pdev->dev, "a_sess_vld %d\n", otg_ctrl->a_sess_vld); in mv_otg_update_inputs()
331 struct mv_otg_ctrl *otg_ctrl = &mvotg->otg_ctrl; in mv_otg_update_state() local
339 if (otg_ctrl->id == 0) in mv_otg_update_state()
341 else if (otg_ctrl->b_sess_vld) in mv_otg_update_state()
345 if (!otg_ctrl->b_sess_vld || otg_ctrl->id == 0) in mv_otg_update_state()
349 if (otg_ctrl->id) in mv_otg_update_state()
351 else if (!(otg_ctrl->a_bus_drop) && in mv_otg_update_state()
352 (otg_ctrl->a_bus_req || otg_ctrl->a_srp_det)) in mv_otg_update_state()
356 if (otg_ctrl->a_vbus_vld) in mv_otg_update_state()
360 if (otg_ctrl->id || otg_ctrl->a_bus_drop in mv_otg_update_state()
361 || otg_ctrl->a_wait_bcon_timeout) { in mv_otg_update_state()
363 mvotg->otg_ctrl.a_wait_bcon_timeout = 0; in mv_otg_update_state()
365 otg_ctrl->a_bus_req = 0; in mv_otg_update_state()
366 } else if (!otg_ctrl->a_vbus_vld) { in mv_otg_update_state()
368 mvotg->otg_ctrl.a_wait_bcon_timeout = 0; in mv_otg_update_state()
370 } else if (otg_ctrl->b_conn) { in mv_otg_update_state()
372 mvotg->otg_ctrl.a_wait_bcon_timeout = 0; in mv_otg_update_state()
377 if (otg_ctrl->id || !otg_ctrl->b_conn in mv_otg_update_state()
378 || otg_ctrl->a_bus_drop) in mv_otg_update_state()
380 else if (!otg_ctrl->a_vbus_vld) in mv_otg_update_state()
384 if (otg_ctrl->id in mv_otg_update_state()
385 || (!otg_ctrl->b_conn && otg_ctrl->a_sess_vld) in mv_otg_update_state()
386 || otg_ctrl->a_bus_req) in mv_otg_update_state()
390 if (otg_ctrl->id || otg_ctrl->a_clr_err in mv_otg_update_state()
391 || otg_ctrl->a_bus_drop) { in mv_otg_update_state()
392 otg_ctrl->a_clr_err = 0; in mv_otg_update_state()
458 mvotg->otg_ctrl.b_conn = 1; in mv_otg_work()
467 mvotg->otg_ctrl.b_conn = 0; in mv_otg_work()
524 mvotg->otg_ctrl.a_bus_req); in a_bus_req_show()
546 mvotg->otg_ctrl.a_bus_req = 1; in a_bus_req_store()
547 mvotg->otg_ctrl.a_bus_drop = 0; in a_bus_req_store()
574 mvotg->otg_ctrl.a_clr_err = 1; in a_clr_err_store()
595 mvotg->otg_ctrl.a_bus_drop); in a_bus_drop_show()
610 mvotg->otg_ctrl.a_bus_drop = 0; in a_bus_drop_store()
614 mvotg->otg_ctrl.a_bus_drop = 1; in a_bus_drop_store()
615 mvotg->otg_ctrl.a_bus_req = 0; in a_bus_drop_store()
716 timer_setup(&mvotg->otg_ctrl.timer[i], in mv_otg_probe()