| /linux/arch/riscv/ |
| H A D | Makefile | 2 # architecture-specific flags and dependencies. 9 LDFLAGS_vmlinux := -z norelro 11 LDFLAGS_vmlinux += -shared -Bsymbolic -z notext 12 KBUILD_CFLAGS += -fPIE 15 LDFLAGS_vmlinux += --no-relax 16 KBUILD_CPPFLAGS += -DCC_USING_PATCHABLE_FUNCTION_ENTRY 18 CC_FLAGS_FTRACE := -fpatchable-function-entry=8,4 20 CC_FLAGS_FTRACE := -fpatchable-function-entry=4,2 25 KBUILD_CFLAGS_MODULE += -mcmodel=medany 33 KBUILD_CFLAGS += -mabi=lp64 [all …]
|
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 4 # see Documentation/kbuild/kconfig-language.rst. 13 config RISCV config 65 # clang >= 17: https://github.com/llvm/llvm-project/commit/62fa708ceb027713b386c7e0efda994f8bdc27e2 234 # -Zsanitizer=shadow-call-stack flag. 244 depends on $(cc-option,-fpatchable-function-entry=8) 248 def_bool $(cc-option,-fsanitize=shadow-call-stack) 249 …# https://github.com/riscv-non-isa/riscv-elf-psabi-doc/commit/a484e843e6eeb51f0cb7b8819e50da6d2444… 250 depends on $(ld-option,--no-relax-gp) 252 # https://github.com/llvm/llvm-project/commit/bbc0f99f3bc96f1db16f649fc21dd18e5b0918f6 [all …]
|
| /linux/Documentation/arch/riscv/ |
| H A D | hwprobe.rst | 1 .. SPDX-License-Identifier: GPL-2.0 3 RISC-V Hardware Probing Interface 4 --------------------------------- 6 The RISC-V hardware probing interface is based around a single syscall, which 18 The arguments are split into three groups: an array of key-value pairs, a CPU 19 set, and some flags. The key-value pairs are supplied with a count. Userspace 22 will be cleared to -1, and its value set to 0. The CPU set is defined by 23 CPU_SET(3) with size ``cpusetsize`` bytes. For value-like keys (eg. vendor, 25 have the same value. Otherwise -1 will be returned. For boolean-like keys, the 33 by sys_riscv_hwprobe() to only those which match each of the key-value pairs. [all …]
|
| H A D | vector.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Vector Extension Support for RISC-V Linux 8 order to support the use of the RISC-V Vector Extension. 11 --------------------- 15 these interfaces is to give init systems a way to modify the availability of V 19 are not portable to non-Linux, nor non-RISC-V environments, so it is discourage 20 to use in a portable code. To get the availability of V in an ELF program, 27 argument consists of two 2-bit enablement statuses and a bit for inheritance 30 Enablement status is a tri-state value each occupying 2-bit of space in 33 * :c:macro:`PR_RISCV_V_VSTATE_CTRL_DEFAULT`: Use the system-wide default [all …]
|
| /linux/arch/riscv/mm/ |
| H A D | cacheflush.c | 1 // SPDX-License-Identifier: GPL-2.0-only 30 * the IPI. The RISC-V spec states that a hart must execute a data fence in flush_icache_all() 34 * IPIs on RISC-V are triggered by MMIO writes to either CLINT or in flush_icache_all() 35 * S-IMSIC, so the fence ensures previous data writes "happen before" in flush_icache_all() 48 * Performs an icache flush for the given MM context. RISC-V has no direct 52 * single-hart processes on a many-hart machine, ie 'make -j') we avoid the 65 mask = &mm->context.icache_stale_mask; in flush_icache_mm() 78 if (mm == current->active_mm && local) { in flush_icache_mm() 104 if (!test_bit(PG_dcache_clean, &folio->flags.f)) { in flush_icache_pte() 106 set_bit(PG_dcache_clean, &folio->flags.f); in flush_icache_pte() [all …]
|
| /linux/arch/riscv/kernel/ |
| H A D | cpufeature.c | 1 // SPDX-License-Identifier: GPL-2.0-only 24 #include <asm/text-patching.h> 32 #define NUM_ALPHA_EXTS ('z' - 'a' + 1) 43 /* Per-cpu ISA extensions. */ 49 * riscv_isa_extension_base() - Get base extension word 63 * __riscv_isa_extension_available() - Check whether given extension 89 return -EPROBE_DEFER; in riscv_ext_f_depends() 96 pr_err("Zicbom detected in ISA string, disabling as no cbom-block-size found\n"); in riscv_ext_zicbom_validate() 97 return -EINVAL; in riscv_ext_zicbom_validate() 100 pr_err("Zicbom disabled as cbom-block-size present, but is not a power-of-2\n"); in riscv_ext_zicbom_validate() [all …]
|
| H A D | acpi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * RISC-V Specific Low-Level ACPI Boot Support 5 * Copyright (C) 2013-2014, Linaro Ltd. 12 * Copyright (C) 2021-2023, Ventana Micro Systems Inc. 13 * Author: Sunil V L <sunilvl@ventanamicro.com> 17 #include <linux/efi-bgrt.h> 41 return -EINVAL; in parse_acpi() 51 return -EINVAL; /* Core will print when we return error */ in parse_acpi() 58 * acpi_fadt_sanity_check() - Check FADT presence and carry out sanity 71 * FADT is required on riscv; retrieve it to check its presence in acpi_fadt_sanity_check() [all …]
|
| /linux/drivers/irqchip/ |
| H A D | irq-sifive-plic.c | 1 // SPDX-License-Identifier: GPL-2.0 6 #define pr_fmt(fmt) "riscv-plic: " fmt 25 * This driver implements a version of the RISC-V PLIC with the actual layout 28 * https://static.dev.sifive.com/U54-MC-RVCoreIP.pdf 30 * The largest number supported by devices marked as 'sifive,plic-1.0.0', is 31 * 1024, of which device 0 is defined as non-existent by the RISC-V Privileged 32 * Spec. 112 raw_spin_lock_irqsave(&handler->enable_lock, flags); in plic_toggle() 113 __plic_toggle(handler->enable_base, hwirq, enable); in plic_toggle() 114 raw_spin_unlock_irqrestore(&handler->enable_lock, flags); in plic_toggle() [all …]
|
| /linux/Documentation/virt/kvm/ |
| H A D | api.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 The Definitive KVM (Kernel-based Virtual Machine) API Documentation 24 - System ioctls: These query and set global attributes which affect the 28 - VM ioctls: These query and set attributes that affect an entire virtual 35 - vcpu ioctls: These query and set attributes that control the operation 43 - device ioctls: These query and set attributes that control the operation 92 facility that allows backward-compatible extensions to the API to be 133 ----------------------- 150 ----------------- 189 address used by the VM. The IPA_Bits is encoded in bits[7-0] of the [all …]
|
| /linux/Documentation/admin-guide/ |
| H A D | kernel-parameters.txt | 16 force -- enable ACPI if default was off 17 on -- enable ACPI but allow fallback to DT [arm64,riscv64] 18 off -- disable ACPI if default was on 19 noirq -- do not use ACPI for IRQ routing 20 strict -- Be less tolerant of platforms that are not 22 rsdt -- prefer RSDT over (default) XSDT 23 copy_dsdt -- copy DSDT to memory 24 nocmcff -- Disable firmware first mode for corrected 28 nospcr -- disable console in ACPI SPCR table as 45 If set to vendor, prefer vendor-specific driver [all …]
|
| /linux/tools/lib/bpf/ |
| H A D | libbpf.c | 1 // SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) 6 * Copyright (C) 2013-2015 Alexei Starovoitov <ast@kernel.org> 71 #pragma GCC diagnostic ignored "-Wformat-nonliteral" 299 if (err != -EPERM || geteuid() != 0) in pr_perm_msg() 316 pr_warn("permission error while running as root; try raising 'ulimit - in pr_perm_msg() 2147 is_kcfg_value_in_range(const struct extern_desc * ext,__u64 v) is_kcfg_value_in_range() argument 3144 const struct btf_var_secinfo *v = btf_var_secinfos(t); bpf_object__sanitize_btf() local 7720 struct bpf_core_spec spec; fixup_log_failed_core_relo() local 11811 const char *spec; attach_kprobe_multi() local 11843 const char *spec; attach_kprobe_session() local [all...] |