Home
last modified time | relevance | path

Searched refs:fcsr (Results 1 – 20 of 20) sorted by relevance

/linux-6.1.9/arch/loongarch/kernel/
Dsignal.c86 uint32_t __user *fcsr = &ctx->fcsr; in copy_fpu_to_sigcontext() local
94 err |= __put_user(current->thread.fpu.fcsr, fcsr); in copy_fpu_to_sigcontext()
106 uint32_t __user *fcsr = &ctx->fcsr; in copy_fpu_from_sigcontext() local
113 err |= __get_user(current->thread.fpu.fcsr, fcsr); in copy_fpu_from_sigcontext()
125 uint32_t __user *fcsr = &ctx->fcsr; in save_hw_fpu_context() local
127 return _save_fp_context(regs, fcc, fcsr); in save_hw_fpu_context()
134 uint32_t __user *fcsr = &ctx->fcsr; in restore_hw_fpu_context() local
136 return _restore_fp_context(regs, fcc, fcsr); in restore_hw_fpu_context()
139 static int fcsr_pending(unsigned int __user *fcsr) in fcsr_pending() argument
144 err = __get_user(csr, fcsr); in fcsr_pending()
[all …]
Dtraps.c280 void force_fcsr_sig(unsigned long fcsr, void __user *fault_addr, in force_fcsr_sig() argument
285 if (fcsr & FPU_CSR_INV_X) in force_fcsr_sig()
287 else if (fcsr & FPU_CSR_DIV_X) in force_fcsr_sig()
289 else if (fcsr & FPU_CSR_OVF_X) in force_fcsr_sig()
291 else if (fcsr & FPU_CSR_UDF_X) in force_fcsr_sig()
293 else if (fcsr & FPU_CSR_INE_X) in force_fcsr_sig()
299 int process_fpemu_return(int sig, void __user *fault_addr, unsigned long fcsr) in process_fpemu_return() argument
308 force_fcsr_sig(fcsr, fault_addr, current); in process_fpemu_return()
334 asmlinkage void noinstr do_fpe(struct pt_regs *regs, unsigned long fcsr) in do_fpe() argument
345 write_fcsr(LOONGARCH_FCSR0, fcsr & ~mask_fcsr_x(fcsr)); in do_fpe()
[all …]
Dcpu-probe.c32 unsigned long sr, mask, fcsr, fcsr0, fcsr1; in cpu_set_fpu_fcsr_mask() local
34 fcsr = c->fpu_csr0; in cpu_set_fpu_fcsr_mask()
40 fcsr0 = fcsr & mask; in cpu_set_fpu_fcsr_mask()
44 fcsr1 = fcsr | ~mask; in cpu_set_fpu_fcsr_mask()
48 write_fcsr(LOONGARCH_FCSR0, fcsr); in cpu_set_fpu_fcsr_mask()
Delf.c29 current->thread.fpu.fcsr = boot_cpu_data.fpu_csr0; in loongarch_set_personality_fcsr()
Dptrace.c152 r = membuf_write(&to, &target->thread.fpu.fcsr, sizeof(target->thread.fpu.fcsr)); in fpr_get()
216 &target->thread.fpu.fcsr, fcsr_start, in fpr_set()
Dgenex.S83 BUILD_HANDLER fpe fpe fcsr
Dasm-offsets.c169 OFFSET(THREAD_FCSR, loongarch_fpu, fcsr); in output_thread_fpu_defines()
/linux-6.1.9/arch/mips/kernel/
Dfpu-probe.c51 unsigned long sr, mask, fcsr, fcsr0, fcsr1; in cpu_set_fpu_fcsr_mask() local
53 fcsr = c->fpu_csr31; in cpu_set_fpu_fcsr_mask()
59 fcsr0 = fcsr & mask; in cpu_set_fpu_fcsr_mask()
63 fcsr1 = fcsr | ~mask; in cpu_set_fpu_fcsr_mask()
67 write_32bit_cp1_register(CP1_STATUS, fcsr); in cpu_set_fpu_fcsr_mask()
84 unsigned long sr, fir, fcsr, fcsr0, fcsr1; in cpu_set_fpu_2008() local
91 fcsr = read_32bit_cp1_register(CP1_STATUS); in cpu_set_fpu_2008()
98 fcsr0 = fcsr & ~(FPU_CSR_ABS2008 | FPU_CSR_NAN2008 | in cpu_set_fpu_2008()
103 fcsr1 = fcsr | FPU_CSR_ABS2008 | FPU_CSR_NAN2008; in cpu_set_fpu_2008()
107 write_32bit_cp1_register(CP1_STATUS, fcsr); in cpu_set_fpu_2008()
[all …]
Dptrace.c589 unsigned int fcsr; member
621 .fcsr = target->thread.fpu.fcr31, in msa_get()
678 target->thread.fpu.fcr31 = ctrl_regs.fcsr & ~FPU_CSR_ALL_X; in msa_set()
/linux-6.1.9/arch/loongarch/include/asm/
Dfpu.h32 static inline unsigned long mask_fcsr_x(unsigned long fcsr) in mask_fcsr_x() argument
34 return fcsr & ((fcsr & FPU_CSR_ALL_E) << in mask_fcsr_x()
98 unsigned int fcsr = current->thread.fpu.fcsr; in init_fpu() local
101 _init_fpu(fcsr); in init_fpu()
Dprocessor.h82 unsigned int fcsr; member
171 .fcsr = 0, \
/linux-6.1.9/arch/riscv/kvm/
Dvcpu_fp.c93 if (reg_num == KVM_REG_RISCV_FP_F_REG(fcsr)) in kvm_riscv_vcpu_get_reg_fp()
94 reg_val = &cntx->fp.f.fcsr; in kvm_riscv_vcpu_get_reg_fp()
102 if (reg_num == KVM_REG_RISCV_FP_D_REG(fcsr)) { in kvm_riscv_vcpu_get_reg_fp()
105 reg_val = &cntx->fp.d.fcsr; in kvm_riscv_vcpu_get_reg_fp()
138 if (reg_num == KVM_REG_RISCV_FP_F_REG(fcsr)) in kvm_riscv_vcpu_set_reg_fp()
139 reg_val = &cntx->fp.f.fcsr; in kvm_riscv_vcpu_set_reg_fp()
147 if (reg_num == KVM_REG_RISCV_FP_D_REG(fcsr)) { in kvm_riscv_vcpu_set_reg_fp()
150 reg_val = &cntx->fp.d.fcsr; in kvm_riscv_vcpu_set_reg_fp()
/linux-6.1.9/arch/riscv/include/uapi/asm/
Dptrace.h56 __u32 fcsr; member
61 __u32 fcsr; member
66 __u32 fcsr; member
/linux-6.1.9/arch/riscv/kernel/
Dptrace.c61 membuf_write(&to, fstate, offsetof(struct __riscv_d_ext_state, fcsr)); in riscv_fpr_get()
62 membuf_store(&to, fstate->fcsr); in riscv_fpr_get()
75 offsetof(struct __riscv_d_ext_state, fcsr)); in riscv_fpr_set()
78 offsetof(struct __riscv_d_ext_state, fcsr) + in riscv_fpr_set()
79 sizeof(fstate->fcsr)); in riscv_fpr_set()
Dasm-offsets.c73 OFFSET(TASK_THREAD_FCSR, task_struct, thread.fstate.fcsr); in asm_offsets()
235 OFFSET(KVM_ARCH_FP_F_FCSR, kvm_cpu_context, fp.f.fcsr); in asm_offsets()
271 OFFSET(KVM_ARCH_FP_D_FCSR, kvm_cpu_context, fp.d.fcsr); in asm_offsets()
464 offsetof(struct task_struct, thread.fstate.fcsr) in asm_offsets()
Dhead.S431 csrw fcsr, 0
/linux-6.1.9/arch/loongarch/include/uapi/asm/
Dptrace.h46 uint32_t fcsr; member
Dsigcontext.h41 __u32 fcsr; member
/linux-6.1.9/drivers/input/touchscreen/
Ducb1400_ts.c319 u16 fcsr; in ucb1400_ts_probe() local
356 fcsr = ucb1400_reg_read(ucb->ac97, UCB_FCSR); in ucb1400_ts_probe()
357 ucb1400_reg_write(ucb->ac97, UCB_FCSR, fcsr | UCB_FCSR_AVE); in ucb1400_ts_probe()
/linux-6.1.9/Documentation/virt/kvm/
Dapi.rst2841 0x8020 0000 0500 0020 fcsr Floating point control and status register
2847 0x8020 0000 06 <index into the __riscv_d_ext_state struct:24> (fcsr)
2848 0x8030 0000 06 <index into the __riscv_d_ext_state struct:24> (non-fcsr)
2858 0x8020 0000 0600 0020 fcsr Floating point control and status register