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) /* n2-asm.S: Niagara2 RNG hypervisor call assembler.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4)  * Copyright (C) 2008 David S. Miller <davem@davemloft.net>
^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 <asm/hypervisor.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) #include "n2rng.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 	.text
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) ENTRY(sun4v_rng_get_diag_ctl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 	mov	HV_FAST_RNG_GET_DIAG_CTL, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 	retl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 	 nop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) ENDPROC(sun4v_rng_get_diag_ctl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) ENTRY(sun4v_rng_ctl_read_v1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 	mov	%o1, %o3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 	mov	%o2, %o4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 	mov	HV_FAST_RNG_CTL_READ, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 	stx	%o1, [%o3]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 	retl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 	 stx	%o2, [%o4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) ENDPROC(sun4v_rng_ctl_read_v1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) ENTRY(sun4v_rng_ctl_read_v2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	save	%sp, -192, %sp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	mov	%i0, %o0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	mov	%i1, %o1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	mov	HV_FAST_RNG_CTL_READ, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 	stx	%o1, [%i2]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	stx	%o2, [%i3]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 	stx	%o3, [%i4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 	stx	%o4, [%i5]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 	ret
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 	restore	%g0, %o0, %o0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) ENDPROC(sun4v_rng_ctl_read_v2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) ENTRY(sun4v_rng_ctl_write_v1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 	mov	%o3, %o4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 	mov	HV_FAST_RNG_CTL_WRITE, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 	retl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 	 stx	%o1, [%o4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) ENDPROC(sun4v_rng_ctl_write_v1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) ENTRY(sun4v_rng_ctl_write_v2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 	mov	HV_FAST_RNG_CTL_WRITE, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) 	retl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 	 nop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) ENDPROC(sun4v_rng_ctl_write_v2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) ENTRY(sun4v_rng_data_read_diag_v1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 	mov	%o2, %o4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) 	mov	HV_FAST_RNG_DATA_READ_DIAG, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) 	retl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) 	 stx	%o1, [%o4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) ENDPROC(sun4v_rng_data_read_diag_v1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) ENTRY(sun4v_rng_data_read_diag_v2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) 	mov	%o3, %o4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) 	mov	HV_FAST_RNG_DATA_READ_DIAG, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) 	retl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) 	 stx	%o1, [%o4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) ENDPROC(sun4v_rng_data_read_diag_v2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) ENTRY(sun4v_rng_data_read)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) 	mov	%o1, %o4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) 	mov	HV_FAST_RNG_DATA_READ, %o5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) 	ta	HV_FAST_TRAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) 	retl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) 	 stx	%o1, [%o4]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) ENDPROC(sun4v_rng_data_read)