android_kernel_xiaomi_sm8350/include/asm-arm
Catalin Marinas c98929c07a [ARM] 4582/2: Add support for the common VFP subarchitecture
This patch allows the VFP support code to run correctly on CPUs
compatible with the common VFP subarchitecture specification (Appendix
B in the ARM ARM v7-A and v7-R edition). It implements support for VFP
subarchitecture 2 while being backwards compatible with
subarchitecture 1.

On VFP subarchitecture 1, the arithmetic exceptions are asynchronous
(or imprecise as described in the old ARM ARM) unless the FPSCR.IXE
bit is 1. The exceptional instructions can be read from FPINST and
FPINST2 registers. With VFP subarchitecture 2, the arithmetic
exceptions can also be synchronous and marked by the FPEXC.DEX bit
(the FPEXC.EX bit is cleared). CPUs implementing the synchronous
arithmetic exceptions don't have the FPINST and FPINST2 registers and
accessing them would trigger and undefined exception.

Note that FPEXC.EX bit has an additional meaning on subarchitecture 1
- if it isn't set, there is no additional information in FPINST and
FPINST2 that needs to be saved at context switch or when lazy-loading
the VFP state of a different thread.

The patch also removes the clearing of the cumulative exception flags in
FPSCR when additional exceptions were raised. It is up to the user
application to clear these bits.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-01-26 14:41:28 +00:00
..
arch-aaec2000 Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
arch-at91 [ARM] 4650/1: AT91: New-style init of I2C, support for i2c-gpio 2007-11-26 19:40:47 +00:00
arch-cl7500 [ARM] Use new get_irqnr_preamble 2007-05-12 15:25:50 +01:00
arch-clps711x
arch-davinci [ARM] 4634/1: DaVinci GPIO header build fix 2007-10-31 15:21:52 +00:00
arch-ebsa110 [ARM] Use new get_irqnr_preamble 2007-05-12 15:25:50 +01:00
arch-ebsa285 [ARM] Use new get_irqnr_preamble 2007-05-12 15:25:50 +01:00
arch-ep93xx
arch-h720x
arch-imx imxfb: fast read flag and nonstandard field configurable 2007-10-16 09:43:21 -07:00
arch-integrator [ARM] Remove Integrator/CP SMP platform support 2007-05-16 15:35:26 +01:00
arch-iop13xx [ARM] 4495/1: iop: combined watchdog timer driver for iop3xx and iop13xx 2007-07-20 09:35:42 +01:00
arch-iop32x [ARM] 4476/1: EM7210/SS4000E support 2007-07-20 09:35:35 +01:00
arch-iop33x iop3xx: surface the iop3xx DMA and AAU units to the iop-adma driver 2007-07-13 08:06:19 -07:00
arch-ixp4xx define global BIT macro 2007-10-19 11:53:42 -07:00
arch-ixp23xx [ARM] 4680/1: parentheses around NR_IRQS definition 2007-11-29 20:56:57 +00:00
arch-ixp2000
arch-ks8695 [ARM] 4377/1: KS8695: GPIO driver 2007-07-12 11:12:34 +01:00
arch-l7200
arch-lh7a40x
arch-mxc [ARM] 4530/1: MXC: fix elf_hwcap compile breakage as in iop13xx 2007-07-28 20:52:55 +01:00
arch-netx [ARM] 4329/1: fix position of NETX_SYSTEM_REG 2007-05-03 20:22:49 +01:00
arch-ns9xxx [ARM] 4595/1: ns9xxx: define registers as void __iomem * instead of volatile u32 2007-10-12 23:43:41 +01:00
arch-omap [ARM] 4680/1: parentheses around NR_IRQS definition 2007-11-29 20:56:57 +00:00
arch-pnx4008
arch-pxa [ARM] pxa: silence warnings from cpu_is_xxx() macros 2008-01-10 12:33:54 +00:00
arch-realview [ARM] Use new get_irqnr_preamble 2007-05-12 15:25:50 +01:00
arch-rpc [ARM] 4564/1: Add tagged list support for Acorn RiscPC's uncompress code 2007-10-12 23:43:11 +01:00
arch-s3c2400 [ARM] 4522/1: S3C: split include/asm-arm/arch/memory.h 2007-07-22 17:06:04 +01:00
arch-s3c2410 spi: S3C2410: add bus number to SPI GPIO driver 2007-11-29 09:24:52 -08:00
arch-sa1100 [ARM] unbalanced parenthesis fix 2007-10-12 23:43:21 +01:00
arch-shark
arch-versatile [ARM] Use new get_irqnr_preamble 2007-05-12 15:25:50 +01:00
hardware [ARM] Fix iop3xx macro 2007-11-05 09:40:27 +00:00
mach [ARM] use __used attribute 2007-05-30 13:15:06 +01:00
plat-s3c [ARM] 4632/1: Fix a typo in include/asm-arm/plat-s3c/regs-nand.h 2007-10-31 15:21:33 +00:00
plat-s3c24xx [ARM] 4524/1: S3C: Move register out of include/asm-arm/arch-s3c2410 2007-07-22 17:06:30 +01:00
.gitignore
a.out.h arch: personality independent stack top 2007-07-19 10:04:45 -07:00
assembler.h
atomic.h atomic.h: atomic_add_unless as inline. Remove system.h atomic.h circular dependency 2007-05-08 11:15:20 -07:00
auxvec.h
bitops.h forbid asm/bitops.h direct inclusion 2007-10-19 11:53:41 -07:00
bug.h
bugs.h
byteorder.h
cache.h
cacheflush.h [ARM] 4554/1: replace consistent_sync() with flush_ioremap_region() 2007-08-23 12:31:31 +01:00
checksum.h
cnt32_to_63.h
cpu-multi32.h
cpu-single.h
cpu.h
cputime.h
current.h
delay.h
device.h
div64.h [NET]: div64_64 consolidate (rev3) 2007-04-25 22:23:33 -07:00
dma-mapping.h arm: sg fallout 2007-10-23 12:37:59 +02:00
dma.h
domain.h
dyntick.h
ecard.h [ARM] ecard: add ecardm_iomap() / ecardm_iounmap() 2007-05-11 17:19:02 +01:00
elf.h [ARM] 4496/1: elf_hwcap: fix up #include misplacement 2007-07-20 21:29:18 +01:00
emergency-restart.h
errno.h
fb.h fbdev: detect primary display device 2007-07-17 10:23:11 -07:00
fcntl.h
fiq.h
flat.h [ARM] nommu: fix breakage caused by f9720205d1 2007-10-31 15:21:42 +00:00
floppy.h cleanup floppy.h 2007-10-17 08:42:55 -07:00
fpstate.h
futex.h
glue.h [ARM] armv7: add support for ARMv7 cores. 2007-05-08 22:55:53 +01:00
gpio.h
hardirq.h
hardware.h
hw_irq.h
hwcap.h [ARM] 4473/2: Take the HWCAP definitions out of the elf.h file 2007-07-12 16:20:15 +01:00
ide.h ide: add CONFIG_IDE_ARCH_OBSOLETE_INIT 2007-10-20 00:32:32 +02:00
io.h endianness annotations in arm io.h 2007-10-14 12:41:52 -07:00
ioctl.h
ioctls.h [ARM] enable arbitary speed tty ioctls and split input/output speed 2007-05-28 23:07:34 +01:00
ipcbuf.h
irq_regs.h
irq.h
irqflags.h
Kbuild [ARM] 4473/2: Take the HWCAP definitions out of the elf.h file 2007-07-12 16:20:15 +01:00
kdebug.h move die notifier handling to common code 2007-05-08 11:15:04 -07:00
kexec.h [ARM] 4599/1: Preserve ATAG list for use with kexec (2.6.23) 2007-10-12 23:43:48 +01:00
kmap_types.h
leds.h
limits.h
linkage.h [ARM] VFP: fix section mismatch error 2007-06-10 12:22:20 +01:00
local.h
locks.h
mc146818rtc.h
memory.h
mman.h
mmu_context.h [ARM] ARMv6: add CPU_HAS_ASID configuration 2007-05-17 10:19:23 +01:00
mmu.h [ARM] ARMv6: add CPU_HAS_ASID configuration 2007-05-17 10:19:23 +01:00
mmzone.h
module.h
msgbuf.h
mtd-xip.h
mutex.h
namei.h
nwflash.h
page-nommu.h
page.h
param.h
parport.h
pci.h [ARM] 4577/1: ITE 8152 PCI bridge support 2007-10-15 18:53:59 +01:00
percpu.h
pgalloc.h
pgtable-hwdef.h
pgtable-nommu.h [ARM] 4531/1: remove is_in_rom() protptype 2007-08-04 22:13:43 +01:00
pgtable.h [ARM] 4644/2: fix flush_kern_tlb_range() in module space 2007-11-08 10:07:14 +00:00
poll.h Consolidate asm/poll.h 2007-05-11 08:29:34 -07:00
posix_types.h
proc-fns.h [ARM] armv7: add support for ARMv7 cores. 2007-05-08 22:55:53 +01:00
processor.h
procinfo.h
ptrace.h [ARM] 4474/1: Do not check the PSR_F_BIT in valid_user_regs 2007-07-12 16:20:52 +01:00
resource.h
rtc.h
scatterlist.h Add CONFIG_DEBUG_SG sg validation 2007-10-22 21:20:03 +02:00
sections.h
segment.h
semaphore-helper.h
semaphore.h kill DECLARE_MUTEX_LOCKED 2007-10-17 08:42:47 -07:00
sembuf.h
serial.h
setup.h [ARM] use __used attribute 2007-05-30 13:15:06 +01:00
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
sizes.h [ARM] 4372/1: Define byte sizes in asm-arm/sizes.h 2007-05-11 21:07:58 +01:00
smp.h
socket.h [NET]: Adding SO_TIMESTAMPNS / SCM_TIMESTAMPNS support 2007-04-25 22:24:21 -07:00
sockios.h [NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution 2007-04-25 22:24:04 -07:00
spinlock_types.h
spinlock.h
stat.h
statfs.h
string.h
suspend.h
system.h [ARM] pxa: silence warnings from cpu_is_xxx() macros 2008-01-10 12:33:54 +00:00
termbits.h [ARM] enable arbitary speed tty ioctls and split input/output speed 2007-05-28 23:07:34 +01:00
termios.h [ARM] enable arbitary speed tty ioctls and split input/output speed 2007-05-28 23:07:34 +01:00
therm.h
thread_info.h remove unused TIF_NOTIFY_RESUME flag 2007-07-31 15:39:38 -07:00
thread_notify.h
timex.h
tlb.h
tlbflush.h remove unused flush_tlb_pgtables 2007-10-19 11:53:34 -07:00
topology.h
traps.h
types.h remove strict ansi check from __u64 in asm/types.h 2007-10-17 08:42:53 -07:00
uaccess.h
ucontext.h
unaligned.h arm unaligned.h annotations 2007-07-26 11:11:57 -07:00
unistd.h [ARM] Add fallocate syscall entry 2007-10-12 23:43:31 +01:00
user.h
vfp.h [ARM] 4582/2: Add support for the common VFP subarchitecture 2008-01-26 14:41:28 +00:00
vfpmacros.h
vga.h
xor.h