diff mbox

[U-Boot] spi: cf_qspi: fix clamp macro type check compilation warnings

Message ID 1433460203-7043-1-git-send-email-angelo@sysam.it
State Superseded
Delegated to: Jagannadha Sutradharudu Teki
Headers show

Commit Message

Angelo Dureghello June 4, 2015, 11:23 p.m. UTC
Fix clamp macro redefined warning, and clamp type check warnings.

Signed-off-by: Angelo Dureghello <angelo@sysam.it>
---
 drivers/spi/cf_qspi.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Jagan Teki June 19, 2015, 7:43 a.m. UTC | #1
On 5 June 2015 at 04:53, Angelo Dureghello <angelo@sysam.it> wrote:
> Fix clamp macro redefined warning, and clamp type check warnings.
>
> Signed-off-by: Angelo Dureghello <angelo@sysam.it>
> ---
>  drivers/spi/cf_qspi.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/spi/cf_qspi.c b/drivers/spi/cf_qspi.c
> index 834c5bd..c4bafe0 100644
> --- a/drivers/spi/cf_qspi.c
> +++ b/drivers/spi/cf_qspi.c
> @@ -19,7 +19,6 @@
>
>  DECLARE_GLOBAL_DATA_PTR;
>
> -#define clamp(x, low, high) (min(max(low, x), high))
>  #define to_cf_qspi_slave(s) container_of(s, struct cf_qspi_slave, slave)
>
>  struct cf_qspi_slave {
> @@ -119,7 +118,7 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs,
>         if (max_hz == 0) /* Go as fast as possible */
>                 dev->qmr = 2u;
>         else /* Get the closest baud rate */
> -               dev->qmr = clamp(((gd->bus_clk >> 2) + max_hz - 1)/max_hz,
> +               dev->qmr = clamp_val(((gd->bus_clk >> 2) + max_hz - 1)/max_hz,

Yes, there is a common macro in include/linux - can you check this
clamp or clamp_val and
test it accordingly.

>                                         2u, 255u);
>
>         /* Map mode to QMR[CPOL] and QMR[CPHA] */
> --
> 2.1.4
>

thanks!
Angelo Dureghello June 21, 2015, 9:09 a.m. UTC | #2
On 19/06/2015 09:43, Jagan Teki wrote:
> On 5 June 2015 at 04:53, Angelo Dureghello <angelo@sysam.it> wrote:
>> Fix clamp macro redefined warning, and clamp type check warnings.
>>
>> Signed-off-by: Angelo Dureghello <angelo@sysam.it>
>> ---
>>   drivers/spi/cf_qspi.c | 3 +--
>>   1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/drivers/spi/cf_qspi.c b/drivers/spi/cf_qspi.c
>> index 834c5bd..c4bafe0 100644
>> --- a/drivers/spi/cf_qspi.c
>> +++ b/drivers/spi/cf_qspi.c
>> @@ -19,7 +19,6 @@
>>
>>   DECLARE_GLOBAL_DATA_PTR;
>>
>> -#define clamp(x, low, high) (min(max(low, x), high))
>>   #define to_cf_qspi_slave(s) container_of(s, struct cf_qspi_slave, slave)
>>
>>   struct cf_qspi_slave {
>> @@ -119,7 +118,7 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs,
>>          if (max_hz == 0) /* Go as fast as possible */
>>                  dev->qmr = 2u;
>>          else /* Get the closest baud rate */
>> -               dev->qmr = clamp(((gd->bus_clk >> 2) + max_hz - 1)/max_hz,
>> +               dev->qmr = clamp_val(((gd->bus_clk >> 2) + max_hz - 1)/max_hz,
>
> Yes, there is a common macro in include/linux - can you check this
> clamp or clamp_val and
> test it accordingly.
>

Hi Jagan,

i realized the warnings was correctly generated from the "unnecessary" 
pointer comparison used from the clamp/min/max macros.

More correct solution here is to set 2u, 255u to 2lu, 255lu, and
types are compliant to the comparison, so warnings are not thrown anymore.

The clamp macro defined in this file seems anyway still not needed 
(redefine warning) since it is exactly the same in the commonly used 
include/linux/kernel.h clamp macro.

So i post a v2 version of the patch with these 2 changes. Ok ?


Best regards
Angelo Dureghello
Jagan Teki June 21, 2015, 9:45 a.m. UTC | #3
On 21 June 2015 at 14:39, Angelo Dureghello <angelo@sysam.it> wrote:
>
>
> On 19/06/2015 09:43, Jagan Teki wrote:
>>
>> On 5 June 2015 at 04:53, Angelo Dureghello <angelo@sysam.it> wrote:
>>>
>>> Fix clamp macro redefined warning, and clamp type check warnings.
>>>
>>> Signed-off-by: Angelo Dureghello <angelo@sysam.it>
>>> ---
>>>   drivers/spi/cf_qspi.c | 3 +--
>>>   1 file changed, 1 insertion(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/spi/cf_qspi.c b/drivers/spi/cf_qspi.c
>>> index 834c5bd..c4bafe0 100644
>>> --- a/drivers/spi/cf_qspi.c
>>> +++ b/drivers/spi/cf_qspi.c
>>> @@ -19,7 +19,6 @@
>>>
>>>   DECLARE_GLOBAL_DATA_PTR;
>>>
>>> -#define clamp(x, low, high) (min(max(low, x), high))
>>>   #define to_cf_qspi_slave(s) container_of(s, struct cf_qspi_slave,
>>> slave)
>>>
>>>   struct cf_qspi_slave {
>>> @@ -119,7 +118,7 @@ struct spi_slave *spi_setup_slave(unsigned int bus,
>>> unsigned int cs,
>>>          if (max_hz == 0) /* Go as fast as possible */
>>>                  dev->qmr = 2u;
>>>          else /* Get the closest baud rate */
>>> -               dev->qmr = clamp(((gd->bus_clk >> 2) + max_hz -
>>> 1)/max_hz,
>>> +               dev->qmr = clamp_val(((gd->bus_clk >> 2) + max_hz -
>>> 1)/max_hz,
>>
>>
>> Yes, there is a common macro in include/linux - can you check this
>> clamp or clamp_val and
>> test it accordingly.
>>
>
> Hi Jagan,
>
> i realized the warnings was correctly generated from the "unnecessary"
> pointer comparison used from the clamp/min/max macros.
>
> More correct solution here is to set 2u, 255u to 2lu, 255lu, and
> types are compliant to the comparison, so warnings are not thrown anymore.
>
> The clamp macro defined in this file seems anyway still not needed (redefine
> warning) since it is exactly the same in the commonly used
> include/linux/kernel.h clamp macro.
>
> So i post a v2 version of the patch with these 2 changes. Ok ?

Yes, please.

thanks!
diff mbox

Patch

diff --git a/drivers/spi/cf_qspi.c b/drivers/spi/cf_qspi.c
index 834c5bd..c4bafe0 100644
--- a/drivers/spi/cf_qspi.c
+++ b/drivers/spi/cf_qspi.c
@@ -19,7 +19,6 @@ 
 
 DECLARE_GLOBAL_DATA_PTR;
 
-#define clamp(x, low, high) (min(max(low, x), high))
 #define to_cf_qspi_slave(s) container_of(s, struct cf_qspi_slave, slave)
 
 struct cf_qspi_slave {
@@ -119,7 +118,7 @@  struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs,
 	if (max_hz == 0) /* Go as fast as possible */
 		dev->qmr = 2u;
 	else /* Get the closest baud rate */
-		dev->qmr = clamp(((gd->bus_clk >> 2) + max_hz - 1)/max_hz,
+		dev->qmr = clamp_val(((gd->bus_clk >> 2) + max_hz - 1)/max_hz,
 					2u, 255u);
 
 	/* Map mode to QMR[CPOL] and QMR[CPHA] */