1/* 2 * Coldfire generic GPIO support. 3 * 4 * (C) Copyright 2009, Steven King <sfking@fdwdc.com> 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; version 2 of the License. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 */ 15 16#ifndef mcfgpio_h 17#define mcfgpio_h 18 19#include <linux/io.h> 20#include <asm-generic/gpio.h> 21 22struct mcf_gpio_chip { 23 struct gpio_chip gpio_chip; 24 void __iomem *pddr; 25 void __iomem *podr; 26 void __iomem *ppdr; 27 void __iomem *setr; 28 void __iomem *clrr; 29 const u8 *gpio_to_pinmux; 30}; 31 32int mcf_gpio_direction_input(struct gpio_chip *, unsigned); 33int mcf_gpio_get_value(struct gpio_chip *, unsigned); 34int mcf_gpio_direction_output(struct gpio_chip *, unsigned, int); 35void mcf_gpio_set_value(struct gpio_chip *, unsigned, int); 36void mcf_gpio_set_value_fast(struct gpio_chip *, unsigned, int); 37int mcf_gpio_request(struct gpio_chip *, unsigned); 38void mcf_gpio_free(struct gpio_chip *, unsigned); 39 40#endif 41