[PATCH v1 05/10] media: platform: mediatek: add isp_7x camsys unit

CK Hu (胡俊光) ck.hu at mediatek.com
Wed Nov 20 06:10:58 UTC 2024


Hi, Shu-hsiang:

On Wed, 2024-10-09 at 19:15 +0800, Shu-hsiang Yang wrote:
> Introduces the top media device driver for the MediaTek ISP7X CAMSYS.
> The driver maintains the camera system, including sub-device management,
> DMA operations, and integration with the V4L2 framework. It handles
> request stream data, buffer management, and MediaTek-specific features,
> and pipeline management, streaming control, error handling mechanism.
> Additionally, it aggregates sub-drivers for the camera interface, raw
> and yuv pipelines.
> 
> Signed-off-by: Shu-hsiang Yang <Shu-hsiang.Yang at mediatek.com>
> ---

[snip]

> +static int isp_composer_init(struct mtk_cam_device *cam)
> +{
> +	struct device *dev = cam->dev;
> +	int ret;
> +
> +	ret = rproc_boot(cam->rproc_handle);
> +	if (ret) {
> +		dev_err(dev, "failed to rproc_boot\n");
> +		return ret;
> +	}
> +
> +	ret = scp_ipi_register(cam->scp, SCP_IPI_ISP_CMD,
> +			       isp_composer_handler, cam);
> +	if (ret) {
> +		dev_err(dev, "failed to register IPI cmd\n");
> +		return ret;
> +	}
> +
> +	ret = scp_ipi_register(cam->scp, SCP_IPI_ISP_FRAME,
> +			       isp_composer_handler, cam);

SCP_IPI_ISP_CMD and SCP_IPI_ISP_FRAME use different way to handler ack.
So do not use the common function isp_composer_handler to handler different command.
Use different handler function.

Regards,
CK

> +	if (ret) {
> +		dev_err(dev, "failed to register IPI frame\n");
> +		goto unreg_ipi_cmd;
> +	}
> +
> +	return 0;
> +
> +unreg_ipi_cmd:
> +	scp_ipi_unregister(cam->scp, SCP_IPI_ISP_CMD);
> +
> +	return ret;
> +}
> +

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20241120/492aafe8/attachment.htm>


More information about the dri-devel mailing list