diff options
Diffstat (limited to '')
-rw-r--r-- | arch/xtensa/platforms/iss/include/platform/simcall.h | 12 | ||||
-rw-r--r-- | arch/xtensa/platforms/iss/network.c | 2 | ||||
-rw-r--r-- | arch/xtensa/platforms/iss/setup.c | 25 | ||||
-rw-r--r-- | arch/xtensa/platforms/iss/simdisk.c | 10 |
4 files changed, 15 insertions, 34 deletions
diff --git a/arch/xtensa/platforms/iss/include/platform/simcall.h b/arch/xtensa/platforms/iss/include/platform/simcall.h index 2ba45858e50a..f42870ab551b 100644 --- a/arch/xtensa/platforms/iss/include/platform/simcall.h +++ b/arch/xtensa/platforms/iss/include/platform/simcall.h @@ -66,19 +66,17 @@ static int errno; static inline int __simc(int a, int b, int c, int d) { - int ret; register int a1 asm("a2") = a; register int b1 asm("a3") = b; register int c1 asm("a4") = c; register int d1 asm("a5") = d; __asm__ __volatile__ ( "simcall\n" - "mov %0, a2\n" - "mov %1, a3\n" - : "=a" (ret), "=a" (errno), "+r"(a1), "+r"(b1) + : "+r"(a1), "+r"(b1) : "r"(c1), "r"(d1) : "memory"); - return ret; + errno = b1; + return a1; } static inline int simc_exit(int exit_code) @@ -113,9 +111,9 @@ static inline int simc_write(int fd, const void *buf, size_t count) static inline int simc_poll(int fd) { - struct timeval tv = { .tv_sec = 0, .tv_usec = 0 }; + long timeval[2] = { 0, 0 }; - return __simc(SYS_select_one, fd, XTISS_SELECT_ONE_READ, (int)&tv); + return __simc(SYS_select_one, fd, XTISS_SELECT_ONE_READ, (int)&timeval); } static inline int simc_lseek(int fd, uint32_t off, int whence) diff --git a/arch/xtensa/platforms/iss/network.c b/arch/xtensa/platforms/iss/network.c index fa9f3893b002..4986226a5ab2 100644 --- a/arch/xtensa/platforms/iss/network.c +++ b/arch/xtensa/platforms/iss/network.c @@ -455,7 +455,7 @@ static void iss_net_set_multicast_list(struct net_device *dev) { } -static void iss_net_tx_timeout(struct net_device *dev) +static void iss_net_tx_timeout(struct net_device *dev, unsigned int txqueue) { } diff --git a/arch/xtensa/platforms/iss/setup.c b/arch/xtensa/platforms/iss/setup.c index e28dd53d7df5..ed519aee0ec8 100644 --- a/arch/xtensa/platforms/iss/setup.c +++ b/arch/xtensa/platforms/iss/setup.c @@ -11,32 +11,18 @@ * Copyright 2001 - 2005 Tensilica Inc. * Copyright 2017 Cadence Design Systems Inc. */ -#include <linux/memblock.h> -#include <linux/stddef.h> -#include <linux/kernel.h> #include <linux/init.h> -#include <linux/errno.h> -#include <linux/reboot.h> -#include <linux/kdev_t.h> -#include <linux/types.h> -#include <linux/major.h> -#include <linux/blkdev.h> -#include <linux/console.h> -#include <linux/delay.h> -#include <linux/stringify.h> +#include <linux/kernel.h> #include <linux/notifier.h> +#include <linux/printk.h> +#include <linux/string.h> #include <asm/platform.h> -#include <asm/bootparam.h> #include <asm/setup.h> #include <platform/simcall.h> -void __init platform_init(bp_tag_t* bootparam) -{ -} - void platform_halt(void) { pr_info(" ** Called platform_halt() **\n"); @@ -48,6 +34,7 @@ void platform_power_off(void) pr_info(" ** Called platform_power_off() **\n"); simc_exit(0); } + void platform_restart(void) { /* Flush and reset the mmu, simulate a processor reset, and @@ -56,10 +43,6 @@ void platform_restart(void) /* control never gets here */ } -void platform_heartbeat(void) -{ -} - static int iss_panic_event(struct notifier_block *this, unsigned long event, void *ptr) { diff --git a/arch/xtensa/platforms/iss/simdisk.c b/arch/xtensa/platforms/iss/simdisk.c index f9cd45860bee..833109880165 100644 --- a/arch/xtensa/platforms/iss/simdisk.c +++ b/arch/xtensa/platforms/iss/simdisk.c @@ -251,10 +251,10 @@ out_free: return err; } -static const struct file_operations fops = { - .read = proc_read_simdisk, - .write = proc_write_simdisk, - .llseek = default_llseek, +static const struct proc_ops simdisk_proc_ops = { + .proc_read = proc_read_simdisk, + .proc_write = proc_write_simdisk, + .proc_lseek = default_llseek, }; static int __init simdisk_setup(struct simdisk *dev, int which, @@ -290,7 +290,7 @@ static int __init simdisk_setup(struct simdisk *dev, int which, set_capacity(dev->gd, 0); add_disk(dev->gd); - dev->procfile = proc_create_data(tmp, 0644, procdir, &fops, dev); + dev->procfile = proc_create_data(tmp, 0644, procdir, &simdisk_proc_ops, dev); return 0; out_alloc_disk: |