lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4ef0e813-310d-4ca7-b946-32d7f436c20b@kernel.org>
Date: Sun, 14 Sep 2025 15:30:48 +0200
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Xiangzhi Tang <xiangzhi.tang@...iatek.com>,
 Bjorn Andersson <andersson@...nel.org>,
 Mathieu Poirier <mathieu.poirier@...aro.org>, Rob Herring <robh@...nel.org>,
 Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
 <conor+dt@...nel.org>, Matthias Brugger <matthias.bgg@...il.com>,
 AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
Cc: linux-remoteproc@...r.kernel.org, devicetree@...r.kernel.org,
 linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
 linux-mediatek@...ts.infradead.org, Jjian Zhou <Jjian.Zhou@...iatek.com>,
 Hailong Fan <Hailong.Fan@...iatek.com>
Subject: Re: [PATCH v2 3/4] remoterpoc: mediatek: vcp: Add ipi-mbox
 communication

On 14/09/2025 14:29, Xiangzhi Tang wrote:
>  
> +/**
> + * vcp_get_ipidev() - get a vcp ipi device struct to reference vcp ipi.
> + *
> + * @vcp: mtk_vcp_device structure from vcp_get().
> + *
> + **/
> +struct mtk_ipi_device *vcp_get_ipidev(struct mtk_vcp_device *vcp)
> +{
> +	return vcp->ipi_dev;
> +}
> +EXPORT_SYMBOL_GPL(vcp_get_ipidev);

NAK, there is no user of this.

I did not check the rest but I assume the same pattern in other places.

> +
>  static int mtk_vcp_start(struct rproc *rproc)
>  {
>  	struct mtk_vcp_device *vcp = (struct mtk_vcp_device *)rproc->priv;
>  	struct arm_smccc_res res;
> +	int ret;
> +
> +	ret = vcp->ipi_ops->ipi_register(vcp->ipi_dev, IPI_IN_VCP_READY_0,
> +					 (void *)vcp_A_ready_ipi_handler,
> +					 vcp, &vcp->vcp_cluster->msg_vcp_ready0);
> +	if (ret) {
> +		dev_err(vcp->dev, "Failed to register IPI_IN_VCP_READY_0\n");
> +		goto vcp0_ready_ipi_unregister;
> +	}
> +
> +	ret = vcp->ipi_ops->ipi_register(vcp->ipi_dev, IPI_IN_VCP_READY_1,
> +					 (void *)vcp_A_ready_ipi_handler,
> +					 vcp, &vcp->vcp_cluster->msg_vcp_ready1);
> +	if (ret) {
> +		dev_err(vcp->dev, "Failed to register IPI_IN_VCP_READY_1\n");
> +		goto vcp1_ready_ipi_unregister;
> +	}
>  
>  	/* core 0 */
>  	arm_smccc_smc(MTK_SIP_TINYSYS_VCP_CONTROL,
> @@ -82,7 +112,14 @@ static int mtk_vcp_start(struct rproc *rproc)
>  		dev_info(vcp->dev, "bootup successfully\n");
>  	}
>  
> -	return 0;
> +	return ret;

This make sno sense, why are you doing this?


Best regards,
Krzysztof

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ