Lines Matching +full:4 +full:- +full:6

1 // SPDX-License-Identifier: GPL-2.0+
14 #include <dt-bindings/gpio/gpio.h>
28 #define pinmux(x) (&davinci_syscfg_regs->pinmux[x])
32 { pinmux(13), 8, 6 }, /* GP0[0] */
38 { pinmux(14), 8, 4 },
40 { pinmux(14), 8, 6 },
46 { pinmux(15), 8, 4 },
48 { pinmux(15), 8, 6 }, /* GP1[0] */
54 { pinmux(16), 8, 4 },
56 { pinmux(16), 8, 6 },
62 { pinmux(17), 8, 4 },
64 { pinmux(17), 8, 6 }, /* GP2[0] */
70 { pinmux(18), 8, 4 },
72 { pinmux(18), 8, 6 },
77 { pinmux(9), 8, 4 },
79 { pinmux(9), 8, 6 },
83 { pinmux(10), 8, 4 },
85 { pinmux(10), 8, 6 },
91 { pinmux(11), 8, 4 },
93 { pinmux(2), 8, 6 },
95 { pinmux(11), 8, 6 },
96 { pinmux(12), 8, 4 }, /* GP4[0] */
98 { pinmux(12), 8, 6 },
104 { pinmux(13), 8, 4 },
113 { pinmux(7), 8, 4 },
115 { pinmux(7), 8, 6 },
121 { pinmux(8), 8, 4 },
123 { pinmux(8), 8, 6 },
131 { pinmux(5), 8, 4 },
133 { pinmux(5), 8, 6 },
135 { pinmux(6), 8, 0 },
136 { pinmux(6), 8, 1 },
137 { pinmux(6), 8, 2 },
138 { pinmux(6), 8, 3 },
139 { pinmux(6), 8, 4 },
140 { pinmux(6), 8, 5 },
141 { pinmux(6), 8, 6 },
142 { pinmux(6), 8, 7 },
148 { pinmux(1), 8, 4 },
150 { pinmux(1), 8, 6 },
156 { pinmux(2), 8, 4 },
164 { pinmux(1), 8, 6 },
166 { pinmux(1), 8, 4 },
172 { pinmux(0), 8, 6 },
174 { pinmux(0), 8, 4 },
179 { pinmux(4), 8, 7 }, /* GP1[0] */
180 { pinmux(4), 8, 6 },
181 { pinmux(4), 8, 5 },
182 { pinmux(4), 8, 4 },
183 { pinmux(4), 8, 3 },
184 { pinmux(4), 8, 2 },
185 { pinmux(4), 4, 1 },
186 { pinmux(4), 4, 0 },
187 { pinmux(3), 4, 0 },
188 { pinmux(2), 4, 6 },
189 { pinmux(2), 4, 5 },
190 { pinmux(2), 4, 4 },
191 { pinmux(2), 4, 3 },
192 { pinmux(2), 4, 2 },
193 { pinmux(2), 4, 1 },
195 { pinmux(6), 8, 7 }, /* GP2[0] */
196 { pinmux(6), 8, 6 },
197 { pinmux(6), 8, 5 },
198 { pinmux(6), 8, 4 },
199 { pinmux(6), 8, 3 },
200 { pinmux(6), 8, 2 },
201 { pinmux(6), 8, 1 },
202 { pinmux(6), 8, 0 },
204 { pinmux(5), 8, 6 },
206 { pinmux(5), 8, 4 },
212 { pinmux(8), 8, 6 },
214 { pinmux(8), 8, 4 },
220 { pinmux(7), 8, 6 },
222 { pinmux(7), 8, 4 },
228 { pinmux(10), 8, 6 },
230 { pinmux(10), 8, 4 },
236 { pinmux(9), 8, 6 },
238 { pinmux(9), 8, 4 },
244 { pinmux(12), 8, 6 },
246 { pinmux(12), 8, 4 },
252 { pinmux(11), 8, 6 },
254 { pinmux(11), 8, 4 },
259 { pinmux(19), 8, 6 }, /* GP6[0] */
261 { pinmux(19), 8, 4 },
268 { pinmux(13), 8, 6 },
270 { pinmux(13), 8, 4 },
278 { pinmux(17), 8, 6 },
280 { pinmux(17), 8, 4 },
286 { pinmux(16), 8, 6 },
288 { pinmux(16), 8, 4 },
292 { pinmux(3), 4, 7 },
293 { pinmux(3), 4, 6 },
294 { pinmux(3), 4, 5 },
295 { pinmux(3), 4, 4 },
296 { pinmux(3), 4, 3 },
297 { pinmux(3), 4, 2 },
298 { pinmux(2), 4, 7 },
302 { pinmux(18), 8, 6 },
304 { pinmux(18), 8, 4 },
316 return -1; in gpio_request()
319 return -1; in gpio_request()
323 gpio_registry[gpio].name[GPIO_NAME_SIZE - 1] = 0; in gpio_request()
333 return -1; in gpio_free()
336 return -1; in gpio_free()
347 clrbits_le32(&bank->dir, 1U << GPIO_BIT(gpio)); in _gpio_direction_output()
354 setbits_le32(&bank->dir, 1U << GPIO_BIT(gpio)); in _gpio_direction_input()
361 ip = in_le32(&bank->in_data) & (1U << GPIO_BIT(gpio)); in _gpio_get_value()
368 bank->set_data = 1U << GPIO_BIT(gpio); in _gpio_set_value()
370 bank->clr_data = 1U << GPIO_BIT(gpio); in _gpio_set_value()
377 return in_le32(&bank->dir) & (1U << GPIO_BIT(gpio)); in _gpio_get_dir()
392 printf("% 4d: %s: %d [%c] %s\n", in gpio_info()
444 addr = ((unsigned long)(struct davinci_gpio *)bank->base) + in davinci_get_gpio_bank()
454 * Fetch the address based on GPIO, but only pass the masked low 32-bits in davinci_gpio_direction_input()
502 desc->offset = args->args[0]; in davinci_gpio_xlate()
504 if (args->args[1] & GPIO_ACTIVE_LOW) in davinci_gpio_xlate()
505 desc->flags = GPIOD_ACTIVE_LOW; in davinci_gpio_xlate()
507 desc->flags = 0; in davinci_gpio_xlate()
525 const void *fdt = gd->fdt_blob; in davinci_gpio_probe()
528 uc_priv->bank_name = plat->port_name; in davinci_gpio_probe()
529 uc_priv->gpio_count = fdtdec_get_int(fdt, node, "ti,ngpio", -1); in davinci_gpio_probe()
530 bank->base = (struct davinci_gpio *)plat->base; in davinci_gpio_probe()
535 { .compatible = "ti,dm6441-gpio" },
536 { .compatible = "ti,k2g-gpio" },
547 return -EINVAL; in davinci_gpio_ofdata_to_platdata()
549 plat->base = addr; in davinci_gpio_ofdata_to_platdata()