Re: [PATCH 10/19] clk: at91: replace conditional operator with double logical not

Claudiu.Beznea
2020-07-20T10:36:29Z

On 17.07.2020 18:07, Alexandre Belloni wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
> Hi,
>
> On 15/07/2020 14:24:18+0300, Claudiu Beznea wrote:
>> Replace conditional operator with double logical not.
>
> I think you need to elaborate why you do it as the generated
> instructions are exactly the same.

I don't have strong support for this one. In general I'm seeing
the usage of !! instead of ?: for 0 and 1 results as being simpler
in terms of code reading.

>
>>
>> Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
>> ---
>> drivers/clk/at91/clk-generated.c | 2 +-
>> drivers/clk/at91/clk-main.c | 6 +++---
>> drivers/clk/at91/clk-master.c | 2 +-
>> drivers/clk/at91/clk-peripheral.c | 2 +-
>> drivers/clk/at91/clk-system.c | 4 ++--
>> 5 files changed, 8 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/clk/at91/clk-generated.c b/drivers/clk/at91/clk-generated.c
>> index f8e557e0e1b8..2448bdc63425 100644
>> --- a/drivers/clk/at91/clk-generated.c
>> +++ b/drivers/clk/at91/clk-generated.c
>> @@ -83,7 +83,7 @@ static int clk_generated_is_enabled(struct clk_hw *hw)
>> regmap_read(gck->regmap, gck->layout->offset, &status);
>> spin_unlock_irqrestore(gck->lock, flags);
>>
>> - return status & AT91_PMC_PCR_GCKEN ? 1 : 0;
>> + return !!(status & AT91_PMC_PCR_GCKEN);
>> }
>>
>> static unsigned long
>> diff --git a/drivers/clk/at91/clk-main.c b/drivers/clk/at91/clk-main.c
>> index 37c22667e831..5c83e899084f 100644
>> --- a/drivers/clk/at91/clk-main.c
>> +++ b/drivers/clk/at91/clk-main.c
>> @@ -175,7 +175,7 @@ static bool clk_main_rc_osc_ready(struct regmap *regmap)
>>
>> regmap_read(regmap, AT91_PMC_SR, &status);
>>
>> - return status & AT91_PMC_MOSCRCS;
>> + return !!(status & AT91_PMC_MOSCRCS);
>> }
>>
>> static int clk_main_rc_osc_prepare(struct clk_hw *hw)
>> @@ -336,7 +336,7 @@ static int clk_rm9200_main_is_prepared(struct clk_hw *hw)
>>
>> regmap_read(clkmain->regmap, AT91_CKGR_MCFR, &status);
>>
>> - return status & AT91_PMC_MAINRDY ? 1 : 0;
>> + return !!(status & AT91_PMC_MAINRDY);
>> }
>>
>> static unsigned long clk_rm9200_main_recalc_rate(struct clk_hw *hw,
>> @@ -398,7 +398,7 @@ static inline bool clk_sam9x5_main_ready(struct regmap *regmap)
>>
>> regmap_read(regmap, AT91_PMC_SR, &status);
>>
>> - return status & AT91_PMC_MOSCSELS ? 1 : 0;
>> + return !!(status & AT91_PMC_MOSCSELS);
>> }
>>
>> static int clk_sam9x5_main_prepare(struct clk_hw *hw)
>> diff --git a/drivers/clk/at91/clk-master.c b/drivers/clk/at91/clk-master.c
>> index e7e0ba652de1..88d545b1698c 100644
>> --- a/drivers/clk/at91/clk-master.c
>> +++ b/drivers/clk/at91/clk-master.c
>> @@ -33,7 +33,7 @@ static inline bool clk_master_ready(struct regmap *regmap)
>>
>> regmap_read(regmap, AT91_PMC_SR, &status);
>>
>> - return status & AT91_PMC_MCKRDY ? 1 : 0;
>> + return !!(status & AT91_PMC_MCKRDY);
>> }
>>
>> static int clk_master_prepare(struct clk_hw *hw)
>> diff --git a/drivers/clk/at91/clk-peripheral.c b/drivers/clk/at91/clk-peripheral.c
>> index c2ab4860a2bf..4c9a4147dfe5 100644
>> --- a/drivers/clk/at91/clk-peripheral.c
>> +++ b/drivers/clk/at91/clk-peripheral.c
>> @@ -208,7 +208,7 @@ static int clk_sam9x5_peripheral_is_enabled(struct clk_hw *hw)
>> regmap_read(periph->regmap, periph->layout->offset, &status);
>> spin_unlock_irqrestore(periph->lock, flags);
>>
>> - return status & AT91_PMC_PCR_EN ? 1 : 0;
>> + return !!(status & AT91_PMC_PCR_EN);
>> }
>>
>> static unsigned long
>> diff --git a/drivers/clk/at91/clk-system.c b/drivers/clk/at91/clk-system.c
>> index c4b3877aa445..f83ec0de86c3 100644
>> --- a/drivers/clk/at91/clk-system.c
>> +++ b/drivers/clk/at91/clk-system.c
>> @@ -34,7 +34,7 @@ static inline bool clk_system_ready(struct regmap *regmap, int id)
>>
>> regmap_read(regmap, AT91_PMC_SR, &status);
>>
>> - return status & (1 << id) ? 1 : 0;
>> + return !!(status & (1 << id));
>> }
>>
>> static int clk_system_prepare(struct clk_hw *hw)
>> @@ -74,7 +74,7 @@ static int clk_system_is_prepared(struct clk_hw *hw)
>>
>> regmap_read(sys->regmap, AT91_PMC_SR, &status);
>>
>> - return status & (1 << sys->id) ? 1 : 0;
>> + return !!(status & (1 << sys->id));
>> }
>>
>> static const struct clk_ops system_ops = {
>> --
>> 2.7.4
>>
>
> --
> Alexandre Belloni, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
>