aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/sh-pfc/sh_pfc.h
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert+renesas@glider.be>2017-09-29 14:16:14 +0200
committerGeert Uytterhoeven <geert+renesas@glider.be>2017-10-20 11:37:00 +0200
commitbeaa34d9080f20c9f0994071703c5d5c012afb56 (patch)
treefb49b8486e9270873fee661d867d376f664082cc /drivers/pinctrl/sh-pfc/sh_pfc.h
parentpinctrl: sh-pfc: Drop width parameter of sh_pfc_{read,write}_reg() (diff)
downloadlinux-dev-beaa34d9080f20c9f0994071703c5d5c012afb56.tar.xz
linux-dev-beaa34d9080f20c9f0994071703c5d5c012afb56.zip
pinctrl: sh-pfc: Add generic bias register description
Add a generic way to describe bias registers (for pull-up/down control), like is already done for config and drive registers. This makes the sh-pfc core code aware of these registers, which will ease introducing suspend/resume support later. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'drivers/pinctrl/sh-pfc/sh_pfc.h')
-rw-r--r--drivers/pinctrl/sh-pfc/sh_pfc.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/pinctrl/sh-pfc/sh_pfc.h b/drivers/pinctrl/sh-pfc/sh_pfc.h
index 8688b405e081..1914f4b5fef5 100644
--- a/drivers/pinctrl/sh-pfc/sh_pfc.h
+++ b/drivers/pinctrl/sh-pfc/sh_pfc.h
@@ -148,6 +148,17 @@ struct pinmux_drive_reg {
.reg = r, \
.fields =
+struct pinmux_bias_reg {
+ u32 puen; /* Pull-enable or pull-up control register */
+ u32 pud; /* Pull-up/down control register (optional) */
+ const u16 pins[32];
+};
+
+#define PINMUX_BIAS_REG(name1, r1, name2, r2) \
+ .puen = r1, \
+ .pud = r2, \
+ .pins =
+
struct pinmux_data_reg {
u32 reg;
u8 reg_width;
@@ -245,6 +256,7 @@ struct sh_pfc_soc_info {
const struct pinmux_cfg_reg *cfg_regs;
const struct pinmux_drive_reg *drive_regs;
+ const struct pinmux_bias_reg *bias_regs;
const struct pinmux_data_reg *data_regs;
const u16 *pinmux_data;