From: Martin Povišer Date: Tue, 27 Sep 2022 11:34:24 +0000 (+0200) Subject: ASoC: apple: mca: Trigger, not deassert, the peripheral reset X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=d584e73e7310971cc226ef0e2a1bc0526da0d582;p=linux.git ASoC: apple: mca: Trigger, not deassert, the peripheral reset Replace the deassertion of the peripheral's shared reset with the triggering of a pulse on it. This is what we should have been using all along as the platform's custom is not leaving the reset asserted on unused peripherals. Fixes: 3df5d0d97289 ("ASoC: apple: mca: Start new platform driver") Signed-off-by: Martin Povišer Link: https://lore.kernel.org/r/20220927113426.49724-1-povik+lin@cutebit.org Signed-off-by: Mark Brown --- diff --git a/sound/soc/apple/mca.c b/sound/soc/apple/mca.c index 69643524796ee..75925bfcf754a 100644 --- a/sound/soc/apple/mca.c +++ b/sound/soc/apple/mca.c @@ -995,7 +995,7 @@ static void apple_mca_release(struct mca_data *mca) if (!IS_ERR_OR_NULL(mca->pd_dev)) dev_pm_domain_detach(mca->pd_dev, true); - reset_control_assert(mca->rstc); + reset_control_rearm(mca->rstc); } static int apple_mca_probe(struct platform_device *pdev) @@ -1049,12 +1049,12 @@ static int apple_mca_probe(struct platform_device *pdev) DL_FLAG_RPM_ACTIVE); if (!mca->pd_link) { ret = -EINVAL; - /* Prevent an unbalanced reset assert */ + /* Prevent an unbalanced reset rearm */ mca->rstc = NULL; goto err_release; } - reset_control_deassert(mca->rstc); + reset_control_reset(mca->rstc); for (i = 0; i < nclusters; i++) { struct mca_cluster *cl = &clusters[i];