diff mbox series

remoteproc: report firmware name on load failures

Message ID 20220831161736.749932-1-krzysztof.kozlowski@linaro.org (mailing list archive)
State Rejected
Headers show
Series remoteproc: report firmware name on load failures | expand

Commit Message

Krzysztof Kozlowski Aug. 31, 2022, 4:17 p.m. UTC
remoteproc error messages like:
  remoteproc remoteproc0: request_firmware failed: -2
  remoteproc remoteproc1: request_firmware failed: -2
are difficult to debug as one actually have no clue which device
reported it and which firmware is missing.  Be verbose and print the
name of the failed firmware.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/remoteproc_core.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Mukesh Ojha Sept. 1, 2022, 8:55 a.m. UTC | #1
hi,

On 8/31/2022 9:47 PM, Krzysztof Kozlowski wrote:
> remoteproc error messages like:
>    remoteproc remoteproc0: request_firmware failed: -2
>    remoteproc remoteproc1: request_firmware failed: -2
> are difficult to debug as one actually have no clue which device
> reported it and which firmware is missing.  Be verbose and print the
> name of the failed firmware.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>   drivers/remoteproc/remoteproc_core.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
> index e5279ed9a8d7..71cd7ed7a970 100644
> --- a/drivers/remoteproc/remoteproc_core.c
> +++ b/drivers/remoteproc/remoteproc_core.c
> @@ -1923,7 +1923,8 @@ int rproc_trigger_recovery(struct rproc *rproc)
>   	/* load firmware */
>   	ret = request_firmware(&firmware_p, rproc->firmware, dev);
>   	if (ret < 0) {
> -		dev_err(dev, "request_firmware failed: %d\n", ret);
> +		dev_err(dev, "request_firmware %s failed: %d\n",
> +			rproc->firmware, ret);
>   		goto unlock_mutex;
>   	}
>   
> @@ -2023,7 +2024,8 @@ int rproc_boot(struct rproc *rproc)
>   		/* load firmware */
>   		ret = request_firmware(&firmware_p, rproc->firmware, dev);
>   		if (ret < 0) {
> -			dev_err(dev, "request_firmware failed: %d\n", ret);
> +			dev_err(dev, "request_firmware %s failed: %d\n",
> +				rproc->firmware, ret);

Good to have this.
Acked-by: Mukesh Ojha <quic_mojha@quicinc.com>

>   			goto downref_rproc;
>   		}
>   

-Mukesh
Mathieu Poirier Sept. 6, 2022, 7:46 p.m. UTC | #2
On Wed, Aug 31, 2022 at 07:17:36PM +0300, Krzysztof Kozlowski wrote:
> remoteproc error messages like:
>   remoteproc remoteproc0: request_firmware failed: -2
>   remoteproc remoteproc1: request_firmware failed: -2
> are difficult to debug as one actually have no clue which device
> reported it and which firmware is missing.  Be verbose and print the
> name of the failed firmware.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  drivers/remoteproc/remoteproc_core.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
> index e5279ed9a8d7..71cd7ed7a970 100644
> --- a/drivers/remoteproc/remoteproc_core.c
> +++ b/drivers/remoteproc/remoteproc_core.c
> @@ -1923,7 +1923,8 @@ int rproc_trigger_recovery(struct rproc *rproc)
>  	/* load firmware */
>  	ret = request_firmware(&firmware_p, rproc->firmware, dev);
>  	if (ret < 0) {
> -		dev_err(dev, "request_firmware failed: %d\n", ret);
> +		dev_err(dev, "request_firmware %s failed: %d\n",
> +			rproc->firmware, ret);
>  		goto unlock_mutex;
>  	}
>  
> @@ -2023,7 +2024,8 @@ int rproc_boot(struct rproc *rproc)
>  		/* load firmware */
>  		ret = request_firmware(&firmware_p, rproc->firmware, dev);
>  		if (ret < 0) {
> -			dev_err(dev, "request_firmware failed: %d\n", ret);
> +			dev_err(dev, "request_firmware %s failed: %d\n",
> +				rproc->firmware, ret);

That information is already available in sysfs but if you are really keen on it
please do the same for rproc_trigger_auto_boot().

Thanks,
Mathieu

>  			goto downref_rproc;
>  		}
>  
> -- 
> 2.34.1
>
Krzysztof Kozlowski Sept. 7, 2022, 8:23 a.m. UTC | #3
On 06/09/2022 21:46, Mathieu Poirier wrote:
> On Wed, Aug 31, 2022 at 07:17:36PM +0300, Krzysztof Kozlowski wrote:
>> remoteproc error messages like:
>>   remoteproc remoteproc0: request_firmware failed: -2
>>   remoteproc remoteproc1: request_firmware failed: -2
>> are difficult to debug as one actually have no clue which device
>> reported it and which firmware is missing.  Be verbose and print the
>> name of the failed firmware.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>> ---
>>  drivers/remoteproc/remoteproc_core.c | 6 ++++--
>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
>> index e5279ed9a8d7..71cd7ed7a970 100644
>> --- a/drivers/remoteproc/remoteproc_core.c
>> +++ b/drivers/remoteproc/remoteproc_core.c
>> @@ -1923,7 +1923,8 @@ int rproc_trigger_recovery(struct rproc *rproc)
>>  	/* load firmware */
>>  	ret = request_firmware(&firmware_p, rproc->firmware, dev);
>>  	if (ret < 0) {
>> -		dev_err(dev, "request_firmware failed: %d\n", ret);
>> +		dev_err(dev, "request_firmware %s failed: %d\n",
>> +			rproc->firmware, ret);
>>  		goto unlock_mutex;
>>  	}
>>  
>> @@ -2023,7 +2024,8 @@ int rproc_boot(struct rproc *rproc)
>>  		/* load firmware */
>>  		ret = request_firmware(&firmware_p, rproc->firmware, dev);
>>  		if (ret < 0) {
>> -			dev_err(dev, "request_firmware failed: %d\n", ret);
>> +			dev_err(dev, "request_firmware %s failed: %d\n",
>> +				rproc->firmware, ret);
> 
> That information is already available in sysfs 

Hm, it's not in deferred probe reasons, so where can I find it in sysfs?

> but if you are really keen on it
> please do the same for rproc_trigger_auto_boot().
Sure.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
index e5279ed9a8d7..71cd7ed7a970 100644
--- a/drivers/remoteproc/remoteproc_core.c
+++ b/drivers/remoteproc/remoteproc_core.c
@@ -1923,7 +1923,8 @@  int rproc_trigger_recovery(struct rproc *rproc)
 	/* load firmware */
 	ret = request_firmware(&firmware_p, rproc->firmware, dev);
 	if (ret < 0) {
-		dev_err(dev, "request_firmware failed: %d\n", ret);
+		dev_err(dev, "request_firmware %s failed: %d\n",
+			rproc->firmware, ret);
 		goto unlock_mutex;
 	}
 
@@ -2023,7 +2024,8 @@  int rproc_boot(struct rproc *rproc)
 		/* load firmware */
 		ret = request_firmware(&firmware_p, rproc->firmware, dev);
 		if (ret < 0) {
-			dev_err(dev, "request_firmware failed: %d\n", ret);
+			dev_err(dev, "request_firmware %s failed: %d\n",
+				rproc->firmware, ret);
 			goto downref_rproc;
 		}