diff options
Diffstat (limited to 'arch/avr32')
-rw-r--r-- | arch/avr32/include/asm/atomic.h | 2 | ||||
-rw-r--r-- | arch/avr32/include/asm/ioctls.h | 3 | ||||
-rw-r--r-- | arch/avr32/include/asm/pgtable.h | 2 | ||||
-rw-r--r-- | arch/avr32/include/asm/ptrace.h | 2 | ||||
-rw-r--r-- | arch/avr32/include/asm/scatterlist.h | 20 | ||||
-rw-r--r-- | arch/avr32/include/asm/thread_info.h | 2 | ||||
-rw-r--r-- | arch/avr32/kernel/process.c | 1 | ||||
-rw-r--r-- | arch/avr32/kernel/ptrace.c | 53 | ||||
-rw-r--r-- | arch/avr32/kernel/time.c | 12 | ||||
-rw-r--r-- | arch/avr32/mach-at32ap/at32ap700x.c | 23 | ||||
-rw-r--r-- | arch/avr32/mach-at32ap/extint.c | 1 | ||||
-rw-r--r-- | arch/avr32/mach-at32ap/hsmc.c | 1 | ||||
-rw-r--r-- | arch/avr32/mach-at32ap/include/mach/board.h | 2 | ||||
-rw-r--r-- | arch/avr32/mm/dma-coherent.c | 1 | ||||
-rw-r--r-- | arch/avr32/mm/init.c | 1 | ||||
-rw-r--r-- | arch/avr32/mm/ioremap.c | 1 | ||||
-rw-r--r-- | arch/avr32/mm/tlb.c | 4 |
17 files changed, 47 insertions, 84 deletions
diff --git a/arch/avr32/include/asm/atomic.h b/arch/avr32/include/asm/atomic.h index b131c27ddf57..bbce6a1c6bb6 100644 --- a/arch/avr32/include/asm/atomic.h +++ b/arch/avr32/include/asm/atomic.h | |||
@@ -19,7 +19,7 @@ | |||
19 | 19 | ||
20 | #define ATOMIC_INIT(i) { (i) } | 20 | #define ATOMIC_INIT(i) { (i) } |
21 | 21 | ||
22 | #define atomic_read(v) ((v)->counter) | 22 | #define atomic_read(v) (*(volatile int *)&(v)->counter) |
23 | #define atomic_set(v, i) (((v)->counter) = i) | 23 | #define atomic_set(v, i) (((v)->counter) = i) |
24 | 24 | ||
25 | /* | 25 | /* |
diff --git a/arch/avr32/include/asm/ioctls.h b/arch/avr32/include/asm/ioctls.h index 0cf2c0a4502b..e6ac0b661076 100644 --- a/arch/avr32/include/asm/ioctls.h +++ b/arch/avr32/include/asm/ioctls.h | |||
@@ -54,6 +54,9 @@ | |||
54 | #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ | 54 | #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ |
55 | #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ | 55 | #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ |
56 | 56 | ||
57 | #define TIOCGRS485 0x542E | ||
58 | #define TIOCSRS485 0x542F | ||
59 | |||
57 | #define FIONCLEX 0x5450 | 60 | #define FIONCLEX 0x5450 |
58 | #define FIOCLEX 0x5451 | 61 | #define FIOCLEX 0x5451 |
59 | #define FIOASYNC 0x5452 | 62 | #define FIOASYNC 0x5452 |
diff --git a/arch/avr32/include/asm/pgtable.h b/arch/avr32/include/asm/pgtable.h index fecdda16f444..a9ae30c41e74 100644 --- a/arch/avr32/include/asm/pgtable.h +++ b/arch/avr32/include/asm/pgtable.h | |||
@@ -325,7 +325,7 @@ static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) | |||
325 | 325 | ||
326 | struct vm_area_struct; | 326 | struct vm_area_struct; |
327 | extern void update_mmu_cache(struct vm_area_struct * vma, | 327 | extern void update_mmu_cache(struct vm_area_struct * vma, |
328 | unsigned long address, pte_t pte); | 328 | unsigned long address, pte_t *ptep); |
329 | 329 | ||
330 | /* | 330 | /* |
331 | * Encode and decode a swap entry | 331 | * Encode and decode a swap entry |
diff --git a/arch/avr32/include/asm/ptrace.h b/arch/avr32/include/asm/ptrace.h index 9e2d44f4e0fe..e53dd0d900f5 100644 --- a/arch/avr32/include/asm/ptrace.h +++ b/arch/avr32/include/asm/ptrace.h | |||
@@ -124,6 +124,8 @@ struct pt_regs { | |||
124 | 124 | ||
125 | #include <asm/ocd.h> | 125 | #include <asm/ocd.h> |
126 | 126 | ||
127 | #define arch_has_single_step() (1) | ||
128 | |||
127 | #define arch_ptrace_attach(child) ocd_enable(child) | 129 | #define arch_ptrace_attach(child) ocd_enable(child) |
128 | 130 | ||
129 | #define user_mode(regs) (((regs)->sr & MODE_MASK) == MODE_USER) | 131 | #define user_mode(regs) (((regs)->sr & MODE_MASK) == MODE_USER) |
diff --git a/arch/avr32/include/asm/scatterlist.h b/arch/avr32/include/asm/scatterlist.h index 377320e3bd17..06394e5ead6c 100644 --- a/arch/avr32/include/asm/scatterlist.h +++ b/arch/avr32/include/asm/scatterlist.h | |||
@@ -1,25 +1,7 @@ | |||
1 | #ifndef __ASM_AVR32_SCATTERLIST_H | 1 | #ifndef __ASM_AVR32_SCATTERLIST_H |
2 | #define __ASM_AVR32_SCATTERLIST_H | 2 | #define __ASM_AVR32_SCATTERLIST_H |
3 | 3 | ||
4 | #include <asm/types.h> | 4 | #include <asm-generic/scatterlist.h> |
5 | |||
6 | struct scatterlist { | ||
7 | #ifdef CONFIG_DEBUG_SG | ||
8 | unsigned long sg_magic; | ||
9 | #endif | ||
10 | unsigned long page_link; | ||
11 | unsigned int offset; | ||
12 | dma_addr_t dma_address; | ||
13 | unsigned int length; | ||
14 | }; | ||
15 | |||
16 | /* These macros should be used after a pci_map_sg call has been done | ||
17 | * to get bus addresses of each of the SG entries and their lengths. | ||
18 | * You should only work with the number of sg entries pci_map_sg | ||
19 | * returns. | ||
20 | */ | ||
21 | #define sg_dma_address(sg) ((sg)->dma_address) | ||
22 | #define sg_dma_len(sg) ((sg)->length) | ||
23 | 5 | ||
24 | #define ISA_DMA_THRESHOLD (0xffffffff) | 6 | #define ISA_DMA_THRESHOLD (0xffffffff) |
25 | 7 | ||
diff --git a/arch/avr32/include/asm/thread_info.h b/arch/avr32/include/asm/thread_info.h index fd0c5d7e9337..7a9c03dcb0b6 100644 --- a/arch/avr32/include/asm/thread_info.h +++ b/arch/avr32/include/asm/thread_info.h | |||
@@ -81,7 +81,7 @@ static inline struct thread_info *current_thread_info(void) | |||
81 | TIF_NEED_RESCHED */ | 81 | TIF_NEED_RESCHED */ |
82 | #define TIF_BREAKPOINT 4 /* enter monitor mode on return */ | 82 | #define TIF_BREAKPOINT 4 /* enter monitor mode on return */ |
83 | #define TIF_SINGLE_STEP 5 /* single step in progress */ | 83 | #define TIF_SINGLE_STEP 5 /* single step in progress */ |
84 | #define TIF_MEMDIE 6 | 84 | #define TIF_MEMDIE 6 /* is terminating due to OOM killer */ |
85 | #define TIF_RESTORE_SIGMASK 7 /* restore signal mask in do_signal */ | 85 | #define TIF_RESTORE_SIGMASK 7 /* restore signal mask in do_signal */ |
86 | #define TIF_CPU_GOING_TO_SLEEP 8 /* CPU is entering sleep 0 mode */ | 86 | #define TIF_CPU_GOING_TO_SLEEP 8 /* CPU is entering sleep 0 mode */ |
87 | #define TIF_NOTIFY_RESUME 9 /* callback before returning to user */ | 87 | #define TIF_NOTIFY_RESUME 9 /* callback before returning to user */ |
diff --git a/arch/avr32/kernel/process.c b/arch/avr32/kernel/process.c index 93c0342530a0..2d76515745a4 100644 --- a/arch/avr32/kernel/process.c +++ b/arch/avr32/kernel/process.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/fs.h> | 11 | #include <linux/fs.h> |
12 | #include <linux/pm.h> | 12 | #include <linux/pm.h> |
13 | #include <linux/ptrace.h> | 13 | #include <linux/ptrace.h> |
14 | #include <linux/slab.h> | ||
14 | #include <linux/reboot.h> | 15 | #include <linux/reboot.h> |
15 | #include <linux/tick.h> | 16 | #include <linux/tick.h> |
16 | #include <linux/uaccess.h> | 17 | #include <linux/uaccess.h> |
diff --git a/arch/avr32/kernel/ptrace.c b/arch/avr32/kernel/ptrace.c index 1fed38fcf594..5e73c25f8f85 100644 --- a/arch/avr32/kernel/ptrace.c +++ b/arch/avr32/kernel/ptrace.c | |||
@@ -28,9 +28,9 @@ static struct pt_regs *get_user_regs(struct task_struct *tsk) | |||
28 | THREAD_SIZE - sizeof(struct pt_regs)); | 28 | THREAD_SIZE - sizeof(struct pt_regs)); |
29 | } | 29 | } |
30 | 30 | ||
31 | static void ptrace_single_step(struct task_struct *tsk) | 31 | void user_enable_single_step(struct task_struct *tsk) |
32 | { | 32 | { |
33 | pr_debug("ptrace_single_step: pid=%u, PC=0x%08lx, SR=0x%08lx\n", | 33 | pr_debug("user_enable_single_step: pid=%u, PC=0x%08lx, SR=0x%08lx\n", |
34 | tsk->pid, task_pt_regs(tsk)->pc, task_pt_regs(tsk)->sr); | 34 | tsk->pid, task_pt_regs(tsk)->pc, task_pt_regs(tsk)->sr); |
35 | 35 | ||
36 | /* | 36 | /* |
@@ -49,6 +49,11 @@ static void ptrace_single_step(struct task_struct *tsk) | |||
49 | set_tsk_thread_flag(tsk, TIF_SINGLE_STEP); | 49 | set_tsk_thread_flag(tsk, TIF_SINGLE_STEP); |
50 | } | 50 | } |
51 | 51 | ||
52 | void user_disable_single_step(struct task_struct *child) | ||
53 | { | ||
54 | /* XXX(hch): a no-op here seems wrong.. */ | ||
55 | } | ||
56 | |||
52 | /* | 57 | /* |
53 | * Called by kernel/ptrace.c when detaching | 58 | * Called by kernel/ptrace.c when detaching |
54 | * | 59 | * |
@@ -167,50 +172,6 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
167 | ret = ptrace_write_user(child, addr, data); | 172 | ret = ptrace_write_user(child, addr, data); |
168 | break; | 173 | break; |
169 | 174 | ||
170 | /* continue and stop at next (return from) syscall */ | ||
171 | case PTRACE_SYSCALL: | ||
172 | /* restart after signal */ | ||
173 | case PTRACE_CONT: | ||
174 | ret = -EIO; | ||
175 | if (!valid_signal(data)) | ||
176 | break; | ||
177 | if (request == PTRACE_SYSCALL) | ||
178 | set_tsk_thread_flag(child, TIF_SYSCALL_TRACE); | ||
179 | else | ||
180 | clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE); | ||
181 | child->exit_code = data; | ||
182 | /* XXX: Are we sure no breakpoints are active here? */ | ||
183 | wake_up_process(child); | ||
184 | ret = 0; | ||
185 | break; | ||
186 | |||
187 | /* | ||
188 | * Make the child exit. Best I can do is send it a | ||
189 | * SIGKILL. Perhaps it should be put in the status that it | ||
190 | * wants to exit. | ||
191 | */ | ||
192 | case PTRACE_KILL: | ||
193 | ret = 0; | ||
194 | if (child->exit_state == EXIT_ZOMBIE) | ||
195 | break; | ||
196 | child->exit_code = SIGKILL; | ||
197 | wake_up_process(child); | ||
198 | break; | ||
199 | |||
200 | /* | ||
201 | * execute single instruction. | ||
202 | */ | ||
203 | case PTRACE_SINGLESTEP: | ||
204 | ret = -EIO; | ||
205 | if (!valid_signal(data)) | ||
206 | break; | ||
207 | clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE); | ||
208 | ptrace_single_step(child); | ||
209 | child->exit_code = data; | ||
210 | wake_up_process(child); | ||
211 | ret = 0; | ||
212 | break; | ||
213 | |||
214 | case PTRACE_GETREGS: | 175 | case PTRACE_GETREGS: |
215 | ret = ptrace_getregs(child, (void __user *)data); | 176 | ret = ptrace_getregs(child, (void __user *)data); |
216 | break; | 177 | break; |
diff --git a/arch/avr32/kernel/time.c b/arch/avr32/kernel/time.c index f27aa3b259fa..668ed2817e51 100644 --- a/arch/avr32/kernel/time.c +++ b/arch/avr32/kernel/time.c | |||
@@ -110,17 +110,17 @@ static struct clock_event_device comparator = { | |||
110 | .set_mode = comparator_mode, | 110 | .set_mode = comparator_mode, |
111 | }; | 111 | }; |
112 | 112 | ||
113 | void read_persistent_clock(struct timespec *ts) | ||
114 | { | ||
115 | ts->tv_sec = mktime(2007, 1, 1, 0, 0, 0); | ||
116 | ts->tv_nsec = 0; | ||
117 | } | ||
118 | |||
113 | void __init time_init(void) | 119 | void __init time_init(void) |
114 | { | 120 | { |
115 | unsigned long counter_hz; | 121 | unsigned long counter_hz; |
116 | int ret; | 122 | int ret; |
117 | 123 | ||
118 | xtime.tv_sec = mktime(2007, 1, 1, 0, 0, 0); | ||
119 | xtime.tv_nsec = 0; | ||
120 | |||
121 | set_normalized_timespec(&wall_to_monotonic, | ||
122 | -xtime.tv_sec, -xtime.tv_nsec); | ||
123 | |||
124 | /* figure rate for counter */ | 124 | /* figure rate for counter */ |
125 | counter_hz = clk_get_rate(boot_cpu_data.clk); | 125 | counter_hz = clk_get_rate(boot_cpu_data.clk); |
126 | counter.mult = clocksource_hz2mult(counter_hz, counter.shift); | 126 | counter.mult = clocksource_hz2mult(counter_hz, counter.shift); |
diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c index 1aa1ea5e9212..e67c99945428 100644 --- a/arch/avr32/mach-at32ap/at32ap700x.c +++ b/arch/avr32/mach-at32ap/at32ap700x.c | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <linux/init.h> | 12 | #include <linux/init.h> |
13 | #include <linux/platform_device.h> | 13 | #include <linux/platform_device.h> |
14 | #include <linux/dma-mapping.h> | 14 | #include <linux/dma-mapping.h> |
15 | #include <linux/slab.h> | ||
15 | #include <linux/gpio.h> | 16 | #include <linux/gpio.h> |
16 | #include <linux/spi/spi.h> | 17 | #include <linux/spi/spi.h> |
17 | #include <linux/usb/atmel_usba_udc.h> | 18 | #include <linux/usb/atmel_usba_udc.h> |
@@ -1325,7 +1326,7 @@ struct platform_device *__init | |||
1325 | at32_add_device_mci(unsigned int id, struct mci_platform_data *data) | 1326 | at32_add_device_mci(unsigned int id, struct mci_platform_data *data) |
1326 | { | 1327 | { |
1327 | struct platform_device *pdev; | 1328 | struct platform_device *pdev; |
1328 | struct mci_dma_slave *slave; | 1329 | struct mci_dma_data *slave; |
1329 | u32 pioa_mask; | 1330 | u32 pioa_mask; |
1330 | u32 piob_mask; | 1331 | u32 piob_mask; |
1331 | 1332 | ||
@@ -1344,7 +1345,9 @@ at32_add_device_mci(unsigned int id, struct mci_platform_data *data) | |||
1344 | ARRAY_SIZE(atmel_mci0_resource))) | 1345 | ARRAY_SIZE(atmel_mci0_resource))) |
1345 | goto fail; | 1346 | goto fail; |
1346 | 1347 | ||
1347 | slave = kzalloc(sizeof(struct mci_dma_slave), GFP_KERNEL); | 1348 | slave = kzalloc(sizeof(struct mci_dma_data), GFP_KERNEL); |
1349 | if (!slave) | ||
1350 | goto fail; | ||
1348 | 1351 | ||
1349 | slave->sdata.dma_dev = &dw_dmac0_device.dev; | 1352 | slave->sdata.dma_dev = &dw_dmac0_device.dev; |
1350 | slave->sdata.reg_width = DW_DMA_SLAVE_WIDTH_32BIT; | 1353 | slave->sdata.reg_width = DW_DMA_SLAVE_WIDTH_32BIT; |
@@ -1357,7 +1360,7 @@ at32_add_device_mci(unsigned int id, struct mci_platform_data *data) | |||
1357 | 1360 | ||
1358 | if (platform_device_add_data(pdev, data, | 1361 | if (platform_device_add_data(pdev, data, |
1359 | sizeof(struct mci_platform_data))) | 1362 | sizeof(struct mci_platform_data))) |
1360 | goto fail; | 1363 | goto fail_free; |
1361 | 1364 | ||
1362 | /* CLK line is common to both slots */ | 1365 | /* CLK line is common to both slots */ |
1363 | pioa_mask = 1 << 10; | 1366 | pioa_mask = 1 << 10; |
@@ -1381,7 +1384,7 @@ at32_add_device_mci(unsigned int id, struct mci_platform_data *data) | |||
1381 | /* Slot is unused */ | 1384 | /* Slot is unused */ |
1382 | break; | 1385 | break; |
1383 | default: | 1386 | default: |
1384 | goto fail; | 1387 | goto fail_free; |
1385 | } | 1388 | } |
1386 | 1389 | ||
1387 | select_peripheral(PIOA, pioa_mask, PERIPH_A, 0); | 1390 | select_peripheral(PIOA, pioa_mask, PERIPH_A, 0); |
@@ -1408,7 +1411,7 @@ at32_add_device_mci(unsigned int id, struct mci_platform_data *data) | |||
1408 | break; | 1411 | break; |
1409 | default: | 1412 | default: |
1410 | if (!data->slot[0].bus_width) | 1413 | if (!data->slot[0].bus_width) |
1411 | goto fail; | 1414 | goto fail_free; |
1412 | 1415 | ||
1413 | data->slot[1].bus_width = 0; | 1416 | data->slot[1].bus_width = 0; |
1414 | break; | 1417 | break; |
@@ -1419,9 +1422,10 @@ at32_add_device_mci(unsigned int id, struct mci_platform_data *data) | |||
1419 | platform_device_add(pdev); | 1422 | platform_device_add(pdev); |
1420 | return pdev; | 1423 | return pdev; |
1421 | 1424 | ||
1425 | fail_free: | ||
1426 | kfree(slave); | ||
1422 | fail: | 1427 | fail: |
1423 | data->dma_slave = NULL; | 1428 | data->dma_slave = NULL; |
1424 | kfree(slave); | ||
1425 | platform_device_put(pdev); | 1429 | platform_device_put(pdev); |
1426 | return NULL; | 1430 | return NULL; |
1427 | } | 1431 | } |
@@ -1767,10 +1771,13 @@ at32_add_device_usba(unsigned int id, struct usba_platform_data *data) | |||
1767 | ARRAY_SIZE(usba0_resource))) | 1771 | ARRAY_SIZE(usba0_resource))) |
1768 | goto out_free_pdev; | 1772 | goto out_free_pdev; |
1769 | 1773 | ||
1770 | if (data) | 1774 | if (data) { |
1771 | usba_data.pdata.vbus_pin = data->vbus_pin; | 1775 | usba_data.pdata.vbus_pin = data->vbus_pin; |
1772 | else | 1776 | usba_data.pdata.vbus_pin_inverted = data->vbus_pin_inverted; |
1777 | } else { | ||
1773 | usba_data.pdata.vbus_pin = -EINVAL; | 1778 | usba_data.pdata.vbus_pin = -EINVAL; |
1779 | usba_data.pdata.vbus_pin_inverted = -EINVAL; | ||
1780 | } | ||
1774 | 1781 | ||
1775 | data = &usba_data.pdata; | 1782 | data = &usba_data.pdata; |
1776 | data->num_ep = ARRAY_SIZE(at32_usba_ep); | 1783 | data->num_ep = ARRAY_SIZE(at32_usba_ep); |
diff --git a/arch/avr32/mach-at32ap/extint.c b/arch/avr32/mach-at32ap/extint.c index 310477ba1bbf..e9d12058ffd3 100644 --- a/arch/avr32/mach-at32ap/extint.c +++ b/arch/avr32/mach-at32ap/extint.c | |||
@@ -14,6 +14,7 @@ | |||
14 | #include <linux/irq.h> | 14 | #include <linux/irq.h> |
15 | #include <linux/platform_device.h> | 15 | #include <linux/platform_device.h> |
16 | #include <linux/random.h> | 16 | #include <linux/random.h> |
17 | #include <linux/slab.h> | ||
17 | 18 | ||
18 | #include <asm/io.h> | 19 | #include <asm/io.h> |
19 | 20 | ||
diff --git a/arch/avr32/mach-at32ap/hsmc.c b/arch/avr32/mach-at32ap/hsmc.c index 2875c11be95d..f7672d3e86b8 100644 --- a/arch/avr32/mach-at32ap/hsmc.c +++ b/arch/avr32/mach-at32ap/hsmc.c | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <linux/init.h> | 12 | #include <linux/init.h> |
13 | #include <linux/module.h> | 13 | #include <linux/module.h> |
14 | #include <linux/platform_device.h> | 14 | #include <linux/platform_device.h> |
15 | #include <linux/slab.h> | ||
15 | 16 | ||
16 | #include <asm/io.h> | 17 | #include <asm/io.h> |
17 | #include <mach/smc.h> | 18 | #include <mach/smc.h> |
diff --git a/arch/avr32/mach-at32ap/include/mach/board.h b/arch/avr32/mach-at32ap/include/mach/board.h index c7f25bb1d068..61740201b311 100644 --- a/arch/avr32/mach-at32ap/include/mach/board.h +++ b/arch/avr32/mach-at32ap/include/mach/board.h | |||
@@ -5,6 +5,7 @@ | |||
5 | #define __ASM_ARCH_BOARD_H | 5 | #define __ASM_ARCH_BOARD_H |
6 | 6 | ||
7 | #include <linux/types.h> | 7 | #include <linux/types.h> |
8 | #include <linux/serial.h> | ||
8 | 9 | ||
9 | #define GPIO_PIN_NONE (-1) | 10 | #define GPIO_PIN_NONE (-1) |
10 | 11 | ||
@@ -35,6 +36,7 @@ struct atmel_uart_data { | |||
35 | short use_dma_tx; /* use transmit DMA? */ | 36 | short use_dma_tx; /* use transmit DMA? */ |
36 | short use_dma_rx; /* use receive DMA? */ | 37 | short use_dma_rx; /* use receive DMA? */ |
37 | void __iomem *regs; /* virtual base address, if any */ | 38 | void __iomem *regs; /* virtual base address, if any */ |
39 | struct serial_rs485 rs485; /* rs485 settings */ | ||
38 | }; | 40 | }; |
39 | void at32_map_usart(unsigned int hw_id, unsigned int line, int flags); | 41 | void at32_map_usart(unsigned int hw_id, unsigned int line, int flags); |
40 | struct platform_device *at32_add_device_usart(unsigned int id); | 42 | struct platform_device *at32_add_device_usart(unsigned int id); |
diff --git a/arch/avr32/mm/dma-coherent.c b/arch/avr32/mm/dma-coherent.c index 6d8c794c3b81..3c0042247ea9 100644 --- a/arch/avr32/mm/dma-coherent.c +++ b/arch/avr32/mm/dma-coherent.c | |||
@@ -7,6 +7,7 @@ | |||
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <linux/dma-mapping.h> | 9 | #include <linux/dma-mapping.h> |
10 | #include <linux/gfp.h> | ||
10 | 11 | ||
11 | #include <asm/addrspace.h> | 12 | #include <asm/addrspace.h> |
12 | #include <asm/cacheflush.h> | 13 | #include <asm/cacheflush.h> |
diff --git a/arch/avr32/mm/init.c b/arch/avr32/mm/init.c index 94925641e53e..a7314d44b17b 100644 --- a/arch/avr32/mm/init.c +++ b/arch/avr32/mm/init.c | |||
@@ -7,6 +7,7 @@ | |||
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <linux/kernel.h> | 9 | #include <linux/kernel.h> |
10 | #include <linux/gfp.h> | ||
10 | #include <linux/mm.h> | 11 | #include <linux/mm.h> |
11 | #include <linux/swap.h> | 12 | #include <linux/swap.h> |
12 | #include <linux/init.h> | 13 | #include <linux/init.h> |
diff --git a/arch/avr32/mm/ioremap.c b/arch/avr32/mm/ioremap.c index f03b79f0e0ab..7def0d84cec6 100644 --- a/arch/avr32/mm/ioremap.c +++ b/arch/avr32/mm/ioremap.c | |||
@@ -9,6 +9,7 @@ | |||
9 | #include <linux/mm.h> | 9 | #include <linux/mm.h> |
10 | #include <linux/module.h> | 10 | #include <linux/module.h> |
11 | #include <linux/io.h> | 11 | #include <linux/io.h> |
12 | #include <linux/slab.h> | ||
12 | 13 | ||
13 | #include <asm/pgtable.h> | 14 | #include <asm/pgtable.h> |
14 | #include <asm/addrspace.h> | 15 | #include <asm/addrspace.h> |
diff --git a/arch/avr32/mm/tlb.c b/arch/avr32/mm/tlb.c index 06677be98ffb..0da23109f817 100644 --- a/arch/avr32/mm/tlb.c +++ b/arch/avr32/mm/tlb.c | |||
@@ -101,7 +101,7 @@ static void update_dtlb(unsigned long address, pte_t pte) | |||
101 | } | 101 | } |
102 | 102 | ||
103 | void update_mmu_cache(struct vm_area_struct *vma, | 103 | void update_mmu_cache(struct vm_area_struct *vma, |
104 | unsigned long address, pte_t pte) | 104 | unsigned long address, pte_t *ptep) |
105 | { | 105 | { |
106 | unsigned long flags; | 106 | unsigned long flags; |
107 | 107 | ||
@@ -110,7 +110,7 @@ void update_mmu_cache(struct vm_area_struct *vma, | |||
110 | return; | 110 | return; |
111 | 111 | ||
112 | local_irq_save(flags); | 112 | local_irq_save(flags); |
113 | update_dtlb(address, pte); | 113 | update_dtlb(address, *ptep); |
114 | local_irq_restore(flags); | 114 | local_irq_restore(flags); |
115 | } | 115 | } |
116 | 116 | ||