Lines Matching refs:gpio
17 static int gpio_direction(unsigned gpio, in gpio_direction() argument
26 val |= 1 << gpio; in gpio_direction()
28 val &= ~(1 << gpio); in gpio_direction()
35 int gpio_set_value(unsigned gpio, int value) in gpio_set_value() argument
40 writel(1 << gpio, ®s->gpiodata[DATA_REG_ADDR(gpio)]); in gpio_set_value()
42 writel(0, ®s->gpiodata[DATA_REG_ADDR(gpio)]); in gpio_set_value()
47 int gpio_get_value(unsigned gpio) in gpio_get_value() argument
52 val = readl(®s->gpiodata[DATA_REG_ADDR(gpio)]); in gpio_get_value()
57 int gpio_request(unsigned gpio, const char *label) in gpio_request() argument
59 if (gpio >= SPEAR_GPIO_COUNT) in gpio_request()
65 int gpio_free(unsigned gpio) in gpio_free() argument
70 void gpio_toggle_value(unsigned gpio) in gpio_toggle_value() argument
72 gpio_set_value(gpio, !gpio_get_value(gpio)); in gpio_toggle_value()
75 int gpio_direction_input(unsigned gpio) in gpio_direction_input() argument
77 return gpio_direction(gpio, GPIO_DIRECTION_IN); in gpio_direction_input()
80 int gpio_direction_output(unsigned gpio, int value) in gpio_direction_output() argument
82 int ret = gpio_direction(gpio, GPIO_DIRECTION_OUT); in gpio_direction_output()
87 gpio_set_value(gpio, value); in gpio_direction_output()