1/*- 2 * Copyright (c) 2009, Oleksandr Tymoshenko <gonzo@FreeBSD.org> 3 * Copyright (c) 2009, Luiz Otavio O Souza. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 17 unchanged lines hidden (view full) --- 26 * SUCH DAMAGE. 27 */ 28 29/* 30 * GPIO driver for AR71xx 31 */ 32 33#include <sys/cdefs.h> |
34__FBSDID("$FreeBSD: head/sys/mips/atheros/ar71xx_gpio.c 249449 2013-04-13 21:21:13Z dim $"); |
35 36#include <sys/param.h> 37#include <sys/systm.h> 38#include <sys/bus.h> 39 40#include <sys/kernel.h> 41#include <sys/module.h> 42#include <sys/rman.h> --- 171 unchanged lines hidden (view full) --- 214 for (i = 0; i < sc->gpio_npins; i++) { 215 if (sc->gpio_pins[i].gp_pin == pin) 216 break; 217 } 218 219 if (i >= sc->gpio_npins) 220 return (EINVAL); 221 |
222 /* Check for unwanted flags. */ 223 if ((flags & sc->gpio_pins[i].gp_caps) != flags) |
224 return (EINVAL); 225 226 /* Can't mix input/output together */ 227 if ((flags & (GPIO_PIN_INPUT|GPIO_PIN_OUTPUT)) == 228 (GPIO_PIN_INPUT|GPIO_PIN_OUTPUT)) 229 return (EINVAL); 230 231 ar71xx_gpio_pin_configure(sc, &sc->gpio_pins[i], flags); --- 235 unchanged lines hidden --- |