diff options
author | Gwendal Grignou <gwendal@chromium.org> | 2019-03-11 16:07:55 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-03-26 04:42:56 -0700 |
commit | ac77140b7f4f42075d2377fc9d956a636b05aacf (patch) | |
tree | c64c6a30916ff741a2ab235141f7bd071cd54483 /driver/ioexpander_pca9534.c | |
parent | bb266fc26fc05d4ab22de6ad7bce5b477c9f9140 (diff) | |
download | chrome-ec-ac77140b7f4f42075d2377fc9d956a636b05aacf.tar.gz |
common: bit change 1 << constants with BIT(constants)
Mechanical replacement of bit operation where operand is a constant.
More bit operation exist, but prone to errors.
Reveal a bug in npcx:
chip/npcx/system-npcx7.c:114:54: error: conversion from 'long unsigned int' to 'uint8_t' {aka 'volatile unsigned char'} changes value from '16777215' to '255' [-Werror=overflow]
BUG=None
BRANCH=None
TEST=None
Change-Id: I006614026143fa180702ac0d1cc2ceb1b3c6eeb0
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1518660
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Diffstat (limited to 'driver/ioexpander_pca9534.c')
-rw-r--r-- | driver/ioexpander_pca9534.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/driver/ioexpander_pca9534.c b/driver/ioexpander_pca9534.c index 1ac9a5164b..1a1015b1f1 100644 --- a/driver/ioexpander_pca9534.c +++ b/driver/ioexpander_pca9534.c @@ -12,7 +12,7 @@ static int pca9534_pin_read(int port, int addr, int reg, int pin, int *val) { int ret; ret = i2c_read8(port, addr, reg, val); - *val = (*val & (1 << pin)) ? 1 : 0; + *val = (*val & BIT(pin)) ? 1 : 0; return ret; } @@ -22,7 +22,7 @@ static int pca9534_pin_write(int port, int addr, int reg, int pin, int val) ret = i2c_read8(port, addr, reg, &v); if (ret != EC_SUCCESS) return ret; - v &= ~(1 << pin); + v &= ~BIT(pin); if (val) v |= 1 << pin; return i2c_write8(port, addr, reg, v); |