Lines Matching refs:pin_range
1799 struct gpio_pin_range *pin_range; in gpiochip_add_pingroup_range() local
1803 pin_range = kzalloc(sizeof(*pin_range), GFP_KERNEL); in gpiochip_add_pingroup_range()
1804 if (!pin_range) { in gpiochip_add_pingroup_range()
1810 pin_range->range.id = gpio_offset; in gpiochip_add_pingroup_range()
1811 pin_range->range.gc = gc; in gpiochip_add_pingroup_range()
1812 pin_range->range.name = gc->label; in gpiochip_add_pingroup_range()
1813 pin_range->range.base = gdev->base + gpio_offset; in gpiochip_add_pingroup_range()
1814 pin_range->pctldev = pctldev; in gpiochip_add_pingroup_range()
1817 &pin_range->range.pins, in gpiochip_add_pingroup_range()
1818 &pin_range->range.npins); in gpiochip_add_pingroup_range()
1820 kfree(pin_range); in gpiochip_add_pingroup_range()
1824 pinctrl_add_gpio_range(pctldev, &pin_range->range); in gpiochip_add_pingroup_range()
1827 gpio_offset, gpio_offset + pin_range->range.npins - 1, in gpiochip_add_pingroup_range()
1830 list_add_tail(&pin_range->node, &gdev->pin_ranges); in gpiochip_add_pingroup_range()
1857 struct gpio_pin_range *pin_range; in gpiochip_add_pin_range() local
1861 pin_range = kzalloc(sizeof(*pin_range), GFP_KERNEL); in gpiochip_add_pin_range()
1862 if (!pin_range) { in gpiochip_add_pin_range()
1868 pin_range->range.id = gpio_offset; in gpiochip_add_pin_range()
1869 pin_range->range.gc = gc; in gpiochip_add_pin_range()
1870 pin_range->range.name = gc->label; in gpiochip_add_pin_range()
1871 pin_range->range.base = gdev->base + gpio_offset; in gpiochip_add_pin_range()
1872 pin_range->range.pin_base = pin_offset; in gpiochip_add_pin_range()
1873 pin_range->range.npins = npins; in gpiochip_add_pin_range()
1874 pin_range->pctldev = pinctrl_find_and_add_gpio_range(pinctl_name, in gpiochip_add_pin_range()
1875 &pin_range->range); in gpiochip_add_pin_range()
1876 if (IS_ERR(pin_range->pctldev)) { in gpiochip_add_pin_range()
1877 ret = PTR_ERR(pin_range->pctldev); in gpiochip_add_pin_range()
1879 kfree(pin_range); in gpiochip_add_pin_range()
1887 list_add_tail(&pin_range->node, &gdev->pin_ranges); in gpiochip_add_pin_range()
1899 struct gpio_pin_range *pin_range, *tmp; in gpiochip_remove_pin_ranges() local
1902 list_for_each_entry_safe(pin_range, tmp, &gdev->pin_ranges, node) { in gpiochip_remove_pin_ranges()
1903 list_del(&pin_range->node); in gpiochip_remove_pin_ranges()
1904 pinctrl_remove_gpio_range(pin_range->pctldev, in gpiochip_remove_pin_ranges()
1905 &pin_range->range); in gpiochip_remove_pin_ranges()
1906 kfree(pin_range); in gpiochip_remove_pin_ranges()