[PATCH v2 3/3] gpio: intel_gpio: Fix register/bit offsets intel_gpio_get_value()

Andy Shevchenko andy.shevchenko at gmail.com
Mon Feb 3 13:34:04 CET 2020


On Mon, Feb 3, 2020 at 12:38 PM Wolfgang Wallner
<wolfgang.wallner at br-automation.com> wrote:
>
> Fix the following in intel_gpio_get_value():
>
>  * The value of the register is contained in the variable 'reg', not in
>    'mode'. The variable 'mode' contains only the configuration whether
>    the gpio is currently an input or an output.
>
>  * The correct bitmasks for the input and output value are
>    PAD_CFG0_RX_STATE and PAD_CFG0_TX_STATE.
>    Use them instead of the currently used PAD_CFG0_RX_STATE_BIT and
>    PAD_CFG0_TX_STATE_BIT.

...

>         if (!mode) {
>                 rx_tx = reg & (PAD_CFG0_TX_DISABLE | PAD_CFG0_RX_DISABLE);
>                 if (rx_tx == PAD_CFG0_TX_DISABLE)
> -                       return mode & PAD_CFG0_RX_STATE_BIT ? 1 : 0;
> +                       return reg & PAD_CFG0_RX_STATE ? 1 : 0;

Is it style of U-Boot? Because
return !!(...); will have same effect while consuming less characters.

>                 else if (rx_tx == PAD_CFG0_RX_DISABLE)

'else' is redundant here

> -                       return mode & PAD_CFG0_TX_STATE_BIT ? 1 : 0;
> +                       return reg & PAD_CFG0_TX_STATE ? 1 : 0;
>         }


-- 
With Best Regards,
Andy Shevchenko


More information about the U-Boot mailing list