libutils: riscv: Implement _mount() and __ftrace_return()When the core and TA are compiled with the -pg option, the compilerinserts a call to _mcount() into every function prologue. It can be used
libutils: riscv: Implement _mount() and __ftrace_return()When the core and TA are compiled with the -pg option, the compilerinserts a call to _mcount() into every function prologue. It can be usedto trace the function calls such as ftrace.Implement the _mount() to prepare the necessary parameters for ftrace.The __ftrace_return() is also implemented for returning from ftrace.Signed-off-by: Alvin Chang <alvinga@andestech.com>Acked-by: Jerome Forissier <jerome.forissier@linaro.org>Acked-by: Sumit Garg <sumit.garg@linaro.org>Reviewed-by: Marouene Boubakri <marouene.boubakri@nxp.com>
show more ...
libutils: riscv: provide atomic_rv.SImplement atomic_inc32() and atomic_dec32() in atomic_rv.S.The implementation is based on atomic addition instructionwith acquire and release suffix to add add
libutils: riscv: provide atomic_rv.SImplement atomic_inc32() and atomic_dec32() in atomic_rv.S.The implementation is based on atomic addition instructionwith acquire and release suffix to add additional memoryorder constraints.Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com>Acked-by: Jens Wiklander <jens.wiklander@linaro.org>Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
riscv: create makefiles and directories tree for riscvThis commits creates the very first makefiles, directories andsubdirectories for RISC-V port. It also creates a new platform flavornamed plat
riscv: create makefiles and directories tree for riscvThis commits creates the very first makefiles, directories andsubdirectories for RISC-V port. It also creates a new platform flavornamed plat-spike. Spike is a reference functional RISC-V ISA simulatorwhich provides full system emulation and it is developed alongside theRISC-V toolchain.Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com>Acked-by: Jens Wiklander <jens.wiklander@linaro.org>Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>