/linux-5.10/arch/riscv/kernel/ |
D | cpu.c | 12 * Returns the hart ID of the given device tree node, or -ENODEV if the node 13 * isn't an enabled and valid RISC-V hart node. 18 u32 hart; in riscv_of_processor_hartid() local 25 if (of_property_read_u32(node, "reg", &hart)) { in riscv_of_processor_hartid() 26 pr_warn("Found CPU without hart ID\n"); in riscv_of_processor_hartid() 31 pr_info("CPU with hartid=%d is not available\n", hart); in riscv_of_processor_hartid() 36 pr_warn("CPU with hartid=%d has no \"riscv,isa\" property\n", hart); in riscv_of_processor_hartid() 40 pr_warn("CPU with hartid=%d has an invalid ISA of \"%s\"\n", hart, isa); in riscv_of_processor_hartid() 44 return hart; in riscv_of_processor_hartid() 48 * Find hart ID of the CPU DT node under which given DT node falls. [all …]
|
D | smpboot.c | 68 int hart; in setup_smp() local 75 hart = riscv_of_processor_hartid(dn); in setup_smp() 76 if (hart < 0) in setup_smp() 79 if (hart == cpuid_to_hartid_map(0)) { in setup_smp() 86 cpuid, hart); in setup_smp() 90 cpuid_to_hartid_map(cpuid) = hart; in setup_smp()
|
D | head.S | 179 /* We lack SMP support or have too many harts, so park this hart */ 240 /* Pick one hart to run the main boot sequence */ 256 /* Save hart ID and DTB physical address */ 297 * This hart didn't win the lottery, so we wait for the winning hart to
|
D | sys_riscv.c | 53 * kernel might schedule a process on another hart. There is no way for 55 * thread->hart mappings), so we've defined a RISC-V specific system call to
|
D | cpufeature.c | 113 * All "okay" hart should have same isa. Set HWCAP based on in riscv_fill_hwcap() 114 * common capabilities of every "okay" hart, in case they don't in riscv_fill_hwcap()
|
/linux-5.10/arch/riscv/mm/ |
D | cacheflush.c | 31 * single-hart processes on a many-hart machine, ie 'make -j') we avoid the 34 * execution resumes on each hart. 43 /* Mark every hart's icache as needing a flush for this MM. */ in flush_icache_mm() 46 /* Flush this hart's I$ now, and mark it as flushed. */ in flush_icache_mm() 60 * performed on this hart between setting a hart's cpumask bit in flush_icache_mm() 61 * and scheduling this MM context on that hart. Sending an SBI in flush_icache_mm() 63 * messages are sent we still need to order this hart's writes in flush_icache_mm()
|
D | context.c | 17 * behavior in a common case (a bunch of single-hart processes on a many-hart 20 * cache flush to be performed before execution resumes on each hart. This 22 * refers to the current hart. 33 * Ensure the remote hart's writes are visible to this hart. in flush_icache_deferred()
|
/linux-5.10/Documentation/devicetree/bindings/interrupt-controller/ |
D | riscv,cpu-intc.txt | 1 RISC-V Hart-Level Interrupt Controller (HLIC) 5 CPU core (HART in RISC-V terminology) and can be read or written by software. 7 Every interrupt is ultimately routed through a hart's HLIC before it 8 interrupts that hart. 40 definition of the hart whose CSRs control these local interrupts.
|
D | sifive,plic-1.0.0.yaml | 14 hart contexts in the system, via the external interrupt source in each hart. 16 A hart context is a privilege mode in a hardware execution thread. For example, 18 privilege modes per hart; machine mode and supervisor mode.
|
/linux-5.10/Documentation/devicetree/bindings/riscv/ |
D | cpus.yaml | 17 hart: A hardware execution context, which contains all the state 39 Identifies that the hart uses the RISC-V instruction set 40 and identifies the type of the hart. 45 hart. These values originate from the RISC-V Privileged 57 supported by the hart. These are documented in the RISC-V 145 // Example 2: Spike ISA Simulator with 1 Hart
|
/linux-5.10/drivers/irqchip/ |
D | irq-riscv-intc.c | 48 * on the local hart, these functions can only be called on the hart that 102 pr_warn("unable to find hart id for %pOF\n", node); in riscv_intc_init() 107 * The DT will have one INTC DT node under each CPU (or HART) in riscv_intc_init() 110 * for the INTC DT node belonging to boot CPU (or boot HART). in riscv_intc_init()
|
D | irq-sifive-plic.c | 44 * Each hart context has a vector of interrupt enable bits associated with it. 51 * Each hart context has a set of control registers associated with it. Right 52 * now there's only two: a source priority threshold over which the hart will 328 pr_warn("failed to parse hart ID for context %d.\n", i); in plic_init()
|
D | Kconfig | 517 This enables support for the per-HART local interrupt controller 518 found in standard RISC-V systems. The per-HART local interrupt 520 hardware interrupts. Without a per-HART local interrupt controller,
|
/linux-5.10/arch/csky/abiv2/ |
D | cacheflush.c | 40 * Ensure the remote hart's writes are visible to this hart. in flush_icache_deferred() 64 /* Mark every hart's icache as needing a flush for this MM. */ in flush_icache_mm_range() 68 /* Flush this hart's I$ now, and mark it as flushed. */ in flush_icache_mm_range()
|
/linux-5.10/tools/testing/selftests/futex/ |
D | run.sh | 13 # Darren Hart <dvhart@linux.intel.com> 16 # 2009-Nov-9: Initial version by Darren Hart <dvhart@linux.intel.com>
|
/linux-5.10/tools/arch/riscv/include/uapi/asm/ |
D | unistd.h | 29 * kernel might schedule a process on another hart. There is no way for 31 * thread->hart mappings), so we've defined a RISC-V specific system call to
|
/linux-5.10/arch/riscv/include/uapi/asm/ |
D | unistd.h | 30 * kernel might schedule a process on another hart. There is no way for 32 * thread->hart mappings), so we've defined a RISC-V specific system call to
|
/linux-5.10/arch/riscv/include/asm/ |
D | barrier.h | 64 * task is marked as available for scheduling on a new hart. While I don't see 68 * the new hart.
|
D | smp.h | 54 /* Secondary hart entry */ 58 * Obtains the hart ID of the currently executing task. This relies on
|
/linux-5.10/tools/testing/selftests/futex/include/ |
D | atomic.h | 11 * Darren Hart <dvhart@linux.intel.com> 14 * 2009-Nov-17: Initial version by Darren Hart <dvhart@linux.intel.com>
|
D | logging.h | 10 * Darren Hart <dvhart@linux.intel.com> 13 * 2009-Nov-6: Initial version by Darren Hart <dvhart@linux.intel.com>
|
/linux-5.10/tools/testing/selftests/futex/functional/ |
D | run.sh | 12 # Darren Hart <dvhart@linux.intel.com> 15 # 2009-Nov-9: Initial version by Darren Hart <dvhart@linux.intel.com>
|
D | futex_wait_timeout.c | 10 * Darren Hart <dvhart@linux.intel.com> 13 * 2009-Nov-6: Initial version by Darren Hart <dvhart@linux.intel.com>
|
D | futex_requeue_pi_mismatched_ops.c | 12 * Darren Hart <dvhart@linux.intel.com> 15 * 2009-Nov-9: Initial version by Darren Hart <dvhart@linux.intel.com>
|
D | futex_requeue_pi_signal_restart.c | 12 * Darren Hart <dvhart@linux.intel.com> 15 * 2008-May-5: Initial version by Darren Hart <dvhart@linux.intel.com>
|