gpio-rcar: Add RCAR_GP_PIN macro
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Mon, 8 Apr 2013 09:36:13 +0000 (11:36 +0200)
committerSimon Horman <horms+renesas@verge.net.au>
Tue, 4 Jun 2013 12:03:56 +0000 (21:03 +0900)
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>
include/linux/platform_data/gpio-rcar.h

index 6c0027a3c370c6b38837395a6656af118774caad..2d8d6943281376a72195f5363cc1126560764e43 100644 (file)
@@ -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__ */