From 97e1f830b4a8e948673433bfa6d81586204b6ee2 Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Mon, 4 Aug 2014 15:40:50 -0500 Subject: [PATCH] tegra: correct gpio_index_to_port() calculation The gpio_index_to_port() incorrectly was dividing by GPIO_PORTS_PER_BANK on a value including the bit number. After masking off the BANK offset just divide by the number of gpios in a port to get the port offset. BUG=chrome-os-partner:29981 BRANCH=None TEST=Built and ran through to depthcharge. Printed bank, port, and bit numbers for validation. Change-Id: I8bb50e922c9fd7c0a1c247ba95394f6deb9f1533 Signed-off-by: Aaron Durbin Reviewed-on: https://chromium-review.googlesource.com/210909 Reviewed-by: Furquan Shaikh --- src/soc/nvidia/tegra/gpio.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/soc/nvidia/tegra/gpio.h b/src/soc/nvidia/tegra/gpio.h index da8a4dad71..2ad3ab3e5f 100644 --- a/src/soc/nvidia/tegra/gpio.h +++ b/src/soc/nvidia/tegra/gpio.h @@ -90,7 +90,7 @@ static inline int gpio_index_to_bank(int index) static inline int gpio_index_to_port(int index) { - return (index % GPIO_GPIOS_PER_BANK) / GPIO_PORTS_PER_BANK; + return (index % GPIO_GPIOS_PER_BANK) / GPIO_GPIOS_PER_PORT; } static inline int gpio_to_bit(int index)