mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 07:03:03 +02:00
remoteproc: imx_dsp_rproc: Move imx_dsp_rproc_dcfg closer to imx_dsp_rproc_of_match
Move the imx_dsp_rproc_dcfg structure definitions closer to imx_dsp_rproc_of_match to prepare for adding start/stop/detect_mode ops for each i.MX variant. Avoids the need to declare function prototypes such as 'static int imx_dsp_rproc_mbox_init(struct imx_dsp_rproc *priv)' at the beginning of the file, improving code organization and readability. No functional changes. Reviewed-by: Frank Li <Frank.Li@nxp.com> Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com> Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by: Iuliana Prodan <iuliana.prodan@nxp.com> Tested-by: Iuliana Prodan <iuliana.prodan@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> Link: https://lore.kernel.org/r/20251119-imx-dsp-2025-11-19-v4-7-adafd342d07b@nxp.com Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
This commit is contained in:
parent
606e481169
commit
66395eac5d
|
|
@ -261,56 +261,6 @@ static int imx8ulp_dsp_reset(struct imx_dsp_rproc *priv)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/* Specific configuration for i.MX8MP */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8mp = {
|
||||
.att = imx_dsp_rproc_att_imx8mp,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8mp),
|
||||
.method = IMX_RPROC_RESET_CONTROLLER,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8mp = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8mp,
|
||||
.reset = imx8mp_dsp_reset,
|
||||
};
|
||||
|
||||
/* Specific configuration for i.MX8ULP */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8ulp = {
|
||||
.src_reg = IMX8ULP_SIM_LPAV_REG_SYSCTRL0,
|
||||
.src_mask = IMX8ULP_SYSCTRL0_DSP_STALL,
|
||||
.src_start = 0,
|
||||
.src_stop = IMX8ULP_SYSCTRL0_DSP_STALL,
|
||||
.att = imx_dsp_rproc_att_imx8ulp,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8ulp),
|
||||
.method = IMX_RPROC_MMIO,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8ulp = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8ulp,
|
||||
.reset = imx8ulp_dsp_reset,
|
||||
};
|
||||
|
||||
/* Specific configuration for i.MX8QXP */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8qxp = {
|
||||
.att = imx_dsp_rproc_att_imx8qxp,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8qxp),
|
||||
.method = IMX_RPROC_SCU_API,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8qxp = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8qxp,
|
||||
};
|
||||
|
||||
/* Specific configuration for i.MX8QM */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8qm = {
|
||||
.att = imx_dsp_rproc_att_imx8qm,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8qm),
|
||||
.method = IMX_RPROC_SCU_API,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8qm = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8qm,
|
||||
};
|
||||
|
||||
static int imx_dsp_rproc_ready(struct rproc *rproc)
|
||||
{
|
||||
struct imx_dsp_rproc *priv = rproc->priv;
|
||||
|
|
@ -1351,6 +1301,56 @@ static const struct dev_pm_ops imx_dsp_rproc_pm_ops = {
|
|||
RUNTIME_PM_OPS(imx_dsp_runtime_suspend, imx_dsp_runtime_resume, NULL)
|
||||
};
|
||||
|
||||
/* Specific configuration for i.MX8MP */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8mp = {
|
||||
.att = imx_dsp_rproc_att_imx8mp,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8mp),
|
||||
.method = IMX_RPROC_RESET_CONTROLLER,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8mp = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8mp,
|
||||
.reset = imx8mp_dsp_reset,
|
||||
};
|
||||
|
||||
/* Specific configuration for i.MX8ULP */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8ulp = {
|
||||
.src_reg = IMX8ULP_SIM_LPAV_REG_SYSCTRL0,
|
||||
.src_mask = IMX8ULP_SYSCTRL0_DSP_STALL,
|
||||
.src_start = 0,
|
||||
.src_stop = IMX8ULP_SYSCTRL0_DSP_STALL,
|
||||
.att = imx_dsp_rproc_att_imx8ulp,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8ulp),
|
||||
.method = IMX_RPROC_MMIO,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8ulp = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8ulp,
|
||||
.reset = imx8ulp_dsp_reset,
|
||||
};
|
||||
|
||||
/* Specific configuration for i.MX8QXP */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8qxp = {
|
||||
.att = imx_dsp_rproc_att_imx8qxp,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8qxp),
|
||||
.method = IMX_RPROC_SCU_API,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8qxp = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8qxp,
|
||||
};
|
||||
|
||||
/* Specific configuration for i.MX8QM */
|
||||
static const struct imx_rproc_dcfg dsp_rproc_cfg_imx8qm = {
|
||||
.att = imx_dsp_rproc_att_imx8qm,
|
||||
.att_size = ARRAY_SIZE(imx_dsp_rproc_att_imx8qm),
|
||||
.method = IMX_RPROC_SCU_API,
|
||||
};
|
||||
|
||||
static const struct imx_dsp_rproc_dcfg imx_dsp_rproc_cfg_imx8qm = {
|
||||
.dcfg = &dsp_rproc_cfg_imx8qm,
|
||||
};
|
||||
|
||||
static const struct of_device_id imx_dsp_rproc_of_match[] = {
|
||||
{ .compatible = "fsl,imx8qxp-hifi4", .data = &imx_dsp_rproc_cfg_imx8qxp },
|
||||
{ .compatible = "fsl,imx8qm-hifi4", .data = &imx_dsp_rproc_cfg_imx8qm },
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user