diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2012-09-17 05:44:35 +0400 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2012-10-04 02:11:25 +0400 |
commit | 717460ee3e8399eb66799cac0bb83217475b7027 (patch) | |
tree | f14d582c9a024a292e6b85dc899ebe59b0e7c972 /arch/xtensa/platforms/iss/console.c | |
parent | 33c8213d6930cfa1d09e2912b9e2d59f251c33b7 (diff) | |
download | linux-717460ee3e8399eb66799cac0bb83217475b7027.tar.xz |
xtensa: ISS: fix __simc implementation
Do not rely on compiler implicitly placing function arguments into
specifc registers, place them explicitly.
Move __simc and related helpers to platform/simcall.h
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
Diffstat (limited to 'arch/xtensa/platforms/iss/console.c')
-rw-r--r-- | arch/xtensa/platforms/iss/console.c | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/arch/xtensa/platforms/iss/console.c b/arch/xtensa/platforms/iss/console.c index f9726f6afdf1..daee86cdf0cc 100644 --- a/arch/xtensa/platforms/iss/console.c +++ b/arch/xtensa/platforms/iss/console.c @@ -41,19 +41,6 @@ static struct timer_list serial_timer; static DEFINE_SPINLOCK(timer_lock); -int errno; - -static int __simc (int a, int b, int c, int d, int e, int f) __attribute__((__noinline__)); -static int __simc (int a, int b, int c, int d, int e, int f) -{ - int ret; - __asm__ __volatile__ ("simcall\n" - "mov %0, a2\n" - "mov %1, a3\n" : "=a" (ret), "=a" (errno) - : : "a2", "a3"); - return ret; -} - static char *serial_version = "0.1"; static char *serial_name = "ISS serial driver"; |