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-only */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3)  * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) #include <linux/linkage.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) ENTRY_CFI(memcpy)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 	or	r3,r0,r1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 	asl_s	r3,r3,30
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 	mov_s	r5,r0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) 	brls.d	r2,r3,.Lcopy_bytewise
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 	sub.f	r3,r2,1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 	ld_s	r12,[r1,0]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 	asr.f	lp_count,r3,3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 	bbit0.d	r3,2,.Lnox4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 	bmsk_s	r2,r2,1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) 	st.ab	r12,[r5,4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 	ld.a	r12,[r1,4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) .Lnox4:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 	lppnz	.Lendloop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 	ld_s	r3,[r1,4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 	st.ab	r12,[r5,4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 	ld.a	r12,[r1,8]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 	st.ab	r3,[r5,4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) .Lendloop:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 	breq	r2,0,.Last_store
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 	ld	r3,[r5,0]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) #ifdef __LITTLE_ENDIAN__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	add3	r2,-1,r2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	; uses long immediate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	xor_s	r12,r12,r3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	bmsk	r12,r12,r2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)     xor_s	r12,r12,r3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) #else /* BIG ENDIAN */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	sub3	r2,31,r2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 	; uses long immediate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)         xor_s	r3,r3,r12
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)         bmsk	r3,r3,r2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)         xor_s	r12,r12,r3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) #endif /* ENDIAN */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) .Last_store:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 	j_s.d	[blink]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 	st	r12,[r5,0]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 	.balign	4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) .Lcopy_bytewise:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 	jcs	[blink]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 	ldb_s	r12,[r1,0]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 	lsr.f	lp_count,r3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 	bhs_s	.Lnox1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 	stb.ab	r12,[r5,1]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 	ldb.a	r12,[r1,1]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) .Lnox1:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 	lppnz	.Lendbloop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) 	ldb_s	r3,[r1,1]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) 	stb.ab	r12,[r5,1]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) 	ldb.a	r12,[r1,2]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 	stb.ab	r3,[r5,1]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) .Lendbloop:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 	j_s.d	[blink]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) 	stb	r12,[r5,0]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) END_CFI(memcpy)