diff options
Diffstat (limited to 'arch/parisc')
-rw-r--r-- | arch/parisc/Kconfig | 3 | ||||
-rw-r--r-- | arch/parisc/kernel/perf.c | 2 | ||||
-rw-r--r-- | arch/parisc/kernel/setup.c | 8 | ||||
-rw-r--r-- | arch/parisc/kernel/sys_parisc32.c | 64 | ||||
-rw-r--r-- | arch/parisc/kernel/syscall_table.S | 2 | ||||
-rw-r--r-- | arch/parisc/kernel/time.c | 11 | ||||
-rw-r--r-- | arch/parisc/kernel/topology.c | 2 | ||||
-rw-r--r-- | arch/parisc/kernel/vmlinux.lds.S | 2 | ||||
-rw-r--r-- | arch/parisc/mm/init.c | 7 |
9 files changed, 11 insertions, 90 deletions
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig index 0f9ff618c6d7..28da4e71c443 100644 --- a/arch/parisc/Kconfig +++ b/arch/parisc/Kconfig | |||
@@ -50,9 +50,6 @@ config TIME_LOW_RES | |||
50 | depends on SMP | 50 | depends on SMP |
51 | default y | 51 | default y |
52 | 52 | ||
53 | config GENERIC_ISA_DMA | ||
54 | bool | ||
55 | |||
56 | config GENERIC_HARDIRQS | 53 | config GENERIC_HARDIRQS |
57 | def_bool y | 54 | def_bool y |
58 | 55 | ||
diff --git a/arch/parisc/kernel/perf.c b/arch/parisc/kernel/perf.c index ac8ee205c351..a46bc62b643e 100644 --- a/arch/parisc/kernel/perf.c +++ b/arch/parisc/kernel/perf.c | |||
@@ -479,7 +479,7 @@ static long perf_ioctl(struct file *file, unsigned int cmd, unsigned long arg) | |||
479 | return error; | 479 | return error; |
480 | } | 480 | } |
481 | 481 | ||
482 | static struct file_operations perf_fops = { | 482 | static const struct file_operations perf_fops = { |
483 | .llseek = no_llseek, | 483 | .llseek = no_llseek, |
484 | .read = perf_read, | 484 | .read = perf_read, |
485 | .write = perf_write, | 485 | .write = perf_write, |
diff --git a/arch/parisc/kernel/setup.c b/arch/parisc/kernel/setup.c index 3c7a3faf78ed..74b3686dd1e0 100644 --- a/arch/parisc/kernel/setup.c +++ b/arch/parisc/kernel/setup.c | |||
@@ -45,7 +45,7 @@ | |||
45 | #include <asm/io.h> | 45 | #include <asm/io.h> |
46 | #include <asm/setup.h> | 46 | #include <asm/setup.h> |
47 | 47 | ||
48 | char command_line[COMMAND_LINE_SIZE] __read_mostly; | 48 | char __initdata command_line[COMMAND_LINE_SIZE] __read_mostly; |
49 | 49 | ||
50 | /* Intended for ccio/sba/cpu statistics under /proc/bus/{runway|gsc} */ | 50 | /* Intended for ccio/sba/cpu statistics under /proc/bus/{runway|gsc} */ |
51 | struct proc_dir_entry * proc_runway_root __read_mostly = NULL; | 51 | struct proc_dir_entry * proc_runway_root __read_mostly = NULL; |
@@ -71,9 +71,9 @@ void __init setup_cmdline(char **cmdline_p) | |||
71 | /* boot_args[0] is free-mem start, boot_args[1] is ptr to command line */ | 71 | /* boot_args[0] is free-mem start, boot_args[1] is ptr to command line */ |
72 | if (boot_args[0] < 64) { | 72 | if (boot_args[0] < 64) { |
73 | /* called from hpux boot loader */ | 73 | /* called from hpux boot loader */ |
74 | saved_command_line[0] = '\0'; | 74 | boot_command_line[0] = '\0'; |
75 | } else { | 75 | } else { |
76 | strcpy(saved_command_line, (char *)__va(boot_args[1])); | 76 | strcpy(boot_command_line, (char *)__va(boot_args[1])); |
77 | 77 | ||
78 | #ifdef CONFIG_BLK_DEV_INITRD | 78 | #ifdef CONFIG_BLK_DEV_INITRD |
79 | if (boot_args[2] != 0) /* did palo pass us a ramdisk? */ | 79 | if (boot_args[2] != 0) /* did palo pass us a ramdisk? */ |
@@ -84,7 +84,7 @@ void __init setup_cmdline(char **cmdline_p) | |||
84 | #endif | 84 | #endif |
85 | } | 85 | } |
86 | 86 | ||
87 | strcpy(command_line, saved_command_line); | 87 | strcpy(command_line, boot_command_line); |
88 | *cmdline_p = command_line; | 88 | *cmdline_p = command_line; |
89 | } | 89 | } |
90 | 90 | ||
diff --git a/arch/parisc/kernel/sys_parisc32.c b/arch/parisc/kernel/sys_parisc32.c index 29be4377aca6..ce3245f87fdd 100644 --- a/arch/parisc/kernel/sys_parisc32.c +++ b/arch/parisc/kernel/sys_parisc32.c | |||
@@ -579,70 +579,6 @@ asmlinkage int sys32_sendfile64(int out_fd, int in_fd, compat_loff_t __user *off | |||
579 | } | 579 | } |
580 | 580 | ||
581 | 581 | ||
582 | struct sysinfo32 { | ||
583 | s32 uptime; | ||
584 | u32 loads[3]; | ||
585 | u32 totalram; | ||
586 | u32 freeram; | ||
587 | u32 sharedram; | ||
588 | u32 bufferram; | ||
589 | u32 totalswap; | ||
590 | u32 freeswap; | ||
591 | unsigned short procs; | ||
592 | u32 totalhigh; | ||
593 | u32 freehigh; | ||
594 | u32 mem_unit; | ||
595 | char _f[12]; | ||
596 | }; | ||
597 | |||
598 | /* We used to call sys_sysinfo and translate the result. But sys_sysinfo | ||
599 | * undoes the good work done elsewhere, and rather than undoing the | ||
600 | * damage, I decided to just duplicate the code from sys_sysinfo here. | ||
601 | */ | ||
602 | |||
603 | asmlinkage int sys32_sysinfo(struct sysinfo32 __user *info) | ||
604 | { | ||
605 | struct sysinfo val; | ||
606 | int err; | ||
607 | unsigned long seq; | ||
608 | |||
609 | /* We don't need a memset here because we copy the | ||
610 | * struct to userspace once element at a time. | ||
611 | */ | ||
612 | |||
613 | do { | ||
614 | seq = read_seqbegin(&xtime_lock); | ||
615 | val.uptime = jiffies / HZ; | ||
616 | |||
617 | val.loads[0] = avenrun[0] << (SI_LOAD_SHIFT - FSHIFT); | ||
618 | val.loads[1] = avenrun[1] << (SI_LOAD_SHIFT - FSHIFT); | ||
619 | val.loads[2] = avenrun[2] << (SI_LOAD_SHIFT - FSHIFT); | ||
620 | |||
621 | val.procs = nr_threads; | ||
622 | } while (read_seqretry(&xtime_lock, seq)); | ||
623 | |||
624 | |||
625 | si_meminfo(&val); | ||
626 | si_swapinfo(&val); | ||
627 | |||
628 | err = put_user (val.uptime, &info->uptime); | ||
629 | err |= __put_user (val.loads[0], &info->loads[0]); | ||
630 | err |= __put_user (val.loads[1], &info->loads[1]); | ||
631 | err |= __put_user (val.loads[2], &info->loads[2]); | ||
632 | err |= __put_user (val.totalram, &info->totalram); | ||
633 | err |= __put_user (val.freeram, &info->freeram); | ||
634 | err |= __put_user (val.sharedram, &info->sharedram); | ||
635 | err |= __put_user (val.bufferram, &info->bufferram); | ||
636 | err |= __put_user (val.totalswap, &info->totalswap); | ||
637 | err |= __put_user (val.freeswap, &info->freeswap); | ||
638 | err |= __put_user (val.procs, &info->procs); | ||
639 | err |= __put_user (val.totalhigh, &info->totalhigh); | ||
640 | err |= __put_user (val.freehigh, &info->freehigh); | ||
641 | err |= __put_user (val.mem_unit, &info->mem_unit); | ||
642 | return err ? -EFAULT : 0; | ||
643 | } | ||
644 | |||
645 | |||
646 | /* lseek() needs a wrapper because 'offset' can be negative, but the top | 582 | /* lseek() needs a wrapper because 'offset' can be negative, but the top |
647 | * half of the argument has been zeroed by syscall.S. | 583 | * half of the argument has been zeroed by syscall.S. |
648 | */ | 584 | */ |
diff --git a/arch/parisc/kernel/syscall_table.S b/arch/parisc/kernel/syscall_table.S index 701d66a596e8..be8eb9a0d24a 100644 --- a/arch/parisc/kernel/syscall_table.S +++ b/arch/parisc/kernel/syscall_table.S | |||
@@ -197,7 +197,7 @@ | |||
197 | /* struct rusage contains longs... */ | 197 | /* struct rusage contains longs... */ |
198 | ENTRY_COMP(wait4) | 198 | ENTRY_COMP(wait4) |
199 | ENTRY_SAME(swapoff) /* 115 */ | 199 | ENTRY_SAME(swapoff) /* 115 */ |
200 | ENTRY_DIFF(sysinfo) | 200 | ENTRY_COMP(sysinfo) |
201 | ENTRY_SAME(shutdown) | 201 | ENTRY_SAME(shutdown) |
202 | ENTRY_SAME(fsync) | 202 | ENTRY_SAME(fsync) |
203 | ENTRY_SAME(madvise) | 203 | ENTRY_SAME(madvise) |
diff --git a/arch/parisc/kernel/time.c b/arch/parisc/kernel/time.c index bad7d1eb62b9..5f1b51af06a9 100644 --- a/arch/parisc/kernel/time.c +++ b/arch/parisc/kernel/time.c | |||
@@ -288,17 +288,6 @@ do_settimeofday (struct timespec *tv) | |||
288 | } | 288 | } |
289 | EXPORT_SYMBOL(do_settimeofday); | 289 | EXPORT_SYMBOL(do_settimeofday); |
290 | 290 | ||
291 | /* | ||
292 | * XXX: We can do better than this. | ||
293 | * Returns nanoseconds | ||
294 | */ | ||
295 | |||
296 | unsigned long long sched_clock(void) | ||
297 | { | ||
298 | return (unsigned long long)jiffies * (1000000000 / HZ); | ||
299 | } | ||
300 | |||
301 | |||
302 | void __init start_cpu_itimer(void) | 291 | void __init start_cpu_itimer(void) |
303 | { | 292 | { |
304 | unsigned int cpu = smp_processor_id(); | 293 | unsigned int cpu = smp_processor_id(); |
diff --git a/arch/parisc/kernel/topology.c b/arch/parisc/kernel/topology.c index 068b20d822e7..d71cb018a21e 100644 --- a/arch/parisc/kernel/topology.c +++ b/arch/parisc/kernel/topology.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * arch/parisc/kernel/topology.c - Populate driverfs with topology information | 2 | * arch/parisc/kernel/topology.c - Populate sysfs with topology information |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify | 4 | * This program is free software; you can redistribute it and/or modify |
5 | * it under the terms of the GNU General Public License as published by | 5 | * it under the terms of the GNU General Public License as published by |
diff --git a/arch/parisc/kernel/vmlinux.lds.S b/arch/parisc/kernel/vmlinux.lds.S index 7b943b45f7cd..3b78c2794c36 100644 --- a/arch/parisc/kernel/vmlinux.lds.S +++ b/arch/parisc/kernel/vmlinux.lds.S | |||
@@ -173,10 +173,12 @@ SECTIONS | |||
173 | from .altinstructions and .eh_frame */ | 173 | from .altinstructions and .eh_frame */ |
174 | .exit.text : { *(.exit.text) } | 174 | .exit.text : { *(.exit.text) } |
175 | .exit.data : { *(.exit.data) } | 175 | .exit.data : { *(.exit.data) } |
176 | #ifdef CONFIG_BLK_DEV_INITRD | ||
176 | . = ALIGN(ASM_PAGE_SIZE); | 177 | . = ALIGN(ASM_PAGE_SIZE); |
177 | __initramfs_start = .; | 178 | __initramfs_start = .; |
178 | .init.ramfs : { *(.init.ramfs) } | 179 | .init.ramfs : { *(.init.ramfs) } |
179 | __initramfs_end = .; | 180 | __initramfs_end = .; |
181 | #endif | ||
180 | . = ALIGN(32); | 182 | . = ALIGN(32); |
181 | __per_cpu_start = .; | 183 | __per_cpu_start = .; |
182 | .data.percpu : { *(.data.percpu) } | 184 | .data.percpu : { *(.data.percpu) } |
diff --git a/arch/parisc/mm/init.c b/arch/parisc/mm/init.c index 0667f2b4f977..12117db0043b 100644 --- a/arch/parisc/mm/init.c +++ b/arch/parisc/mm/init.c | |||
@@ -77,12 +77,11 @@ static void __init mem_limit_func(void) | |||
77 | { | 77 | { |
78 | char *cp, *end; | 78 | char *cp, *end; |
79 | unsigned long limit; | 79 | unsigned long limit; |
80 | extern char saved_command_line[]; | ||
81 | 80 | ||
82 | /* We need this before __setup() functions are called */ | 81 | /* We need this before __setup() functions are called */ |
83 | 82 | ||
84 | limit = MAX_MEM; | 83 | limit = MAX_MEM; |
85 | for (cp = saved_command_line; *cp; ) { | 84 | for (cp = boot_command_line; *cp; ) { |
86 | if (memcmp(cp, "mem=", 4) == 0) { | 85 | if (memcmp(cp, "mem=", 4) == 0) { |
87 | cp += 4; | 86 | cp += 4; |
88 | limit = memparse(cp, &end); | 87 | limit = memparse(cp, &end); |
@@ -808,9 +807,7 @@ void __init paging_init(void) | |||
808 | for (i = 0; i < npmem_ranges; i++) { | 807 | for (i = 0; i < npmem_ranges; i++) { |
809 | unsigned long zones_size[MAX_NR_ZONES] = { 0, }; | 808 | unsigned long zones_size[MAX_NR_ZONES] = { 0, }; |
810 | 809 | ||
811 | /* We have an IOMMU, so all memory can go into a single | 810 | zones_size[ZONE_NORMAL] = pmem_ranges[i].pages; |
812 | ZONE_DMA zone. */ | ||
813 | zones_size[ZONE_DMA] = pmem_ranges[i].pages; | ||
814 | 811 | ||
815 | #ifdef CONFIG_DISCONTIGMEM | 812 | #ifdef CONFIG_DISCONTIGMEM |
816 | /* Need to initialize the pfnnid_map before we can initialize | 813 | /* Need to initialize the pfnnid_map before we can initialize |