Re: [PATCH 1/2] media: nxp: imx8-isi: Add i.MX8ULP support

From: Laurent Pinchart
Date: Fri Oct 11 2024 - 09:31:22 EST


Hi Guoniu,

Thank you for the patch.

On Fri, Oct 11, 2024 at 06:17:12PM +0800, guoniu.zhou@xxxxxxxxxxx wrote:
> From: "Guoniu.zhou" <guoniu.zhou@xxxxxxx>
>
> Add ISI support for i.MX8ULP.
>
> Signed-off-by: Guoniu.zhou <guoniu.zhou@xxxxxxx>
> ---
> .../platform/nxp/imx8-isi/imx8-isi-core.c | 18 ++++++++++++++++++
> .../platform/nxp/imx8-isi/imx8-isi-core.h | 1 +
> 2 files changed, 19 insertions(+)
>
> diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
> index c2013995049c..f5d076d7f50b 100644
> --- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
> +++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
> @@ -279,6 +279,10 @@ static const struct clk_bulk_data mxc_imx8mn_clks[] = {
> { .id = "apb" },
> };
>
> +static const struct clk_bulk_data mxc_imx8ulp_clks[] = {
> + { .id = "per" },

This doesn't match the DT bindings. Which one is wrong ?

> +};
> +
> static const struct mxc_isi_plat_data mxc_imx8mn_data = {
> .model = MXC_ISI_IMX8MN,
> .num_ports = 1,
> @@ -307,6 +311,19 @@ static const struct mxc_isi_plat_data mxc_imx8mp_data = {
> .has_36bit_dma = true,
> };
>
> +static const struct mxc_isi_plat_data mxc_imx8ulp_data = {
> + .model = MXC_ISI_IMX8ULP,
> + .num_ports = 1,
> + .num_channels = 1,
> + .reg_offset = 0x0,
> + .ier_reg = &mxc_imx8_isi_ier_v2,
> + .set_thd = &mxc_imx8_isi_thd_v1,
> + .clks = mxc_imx8ulp_clks,
> + .num_clks = ARRAY_SIZE(mxc_imx8ulp_clks),
> + .buf_active_reverse = true,
> + .has_36bit_dma = false,
> +};
> +
> static const struct mxc_isi_plat_data mxc_imx93_data = {
> .model = MXC_ISI_IMX93,
> .num_ports = 1,
> @@ -528,6 +545,7 @@ static void mxc_isi_remove(struct platform_device *pdev)
> static const struct of_device_id mxc_isi_of_match[] = {
> { .compatible = "fsl,imx8mn-isi", .data = &mxc_imx8mn_data },
> { .compatible = "fsl,imx8mp-isi", .data = &mxc_imx8mp_data },
> + { .compatible = "fsl,imx8ulp-isi", .data = &mxc_imx8ulp_data },
> { .compatible = "fsl,imx93-isi", .data = &mxc_imx93_data },
> { /* sentinel */ },
> };
> diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h
> index 2810ebe9b5f7..9c7fe9e5f941 100644
> --- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h
> +++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h
> @@ -158,6 +158,7 @@ struct mxc_gasket_ops {
> enum model {
> MXC_ISI_IMX8MN,
> MXC_ISI_IMX8MP,
> + MXC_ISI_IMX8ULP,
> MXC_ISI_IMX93,
> };
>

--
Regards,

Laurent Pinchart