Lines Matching +full:x +full:- +full:rp

1 /* SPDX-License-Identifier: GPL-2.0-only */
10 #define REG_PHYS_ADDR(x) ((x) + REG_PHYS_BASE) argument
11 #define REG_PHYS_ADDR_V7(x) ((x) + REG_PHYS_BASE_V7) argument
36 #define checkuart(rp, rv, family_id, family) \ argument
38 ldr rp, =family_id ; \
40 cmp rp, rv ; \
42 ldreq rp, =UARTA_##family ; \
46 .macro addruart, rp, rv, tmp
47 adr \rp, 99f @ actual addr of 99f
48 ldr \rv, [\rp] @ linked addr is stored there
49 sub \rv, \rv, \rp @ offset between the two
50 ldr \rp, [\rp, #4] @ linked brcmstb_uart_config
51 sub \tmp, \rp, \rv @ actual brcmstb_uart_config
52 ldr \rp, [\tmp] @ Load brcmstb_uart_config
53 cmp \rp, #1 @ needs initialization?
60 ldr \rp, =ARM_CPU_PART_MASK
61 and \rv, \rv, \rp
62 ldr \rp, =ARM_CPU_PART_BRAHMA_B53 @ check for B53 CPU
63 cmp \rv, \rp
69 ldreq \rp, =SUN_TOP_CTRL_BASE_V7
72 10: ldrne \rp, =SUN_TOP_CTRL_BASE @ load SUN_TOP_CTRL PA
73 ldr \rv, [\rp, #0] @ get register contents
78 20: checkuart(\rp, \rv, 0x33900000, 3390)
79 21: checkuart(\rp, \rv, 0x07211600, 72116)
80 22: checkuart(\rp, \rv, 0x72160000, 7216)
81 23: checkuart(\rp, \rv, 0x07216400, 72164)
82 24: checkuart(\rp, \rv, 0x07216500, 72165)
83 25: checkuart(\rp, \rv, 0x72500000, 7250)
84 26: checkuart(\rp, \rv, 0x72550000, 7255)
85 27: checkuart(\rp, \rv, 0x72600000, 7260)
86 28: checkuart(\rp, \rv, 0x72680000, 7268)
87 29: checkuart(\rp, \rv, 0x72710000, 7271)
88 30: checkuart(\rp, \rv, 0x72780000, 7278)
89 31: checkuart(\rp, \rv, 0x73640000, 7364)
90 32: checkuart(\rp, \rv, 0x73660000, 7366)
91 33: checkuart(\rp, \rv, 0x07437100, 74371)
92 34: checkuart(\rp, \rv, 0x74390000, 7439)
93 35: checkuart(\rp, \rv, 0x74450000, 7445)
96 90: mov \rp, #0
100 91: str \rp, [\tmp, #4] @ Store in brcmstb_uart_phys
101 cmp \rp, #0 @ Valid UART address?
103 str \rp, [\tmp, #8] @ Store 0 in brcmstb_uart_virt
105 92: and \rv, \rp, #0xffffff @ offset within 16MB section
116 100: ldr \rp, [\tmp, #4] @ Load brcmstb_uart_phys
150 * In the kernel proper, this data is located in arch/arm/mach-bcm/brcmstb.c.
156 * to re-run the probing again later.