Re: [PATCH ] firmware: qcom: scm: Disable SDI and write no dump to download mode register

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 05, 2024 at 05:36:23PM +0530, Mukesh Ojha wrote:
> SDI is enabled for most of the Qualcomm SoCs and as per commit
> ff4aa3bc9825 ("firmware: qcom_scm: disable SDI if required")
> it was recommended to disable SDI by mentioning it in device tree
> 
> However, for some cases download mode tcsr register already configured
> from boot firmware to collect dumps and in such cases if download
> mode is set to zero(nodump mode) from kernel side and SDI is disabled
                     ^^^^^^^^^^^^^
that's not what download_mode=0 does currently, but it's what you're
proposing it should be doing. I think that proposal is reasonable, but
can you call out in the commit text that the current behavior of
download_mode=0 is nop.

> via means of mentioning it in device tree we could end up with dump
> collection.
> 
> To disable complete dump collection mode, SDI and dload mode register
> need to be set no dump mode.
> 
> Signed-off-by: Mukesh Ojha <quic_mojha@xxxxxxxxxxx>

Should this be?

Fixes: ff4aa3bc9825 ("firmware: qcom_scm: disable SDI if required")

> ---
>  drivers/firmware/qcom/qcom_scm.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/firmware/qcom/qcom_scm.c b/drivers/firmware/qcom/qcom_scm.c
> index 00c379a3cceb..2e10f75a9cfd 100644
> --- a/drivers/firmware/qcom/qcom_scm.c
> +++ b/drivers/firmware/qcom/qcom_scm.c
> @@ -1954,14 +1954,12 @@ static int qcom_scm_probe(struct platform_device *pdev)
>  	 * will cause the boot stages to enter download mode, unless
>  	 * disabled below by a clean shutdown/reboot.
>  	 */
> -	if (download_mode)
> -		qcom_scm_set_download_mode(true);
> -
> +	qcom_scm_set_download_mode(download_mode ? true : false);

Just: qcom_scm_set_download_mode(download_mode);

>  
>  	/*
>  	 * Disable SDI if indicated by DT that it is enabled by default.
>  	 */
> -	if (of_property_read_bool(pdev->dev.of_node, "qcom,sdi-enabled"))
> +	if (of_property_read_bool(pdev->dev.of_node, "qcom,sdi-enabled") || !download_mode)


>  		qcom_scm_disable_sdi();
>  
>  	ret = of_reserved_mem_device_init(__scm->dev);
> -- 
> 2.34.1
> 
> 




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux