Lines Matching refs:pin_range
1791 struct gpio_pin_range *pin_range; in gpiochip_add_pingroup_range() local
1795 pin_range = kzalloc(sizeof(*pin_range), GFP_KERNEL); in gpiochip_add_pingroup_range()
1796 if (!pin_range) { in gpiochip_add_pingroup_range()
1802 pin_range->range.id = gpio_offset; in gpiochip_add_pingroup_range()
1803 pin_range->range.gc = gc; in gpiochip_add_pingroup_range()
1804 pin_range->range.name = gc->label; in gpiochip_add_pingroup_range()
1805 pin_range->range.base = gdev->base + gpio_offset; in gpiochip_add_pingroup_range()
1806 pin_range->pctldev = pctldev; in gpiochip_add_pingroup_range()
1809 &pin_range->range.pins, in gpiochip_add_pingroup_range()
1810 &pin_range->range.npins); in gpiochip_add_pingroup_range()
1812 kfree(pin_range); in gpiochip_add_pingroup_range()
1816 pinctrl_add_gpio_range(pctldev, &pin_range->range); in gpiochip_add_pingroup_range()
1819 gpio_offset, gpio_offset + pin_range->range.npins - 1, in gpiochip_add_pingroup_range()
1822 list_add_tail(&pin_range->node, &gdev->pin_ranges); in gpiochip_add_pingroup_range()
1849 struct gpio_pin_range *pin_range; in gpiochip_add_pin_range() local
1853 pin_range = kzalloc(sizeof(*pin_range), GFP_KERNEL); in gpiochip_add_pin_range()
1854 if (!pin_range) { in gpiochip_add_pin_range()
1860 pin_range->range.id = gpio_offset; in gpiochip_add_pin_range()
1861 pin_range->range.gc = gc; in gpiochip_add_pin_range()
1862 pin_range->range.name = gc->label; in gpiochip_add_pin_range()
1863 pin_range->range.base = gdev->base + gpio_offset; in gpiochip_add_pin_range()
1864 pin_range->range.pin_base = pin_offset; in gpiochip_add_pin_range()
1865 pin_range->range.npins = npins; in gpiochip_add_pin_range()
1866 pin_range->pctldev = pinctrl_find_and_add_gpio_range(pinctl_name, in gpiochip_add_pin_range()
1867 &pin_range->range); in gpiochip_add_pin_range()
1868 if (IS_ERR(pin_range->pctldev)) { in gpiochip_add_pin_range()
1869 ret = PTR_ERR(pin_range->pctldev); in gpiochip_add_pin_range()
1871 kfree(pin_range); in gpiochip_add_pin_range()
1879 list_add_tail(&pin_range->node, &gdev->pin_ranges); in gpiochip_add_pin_range()
1891 struct gpio_pin_range *pin_range, *tmp; in gpiochip_remove_pin_ranges() local
1894 list_for_each_entry_safe(pin_range, tmp, &gdev->pin_ranges, node) { in gpiochip_remove_pin_ranges()
1895 list_del(&pin_range->node); in gpiochip_remove_pin_ranges()
1896 pinctrl_remove_gpio_range(pin_range->pctldev, in gpiochip_remove_pin_ranges()
1897 &pin_range->range); in gpiochip_remove_pin_ranges()
1898 kfree(pin_range); in gpiochip_remove_pin_ranges()