pinctrl: renesas: Add generic support for pin group subsets
It is fairly common for the pins in a pin group to be a subset of the pins in another pin group. Add a macro for defining a pin group that refers to a subset of an array of pins. This allows pin groups to share pin data, and thus save memory. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/b56c4257aee1eab698bae2cf7a08aa05775c0a77.1640269757.git.geert+renesas@glider.be
This commit is contained in:
parent
a0894be3e0
commit
49a7a27425
@ -58,6 +58,18 @@ struct sh_pfc_pin {
|
||||
}
|
||||
#define SH_PFC_PIN_GROUP(name) SH_PFC_PIN_GROUP_ALIAS(name, name)
|
||||
|
||||
/*
|
||||
* Define a pin group referring to a subset of an array of pins.
|
||||
*/
|
||||
#define SH_PFC_PIN_GROUP_SUBSET(_name, data, first, n) { \
|
||||
.name = #_name, \
|
||||
.pins = data##_pins + first, \
|
||||
.mux = data##_mux + first, \
|
||||
.nr_pins = n + \
|
||||
BUILD_BUG_ON_ZERO(first + n > ARRAY_SIZE(data##_pins)) + \
|
||||
BUILD_BUG_ON_ZERO(first + n > ARRAY_SIZE(data##_mux)), \
|
||||
}
|
||||
|
||||
struct sh_pfc_pin_group {
|
||||
const char *name;
|
||||
const unsigned int *pins;
|
||||
|
Loading…
x
Reference in New Issue
Block a user