Merge tag 'pinctrl-v5.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
[sfrench/cifs-2.6.git] / drivers / pinctrl / meson / pinctrl-meson.h
index adab4ea078f9835f1f2a500481474bcb6c82fcff..c696f3241a361ccb4efb387ff9e5f608f67b8c8f 100644 (file)
@@ -65,9 +65,20 @@ enum meson_reg_type {
        REG_DIR,
        REG_OUT,
        REG_IN,
+       REG_DS,
        NUM_REG,
 };
 
+/**
+ * enum meson_pinconf_drv - value of drive-strength supported
+ */
+enum meson_pinconf_drv {
+       MESON_PINCONF_DRV_500UA,
+       MESON_PINCONF_DRV_2500UA,
+       MESON_PINCONF_DRV_3000UA,
+       MESON_PINCONF_DRV_4000UA,
+};
+
 /**
  * struct meson bank
  *
@@ -126,7 +137,8 @@ struct meson_pinctrl {
                .num_groups = ARRAY_SIZE(fn ## _groups),                \
        }
 
-#define BANK(n, f, l, fi, li, per, peb, pr, pb, dr, db, or, ob, ir, ib)        \
+#define BANK_DS(n, f, l, fi, li, per, peb, pr, pb, dr, db, or, ob, ir, ib,     \
+               dsr, dsb)                                                      \
        {                                                               \
                .name           = n,                                    \
                .first          = f,                                    \
@@ -139,9 +151,13 @@ struct meson_pinctrl {
                        [REG_DIR]       = { dr, db },                   \
                        [REG_OUT]       = { or, ob },                   \
                        [REG_IN]        = { ir, ib },                   \
+                       [REG_DS]        = { dsr, dsb },                 \
                },                                                      \
         }
 
+#define BANK(n, f, l, fi, li, per, peb, pr, pb, dr, db, or, ob, ir, ib) \
+       BANK_DS(n, f, l, fi, li, per, peb, pr, pb, dr, db, or, ob, ir, ib, 0, 0)
+
 #define MESON_PIN(x) PINCTRL_PIN(x, #x)
 
 /* Common pmx functions */