Lines Matching refs:pin

76 amdgpio_is_pin_output(struct amdgpio_softc *sc, uint32_t pin)  in amdgpio_is_pin_output()  argument
84 reg = AMDGPIO_PIN_REGISTER(pin); in amdgpio_is_pin_output()
122 amdgpio_valid_pin(struct amdgpio_softc *sc, int pin) in amdgpio_valid_pin() argument
124 dprintf("pin %d\n", pin); in amdgpio_valid_pin()
128 if ((sc->sc_gpio_pins[pin].gp_pin == pin) && in amdgpio_valid_pin()
129 (sc->sc_gpio_pins[pin].gp_caps != 0)) in amdgpio_valid_pin()
136 amdgpio_pin_getname(device_t dev, uint32_t pin, char *name) in amdgpio_pin_getname() argument
140 dprintf("pin %d\n", pin); in amdgpio_pin_getname()
143 if (!amdgpio_valid_pin(sc, pin)) in amdgpio_pin_getname()
147 snprintf(name, GPIOMAXNAME, "%s", sc->sc_gpio_pins[pin].gp_name); in amdgpio_pin_getname()
150 dprintf("pin %d name %s\n", pin, name); in amdgpio_pin_getname()
156 amdgpio_pin_getcaps(device_t dev, uint32_t pin, uint32_t *caps) in amdgpio_pin_getcaps() argument
162 dprintf("pin %d\n", pin); in amdgpio_pin_getcaps()
163 if (!amdgpio_valid_pin(sc, pin)) in amdgpio_pin_getcaps()
166 *caps = sc->sc_gpio_pins[pin].gp_caps; in amdgpio_pin_getcaps()
168 dprintf("pin %d caps 0x%x\n", pin, *caps); in amdgpio_pin_getcaps()
174 amdgpio_pin_getflags(device_t dev, uint32_t pin, uint32_t *flags) in amdgpio_pin_getflags() argument
180 dprintf("pin %d\n", pin); in amdgpio_pin_getflags()
181 if (!amdgpio_valid_pin(sc, pin)) in amdgpio_pin_getflags()
186 *flags = sc->sc_gpio_pins[pin].gp_flags; in amdgpio_pin_getflags()
188 dprintf("pin %d flags 0x%x\n", pin, *flags); in amdgpio_pin_getflags()
196 amdgpio_pin_setflags(device_t dev, uint32_t pin, uint32_t flags) in amdgpio_pin_setflags() argument
203 dprintf("pin %d flags 0x%x\n", pin, flags); in amdgpio_pin_setflags()
204 if (!amdgpio_valid_pin(sc, pin)) in amdgpio_pin_setflags()
224 reg = AMDGPIO_PIN_REGISTER(pin); in amdgpio_pin_setflags()
229 sc->sc_gpio_pins[pin].gp_flags = GPIO_PIN_INPUT; in amdgpio_pin_setflags()
232 sc->sc_gpio_pins[pin].gp_flags = GPIO_PIN_OUTPUT; in amdgpio_pin_setflags()
238 pin, flags, val, sc->sc_gpio_pins[pin].gp_flags); in amdgpio_pin_setflags()
246 amdgpio_pin_get(device_t dev, uint32_t pin, unsigned int *value) in amdgpio_pin_get() argument
253 dprintf("pin %d\n", pin); in amdgpio_pin_get()
254 if (!amdgpio_valid_pin(sc, pin)) in amdgpio_pin_get()
261 reg = AMDGPIO_PIN_REGISTER(pin); in amdgpio_pin_get()
264 if ((sc->sc_gpio_pins[pin].gp_flags & GPIO_PIN_OUTPUT) != 0) { in amdgpio_pin_get()
276 dprintf("pin %d value 0x%x\n", pin, *value); in amdgpio_pin_get()
284 amdgpio_pin_set(device_t dev, uint32_t pin, unsigned int value) in amdgpio_pin_set() argument
291 dprintf("pin %d value 0x%x\n", pin, value); in amdgpio_pin_set()
292 if (!amdgpio_valid_pin(sc, pin)) in amdgpio_pin_set()
295 if (!amdgpio_is_pin_output(sc, pin)) in amdgpio_pin_set()
300 reg = AMDGPIO_PIN_REGISTER(pin); in amdgpio_pin_set()
310 dprintf("pin %d value 0x%x val 0x%x\n", pin, value, val); in amdgpio_pin_set()
318 amdgpio_pin_toggle(device_t dev, uint32_t pin) in amdgpio_pin_toggle() argument
325 dprintf("pin %d\n", pin); in amdgpio_pin_toggle()
326 if (!amdgpio_valid_pin(sc, pin)) in amdgpio_pin_toggle()
329 if (!amdgpio_is_pin_output(sc, pin)) in amdgpio_pin_toggle()
335 reg = AMDGPIO_PIN_REGISTER(pin); in amdgpio_pin_toggle()
337 dprintf("pin %d value before 0x%x\n", pin, val); in amdgpio_pin_toggle()
339 dprintf("pin %d value after 0x%x\n", pin, val); in amdgpio_pin_toggle()
366 int i, pin, bank; in amdgpio_attach() local
400 pin = kernzp_pins[i].pin_num; in amdgpio_attach()
401 bank = pin/AMD_GPIO_PINS_PER_BANK; in amdgpio_attach()
402 snprintf(sc->sc_gpio_pins[pin].gp_name, GPIOMAXNAME, "%s%d_%s", in amdgpio_attach()
404 sc->sc_gpio_pins[pin].gp_pin = pin; in amdgpio_attach()
405 sc->sc_gpio_pins[pin].gp_caps = AMDGPIO_DEFAULT_CAPS; in amdgpio_attach()
406 sc->sc_gpio_pins[pin].gp_flags = in amdgpio_attach()
407 amdgpio_is_pin_output(sc, pin) ? in amdgpio_attach()