riscv: Clean up {qemu,spike}_util

spike_util.h:
 - (LOG_)REGBYTES and STORE are already defined in
   arch/riscv/include/bits.h.
 - TOHOST_CMD, FROMHOST_* are helper macros for the deprecated
   Host-Target Interface (HTIF).

qemu_util.c:
 - mcall_query_memory now uses mprv_write_ulong instead of first
   translating the address and then accessing it normally. Thus,
   translate_address isn't used anymore.
 - Several functions used the deprecated HTIF CSRs mtohost/mfromhost.
   They have mostly been replaced by stub implementations.
 - htif_interrupt and testPrint were unused and have been deleted.

spike_util.c:
 - translate_address and testPrint were unused and have been deleted.

After this commit, spike_util.c and qemu_util.c are exactly the same and
can be moved to a common location.

Change-Id: I1789bad8bbab964c3f2f0480de8d97588c68ceaf
Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/16985
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
Jonathan Neuschäfer
2016-10-12 00:18:00 +02:00
committed by Ronald G. Minnich
parent 2af174a7dc
commit e2e40cc17e
3 changed files with 13 additions and 160 deletions

View File

@@ -16,25 +16,13 @@
#ifndef _SPIKE_UTIL_H
#define _SPIKE_UTIL_H
#include <stdint.h>
//#include <string.h>
//#include <errno.h>
#include <arch/encoding.h>
#include <atomic.h>
#include <stdint.h>
#define LOG_REGBYTES 3
#define REGBYTES (1 << LOG_REGBYTES)
#define STORE sd
#define HLS_SIZE 64
#define MENTRY_FRAME_SIZE HLS_SIZE
#define TOHOST_CMD(dev, cmd, payload) \
(((uint64_t)(dev) << 56) | ((uint64_t)(cmd) << 48) | (uint64_t)(payload))
#define FROMHOST_DEV(fromhost_value) ((uint64_t)(fromhost_value) >> 56)
#define FROMHOST_CMD(fromhost_value) ((uint64_t)(fromhost_value) << 8 >> 56)
#define FROMHOST_DATA(fromhost_value) ((uint64_t)(fromhost_value) << 16 >> 16)
typedef struct {
unsigned long base;
unsigned long size;
@@ -69,12 +57,8 @@ typedef struct {
#define MACHINE_STACK_SIZE RISCV_PGSIZE
uintptr_t translate_address(uintptr_t vAddr);
uintptr_t mcall_query_memory(uintptr_t id, memory_block_info *p);
uintptr_t mcall_hart_id(void);
uintptr_t htif_interrupt(uintptr_t mcause, uintptr_t* regs);
uintptr_t mcall_console_putchar(uint8_t ch);
void testPrint(void);
uintptr_t mcall_dev_req(sbi_device_message *m);
uintptr_t mcall_dev_resp(void);
uintptr_t mcall_set_timer(unsigned long long when);