Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) #ifndef _OPCODES_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) #define _OPCODES_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) #define SPARC_CR_OPCODE_PRIORITY	300
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) #define F3F(x,y,z)	(((x)<<30)|((y)<<19)|((z)<<5))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) #define FPD_ENCODE(x)	(((x) >> 5) | ((x) & ~(0x20)))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) #define RS1(x)		(FPD_ENCODE(x) << 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) #define RS2(x)		(FPD_ENCODE(x) <<  0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) #define RS3(x)		(FPD_ENCODE(x) <<  9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) #define RD(x)		(FPD_ENCODE(x) << 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) #define IMM5_0(x)	((x)           <<  0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) #define IMM5_9(x)	((x)           <<  9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) #define CRC32C(a,b,c)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 	.word		(F3F(2,0x36,0x147)|RS1(a)|RS2(b)|RD(c));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) #define MD5		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 	.word	0x81b02800;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) #define SHA1		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 	.word	0x81b02820;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) #define SHA256		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 	.word	0x81b02840;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) #define SHA512		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 	.word	0x81b02860;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) #define AES_EROUND01(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 	.word	(F3F(2, 0x19, 0)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) #define AES_EROUND23(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 	.word	(F3F(2, 0x19, 1)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) #define AES_DROUND01(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) 	.word	(F3F(2, 0x19, 2)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) #define AES_DROUND23(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 	.word	(F3F(2, 0x19, 3)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) #define AES_EROUND01_L(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 	.word	(F3F(2, 0x19, 4)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) #define AES_EROUND23_L(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 	.word	(F3F(2, 0x19, 5)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) #define AES_DROUND01_L(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) 	.word	(F3F(2, 0x19, 6)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) #define AES_DROUND23_L(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 	.word	(F3F(2, 0x19, 7)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) #define AES_KEXPAND1(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 	.word	(F3F(2, 0x19, 8)|RS1(a)|RS2(b)|IMM5_9(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) #define AES_KEXPAND0(a,b,c)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) 	.word	(F3F(2, 0x36, 0x130)|RS1(a)|RS2(b)|RD(c));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) #define AES_KEXPAND2(a,b,c)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 	.word	(F3F(2, 0x36, 0x131)|RS1(a)|RS2(b)|RD(c));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) #define DES_IP(a,b)		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 	.word		(F3F(2, 0x36, 0x134)|RS1(a)|RD(b));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) #define DES_IIP(a,b)		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 	.word		(F3F(2, 0x36, 0x135)|RS1(a)|RD(b));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) #define DES_KEXPAND(a,b,c)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 	.word		(F3F(2, 0x36, 0x136)|RS1(a)|IMM5_0(b)|RD(c));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) #define DES_ROUND(a,b,c,d)	\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	.word		(F3F(2, 0x19, 0x009)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) #define CAMELLIA_F(a,b,c,d)		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 	.word		(F3F(2, 0x19, 0x00c)|RS1(a)|RS2(b)|RS3(c)|RD(d));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) #define CAMELLIA_FL(a,b,c)		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 	.word		(F3F(2, 0x36, 0x13c)|RS1(a)|RS2(b)|RD(c));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) #define CAMELLIA_FLI(a,b,c)		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 	.word		(F3F(2, 0x36, 0x13d)|RS1(a)|RS2(b)|RD(c));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) #define MOVDTOX_F0_O4		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 	.word	0x99b02200
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) #define MOVDTOX_F2_O5		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 	.word	0x9bb02202
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) #define MOVXTOD_G1_F60 		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 	.word	0xbbb02301
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) #define MOVXTOD_G1_F62 		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 	.word	0xbfb02301
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) #define MOVXTOD_G3_F4		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 	.word	0x89b02303;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) #define MOVXTOD_G7_F6		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) 	.word	0x8db02307;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) #define MOVXTOD_G3_F0		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 	.word	0x81b02303;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) #define MOVXTOD_G7_F2		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 	.word	0x85b02307;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) #define MOVXTOD_O0_F0		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 	.word	0x81b02308;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) #define MOVXTOD_O5_F0		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 	.word	0x81b0230d;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) #define MOVXTOD_O5_F2		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 	.word	0x85b0230d;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) #define MOVXTOD_O5_F4		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 	.word	0x89b0230d;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) #define MOVXTOD_O5_F6		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 	.word	0x8db0230d;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) #define MOVXTOD_G3_F60		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 	.word	0xbbb02303;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) #define MOVXTOD_G7_F62		\
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) 	.word	0xbfb02307;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) #endif /* _OPCODES_H */