rv64im_min_clint.nx
buildroot/runtime/_hdl_build/rv64im_min_clint.nx
about
dependencies 2 imports · 35 importers
diagram shows first 10 each side; +0 more imports, +25 more importers in the complete lists below.
imports: nx_syscalls.nxnishi_hdl_primitives.nx
imported by: _gpu_run.nx_nvme_diag.nxnx_bootcap.nxnx_emu_bench.nxnx_evo_isa_sov.nxnx_geneal_energy_sov.nxnx_isa_cf_sov.nxnx_isa_equiv_sov.nxnx_isa_loop_sov.nxnx_isa_run_sov.nxnx_isa_synth_sov.nxnx_nishios_window.nxnx_nxc_baremetal.nxnx_nxc_run.nxnx_rv64_amo_gate.nxnx_rv64_csr_trap_oracle.nxnx_rv64_fast_dev_gate.nxnx_rv64_fast_gate.nxnx_rv64_kernel_gate.nxnx_rv64_mmu_oracle.nxnx_rv64_qemu_fuzz.nxnx_rv64_qemu_oracle.nxnx_rv64_realc_gate.nxnx_rv64_run_bin.nxnx_rv64_sdeleg_oracle.nxnx_rv64_snapshot_gate.nxnx_rv64_timer_oracle.nxnx_rv64im_cpu_crosscheck.nxrv64im_min_cpu_crosscheck.nxrv64im_min_elf_loader.nxrv64im_min_gfx_gate.nxrv64im_min_hot_report.nxrv64im_min_kernel_boot_smoke.nxrv64im_min_sim.nxrv64im_min_sim_smoke.nx
structs
| 62 | struct NxClint |
| 186 | struct NxClintPorts |
consts
| 36 | const NX_CLINT_BASE: i64 = 0x02000000 |
| 37 | const NX_CLINT_MSIP_BASE: i64 = 0x02000000 |
| 38 | const NX_CLINT_MTIMECMP_BASE: i64 = 0x02004000 |
| 39 | const NX_CLINT_MTIME_ADDR: i64 = 0x0200BFF8 |
| 40 | const NX_CLINT_END: i64 = 0x0200C000 |
| 43 | const NX_CLINT_OK: i64 = 0 |
| 44 | const NX_CLINT_ADDR_OUT_OF_RANGE: i64 = 1 |
| 45 | const NX_CLINT_BAD_ALIGNMENT: i64 = 2 // 8-byte access required |
| 55 | const NX_CLINT_SLOT_MTIME: i64 = 0 |
| 56 | const NX_CLINT_SLOT_MTIMECMP: i64 = 1 |
| 57 | const NX_CLINT_SLOT_MTIP: i64 = 2 |
| 58 | const NX_CLINT_SLOT_N: i64 = 3 |
| 60 | const NX_CLINT_INIT_MTIMECMP: i64 = 0x7FFFFFFFFFFFFFFF // INT64_MAX |
| 181 | const NX_CLINT_WIDTH_ADDR: i64 = 32 // physical address space |
| 182 | const NX_CLINT_WIDTH_DATA: i64 = 64 |
| 183 | const NX_CLINT_WIDTH_VERDICT: i64 = 4 |
| 184 | const NX_CLINT_WIDTH_MTIP: i64 = 1 |
functions
| 67 | func nx_clint_init(c: *NxClint, storage: *i64) -> i64 |
| 79 | func nx_clint_addr_in_range(addr: i64) -> i64 |
| 91 | func nx_clint_read64(c: *NxClint, addr: i64, value_out: *i64) -> i64 |
| 113 | func nx_clint_write64(c: *NxClint, addr: i64, value: i64) -> i64 |
| 144 | func nx_clint_update_mtip(c: *NxClint) -> i64 |
| 161 | func nx_clint_mtip_get(c: *NxClint) -> i64 called by 1: nx_rv64im_sim_step |
| 173 | func nx_clint_tick(c: *NxClint) -> i64 |
| 200 | func nx_clint_build(m: *NxHdlModule, ports: *NxClintPorts) -> i64 |