X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/6485c8ba0a21f44100aa96123f2edd70fe9edbe6..f9e19ce2025f01bc4e2e9b9f5c17976d5c4ff1fb:/target/linux/ar7/files/drivers/char/ar7_gpio.c diff --git a/target/linux/ar7/files/drivers/char/ar7_gpio.c b/target/linux/ar7/files/drivers/char/ar7_gpio.c index c0ee897e2..a7d0a5534 100644 --- a/target/linux/ar7/files/drivers/char/ar7_gpio.c +++ b/target/linux/ar7/files/drivers/char/ar7_gpio.c @@ -1,18 +1,16 @@ /* - * linux/drivers/char/ar7_gpio.c - * - * Copyright (C) 2007 OpenWrt.org - * + * Copyright (C) 2007 Nicolas Thill + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA @@ -73,7 +71,7 @@ static ssize_t ar7_gpio_write(struct file *file, const char __user *buf, case 'o': case 'O': case '>': - gpio_direction_output(pin); + gpio_direction_output(pin, 0); break; default: return -EINVAL; @@ -100,7 +98,7 @@ static int ar7_gpio_open(struct inode *inode, struct file *file) { int m = iminor(inode); - if (m >= AR7_GPIO_MAX) + if (m >= (ar7_is_titan() ? TITAN_GPIO_MAX : AR7_GPIO_MAX)) return -EINVAL; return nonseekable_open(inode, file); @@ -122,7 +120,7 @@ static const struct file_operations ar7_gpio_fops = { static struct platform_device *ar7_gpio_device; -static int __init ar7_gpio_init(void) +static int __init ar7_gpio_char_init(void) { int rc; @@ -150,11 +148,11 @@ out: return rc; } -static void __exit ar7_gpio_exit(void) +static void __exit ar7_gpio_char_exit(void) { unregister_chrdev(ar7_gpio_major, DRVNAME); platform_device_unregister(ar7_gpio_device); } -module_init(ar7_gpio_init); -module_exit(ar7_gpio_exit); +module_init(ar7_gpio_char_init); +module_exit(ar7_gpio_char_exit);