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) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3)  * Renesas SCIF(A) debugging macro include header
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5)  * Based on r8a7790.S
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7)  * Copyright (C) 2012-2013 Renesas Electronics Corporation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8)  * Copyright (C) 1994-1999 Russell King
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define SCIF_PHYS	CONFIG_DEBUG_UART_PHYS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #define SCIF_VIRT	((SCIF_PHYS & 0x00ffffff) | 0xfd000000)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) #if defined(CONFIG_DEBUG_R7S9210_SCIF2) || defined(CONFIG_DEBUG_R7S9210_SCIF4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) /* RZ/A2 SCIFA */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #define FTDR		0x06
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) #define FSR		0x08
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) #elif CONFIG_DEBUG_UART_PHYS < 0xe6e00000
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) /* SCIFA */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) #define FTDR		0x20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) #define FSR		0x14
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) /* SCIF */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #define FTDR		0x0c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) #define FSR		0x10
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) #define TDFE	(1 << 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) #define TEND	(1 << 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	.macro	addruart, rp, rv, tmp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	ldr	\rp, =SCIF_PHYS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	ldr	\rv, =SCIF_VIRT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 	.endm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	.macro	waituartcts,rd,rx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 	.endm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 	.macro	waituarttxrdy, rd, rx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 1001:	ldrh	\rd, [\rx, #FSR]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 	tst	\rd, #TDFE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 	beq	1001b
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 	.endm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 	.macro	senduart, rd, rx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 	strb	\rd, [\rx, #FTDR]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 	ldrh	\rd, [\rx, #FSR]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 	bic	\rd, \rd, #TEND
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 	strh	\rd, [\rx, #FSR]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 	.endm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 	.macro	busyuart, rd, rx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 1001:	ldrh	\rd, [\rx, #FSR]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) 	tst	\rd, #TEND
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 	beq	1001b
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) 	.endm