diff options
Diffstat (limited to 'arch/sh/include')
-rw-r--r-- | arch/sh/include/asm/fixmap.h | 4 | ||||
-rw-r--r-- | arch/sh/include/asm/io.h | 5 | ||||
-rw-r--r-- | arch/sh/include/asm/io_noioport.h | 41 | ||||
-rw-r--r-- | arch/sh/include/asm/kdebug.h | 2 | ||||
-rw-r--r-- | arch/sh/include/asm/kgdb.h | 30 | ||||
-rw-r--r-- | arch/sh/include/asm/pgtable_64.h | 3 | ||||
-rw-r--r-- | arch/sh/include/asm/processor.h | 5 | ||||
-rw-r--r-- | arch/sh/include/asm/processor_64.h | 3 | ||||
-rw-r--r-- | arch/sh/include/asm/stackprotector.h | 27 | ||||
-rw-r--r-- | arch/sh/include/asm/thread_info.h | 46 | ||||
-rw-r--r-- | arch/sh/include/asm/traps_64.h | 14 | ||||
-rw-r--r-- | arch/sh/include/cpu-sh2a/cpu/sh7264.h | 176 | ||||
-rw-r--r-- | arch/sh/include/cpu-sh2a/cpu/sh7269.h | 201 | ||||
-rw-r--r-- | arch/sh/include/cpu-sh4/cpu/freq.h | 5 | ||||
-rw-r--r-- | arch/sh/include/cpu-sh4/cpu/sh7734.h | 306 |
15 files changed, 832 insertions, 36 deletions
diff --git a/arch/sh/include/asm/fixmap.h b/arch/sh/include/asm/fixmap.h index bd7e79a12653..41cda1264bb0 100644 --- a/arch/sh/include/asm/fixmap.h +++ b/arch/sh/include/asm/fixmap.h | |||
@@ -94,9 +94,9 @@ extern void __clear_fixmap(enum fixed_addresses idx, pgprot_t flags); | |||
94 | * at the top of mem.. | 94 | * at the top of mem.. |
95 | */ | 95 | */ |
96 | #ifdef CONFIG_SUPERH32 | 96 | #ifdef CONFIG_SUPERH32 |
97 | #define FIXADDR_TOP (P4SEG - PAGE_SIZE) | 97 | #define FIXADDR_TOP (P3_ADDR_MAX - PAGE_SIZE) |
98 | #else | 98 | #else |
99 | #define FIXADDR_TOP (0xff000000 - PAGE_SIZE) | 99 | #define FIXADDR_TOP ((unsigned long)(-PAGE_SIZE)) |
100 | #endif | 100 | #endif |
101 | #define FIXADDR_SIZE (__end_of_fixed_addresses << PAGE_SHIFT) | 101 | #define FIXADDR_SIZE (__end_of_fixed_addresses << PAGE_SHIFT) |
102 | #define FIXADDR_START (FIXADDR_TOP - FIXADDR_SIZE) | 102 | #define FIXADDR_START (FIXADDR_TOP - FIXADDR_SIZE) |
diff --git a/arch/sh/include/asm/io.h b/arch/sh/include/asm/io.h index ec464a6b95fe..0cf60a628814 100644 --- a/arch/sh/include/asm/io.h +++ b/arch/sh/include/asm/io.h | |||
@@ -218,8 +218,13 @@ __BUILD_IOPORT_STRING(w, u16) | |||
218 | __BUILD_IOPORT_STRING(l, u32) | 218 | __BUILD_IOPORT_STRING(l, u32) |
219 | __BUILD_IOPORT_STRING(q, u64) | 219 | __BUILD_IOPORT_STRING(q, u64) |
220 | 220 | ||
221 | #else /* !CONFIG_HAS_IOPORT */ | ||
222 | |||
223 | #include <asm/io_noioport.h> | ||
224 | |||
221 | #endif | 225 | #endif |
222 | 226 | ||
227 | |||
223 | #define IO_SPACE_LIMIT 0xffffffff | 228 | #define IO_SPACE_LIMIT 0xffffffff |
224 | 229 | ||
225 | /* synco on SH-4A, otherwise a nop */ | 230 | /* synco on SH-4A, otherwise a nop */ |
diff --git a/arch/sh/include/asm/io_noioport.h b/arch/sh/include/asm/io_noioport.h new file mode 100644 index 000000000000..e136d28d1d2e --- /dev/null +++ b/arch/sh/include/asm/io_noioport.h | |||
@@ -0,0 +1,41 @@ | |||
1 | #ifndef __ASM_SH_IO_NOIOPORT_H | ||
2 | #define __ASM_SH_IO_NOIOPORT_H | ||
3 | |||
4 | static inline u8 inb(unsigned long addr) | ||
5 | { | ||
6 | BUG(); | ||
7 | return -1; | ||
8 | } | ||
9 | |||
10 | static inline u16 inw(unsigned long addr) | ||
11 | { | ||
12 | BUG(); | ||
13 | return -1; | ||
14 | } | ||
15 | |||
16 | static inline u32 inl(unsigned long addr) | ||
17 | { | ||
18 | BUG(); | ||
19 | return -1; | ||
20 | } | ||
21 | |||
22 | #define outb(x, y) BUG() | ||
23 | #define outw(x, y) BUG() | ||
24 | #define outl(x, y) BUG() | ||
25 | |||
26 | #define inb_p(addr) inb(addr) | ||
27 | #define inw_p(addr) inw(addr) | ||
28 | #define inl_p(addr) inl(addr) | ||
29 | #define outb_p(x, addr) outb((x), (addr)) | ||
30 | #define outw_p(x, addr) outw((x), (addr)) | ||
31 | #define outl_p(x, addr) outl((x), (addr)) | ||
32 | |||
33 | #define insb(a, b, c) BUG() | ||
34 | #define insw(a, b, c) BUG() | ||
35 | #define insl(a, b, c) BUG() | ||
36 | |||
37 | #define outsb(a, b, c) BUG() | ||
38 | #define outsw(a, b, c) BUG() | ||
39 | #define outsl(a, b, c) BUG() | ||
40 | |||
41 | #endif /* __ASM_SH_IO_NOIOPORT_H */ | ||
diff --git a/arch/sh/include/asm/kdebug.h b/arch/sh/include/asm/kdebug.h index 5f6d2e9ccb7c..a6201f10c273 100644 --- a/arch/sh/include/asm/kdebug.h +++ b/arch/sh/include/asm/kdebug.h | |||
@@ -10,4 +10,6 @@ enum die_val { | |||
10 | DIE_SSTEP, | 10 | DIE_SSTEP, |
11 | }; | 11 | }; |
12 | 12 | ||
13 | extern void printk_address(unsigned long address, int reliable); | ||
14 | |||
13 | #endif /* __ASM_SH_KDEBUG_H */ | 15 | #endif /* __ASM_SH_KDEBUG_H */ |
diff --git a/arch/sh/include/asm/kgdb.h b/arch/sh/include/asm/kgdb.h index f3613952d1ae..9e7d2d1b03e0 100644 --- a/arch/sh/include/asm/kgdb.h +++ b/arch/sh/include/asm/kgdb.h | |||
@@ -4,18 +4,6 @@ | |||
4 | #include <asm/cacheflush.h> | 4 | #include <asm/cacheflush.h> |
5 | #include <asm/ptrace.h> | 5 | #include <asm/ptrace.h> |
6 | 6 | ||
7 | /* Same as pt_regs but has vbr in place of syscall_nr */ | ||
8 | struct kgdb_regs { | ||
9 | unsigned long regs[16]; | ||
10 | unsigned long pc; | ||
11 | unsigned long pr; | ||
12 | unsigned long sr; | ||
13 | unsigned long gbr; | ||
14 | unsigned long mach; | ||
15 | unsigned long macl; | ||
16 | unsigned long vbr; | ||
17 | }; | ||
18 | |||
19 | enum regnames { | 7 | enum regnames { |
20 | GDB_R0, GDB_R1, GDB_R2, GDB_R3, GDB_R4, GDB_R5, GDB_R6, GDB_R7, | 8 | GDB_R0, GDB_R1, GDB_R2, GDB_R3, GDB_R4, GDB_R5, GDB_R6, GDB_R7, |
21 | GDB_R8, GDB_R9, GDB_R10, GDB_R11, GDB_R12, GDB_R13, GDB_R14, GDB_R15, | 9 | GDB_R8, GDB_R9, GDB_R10, GDB_R11, GDB_R12, GDB_R13, GDB_R14, GDB_R15, |
@@ -23,17 +11,27 @@ enum regnames { | |||
23 | GDB_PC, GDB_PR, GDB_SR, GDB_GBR, GDB_MACH, GDB_MACL, GDB_VBR, | 11 | GDB_PC, GDB_PR, GDB_SR, GDB_GBR, GDB_MACH, GDB_MACL, GDB_VBR, |
24 | }; | 12 | }; |
25 | 13 | ||
26 | #define NUMREGBYTES ((GDB_VBR + 1) * 4) | 14 | #define _GP_REGS 16 |
15 | #define _EXTRA_REGS 7 | ||
16 | #define GDB_SIZEOF_REG sizeof(u32) | ||
17 | |||
18 | #define DBG_MAX_REG_NUM (_GP_REGS + _EXTRA_REGS) | ||
19 | #define NUMREGBYTES (DBG_MAX_REG_NUM * sizeof(GDB_SIZEOF_REG)) | ||
27 | 20 | ||
28 | static inline void arch_kgdb_breakpoint(void) | 21 | static inline void arch_kgdb_breakpoint(void) |
29 | { | 22 | { |
30 | __asm__ __volatile__ ("trapa #0x3c\n"); | 23 | __asm__ __volatile__ ("trapa #0x3c\n"); |
31 | } | 24 | } |
32 | 25 | ||
33 | #define BUFMAX 2048 | ||
34 | |||
35 | #define CACHE_FLUSH_IS_SAFE 1 | ||
36 | #define BREAK_INSTR_SIZE 2 | 26 | #define BREAK_INSTR_SIZE 2 |
27 | #define BUFMAX 2048 | ||
28 | |||
29 | #ifdef CONFIG_SMP | ||
30 | # define CACHE_FLUSH_IS_SAFE 0 | ||
31 | #else | ||
32 | # define CACHE_FLUSH_IS_SAFE 1 | ||
33 | #endif | ||
34 | |||
37 | #define GDB_ADJUSTS_BREAK_OFFSET | 35 | #define GDB_ADJUSTS_BREAK_OFFSET |
38 | 36 | ||
39 | #endif /* __ASM_SH_KGDB_H */ | 37 | #endif /* __ASM_SH_KGDB_H */ |
diff --git a/arch/sh/include/asm/pgtable_64.h b/arch/sh/include/asm/pgtable_64.h index 42cb9dd52161..dda8c82601b9 100644 --- a/arch/sh/include/asm/pgtable_64.h +++ b/arch/sh/include/asm/pgtable_64.h | |||
@@ -87,9 +87,6 @@ static __inline__ void set_pte(pte_t *pteptr, pte_t pteval) | |||
87 | #define pte_unmap(pte) do { } while (0) | 87 | #define pte_unmap(pte) do { } while (0) |
88 | 88 | ||
89 | #ifndef __ASSEMBLY__ | 89 | #ifndef __ASSEMBLY__ |
90 | #define IOBASE_VADDR 0xff000000 | ||
91 | #define IOBASE_END 0xffffffff | ||
92 | |||
93 | /* | 90 | /* |
94 | * PTEL coherent flags. | 91 | * PTEL coherent flags. |
95 | * See Chapter 17 ST50 CPU Core Volume 1, Architecture. | 92 | * See Chapter 17 ST50 CPU Core Volume 1, Architecture. |
diff --git a/arch/sh/include/asm/processor.h b/arch/sh/include/asm/processor.h index a229c393826a..793b664ef7ff 100644 --- a/arch/sh/include/asm/processor.h +++ b/arch/sh/include/asm/processor.h | |||
@@ -18,7 +18,8 @@ enum cpu_type { | |||
18 | CPU_SH7619, | 18 | CPU_SH7619, |
19 | 19 | ||
20 | /* SH-2A types */ | 20 | /* SH-2A types */ |
21 | CPU_SH7201, CPU_SH7203, CPU_SH7206, CPU_SH7263, CPU_MXG, | 21 | CPU_SH7201, CPU_SH7203, CPU_SH7206, CPU_SH7263, CPU_SH7264, CPU_SH7269, |
22 | CPU_MXG, | ||
22 | 23 | ||
23 | /* SH-3 types */ | 24 | /* SH-3 types */ |
24 | CPU_SH7705, CPU_SH7706, CPU_SH7707, | 25 | CPU_SH7705, CPU_SH7706, CPU_SH7707, |
@@ -32,7 +33,7 @@ enum cpu_type { | |||
32 | 33 | ||
33 | /* SH-4A types */ | 34 | /* SH-4A types */ |
34 | CPU_SH7763, CPU_SH7770, CPU_SH7780, CPU_SH7781, CPU_SH7785, CPU_SH7786, | 35 | CPU_SH7763, CPU_SH7770, CPU_SH7780, CPU_SH7781, CPU_SH7785, CPU_SH7786, |
35 | CPU_SH7723, CPU_SH7724, CPU_SH7757, CPU_SHX3, | 36 | CPU_SH7723, CPU_SH7724, CPU_SH7757, CPU_SH7734, CPU_SHX3, |
36 | 37 | ||
37 | /* SH4AL-DSP types */ | 38 | /* SH4AL-DSP types */ |
38 | CPU_SH7343, CPU_SH7722, CPU_SH7366, CPU_SH7372, | 39 | CPU_SH7343, CPU_SH7722, CPU_SH7366, CPU_SH7372, |
diff --git a/arch/sh/include/asm/processor_64.h b/arch/sh/include/asm/processor_64.h index e25c4c7d6b63..740e26876596 100644 --- a/arch/sh/include/asm/processor_64.h +++ b/arch/sh/include/asm/processor_64.h | |||
@@ -121,7 +121,6 @@ struct thread_struct { | |||
121 | NULL for a kernel thread. */ | 121 | NULL for a kernel thread. */ |
122 | struct pt_regs *uregs; | 122 | struct pt_regs *uregs; |
123 | 123 | ||
124 | unsigned long trap_no, error_code; | ||
125 | unsigned long address; | 124 | unsigned long address; |
126 | /* Hardware debugging registers may come here */ | 125 | /* Hardware debugging registers may come here */ |
127 | 126 | ||
@@ -138,8 +137,6 @@ struct thread_struct { | |||
138 | .pc = 0, \ | 137 | .pc = 0, \ |
139 | .kregs = &fake_swapper_regs, \ | 138 | .kregs = &fake_swapper_regs, \ |
140 | .uregs = NULL, \ | 139 | .uregs = NULL, \ |
141 | .trap_no = 0, \ | ||
142 | .error_code = 0, \ | ||
143 | .address = 0, \ | 140 | .address = 0, \ |
144 | .flags = 0, \ | 141 | .flags = 0, \ |
145 | } | 142 | } |
diff --git a/arch/sh/include/asm/stackprotector.h b/arch/sh/include/asm/stackprotector.h new file mode 100644 index 000000000000..d9df3a76847c --- /dev/null +++ b/arch/sh/include/asm/stackprotector.h | |||
@@ -0,0 +1,27 @@ | |||
1 | #ifndef __ASM_SH_STACKPROTECTOR_H | ||
2 | #define __ASM_SH_STACKPROTECTOR_H | ||
3 | |||
4 | #include <linux/random.h> | ||
5 | #include <linux/version.h> | ||
6 | |||
7 | extern unsigned long __stack_chk_guard; | ||
8 | |||
9 | /* | ||
10 | * Initialize the stackprotector canary value. | ||
11 | * | ||
12 | * NOTE: this must only be called from functions that never return, | ||
13 | * and it must always be inlined. | ||
14 | */ | ||
15 | static __always_inline void boot_init_stack_canary(void) | ||
16 | { | ||
17 | unsigned long canary; | ||
18 | |||
19 | /* Try to get a semi random initial value. */ | ||
20 | get_random_bytes(&canary, sizeof(canary)); | ||
21 | canary ^= LINUX_VERSION_CODE; | ||
22 | |||
23 | current->stack_canary = canary; | ||
24 | __stack_chk_guard = current->stack_canary; | ||
25 | } | ||
26 | |||
27 | #endif /* __ASM_SH_STACKPROTECTOR_H */ | ||
diff --git a/arch/sh/include/asm/thread_info.h b/arch/sh/include/asm/thread_info.h index 20ee40af16e9..25a13e534ffe 100644 --- a/arch/sh/include/asm/thread_info.h +++ b/arch/sh/include/asm/thread_info.h | |||
@@ -10,8 +10,18 @@ | |||
10 | * - Incorporating suggestions made by Linus Torvalds and Dave Miller | 10 | * - Incorporating suggestions made by Linus Torvalds and Dave Miller |
11 | */ | 11 | */ |
12 | #ifdef __KERNEL__ | 12 | #ifdef __KERNEL__ |
13 | |||
13 | #include <asm/page.h> | 14 | #include <asm/page.h> |
14 | 15 | ||
16 | /* | ||
17 | * Page fault error code bits | ||
18 | */ | ||
19 | #define FAULT_CODE_WRITE (1 << 0) /* write access */ | ||
20 | #define FAULT_CODE_INITIAL (1 << 1) /* initial page write */ | ||
21 | #define FAULT_CODE_ITLB (1 << 2) /* ITLB miss */ | ||
22 | #define FAULT_CODE_PROT (1 << 3) /* protection fault */ | ||
23 | #define FAULT_CODE_USER (1 << 4) /* user-mode access */ | ||
24 | |||
15 | #ifndef __ASSEMBLY__ | 25 | #ifndef __ASSEMBLY__ |
16 | #include <asm/processor.h> | 26 | #include <asm/processor.h> |
17 | 27 | ||
@@ -107,10 +117,13 @@ extern void init_thread_xstate(void); | |||
107 | #endif /* __ASSEMBLY__ */ | 117 | #endif /* __ASSEMBLY__ */ |
108 | 118 | ||
109 | /* | 119 | /* |
110 | * thread information flags | 120 | * Thread information flags |
111 | * - these are process state flags that various assembly files may need to access | 121 | * |
112 | * - pending work-to-be-done flags are in LSW | 122 | * - Limited to 24 bits, upper byte used for fault code encoding. |
113 | * - other flags in MSW | 123 | * |
124 | * - _TIF_ALLWORK_MASK and _TIF_WORK_MASK need to fit within 2 bytes, or | ||
125 | * we blow the tst immediate size constraints and need to fix up | ||
126 | * arch/sh/kernel/entry-common.S. | ||
114 | */ | 127 | */ |
115 | #define TIF_SYSCALL_TRACE 0 /* syscall trace active */ | 128 | #define TIF_SYSCALL_TRACE 0 /* syscall trace active */ |
116 | #define TIF_SIGPENDING 1 /* signal pending */ | 129 | #define TIF_SIGPENDING 1 /* signal pending */ |
@@ -133,12 +146,6 @@ extern void init_thread_xstate(void); | |||
133 | #define _TIF_SYSCALL_TRACEPOINT (1 << TIF_SYSCALL_TRACEPOINT) | 146 | #define _TIF_SYSCALL_TRACEPOINT (1 << TIF_SYSCALL_TRACEPOINT) |
134 | #define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG) | 147 | #define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG) |
135 | 148 | ||
136 | /* | ||
137 | * _TIF_ALLWORK_MASK and _TIF_WORK_MASK need to fit within 2 bytes, or we | ||
138 | * blow the tst immediate size constraints and need to fix up | ||
139 | * arch/sh/kernel/entry-common.S. | ||
140 | */ | ||
141 | |||
142 | /* work to do in syscall trace */ | 149 | /* work to do in syscall trace */ |
143 | #define _TIF_WORK_SYSCALL_MASK (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP | \ | 150 | #define _TIF_WORK_SYSCALL_MASK (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP | \ |
144 | _TIF_SYSCALL_AUDIT | _TIF_SECCOMP | \ | 151 | _TIF_SYSCALL_AUDIT | _TIF_SECCOMP | \ |
@@ -165,6 +172,7 @@ extern void init_thread_xstate(void); | |||
165 | #define TS_USEDFPU 0x0002 /* FPU used by this task this quantum */ | 172 | #define TS_USEDFPU 0x0002 /* FPU used by this task this quantum */ |
166 | 173 | ||
167 | #ifndef __ASSEMBLY__ | 174 | #ifndef __ASSEMBLY__ |
175 | |||
168 | #define HAVE_SET_RESTORE_SIGMASK 1 | 176 | #define HAVE_SET_RESTORE_SIGMASK 1 |
169 | static inline void set_restore_sigmask(void) | 177 | static inline void set_restore_sigmask(void) |
170 | { | 178 | { |
@@ -172,6 +180,24 @@ static inline void set_restore_sigmask(void) | |||
172 | ti->status |= TS_RESTORE_SIGMASK; | 180 | ti->status |= TS_RESTORE_SIGMASK; |
173 | set_bit(TIF_SIGPENDING, (unsigned long *)&ti->flags); | 181 | set_bit(TIF_SIGPENDING, (unsigned long *)&ti->flags); |
174 | } | 182 | } |
183 | |||
184 | #define TI_FLAG_FAULT_CODE_SHIFT 24 | ||
185 | |||
186 | /* | ||
187 | * Additional thread flag encoding | ||
188 | */ | ||
189 | static inline void set_thread_fault_code(unsigned int val) | ||
190 | { | ||
191 | struct thread_info *ti = current_thread_info(); | ||
192 | ti->flags = (ti->flags & (~0 >> (32 - TI_FLAG_FAULT_CODE_SHIFT))) | ||
193 | | (val << TI_FLAG_FAULT_CODE_SHIFT); | ||
194 | } | ||
195 | |||
196 | static inline unsigned int get_thread_fault_code(void) | ||
197 | { | ||
198 | struct thread_info *ti = current_thread_info(); | ||
199 | return ti->flags >> TI_FLAG_FAULT_CODE_SHIFT; | ||
200 | } | ||
175 | #endif /* !__ASSEMBLY__ */ | 201 | #endif /* !__ASSEMBLY__ */ |
176 | 202 | ||
177 | #endif /* __KERNEL__ */ | 203 | #endif /* __KERNEL__ */ |
diff --git a/arch/sh/include/asm/traps_64.h b/arch/sh/include/asm/traps_64.h index c52d7f9a06c1..ef5eff919449 100644 --- a/arch/sh/include/asm/traps_64.h +++ b/arch/sh/include/asm/traps_64.h | |||
@@ -10,8 +10,22 @@ | |||
10 | #ifndef __ASM_SH_TRAPS_64_H | 10 | #ifndef __ASM_SH_TRAPS_64_H |
11 | #define __ASM_SH_TRAPS_64_H | 11 | #define __ASM_SH_TRAPS_64_H |
12 | 12 | ||
13 | #include <cpu/registers.h> | ||
14 | |||
13 | extern void phys_stext(void); | 15 | extern void phys_stext(void); |
14 | 16 | ||
17 | #define lookup_exception_vector() \ | ||
18 | ({ \ | ||
19 | unsigned long _vec; \ | ||
20 | \ | ||
21 | __asm__ __volatile__ ( \ | ||
22 | "getcon " __EXPEVT ", %0\n\t" \ | ||
23 | : "=r" (_vec) \ | ||
24 | ); \ | ||
25 | \ | ||
26 | _vec; \ | ||
27 | }) | ||
28 | |||
15 | static inline void trigger_address_error(void) | 29 | static inline void trigger_address_error(void) |
16 | { | 30 | { |
17 | phys_stext(); | 31 | phys_stext(); |
diff --git a/arch/sh/include/cpu-sh2a/cpu/sh7264.h b/arch/sh/include/cpu-sh2a/cpu/sh7264.h new file mode 100644 index 000000000000..4d1ef6d74bd6 --- /dev/null +++ b/arch/sh/include/cpu-sh2a/cpu/sh7264.h | |||
@@ -0,0 +1,176 @@ | |||
1 | #ifndef __ASM_SH7264_H__ | ||
2 | #define __ASM_SH7264_H__ | ||
3 | |||
4 | enum { | ||
5 | /* Port A */ | ||
6 | GPIO_PA3, GPIO_PA2, GPIO_PA1, GPIO_PA0, | ||
7 | |||
8 | /* Port B */ | ||
9 | GPIO_PB22, GPIO_PB21, GPIO_PB20, | ||
10 | GPIO_PB19, GPIO_PB18, GPIO_PB17, GPIO_PB16, | ||
11 | GPIO_PB15, GPIO_PB14, GPIO_PB13, GPIO_PB12, | ||
12 | GPIO_PB11, GPIO_PB10, GPIO_PB9, GPIO_PB8, | ||
13 | GPIO_PB7, GPIO_PB6, GPIO_PB5, GPIO_PB4, | ||
14 | GPIO_PB3, GPIO_PB2, GPIO_PB1, | ||
15 | |||
16 | /* Port C */ | ||
17 | GPIO_PC10, GPIO_PC9, GPIO_PC8, | ||
18 | GPIO_PC7, GPIO_PC6, GPIO_PC5, GPIO_PC4, | ||
19 | GPIO_PC3, GPIO_PC2, GPIO_PC1, GPIO_PC0, | ||
20 | |||
21 | /* Port D */ | ||
22 | GPIO_PD15, GPIO_PD14, GPIO_PD13, GPIO_PD12, | ||
23 | GPIO_PD11, GPIO_PD10, GPIO_PD9, GPIO_PD8, | ||
24 | GPIO_PD7, GPIO_PD6, GPIO_PD5, GPIO_PD4, | ||
25 | GPIO_PD3, GPIO_PD2, GPIO_PD1, GPIO_PD0, | ||
26 | |||
27 | /* Port E */ | ||
28 | GPIO_PE5, GPIO_PE4, | ||
29 | GPIO_PE3, GPIO_PE2, GPIO_PE1, GPIO_PE0, | ||
30 | |||
31 | /* Port F */ | ||
32 | GPIO_PF12, | ||
33 | GPIO_PF11, GPIO_PF10, GPIO_PF9, GPIO_PF8, | ||
34 | GPIO_PF7, GPIO_PF6, GPIO_PF5, GPIO_PF4, | ||
35 | GPIO_PF3, GPIO_PF2, GPIO_PF1, GPIO_PF0, | ||
36 | |||
37 | /* Port G */ | ||
38 | GPIO_PG24, | ||
39 | GPIO_PG23, GPIO_PG22, GPIO_PG21, GPIO_PG20, | ||
40 | GPIO_PG19, GPIO_PG18, GPIO_PG17, GPIO_PG16, | ||
41 | GPIO_PG15, GPIO_PG14, GPIO_PG13, GPIO_PG12, | ||
42 | GPIO_PG11, GPIO_PG10, GPIO_PG9, GPIO_PG8, | ||
43 | GPIO_PG7, GPIO_PG6, GPIO_PG5, GPIO_PG4, | ||
44 | GPIO_PG3, GPIO_PG2, GPIO_PG1, GPIO_PG0, | ||
45 | |||
46 | /* Port H */ | ||
47 | GPIO_PH7, GPIO_PH6, GPIO_PH5, GPIO_PH4, | ||
48 | GPIO_PH3, GPIO_PH2, GPIO_PH1, GPIO_PH0, | ||
49 | |||
50 | /* Port I - not on device */ | ||
51 | |||
52 | /* Port J */ | ||
53 | GPIO_PJ11, GPIO_PJ10, GPIO_PJ9, GPIO_PJ8, | ||
54 | GPIO_PJ7, GPIO_PJ6, GPIO_PJ5, GPIO_PJ4, | ||
55 | GPIO_PJ3, GPIO_PJ2, GPIO_PJ1, GPIO_PJ0, | ||
56 | |||
57 | /* Port K */ | ||
58 | GPIO_PK11, GPIO_PK10, GPIO_PK9, GPIO_PK8, | ||
59 | GPIO_PK7, GPIO_PK6, GPIO_PK5, GPIO_PK4, | ||
60 | GPIO_PK3, GPIO_PK2, GPIO_PK1, GPIO_PK0, | ||
61 | |||
62 | /* INTC: IRQ and PINT on PB/PD/PE */ | ||
63 | GPIO_FN_PINT7_PG, GPIO_FN_PINT6_PG, GPIO_FN_PINT5_PG, GPIO_FN_PINT4_PG, | ||
64 | GPIO_FN_PINT3_PG, GPIO_FN_PINT2_PG, GPIO_FN_PINT1_PG, | ||
65 | |||
66 | GPIO_FN_IRQ7_PC, GPIO_FN_IRQ6_PC, GPIO_FN_IRQ5_PC, GPIO_FN_IRQ4_PC, | ||
67 | GPIO_FN_IRQ3_PG, GPIO_FN_IRQ2_PG, GPIO_FN_IRQ1_PJ, GPIO_FN_IRQ0_PJ, | ||
68 | GPIO_FN_IRQ3_PE, GPIO_FN_IRQ2_PE, GPIO_FN_IRQ1_PE, GPIO_FN_IRQ0_PE, | ||
69 | |||
70 | /* WDT */ | ||
71 | GPIO_FN_WDTOVF, | ||
72 | |||
73 | /* CAN */ | ||
74 | GPIO_FN_CTX1, GPIO_FN_CRX1, GPIO_FN_CTX0, GPIO_FN_CTX0_CTX1, | ||
75 | GPIO_FN_CRX0, GPIO_FN_CRX0_CRX1, | ||
76 | |||
77 | /* DMAC */ | ||
78 | GPIO_FN_TEND0, GPIO_FN_DACK0, GPIO_FN_DREQ0, | ||
79 | GPIO_FN_TEND1, GPIO_FN_DACK1, GPIO_FN_DREQ1, | ||
80 | |||
81 | /* ADC */ | ||
82 | GPIO_FN_ADTRG, | ||
83 | |||
84 | /* BSC */ | ||
85 | |||
86 | GPIO_FN_A25, GPIO_FN_A24, | ||
87 | GPIO_FN_A23, GPIO_FN_A22, GPIO_FN_A21, GPIO_FN_A20, | ||
88 | GPIO_FN_A19, GPIO_FN_A18, GPIO_FN_A17, GPIO_FN_A16, | ||
89 | GPIO_FN_A15, GPIO_FN_A14, GPIO_FN_A13, GPIO_FN_A12, | ||
90 | GPIO_FN_A11, GPIO_FN_A10, GPIO_FN_A9, GPIO_FN_A8, | ||
91 | GPIO_FN_A7, GPIO_FN_A6, GPIO_FN_A5, GPIO_FN_A4, | ||
92 | GPIO_FN_A3, GPIO_FN_A2, GPIO_FN_A1, GPIO_FN_A0, | ||
93 | GPIO_FN_D15, GPIO_FN_D14, GPIO_FN_D13, GPIO_FN_D12, | ||
94 | GPIO_FN_D11, GPIO_FN_D10, GPIO_FN_D9, GPIO_FN_D8, | ||
95 | GPIO_FN_D7, GPIO_FN_D6, GPIO_FN_D5, GPIO_FN_D4, | ||
96 | GPIO_FN_D3, GPIO_FN_D2, GPIO_FN_D1, GPIO_FN_D0, | ||
97 | |||
98 | GPIO_FN_BS, | ||
99 | GPIO_FN_CS4, GPIO_FN_CS3, GPIO_FN_CS2, GPIO_FN_CS1, GPIO_FN_CS0, | ||
100 | GPIO_FN_CS6CE1B, GPIO_FN_CS5CE1A, | ||
101 | GPIO_FN_CE2A, GPIO_FN_CE2B, | ||
102 | GPIO_FN_RD, GPIO_FN_RDWR, | ||
103 | GPIO_FN_ICIOWRAH, GPIO_FN_ICIORD, | ||
104 | GPIO_FN_WE1DQMUWE, GPIO_FN_WE0DQML, | ||
105 | GPIO_FN_RAS, GPIO_FN_CAS, GPIO_FN_CKE, | ||
106 | GPIO_FN_WAIT, GPIO_FN_BREQ, GPIO_FN_BACK, | ||
107 | GPIO_FN_IOIS16, | ||
108 | |||
109 | /* TMU */ | ||
110 | GPIO_FN_TIOC4D, GPIO_FN_TIOC4C, GPIO_FN_TIOC4B, GPIO_FN_TIOC4A, | ||
111 | GPIO_FN_TIOC3D, GPIO_FN_TIOC3C, GPIO_FN_TIOC3B, GPIO_FN_TIOC3A, | ||
112 | GPIO_FN_TIOC2B, GPIO_FN_TIOC1B, GPIO_FN_TIOC2A, GPIO_FN_TIOC1A, | ||
113 | GPIO_FN_TIOC0D, GPIO_FN_TIOC0C, GPIO_FN_TIOC0B, GPIO_FN_TIOC0A, | ||
114 | GPIO_FN_TCLKD, GPIO_FN_TCLKC, GPIO_FN_TCLKB, GPIO_FN_TCLKA, | ||
115 | |||
116 | /* SSU */ | ||
117 | GPIO_FN_SCS0_PD, GPIO_FN_SSO0_PD, GPIO_FN_SSI0_PD, GPIO_FN_SSCK0_PD, | ||
118 | GPIO_FN_SCS0_PF, GPIO_FN_SSO0_PF, GPIO_FN_SSI0_PF, GPIO_FN_SSCK0_PF, | ||
119 | GPIO_FN_SCS1_PD, GPIO_FN_SSO1_PD, GPIO_FN_SSI1_PD, GPIO_FN_SSCK1_PD, | ||
120 | GPIO_FN_SCS1_PF, GPIO_FN_SSO1_PF, GPIO_FN_SSI1_PF, GPIO_FN_SSCK1_PF, | ||
121 | |||
122 | /* SCIF */ | ||
123 | GPIO_FN_SCK0, GPIO_FN_SCK1, GPIO_FN_SCK2, GPIO_FN_SCK3, | ||
124 | GPIO_FN_RXD0, GPIO_FN_RXD1, GPIO_FN_RXD2, GPIO_FN_RXD3, | ||
125 | GPIO_FN_TXD0, GPIO_FN_TXD1, GPIO_FN_TXD2, GPIO_FN_TXD3, | ||
126 | GPIO_FN_RXD4, GPIO_FN_RXD5, GPIO_FN_RXD6, GPIO_FN_RXD7, | ||
127 | GPIO_FN_TXD4, GPIO_FN_TXD5, GPIO_FN_TXD6, GPIO_FN_TXD7, | ||
128 | GPIO_FN_RTS1, GPIO_FN_RTS3, GPIO_FN_CTS1, GPIO_FN_CTS3, | ||
129 | |||
130 | /* RSPI */ | ||
131 | GPIO_FN_RSPCK0, GPIO_FN_MOSI0, | ||
132 | GPIO_FN_MISO0_PF12, GPIO_FN_MISO1, | ||
133 | GPIO_FN_SSL00, | ||
134 | GPIO_FN_RSPCK1, GPIO_FN_MOSI1, | ||
135 | GPIO_FN_MISO1_PG19, GPIO_FN_SSL10, | ||
136 | |||
137 | /* IIC3 */ | ||
138 | GPIO_FN_SCL0, GPIO_FN_SCL1, GPIO_FN_SCL2, | ||
139 | GPIO_FN_SDA2, GPIO_FN_SDA1, GPIO_FN_SDA0, | ||
140 | |||
141 | /* SSI */ | ||
142 | GPIO_FN_SSISCK0, GPIO_FN_SSIWS0, GPIO_FN_SSITXD0, GPIO_FN_SSIRXD0, | ||
143 | GPIO_FN_SSIWS1, GPIO_FN_SSIWS2, GPIO_FN_SSIWS3, | ||
144 | GPIO_FN_SSISCK1, GPIO_FN_SSISCK2, GPIO_FN_SSISCK3, | ||
145 | GPIO_FN_SSIDATA1, GPIO_FN_SSIDATA2, GPIO_FN_SSIDATA3, | ||
146 | GPIO_FN_AUDIO_CLK, | ||
147 | |||
148 | /* SIOF */ | ||
149 | GPIO_FN_SIOFTXD, GPIO_FN_SIOFRXD, GPIO_FN_SIOFSYNC, GPIO_FN_SIOFSCK, | ||
150 | |||
151 | /* SPDIF */ | ||
152 | GPIO_FN_SPDIF_IN, | ||
153 | GPIO_FN_SPDIF_OUT, | ||
154 | |||
155 | /* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */ | ||
156 | GPIO_FN_FCE, | ||
157 | GPIO_FN_FRB, | ||
158 | |||
159 | /* VDC3 */ | ||
160 | GPIO_FN_DV_CLK, GPIO_FN_DV_VSYNC, GPIO_FN_DV_HSYNC, | ||
161 | GPIO_FN_DV_DATA7, GPIO_FN_DV_DATA6, GPIO_FN_DV_DATA5, GPIO_FN_DV_DATA4, | ||
162 | GPIO_FN_DV_DATA3, GPIO_FN_DV_DATA2, GPIO_FN_DV_DATA1, GPIO_FN_DV_DATA0, | ||
163 | GPIO_FN_LCD_CLK, GPIO_FN_LCD_EXTCLK, | ||
164 | GPIO_FN_LCD_VSYNC, GPIO_FN_LCD_HSYNC, GPIO_FN_LCD_DE, | ||
165 | GPIO_FN_LCD_DATA15, GPIO_FN_LCD_DATA14, | ||
166 | GPIO_FN_LCD_DATA13, GPIO_FN_LCD_DATA12, | ||
167 | GPIO_FN_LCD_DATA11, GPIO_FN_LCD_DATA10, | ||
168 | GPIO_FN_LCD_DATA9, GPIO_FN_LCD_DATA8, | ||
169 | GPIO_FN_LCD_DATA7, GPIO_FN_LCD_DATA6, | ||
170 | GPIO_FN_LCD_DATA5, GPIO_FN_LCD_DATA4, | ||
171 | GPIO_FN_LCD_DATA3, GPIO_FN_LCD_DATA2, | ||
172 | GPIO_FN_LCD_DATA1, GPIO_FN_LCD_DATA0, | ||
173 | GPIO_FN_LCD_M_DISP, | ||
174 | }; | ||
175 | |||
176 | #endif /* __ASM_SH7264_H__ */ | ||
diff --git a/arch/sh/include/cpu-sh2a/cpu/sh7269.h b/arch/sh/include/cpu-sh2a/cpu/sh7269.h new file mode 100644 index 000000000000..48d14498e774 --- /dev/null +++ b/arch/sh/include/cpu-sh2a/cpu/sh7269.h | |||
@@ -0,0 +1,201 @@ | |||
1 | #ifndef __ASM_SH7269_H__ | ||
2 | #define __ASM_SH7269_H__ | ||
3 | |||
4 | enum { | ||
5 | /* Port A */ | ||
6 | GPIO_PA1, GPIO_PA0, | ||
7 | |||
8 | /* Port B */ | ||
9 | GPIO_PB22, GPIO_PB21, GPIO_PB20, | ||
10 | GPIO_PB19, GPIO_PB18, GPIO_PB17, GPIO_PB16, | ||
11 | GPIO_PB15, GPIO_PB14, GPIO_PB13, GPIO_PB12, | ||
12 | GPIO_PB11, GPIO_PB10, GPIO_PB9, GPIO_PB8, | ||
13 | GPIO_PB7, GPIO_PB6, GPIO_PB5, GPIO_PB4, | ||
14 | GPIO_PB3, GPIO_PB2, GPIO_PB1, | ||
15 | |||
16 | /* Port C */ | ||
17 | GPIO_PC8, | ||
18 | GPIO_PC7, GPIO_PC6, GPIO_PC5, GPIO_PC4, | ||
19 | GPIO_PC3, GPIO_PC2, GPIO_PC1, GPIO_PC0, | ||
20 | |||
21 | /* Port D */ | ||
22 | GPIO_PD15, GPIO_PD14, GPIO_PD13, GPIO_PD12, | ||
23 | GPIO_PD11, GPIO_PD10, GPIO_PD9, GPIO_PD8, | ||
24 | GPIO_PD7, GPIO_PD6, GPIO_PD5, GPIO_PD4, | ||
25 | GPIO_PD3, GPIO_PD2, GPIO_PD1, GPIO_PD0, | ||
26 | |||
27 | /* Port E */ | ||
28 | GPIO_PE7, GPIO_PE6, GPIO_PE5, GPIO_PE4, | ||
29 | GPIO_PE3, GPIO_PE2, GPIO_PE1, GPIO_PE0, | ||
30 | |||
31 | /* Port F */ | ||
32 | GPIO_PF23, GPIO_PF22, GPIO_PF21, GPIO_PF20, | ||
33 | GPIO_PF19, GPIO_PF18, GPIO_PF17, GPIO_PF16, | ||
34 | GPIO_PF15, GPIO_PF14, GPIO_PF13, GPIO_PF12, | ||
35 | GPIO_PF11, GPIO_PF10, GPIO_PF9, GPIO_PF8, | ||
36 | GPIO_PF7, GPIO_PF6, GPIO_PF5, GPIO_PF4, | ||
37 | GPIO_PF3, GPIO_PF2, GPIO_PF1, GPIO_PF0, | ||
38 | |||
39 | /* Port G */ | ||
40 | GPIO_PG27, GPIO_PG26, GPIO_PG25, GPIO_PG24, | ||
41 | GPIO_PG23, GPIO_PG22, GPIO_PG21, GPIO_PG20, | ||
42 | GPIO_PG19, GPIO_PG18, GPIO_PG17, GPIO_PG16, | ||
43 | GPIO_PG15, GPIO_PG14, GPIO_PG13, GPIO_PG12, | ||
44 | GPIO_PG11, GPIO_PG10, GPIO_PG9, GPIO_PG8, | ||
45 | GPIO_PG7, GPIO_PG6, GPIO_PG5, GPIO_PG4, | ||
46 | GPIO_PG3, GPIO_PG2, GPIO_PG1, GPIO_PG0, | ||
47 | |||
48 | /* Port H */ | ||
49 | GPIO_PH7, GPIO_PH6, GPIO_PH5, GPIO_PH4, | ||
50 | GPIO_PH3, GPIO_PH2, GPIO_PH1, GPIO_PH0, | ||
51 | |||
52 | /* Port I - not on device */ | ||
53 | |||
54 | /* Port J */ | ||
55 | GPIO_PJ31, GPIO_PJ30, GPIO_PJ29, GPIO_PJ28, | ||
56 | GPIO_PJ27, GPIO_PJ26, GPIO_PJ25, GPIO_PJ24, | ||
57 | GPIO_PJ23, GPIO_PJ22, GPIO_PJ21, GPIO_PJ20, | ||
58 | GPIO_PJ19, GPIO_PJ18, GPIO_PJ17, GPIO_PJ16, | ||
59 | GPIO_PJ15, GPIO_PJ14, GPIO_PJ13, GPIO_PJ12, | ||
60 | GPIO_PJ11, GPIO_PJ10, GPIO_PJ9, GPIO_PJ8, | ||
61 | GPIO_PJ7, GPIO_PJ6, GPIO_PJ5, GPIO_PJ4, | ||
62 | GPIO_PJ3, GPIO_PJ2, GPIO_PJ1, GPIO_PJ0, | ||
63 | |||
64 | /* INTC: IRQ and PINT */ | ||
65 | GPIO_FN_IRQ7_PG, GPIO_FN_IRQ6_PG, GPIO_FN_IRQ5_PG, GPIO_FN_IRQ4_PG, | ||
66 | GPIO_FN_IRQ3_PG, GPIO_FN_IRQ2_PG, GPIO_FN_IRQ1_PG, GPIO_FN_IRQ0_PG, | ||
67 | GPIO_FN_IRQ7_PF, GPIO_FN_IRQ6_PF, GPIO_FN_IRQ5_PF, GPIO_FN_IRQ4_PF, | ||
68 | GPIO_FN_IRQ3_PJ, GPIO_FN_IRQ2_PJ, GPIO_FN_IRQ1_PJ, GPIO_FN_IRQ0_PJ, | ||
69 | GPIO_FN_IRQ1_PC, GPIO_FN_IRQ0_PC, | ||
70 | |||
71 | GPIO_FN_PINT7_PG, GPIO_FN_PINT6_PG, GPIO_FN_PINT5_PG, GPIO_FN_PINT4_PG, | ||
72 | GPIO_FN_PINT3_PG, GPIO_FN_PINT2_PG, GPIO_FN_PINT1_PG, GPIO_FN_PINT0_PG, | ||
73 | GPIO_FN_PINT7_PH, GPIO_FN_PINT6_PH, GPIO_FN_PINT5_PH, GPIO_FN_PINT4_PH, | ||
74 | GPIO_FN_PINT3_PH, GPIO_FN_PINT2_PH, GPIO_FN_PINT1_PH, GPIO_FN_PINT0_PH, | ||
75 | GPIO_FN_PINT7_PJ, GPIO_FN_PINT6_PJ, GPIO_FN_PINT5_PJ, GPIO_FN_PINT4_PJ, | ||
76 | GPIO_FN_PINT3_PJ, GPIO_FN_PINT2_PJ, GPIO_FN_PINT1_PJ, GPIO_FN_PINT0_PJ, | ||
77 | |||
78 | /* WDT */ | ||
79 | GPIO_FN_WDTOVF, | ||
80 | |||
81 | /* CAN */ | ||
82 | GPIO_FN_CTX1, GPIO_FN_CRX1, GPIO_FN_CTX0, GPIO_FN_CTX0_CTX1, | ||
83 | GPIO_FN_CRX0, GPIO_FN_CRX0_CRX1, GPIO_FN_CRX0_CRX1_CRX2, | ||
84 | |||
85 | /* DMAC */ | ||
86 | GPIO_FN_TEND0, GPIO_FN_DACK0, GPIO_FN_DREQ0, | ||
87 | GPIO_FN_TEND1, GPIO_FN_DACK1, GPIO_FN_DREQ1, | ||
88 | |||
89 | /* ADC */ | ||
90 | GPIO_FN_ADTRG, | ||
91 | |||
92 | /* BSC */ | ||
93 | GPIO_FN_A25, GPIO_FN_A24, | ||
94 | GPIO_FN_A23, GPIO_FN_A22, GPIO_FN_A21, GPIO_FN_A20, | ||
95 | GPIO_FN_A19, GPIO_FN_A18, GPIO_FN_A17, GPIO_FN_A16, | ||
96 | GPIO_FN_A15, GPIO_FN_A14, GPIO_FN_A13, GPIO_FN_A12, | ||
97 | GPIO_FN_A11, GPIO_FN_A10, GPIO_FN_A9, GPIO_FN_A8, | ||
98 | GPIO_FN_A7, GPIO_FN_A6, GPIO_FN_A5, GPIO_FN_A4, | ||
99 | GPIO_FN_A3, GPIO_FN_A2, GPIO_FN_A1, GPIO_FN_A0, | ||
100 | GPIO_FN_D15, GPIO_FN_D14, GPIO_FN_D13, GPIO_FN_D12, | ||
101 | GPIO_FN_D11, GPIO_FN_D10, GPIO_FN_D9, GPIO_FN_D8, | ||
102 | GPIO_FN_D7, GPIO_FN_D6, GPIO_FN_D5, GPIO_FN_D4, | ||
103 | GPIO_FN_D3, GPIO_FN_D2, GPIO_FN_D1, GPIO_FN_D0, | ||
104 | |||
105 | GPIO_FN_BS, | ||
106 | GPIO_FN_CS4, GPIO_FN_CS3, GPIO_FN_CS2, GPIO_FN_CS1, GPIO_FN_CS0, | ||
107 | GPIO_FN_CS5CE1A, | ||
108 | GPIO_FN_CE2A, GPIO_FN_CE2B, | ||
109 | GPIO_FN_RD, GPIO_FN_RDWR, | ||
110 | GPIO_FN_WE3ICIOWRAHDQMUU, GPIO_FN_WE2ICIORDDQMUL, | ||
111 | GPIO_FN_WE1DQMUWE, GPIO_FN_WE0DQML, | ||
112 | GPIO_FN_RAS, GPIO_FN_CAS, GPIO_FN_CKE, | ||
113 | GPIO_FN_WAIT, GPIO_FN_BREQ, GPIO_FN_BACK, | ||
114 | GPIO_FN_IOIS16, | ||
115 | |||
116 | /* TMU */ | ||
117 | GPIO_FN_TIOC4D, GPIO_FN_TIOC4C, GPIO_FN_TIOC4B, GPIO_FN_TIOC4A, | ||
118 | GPIO_FN_TIOC3D, GPIO_FN_TIOC3C, GPIO_FN_TIOC3B, GPIO_FN_TIOC3A, | ||
119 | GPIO_FN_TIOC2B, GPIO_FN_TIOC1B, GPIO_FN_TIOC2A, GPIO_FN_TIOC1A, | ||
120 | GPIO_FN_TIOC0D, GPIO_FN_TIOC0C, GPIO_FN_TIOC0B, GPIO_FN_TIOC0A, | ||
121 | GPIO_FN_TCLKD, GPIO_FN_TCLKC, GPIO_FN_TCLKB, GPIO_FN_TCLKA, | ||
122 | |||
123 | /* SSU */ | ||
124 | GPIO_FN_SCS0_PD, GPIO_FN_SSO0_PD, GPIO_FN_SSI0_PD, GPIO_FN_SSCK0_PD, | ||
125 | GPIO_FN_SCS0_PF, GPIO_FN_SSO0_PF, GPIO_FN_SSI0_PF, GPIO_FN_SSCK0_PF, | ||
126 | GPIO_FN_SCS1_PD, GPIO_FN_SSO1_PD, GPIO_FN_SSI1_PD, GPIO_FN_SSCK1_PD, | ||
127 | GPIO_FN_SCS1_PF, GPIO_FN_SSO1_PF, GPIO_FN_SSI1_PF, GPIO_FN_SSCK1_PF, | ||
128 | |||
129 | /* SCIF */ | ||
130 | GPIO_FN_SCK0, GPIO_FN_RXD0, GPIO_FN_TXD0, | ||
131 | GPIO_FN_SCK1, GPIO_FN_RXD1, GPIO_FN_TXD1, GPIO_FN_RTS1, GPIO_FN_CTS1, | ||
132 | GPIO_FN_SCK2, GPIO_FN_RXD2, GPIO_FN_TXD2, | ||
133 | GPIO_FN_SCK3, GPIO_FN_RXD3, GPIO_FN_TXD3, | ||
134 | GPIO_FN_SCK4, GPIO_FN_RXD4, GPIO_FN_TXD4, | ||
135 | GPIO_FN_SCK5, GPIO_FN_RXD5, GPIO_FN_TXD5, GPIO_FN_RTS5, GPIO_FN_CTS5, | ||
136 | GPIO_FN_SCK6, GPIO_FN_RXD6, GPIO_FN_TXD6, | ||
137 | GPIO_FN_SCK7, GPIO_FN_RXD7, GPIO_FN_TXD7, GPIO_FN_RTS7, GPIO_FN_CTS7, | ||
138 | |||
139 | /* RSPI */ | ||
140 | GPIO_FN_MISO0_PJ19, GPIO_FN_MISO0_PB20, | ||
141 | GPIO_FN_MOSI0_PJ18, GPIO_FN_MOSI0_PB19, | ||
142 | GPIO_FN_SSL00_PJ17, GPIO_FN_SSL00_PB18, | ||
143 | GPIO_FN_RSPCK0_PJ16, GPIO_FN_RSPCK0_PB17, | ||
144 | GPIO_FN_RSPCK1, GPIO_FN_MOSI1, | ||
145 | GPIO_FN_MISO1, GPIO_FN_SSL10, | ||
146 | |||
147 | /* IIC3 */ | ||
148 | GPIO_FN_SCL0, GPIO_FN_SCL1, GPIO_FN_SCL2, | ||
149 | GPIO_FN_SDA2, GPIO_FN_SDA1, GPIO_FN_SDA0, | ||
150 | |||
151 | /* SSI */ | ||
152 | GPIO_FN_SSISCK0, GPIO_FN_SSIWS0, GPIO_FN_SSITXD0, GPIO_FN_SSIRXD0, | ||
153 | GPIO_FN_SSIWS1, GPIO_FN_SSIWS2, GPIO_FN_SSIWS3, | ||
154 | GPIO_FN_SSISCK1, GPIO_FN_SSISCK2, GPIO_FN_SSISCK3, | ||
155 | GPIO_FN_SSIDATA1, GPIO_FN_SSIDATA2, GPIO_FN_SSIDATA3, | ||
156 | GPIO_FN_AUDIO_CLK, | ||
157 | GPIO_FN_AUDIO_XOUT, | ||
158 | |||
159 | /* SIOF */ | ||
160 | GPIO_FN_SIOFTXD, GPIO_FN_SIOFRXD, GPIO_FN_SIOFSYNC, GPIO_FN_SIOFSCK, | ||
161 | |||
162 | /* SPDIF */ | ||
163 | GPIO_FN_SPDIF_IN, | ||
164 | GPIO_FN_SPDIF_OUT, | ||
165 | |||
166 | /* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */ | ||
167 | GPIO_FN_FCE, | ||
168 | GPIO_FN_FRB, | ||
169 | |||
170 | /* VDC */ | ||
171 | GPIO_FN_DV_CLK, GPIO_FN_DV_VSYNC, GPIO_FN_DV_HSYNC, | ||
172 | GPIO_FN_DV_DATA23, GPIO_FN_DV_DATA22, | ||
173 | GPIO_FN_DV_DATA21, GPIO_FN_DV_DATA20, | ||
174 | GPIO_FN_DV_DATA19, GPIO_FN_DV_DATA18, | ||
175 | GPIO_FN_DV_DATA17, GPIO_FN_DV_DATA16, | ||
176 | GPIO_FN_DV_DATA15, GPIO_FN_DV_DATA14, | ||
177 | GPIO_FN_DV_DATA13, GPIO_FN_DV_DATA12, | ||
178 | GPIO_FN_DV_DATA11, GPIO_FN_DV_DATA10, | ||
179 | GPIO_FN_DV_DATA9, GPIO_FN_DV_DATA8, | ||
180 | GPIO_FN_DV_DATA7, GPIO_FN_DV_DATA6, | ||
181 | GPIO_FN_DV_DATA5, GPIO_FN_DV_DATA4, | ||
182 | GPIO_FN_DV_DATA3, GPIO_FN_DV_DATA2, | ||
183 | GPIO_FN_DV_DATA1, GPIO_FN_DV_DATA0, | ||
184 | GPIO_FN_LCD_CLK, GPIO_FN_LCD_EXTCLK, | ||
185 | GPIO_FN_LCD_VSYNC, GPIO_FN_LCD_HSYNC, GPIO_FN_LCD_DE, | ||
186 | GPIO_FN_LCD_DATA23, GPIO_FN_LCD_DATA22, | ||
187 | GPIO_FN_LCD_DATA21, GPIO_FN_LCD_DATA20, | ||
188 | GPIO_FN_LCD_DATA19, GPIO_FN_LCD_DATA18, | ||
189 | GPIO_FN_LCD_DATA17, GPIO_FN_LCD_DATA16, | ||
190 | GPIO_FN_LCD_DATA15, GPIO_FN_LCD_DATA14, | ||
191 | GPIO_FN_LCD_DATA13, GPIO_FN_LCD_DATA12, | ||
192 | GPIO_FN_LCD_DATA11, GPIO_FN_LCD_DATA10, | ||
193 | GPIO_FN_LCD_DATA9, GPIO_FN_LCD_DATA8, | ||
194 | GPIO_FN_LCD_DATA7, GPIO_FN_LCD_DATA6, | ||
195 | GPIO_FN_LCD_DATA5, GPIO_FN_LCD_DATA4, | ||
196 | GPIO_FN_LCD_DATA3, GPIO_FN_LCD_DATA2, | ||
197 | GPIO_FN_LCD_DATA1, GPIO_FN_LCD_DATA0, | ||
198 | GPIO_FN_LCD_M_DISP, | ||
199 | }; | ||
200 | |||
201 | #endif /* __ASM_SH7269_H__ */ | ||
diff --git a/arch/sh/include/cpu-sh4/cpu/freq.h b/arch/sh/include/cpu-sh4/cpu/freq.h index cffd25ed0240..1631fc238e6f 100644 --- a/arch/sh/include/cpu-sh4/cpu/freq.h +++ b/arch/sh/include/cpu-sh4/cpu/freq.h | |||
@@ -47,6 +47,11 @@ | |||
47 | #define MSTPCR1 0xa4150034 | 47 | #define MSTPCR1 0xa4150034 |
48 | #define MSTPCR2 0xa4150038 | 48 | #define MSTPCR2 0xa4150038 |
49 | 49 | ||
50 | #elif defined(CONFIG_CPU_SUBTYPE_SH7734) | ||
51 | #define FRQCR0 0xffc80000 | ||
52 | #define FRQCR2 0xffc80008 | ||
53 | #define FRQMR1 0xffc80014 | ||
54 | #define FRQMR2 0xffc80018 | ||
50 | #elif defined(CONFIG_CPU_SUBTYPE_SH7785) | 55 | #elif defined(CONFIG_CPU_SUBTYPE_SH7785) |
51 | #define FRQCR0 0xffc80000 | 56 | #define FRQCR0 0xffc80000 |
52 | #define FRQCR1 0xffc80004 | 57 | #define FRQCR1 0xffc80004 |
diff --git a/arch/sh/include/cpu-sh4/cpu/sh7734.h b/arch/sh/include/cpu-sh4/cpu/sh7734.h new file mode 100644 index 000000000000..2fb9a7b71b41 --- /dev/null +++ b/arch/sh/include/cpu-sh4/cpu/sh7734.h | |||
@@ -0,0 +1,306 @@ | |||
1 | #ifndef __ASM_SH7734_H__ | ||
2 | #define __ASM_SH7734_H__ | ||
3 | |||
4 | /* Pin Function Controller: | ||
5 | * GPIO_FN_xx - GPIO used to select pin function | ||
6 | * GPIO_GP_x_x - GPIO mapped to real I/O pin on CPU | ||
7 | */ | ||
8 | enum { | ||
9 | GPIO_GP_0_0, GPIO_GP_0_1, GPIO_GP_0_2, GPIO_GP_0_3, | ||
10 | GPIO_GP_0_4, GPIO_GP_0_5, GPIO_GP_0_6, GPIO_GP_0_7, | ||
11 | GPIO_GP_0_8, GPIO_GP_0_9, GPIO_GP_0_10, GPIO_GP_0_11, | ||
12 | GPIO_GP_0_12, GPIO_GP_0_13, GPIO_GP_0_14, GPIO_GP_0_15, | ||
13 | GPIO_GP_0_16, GPIO_GP_0_17, GPIO_GP_0_18, GPIO_GP_0_19, | ||
14 | GPIO_GP_0_20, GPIO_GP_0_21, GPIO_GP_0_22, GPIO_GP_0_23, | ||
15 | GPIO_GP_0_24, GPIO_GP_0_25, GPIO_GP_0_26, GPIO_GP_0_27, | ||
16 | GPIO_GP_0_28, GPIO_GP_0_29, GPIO_GP_0_30, GPIO_GP_0_31, | ||
17 | |||
18 | GPIO_GP_1_0, GPIO_GP_1_1, GPIO_GP_1_2, GPIO_GP_1_3, | ||
19 | GPIO_GP_1_4, GPIO_GP_1_5, GPIO_GP_1_6, GPIO_GP_1_7, | ||
20 | GPIO_GP_1_8, GPIO_GP_1_9, GPIO_GP_1_10, GPIO_GP_1_11, | ||
21 | GPIO_GP_1_12, GPIO_GP_1_13, GPIO_GP_1_14, GPIO_GP_1_15, | ||
22 | GPIO_GP_1_16, GPIO_GP_1_17, GPIO_GP_1_18, GPIO_GP_1_19, | ||
23 | GPIO_GP_1_20, GPIO_GP_1_21, GPIO_GP_1_22, GPIO_GP_1_23, | ||
24 | GPIO_GP_1_24, GPIO_GP_1_25, GPIO_GP_1_26, GPIO_GP_1_27, | ||
25 | GPIO_GP_1_28, GPIO_GP_1_29, GPIO_GP_1_30, GPIO_GP_1_31, | ||
26 | |||
27 | GPIO_GP_2_0, GPIO_GP_2_1, GPIO_GP_2_2, GPIO_GP_2_3, | ||
28 | GPIO_GP_2_4, GPIO_GP_2_5, GPIO_GP_2_6, GPIO_GP_2_7, | ||
29 | GPIO_GP_2_8, GPIO_GP_2_9, GPIO_GP_2_10, GPIO_GP_2_11, | ||
30 | GPIO_GP_2_12, GPIO_GP_2_13, GPIO_GP_2_14, GPIO_GP_2_15, | ||
31 | GPIO_GP_2_16, GPIO_GP_2_17, GPIO_GP_2_18, GPIO_GP_2_19, | ||
32 | GPIO_GP_2_20, GPIO_GP_2_21, GPIO_GP_2_22, GPIO_GP_2_23, | ||
33 | GPIO_GP_2_24, GPIO_GP_2_25, GPIO_GP_2_26, GPIO_GP_2_27, | ||
34 | GPIO_GP_2_28, GPIO_GP_2_29, GPIO_GP_2_30, GPIO_GP_2_31, | ||
35 | |||
36 | GPIO_GP_3_0, GPIO_GP_3_1, GPIO_GP_3_2, GPIO_GP_3_3, | ||
37 | GPIO_GP_3_4, GPIO_GP_3_5, GPIO_GP_3_6, GPIO_GP_3_7, | ||
38 | GPIO_GP_3_8, GPIO_GP_3_9, GPIO_GP_3_10, GPIO_GP_3_11, | ||
39 | GPIO_GP_3_12, GPIO_GP_3_13, GPIO_GP_3_14, GPIO_GP_3_15, | ||
40 | GPIO_GP_3_16, GPIO_GP_3_17, GPIO_GP_3_18, GPIO_GP_3_19, | ||
41 | GPIO_GP_3_20, GPIO_GP_3_21, GPIO_GP_3_22, GPIO_GP_3_23, | ||
42 | GPIO_GP_3_24, GPIO_GP_3_25, GPIO_GP_3_26, GPIO_GP_3_27, | ||
43 | GPIO_GP_3_28, GPIO_GP_3_29, GPIO_GP_3_30, GPIO_GP_3_31, | ||
44 | |||
45 | GPIO_GP_4_0, GPIO_GP_4_1, GPIO_GP_4_2, GPIO_GP_4_3, | ||
46 | GPIO_GP_4_4, GPIO_GP_4_5, GPIO_GP_4_6, GPIO_GP_4_7, | ||
47 | GPIO_GP_4_8, GPIO_GP_4_9, GPIO_GP_4_10, GPIO_GP_4_11, | ||
48 | GPIO_GP_4_12, GPIO_GP_4_13, GPIO_GP_4_14, GPIO_GP_4_15, | ||
49 | GPIO_GP_4_16, GPIO_GP_4_17, GPIO_GP_4_18, GPIO_GP_4_19, | ||
50 | GPIO_GP_4_20, GPIO_GP_4_21, GPIO_GP_4_22, GPIO_GP_4_23, | ||
51 | GPIO_GP_4_24, GPIO_GP_4_25, GPIO_GP_4_26, GPIO_GP_4_27, | ||
52 | GPIO_GP_4_28, GPIO_GP_4_29, GPIO_GP_4_30, GPIO_GP_4_31, | ||
53 | |||
54 | GPIO_GP_5_0, GPIO_GP_5_1, GPIO_GP_5_2, GPIO_GP_5_3, | ||
55 | GPIO_GP_5_4, GPIO_GP_5_5, GPIO_GP_5_6, GPIO_GP_5_7, | ||
56 | GPIO_GP_5_8, GPIO_GP_5_9, GPIO_GP_5_10, GPIO_GP_5_11, | ||
57 | |||
58 | GPIO_FN_CLKOUT, GPIO_FN_BS, GPIO_FN_CS0, GPIO_FN_EX_CS0, GPIO_FN_RD, | ||
59 | GPIO_FN_WE0, GPIO_FN_WE1, | ||
60 | |||
61 | GPIO_FN_SCL0, GPIO_FN_PENC0, GPIO_FN_USB_OVC0, | ||
62 | |||
63 | GPIO_FN_IRQ2_B, GPIO_FN_IRQ3_B, | ||
64 | |||
65 | /* IPSR0 */ | ||
66 | GPIO_FN_A15, GPIO_FN_ST0_VCO_CLKIN, GPIO_FN_LCD_DATA15_A, | ||
67 | GPIO_FN_TIOC3D_C, | ||
68 | GPIO_FN_A14, GPIO_FN_LCD_DATA14_A, GPIO_FN_TIOC3C_C, | ||
69 | GPIO_FN_A13, GPIO_FN_LCD_DATA13_A, GPIO_FN_TIOC3B_C, | ||
70 | GPIO_FN_A12, GPIO_FN_LCD_DATA12_A, GPIO_FN_TIOC3A_C, | ||
71 | GPIO_FN_A11, GPIO_FN_ST0_D7, GPIO_FN_LCD_DATA11_A, | ||
72 | GPIO_FN_TIOC2B_C, | ||
73 | GPIO_FN_A10, GPIO_FN_ST0_D6, GPIO_FN_LCD_DATA10_A, | ||
74 | GPIO_FN_TIOC2A_C, | ||
75 | GPIO_FN_A9, GPIO_FN_ST0_D5, GPIO_FN_LCD_DATA9_A, | ||
76 | GPIO_FN_TIOC1B_C, | ||
77 | GPIO_FN_A8, GPIO_FN_ST0_D4, GPIO_FN_LCD_DATA8_A, | ||
78 | GPIO_FN_TIOC1A_C, | ||
79 | GPIO_FN_A7, GPIO_FN_ST0_D3, GPIO_FN_LCD_DATA7_A, GPIO_FN_TIOC0D_C, | ||
80 | GPIO_FN_A6, GPIO_FN_ST0_D2, GPIO_FN_LCD_DATA6_A, GPIO_FN_TIOC0C_C, | ||
81 | GPIO_FN_A5, GPIO_FN_ST0_D1, GPIO_FN_LCD_DATA5_A, GPIO_FN_TIOC0B_C, | ||
82 | GPIO_FN_A4, GPIO_FN_ST0_D0, GPIO_FN_LCD_DATA4_A, GPIO_FN_TIOC0A_C, | ||
83 | GPIO_FN_A3, GPIO_FN_ST0_VLD, GPIO_FN_LCD_DATA3_A, GPIO_FN_TCLKD_C, | ||
84 | GPIO_FN_A2, GPIO_FN_ST0_SYC, GPIO_FN_LCD_DATA2_A, GPIO_FN_TCLKC_C, | ||
85 | GPIO_FN_A1, GPIO_FN_ST0_REQ, GPIO_FN_LCD_DATA1_A, GPIO_FN_TCLKB_C, | ||
86 | GPIO_FN_A0, GPIO_FN_ST0_CLKIN, GPIO_FN_LCD_DATA0_A, GPIO_FN_TCLKA_C, | ||
87 | |||
88 | /* IPSR1 */ | ||
89 | GPIO_FN_D3, GPIO_FN_SD0_DAT3_A, GPIO_FN_MMC_D3_A, GPIO_FN_ST1_D6, | ||
90 | GPIO_FN_FD3_A, | ||
91 | GPIO_FN_D2, GPIO_FN_SD0_DAT2_A, GPIO_FN_MMC_D2_A, GPIO_FN_ST1_D5, | ||
92 | GPIO_FN_FD2_A, | ||
93 | GPIO_FN_D1, GPIO_FN_SD0_DAT1_A, GPIO_FN_MMC_D1_A, GPIO_FN_ST1_D4, | ||
94 | GPIO_FN_FD1_A, | ||
95 | GPIO_FN_D0, GPIO_FN_SD0_DAT0_A, GPIO_FN_MMC_D0_A, GPIO_FN_ST1_D3, | ||
96 | GPIO_FN_FD0_A, | ||
97 | GPIO_FN_A25, GPIO_FN_TX2_D, GPIO_FN_ST1_D2, | ||
98 | GPIO_FN_A24, GPIO_FN_RX2_D, GPIO_FN_ST1_D1, | ||
99 | GPIO_FN_A23, GPIO_FN_ST1_D0, GPIO_FN_LCD_M_DISP_A, | ||
100 | GPIO_FN_A22, GPIO_FN_ST1_VLD, GPIO_FN_LCD_VEPWC_A, | ||
101 | GPIO_FN_A21, GPIO_FN_ST1_SYC, GPIO_FN_LCD_VCPWC_A, | ||
102 | GPIO_FN_A20, GPIO_FN_ST1_REQ, GPIO_FN_LCD_FLM_A, | ||
103 | GPIO_FN_A19, GPIO_FN_ST1_CLKIN, GPIO_FN_LCD_CLK_A, GPIO_FN_TIOC4D_C, | ||
104 | GPIO_FN_A18, GPIO_FN_ST1_PWM, GPIO_FN_LCD_CL2_A, GPIO_FN_TIOC4C_C, | ||
105 | GPIO_FN_A17, GPIO_FN_ST1_VCO_CLKIN, GPIO_FN_LCD_CL1_A, GPIO_FN_TIOC4B_C, | ||
106 | GPIO_FN_A16, GPIO_FN_ST0_PWM, GPIO_FN_LCD_DON_A, GPIO_FN_TIOC4A_C, | ||
107 | |||
108 | /* IPSR2 */ | ||
109 | GPIO_FN_D14, GPIO_FN_TX2_B, GPIO_FN_FSE_A, GPIO_FN_ET0_TX_CLK_B, | ||
110 | GPIO_FN_D13, GPIO_FN_RX2_B, GPIO_FN_FRB_A, GPIO_FN_ET0_ETXD6_B, | ||
111 | GPIO_FN_D12, GPIO_FN_FWE_A, GPIO_FN_ET0_ETXD5_B, | ||
112 | GPIO_FN_D11, GPIO_FN_RSPI_MISO_A, GPIO_FN_QMI_QIO1_A, | ||
113 | GPIO_FN_FRE_A, GPIO_FN_ET0_ETXD3_B, | ||
114 | GPIO_FN_D10, GPIO_FN_RSPI_MOSI_A, GPIO_FN_QMO_QIO0_A, | ||
115 | GPIO_FN_FALE_A, GPIO_FN_ET0_ETXD2_B, | ||
116 | GPIO_FN_D9, GPIO_FN_SD0_CMD_A, GPIO_FN_MMC_CMD_A, GPIO_FN_QIO3_A, | ||
117 | GPIO_FN_FCLE_A, GPIO_FN_ET0_ETXD1_B, | ||
118 | GPIO_FN_D8, GPIO_FN_SD0_CLK_A, GPIO_FN_MMC_CLK_A, GPIO_FN_QIO2_A, | ||
119 | GPIO_FN_FCE_A, GPIO_FN_ET0_GTX_CLK_B, | ||
120 | GPIO_FN_D7, GPIO_FN_RSPI_SSL_A, GPIO_FN_MMC_D7_A, GPIO_FN_QSSL_A, | ||
121 | GPIO_FN_FD7_A, | ||
122 | GPIO_FN_D6, GPIO_FN_RSPI_RSPCK_A, GPIO_FN_MMC_D6_A, GPIO_FN_QSPCLK_A, | ||
123 | GPIO_FN_FD6_A, | ||
124 | GPIO_FN_D5, GPIO_FN_SD0_WP_A, GPIO_FN_MMC_D5_A, GPIO_FN_FD5_A, | ||
125 | GPIO_FN_D4, GPIO_FN_SD0_CD_A, GPIO_FN_MMC_D4_A, GPIO_FN_ST1_D7, | ||
126 | GPIO_FN_FD4_A, | ||
127 | |||
128 | /* IPSR3 */ | ||
129 | GPIO_FN_DRACK0, GPIO_FN_SD1_DAT2_A, GPIO_FN_ATAG, GPIO_FN_TCLK1_A, | ||
130 | GPIO_FN_ET0_ETXD7, | ||
131 | GPIO_FN_EX_WAIT2, GPIO_FN_SD1_DAT1_A, GPIO_FN_DACK2, GPIO_FN_CAN1_RX_C, | ||
132 | GPIO_FN_ET0_MAGIC_C, GPIO_FN_ET0_ETXD6_A, | ||
133 | GPIO_FN_EX_WAIT1, GPIO_FN_SD1_DAT0_A, GPIO_FN_DREQ2, GPIO_FN_CAN1_TX_C, | ||
134 | GPIO_FN_ET0_LINK_C, GPIO_FN_ET0_ETXD5_A, | ||
135 | GPIO_FN_EX_WAIT0, GPIO_FN_TCLK1_B, | ||
136 | GPIO_FN_RD_WR, GPIO_FN_TCLK0, | ||
137 | GPIO_FN_EX_CS5, GPIO_FN_SD1_CMD_A, GPIO_FN_ATADIR, GPIO_FN_QSSL_B, | ||
138 | GPIO_FN_ET0_ETXD3_A, | ||
139 | GPIO_FN_EX_CS4, GPIO_FN_SD1_WP_A, GPIO_FN_ATAWR, GPIO_FN_QMI_QIO1_B, | ||
140 | GPIO_FN_ET0_ETXD2_A, | ||
141 | GPIO_FN_EX_CS3, GPIO_FN_SD1_CD_A, GPIO_FN_ATARD, GPIO_FN_QMO_QIO0_B, | ||
142 | GPIO_FN_ET0_ETXD1_A, | ||
143 | GPIO_FN_EX_CS2, GPIO_FN_TX3_B, GPIO_FN_ATACS1, GPIO_FN_QSPCLK_B, | ||
144 | GPIO_FN_ET0_GTX_CLK_A, | ||
145 | GPIO_FN_EX_CS1, GPIO_FN_RX3_B, GPIO_FN_ATACS0, GPIO_FN_QIO2_B, | ||
146 | GPIO_FN_ET0_ETXD0, | ||
147 | GPIO_FN_CS1_A26, GPIO_FN_QIO3_B, | ||
148 | GPIO_FN_D15, GPIO_FN_SCK2_B, | ||
149 | |||
150 | /* IPSR4 */ | ||
151 | GPIO_FN_SCK2_A, GPIO_FN_VI0_G3, | ||
152 | GPIO_FN_RTS1_B, GPIO_FN_VI0_G2, | ||
153 | GPIO_FN_CTS1_B, GPIO_FN_VI0_DATA7_VI0_G1, | ||
154 | GPIO_FN_TX1_B, GPIO_FN_VI0_DATA6_VI0_G0, GPIO_FN_ET0_PHY_INT_A, | ||
155 | GPIO_FN_RX1_B, GPIO_FN_VI0_DATA5_VI0_B5, GPIO_FN_ET0_MAGIC_A, | ||
156 | GPIO_FN_SCK1_B, GPIO_FN_VI0_DATA4_VI0_B4, GPIO_FN_ET0_LINK_A, | ||
157 | GPIO_FN_RTS0_B, GPIO_FN_VI0_DATA3_VI0_B3, GPIO_FN_ET0_MDIO_A, | ||
158 | GPIO_FN_CTS0_B, GPIO_FN_VI0_DATA2_VI0_B2, GPIO_FN_RMII0_MDIO_A, | ||
159 | GPIO_FN_ET0_MDC, | ||
160 | GPIO_FN_HTX0_A, GPIO_FN_TX1_A, GPIO_FN_VI0_DATA1_VI0_B1, | ||
161 | GPIO_FN_RMII0_MDC_A, GPIO_FN_ET0_COL, | ||
162 | GPIO_FN_HRX0_A, GPIO_FN_RX1_A, GPIO_FN_VI0_DATA0_VI0_B0, | ||
163 | GPIO_FN_RMII0_CRS_DV_A, GPIO_FN_ET0_CRS, | ||
164 | GPIO_FN_HSCK0_A, GPIO_FN_SCK1_A, GPIO_FN_VI0_VSYNC, | ||
165 | GPIO_FN_RMII0_RX_ER_A, GPIO_FN_ET0_RX_ER, | ||
166 | GPIO_FN_HRTS0_A, GPIO_FN_RTS1_A, GPIO_FN_VI0_HSYNC, | ||
167 | GPIO_FN_RMII0_TXD_EN_A, GPIO_FN_ET0_RX_DV, | ||
168 | GPIO_FN_HCTS0_A, GPIO_FN_CTS1_A, GPIO_FN_VI0_FIELD, | ||
169 | GPIO_FN_RMII0_RXD1_A, GPIO_FN_ET0_ERXD7, | ||
170 | |||
171 | /* IPSR5 */ | ||
172 | GPIO_FN_SD2_CLK_A, GPIO_FN_RX2_A, GPIO_FN_VI0_G4, GPIO_FN_ET0_RX_CLK_B, | ||
173 | GPIO_FN_SD2_CMD_A, GPIO_FN_TX2_A, GPIO_FN_VI0_G5, GPIO_FN_ET0_ERXD2_B, | ||
174 | GPIO_FN_SD2_DAT0_A, GPIO_FN_RX3_A, GPIO_FN_VI0_R0, GPIO_FN_ET0_ERXD3_B, | ||
175 | GPIO_FN_SD2_DAT1_A, GPIO_FN_TX3_A, GPIO_FN_VI0_R1, GPIO_FN_ET0_MDIO_B, | ||
176 | GPIO_FN_SD2_DAT2_A, GPIO_FN_RX4_A, GPIO_FN_VI0_R2, GPIO_FN_ET0_LINK_B, | ||
177 | GPIO_FN_SD2_DAT3_A, GPIO_FN_TX4_A, GPIO_FN_VI0_R3, GPIO_FN_ET0_MAGIC_B, | ||
178 | GPIO_FN_SD2_CD_A, GPIO_FN_RX5_A, GPIO_FN_VI0_R4, GPIO_FN_ET0_PHY_INT_B, | ||
179 | GPIO_FN_SD2_WP_A, GPIO_FN_TX5_A, GPIO_FN_VI0_R5, | ||
180 | GPIO_FN_REF125CK, GPIO_FN_ADTRG, GPIO_FN_RX5_C, | ||
181 | GPIO_FN_REF50CK, GPIO_FN_CTS1_E, GPIO_FN_HCTS0_D, | ||
182 | |||
183 | /* IPSR6 */ | ||
184 | GPIO_FN_DU0_DR0, GPIO_FN_SCIF_CLK_B, GPIO_FN_HRX0_D, GPIO_FN_IETX_A, | ||
185 | GPIO_FN_TCLKA_A, GPIO_FN_HIFD00, | ||
186 | GPIO_FN_DU0_DR1, GPIO_FN_SCK0_B, GPIO_FN_HTX0_D, GPIO_FN_IERX_A, | ||
187 | GPIO_FN_TCLKB_A, GPIO_FN_HIFD01, | ||
188 | GPIO_FN_DU0_DR2, GPIO_FN_RX0_B, GPIO_FN_TCLKC_A, GPIO_FN_HIFD02, | ||
189 | GPIO_FN_DU0_DR3, GPIO_FN_TX0_B, GPIO_FN_TCLKD_A, GPIO_FN_HIFD03, | ||
190 | GPIO_FN_DU0_DR4, GPIO_FN_CTS0_C, GPIO_FN_TIOC0A_A, GPIO_FN_HIFD04, | ||
191 | GPIO_FN_DU0_DR5, GPIO_FN_RTS0_C, GPIO_FN_TIOC0B_A, GPIO_FN_HIFD05, | ||
192 | GPIO_FN_DU0_DR6, GPIO_FN_SCK1_C, GPIO_FN_TIOC0C_A, GPIO_FN_HIFD06, | ||
193 | GPIO_FN_DU0_DR7, GPIO_FN_RX1_C, GPIO_FN_TIOC0D_A, GPIO_FN_HIFD07, | ||
194 | GPIO_FN_DU0_DG0, GPIO_FN_TX1_C, GPIO_FN_HSCK0_D, GPIO_FN_IECLK_A, | ||
195 | GPIO_FN_TIOC1A_A, GPIO_FN_HIFD08, | ||
196 | GPIO_FN_DU0_DG1, GPIO_FN_CTS1_C, GPIO_FN_HRTS0_D, GPIO_FN_TIOC1B_A, | ||
197 | GPIO_FN_HIFD09, | ||
198 | |||
199 | /* IPSR7 */ | ||
200 | GPIO_FN_DU0_DG2, GPIO_FN_RTS1_C, GPIO_FN_RMII0_MDC_B, GPIO_FN_TIOC2A_A, | ||
201 | GPIO_FN_HIFD10, | ||
202 | GPIO_FN_DU0_DG3, GPIO_FN_SCK2_C, GPIO_FN_RMII0_MDIO_B, GPIO_FN_TIOC2B_A, | ||
203 | GPIO_FN_HIFD11, | ||
204 | GPIO_FN_DU0_DG4, GPIO_FN_RX2_C, GPIO_FN_RMII0_CRS_DV_B, | ||
205 | GPIO_FN_TIOC3A_A, GPIO_FN_HIFD12, | ||
206 | GPIO_FN_DU0_DG5, GPIO_FN_TX2_C, GPIO_FN_RMII0_RX_ER_B, | ||
207 | GPIO_FN_TIOC3B_A, GPIO_FN_HIFD13, | ||
208 | GPIO_FN_DU0_DG6, GPIO_FN_RX3_C, GPIO_FN_RMII0_RXD0_B, | ||
209 | GPIO_FN_TIOC3C_A, GPIO_FN_HIFD14, | ||
210 | GPIO_FN_DU0_DG7, GPIO_FN_TX3_C, GPIO_FN_RMII0_RXD1_B, | ||
211 | GPIO_FN_TIOC3D_A, GPIO_FN_HIFD15, | ||
212 | GPIO_FN_DU0_DB0, GPIO_FN_RX4_C, GPIO_FN_RMII0_TXD_EN_B, | ||
213 | GPIO_FN_TIOC4A_A, GPIO_FN_HIFCS, | ||
214 | GPIO_FN_DU0_DB1, GPIO_FN_TX4_C, GPIO_FN_RMII0_TXD0_B, | ||
215 | GPIO_FN_TIOC4B_A, GPIO_FN_HIFRS, | ||
216 | GPIO_FN_DU0_DB2, GPIO_FN_RX5_B, GPIO_FN_RMII0_TXD1_B, | ||
217 | GPIO_FN_TIOC4C_A, GPIO_FN_HIFWR, | ||
218 | GPIO_FN_DU0_DB3, GPIO_FN_TX5_B, GPIO_FN_TIOC4D_A, GPIO_FN_HIFRD, | ||
219 | GPIO_FN_DU0_DB4, GPIO_FN_HIFINT, | ||
220 | |||
221 | /* IPSR8 */ | ||
222 | GPIO_FN_DU0_DB5, GPIO_FN_HIFDREQ, | ||
223 | GPIO_FN_DU0_DB6, GPIO_FN_HIFRDY, | ||
224 | GPIO_FN_DU0_DB7, GPIO_FN_SSI_SCK0_B, GPIO_FN_HIFEBL_B, | ||
225 | GPIO_FN_DU0_DOTCLKIN, GPIO_FN_HSPI_CS0_C, GPIO_FN_SSI_WS0_B, | ||
226 | GPIO_FN_DU0_DOTCLKOUT, GPIO_FN_HSPI_CLK0_C, GPIO_FN_SSI_SDATA0_B, | ||
227 | GPIO_FN_DU0_EXHSYNC_DU0_HSYNC, GPIO_FN_HSPI_TX0_C, GPIO_FN_SSI_SCK1_B, | ||
228 | GPIO_FN_DU0_EXVSYNC_DU0_VSYNC, GPIO_FN_HSPI_RX0_C, GPIO_FN_SSI_WS1_B, | ||
229 | GPIO_FN_DU0_EXODDF_DU0_ODDF, GPIO_FN_CAN0_RX_B, GPIO_FN_HSCK0_B, | ||
230 | GPIO_FN_SSI_SDATA1_B, | ||
231 | GPIO_FN_DU0_DISP, GPIO_FN_CAN0_TX_B, GPIO_FN_HRX0_B, | ||
232 | GPIO_FN_AUDIO_CLKA_B, | ||
233 | GPIO_FN_DU0_CDE, GPIO_FN_HTX0_B, GPIO_FN_AUDIO_CLKB_B, | ||
234 | GPIO_FN_LCD_VCPWC_B, | ||
235 | GPIO_FN_IRQ0_A, GPIO_FN_HSPI_TX_B, GPIO_FN_RX3_E, GPIO_FN_ET0_ERXD0, | ||
236 | GPIO_FN_IRQ1_A, GPIO_FN_HSPI_RX_B, GPIO_FN_TX3_E, GPIO_FN_ET0_ERXD1, | ||
237 | GPIO_FN_IRQ2_A, GPIO_FN_CTS0_A, GPIO_FN_HCTS0_B, GPIO_FN_ET0_ERXD2_A, | ||
238 | GPIO_FN_IRQ3_A, GPIO_FN_RTS0_A, GPIO_FN_HRTS0_B, GPIO_FN_ET0_ERXD3_A, | ||
239 | |||
240 | /* IPSR9 */ | ||
241 | GPIO_FN_VI1_CLK_A, GPIO_FN_FD0_B, GPIO_FN_LCD_DATA0_B, | ||
242 | GPIO_FN_VI1_0_A, GPIO_FN_FD1_B, GPIO_FN_LCD_DATA1_B, | ||
243 | GPIO_FN_VI1_1_A, GPIO_FN_FD2_B, GPIO_FN_LCD_DATA2_B, | ||
244 | GPIO_FN_VI1_2_A, GPIO_FN_FD3_B, GPIO_FN_LCD_DATA3_B, | ||
245 | GPIO_FN_VI1_3_A, GPIO_FN_FD4_B, GPIO_FN_LCD_DATA4_B, | ||
246 | GPIO_FN_VI1_4_A, GPIO_FN_FD5_B, GPIO_FN_LCD_DATA5_B, | ||
247 | GPIO_FN_VI1_5_A, GPIO_FN_FD6_B, GPIO_FN_LCD_DATA6_B, | ||
248 | GPIO_FN_VI1_6_A, GPIO_FN_FD7_B, GPIO_FN_LCD_DATA7_B, | ||
249 | GPIO_FN_VI1_7_A, GPIO_FN_FCE_B, GPIO_FN_LCD_DATA8_B, | ||
250 | GPIO_FN_SSI_SCK0_A, GPIO_FN_TIOC1A_B, GPIO_FN_LCD_DATA9_B, | ||
251 | GPIO_FN_SSI_WS0_A, GPIO_FN_TIOC1B_B, GPIO_FN_LCD_DATA10_B, | ||
252 | GPIO_FN_SSI_SDATA0_A, GPIO_FN_VI1_0_B, GPIO_FN_TIOC2A_B, | ||
253 | GPIO_FN_LCD_DATA11_B, | ||
254 | GPIO_FN_SSI_SCK1_A, GPIO_FN_VI1_1_B, GPIO_FN_TIOC2B_B, | ||
255 | GPIO_FN_LCD_DATA12_B, | ||
256 | GPIO_FN_SSI_WS1_A, GPIO_FN_VI1_2_B, GPIO_FN_LCD_DATA13_B, | ||
257 | GPIO_FN_SSI_SDATA1_A, GPIO_FN_VI1_3_B, GPIO_FN_LCD_DATA14_B, | ||
258 | |||
259 | /* IPSR10 */ | ||
260 | GPIO_FN_SSI_SCK23, GPIO_FN_VI1_4_B, GPIO_FN_RX1_D, GPIO_FN_FCLE_B, | ||
261 | GPIO_FN_LCD_DATA15_B, | ||
262 | GPIO_FN_SSI_WS23, GPIO_FN_VI1_5_B, GPIO_FN_TX1_D, GPIO_FN_HSCK0_C, | ||
263 | GPIO_FN_FALE_B, GPIO_FN_LCD_DON_B, | ||
264 | GPIO_FN_SSI_SDATA2, GPIO_FN_VI1_6_B, GPIO_FN_HRX0_C, GPIO_FN_FRE_B, | ||
265 | GPIO_FN_LCD_CL1_B, | ||
266 | GPIO_FN_SSI_SDATA3, GPIO_FN_VI1_7_B, GPIO_FN_HTX0_C, GPIO_FN_FWE_B, | ||
267 | GPIO_FN_LCD_CL2_B, | ||
268 | GPIO_FN_AUDIO_CLKA_A, GPIO_FN_VI1_CLK_B, GPIO_FN_SCK1_D, | ||
269 | GPIO_FN_IECLK_B, GPIO_FN_LCD_FLM_B, | ||
270 | GPIO_FN_AUDIO_CLKB_A, GPIO_FN_LCD_CLK_B, | ||
271 | GPIO_FN_AUDIO_CLKC, GPIO_FN_SCK1_E, GPIO_FN_HCTS0_C, GPIO_FN_FRB_B, | ||
272 | GPIO_FN_LCD_VEPWC_B, | ||
273 | GPIO_FN_AUDIO_CLKOUT, GPIO_FN_TX1_E, GPIO_FN_HRTS0_C, GPIO_FN_FSE_B, | ||
274 | GPIO_FN_LCD_M_DISP_B, | ||
275 | GPIO_FN_CAN_CLK_A, GPIO_FN_RX4_D, | ||
276 | GPIO_FN_CAN0_TX_A, GPIO_FN_TX4_D, GPIO_FN_MLB_CLK, | ||
277 | GPIO_FN_CAN1_RX_A, GPIO_FN_IRQ1_B, | ||
278 | GPIO_FN_CAN0_RX_A, GPIO_FN_IRQ0_B, GPIO_FN_MLB_SIG, | ||
279 | GPIO_FN_CAN1_TX_A, GPIO_FN_TX5_C, GPIO_FN_MLB_DAT, | ||
280 | |||
281 | /* IPSR11 */ | ||
282 | GPIO_FN_SCL1, GPIO_FN_SCIF_CLK_C, | ||
283 | GPIO_FN_SDA1, GPIO_FN_RX1_E, | ||
284 | GPIO_FN_SDA0, GPIO_FN_HIFEBL_A, | ||
285 | GPIO_FN_SDSELF, GPIO_FN_RTS1_E, | ||
286 | GPIO_FN_SCIF_CLK_A, GPIO_FN_HSPI_CLK_A, GPIO_FN_VI0_CLK, | ||
287 | GPIO_FN_RMII0_TXD0_A, GPIO_FN_ET0_ERXD4, | ||
288 | GPIO_FN_SCK0_A, GPIO_FN_HSPI_CS_A, GPIO_FN_VI0_CLKENB, | ||
289 | GPIO_FN_RMII0_TXD1_A, GPIO_FN_ET0_ERXD5, | ||
290 | GPIO_FN_RX0_A, GPIO_FN_HSPI_RX_A, GPIO_FN_RMII0_RXD0_A, | ||
291 | GPIO_FN_ET0_ERXD6, | ||
292 | GPIO_FN_TX0_A, GPIO_FN_HSPI_TX_A, | ||
293 | GPIO_FN_PENC1, GPIO_FN_TX3_D, GPIO_FN_CAN1_TX_B, GPIO_FN_TX5_D, | ||
294 | GPIO_FN_IETX_B, | ||
295 | GPIO_FN_USB_OVC1, GPIO_FN_RX3_D, GPIO_FN_CAN1_RX_B, GPIO_FN_RX5_D, | ||
296 | GPIO_FN_IERX_B, | ||
297 | GPIO_FN_DREQ0, GPIO_FN_SD1_CLK_A, GPIO_FN_ET0_TX_EN, | ||
298 | GPIO_FN_DACK0, GPIO_FN_SD1_DAT3_A, GPIO_FN_ET0_TX_ER, | ||
299 | GPIO_FN_DREQ1, GPIO_FN_HSPI_CLK_B, GPIO_FN_RX4_B, GPIO_FN_ET0_PHY_INT_C, | ||
300 | GPIO_FN_ET0_TX_CLK_A, | ||
301 | GPIO_FN_DACK1, GPIO_FN_HSPI_CS_B, GPIO_FN_TX4_B, GPIO_FN_ET0_RX_CLK_A, | ||
302 | GPIO_FN_PRESETOUT, GPIO_FN_ST_CLKOUT, | ||
303 | |||
304 | }; | ||
305 | |||
306 | #endif /* __ASM_SH7734_H__ */ | ||