[PATCH v2 1/8] reset: imx8mp-audiomix: Fix bad mask values

Frank Li Frank.li at nxp.com
Fri Oct 17 07:28:35 PDT 2025


On Fri, Oct 17, 2025 at 04:20:18AM -0700, Laurentiu Mihalcea wrote:
> From: Laurentiu Mihalcea <laurentiu.mihalcea at nxp.com>
>
> As per the i.MX8MP TRM, section 14.2 "AUDIO_BLK_CTRL", table 14.2.3.1.1
> "memory map", the definition of the EARC control register shows that the
> EARC controller software reset is controlled via bit 0, while the EARC PHY
> software reset is controlled via bit 1.
>
> This means that the current definitions of IMX8MP_AUDIOMIX_EARC_RESET_MASK
> and IMX8MP_AUDIOMIX_EARC_PHY_RESET_MASK are wrong since their values would
> imply that the EARC controller software reset is controlled via bit 1 and
> the EARC PHY software reset is controlled via bit 2. Fix them.
>
> Fixes: a83bc87cd30a ("reset: imx8mp-audiomix: Prepare the code for more reset bits")
> Cc: stable at vger.kernel.org
> Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea at nxp.com>

Just curious, why previous version can work?

Reviewed-by: Frank Li <Frank.Li at nxp.com>
> ---
>  drivers/reset/reset-imx8mp-audiomix.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/reset/reset-imx8mp-audiomix.c b/drivers/reset/reset-imx8mp-audiomix.c
> index 6b357adfe646..eceb37ff5dc5 100644
> --- a/drivers/reset/reset-imx8mp-audiomix.c
> +++ b/drivers/reset/reset-imx8mp-audiomix.c
> @@ -14,8 +14,8 @@
>  #include <linux/reset-controller.h>
>
>  #define IMX8MP_AUDIOMIX_EARC_RESET_OFFSET	0x200
> -#define IMX8MP_AUDIOMIX_EARC_RESET_MASK		BIT(1)
> -#define IMX8MP_AUDIOMIX_EARC_PHY_RESET_MASK	BIT(2)
> +#define IMX8MP_AUDIOMIX_EARC_RESET_MASK		BIT(0)
> +#define IMX8MP_AUDIOMIX_EARC_PHY_RESET_MASK	BIT(1)
>
>  #define IMX8MP_AUDIOMIX_DSP_RUNSTALL_OFFSET	0x108
>  #define IMX8MP_AUDIOMIX_DSP_RUNSTALL_MASK	BIT(5)
> --
> 2.43.0
>



More information about the linux-arm-kernel mailing list