Lines Matching +full:8 +full:- +full:pin

1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * (C) Copyright 2010-2014
14 /* The pullup/pulldown state of a pin group */
21 /* Defines whether a pin group is tristated or in normal operation */
76 /* Defines a pin group cfg's low-power mode select */
82 PMUX_LPMD_NONE = -1,
87 /* Defines whether a pin group cfg's schmidt is enabled or not */
91 PMUX_SCHMT_NONE = -1,
96 /* Defines whether a pin group cfg's high-speed mode is enabled or not */
100 PMUX_HSM_NONE = -1,
105 * This defines the configuration for a pin, including the function assigned,
107 * you can call pinmux_config_pingroup() to configure a pin in one step. Also
111 u32 pingrp:16; /* pin group PMUX_PINGRP_... */
112 u32 func:8; /* function to assign PMUX_FUNC_... */
122 u32 od:2; /* open-drain or push-pull driver */
138 u32 hsm:2; /* high-speed mode enable */
148 /* Set the mux function for a pin group */
149 void pinmux_set_func(enum pmux_pingrp pin, enum pmux_func func);
151 /* Set the pull up/down feature for a pin group */
152 void pinmux_set_pullupdown(enum pmux_pingrp pin, enum pmux_pull pupd);
154 /* Set a pin group to tristate */
155 void pinmux_tristate_enable(enum pmux_pingrp pin);
157 /* Set a pin group to normal (non tristate) */
158 void pinmux_tristate_disable(enum pmux_pingrp pin);
161 /* Set a pin group as input or output */
162 void pinmux_set_io(enum pmux_pingrp pin, enum pmux_pin_io io);
166 * Configure a list of pin groups
188 #define PMUX_SLWF_NONE -1
192 #define PMUX_SLWR_NONE -1
196 #define PMUX_DRVUP_NONE -1
200 #define PMUX_DRVDN_NONE -1
203 * This defines the configuration for a pin group's pad control config
206 u32 drvgrp:16; /* pin group PMUX_DRVGRP_x */
209 u32 drvup:8; /* pull-up drive strength */
210 u32 drvdn:8; /* pull-down drive strength */
212 u32 lpmd:3; /* low-power mode selection */
218 u32 hsm:2; /* high-speed mode enable */
235 u32 grp:16; /* pin group PMUX_MIPIPADCTRLGRP_x */
236 u32 func:8; /* function to assign PMUX_FUNC_... */