gpio: msic: Fix calculating register address in msic_gpio_to_oreg()
authorAxel Lin <axel.lin@gmail.com>
Tue, 24 Jul 2012 10:35:16 +0000 (18:35 +0800)
committerLinus Walleij <linus.walleij@linaro.org>
Sat, 4 Aug 2012 23:09:50 +0000 (01:09 +0200)
commitf7da0bdbf585c0404fc89901ee4bdb806e70530f
treef87578041e5de9e4b4e79f36c171f3b693ba85f6
parent8abdd2d2d873ece35a201c2e05af7b6998cf0dca
gpio: msic: Fix calculating register address in msic_gpio_to_oreg()

In the case offset is 20 ... 23, the equation to get the register should be:
        INTEL_MSIC_GPIO1HV0CTLO - offset + 20

With above equation, we can get below mapping between offset and the register:
        offset is 20: INTEL_MSIC_GPIO1HV0CTLO
        offset is 21: INTEL_MSIC_GPIO1HV1CTLO
        offset is 22: INTEL_MSIC_GPIO1HV2CTLO
        offset is 23: INTEL_MSIC_GPIO1HV3CTLO

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-msic.c