Merge tag 'usb-5.11-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
[linux/fpc-iii.git] / arch / arm / kernel / iwmmxt.h
blobfb627286f5bb9691f6b5cda2823ffc15a544dbe7
1 /* SPDX-License-Identifier: GPL-2.0 */
3 #ifndef __IWMMXT_H__
4 #define __IWMMXT_H__
6 .irp b, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
7 .set .LwR\b, \b
8 .set .Lr\b, \b
9 .endr
11 .set .LwCSSF, 0x2
12 .set .LwCASF, 0x3
13 .set .LwCGR0, 0x8
14 .set .LwCGR1, 0x9
15 .set .LwCGR2, 0xa
16 .set .LwCGR3, 0xb
18 .macro wldrd, reg:req, base:req, offset:req
19 .inst 0xedd00100 | (.L\reg << 12) | (.L\base << 16) | (\offset >> 2)
20 .endm
22 .macro wldrw, reg:req, base:req, offset:req
23 .inst 0xfd900100 | (.L\reg << 12) | (.L\base << 16) | (\offset >> 2)
24 .endm
26 .macro wstrd, reg:req, base:req, offset:req
27 .inst 0xedc00100 | (.L\reg << 12) | (.L\base << 16) | (\offset >> 2)
28 .endm
30 .macro wstrw, reg:req, base:req, offset:req
31 .inst 0xfd800100 | (.L\reg << 12) | (.L\base << 16) | (\offset >> 2)
32 .endm
34 #ifdef __clang__
36 #define wCon c1
38 .macro tmrc, dest:req, control:req
39 mrc p1, 0, \dest, \control, c0, 0
40 .endm
42 .macro tmcr, control:req, src:req
43 mcr p1, 0, \src, \control, c0, 0
44 .endm
45 #endif
47 #endif