diff options
author | Shawn Nematbakhsh <shawnn@chromium.org> | 2015-07-17 10:57:54 -0700 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2015-07-19 20:38:37 +0000 |
commit | 1f7ab338b10d65ddaf05d1b4650270d10580a932 (patch) | |
tree | f17c9418004809a96996f12d9c66a378299d631f /chip/mec1322/gpio.c | |
parent | 86192137049c269838241acc5dd5a2a41e5b71af (diff) | |
download | chrome-ec-1f7ab338b10d65ddaf05d1b4650270d10580a932.tar.gz |
cleanup: GPIO: Use common macro for converting mask to GPIO
The same calculation is used across the code, so move it to a common
macro.
BUG=chrome-os-partner:42104
TEST=Verify Glados still boots AP.
BRANCH=None
Change-Id: I90da348f37fc670971737cfc5ddcfb9c34096c4b
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/286169
Reviewed-by: Alec Berg <alecaberg@chromium.org>
Diffstat (limited to 'chip/mec1322/gpio.c')
-rw-r--r-- | chip/mec1322/gpio.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/chip/mec1322/gpio.c b/chip/mec1322/gpio.c index 256e674ca2..dd52fb809a 100644 --- a/chip/mec1322/gpio.c +++ b/chip/mec1322/gpio.c @@ -54,7 +54,7 @@ test_mockable int gpio_get_level(enum gpio_signal signal) if (mask == 0) return 0; - i = 31 - __builtin_clz(mask); + i = GPIO_MASK_TO_NUM(mask); val = MEC1322_GPIO_CTL(gpio_list[signal].port, i); return (val & (1 << 24)) ? 1 : 0; @@ -67,7 +67,7 @@ void gpio_set_level(enum gpio_signal signal, int value) if (mask == 0) return; - i = 31 - __builtin_clz(mask); + i = GPIO_MASK_TO_NUM(mask); if (value) MEC1322_GPIO_CTL(gpio_list[signal].port, i) |= (1 << 16); @@ -80,7 +80,7 @@ void gpio_set_flags_by_mask(uint32_t port, uint32_t mask, uint32_t flags) int i; uint32_t val; while (mask) { - i = 31 - __builtin_clz(mask); + i = GPIO_MASK_TO_NUM(mask); mask &= ~(1 << i); val = MEC1322_GPIO_CTL(port, i); @@ -147,7 +147,7 @@ int gpio_enable_interrupt(enum gpio_signal signal) if (gpio_list[signal].mask == 0) return EC_SUCCESS; - i = 31 - __builtin_clz(gpio_list[signal].mask); + i = GPIO_MASK_TO_NUM(gpio_list[signal].mask); port = gpio_list[signal].port; girq_id = int_map[port].girq_id; bit_id = (port - int_map[port].port_offset) * 8 + i; @@ -165,7 +165,7 @@ int gpio_disable_interrupt(enum gpio_signal signal) if (gpio_list[signal].mask == 0) return EC_SUCCESS; - i = 31 - __builtin_clz(gpio_list[signal].mask); + i = GPIO_MASK_TO_NUM(gpio_list[signal].mask); port = gpio_list[signal].port; girq_id = int_map[port].girq_id; bit_id = (port - int_map[port].port_offset) * 8 + i; |