Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9b2dbd50 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "soc: swr-mstr: Fix headset detect issue due to master.num_dev not updated"

parents ceabfb12 ec0d9f5e
Loading
Loading
Loading
Loading
+11 −8
Original line number Diff line number Diff line
@@ -2157,20 +2157,21 @@ static irqreturn_t swr_mstr_interrupt_v2(int irq, void *dev)
		case SWRM_INTERRUPT_STATUS_CLK_STOP_FINISHED_V2:
			break;
		case SWRM_INTERRUPT_STATUS_EXT_CLK_STOP_WAKEUP:
			if (swrm->state == SWR_MSTR_UP)
			if (swrm->state == SWR_MSTR_UP) {
				dev_dbg(swrm->dev,
					"%s:SWR Master is already up\n",
					__func__);
			else
			} else {
				dev_err_ratelimited(swrm->dev,
					"%s: SWR wokeup during clock stop\n",
					__func__);
			/* It might be possible the slave device gets reset
			 * and slave interrupt gets missed. So re-enable
			 * Host IRQ and process slave pending
				/* It might be possible the slave device gets
				 * reset and slave interrupt gets missed. So
				 * re-enable Host IRQ and process slave pending
				 * interrupts, if any.
				 */
				swrm_enable_slave_irq(swrm);
			}
			break;
		default:
			dev_err_ratelimited(swrm->dev,
@@ -2661,6 +2662,8 @@ static int swrm_probe(struct platform_device *pdev)
				SWRM_NUM_AUTO_ENUM_SLAVES);
			ret = -EINVAL;
			goto err_pdata_fail;
		} else {
			swrm->master.num_dev = swrm->num_dev;
		}
	}