History log of /linux-master/arch/xtensa/platforms/iss/include/platform/simcall.h
Revision Date Author Comments
# 6a8eb99e 18-Feb-2021 Max Filippov <jcmvbkbc@gmail.com>

xtensa: ISS: add GDBIO implementation to semihosting interface

Add GDBIO implementation for the xtensa semihosting interface. It offers
less functions than the simcall interface, so make some semihosting
functions optional and return error when implementation is not
available.
Add Kconfig menu to select semihosting implementation and add simcall and
GDBIO choices there.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>


# 54467c12 18-Feb-2021 Max Filippov <jcmvbkbc@gmail.com>

xtensa: ISS: split simcall implementation from semihosting interface

Disconnect existing ISS simcall implementation from the semihosting
interface to allow for alternative implementations selectable at
configure time.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>


# 4671076c 25-Mar-2021 Bhaskar Chowdhury <unixbhaskar@gmail.com>

xtensa: simcall.h: Change compitible to compatible

s/compitible/compatible/

Signed-off-by: Bhaskar Chowdhury <unixbhaskar@gmail.com>
Message-Id: <20210326012739.18038-1-unixbhaskar@gmail.com>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>


# c74c0fd2 04-Feb-2020 Max Filippov <jcmvbkbc@gmail.com>

xtensa: ISS: improve simcall assembly

Drop redundant result moving from inline assembly, use a1 and b1 values
as return value and errno value respectively.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>


# 37e86e0f 25-Oct-2019 Arnd Bergmann <arnd@arndb.de>

xtensa: ISS: avoid struct timeval

'struct timeval' will get removed from the kernel, change the one
user in arch/xtensa to avoid referencing it, by using a fixed-length
array instead.

Acked-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>


# e8cd8da9 13-Mar-2017 Max Filippov <jcmvbkbc@gmail.com>

xtensa: ISS: add argc/argv simcall definitions

There are three simcalls implemented by ISS and QEMU related to
argc/argv processing: SYS_iss_argc (get number of command line
arguments), SYS_iss_argv_size (get size of command line argument block)
and SYS_iss_set_argv (copy command line arguments to virtual guest
address).
Add definitions for these calls to iss/include/platform/simcall.h

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>


# feec273a 20-Sep-2016 Max Filippov <jcmvbkbc@gmail.com>

xtensa: ISS: define simc_exit and use it instead of inline asm

A number of ISS platform functions use inline assembly to invoke
simulator exit, not all correctly. Define simc_exit(exit_code) and use
it instead of inline assembly.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>


# f4b93ba9 14-Apr-2013 Max Filippov <jcmvbkbc@gmail.com>

xtensa: don't use a7 in simcalls

To support FRAME_POINTER avoid using a7 in __simc (none of the existing
simcalls needs it). Replace calls to __simc with more specific
simc_read, simc_write and simc_lseek calls.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>


# 288dc2b6 21-Oct-2012 Max Filippov <jcmvbkbc@gmail.com>

xtensa: properly fix missing compiler barrier in simcall

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>


# 50c08f8e 14-Oct-2012 Max Filippov <jcmvbkbc@gmail.com>

xtensa: ISS: fix specific simcalls

Simcalls that take memory buffer definitely need wmb or rmb to make sure
gcc doesn't optimize away code that fills the buffer.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>


# 717460ee 16-Sep-2012 Max Filippov <jcmvbkbc@gmail.com>

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>


# 367b8112 06-Nov-2008 Chris Zankel <chris@zankel.net>

xtensa: move headers files to arch/xtensa/include

Move all header files for xtensa to arch/xtensa/include and platform and
variant header files to the appropriate arch/xtensa/platforms/ and
arch/xtensa/variants/ directories.

Moving the files gets also rid of all uses of symlinks in the Makefile.

This has been completed already for the majority of the architectures
and xtensa is one out of six missing.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Chris Zankel <chris@zankel.net>