From nobody Mon Dec 1 23:03:59 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 71A4C328B54 for ; Wed, 26 Nov 2025 12:43:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160988; cv=none; b=NCvKpkAsYjhI3HeZzL4LCxUXT8lu6ujWY8VWMOlczeMkc1tfsE3BV2FvcsJx5cDS0r7Y3X4F67av+pskPwZig5o/3u3MY+rZJ7rlMnaKEUqVnUDSRF0OgXL9h9NR14xzy/lEsi7ZnRSHPOclWZUgBDjpHrqjYK5Ag5PyADH0xO4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160988; c=relaxed/simple; bh=x0VpZkifpmsZOeiUeKRVj5l01SHfLNEX+dBjXy+hSXo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qBpLuzp0mXjtrlJuBrP+XdncShooejlTTv2cTleXLhQ+kylEzMli8Moo4K88UuKlkqjOD9GnQt5ffDT1v2fBZwaZyfvx8nVmN5G7P+k5WW9ZLsQN9Xn6U/heVwKUHMMAgan7Of0yYGuz2a15MpmuAfFDAx6dN3UvDtm/C4NLk5c= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=hf4uB24V; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="hf4uB24V" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-b7355f6ef12so1377332866b.3 for ; Wed, 26 Nov 2025 04:43:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764160983; x=1764765783; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=URd/ONh2/S9cNJVZREq3Fly7rFEXScu5qM+CsEx4Im0=; b=hf4uB24VArUTx18oPYbedCvuxJBw5lkEjbAI81DZzOWrBeJU5NIdMVbNciXlyTFUZB XhrSl93nHa5yWnVt/edfNbG46Px6whbodEX54fz+dPywT5MJ33p9nKevCnzxrneWbqFL 6WfW/g85DiI1RZs6oB6ph63soGhjTeUO8ihxwiRt7Antq1MO+C5gKL7USqFvQuYO0CHZ 4r3Uyrv2zVVBh7vSkNfNtN9g82a/Ha4aF8855IP04kE7SLQphl2zV0FQitdvlU9FMm7V er8xnRWiIcqW/7Bc841g8j+HDS+ZGnIOrfhTwmGUfcWGebP7uz2Uogy2CSy6Mz3LORS4 +q/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764160983; x=1764765783; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=URd/ONh2/S9cNJVZREq3Fly7rFEXScu5qM+CsEx4Im0=; b=k6Ocs0wtvAjRmMgwUMyjhJx6I50uWqltZHSLD/7HNkRejqprVZo74BAVUJcrVyh8UF XQBzrQslBNHIkngUL8EAlObyaXQ2Esc7nPZSyVmOUScG5vCF8OBDIwo6GdH3NwGWFu3S t5hA6V/dI8+2q4fUl2n7sImDf0Kt8mhn3azxdRxc0Hw/UUyAwc9kpuY8NwPKKWKdnAEl fwq4025bLN2ei40RcB0N6PSU/iYHrQOIZATu7uYWAeoIBvAq3GVZ0POXPDX6gf7XEzwv zMAIXpm2NiQtyFWP6tl7mMXSPXJIJkxrGUZWgj1Z/EPNqV/BFvgSOlxeYqMxK6UNiYIw k5Eg== X-Forwarded-Encrypted: i=1; AJvYcCUgR2eUyl4/JOJBOvwWndpjUr8698DMUSGIEjaT8MnUFe4D3/5rXFAhytjz8j1DIgiVXz9DhOwlteQ4C5w=@vger.kernel.org X-Gm-Message-State: AOJu0YxOhTkVjlxaTogtvm34UzpIf06imVftI7QsLjO1xb6SdiyI6HnB Pi6TqXq6+s2qnA/DywbUkN6eZZCtx260riPw6LTKQgFNfrGjnSZcYn/m X-Gm-Gg: ASbGncujeMy0hWDPjK7KS1eWtVCxtOPutVLax/QEARvPdWu5dZRVhZ598ftiuzu0oQR EpS2YW1PsaIMUgEior05hJCAWja91U96zf7N9zOKjMkk0sguRdzuXM/pju7hw1jFEUFC+Ig5C/+ R2jtyzLc4Cna5jx7hYaCM10MKl1YmaUSnaAJYB6ujAj8nfMqQw6ZW23nbAKYSkugPCNbwovf+Ok D98Bk8pfCWedAit67whDf8BDFpIAGhfhVoTdTxl5X2U9ilBMLb93sznFoNWDQ9NFP1wc+SvVa6m w4+iXNtHmUDcKY7zIn2LNIw6YyOpQqe8MKyf++jxqR1VbWQyAnS0QhB2l/DTPGk8D03JJtAowxD uqRNtId82Sj5Xcr5DDlcMrdx1mP++BBZyhy/pU+mVtdMhun9CfGDXVUd3BF3cRm7oB9j/VubCoz Hze/jLouJYSajYt93MG+Jes4XNKvSsvGTVNsUY8fTTOAx5BhY= X-Google-Smtp-Source: AGHT+IFZ3jJn6ZtuPHP8d1zHAviRf2Hf5JxHWcSBJlcuwsyLTvUvL+Ag9uQmMJeg0bd+BjS0LWB2ew== X-Received: by 2002:a17:907:a893:b0:b76:3548:cdef with SMTP id a640c23a62f3a-b76715af3bbmr2271548866b.25.1764160982366; Wed, 26 Nov 2025 04:43:02 -0800 (PST) Received: from SMW024614.wbi.nxp.com ([128.77.115.157]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-64536459d92sm17654824a12.31.2025.11.26.04.43.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Nov 2025 04:43:02 -0800 (PST) From: Laurentiu Mihalcea To: Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Fabio Estevam , Philipp Zabel , Daniel Baluta , Shengjiu Wang , Frank Li Cc: devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Pengutronix Kernel Team Subject: [PATCH v6 1/5] reset: imx8mp-audiomix: Drop unneeded macros Date: Wed, 26 Nov 2025 04:42:14 -0800 Message-ID: <20251126124218.803-2-laurentiumihalcea111@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251126124218.803-1-laurentiumihalcea111@gmail.com> References: <20251126124218.803-1-laurentiumihalcea111@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Laurentiu Mihalcea The macros defining the mask values for the EARC, EARC PHY resets, and the DSP RUN_STALL signal can be dropped as they are not and will not be used anywhere else except to set the value of the "mask" field from "struct imx8mp_reset_map". In this particular case, based on the name of the "mask" field, you can already deduce what these values are for, which is why defining macros for them doesn't offer any new information, nor does it help with the code readability. Reviewed-by: Daniel Baluta Reviewed-by: Frank Li Reviewed-by: Philipp Zabel Signed-off-by: Laurentiu Mihalcea --- drivers/reset/reset-imx8mp-audiomix.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/reset/reset-imx8mp-audiomix.c b/drivers/reset/reset-im= x8mp-audiomix.c index eceb37ff5dc5..acfa92b15329 100644 --- a/drivers/reset/reset-imx8mp-audiomix.c +++ b/drivers/reset/reset-imx8mp-audiomix.c @@ -6,6 +6,7 @@ #include =20 #include +#include #include #include #include @@ -14,11 +15,7 @@ #include =20 #define IMX8MP_AUDIOMIX_EARC_RESET_OFFSET 0x200 -#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) =20 struct imx8mp_reset_map { unsigned int offset; @@ -29,17 +26,17 @@ struct imx8mp_reset_map { static const struct imx8mp_reset_map reset_map[] =3D { [IMX8MP_AUDIOMIX_EARC_RESET] =3D { .offset =3D IMX8MP_AUDIOMIX_EARC_RESET_OFFSET, - .mask =3D IMX8MP_AUDIOMIX_EARC_RESET_MASK, + .mask =3D BIT(0), .active_low =3D true, }, [IMX8MP_AUDIOMIX_EARC_PHY_RESET] =3D { .offset =3D IMX8MP_AUDIOMIX_EARC_RESET_OFFSET, - .mask =3D IMX8MP_AUDIOMIX_EARC_PHY_RESET_MASK, + .mask =3D BIT(1), .active_low =3D true, }, [IMX8MP_AUDIOMIX_DSP_RUNSTALL] =3D { .offset =3D IMX8MP_AUDIOMIX_DSP_RUNSTALL_OFFSET, - .mask =3D IMX8MP_AUDIOMIX_DSP_RUNSTALL_MASK, + .mask =3D BIT(5), .active_low =3D false, }, }; --=20 2.43.0 From nobody Mon Dec 1 23:03:59 2025 Received: from mail-ed1-f51.google.com (mail-ed1-f51.google.com [209.85.208.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 67F042FFDF3 for ; Wed, 26 Nov 2025 12:43:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160988; cv=none; b=MQ7SuNsjVrAje5HGrf+SWg1Kl33CLeDO7L37TwzTl+80aJggwAQ23NRtPXGhD8jFY+VIviyNh96kpQ8JLal5Wmj5XSQjs+paIY5D2mZ95REp/f5p7q9kjAxJOqkUlfRa7ugrhZPuFIrFwM+SD6A9UEQ7ChAswIcrXn/yowr1JxA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160988; c=relaxed/simple; bh=yhPuiR6XrfoigONn7YjeXv5GIwSDKgMVMn3NKSqWbcw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XAYGozAde45THzHJO5Ws/nghbvaAZ1NqNWTSQGnP902QD4ZQgjfqOka+C3+zwUaBRZiH/GRPoV+eohUEnoGoRs9Fi86O9kGBjAQvcGNo5y7XKe91KKxP79TEPTtppBJaN9/najZOgLpkYvAz2vJnYqqR/sN9q380/ltHA0U1oy0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=X9BhvZTE; arc=none smtp.client-ip=209.85.208.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="X9BhvZTE" Received: by mail-ed1-f51.google.com with SMTP id 4fb4d7f45d1cf-64320b9bb4bso1702784a12.0 for ; Wed, 26 Nov 2025 04:43:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764160985; x=1764765785; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=R/PKuQqJhmcmf0FdDQDCr8/x7Yh0ZaImvK0r2Y0Qm/o=; b=X9BhvZTEIGLDZqdiOSObcXENx5IP+UOxdOpXjlRsB3Mm5XM+GESmFrf830xBkS7j9B EwXWz0LTQt+k/bAY9D2dsfW62/YOiwtE2LH8yGu+ycdtFvIVc04AzqQzCl/QsW5Gt7k7 VV8XrEnXYQha/Lgg+9d6cbYHVLTxuhoBUpN3xYqBc5DZDg8xYVWn+rizlVZ37qus50B3 Wh6cf4wLF1Ib0S1+4832HljjrCMcR/djzDpNU13mTPKZMUJfMUmsiFXuQO0bVBe9O4dO dvBsAUF4H0/mKwbais2f3Ce4ao722b2cxJlJySNCqJ9M3PN5lgcXL/Tj8hXRtzA0mIsS c3ow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764160985; x=1764765785; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=R/PKuQqJhmcmf0FdDQDCr8/x7Yh0ZaImvK0r2Y0Qm/o=; b=k7xNVbcWbj3/3hFRCgMj4xeGoULrwNlNBDIqnJl+1bbQzosLUn/F4n9LZ474/vcKHm JCdDuUoeb27iyOWpdx5w4yXgtUhBXkBibfvPLO69gHGMw/IMhVe8yER5VyfA/Qloqc2v AhagnNM9iVJ2xtc4lvgR43EDQd0HqOnreg5Nrh4SXfknnKjsnePHNl4Qu1TFCq6kV51k IHPbF99nYeWfPZxtKqUdBKUQie4BPL6bTXd6TsQd7Swd3B0hRW92UYaUL7iXTmbtqCM3 otZyOVquqtDRev9jRJVqk7dhcO7pbJ9rEYMBsAtiQNhzOgKSEOc/xCCcQvOf980h+0iU odxw== X-Forwarded-Encrypted: i=1; AJvYcCUdNsrb6HdpTgwZ1cXEgU5aBaqRX0/9rA7jD0xJvwd0iEYMiJTGyIeuTWmrAGAeheks8ddxRjxBCwyE98U=@vger.kernel.org X-Gm-Message-State: AOJu0Yypf7Im6D6nOaXcjqqYndGyhR0qMBLa1qfETXRAoDFMlRCe/cxL jkGRhgpUz6UVbYJlDoirRUoc0raPtMlLP5VeOwQMwljkxE7SBpOqkHoc X-Gm-Gg: ASbGnctJU0oDpGvceGALxK5jCvkyYgxrlDvn4tzoDBGDTVKj/fUfh290lWfnRVLu90G UjkhoJY0Ol1+Eccwatk63KmeZAJBnNxmfJyApI5GAjS3AYoe3xhwJt8MvRFbb7hpds39s+pjY/j yqfLEASWFD1/VHHDLbToJy0rCpSZGduO133xbnyEWf25ZyNQ+IEUQFOYQslCzi8Z2cSzam2hxYE woE2aEUawsPDzk9iJnlu0X2RxfDuePLPvmoDt66yCN1I4Cca+9jb3eW34XIveRqDjQGoFduYpCe XS5mNDky4ez42PiBpJ16P/o6JV2+KFqMCHoxm+2/pVI2WP8XfWz+RgIG+5QQeNf6vmMYp4TXcrN UMUJh6TO96hYaT9MbymuqBtHvQOdP1OJ9vkBvbRgx4WCzvShYic10jG4Og7qN4un/YCV7WejCf1 cVbIBLzZqYvy82K9OTNwg1uoPPD4Mm0s7pPw7e X-Google-Smtp-Source: AGHT+IE/BZ0ev8jczVI6ig5ZypcAIr/hIiYi2tdzGsQKsQ4dJMO7/o1MUW3qqxHJXJn1yXPjYPs2Yg== X-Received: by 2002:a05:6402:4499:b0:643:130b:c615 with SMTP id 4fb4d7f45d1cf-64539639594mr18794499a12.6.1764160984613; Wed, 26 Nov 2025 04:43:04 -0800 (PST) Received: from SMW024614.wbi.nxp.com ([128.77.115.157]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-64536459d92sm17654824a12.31.2025.11.26.04.43.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Nov 2025 04:43:04 -0800 (PST) From: Laurentiu Mihalcea To: Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Fabio Estevam , Philipp Zabel , Daniel Baluta , Shengjiu Wang , Frank Li Cc: devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Pengutronix Kernel Team Subject: [PATCH v6 2/5] reset: imx8mp-audiomix: Switch to using regmap API Date: Wed, 26 Nov 2025 04:42:15 -0800 Message-ID: <20251126124218.803-3-laurentiumihalcea111@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251126124218.803-1-laurentiumihalcea111@gmail.com> References: <20251126124218.803-1-laurentiumihalcea111@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Laurentiu Mihalcea Switch to using the regmap API to allow performing register operations under the same lock. This is needed for cases such as i.MX8ULP's SIM LPAV where clock gating, reset control and MUX-ing is performed via the same register (i.e. SYSCTRL0) and different subsystem APIs. Reviewed-by: Philipp Zabel Reviewed-by: Frank Li Signed-off-by: Laurentiu Mihalcea --- drivers/reset/reset-imx8mp-audiomix.c | 92 +++++++++++++++++---------- 1 file changed, 57 insertions(+), 35 deletions(-) diff --git a/drivers/reset/reset-imx8mp-audiomix.c b/drivers/reset/reset-im= x8mp-audiomix.c index acfa92b15329..f6152c0cc5ff 100644 --- a/drivers/reset/reset-imx8mp-audiomix.c +++ b/drivers/reset/reset-imx8mp-audiomix.c @@ -12,6 +12,7 @@ #include #include #include +#include #include =20 #define IMX8MP_AUDIOMIX_EARC_RESET_OFFSET 0x200 @@ -43,8 +44,7 @@ static const struct imx8mp_reset_map reset_map[] =3D { =20 struct imx8mp_audiomix_reset { struct reset_controller_dev rcdev; - spinlock_t lock; /* protect register read-modify-write cycle */ - void __iomem *base; + struct regmap *regmap; }; =20 static struct imx8mp_audiomix_reset *to_imx8mp_audiomix_reset(struct reset= _controller_dev *rcdev) @@ -56,26 +56,14 @@ static int imx8mp_audiomix_update(struct reset_controll= er_dev *rcdev, unsigned long id, bool assert) { struct imx8mp_audiomix_reset *priv =3D to_imx8mp_audiomix_reset(rcdev); - void __iomem *reg_addr =3D priv->base; - unsigned int mask, offset, active_low; - unsigned long reg, flags; + unsigned int mask, offset, active_low, val; =20 mask =3D reset_map[id].mask; offset =3D reset_map[id].offset; active_low =3D reset_map[id].active_low; + val =3D (active_low ^ assert) ? mask : ~mask; =20 - spin_lock_irqsave(&priv->lock, flags); - - reg =3D readl(reg_addr + offset); - if (active_low ^ assert) - reg |=3D mask; - else - reg &=3D ~mask; - writel(reg, reg_addr + offset); - - spin_unlock_irqrestore(&priv->lock, flags); - - return 0; + return regmap_update_bits(priv->regmap, offset, mask, val); } =20 static int imx8mp_audiomix_reset_assert(struct reset_controller_dev *rcdev, @@ -95,6 +83,52 @@ static const struct reset_control_ops imx8mp_audiomix_re= set_ops =3D { .deassert =3D imx8mp_audiomix_reset_deassert, }; =20 +static const struct regmap_config regmap_config =3D { + .reg_bits =3D 32, + .val_bits =3D 32, + .reg_stride =3D 4, +}; + +/* assumption: registered only if not using parent regmap */ +static void imx8mp_audiomix_reset_iounmap(void *data) +{ + void __iomem *base =3D (void __iomem *)data; + + iounmap(base); +} + +static int imx8mp_audiomix_reset_get_regmap(struct imx8mp_audiomix_reset *= priv) +{ + void __iomem *base; + struct device *dev; + int ret; + + dev =3D priv->rcdev.dev; + + /* try to use the parent's regmap */ + priv->regmap =3D dev_get_regmap(dev->parent, NULL); + if (priv->regmap) + return 0; + + /* ... if that's not possible then initialize the regmap right now */ + base =3D of_iomap(dev->parent->of_node, 0); + if (!base) + return dev_err_probe(dev, -ENOMEM, "failed to iomap address space\n"); + + ret =3D devm_add_action_or_reset(dev, + imx8mp_audiomix_reset_iounmap, + (void __force *)base); + if (ret) + return dev_err_probe(dev, ret, "failed to register action\n"); + + priv->regmap =3D devm_regmap_init_mmio(dev, base, ®map_config); + if (IS_ERR(priv->regmap)) + return dev_err_probe(dev, PTR_ERR(priv->regmap), + "failed to initialize regmap\n"); + + return 0; +} + static int imx8mp_audiomix_reset_probe(struct auxiliary_device *adev, const struct auxiliary_device_id *id) { @@ -106,36 +140,25 @@ static int imx8mp_audiomix_reset_probe(struct auxilia= ry_device *adev, if (!priv) return -ENOMEM; =20 - spin_lock_init(&priv->lock); - priv->rcdev.owner =3D THIS_MODULE; priv->rcdev.nr_resets =3D ARRAY_SIZE(reset_map); priv->rcdev.ops =3D &imx8mp_audiomix_reset_ops; priv->rcdev.of_node =3D dev->parent->of_node; priv->rcdev.dev =3D dev; priv->rcdev.of_reset_n_cells =3D 1; - priv->base =3D of_iomap(dev->parent->of_node, 0); - if (!priv->base) - return -ENOMEM; =20 dev_set_drvdata(dev, priv); =20 + ret =3D imx8mp_audiomix_reset_get_regmap(priv); + if (ret) + return dev_err_probe(dev, ret, "failed to get regmap\n"); + ret =3D devm_reset_controller_register(dev, &priv->rcdev); if (ret) - goto out_unmap; + return dev_err_probe(dev, ret, + "failed to register reset controller\n"); =20 return 0; - -out_unmap: - iounmap(priv->base); - return ret; -} - -static void imx8mp_audiomix_reset_remove(struct auxiliary_device *adev) -{ - struct imx8mp_audiomix_reset *priv =3D dev_get_drvdata(&adev->dev); - - iounmap(priv->base); } =20 static const struct auxiliary_device_id imx8mp_audiomix_reset_ids[] =3D { @@ -148,7 +171,6 @@ MODULE_DEVICE_TABLE(auxiliary, imx8mp_audiomix_reset_id= s); =20 static struct auxiliary_driver imx8mp_audiomix_reset_driver =3D { .probe =3D imx8mp_audiomix_reset_probe, - .remove =3D imx8mp_audiomix_reset_remove, .id_table =3D imx8mp_audiomix_reset_ids, }; =20 --=20 2.43.0 From nobody Mon Dec 1 23:03:59 2025 Received: from mail-ed1-f48.google.com (mail-ed1-f48.google.com [209.85.208.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 43EEC328252 for ; Wed, 26 Nov 2025 12:43:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160990; cv=none; b=SFxBuMI25IZez63R8ChDz8fobSiY/fMNIHzZy7aNDujKm/dwAD6pzQQawF1u/GrqQ9aLxuyrivhdfUz74NbA4BJTwRtH1CA20Nd+OfvCnaKSviGEPTO6HfcBEYm7d40O4GPHYyeh2uhzg/BxvuiH3rvSM3O+HlU9ieUtLT4wzyI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160990; c=relaxed/simple; bh=/R8DB6PS5O6Vu0rqhYBkNBWOV2WuuSjtOHLfrZBLXnw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PUY1ubGZwlB4FpS+IDD7ogbrGdVNl1+MDWq7YqroFTSap2hmo7uGV/YP5REOvGFUef80P3ZwSIwiFHwrqIBhuydmLlALJkr8l2A+fcaggEzlFwPJNeStkUPU6Jth/h94jY9u7lf7SzqHtcVrXJkfGIX/xsNldxm+k7XBHoagzdA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=DG1oegXx; arc=none smtp.client-ip=209.85.208.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="DG1oegXx" Received: by mail-ed1-f48.google.com with SMTP id 4fb4d7f45d1cf-64074f01a6eso11732519a12.2 for ; Wed, 26 Nov 2025 04:43:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764160986; x=1764765786; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QEUrAaAcrC3D3wCSVpJgszh6h9a2J9Zuh9+Hw2rSnjA=; b=DG1oegXx2WDLMDVF8IiJbWLvxvlfm/Do+DjHf3uMnRHHrBK7AqGL8CtJr5sqFLKKuH jlY/4zyFHNeIfR5pCzB4hCNJxVsM7WczU1xeLzefe0DivynN6Hw4BdRw0Xu0+YyR9hrb +kKuvCxv95b9DmKIfVd6ayahs/gYGybm38GgPhAbR1HYxEyHRNya1guPVBJXABaG0Ot3 qhEYEsA3DZlMR9i0QEKV/V8ExIsePB76XPkVRW6laqGUUxFVCqjifOHcQQTeNPiV6y3h BOvQbzv6HzemI+3t+vOW/VD01y8HFcNC7yncZWL1DgHBFatK1dTUqFC2NC2WH291HGgv ib9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764160986; x=1764765786; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=QEUrAaAcrC3D3wCSVpJgszh6h9a2J9Zuh9+Hw2rSnjA=; b=E/fIzSkRKpfae0tPgQ5e1yDt6mx+pXEiRuFvppFfIQNcm5MFgMQsbAuk4jYrbCvkOB +xcpAIU3Xw5XYBBOW5mVbsLAFKJkR15nj7auKD3QP+frGzssQivwoAljJSe3mVeRRBop LUlesejtRkj7qf5n6ir4xT+2O1TBquu/BKzO6wEvDdxU5m8WRXI8q9B+5k3xwqiqeaww 3VsBT+3icbXyCSjwn91Nq0qFsAQXiJjhs5R7ErEL//Df/rd5fCFtESeTmEzZY2vcj9zf pOdqggyJJI7Q5uHZxrLsikOQKQaCIsypkJtHQA0AvwaiGUKrkdoWLm7Na2sXyU84Ie/a TQ8A== X-Forwarded-Encrypted: i=1; AJvYcCXMnn/DPEbVjkI74MH/7BtO2Z2AMpt6pLeL9YNHsMKSb9CFufhShnKQakLKveVpw3wlud3fE6UzfjTiq4Q=@vger.kernel.org X-Gm-Message-State: AOJu0YzDDk85XhEUwi7itJuDub/rEnNe/AITLRNKZV0I++9VQ2zAKst7 ClrnxOh8ipY6KruI9llrApZM5OslTdqwPboPHdsz4o9ghGzkYvvkef/p X-Gm-Gg: ASbGnctgPUu5HW5kFtphWMePpSmT8fd7QlDYRxfNqLvBmjkAk+tWW08A5MLllNxVUAv s6rcmmtjhHX1wnCdpwc4sAv65OOzEXCkwp73E/SXPQRepuRI0t0YzcoYj7Uq8Q7cw4/hAzrc7/F e6eoxePfnzLOLfogOP2L8ur59pcKcV8fj7v/H1lJmkKIbHNU2Z5GXcTl45wIRGJcTf05ooQXTia Io6ZLY9liDCn4wMtqKBJaMSZw28fZ2t+AtMKjcWn0h/ZH73h6lE6L5xRcOA4c43DWS+0yueiFAo NONBwdZnRDHtC1psgSnfr7HKEkndAWxLU3wGqBbUsIDAZYezvuvV1H38t3VNUpgMoHgaFNtDW8x 5k64FJIoH2mCEL5zNQU1eqpk36Yufip9fBs0QcxoT8gFUM0f7mE7VQ8d23AyLsrC1r8+45CZur4 EaG6u5Xh9XSGLI2dcan3wrSvc+Rguvt/DEzXbX X-Google-Smtp-Source: AGHT+IGKLPw8td8LrQ0ou6eIh/AvAY0vkGQJXd4hWo3MO0W0vfngL8sRsTQuh8232uCr75jYDD5EoQ== X-Received: by 2002:a05:6402:510a:b0:639:d9f4:165e with SMTP id 4fb4d7f45d1cf-64555d057e6mr16359675a12.29.1764160986331; Wed, 26 Nov 2025 04:43:06 -0800 (PST) Received: from SMW024614.wbi.nxp.com ([128.77.115.157]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-64536459d92sm17654824a12.31.2025.11.26.04.43.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Nov 2025 04:43:06 -0800 (PST) From: Laurentiu Mihalcea To: Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Fabio Estevam , Philipp Zabel , Daniel Baluta , Shengjiu Wang , Frank Li Cc: devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Pengutronix Kernel Team Subject: [PATCH v6 3/5] reset: imx8mp-audiomix: Extend the driver usage Date: Wed, 26 Nov 2025 04:42:16 -0800 Message-ID: <20251126124218.803-4-laurentiumihalcea111@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251126124218.803-1-laurentiumihalcea111@gmail.com> References: <20251126124218.803-1-laurentiumihalcea111@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Laurentiu Mihalcea Switch to per-device reset map to allow reusing the driver for other NXP block control IPs. Reviewed-by: Daniel Baluta Reviewed-by: Frank Li Signed-off-by: Laurentiu Mihalcea --- drivers/reset/reset-imx8mp-audiomix.c | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/drivers/reset/reset-imx8mp-audiomix.c b/drivers/reset/reset-im= x8mp-audiomix.c index f6152c0cc5ff..00eee528a2d2 100644 --- a/drivers/reset/reset-imx8mp-audiomix.c +++ b/drivers/reset/reset-imx8mp-audiomix.c @@ -24,7 +24,12 @@ struct imx8mp_reset_map { bool active_low; }; =20 -static const struct imx8mp_reset_map reset_map[] =3D { +struct imx8mp_reset_info { + const struct imx8mp_reset_map *map; + int num_lines; +}; + +static const struct imx8mp_reset_map imx8mp_reset_map[] =3D { [IMX8MP_AUDIOMIX_EARC_RESET] =3D { .offset =3D IMX8MP_AUDIOMIX_EARC_RESET_OFFSET, .mask =3D BIT(0), @@ -42,9 +47,15 @@ static const struct imx8mp_reset_map reset_map[] =3D { }, }; =20 +static const struct imx8mp_reset_info imx8mp_reset_info =3D { + .map =3D imx8mp_reset_map, + .num_lines =3D ARRAY_SIZE(imx8mp_reset_map), +}; + struct imx8mp_audiomix_reset { struct reset_controller_dev rcdev; struct regmap *regmap; + const struct imx8mp_reset_map *map; }; =20 static struct imx8mp_audiomix_reset *to_imx8mp_audiomix_reset(struct reset= _controller_dev *rcdev) @@ -56,6 +67,7 @@ static int imx8mp_audiomix_update(struct reset_controller= _dev *rcdev, unsigned long id, bool assert) { struct imx8mp_audiomix_reset *priv =3D to_imx8mp_audiomix_reset(rcdev); + const struct imx8mp_reset_map *reset_map =3D priv->map; unsigned int mask, offset, active_low, val; =20 mask =3D reset_map[id].mask; @@ -132,16 +144,20 @@ static int imx8mp_audiomix_reset_get_regmap(struct im= x8mp_audiomix_reset *priv) static int imx8mp_audiomix_reset_probe(struct auxiliary_device *adev, const struct auxiliary_device_id *id) { + const struct imx8mp_reset_info *rinfo; struct imx8mp_audiomix_reset *priv; struct device *dev =3D &adev->dev; int ret; =20 + rinfo =3D (void *)id->driver_data; + priv =3D devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM; =20 priv->rcdev.owner =3D THIS_MODULE; - priv->rcdev.nr_resets =3D ARRAY_SIZE(reset_map); + priv->map =3D rinfo->map; + priv->rcdev.nr_resets =3D rinfo->num_lines; priv->rcdev.ops =3D &imx8mp_audiomix_reset_ops; priv->rcdev.of_node =3D dev->parent->of_node; priv->rcdev.dev =3D dev; @@ -164,6 +180,7 @@ static int imx8mp_audiomix_reset_probe(struct auxiliary= _device *adev, static const struct auxiliary_device_id imx8mp_audiomix_reset_ids[] =3D { { .name =3D "clk_imx8mp_audiomix.reset", + .driver_data =3D (kernel_ulong_t)&imx8mp_reset_info, }, { } }; --=20 2.43.0 From nobody Mon Dec 1 23:03:59 2025 Received: from mail-ed1-f43.google.com (mail-ed1-f43.google.com [209.85.208.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E5C49329365 for ; Wed, 26 Nov 2025 12:43:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160992; cv=none; b=Z1qDlUW4Zbx7mDvEnii2TW7xxtmT7aClchTSb+PPq1XL1Tr3EFxgnk2Qq74/9gsf+4k2CGPPraunFAH9QHAn8cx9mT9yABZGja7TqgEN2gN/XVisjnJ5g5n/Vok/603Rx18Md8kknIefvwT6cU+QW6xVxx+meZRg/WKKjN+Zrx4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160992; c=relaxed/simple; bh=P4KbKmbPhXi4RmHw2WF/7i/9QfzpSSQ4syTVF74JXOc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jHFkY5vnNk5kDIy5tFjwpKjNNwkHm08knXWmlnC95r8s0/G0sciYx5GVh7pmfmoQ9OF7s6b5pEnZPDSJE3ZEK67Vf6JvAnoxNQHNXvLgn5VlQOUrlA0T4xOLUbn8k9VcrbKisRqKDteS5Apnj66kQpBl+7CiQalS1vAmcytbIrg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=mj8skAr4; arc=none smtp.client-ip=209.85.208.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mj8skAr4" Received: by mail-ed1-f43.google.com with SMTP id 4fb4d7f45d1cf-64175dfc338so11391780a12.0 for ; Wed, 26 Nov 2025 04:43:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764160988; x=1764765788; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=MS47VPO6RNZssHSPn4CeLg1VobQSQVVSULTdfhTMk9Y=; b=mj8skAr4MaNb8ysjuKlaXsO1CHFTXakxbV6w35obdHLXB3lvM8NjdIAAbvumyb7Cbh ZyGZz+vbtxzfadDqilLsS7NXAWgvFv+sWfHn0nAAN7NnBcRezqIRc4uYBv/W8EXSMaAr iIe2GWNGBMtiPMM8rIoQ2EVNSZm9LEBM6ZsxEbX6PtLa0nib8HAskaqfC93vCSTOVKGn gO2j0AGL+CXJORrQ5OWZiPW0j+wHSluWVwqvbToJgXi0LmWSBmh6xhbZlCzB9+emaT8e 2PAHf8Iq9gTJPYMGggsRri1Bj3ZLfEvIRdel5yvQYxfJFxzTlaF9x6Tkle9RZyQY5YG7 DPcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764160988; x=1764765788; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=MS47VPO6RNZssHSPn4CeLg1VobQSQVVSULTdfhTMk9Y=; b=C/NP5g5rwDm7tKTANAOGsWiwy5zI5c0H6KPwLwD9reT1BBWg16OIDpGNj/9UyCPCRA CIz6qqwEbeZGEjOQyI7fNWxFhDAuOPJZf+euedUfPc0yc8gxgOqMDs/yIk3uLJIsdTQy 0Sc5Ut10PEgZUAXIJzvWkBfOcd7+96gyWGQBXULZVoaEjDoEYDZ8iLPjtREPe034Qpr2 YGDwF1r8raT9wg2Z5tRlfZjY7CHeYWfeoYDPk0wKGlhtu2wIBakQ2dfy83BLIpLDhWRC Iehu9gNbxlzzQipUGkmqtJ1O3shd2HTRSao4mK9eeEg2h+1NSTu7mxV8gmTCSPmeizmg Wz6w== X-Forwarded-Encrypted: i=1; AJvYcCXj25QMoraqZedaoQzv0U6nWGyNbmlsN0jzPqC1UDFHaHjm+tLBF5Rm0pmRhFeq6iRimeKbH8mS9UEnZ/M=@vger.kernel.org X-Gm-Message-State: AOJu0Yx5zkjYuKJEXX1LzE8l8d3dgYLPpfsFBRhPakcNsWyMFTAFyj6w LjX/PnKsTROHvEtqAYWAnVZIJODBlDb8mihxmFYIG/JKZvWmOrb7YY9O X-Gm-Gg: ASbGncuIxBROvYZZICUhl5JT06dpKWziwMANkFyeFAs5uVJOncryd+bvEB+aM5fXJ7l 6BN3d9iGVE0JzvYzgkigrCKvgmJAPMBiR+iJiuKFfPU3Tui10NyhYBZRlVaBGi1iXKaYdxoPtwF i7Z5rONkv8VvU54dtccRJpqNx4/wXosbPkNEexe6Ept/Hwvc5GnI8iES8iQ6KUSBrgyI6cimj5d PGL+c2vikjU8DFEk6O6zBLfHjPLW4tdCiWsaEDuJlA73tdJm52OJ8yH0GUpMRd66vGWVGrywhVe cr85Hs1IP24kx5z/CS/B8zpX+jgBiTjaaxsJhKDNJea5Y2prbS4bw3W+hYzG4iF3mvBTaX5cSrc cfXRW48JaOfYslKxef0TpdaU6EOPx3lpfK3HLguV+wbLEPfEmUGj8zqD+eGu0Y3x6LPxPGBBqQa JQ4bvBSwmEnpDg1bid1yXLOpX3E8hsNsq4yfmS X-Google-Smtp-Source: AGHT+IGKniOPsuMqLGWG0SkLA1Zky3npjxWYZzJjefGtqxfKracate5d7l4F20Qx0HfNwyP4Of2daA== X-Received: by 2002:a05:6402:26d2:b0:640:b808:75f8 with SMTP id 4fb4d7f45d1cf-64554339a47mr16014476a12.7.1764160988003; Wed, 26 Nov 2025 04:43:08 -0800 (PST) Received: from SMW024614.wbi.nxp.com ([128.77.115.157]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-64536459d92sm17654824a12.31.2025.11.26.04.43.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Nov 2025 04:43:07 -0800 (PST) From: Laurentiu Mihalcea To: Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Fabio Estevam , Philipp Zabel , Daniel Baluta , Shengjiu Wang , Frank Li Cc: devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Pengutronix Kernel Team Subject: [PATCH v6 4/5] reset: imx8mp-audiomix: Support i.MX8ULP SIM LPAV Date: Wed, 26 Nov 2025 04:42:17 -0800 Message-ID: <20251126124218.803-5-laurentiumihalcea111@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251126124218.803-1-laurentiumihalcea111@gmail.com> References: <20251126124218.803-1-laurentiumihalcea111@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Laurentiu Mihalcea Support i.MX8ULP's SIM LPAV by adding its reset map definition. Reviewed-by: Daniel Baluta Reviewed-by: Frank Li Reviewed-by: Philipp Zabel Signed-off-by: Laurentiu Mihalcea --- drivers/reset/reset-imx8mp-audiomix.c | 45 +++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/drivers/reset/reset-imx8mp-audiomix.c b/drivers/reset/reset-im= x8mp-audiomix.c index 00eee528a2d2..b7fa3110f282 100644 --- a/drivers/reset/reset-imx8mp-audiomix.c +++ b/drivers/reset/reset-imx8mp-audiomix.c @@ -3,6 +3,7 @@ * Copyright 2024 NXP */ =20 +#include #include =20 #include @@ -18,6 +19,8 @@ #define IMX8MP_AUDIOMIX_EARC_RESET_OFFSET 0x200 #define IMX8MP_AUDIOMIX_DSP_RUNSTALL_OFFSET 0x108 =20 +#define IMX8ULP_SIM_LPAV_SYSCTRL0_OFFSET 0x8 + struct imx8mp_reset_map { unsigned int offset; unsigned int mask; @@ -52,6 +55,44 @@ static const struct imx8mp_reset_info imx8mp_reset_info = =3D { .num_lines =3D ARRAY_SIZE(imx8mp_reset_map), }; =20 +static const struct imx8mp_reset_map imx8ulp_reset_map[] =3D { + [IMX8ULP_SIM_LPAV_HIFI4_DSP_DBG_RST] =3D { + .offset =3D IMX8ULP_SIM_LPAV_SYSCTRL0_OFFSET, + .mask =3D BIT(25), + .active_low =3D false, + }, + [IMX8ULP_SIM_LPAV_HIFI4_DSP_RST] =3D { + .offset =3D IMX8ULP_SIM_LPAV_SYSCTRL0_OFFSET, + .mask =3D BIT(16), + .active_low =3D false, + }, + [IMX8ULP_SIM_LPAV_HIFI4_DSP_STALL] =3D { + .offset =3D IMX8ULP_SIM_LPAV_SYSCTRL0_OFFSET, + .mask =3D BIT(13), + .active_low =3D false, + }, + [IMX8ULP_SIM_LPAV_DSI_RST_BYTE_N] =3D { + .offset =3D IMX8ULP_SIM_LPAV_SYSCTRL0_OFFSET, + .mask =3D BIT(5), + .active_low =3D true, + }, + [IMX8ULP_SIM_LPAV_DSI_RST_ESC_N] =3D { + .offset =3D IMX8ULP_SIM_LPAV_SYSCTRL0_OFFSET, + .mask =3D BIT(4), + .active_low =3D true, + }, + [IMX8ULP_SIM_LPAV_DSI_RST_DPI_N] =3D { + .offset =3D IMX8ULP_SIM_LPAV_SYSCTRL0_OFFSET, + .mask =3D BIT(3), + .active_low =3D true, + }, +}; + +static const struct imx8mp_reset_info imx8ulp_reset_info =3D { + .map =3D imx8ulp_reset_map, + .num_lines =3D ARRAY_SIZE(imx8ulp_reset_map), +}; + struct imx8mp_audiomix_reset { struct reset_controller_dev rcdev; struct regmap *regmap; @@ -182,6 +223,10 @@ static const struct auxiliary_device_id imx8mp_audiomi= x_reset_ids[] =3D { .name =3D "clk_imx8mp_audiomix.reset", .driver_data =3D (kernel_ulong_t)&imx8mp_reset_info, }, + { + .name =3D "clk_imx8ulp_sim_lpav.reset", + .driver_data =3D (kernel_ulong_t)&imx8ulp_reset_info, + }, { } }; MODULE_DEVICE_TABLE(auxiliary, imx8mp_audiomix_reset_ids); --=20 2.43.0 From nobody Mon Dec 1 23:03:59 2025 Received: from mail-ed1-f44.google.com (mail-ed1-f44.google.com [209.85.208.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C41D0329C61 for ; Wed, 26 Nov 2025 12:43:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160993; cv=none; b=BolzBw3NytlKCAtK/WfokiAn7Ecr3S2XAuNL2vD6ghLRc1HTmimkKjDY7NZJC41eweIcHRcq9zaLKrLaRbfLJOJKP8WuzYNv2sjA0gt9hWibklaMQejQcfjzHMZRQFBdQO4FQyyxOt3C17oj5vpKFIjTp6Sjqho3pFJyvazNLVk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764160993; c=relaxed/simple; bh=v9PIaHoOGqn87lRlESH/AuFgCy5K1+8Bo9hGHBVSeHs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iDA1jzl5g+d/gefK6kI7nXOJQd7oaRAiFLqyzzaCiMMy548StePJQfQezDh2elQPMCuAAreAHqifucHq3hwjjNlFKTP7bcEPrRSj80xMp8G5qtZQ+Ri0j/1tSppTWrGlUxPn8ixB92EjMFvcuAmNQnjxix/hDQFVb2hLq5Z2n54= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=SOf/2rY6; arc=none smtp.client-ip=209.85.208.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="SOf/2rY6" Received: by mail-ed1-f44.google.com with SMTP id 4fb4d7f45d1cf-6431b0a1948so10930030a12.3 for ; Wed, 26 Nov 2025 04:43:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764160990; x=1764765790; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xHtOrvUe+VoHbx7eNPs1dlQDZqVpXM8AHRrOkF3QMQM=; b=SOf/2rY6Wqi91A5TeWJwUcWgaK9y/7Q0w+IMRqylN+lZj8xeFh9tRSZxfV4AWLhQdz hNF55yQUT6npBjP0YjfkJlOmcOF2X6pN+LDOkR3ev0rP0m500MgP+RjjNgYQ0LlsoV6U Ogx5kjN4Mj9rTSO6G9Q5+DUFdiAJW82O6U87/ltUWecukH4cQF3bH8OJ0rVZdYscerOI qsvNyD96d0GIgWOiv96u2AkwlaCXxlTCJ2CiTPHEA5hrUJC0RxgV/DpKGqM7AN5RnJpu 8GYTqIf58W4G8U9wwN5ZJqXa9Lzj98JWdGZbV5WTCrOdXdac2O4epr3+gq7Wc2ct55SQ e6zw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764160990; x=1764765790; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=xHtOrvUe+VoHbx7eNPs1dlQDZqVpXM8AHRrOkF3QMQM=; b=U1QqDMHH4xNhnLWOyNrNA0qMUowT7ac+i8axtyh/jFnlAyWhOPzruEMme0O5Rs8cgx rWkpnV0jyFnWTJNALMprIUxhMW+2QpHED/PIHEJGPcBXbExU5WFAEeFuSBgaCYd1hPUI deO3LX/6eMOWMM2zx47PaREmtzAHlomLJ5JwiNuSJPjxN9ft+EM0RS308eCw8kA4a6dJ 3yjZJQi4hea+qfyEbixzPFycJnEw+Dy4eKCSDHP0qXAc47fHqWdpCP4U1rO3ARj1gQzk ry9HIg0PhGSy6RmyENr7A4GIYsg7N5xt1kJ0tuewU8DCyCiCM35/cbFkQW7HEJ/puFkW 3IYw== X-Forwarded-Encrypted: i=1; AJvYcCW57pIvXyn9SnbjF7dT1UP0YdLwsFgVT+am1zYlDBo0f9d4xzww6cRj2EE+lRsNjlYFJEYkptvNYQioisI=@vger.kernel.org X-Gm-Message-State: AOJu0YyfOtVw2/liV7unQxmdPENT66/BohKRyPr0dOK2mtiWLBTkiomf q6yHuc1bIjS8KuBDCJCzH8oibsXb8i9v0K6w82+GlQ88gKJK1vD+qeSv X-Gm-Gg: ASbGncvhS0NNkfkAFlMmqoZEheJY90Gmmdbp/00Gbdueig6DegitooU3IIgM2F74tqS Enl6T/tF6LjmnupYB/jeMtf4m30b0fU2G5FxzAwAIDziG0KShBun74wky0FUnO++KO0BcokXYGE 3BsH2C81xsIvAnH8lLzVk55nSaxyX2FURZA81ZK72uaRTL4gFLXdKRPE5LXlYoRZCTsbv4EAqkg 0rVBe71WciK7Ot5CotwagG6p5XlPUgnBHkEhddBd6ShuqfykZz9fR9jci+esvQMYr9TErNsUW1o y6jI+S5hy9SKaIM3m9FDAWeVM+YP6BuXi9D4ffpgVoWa9R4W40t5siLLEmgJuOiotEbkkQIQcGt JPRfQ0PdUZGpLrSKAtAR5kFiWRNUN6jy2HdactzT9BkvsT9gDwP/UWI5wW8AGelkC+Xv1L43TUS Epxhaff0F2mDrWWAEwkv+Ksf7nQ3loq1lXmQWbWfT8gLbXOsE= X-Google-Smtp-Source: AGHT+IEK+fAuFi2k4GaxIBNmbHYXMljUxG7zaiQpHjTkWdqeymuPQBHmktEsrElO+iqJPJnEFZWVuA== X-Received: by 2002:a05:6402:5192:b0:637:ee0d:383d with SMTP id 4fb4d7f45d1cf-645eb223dbemr7038749a12.3.1764160989649; Wed, 26 Nov 2025 04:43:09 -0800 (PST) Received: from SMW024614.wbi.nxp.com ([128.77.115.157]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-64536459d92sm17654824a12.31.2025.11.26.04.43.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Nov 2025 04:43:09 -0800 (PST) From: Laurentiu Mihalcea To: Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Fabio Estevam , Philipp Zabel , Daniel Baluta , Shengjiu Wang , Frank Li Cc: devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Pengutronix Kernel Team Subject: [PATCH v6 5/5] arm64: dts: imx8ulp: add sim lpav node Date: Wed, 26 Nov 2025 04:42:18 -0800 Message-ID: <20251126124218.803-6-laurentiumihalcea111@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251126124218.803-1-laurentiumihalcea111@gmail.com> References: <20251126124218.803-1-laurentiumihalcea111@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Laurentiu Mihalcea Add DT node for the SIM LPAV module. Reviewed-by: Daniel Baluta Reviewed-by: Frank Li Signed-off-by: Laurentiu Mihalcea --- arch/arm64/boot/dts/freescale/imx8ulp.dtsi | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx8ulp.dtsi b/arch/arm64/boot/d= ts/freescale/imx8ulp.dtsi index 13b01f3aa2a4..9b5d98766512 100644 --- a/arch/arm64/boot/dts/freescale/imx8ulp.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8ulp.dtsi @@ -776,6 +776,23 @@ edma2: dma-controller@2d800000 { "ch28", "ch29", "ch30", "ch31"; }; =20 + sim_lpav: clock-controller@2da50000 { + compatible =3D "fsl,imx8ulp-sim-lpav"; + reg =3D <0x2da50000 0x10000>; + clocks =3D <&cgc2 IMX8ULP_CLK_LPAV_BUS_DIV>, + <&cgc2 IMX8ULP_CLK_HIFI_DIVCORE>, + <&cgc2 IMX8ULP_CLK_HIFI_DIVPLAT>; + clock-names =3D "bus", "core", "plat"; + #clock-cells =3D <1>; + #reset-cells =3D <1>; + + sim_lpav_mux: mux-controller { + compatible =3D "reg-mux"; + #mux-control-cells =3D <1>; + mux-reg-masks =3D <0x8 0x00000200>; + }; + }; + cgc2: clock-controller@2da60000 { compatible =3D "fsl,imx8ulp-cgc2"; reg =3D <0x2da60000 0x10000>; --=20 2.43.0