diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-18 17:12:42 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-18 17:12:42 -0500 |
commit | 91302873bad9550ad06f09dd1ce9e283900ef84e (patch) | |
tree | 387e2764ca5966c08eb13a5e12cf8a1745769db7 | |
parent | fe64454d7b0474cc43360d86267844b043275e82 (diff) | |
parent | 878194c8237e4fc5276685ec59cb3bfb9341988c (diff) |
Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze
* 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze:
microblaze: pci_controller->arch_data really is a struct device_node *
microblaze: Add missing double apostrophe in Kconfig
microblaze: Add PT_ macros for special purpose regs
microblaze: Enable accept4 syscall
microblaze: Wire up recvmmsg syscall
-rw-r--r-- | arch/microblaze/Kconfig | 2 | ||||
-rw-r--r-- | arch/microblaze/include/asm/ptrace.h | 14 | ||||
-rw-r--r-- | arch/microblaze/include/asm/unistd.h | 5 | ||||
-rw-r--r-- | arch/microblaze/kernel/prom_parse.c | 2 | ||||
-rw-r--r-- | arch/microblaze/kernel/syscall_table.S | 2 |
5 files changed, 20 insertions, 5 deletions
diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig index fd53e500be67..cd5837e298b2 100644 --- a/arch/microblaze/Kconfig +++ b/arch/microblaze/Kconfig | |||
@@ -90,7 +90,7 @@ source "arch/microblaze/platform/Kconfig.platform" | |||
90 | 90 | ||
91 | menu "Processor type and features" | 91 | menu "Processor type and features" |
92 | 92 | ||
93 | source kernel/time/Kconfig | 93 | source "kernel/time/Kconfig" |
94 | 94 | ||
95 | source "kernel/Kconfig.preempt" | 95 | source "kernel/Kconfig.preempt" |
96 | 96 | ||
diff --git a/arch/microblaze/include/asm/ptrace.h b/arch/microblaze/include/asm/ptrace.h index a917dc517736..d74dbfb92c04 100644 --- a/arch/microblaze/include/asm/ptrace.h +++ b/arch/microblaze/include/asm/ptrace.h | |||
@@ -54,6 +54,7 @@ struct pt_regs { | |||
54 | int pt_mode; | 54 | int pt_mode; |
55 | }; | 55 | }; |
56 | 56 | ||
57 | #ifdef __KERNEL__ | ||
57 | #define kernel_mode(regs) ((regs)->pt_mode) | 58 | #define kernel_mode(regs) ((regs)->pt_mode) |
58 | #define user_mode(regs) (!kernel_mode(regs)) | 59 | #define user_mode(regs) (!kernel_mode(regs)) |
59 | 60 | ||
@@ -62,6 +63,19 @@ struct pt_regs { | |||
62 | 63 | ||
63 | void show_regs(struct pt_regs *); | 64 | void show_regs(struct pt_regs *); |
64 | 65 | ||
66 | #else /* __KERNEL__ */ | ||
67 | |||
68 | /* pt_regs offsets used by gdbserver etc in ptrace syscalls */ | ||
69 | #define PT_GPR(n) ((n) * sizeof(microblaze_reg_t)) | ||
70 | #define PT_PC (32 * sizeof(microblaze_reg_t)) | ||
71 | #define PT_MSR (33 * sizeof(microblaze_reg_t)) | ||
72 | #define PT_EAR (34 * sizeof(microblaze_reg_t)) | ||
73 | #define PT_ESR (35 * sizeof(microblaze_reg_t)) | ||
74 | #define PT_FSR (36 * sizeof(microblaze_reg_t)) | ||
75 | #define PT_KERNEL_MODE (37 * sizeof(microblaze_reg_t)) | ||
76 | |||
77 | #endif /* __KERNEL */ | ||
78 | |||
65 | #endif /* __ASSEMBLY__ */ | 79 | #endif /* __ASSEMBLY__ */ |
66 | 80 | ||
67 | #endif /* _ASM_MICROBLAZE_PTRACE_H */ | 81 | #endif /* _ASM_MICROBLAZE_PTRACE_H */ |
diff --git a/arch/microblaze/include/asm/unistd.h b/arch/microblaze/include/asm/unistd.h index cb05a07e55e9..2b67e92a773c 100644 --- a/arch/microblaze/include/asm/unistd.h +++ b/arch/microblaze/include/asm/unistd.h | |||
@@ -377,13 +377,14 @@ | |||
377 | #define __NR_shutdown 359 /* new */ | 377 | #define __NR_shutdown 359 /* new */ |
378 | #define __NR_sendmsg 360 /* new */ | 378 | #define __NR_sendmsg 360 /* new */ |
379 | #define __NR_recvmsg 361 /* new */ | 379 | #define __NR_recvmsg 361 /* new */ |
380 | #define __NR_accept04 362 /* new */ | 380 | #define __NR_accept4 362 /* new */ |
381 | #define __NR_preadv 363 /* new */ | 381 | #define __NR_preadv 363 /* new */ |
382 | #define __NR_pwritev 364 /* new */ | 382 | #define __NR_pwritev 364 /* new */ |
383 | #define __NR_rt_tgsigqueueinfo 365 /* new */ | 383 | #define __NR_rt_tgsigqueueinfo 365 /* new */ |
384 | #define __NR_perf_event_open 366 /* new */ | 384 | #define __NR_perf_event_open 366 /* new */ |
385 | #define __NR_recvmmsg 367 /* new */ | ||
385 | 386 | ||
386 | #define __NR_syscalls 367 | 387 | #define __NR_syscalls 368 |
387 | 388 | ||
388 | #ifdef __KERNEL__ | 389 | #ifdef __KERNEL__ |
389 | #ifndef __ASSEMBLY__ | 390 | #ifndef __ASSEMBLY__ |
diff --git a/arch/microblaze/kernel/prom_parse.c b/arch/microblaze/kernel/prom_parse.c index ae0352ecd5a9..bf7e6c27e318 100644 --- a/arch/microblaze/kernel/prom_parse.c +++ b/arch/microblaze/kernel/prom_parse.c | |||
@@ -256,7 +256,7 @@ int of_irq_map_pci(struct pci_dev *pdev, struct of_irq *out_irq) | |||
256 | if (ppdev == NULL) { | 256 | if (ppdev == NULL) { |
257 | struct pci_controller *host; | 257 | struct pci_controller *host; |
258 | host = pci_bus_to_host(pdev->bus); | 258 | host = pci_bus_to_host(pdev->bus); |
259 | ppnode = host ? host->arch_data : NULL; | 259 | ppnode = host ? host->dn : NULL; |
260 | /* No node for host bridge ? give up */ | 260 | /* No node for host bridge ? give up */ |
261 | if (ppnode == NULL) | 261 | if (ppnode == NULL) |
262 | return -EINVAL; | 262 | return -EINVAL; |
diff --git a/arch/microblaze/kernel/syscall_table.S b/arch/microblaze/kernel/syscall_table.S index 4088be7d4e29..03376dc814c9 100644 --- a/arch/microblaze/kernel/syscall_table.S +++ b/arch/microblaze/kernel/syscall_table.S | |||
@@ -366,7 +366,7 @@ ENTRY(sys_call_table) | |||
366 | .long sys_shutdown | 366 | .long sys_shutdown |
367 | .long sys_sendmsg /* 360 */ | 367 | .long sys_sendmsg /* 360 */ |
368 | .long sys_recvmsg | 368 | .long sys_recvmsg |
369 | .long sys_ni_syscall | 369 | .long sys_accept4 |
370 | .long sys_ni_syscall | 370 | .long sys_ni_syscall |
371 | .long sys_ni_syscall | 371 | .long sys_ni_syscall |
372 | .long sys_rt_tgsigqueueinfo /* 365 */ | 372 | .long sys_rt_tgsigqueueinfo /* 365 */ |