Sat Sep 7 02:08:56 2013 UTC ()
Add awingpio


(matt)
diff -r1.2 -r1.3 src/sys/arch/arm/allwinner/awin_io.c

cvs diff -r1.2 -r1.3 src/sys/arch/arm/allwinner/Attic/awin_io.c (expand / switch to unified diff)

--- src/sys/arch/arm/allwinner/Attic/awin_io.c 2013/09/07 00:35:52 1.2
+++ src/sys/arch/arm/allwinner/Attic/awin_io.c 2013/09/07 02:08:56 1.3
@@ -21,27 +21,27 @@ @@ -21,27 +21,27 @@
21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 * POSSIBILITY OF SUCH DAMAGE. 27 * POSSIBILITY OF SUCH DAMAGE.
28 */ 28 */
29 29
30#include "locators.h" 30#include "locators.h"
31 31
32#include <sys/cdefs.h> 32#include <sys/cdefs.h>
33 33
34__KERNEL_RCSID(1, "$NetBSD: awin_io.c,v 1.2 2013/09/07 00:35:52 matt Exp $"); 34__KERNEL_RCSID(1, "$NetBSD: awin_io.c,v 1.3 2013/09/07 02:08:56 matt Exp $");
35 35
36#include <sys/bus.h> 36#include <sys/bus.h>
37#include <sys/cpu.h> 37#include <sys/cpu.h>
38#include <sys/device.h> 38#include <sys/device.h>
39#include <sys/intr.h> 39#include <sys/intr.h>
40#include <sys/systm.h> 40#include <sys/systm.h>
41 41
42#include <arm/locore.h> 42#include <arm/locore.h>
43#include <arm/mainbus/mainbus.h> 43#include <arm/mainbus/mainbus.h>
44 44
45#include <arm/allwinner/awin_reg.h> 45#include <arm/allwinner/awin_reg.h>
46#include <arm/allwinner/awin_var.h> 46#include <arm/allwinner/awin_var.h>
47 47
@@ -80,26 +80,27 @@ awinio_print(void *aux, const char *pnp) @@ -80,26 +80,27 @@ awinio_print(void *aux, const char *pnp)
80 return QUIET; 80 return QUIET;
81} 81}
82 82
83#define OFFANDSIZE(n) AWIN_##n##_OFFSET, (AWIN_##n##_OFFSET < 0x20000 ? 0x1000 : 0x400) 83#define OFFANDSIZE(n) AWIN_##n##_OFFSET, (AWIN_##n##_OFFSET < 0x20000 ? 0x1000 : 0x400)
84#define NOPORT AWINIOCF_PORT_DEFAULT 84#define NOPORT AWINIOCF_PORT_DEFAULT
85#define NOINTR AWINIO_INTR_DEFAULT 85#define NOINTR AWINIO_INTR_DEFAULT
86#define AANY 0 86#define AANY 0
87#define A10 AWINIO_ONLY_A10 87#define A10 AWINIO_ONLY_A10
88#define A20 AWINIO_ONLY_A20 88#define A20 AWINIO_ONLY_A20
89#define REQ AWINIO_REQUIRED 89#define REQ AWINIO_REQUIRED
90 90
91static const struct awin_locators awin_locators[] = { 91static const struct awin_locators awin_locators[] = {
92 { "awinicu", OFFANDSIZE(INTC), NOPORT, NOINTR, A10|REQ }, 92 { "awinicu", OFFANDSIZE(INTC), NOPORT, NOINTR, A10|REQ },
 93 { "awingpio", OFFANDSIZE(PIO), NOPORT, NOINTR, AANY|REQ },
93 { "awintmr", OFFANDSIZE(TMR), NOPORT, AWIN_IRQ_TMR0, A10 }, 94 { "awintmr", OFFANDSIZE(TMR), NOPORT, AWIN_IRQ_TMR0, A10 },
94 { "com", OFFANDSIZE(UART0), 0, AWIN_IRQ_UART0, AANY }, 95 { "com", OFFANDSIZE(UART0), 0, AWIN_IRQ_UART0, AANY },
95 { "com", OFFANDSIZE(UART1), 1, AWIN_IRQ_UART1, AANY }, 96 { "com", OFFANDSIZE(UART1), 1, AWIN_IRQ_UART1, AANY },
96 { "com", OFFANDSIZE(UART2), 2, AWIN_IRQ_UART2, AANY }, 97 { "com", OFFANDSIZE(UART2), 2, AWIN_IRQ_UART2, AANY },
97 { "com", OFFANDSIZE(UART3), 3, AWIN_IRQ_UART3, AANY }, 98 { "com", OFFANDSIZE(UART3), 3, AWIN_IRQ_UART3, AANY },
98 { "com", OFFANDSIZE(UART4), 4, AWIN_IRQ_UART4, AANY }, 99 { "com", OFFANDSIZE(UART4), 4, AWIN_IRQ_UART4, AANY },
99 { "com", OFFANDSIZE(UART5), 5, AWIN_IRQ_UART5, AANY }, 100 { "com", OFFANDSIZE(UART5), 5, AWIN_IRQ_UART5, AANY },
100 { "com", OFFANDSIZE(UART6), 6, AWIN_IRQ_UART6, AANY }, 101 { "com", OFFANDSIZE(UART6), 6, AWIN_IRQ_UART6, AANY },
101 { "com", OFFANDSIZE(UART7), 7, AWIN_IRQ_UART7, AANY }, 102 { "com", OFFANDSIZE(UART7), 7, AWIN_IRQ_UART7, AANY },
102 { "awinwdt", OFFANDSIZE(TMR), NOPORT, NOINTR, AANY }, 103 { "awinwdt", OFFANDSIZE(TMR), NOPORT, NOINTR, AANY },
103 { "awinusb", OFFANDSIZE(USB1), 0, NOINTR, AANY }, 104 { "awinusb", OFFANDSIZE(USB1), 0, NOINTR, AANY },
104 { "awinusb", OFFANDSIZE(USB2), 1, NOINTR, AANY }, 105 { "awinusb", OFFANDSIZE(USB2), 1, NOINTR, AANY },
105 { "sdhc", OFFANDSIZE(SDMMC0), 0, AWIN_IRQ_SDMMC0, AANY }, 106 { "sdhc", OFFANDSIZE(SDMMC0), 0, AWIN_IRQ_SDMMC0, AANY },