2 * Coldfire generic GPIO support
4 * (C) Copyright 2009, Steven King <sfking@fdwdc.com>
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.
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.
16 #include <linux/kernel.h>
17 #include <linux/init.h>
19 #include <asm/coldfire.h>
20 #include <asm/mcfsim.h>
21 #include <asm/mcfgpio.h>
23 static struct mcf_gpio_chip mcf_gpio_chips
[] = {
27 .request
= mcf_gpio_request
,
28 .free
= mcf_gpio_free
,
29 .direction_input
= mcf_gpio_direction_input
,
30 .direction_output
= mcf_gpio_direction_output
,
31 .get
= mcf_gpio_get_value
,
32 .set
= mcf_gpio_set_value
,
42 .request
= mcf_gpio_request
,
43 .free
= mcf_gpio_free
,
44 .direction_input
= mcf_gpio_direction_input
,
45 .direction_output
= mcf_gpio_direction_output
,
46 .get
= mcf_gpio_get_value
,
47 .set
= mcf_gpio_set_value
,
58 .request
= mcf_gpio_request
,
59 .free
= mcf_gpio_free
,
60 .direction_input
= mcf_gpio_direction_input
,
61 .direction_output
= mcf_gpio_direction_output
,
62 .get
= mcf_gpio_get_value
,
63 .set
= mcf_gpio_set_value
,
73 static int __init
mcf_gpio_init(void)
76 while (i
< ARRAY_SIZE(mcf_gpio_chips
))
77 (void)gpiochip_add((struct gpio_chip
*)&mcf_gpio_chips
[i
++]);
81 core_initcall(mcf_gpio_init
);