pinctrl: cannonlake: 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-cannonlake.c

index 8078c77..f8a8b9b 100644 (file)
                .gpio_base = (g),                       \
        }
 
-#define CNL_COMMUNITY(b, s, e, ho, g)                  \
+#define CNL_COMMUNITY(b, s, e, g, v)                   \
        {                                               \
                .barno = (b),                           \
                .padown_offset = CNL_PAD_OWN,           \
                .padcfglock_offset = CNL_PADCFGLOCK,    \
-               .hostown_offset = (ho),                 \
+               .hostown_offset = CNL_##v##_HOSTSW_OWN, \
                .is_offset = CNL_GPI_IS,                \
                .ie_offset = CNL_GPI_IE,                \
                .pin_base = (s),                        \
        }
 
 #define CNL_LP_COMMUNITY(b, s, e, g)                   \
-       CNL_COMMUNITY(b, s, e, CNL_LP_HOSTSW_OWN, g)
+       CNL_COMMUNITY(b, s, e, g, LP)
 
 #define CNL_H_COMMUNITY(b, s, e, g)                    \
-       CNL_COMMUNITY(b, s, e, CNL_H_HOSTSW_OWN, g)
+       CNL_COMMUNITY(b, s, e, g, H)
 
 /* Cannon Lake-H */
 static const struct pinctrl_pin_desc cnlh_pins[] = {