summaryrefslogtreecommitdiff
path: root/arch/sh/include/asm/processor.h
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2012-03-28 21:30:03 +0400
committerDavid Howells <dhowells@redhat.com>2012-03-28 21:30:03 +0400
commite839ca528718e68cad32a307dc9aabf01ef3eb05 (patch)
tree5ceb6ece0688455f7205739b71e4b6e04afd2988 /arch/sh/include/asm/processor.h
parent4eb14db4440febb7e560eb8ab2c099bc6e11a0ac (diff)
downloadlinux-e839ca528718e68cad32a307dc9aabf01ef3eb05.tar.xz
Disintegrate asm/system.h for SH
Disintegrate asm/system.h for SH. Signed-off-by: David Howells <dhowells@redhat.com> cc: linux-sh@vger.kernel.org
Diffstat (limited to 'arch/sh/include/asm/processor.h')
-rw-r--r--arch/sh/include/asm/processor.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/sh/include/asm/processor.h b/arch/sh/include/asm/processor.h
index 9c7bdfcaebbd..a229c393826a 100644
--- a/arch/sh/include/asm/processor.h
+++ b/arch/sh/include/asm/processor.h
@@ -101,6 +101,10 @@ extern struct sh_cpuinfo cpu_data[];
#define cpu_sleep() __asm__ __volatile__ ("sleep" : : : "memory")
#define cpu_relax() barrier()
+void default_idle(void);
+void cpu_idle_wait(void);
+void stop_this_cpu(void *);
+
/* Forward decl */
struct seq_operations;
struct task_struct;
@@ -161,6 +165,17 @@ int vsyscall_init(void);
#define vsyscall_init() do { } while (0)
#endif
+/*
+ * SH-2A has both 16 and 32-bit opcodes, do lame encoding checks.
+ */
+#ifdef CONFIG_CPU_SH2A
+extern unsigned int instruction_size(unsigned int insn);
+#elif defined(CONFIG_SUPERH32)
+#define instruction_size(insn) (2)
+#else
+#define instruction_size(insn) (4)
+#endif
+
#endif /* __ASSEMBLY__ */
#ifdef CONFIG_SUPERH32