static irqreturn_t mhl_tx_isr(int irq, void *dev_id) { /* * Check RGND, MHL_EST, CBUS_LOCKOUT, SCDT * interrupts. In D3, we get only RGND */ int_4_isr(); pr_debug("MHL: Current POWER state is [0x%x]\n", mhl_msm_state->cur_state); if (mhl_msm_state->cur_state == POWER_STATE_D0_MHL) { /* * If int_4_isr() didn't move the tx to D3 * on disconnect, continue to check other * interrupt sources. */ int_5_isr(); /* * Check for any peer messages for DCAP_CHG etc * Dispatch to have the CBUS module working only * once connected. */ mhl_cbus_isr(); int_1_isr(); } clear_all_intrs(); return IRQ_HANDLED; }
static irqreturn_t mhl_tx_isr(int irq, void *data) { int rc; struct mhl_tx_ctrl *mhl_ctrl = (struct mhl_tx_ctrl *)data; pr_debug("%s: Getting Interrupts\n", __func__); /* * Check RGND, MHL_EST, CBUS_LOCKOUT, SCDT * interrupts. In D3, we get only RGND */ rc = dev_detect_isr(mhl_ctrl); if (rc) pr_debug("%s: dev_detect_isr rc=[%d]\n", __func__, rc); pr_debug("%s: cur pwr state is [0x%x]\n", __func__, mhl_ctrl->cur_state); /* * If dev_detect_isr() didn't move the tx to D3 * on disconnect, continue to check other * interrupt sources. */ mhl_misc_isr(mhl_ctrl); /* * Check for any peer messages for DCAP_CHG, MSC etc * Dispatch to have the CBUS module working only * once connected. */ mhl_cbus_isr(mhl_ctrl); mhl_hpd_stat_isr(mhl_ctrl); return IRQ_HANDLED; }
static irqreturn_t mhl_tx_isr(int irq, void *dev_id) { int_4_isr(); pr_debug("MHL: Current POWER state is [0x%x]\n", mhl_msm_state->cur_state); if (mhl_msm_state->cur_state == POWER_STATE_D0_MHL) { int_5_isr(); mhl_cbus_isr(); int_1_isr(); } clear_all_intrs(); return IRQ_HANDLED; }