• Home
  • Raw
  • Download

Lines Matching refs:gpio_ext

55 	struct netxbig_gpio_ext	*gpio_ext;  member
68 static void gpio_ext_set_addr(struct netxbig_gpio_ext *gpio_ext, int addr) in gpio_ext_set_addr() argument
72 for (pin = 0; pin < gpio_ext->num_addr; pin++) in gpio_ext_set_addr()
73 gpiod_set_value(gpio_ext->addr[pin], (addr >> pin) & 1); in gpio_ext_set_addr()
76 static void gpio_ext_set_data(struct netxbig_gpio_ext *gpio_ext, int data) in gpio_ext_set_data() argument
80 for (pin = 0; pin < gpio_ext->num_data; pin++) in gpio_ext_set_data()
81 gpiod_set_value(gpio_ext->data[pin], (data >> pin) & 1); in gpio_ext_set_data()
84 static void gpio_ext_enable_select(struct netxbig_gpio_ext *gpio_ext) in gpio_ext_enable_select() argument
87 gpiod_set_value(gpio_ext->enable, 0); in gpio_ext_enable_select()
88 gpiod_set_value(gpio_ext->enable, 1); in gpio_ext_enable_select()
91 static void gpio_ext_set_value(struct netxbig_gpio_ext *gpio_ext, in gpio_ext_set_value() argument
97 gpio_ext_set_addr(gpio_ext, addr); in gpio_ext_set_value()
98 gpio_ext_set_data(gpio_ext, value); in gpio_ext_set_value()
99 gpio_ext_enable_select(gpio_ext); in gpio_ext_set_value()
108 struct netxbig_gpio_ext *gpio_ext; member
160 gpio_ext_set_value(led_dat->gpio_ext, led_dat->mode_addr, mode_val); in netxbig_led_blink_set()
193 gpio_ext_set_value(led_dat->gpio_ext, led_dat->mode_addr, mode_val); in netxbig_led_set()
201 gpio_ext_set_value(led_dat->gpio_ext, in netxbig_led_set()
246 gpio_ext_set_value(led_dat->gpio_ext, led_dat->mode_addr, mode_val); in sata_store()
282 led_dat->gpio_ext = pdata->gpio_ext; in create_netxbig_led()
326 struct netxbig_gpio_ext *gpio_ext = data; in netxbig_gpio_ext_remove() local
329 for (i = 0; i < gpio_ext->num_addr; i++) in netxbig_gpio_ext_remove()
330 gpiod_put(gpio_ext->addr[i]); in netxbig_gpio_ext_remove()
331 for (i = 0; i < gpio_ext->num_data; i++) in netxbig_gpio_ext_remove()
332 gpiod_put(gpio_ext->data[i]); in netxbig_gpio_ext_remove()
333 gpiod_put(gpio_ext->enable); in netxbig_gpio_ext_remove()
348 struct netxbig_gpio_ext *gpio_ext) in netxbig_gpio_ext_get() argument
382 gpio_ext->addr = addr; in netxbig_gpio_ext_get()
383 gpio_ext->num_addr = num_addr; in netxbig_gpio_ext_get()
404 gpio_ext->data = data; in netxbig_gpio_ext_get()
405 gpio_ext->num_data = num_data; in netxbig_gpio_ext_get()
414 gpio_ext->enable = gpiod; in netxbig_gpio_ext_get()
416 return devm_add_action_or_reset(dev, netxbig_gpio_ext_remove, gpio_ext); in netxbig_gpio_ext_get()
427 struct netxbig_gpio_ext *gpio_ext; in netxbig_leds_get_of_pdata() local
448 gpio_ext = devm_kzalloc(dev, sizeof(*gpio_ext), GFP_KERNEL); in netxbig_leds_get_of_pdata()
449 if (!gpio_ext) { in netxbig_leds_get_of_pdata()
454 ret = netxbig_gpio_ext_get(dev, gpio_ext_dev, gpio_ext); in netxbig_leds_get_of_pdata()
458 pdata->gpio_ext = gpio_ext; in netxbig_leds_get_of_pdata()