Commit 9ceb1cf5 authored by Laurentiu Mihalcea's avatar Laurentiu Mihalcea Committed by Shawn Guo
Browse files

arm64: dts: imx8mp: make 'dsp' node depend on 'aips5'



The DSP needs to access peripherals on AIPSTZ5 (to communicate with
the AP using AUDIOMIX MU, for instance). To do so, the security-related
registers of the bridge have to be configured before the DSP is started.
Enforce a dependency on AIPSTZ5 by adding the 'access-controllers'
property to the 'dsp' node.

Reviewed-by: default avatarDaniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: default avatarLaurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
parent 286e622b
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: (GPL-2.0-only OR MIT) */
/*
 * Copyright 2025 NXP
 */

#ifndef __IMX8MP_AIPSTZ_H
#define __IMX8MP_AIPSTZ_H

/* consumer type - master or peripheral */
#define IMX8MP_AIPSTZ_MASTER		0x0
#define IMX8MP_AIPSTZ_PERIPH		0x1

/* master configuration options */
#define IMX8MP_AIPSTZ_MPL		(1 << 0)
#define IMX8MP_AIPSTZ_MTW		(1 << 1)
#define IMX8MP_AIPSTZ_MTR		(1 << 2)
#define IMX8MP_AIPSTZ_MBW		(1 << 3)

/* peripheral configuration options */
#define IMX8MP_AIPSTZ_TP		(1 << 0)
#define IMX8MP_AIPSTZ_WP		(1 << 1)
#define IMX8MP_AIPSTZ_SP		(1 << 2)
#define IMX8MP_AIPSTZ_BW		(1 << 3)

/* master ID definitions */
#define IMX8MP_AIPSTZ_EDMA		0 /* AUDIOMIX EDMA */
#define IMX8MP_AIPSTZ_CA53		1 /* Cortex-A53 cluster */
#define IMX8MP_AIPSTZ_SDMA2		3 /* AUDIOMIX SDMA2 */
#define IMX8MP_AIPSTZ_SDMA3		3 /* AUDIOMIX SDMA3 */
#define IMX8MP_AIPSTZ_HIFI4		5 /* HIFI4 DSP */
#define IMX8MP_AIPSTZ_CM7		6 /* Cortex-M7 */

#endif /* __IMX8MP_AIPSTZ_H */
+6 −0
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/thermal/thermal.h>

#include "imx8mp-aipstz.h"
#include "imx8mp-pinfunc.h"

/ {
@@ -2506,6 +2507,11 @@ dsp: dsp@3b6e8000 {
			firmware-name = "imx/dsp/hifi4.bin";
			resets = <&audio_blk_ctrl IMX8MP_AUDIOMIX_DSP_RUNSTALL>;
			reset-names = "runstall";
			access-controllers = <&aips5
				IMX8MP_AIPSTZ_HIFI4
				IMX8MP_AIPSTZ_MASTER
				(IMX8MP_AIPSTZ_MPL | IMX8MP_AIPSTZ_MTW | IMX8MP_AIPSTZ_MTR)
			>;
			status = "disabled";
		};
	};