Lines Matching defs:exar_gpio

37 	struct exar_gpio_chip *exar_gpio = gpiochip_get_data(chip);
40 mutex_lock(&exar_gpio->lock);
41 temp = readb(exar_gpio->regs + reg);
45 writeb(temp, exar_gpio->regs + reg);
46 mutex_unlock(&exar_gpio->lock);
52 struct exar_gpio_chip *exar_gpio = gpiochip_get_data(chip);
53 unsigned int addr = (offset + exar_gpio->first_pin) / 8 ?
55 unsigned int bit = (offset + exar_gpio->first_pin) % 8;
63 struct exar_gpio_chip *exar_gpio = gpiochip_get_data(chip);
66 mutex_lock(&exar_gpio->lock);
67 value = readb(exar_gpio->regs + reg);
68 mutex_unlock(&exar_gpio->lock);
75 struct exar_gpio_chip *exar_gpio = gpiochip_get_data(chip);
76 unsigned int addr = (offset + exar_gpio->first_pin) / 8 ?
78 unsigned int bit = (offset + exar_gpio->first_pin) % 8;
88 struct exar_gpio_chip *exar_gpio = gpiochip_get_data(chip);
89 unsigned int addr = (offset + exar_gpio->first_pin) / 8 ?
91 unsigned int bit = (offset + exar_gpio->first_pin) % 8;
99 struct exar_gpio_chip *exar_gpio = gpiochip_get_data(chip);
100 unsigned int addr = (offset + exar_gpio->first_pin) / 8 ?
102 unsigned int bit = (offset + exar_gpio->first_pin) % 8;
122 struct exar_gpio_chip *exar_gpio;
144 exar_gpio = devm_kzalloc(&pdev->dev, sizeof(*exar_gpio), GFP_KERNEL);
145 if (!exar_gpio)
148 mutex_init(&exar_gpio->lock);
156 sprintf(exar_gpio->name, "exar_gpio%d", index);
157 exar_gpio->gpio_chip.label = exar_gpio->name;
158 exar_gpio->gpio_chip.parent = &pdev->dev;
159 exar_gpio->gpio_chip.direction_output = exar_direction_output;
160 exar_gpio->gpio_chip.direction_input = exar_direction_input;
161 exar_gpio->gpio_chip.get_direction = exar_get_direction;
162 exar_gpio->gpio_chip.get = exar_get_value;
163 exar_gpio->gpio_chip.set = exar_set_value;
164 exar_gpio->gpio_chip.base = -1;
165 exar_gpio->gpio_chip.ngpio = ngpios;
166 exar_gpio->regs = p;
167 exar_gpio->index = index;
168 exar_gpio->first_pin = first_pin;
171 &exar_gpio->gpio_chip, exar_gpio);
175 platform_set_drvdata(pdev, exar_gpio);
182 mutex_destroy(&exar_gpio->lock);
188 struct exar_gpio_chip *exar_gpio = platform_get_drvdata(pdev);
190 ida_simple_remove(&ida_index, exar_gpio->index);
191 mutex_destroy(&exar_gpio->lock);