diff options
author | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2013-04-08 11:36:13 +0200 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2013-06-04 21:03:56 +0900 |
commit | 11df28ab76cd9e98e3e0bbbff8648d0a02509507 (patch) | |
tree | 4d03553042583cb4d4d434ee8dcefe2026f07af9 /include/linux/platform_data/gpio-rcar.h | |
parent | 7e1092b5a264c484001b0cdd1f49bea7884e3366 (diff) | |
download | talos-obmc-linux-11df28ab76cd9e98e3e0bbbff8648d0a02509507.tar.gz talos-obmc-linux-11df28ab76cd9e98e3e0bbbff8648d0a02509507.zip |
gpio-rcar: Add RCAR_GP_PIN macro
Pins are numbered in the R-Car family documentation using a bank number
and a pin number in the bank. As the Linux pin number space is linear,
we need to flatten this by multiplying the bank number by 32 and adding
the pin number. The resulting number bear no directly visible
relationship to the documentation, making it error-prone.
Add a RCAR_GP_PIN macro to convert from the documentation pin number
space to the linear Linux space.
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
[horms+renesas@verge.net.au: non-trivial rebase on top of
"sh-pfc: r8a7779: Don't group USB OVC and PENC pins"]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'include/linux/platform_data/gpio-rcar.h')
-rw-r--r-- | include/linux/platform_data/gpio-rcar.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/platform_data/gpio-rcar.h b/include/linux/platform_data/gpio-rcar.h index 6c0027a3c370..2d8d69432813 100644 --- a/include/linux/platform_data/gpio-rcar.h +++ b/include/linux/platform_data/gpio-rcar.h @@ -24,4 +24,6 @@ struct gpio_rcar_config { unsigned has_both_edge_trigger:1; }; +#define RCAR_GP_PIN(bank, pin) (((bank) * 32) + (pin)) + #endif /* __GPIO_RCAR_H__ */ |