diff mbox series

[v2,03/14] pinctrl: sh-pfc: Add generic bias register description

Message ID 1508167679-21155-4-git-send-email-geert+renesas@glider.be
State New
Headers show
Series pinctrl: sh-pfc: Add suspend/resume support | expand

Commit Message

Geert Uytterhoeven Oct. 16, 2017, 3:27 p.m. UTC
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>
---
v2:
  - Add Reviewed-by.
---
 drivers/pinctrl/sh-pfc/sh_pfc.h | 12 ++++++++++++
 1 file changed, 12 insertions(+)
diff mbox series

Patch

diff --git a/drivers/pinctrl/sh-pfc/sh_pfc.h b/drivers/pinctrl/sh-pfc/sh_pfc.h
index 8688b405e0813ad7..1914f4b5fef569b3 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;