Searched refs:VFP (Results 1 - 37 of 37) sorted by relevance

/linux-4.1.27/arch/arm/include/asm/
H A Dvfpmacros.h4 * Assembler-only file containing VFP macros and register definitions.
10 @ Macros to allow building with old toolkits (with no VFP support)
19 @ read all the working registers back into the VFP
34 VFPFMRX \tmp, MVFR0 @ Media and VFP Feature Register 0
43 @ write all the working registers out of the VFP
58 VFPFMRX \tmp, MVFR0 @ Media and VFP Feature Register 0
H A Dfpstate.h18 * VFP storage area has:
23 * FPEXC will always be non-zero once the VFP has been used in this process.
38 * VFP implementation specific state
H A Dvfp.h4 * VFP register definitions.
5 * First, the standard VFP set.
H A Duser.h85 * User specific VFP registers. If only VFPv2 is present, registers 16 to 31
94 * VFP exception registers exposed to user space during signal delivery.
95 * Fields not relavant to the current VFP architecture are ignored.
H A Dkvm_host.h117 /* Floating point registers (VFP and Advanced SIMD/NEON) */
/linux-4.1.27/arch/arm/vfp/
H A Dvfpmodule.c45 * Used in startup: set to non-zero if VFP checks fail
46 * After startup, holds VFP architecture
52 * owns the context held in the VFP hardware, or NULL if the hardware
55 * For UP, this is sufficient to tell which thread owns the VFP context.
75 * Force a reload of the VFP context from the thread structure. We do
76 * this by ensuring that access to the VFP hardware is disabled, and
91 * Per-thread VFP initialization.
99 * Disable VFP to ensure we initialize it first. We must ensure vfp_thread_flush()
104 * state saving should access to the VFP be enabled at this point. vfp_thread_flush()
123 /* release case: Per-thread VFP cleanup. */ vfp_thread_exit()
182 * On SMP, if VFP is enabled, save the old state in vfp_notifier()
191 * Always disable VFP so we can lazily save/restore the vfp_notifier()
245 pr_err("VFP: Error: %s\n", reason); vfp_panic()
246 pr_err("VFP: EXC 0x%08x SCR 0x%08x INST 0x%08x\n", vfp_panic()
249 pr_err("VFP: s%2u: 0x%08x s%2u: 0x%08x\n", vfp_panic()
260 pr_debug("VFP: raising exceptions %08x\n", exceptions); vfp_raise_exceptions()
298 * Emulate a VFP instruction.
304 pr_debug("VFP: emulate: INST=0x%08x SCR=0x%08x\n", inst, fpscr); vfp_emulate_instruction()
340 pr_debug("VFP: bounce: trigger %08x fpexc %08x\n", trigger, fpexc); VFP_bounce()
348 * 1 x 1 - sychronous on VFP subarch 1 and asynchronous on later VFP_bounce()
352 * Clear various bits and enable access to the VFP so we can VFP_bounce()
361 * Check for the special VFP subarch 1 and FPSCR.IXE bit case VFP_bounce()
383 * unallocated VFP instruction but with FPSCR.IXE set and not VFP_bounce()
384 * on VFP subarch 1. VFP_bounce()
443 * Enable full access to VFP (cp10 and cp11) vfp_enable()
513 * Ensure that the VFP state stored in 'thread->vfpstate' is up to date vfp_pm_init()
524 * Save the last VFP state on this CPU. vfp_sync_hwstate()
534 /* Ensure that the thread reloads the hardware VFP state on the next use. */ vfp_flush_hwstate()
545 * Save the current VFP state into the provided structures and prepare
579 /* Ensure that VFP is disabled. */ vfp_preserve_user_clear_hwstate()
590 /* Sanitise and restore the current VFP state from the provided structures. */ vfp_restore_user_hwstate()
599 /* Disable VFP to avoid corrupting the new thread state. */ vfp_restore_user_hwstate()
618 /* Ensure the VFP is enabled. */ vfp_restore_user_hwstate()
632 * VFP hardware can lose all context when a CPU goes offline.
635 * a CPU has been killed, indicating that the VFP hardware doesn't contain
636 * a threads VFP state. When a CPU starts up, we re-enable access to the
637 * VFP hardware.
656 * while running in kernel mode. If the NEON/VFP unit was enabled at the vfp_kmode_exception()
657 * time, it means a VFP instruction has been issued that requires vfp_kmode_exception()
660 * If the NEON/VFP unit was disabled, and the location pointed to below vfp_kmode_exception()
695 * Save the userland NEON/VFP state. Under UP, kernel_neon_begin()
710 /* Disable the NEON/VFP unit. */ kernel_neon_end()
719 * VFP support code initialisation.
730 * First check that there is a VFP that we can use. vfp_init()
740 pr_info("VFP support v0.3: "); vfp_init()
796 * We detected VFP, and the support code is vfp_init()
797 * in place; report VFP support to userspace. vfp_init()
H A Dentry.S18 @ VFP entry point.
32 ldr pc, [r4] @ call VFP entry point
44 @ This code is called if the VFP does not exist. It needs to flag the
45 @ failure to the VFP initialisation code.
H A Dvfphw.S33 1: .ascii KERN_DEBUG "VFP: \str\n"
48 1: .ascii KERN_DEBUG "VFP: \str\n"
65 1: .ascii KERN_DEBUG "VFP: \str\n"
72 @ VFP hardware support entry point.
89 VFPFMRX r1, FPEXC @ Is the VFP enabled?
92 bne look_for_VFP_exceptions @ VFP is already enabled
105 @ On UP, we lazily save the VFP context. As a different
106 @ thread wants ownership of the VFP hardware, save the old
109 VFPFMXR FPEXC, r5 @ enable VFP, disable any pending
146 @ We're loading this threads state into the VFP hardware. Update
147 @ the CPU number which contains the most up to date VFP context.
150 VFPFMXR FPEXC, r5 @ enable VFP, disable any pending
157 @ Load the saved state back into the VFP
172 @ The context stored in the VFP hardware is up to date with this thread
193 @ On some implementations of the VFP subarch 1, setting FPSCR.IXE
207 @ not recognised by VFP
209 DBGSTR "not VFP"
229 @ Save the current VFP state
232 DBGSTR1 "save VFP state %p", r0
H A Dvfpsingle.c50 pr_debug("VFP: %s: sign=%d exponent=%d significand=%08x\n", vfp_single_dump()
145 pr_debug("VFP: rounding increment = 0x%08x\n", incr); __vfp_single_normaliseround()
201 pr_debug("VFP: %s: d(s%d)=%08x exceptions=%08x\n", func, __vfp_single_normaliseround()
293 pr_warn("VFP: estimate_sqrt: invalid significand\n"); vfp_estimate_sqrt_significand()
383 pr_debug("VFP: term=%016llx rem=%016llx\n", term, rem); vfp_single_fsqrt()
615 pr_debug("VFP: ftoui: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions); vfp_single_ftoui()
694 pr_debug("VFP: ftosi: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions); vfp_single_ftosi()
778 pr_info("VFP: bad FP values in %s\n", __func__); vfp_single_add()
849 pr_debug("VFP: swapping M <-> N\n"); vfp_single_multiply()
902 pr_debug("VFP: s%u = %08x\n", sn, v); vfp_single_multiply_accumulate()
916 pr_debug("VFP: s%u = %08x\n", sd, v); vfp_single_multiply_accumulate()
973 pr_debug("VFP: s%u = %08x\n", sn, n); vfp_single_fmul()
996 pr_debug("VFP: s%u = %08x\n", sn, n); vfp_single_fnmul()
1020 pr_debug("VFP: s%u = %08x\n", sn, n); vfp_single_fadd()
1059 pr_debug("VFP: s%u = %08x\n", sn, n); vfp_single_fdiv()
1206 pr_debug("VFP: vecstride=%u veclen=%u\n", vecstride, vfp_single_cpdo()
1219 pr_debug("VFP: itr%d (%c%u) = op[%u] (s%u=%08x)\n", vfp_single_cpdo()
1223 pr_debug("VFP: itr%d (%c%u) = (s%u) op[%u] (s%u=%08x)\n", vfp_single_cpdo()
1228 pr_debug("VFP: itr%d: exceptions=%08x\n", vfp_single_cpdo()
H A Dvfpinstr.h11 * VFP instruction masks.
H A Dvfpdouble.c50 pr_debug("VFP: %s: sign=%d exponent=%d significand=%016llx\n", vfp_double_dump()
140 pr_debug("VFP: rounding increment = 0x%08llx\n", incr); vfp_double_normaliseround()
195 pr_debug("VFP: %s: d(d%d)=%016llx exceptions=%08x\n", func, vfp_double_normaliseround()
573 pr_debug("VFP: ftoui: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions); vfp_double_ftoui()
648 pr_debug("VFP: ftosi: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions); vfp_double_ftosi()
733 pr_info("VFP: bad FP values in %s\n", __func__); vfp_double_add()
805 pr_debug("VFP: swapping M <-> N\n"); vfp_double_multiply()
1167 pr_debug("VFP: vecstride=%u veclen=%u\n", vecstride, vfp_double_cpdo()
1179 pr_debug("VFP: itr%d (%c%u) = op[%u] (d%u)\n", vfp_double_cpdo()
1183 pr_debug("VFP: itr%d (%c%u) = (d%u) op[%u] (d%u)\n", vfp_double_cpdo()
1188 pr_debug("VFP: itr%d: exceptions=%08x\n", vfp_double_cpdo()
/linux-4.1.27/arch/arm/include/uapi/asm/
H A Dhwcap.h26 #define HWCAP_VFPD32 (1 << 19) /* set if VFP has 32 regs (not 16) */
H A Dptrace.h149 * The size of the user-visible VFP state as seen by PTRACE_GET/SETVFPREGS
H A Dkvm.h157 /* VFP registers: we could overload CP10 like ARM does, but that's ugly. */
/linux-4.1.27/kernel/
H A Dcpu_pm.c91 * CPU before cpu_pm_exit is called. Notified drivers can include VFP
123 * Notified drivers can include VFP co-processor, interrupt controller
149 * domain. Notified drivers can include VFP co-processor, interrupt controller
185 * domain. Notified drivers can include VFP co-processor, interrupt controller
/linux-4.1.27/arch/arm/kernel/
H A Delf.c33 /* VFP requires the supporting code */ elf_check_arch()
H A Dptrace.c644 * VFP register get/set implementations.
647 * 16 or 32 real VFP registers (d0-d15 or d0-31)
652 * 16 or 0 fake VFP registers (d16-d31 or empty)
698 * For vfp_set() a read-modify-write is done on the VFP registers,
775 * Pretend that the VFP regs are word-sized, since the FPSCR is
H A Dentry-armv.S608 b do_vfp @ let VFP handler handle this
649 W(b) do_vfp @ CP#10 (VFP)
650 W(b) do_vfp @ CP#11 (VFP)
652 ret.w lr @ CP#10 (VFP)
653 ret.w lr @ CP#11 (VFP)
H A Dperf_event_v7.c1153 * N = prefix, 1 for Krait CPU (PMRESRn), 2 for Venum VFP (VPMRESR)
1543 * N = prefix, 1 for Scorpion CPU (LPMn/L2LPM), 2 for Venum VFP (VLPM)
/linux-4.1.27/lib/raid6/
H A Dneon.c28 * and we have to make sure that we never use *any* NEON/VFP instructions
/linux-4.1.27/arch/arm/mach-omap2/
H A Dcpuidle44xx.c117 * VFP and per CPU interrupt context is saved. omap_enter_idle_coupled()
159 * VFP and per CPU IRQ context. omap_enter_idle_coupled()
H A Dcpuidle34xx.c128 * VFP context is saved. omap3_enter_idle()
138 * VFP context. omap3_enter_idle()
/linux-4.1.27/include/video/
H A Dkyro.h25 u32 VFP; /* Ver Front Porch */ member in struct:kyrofb_info
H A Dexynos_mipi_dsim.h101 * transmission is allowed after Stable VFP period.
/linux-4.1.27/arch/arm64/include/asm/
H A Dfpsimd.h60 * The VFP state has 32x64-bit registers and a single 32-bit
/linux-4.1.27/arch/arm/kvm/
H A Dinterrupts_head.S21 @ Make sure VFP is enabled so we can touch the registers.
26 tst r2, #FPEXC_EX @ Check for VFP Subarchitecture
36 VFPFSTMIA \vfp_base, r6 @ Save VFP registers
42 VFPFLDMIA \vfp_base, r6 @ Load VFP registers
46 tst r2, #FPEXC_EX @ Check for VFP Subarchitecture
598 * VFP wasn't already enabled (always executed on vmtrap).
599 * If a label is specified with vmexit, it is branched to if VFP wasn't
H A Dinterrupts.S176 @ Switch VFP/NEON hardware state to the host's
473 * If VFPv3 support is not available, then we will not switch the VFP
483 @ NEON/VFP used. Turn on VFP access.
486 @ Switch VFP/NEON hardware state to the guest's
/linux-4.1.27/arch/arm/vdso/
H A Dvdsomunge.c25 * 6.4.1 VFP and Base Standard Compatibility
27 * Code compiled for the VFP calling standard is compatible with
/linux-4.1.27/drivers/video/fbdev/kyro/
H A Dfbdev.c464 var->lower_margin = par->VFP; kyrofb_check_var()
514 par->VFP = info->var.lower_margin; kyrofb_set_par()
517 par->VTot = par->YRES + par->VBP + par->VST + par->VFP; kyrofb_set_par()
/linux-4.1.27/include/uapi/linux/
H A Delf.h396 #define NT_ARM_VFP 0x400 /* ARM VFP/NEON registers */
/linux-4.1.27/drivers/video/fbdev/omap2/dss/
H A Dapply.c54 * VFP or lcd/digit_enable
524 * 1 - initial iteration, dirty = true (between VFP and VSYNC) dss_mgr_wait_for_go()
601 * 1 - initial iteration, dirty = true (between VFP and VSYNC) dss_mgr_wait_for_go_ovl()
H A Ddsi.c3734 DSSDBG("VBP: %d, VFP: %d, VSA: %d, VACT: %d lines\n", vbp, vfp, dsi_proto_timings()
3745 r = FLD_MOD(r, vfp, 15, 8); /* VFP */ dsi_proto_timings()
/linux-4.1.27/arch/arm/common/
H A Dmcpm_entry.c319 * in case the CPU init code path resets the VFP or similar. mcpm_loopback()
/linux-4.1.27/arch/arm64/kernel/
H A Dsignal32.c214 * VFP save/restore code.
H A Dptrace.c793 * The VFP registers are packed into the fpsimd_state, so they all sit compat_vfp_get()
/linux-4.1.27/drivers/gpu/drm/gma500/
H A Dpsb_intel_reg.h1203 * defined as VSYNC + VBP + VACT + VFP.The first scanline is defined as
/linux-4.1.27/arch/arm64/kvm/
H A Dsys_regs.c44 * easy to merge, but that would be an ABI breakage -- again. VFP

Completed in 1144 milliseconds