pinctrl: amd: Define and use AMD_PINS macro
authorBasavaraj Natikar <Basavaraj.Natikar@amd.com>
Wed, 1 Jun 2022 15:28:58 +0000 (20:58 +0530)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 15 Jun 2022 13:54:20 +0000 (15:54 +0200)
AMD pingroup can be extended to support multi-function pins.
Hence define and use a macro "AMD_PINS" to represent larger
number of pins.

Signed-off-by: Basavaraj Natikar <Basavaraj.Natikar@amd.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20220601152900.1012813-5-Basavaraj.Natikar@amd.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/pinctrl-amd.h

index ac3ebfaadb7e3886fa9c0b50102fde9f4a3b961c..e2523738fe51af74088b5aa0132ee441336ac152 100644 (file)
@@ -282,21 +282,14 @@ static const struct pinctrl_pin_desc kerncz_pins[] = {
        PINCTRL_PIN(183, "GPIO_183"),
 };
 
-static const unsigned i2c0_pins[] = {145, 146};
-static const unsigned i2c1_pins[] = {147, 148};
-static const unsigned i2c2_pins[] = {113, 114};
-static const unsigned i2c3_pins[] = {19, 20};
-
-static const unsigned uart0_pins[] = {135, 136, 137, 138, 139};
-static const unsigned uart1_pins[] = {140, 141, 142, 143, 144};
-
+#define AMD_PINS(...) (const unsigned int []){__VA_ARGS__}
 static const struct pingroup kerncz_groups[] = {
-       PINCTRL_PINGROUP("i2c0", i2c0_pins, 2),
-       PINCTRL_PINGROUP("i2c1", i2c1_pins, 2),
-       PINCTRL_PINGROUP("i2c2", i2c2_pins, 2),
-       PINCTRL_PINGROUP("i2c3", i2c3_pins, 2),
-       PINCTRL_PINGROUP("uart0", uart0_pins, 5),
-       PINCTRL_PINGROUP("uart1", uart1_pins, 5),
+       PINCTRL_PINGROUP("i2c0", AMD_PINS(145, 146), 2),
+       PINCTRL_PINGROUP("i2c1", AMD_PINS(147, 148), 2),
+       PINCTRL_PINGROUP("i2c2", AMD_PINS(113, 114), 2),
+       PINCTRL_PINGROUP("i2c3", AMD_PINS(19, 20), 2),
+       PINCTRL_PINGROUP("uart0", AMD_PINS(135, 136, 137, 138, 139), 5),
+       PINCTRL_PINGROUP("uart1", AMD_PINS(140, 141, 142, 143, 144), 5),
 };
 
 #endif