Lines Matching refs:gpio

47 static struct xilinx_gpio_priv *gpio_get_controller(unsigned gpio)  in gpio_get_controller()  argument
54 if (gpio >= priv->gpio_min && gpio <= priv->gpio_max) { in gpio_get_controller()
65 static char *get_name(unsigned gpio) in get_name() argument
72 priv = gpio_get_controller(gpio); in get_name()
74 gpio_priv = gpio - priv->gpio_min; in get_name()
83 static int gpio_get_output_value(unsigned gpio) in gpio_get_output_value() argument
86 struct xilinx_gpio_priv *priv = gpio_get_controller(gpio); in gpio_get_output_value()
89 gpio_priv = gpio - priv->gpio_min; in gpio_get_output_value()
100 static int gpio_get_input_value(unsigned gpio) in gpio_get_input_value() argument
104 struct xilinx_gpio_priv *priv = gpio_get_controller(gpio); in gpio_get_input_value()
108 gpio_priv = gpio - priv->gpio_min; in gpio_get_input_value()
120 static int gpio_set_direction(unsigned gpio, enum gpio_direction direction) in gpio_set_direction() argument
124 struct xilinx_gpio_priv *priv = gpio_get_controller(gpio); in gpio_set_direction()
130 gpio_priv = gpio - priv->gpio_min; in gpio_set_direction()
147 static int gpio_get_direction(unsigned gpio) in gpio_get_direction() argument
151 struct xilinx_gpio_priv *priv = gpio_get_controller(gpio); in gpio_get_direction()
155 gpio_priv = gpio - priv->gpio_min; in gpio_get_direction()
172 int gpio_get_value(unsigned gpio) in gpio_get_value() argument
176 if (gpio_get_direction(gpio) == GPIO_DIRECTION_OUT) in gpio_get_value()
177 val = gpio_get_output_value(gpio); in gpio_get_value()
179 val = gpio_get_input_value(gpio); in gpio_get_value()
185 static int gpio_set_output_value(unsigned gpio, int value) in gpio_set_output_value() argument
189 struct xilinx_gpio_priv *priv = gpio_get_controller(gpio); in gpio_set_output_value()
193 gpio_priv = gpio - priv->gpio_min; in gpio_set_output_value()
211 int gpio_set_value(unsigned gpio, int value) in gpio_set_value() argument
213 if (gpio_get_direction(gpio) == GPIO_DIRECTION_OUT) in gpio_set_value()
214 return gpio_set_output_value(gpio, value); in gpio_set_value()
220 int gpio_direction_input(unsigned gpio) in gpio_direction_input() argument
223 return gpio_set_direction(gpio, GPIO_DIRECTION_IN); in gpio_direction_input()
227 int gpio_direction_output(unsigned gpio, int value) in gpio_direction_output() argument
229 int ret = gpio_set_direction(gpio, GPIO_DIRECTION_OUT); in gpio_direction_output()
236 return gpio_set_output_value(gpio, value); in gpio_direction_output()
242 unsigned gpio; in gpio_info() local
252 for (gpio = priv->gpio_min; gpio <= priv->gpio_max; gpio++) { in gpio_info()
253 printf("GPIO_%d:\t%s is an ", gpio, get_name(gpio)); in gpio_info()
254 if (gpio_get_direction(gpio) == GPIO_DIRECTION_OUT) in gpio_info()
256 gpio_get_output_value(gpio)); in gpio_info()
259 gpio_get_input_value(gpio)); in gpio_info()
264 int gpio_request(unsigned gpio, const char *label) in gpio_request() argument
269 if (gpio >= xilinx_gpio_max) in gpio_request()
272 priv = gpio_get_controller(gpio); in gpio_request()
274 gpio_priv = gpio - priv->gpio_min; in gpio_request()
288 int gpio_free(unsigned gpio) in gpio_free() argument
293 if (gpio >= xilinx_gpio_max) in gpio_free()
296 priv = gpio_get_controller(gpio); in gpio_free()
298 gpio_priv = gpio - priv->gpio_min; in gpio_free()