···39394040/* Should be defined by processor-specific code */4141void arch_init_clk_ops(struct clk_ops **, int type);4242+int __init arch_clk_init(void);42434344/* arch/sh/kernel/cpu/clock.c */4445int clk_init(void);
+2-2
arch/sh/include/asm/io.h
···194194195195#define IO_SPACE_LIMIT 0xffffffff196196197197+extern unsigned long generic_io_base;198198+197199/*198200 * This function provides a method for the generic case where a board-specific199201 * ioport_map simply needs to return the port + some arbitrary port base.···205203 */206204static inline void __set_io_port_base(unsigned long pbase)207205{208208- extern unsigned long generic_io_base;209209-210206 generic_io_base = pbase;211207}212208
+3
arch/sh/include/asm/irq.h
···4141#define irq_canonicalize(irq) (irq)4242#define irq_demux(irq) sh_mv.mv_irq_demux(irq)43434444+void init_IRQ(void);4545+asmlinkage int do_IRQ(unsigned int irq, struct pt_regs *regs);4646+4447#ifdef CONFIG_IRQSTACKS4548extern void irq_ctx_init(int cpu);4649extern void irq_ctx_exit(int cpu);
···11+#ifndef __ASM_SH_SYSCALLS_H22+#define __ASM_SH_SYSCALLS_H33+44+#ifdef __KERNEL__55+66+struct old_utsname;77+88+asmlinkage int old_mmap(unsigned long addr, unsigned long len,99+ unsigned long prot, unsigned long flags,1010+ int fd, unsigned long off);1111+asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,1212+ unsigned long prot, unsigned long flags,1313+ unsigned long fd, unsigned long pgoff);1414+asmlinkage int sys_ipc(uint call, int first, int second,1515+ int third, void __user *ptr, long fifth);1616+asmlinkage int sys_uname(struct old_utsname __user *name);1717+1818+#ifdef CONFIG_SUPERH321919+# include "syscalls_32.h"2020+#else2121+# include "syscalls_64.h"2222+#endif2323+2424+#endif /* __KERNEL__ */2525+#endif /* __ASM_SH_SYSCALLS_H */
+56
arch/sh/include/asm/syscalls_32.h
···11+#ifndef __ASM_SH_SYSCALLS_32_H22+#define __ASM_SH_SYSCALLS_32_H33+44+#ifdef __KERNEL__55+66+#include <linux/compiler.h>77+#include <linux/linkage.h>88+#include <linux/types.h>99+1010+struct pt_regs;1111+1212+asmlinkage int sys_fork(unsigned long r4, unsigned long r5,1313+ unsigned long r6, unsigned long r7,1414+ struct pt_regs __regs);1515+asmlinkage int sys_clone(unsigned long clone_flags, unsigned long newsp,1616+ unsigned long parent_tidptr,1717+ unsigned long child_tidptr,1818+ struct pt_regs __regs);1919+asmlinkage int sys_vfork(unsigned long r4, unsigned long r5,2020+ unsigned long r6, unsigned long r7,2121+ struct pt_regs __regs);2222+asmlinkage int sys_execve(char __user *ufilename, char __user * __user *uargv,2323+ char __user * __user *uenvp, unsigned long r7,2424+ struct pt_regs __regs);2525+asmlinkage int sys_sigsuspend(old_sigset_t mask, unsigned long r5,2626+ unsigned long r6, unsigned long r7,2727+ struct pt_regs __regs);2828+asmlinkage int sys_sigaction(int sig, const struct old_sigaction __user *act,2929+ struct old_sigaction __user *oact);3030+asmlinkage int sys_sigaltstack(const stack_t __user *uss, stack_t __user *uoss,3131+ unsigned long r6, unsigned long r7,3232+ struct pt_regs __regs);3333+asmlinkage int sys_sigreturn(unsigned long r4, unsigned long r5,3434+ unsigned long r6, unsigned long r7,3535+ struct pt_regs __regs);3636+asmlinkage int sys_rt_sigreturn(unsigned long r4, unsigned long r5,3737+ unsigned long r6, unsigned long r7,3838+ struct pt_regs __regs);3939+asmlinkage int sys_pipe(unsigned long r4, unsigned long r5,4040+ unsigned long r6, unsigned long r7,4141+ struct pt_regs __regs);4242+asmlinkage ssize_t sys_pread_wrapper(unsigned int fd, char __user *buf,4343+ size_t count, long dummy, loff_t pos);4444+asmlinkage ssize_t sys_pwrite_wrapper(unsigned int fd, const char __user *buf,4545+ size_t count, long dummy, loff_t pos);4646+asmlinkage int sys_fadvise64_64_wrapper(int fd, u32 offset0, u32 offset1,4747+ u32 len0, u32 len1, int advice);4848+4949+/* Misc syscall related bits */5050+asmlinkage long do_syscall_trace_enter(struct pt_regs *regs);5151+asmlinkage void do_syscall_trace_leave(struct pt_regs *regs);5252+asmlinkage void do_notify_resume(struct pt_regs *regs, unsigned int save_r0,5353+ unsigned long thread_info_flags);5454+5555+#endif /* __KERNEL__ */5656+#endif /* __ASM_SH_SYSCALLS_32_H */
+34
arch/sh/include/asm/syscalls_64.h
···11+#ifndef __ASM_SH_SYSCALLS_64_H22+#define __ASM_SH_SYSCALLS_64_H33+44+#ifdef __KERNEL__55+66+#include <linux/compiler.h>77+#include <linux/linkage.h>88+#include <linux/types.h>99+1010+struct pt_regs;1111+1212+asmlinkage int sys_fork(unsigned long r2, unsigned long r3,1313+ unsigned long r4, unsigned long r5,1414+ unsigned long r6, unsigned long r7,1515+ struct pt_regs *pregs);1616+asmlinkage int sys_clone(unsigned long clone_flags, unsigned long newsp,1717+ unsigned long r4, unsigned long r5,1818+ unsigned long r6, unsigned long r7,1919+ struct pt_regs *pregs);2020+asmlinkage int sys_vfork(unsigned long r2, unsigned long r3,2121+ unsigned long r4, unsigned long r5,2222+ unsigned long r6, unsigned long r7,2323+ struct pt_regs *pregs);2424+asmlinkage int sys_execve(char *ufilename, char **uargv,2525+ char **uenvp, unsigned long r5,2626+ unsigned long r6, unsigned long r7,2727+ struct pt_regs *pregs);2828+2929+/* Misc syscall related bits */3030+asmlinkage long long do_syscall_trace_enter(struct pt_regs *regs);3131+asmlinkage void do_syscall_trace_leave(struct pt_regs *regs);3232+3333+#endif /* __KERNEL__ */3434+#endif /* __ASM_SH_SYSCALLS_64_H */
+4-2
arch/sh/include/asm/system.h
···127127 })128128129129extern void die(const char *str, struct pt_regs *regs, long err) __attribute__ ((noreturn));130130+void free_initmem(void);131131+void free_initrd_mem(unsigned long start, unsigned long end);130132131133extern void *set_exception_table_vec(unsigned int vec, void *handler);132134···181179#define arch_align_stack(x) (x)182180183181struct mem_access {184184- unsigned long (*from)(void *dst, const void *src, unsigned long cnt);185185- unsigned long (*to)(void *dst, const void *src, unsigned long cnt);182182+ unsigned long (*from)(void *dst, const void __user *src, unsigned long cnt);183183+ unsigned long (*to)(void __user *dst, const void *src, unsigned long cnt);186184};187185188186#ifdef CONFIG_SUPERH32
+16
arch/sh/include/asm/system_32.h
···9999int handle_unaligned_access(opcode_t instruction, struct pt_regs *regs,100100 struct mem_access *ma);101101102102+asmlinkage void do_address_error(struct pt_regs *regs,103103+ unsigned long writeaccess,104104+ unsigned long address);105105+asmlinkage void do_divide_error(unsigned long r4, unsigned long r5,106106+ unsigned long r6, unsigned long r7,107107+ struct pt_regs __regs);108108+asmlinkage void do_reserved_inst(unsigned long r4, unsigned long r5,109109+ unsigned long r6, unsigned long r7,110110+ struct pt_regs __regs);111111+asmlinkage void do_illegal_slot_inst(unsigned long r4, unsigned long r5,112112+ unsigned long r6, unsigned long r7,113113+ struct pt_regs __regs);114114+asmlinkage void do_exception_error(unsigned long r4, unsigned long r5,115115+ unsigned long r6, unsigned long r7,116116+ struct pt_regs __regs);117117+102118#endif /* __ASM_SH_SYSTEM_32_H */
+3-2
arch/sh/kernel/cpu/clock.c
···294294{295295}296296297297-void __init __attribute__ ((weak))297297+int __init __attribute__ ((weak))298298arch_clk_init(void)299299{300300+ return 0;300301}301302302303static int show_clocks(char *buf, char **start, off_t off,···332331 ret |= clk_register(clk);333332 }334333335335- arch_clk_init();334334+ ret |= arch_clk_init();336335337336 /* Kick the child clocks.. */338337 propagate_rate(&master_clk);
···2727#include <asm/system.h>2828#include <asm/processor.h>2929#include <asm/mmu_context.h>3030+#include <asm/syscalls.h>30313132/*3233 * does not yet catch signals sent when the child dies.···106105long arch_ptrace(struct task_struct *child, long request, long addr, long data)107106{108107 struct user * dummy = NULL;108108+ unsigned long __user *datap = (unsigned long __user *)data;109109 int ret;110110111111 switch (request) {···135133 tmp = !!tsk_used_math(child);136134 else137135 tmp = 0;138138- ret = put_user(tmp, (unsigned long __user *)data);136136+ ret = put_user(tmp, datap);139137 break;140138 }141139···204202 }205203206204 ret = 0;207207- if (put_user(tmp, (unsigned long *) data)) {205205+ if (put_user(tmp, datap)) {208206 ret = -EFAULT;209207 break;210208 }
+1
arch/sh/kernel/ptrace_64.c
···3535#include <asm/system.h>3636#include <asm/processor.h>3737#include <asm/mmu_context.h>3838+#include <asm/syscalls.h>3839#include <asm/fpu.h>39404041/* This mask defines the bits of the SR which the user is not allowed to