cpu.h (33fe584f7026bfaa13bb8a943f85c879e06bbdc6) cpu.h (95799e36c15a9ab602a388491c40f6860f6ae8bf)
1/*
2 * QEMU RISC-V CPU
3 *
4 * Copyright (c) 2016-2017 Sagar Karandikar, sagark@eecs.berkeley.edu
5 * Copyright (c) 2017-2018 SiFive, Inc.
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms and conditions of the GNU General Public License,

--- 92 unchanged lines hidden (view full) ---

101#define MMU_USER_IDX 3
102
103#define MAX_RISCV_PMPS (16)
104
105typedef struct CPUArchState CPURISCVState;
106
107#if !defined(CONFIG_USER_ONLY)
108#include "pmp.h"
1/*
2 * QEMU RISC-V CPU
3 *
4 * Copyright (c) 2016-2017 Sagar Karandikar, sagark@eecs.berkeley.edu
5 * Copyright (c) 2017-2018 SiFive, Inc.
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms and conditions of the GNU General Public License,

--- 92 unchanged lines hidden (view full) ---

101#define MMU_USER_IDX 3
102
103#define MAX_RISCV_PMPS (16)
104
105typedef struct CPUArchState CPURISCVState;
106
107#if !defined(CONFIG_USER_ONLY)
108#include "pmp.h"
109#include "debug.h"
109#endif
110
111#define RV_VLEN_MAX 1024
112
113FIELD(VTYPE, VLMUL, 0, 3)
114FIELD(VTYPE, VSEW, 3, 3)
115FIELD(VTYPE, VTA, 6, 1)
116FIELD(VTYPE, VMA, 7, 1)

--- 157 unchanged lines hidden (view full) ---

274 uint64_t mfromhost;
275 uint64_t mtohost;
276 uint64_t timecmp;
277
278 /* physical memory protection */
279 pmp_table_t pmp_state;
280 target_ulong mseccfg;
281
110#endif
111
112#define RV_VLEN_MAX 1024
113
114FIELD(VTYPE, VLMUL, 0, 3)
115FIELD(VTYPE, VSEW, 3, 3)
116FIELD(VTYPE, VTA, 6, 1)
117FIELD(VTYPE, VMA, 7, 1)

--- 157 unchanged lines hidden (view full) ---

275 uint64_t mfromhost;
276 uint64_t mtohost;
277 uint64_t timecmp;
278
279 /* physical memory protection */
280 pmp_table_t pmp_state;
281 target_ulong mseccfg;
282
283 /* trigger module */
284 target_ulong trigger_cur;
285 type2_trigger_t type2_trig[TRIGGER_TYPE2_NUM];
286
282 /* machine specific rdtime callback */
283 uint64_t (*rdtime_fn)(uint32_t);
284 uint32_t rdtime_fn_arg;
285
286 /* machine specific AIA ireg read-modify-write callback */
287#define AIA_MAKE_IREG(__isel, __priv, __virt, __vgein, __xlen) \
288 ((((__xlen) & 0xff) << 24) | \
289 (((__vgein) & 0x3f) << 20) | \

--- 402 unchanged lines hidden ---
287 /* machine specific rdtime callback */
288 uint64_t (*rdtime_fn)(uint32_t);
289 uint32_t rdtime_fn_arg;
290
291 /* machine specific AIA ireg read-modify-write callback */
292#define AIA_MAKE_IREG(__isel, __priv, __virt, __vgein, __xlen) \
293 ((((__xlen) & 0xff) << 24) | \
294 (((__vgein) & 0x3f) << 20) | \

--- 402 unchanged lines hidden ---