2021-06-23 11:47:44

by Michal Simek

[permalink] [raw]
Subject: [PATCH] reset: reset-zynqmp: Fixed the argument data type

From: Sai Krishna Potthuri <[email protected]>

This patch changes the data type of the variable 'val' from
int to u32.

Addresses-Coverity: argument of type "int *" is incompatible with parameter of type "u32 *"
Signed-off-by: Sai Krishna Potthuri <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
---

drivers/reset/reset-zynqmp.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/reset/reset-zynqmp.c b/drivers/reset/reset-zynqmp.c
index daa425e74c96..59dc0ff9af9e 100644
--- a/drivers/reset/reset-zynqmp.c
+++ b/drivers/reset/reset-zynqmp.c
@@ -53,7 +53,8 @@ static int zynqmp_reset_status(struct reset_controller_dev *rcdev,
unsigned long id)
{
struct zynqmp_reset_data *priv = to_zynqmp_reset_data(rcdev);
- int val, err;
+ int err;
+ u32 val;

err = zynqmp_pm_reset_get_status(priv->data->reset_id + id, &val);
if (err)
--
2.32.0


2021-08-06 10:27:09

by Michal Simek

[permalink] [raw]
Subject: Re: [PATCH] reset: reset-zynqmp: Fixed the argument data type

Hi Philipp,

st 23. 6. 2021 v 13:46 odesílatel Michal Simek <[email protected]> napsal:
>
> From: Sai Krishna Potthuri <[email protected]>
>
> This patch changes the data type of the variable 'val' from
> int to u32.
>
> Addresses-Coverity: argument of type "int *" is incompatible with parameter of type "u32 *"
> Signed-off-by: Sai Krishna Potthuri <[email protected]>
> Signed-off-by: Michal Simek <[email protected]>
> ---
>
> drivers/reset/reset-zynqmp.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/reset/reset-zynqmp.c b/drivers/reset/reset-zynqmp.c
> index daa425e74c96..59dc0ff9af9e 100644
> --- a/drivers/reset/reset-zynqmp.c
> +++ b/drivers/reset/reset-zynqmp.c
> @@ -53,7 +53,8 @@ static int zynqmp_reset_status(struct reset_controller_dev *rcdev,
> unsigned long id)
> {
> struct zynqmp_reset_data *priv = to_zynqmp_reset_data(rcdev);
> - int val, err;
> + int err;
> + u32 val;
>
> err = zynqmp_pm_reset_get_status(priv->data->reset_id + id, &val);
> if (err)
> --
> 2.32.0
>

Can you please take a look at this patch?

Thanks,
Michal


--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: http://www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs

2021-08-11 10:38:09

by Michael Tretter

[permalink] [raw]
Subject: Re: [PATCH] reset: reset-zynqmp: Fixed the argument data type

On Wed, 23 Jun 2021 13:46:20 +0200, Michal Simek wrote:
> From: Sai Krishna Potthuri <[email protected]>
>
> This patch changes the data type of the variable 'val' from
> int to u32.
>
> Signed-off-by: Sai Krishna Potthuri <[email protected]>
> Signed-off-by: Michal Simek <[email protected]>
> Addresses-Coverity: argument of type "int *" is incompatible with parameter of type "u32 *"
> ---
>
> drivers/reset/reset-zynqmp.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/reset/reset-zynqmp.c b/drivers/reset/reset-zynqmp.c
> index daa425e74c96..59dc0ff9af9e 100644
> --- a/drivers/reset/reset-zynqmp.c
> +++ b/drivers/reset/reset-zynqmp.c
> @@ -53,7 +53,8 @@ static int zynqmp_reset_status(struct reset_controller_dev *rcdev,
> unsigned long id)
> {
> struct zynqmp_reset_data *priv = to_zynqmp_reset_data(rcdev);
> - int val, err;
> + int err;
> + u32 val;

The function returns val as int instead of u32. While this shouldn't be a
problem in this case, maybe there should be an additional check just to be
sure?

Michael

>
> err = zynqmp_pm_reset_get_status(priv->data->reset_id + id, &val);
> if (err)
> --
> 2.32.0

2021-08-11 11:31:48

by Michal Simek

[permalink] [raw]
Subject: Re: [PATCH] reset: reset-zynqmp: Fixed the argument data type



On 8/11/21 12:36 PM, Michael Tretter wrote:
> On Wed, 23 Jun 2021 13:46:20 +0200, Michal Simek wrote:
>> From: Sai Krishna Potthuri <[email protected]>
>>
>> This patch changes the data type of the variable 'val' from
>> int to u32.
>>
>> Signed-off-by: Sai Krishna Potthuri <[email protected]>
>> Signed-off-by: Michal Simek <[email protected]>
>> Addresses-Coverity: argument of type "int *" is incompatible with parameter of type "u32 *"
>> ---
>>
>> drivers/reset/reset-zynqmp.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/reset/reset-zynqmp.c b/drivers/reset/reset-zynqmp.c
>> index daa425e74c96..59dc0ff9af9e 100644
>> --- a/drivers/reset/reset-zynqmp.c
>> +++ b/drivers/reset/reset-zynqmp.c
>> @@ -53,7 +53,8 @@ static int zynqmp_reset_status(struct reset_controller_dev *rcdev,
>> unsigned long id)
>> {
>> struct zynqmp_reset_data *priv = to_zynqmp_reset_data(rcdev);
>> - int val, err;
>> + int err;
>> + u32 val;
>
> The function returns val as int instead of u32. While this shouldn't be a
> problem in this case, maybe there should be an additional check just to be
> sure?

As far as I can tell coverity is not reporting any issue around it.
And when I look at internal of that function in firmware this function
in case of success returns only 0 or 1 that's why I don't think we need
to do anything with it.

Thanks,
Michal

2021-08-23 11:00:08

by Philipp Zabel

[permalink] [raw]
Subject: Re: [PATCH] reset: reset-zynqmp: Fixed the argument data type

Hi Michal,

On Wed, 2021-06-23 at 13:46 +0200, Michal Simek wrote:
> From: Sai Krishna Potthuri <[email protected]>
>
> This patch changes the data type of the variable 'val' from
> int to u32.
>
> Addresses-Coverity: argument of type "int *" is incompatible with parameter of type "u32 *"
> Signed-off-by: Sai Krishna Potthuri <[email protected]>
> Signed-off-by: Michal Simek <[email protected]>
> ---
>
> drivers/reset/reset-zynqmp.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/reset/reset-zynqmp.c b/drivers/reset/reset-zynqmp.c
> index daa425e74c96..59dc0ff9af9e 100644
> --- a/drivers/reset/reset-zynqmp.c
> +++ b/drivers/reset/reset-zynqmp.c
> @@ -53,7 +53,8 @@ static int zynqmp_reset_status(struct reset_controller_dev *rcdev,
> unsigned long id)
> {
> struct zynqmp_reset_data *priv = to_zynqmp_reset_data(rcdev);
> - int val, err;
> + int err;
> + u32 val;
>
> err = zynqmp_pm_reset_get_status(priv->data->reset_id + id, &val);
> if (err)

Thank you, applied to reset/fixes.

regards
Philipp