[next] counter: microchip-tcb-capture: remove ATMEL_TC_ETRGEDG_NONE bit check
diff mbox series

Message ID 20200727140600.112562-1-colin.king@canonical.com
State New
Headers show
Series
  • [next] counter: microchip-tcb-capture: remove ATMEL_TC_ETRGEDG_NONE bit check
Related show

Commit Message

Colin King July 27, 2020, 2:06 p.m. UTC
From: Colin Ian King <colin.king@canonical.com>

The macro ATMEL_TC_ETRGEDG_NONE is defined as 0 << 8 which is zero and
hence the check cmr & ATMEL_TC_ETRGEDG_NONE can never be true. Since
*action is already assigned MCHP_TC_SYNAPSE_ACTION_NONE then this check
and set is redundant dead code and can be removed.

Addresses-Coverity: ("Logically dead code")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 drivers/counter/microchip-tcb-capture.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

William Breathitt Gray July 27, 2020, 3:12 p.m. UTC | #1
On Mon, Jul 27, 2020 at 03:06:00PM +0100, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
> 
> The macro ATMEL_TC_ETRGEDG_NONE is defined as 0 << 8 which is zero and
> hence the check cmr & ATMEL_TC_ETRGEDG_NONE can never be true. Since
> *action is already assigned MCHP_TC_SYNAPSE_ACTION_NONE then this check
> and set is redundant dead code and can be removed.
> 
> Addresses-Coverity: ("Logically dead code")
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>  drivers/counter/microchip-tcb-capture.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/counter/microchip-tcb-capture.c b/drivers/counter/microchip-tcb-capture.c
> index f7b7743ddb94..119640d6d6ab 100644
> --- a/drivers/counter/microchip-tcb-capture.c
> +++ b/drivers/counter/microchip-tcb-capture.c
> @@ -185,9 +185,7 @@ static int mchp_tc_count_action_get(struct counter_device *counter,
>  
>  	*action = MCHP_TC_SYNAPSE_ACTION_NONE;
>  
> -	if (cmr & ATMEL_TC_ETRGEDG_NONE)
> -		*action = MCHP_TC_SYNAPSE_ACTION_NONE;
> -	else if (cmr & ATMEL_TC_ETRGEDG_RISING)
> +	if (cmr & ATMEL_TC_ETRGEDG_RISING)
>  		*action = MCHP_TC_SYNAPSE_ACTION_RISING_EDGE;
>  	else if (cmr & ATMEL_TC_ETRGEDG_FALLING)
>  		*action = MCHP_TC_SYNAPSE_ACTION_FALLING_EDGE;
> -- 
> 2.27.0

The CMR value should be explictly checked for an ATMEL_TC_ETRGEDG_NONE
state; this code shouldn't default to a value, but rather return an
error if no valid can be determined.

I think this would be better implemented as a switch statement instead,
with a default case that returns such an error code.

William Breathitt Gray

Patch
diff mbox series

diff --git a/drivers/counter/microchip-tcb-capture.c b/drivers/counter/microchip-tcb-capture.c
index f7b7743ddb94..119640d6d6ab 100644
--- a/drivers/counter/microchip-tcb-capture.c
+++ b/drivers/counter/microchip-tcb-capture.c
@@ -185,9 +185,7 @@  static int mchp_tc_count_action_get(struct counter_device *counter,
 
 	*action = MCHP_TC_SYNAPSE_ACTION_NONE;
 
-	if (cmr & ATMEL_TC_ETRGEDG_NONE)
-		*action = MCHP_TC_SYNAPSE_ACTION_NONE;
-	else if (cmr & ATMEL_TC_ETRGEDG_RISING)
+	if (cmr & ATMEL_TC_ETRGEDG_RISING)
 		*action = MCHP_TC_SYNAPSE_ACTION_RISING_EDGE;
 	else if (cmr & ATMEL_TC_ETRGEDG_FALLING)
 		*action = MCHP_TC_SYNAPSE_ACTION_FALLING_EDGE;