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) 2012 ARM Ltd.
^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) #include <linux/const.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) #include <asm/assembler.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) #include <asm/page.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)  * Clear page @dest
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)  * Parameters:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)  *	x0 - dest
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) SYM_FUNC_START_PI(clear_page)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) 	mrs	x1, dczid_el0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 	tbnz	x1, #4, 2f	/* Branch if DC ZVA is prohibited */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 	and	w1, w1, #0xf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 	mov	x2, #4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 	lsl	x1, x2, x1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 1:	dc	zva, x0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 	add	x0, x0, x1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 	tst	x0, #(PAGE_SIZE - 1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 	b.ne	1b
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 	ret
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 2:	stnp	xzr, xzr, [x0]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	stnp	xzr, xzr, [x0, #16]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	stnp	xzr, xzr, [x0, #32]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	stnp	xzr, xzr, [x0, #48]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 	add	x0, x0, #64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 	tst	x0, #(PAGE_SIZE - 1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	b.ne	2b
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 	ret
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) SYM_FUNC_END_PI(clear_page)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) EXPORT_SYMBOL(clear_page)