SyterKit 0.4.0.x
SyterKit is a bare-metal framework
Loading...
Searching...
No Matches
reg-ncat.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: GPL-2.0+ */
2/*
3 * (C) Copyright 2013-2025
4 * Allwinner Technology Co., Ltd. <www.allwinnertech.com>
5 *
6 * original from bsp uboot defines
7 */
8
9#ifndef __SUN50IW9_REG_NCAT_H__
10#define __SUN50IW9_REG_NCAT_H__
11
12#define SUNXI_SRAM_A1_BASE (0x00020000)
13#define SUNXI_SRAM_A2_BASE (0x00100000)
14#define SUNXI_SRAM_C_BASE (0x00028000)
15#define SUNXI_CE_BASE (0x01904000)
16#define SUNXI_SS_BASE SUNXI_CE_BASE
17
18// CPUX
19#define SUNXI_CPUXCFG_BASE (0x09010000)
20#define SUNXI_CPU_SUBSYS_CTRL_BASE (0x08100000)
21
22//sys ctrl
23#define SUNXI_SYSCRL_BASE (0x03000000)
24#define SUNXI_CCM_BASE (0x03001000)
25#define SUNXI_DMA_BASE (0x03002000)
26#define SUNXI_MSGBOX_BASE (0x03003000)
27#define SUNXI_SPINLOCK_BASE (0x03004000)
28#define SUNXI_HSTMR_BASE (0x03005000)
29#define SUNXI_SID_BASE (0x03006000)
30#define SUNXI_SMC_BASE (0x03007000)
31#define SUNXI_SPC_BASE (0x03008000)
32
33#define SUNXI_TIMER_BASE (0x03009000)
34#define SUNXI_WDOG_BASE (0x030090A0)
35#define SUNXI_CNT64_BASE (0x03009C00)
36#define SUNXI_PWM_BASE (0x0300A000)
37#define SUNXI_PIO_BASE (0x0300B000)
38#define SUNXI_PSI_BASE (0x0300C000)
39#define SUNXI_DCU_BASE (0x03010000)
40#define SUNXI_GIC_BASE (0x03020000)
41#define SUNXI_IOMMU_BASE (0x030F0000)
42
43//storage
44#define SUNXI_DRAMCTL0_BASE (0x04002000)
45#define SUNXI_NFC_BASE (0x04011000)
46#define SUNXI_SMHC0_BASE (0x04020000)
47#define SUNXI_SMHC1_BASE (0x04021000)
48#define SUNXI_SMHC2_BASE (0x04022000)
49
50
51#define SUNXI_UART0_BASE (0x05000000)
52#define SUNXI_UART1_BASE (0x05000400)
53#define SUNXI_UART2_BASE (0x05000800)
54#define SUNXI_UART3_BASE (0x05000c00)
55#define SUNXI_UART4_BASE (0x05001000)
56
57#define SUNXI_TWI0_BASE (0x05002000)
58#define SUNXI_TWI1_BASE (0x05002400)
59#define SUNXI_TWI2_BASE (0x05002800)
60
61#define SUNXI_SCR0_BASE (0x05005000)
62
63#define SUNXI_SPI0_BASE (0x05010000)
64#define SUNXI_SPI1_BASE (0x05011000)
65#define SUNXI_GMAC_BASE (0x05020000)
66
67#define SUNXI_GPADC_BASE (0x05070000)
68#define SUNXI_LRADC_BASE (0x05070800)
69#define SUNXI_KEYADC_BASE SUNXI_LRADC_BASE
70
71#define SUNXI_USBOTG_BASE (0x05100000)
72#define SUNXI_EHCI0_BASE (0x05310000)
73#define SUNXI_EHCI1_BASE (0x05311000)
74
75#define ARMV7_GIC_BASE (SUNXI_GIC_BASE + 0x1000)
76#define ARMV7_CPUIF_BASE (SUNXI_GIC_BASE + 0x2000)
77
78//cpus
79#define SUNXI_RTC_BASE (0x07000000)
80#define SUNXI_CPUS_CFG_BASE (0x07000400)
81#define SUNXI_RCPUCFG_BASE (SUNXI_CPUS_CFG_BASE)
82#define SUNXI_RPRCM_BASE (0x07010000)
83#define SUNXI_RPWM_BASE (0x07020c00)
84#define SUNXI_RPIO_BASE (0x07022000)
85#define SUNXI_R_PIO_BASE (0x07022000)
86#define SUNXI_RTWI_BASE (0x07081400)
87#define SUNXI_RRSB_BASE (0x07083000)
88#define SUNXI_RSB_BASE (0x07083000)
89#define SUNXI_RTWI_BRG_REG (SUNXI_RPRCM_BASE + 0x019c)
90#define SUNXI_RTWI0_RST_BIT (16)
91#define SUNXI_RTWI0_GATING_BIT (0)
92
93#define SUNXI_RTC_DATA_BASE (SUNXI_RTC_BASE + 0x100)
94
95#define VDD_SYS_PWROFF_GATING_REG (SUNXI_RPRCM_BASE + 0x250)
96#define RES_CAL_CTRL_REG (SUNXI_RPRCM_BASE + 0X310)
97#define VDD_ADDA_OFF_GATING (4)
98#define CAL_ANA_EN (1)
99#define CAL_EN (0)
100
101#define RVBARADDR0_L (((readl(SUNXI_SYSCRL_BASE + 0x24) & 0x7) != 0x2) ? SUNXI_CPUXCFG_BASE + 0x40 : SUNXI_CPU_SUBSYS_CTRL_BASE + 0x40)
102#define RVBARADDR0_H (((readl(SUNXI_SYSCRL_BASE + 0x24) & 0x7) != 0x2) ? SUNXI_CPUXCFG_BASE + 0x44 : SUNXI_CPU_SUBSYS_CTRL_BASE + 0x44)
103#define SRAM_CONTRL_REG0 (SUNXI_SYSCRL_BASE + 0x0)
104#define SRAM_CONTRL_REG1 (SUNXI_SYSCRL_BASE + 0x4)
105
106#define GPIO_BIAS_MAX_LEN (32)
107#define GPIO_BIAS_MAIN_NAME "gpio_bias"
108#define GPIO_POW_MODE_REG (0x0340)
109#define GPIO_3_3V_MODE 0
110#define GPIO_1_8V_MODE 1
111
112/*cpu*/
113#define SUNXI_DBG_REG1 (0xc4)
114#define SUNXI_CLUSTER_PWROFF_GATING (0x44)
115#define SUNXI_CPU_RST_CTRL (0x0)
116#define SUNXI_CPU_PWR_SW(cpu) (0x50 + cpu * 0x04)
117
118#endif// __SUN50IW9_REG_NCAT_H__