pinctrl: icelake: Deduplicate COMMUNITY macro code
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 18 Oct 2022 22:00:55 +0000 (01:00 +0300)
committerAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 26 Oct 2022 11:54:11 +0000 (14:54 +0300)
Define a common COMMUNITY macro and supply a variant to it.
This removes some verbosity in macros.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
drivers/pinctrl/intel/pinctrl-icelake.c

index 27c248c..84a56d9 100644 (file)
                .gpio_base = (g),                       \
        }
 
-#define ICL_COMMUNITY(b, s, e, ie, g)                  \
+#define ICL_COMMUNITY(b, s, e, g, v)                   \
        {                                               \
                .barno = (b),                           \
                .padown_offset = ICL_PAD_OWN,           \
                .padcfglock_offset = ICL_PADCFGLOCK,    \
                .hostown_offset = ICL_HOSTSW_OWN,       \
                .is_offset = ICL_GPI_IS,                \
-               .ie_offset = (ie),                      \
+               .ie_offset = ICL_##v##_GPI_IE,          \
                .pin_base = (s),                        \
                .npins = ((e) - (s) + 1),               \
                .gpps = (g),                            \
        }
 
 #define ICL_LP_COMMUNITY(b, s, e, g)                   \
-       ICL_COMMUNITY(b, s, e, ICL_LP_GPI_IE, g)
+       ICL_COMMUNITY(b, s, e, g, LP)
 
 #define ICL_N_COMMUNITY(b, s, e, g)                    \
-       ICL_COMMUNITY(b, s, e, ICL_N_GPI_IE, g)
+       ICL_COMMUNITY(b, s, e, g, N)
 
 /* Ice Lake-LP */
 static const struct pinctrl_pin_desc icllp_pins[] = {