blob: 5cd218ebbca6b3c4ae8a6358cbb27f60d2a25107 [file] [log] [blame]
lh9ed821d2023-04-07 01:36:19 -07001/*******************************************************************************
2 * Copyright (C) 2008, ZTE Corporation.
3 *
4 * File Name: dma_cfg.h
5 * File Mark:
6 * Description:define dma ram config
7
8 * Others:
9 * Version: v0.1
10 * Author: wangxia
11 * Date: 2016-02-18
12 * History 1:
13 * Date: 2016-03-23
14 * Version:
15 * Author: wangxia
16 * Modification: add IRAM0 config
17 *
18 * History 2:
19 ********************************************************************************/
20
21#ifndef _DMA_CFG_H
22#define _DMA_CFG_H
23/****************************************************************************
24* Include files
25****************************************************************************/
26#include "ram_config.h"
27/****************************************************************************
28* Local Macros
29****************************************************************************/
30
31//#define DMA_RAM_BASE_ADDR DDR_BASE_ADDR_DRV
32#define DMA_RAM_SIZE DDR_BASE_LEN_DRV /*6.5M*/
33
34/*for EDCP, 64k*/
35#define DMA_RAM_FOR_EDCP_ADDR_BASE (DMA_RAM_BASE_ADDR)
36#define DMA_RAM_FOR_EDCP_SIZE 0x10000
37
38/*for UART, 64k*/
39#define DMA_RAM_FOR_UART_ADDR_BASE (DMA_RAM_FOR_EDCP_ADDR_BASE + DMA_RAM_FOR_EDCP_SIZE)
40#define DMA_RAM_FOR_UART_SIZE 0x10000
41
42/* SD */
43#define DMA_RAM_FOR_SD_ADDR_BASE (DMA_RAM_FOR_UART_ADDR_BASE + DMA_RAM_FOR_UART_SIZE)
44#define DMA_RAM_FOR_SD_SIZE 0x30000//0x10000
45
46
47
48/*for USB, 2M ×é°ü */
49#define DMA_RAM_FOR_USB_ADDR_BASE (DMA_RAM_BASE_ADDR + 0x80000)
50#define DMA_RAM_FOR_USB_SIZE 0x80000
51
52
53
54#if 0
55/*for I2S,120k*/
56#define DMA_RAM_FOR_I2S_ADDR_BASE (DMA_RAM_FOR_USB_ADDR_BASE+DMA_RAM_FOR_USB_SIZE)
57#define DMA_RAM_FOR_I2S_SIZE 0x1E000
58
59/*for F8,5k*/
60#define DMA_RAM_FOR_F8_ADDR_BASE (DMA_RAM_FOR_I2S_ADDR_BASE + DMA_RAM_FOR_I2S_SIZE)
61#define DMA_RAM_FOR_F8_SIZE 0x1400
62
63/*for F9,5k*/
64#define DMA_RAM_FOR_F9_ADDR_BASE (DMA_RAM_FOR_F8_ADDR_BASE + DMA_RAM_FOR_F8_SIZE)
65#define DMA_RAM_FOR_F9_SIZE 0x1400
66
67/*for UART, 64k*/
68#define DMA_RAM_FOR_UART_ADDR_BASE (DMA_RAM_FOR_F9_ADDR_BASE + DMA_RAM_FOR_F9_SIZE)
69#define DMA_RAM_FOR_UART_SIZE 0x10000
70
71/*for NAND, 64k*/
72#define DMA_RAM_FOR_NAND_ADDR_BASE (DMA_RAM_FOR_UART_ADDR_BASE + DMA_RAM_FOR_UART_SIZE)
73#define DMA_RAM_FOR_NAND_SIZE 0x10000
74
75/*for EDCP, 64k*/
76#define DMA_RAM_FOR_EDCP_ADDR_BASE (DMA_RAM_FOR_NAND_ADDR_BASE + DMA_RAM_FOR_NAND_SIZE)
77#define DMA_RAM_FOR_EDCP_SIZE 0x10000
78
79/*for DMA LLI 32K*/
80#define DMA_RAM_FOR_DMA_LLI_ADDR_BASE (DMA_RAM_FOR_EDCP_ADDR_BASE+DMA_RAM_FOR_EDCP_SIZE)
81#define DMA_RAM_FOR_DMA_LLI_SIZE 0x8000
82
83/*for SSP 256K*/
84#define DMA_RAM_FOR_SSP_ADDR_BASE (DMA_RAM_FOR_DMA_LLI_ADDR_BASE+DMA_RAM_FOR_DMA_LLI_SIZE)
85#define DMA_RAM_FOR_SSP_SIZE 0x10000
86
87/*for WIFI 512K£ºAP²àʹÓÃ*/
88#define DMA_RAM_FOR_WIFI_ADDR_BASE (DMA_RAM_FOR_SSP_ADDR_BASE+DMA_RAM_FOR_SSP_SIZE)
89#define DMA_RAM_FOR_WIFI_SIZE 0x80000
90
91/*for GMAC 512K£ºAP²àʹÓÃ*/
92#define DMA_RAM_FOR_GMAC_ADDR_BASE (DMA_RAM_FOR_WIFI_ADDR_BASE+DMA_RAM_FOR_WIFI_SIZE)
93#define DMA_RAM_FOR_GMAC_SIZE 0x80000
94
95/*for CAM 616K*/
96#define DMA_RAM_FOR_CAM_ADDR_BASE (DMA_RAM_FOR_GMAC_ADDR_BASE+DMA_RAM_FOR_GMAC_SIZE)
97#define DMA_RAM_FOR_CAM_SIZE 0x9a000
98
99/* SD */
100#define DMA_RAM_FOR_SD_ADDR_BASE (DMA_RAM_FOR_CAM_ADDR_BASE + DMA_RAM_FOR_CAM_SIZE)
101#define DMA_RAM_FOR_SD_SIZE 0x30000//0x10000
102#endif
103
104
105//#define DMA_RAM_CONFIG_END (DMA_RAM_FOR_SD_ADDR_BASE+DMA_RAM_FOR_SD_SIZE)
106
107//#if DMA_RAM_CONFIG_END > (DMA_RAM_BASE_ADDR+DMA_RAM_SIZE)
108//#error error dma_cfg !!!!!!!!!!!!!!!
109//#endif
110
111/*---------------------------DMA ADDR For PSM-----------------------------------*/
112#define DMA_RAM_FOR_PSM_ADDR_BASE DDR_BASE_ADDR_PSM
113#define DMA_PSM_RAM_SIZE (0x00050000UL>>CPU_SHIFT)/*320k*/
114
115/*for M0 64K*/
116#define DMA_PSM_RAM_FOR_M0 DMA_RAM_FOR_PSM_ADDR_BASE
117#define DMA_PSM_RAM_FOR_M0_SIZE (0x00010000UL>>CPU_SHIFT)
118
119/*for ZSP 256K*/
120#define DMA_PSM_RAM_FOR_ZSP (DMA_PSM_RAM_FOR_M0+DMA_PSM_RAM_FOR_M0_SIZE)
121#define DMA_PSM_RAM_FOR_ZSP_SIZE (0x00040000UL>>CPU_SHIFT)
122
123/*for PS 128K*/
124//#define DMA_PSM_RAM_FOR_R7 (DMA_PSM_RAM_FOR_ZSP+DMA_PSM_RAM_FOR_ZSP_SIZE)
125//#define DMA_PSM_RAM_FOR_R7_SIZE (0x00020000UL>>CPU_SHIFT)
126
127/*for AP 256K*/
128//#define DMA_PSM_RAM_FOR_A9 (DMA_PSM_RAM_FOR_R7+DMA_PSM_RAM_FOR_R7_SIZE)
129//#define DMA_PSM_RAM_FOR_A9_SIZE 0x40000
130
131#define DMA_PSM_RAM_CONFIG_END (DMA_PSM_RAM_FOR_ZSP+DMA_PSM_RAM_FOR_ZSP_SIZE)
132
133//#if DMA_PSM_RAM_CONFIG_END > (DMA_RAM_FOR_PSM_ADDR_BASE+DMA_PSM_RAM_SIZE)
134//#error error psm_dma_cfg !!!!!!!!!!!!!!!
135//#endif
136
137/*------------------------------IRAM0 config-------------------------------------------------------------------*/
138
139/* IRAM0ÖеÄÖ¸¶¨µØÖ·´æ´¢ÇøÓò */
140#define ICP_MSG_DRV_BASE_ADDR (IRAM_BASE_ADDR_DRV)
141#define ICP_MSG_SIZE ((0x25C0UL)>>CPU_SHIFT)
142
143/*SPILOCK 256byte*/
144#define SOFTLOCK_BASE (IRAM_BASE_ADDR_DRV + ICP_MSG_SIZE)
145#define SOFTLOCK_SIZE (0x100UL>>CPU_SHIFT)
146
147/*AP<->CP DMA LOCK 256byte*/
148#define DMA_SHARED_IRAM_BASE (SOFTLOCK_BASE + SOFTLOCK_SIZE) /*spinlock ºóÃæ0x100µØÖ·±£Áô£¬¸øDMAʹÓÃ*/
149#define DMA_SHARED_IRAM_SIZE (0x100UL>>CPU_SHIFT)
150
151/*power on type 4byte*/
152#define POWERON_TYPE_ADDR (DMA_SHARED_IRAM_BASE + DMA_SHARED_IRAM_SIZE)
153#define POWERON_TYPE_SIZE (0x4UL>>CPU_SHIFT)
154
155/*boot mode 4byte*/
156#define CFG_BOOT_MODE_SAVE_ADDR_FOR_UBOOT (POWERON_TYPE_ADDR + POWERON_TYPE_SIZE)
157#define CFG_BOOT_MODE_SAVE_ADDR_FOR_UBOOT_SIZE (0x4UL>>CPU_SHIFT)
158
159/*boot start mode 4byte*/
160#define CFG_BOOT_MODE_START_MODE_FOR_UBOOT (CFG_BOOT_MODE_SAVE_ADDR_FOR_UBOOT + CFG_BOOT_MODE_SAVE_ADDR_FOR_UBOOT_SIZE)
161#define CFG_BOOT_MODE_START_MODE_FOR_UBOOT_SIZE (0x4UL>>CPU_SHIFT)
162
163/*secure puk 256byte*/
164#define CFG_SECURE_PUK_ADDR (CFG_BOOT_MODE_START_MODE_FOR_UBOOT + CFG_BOOT_MODE_START_MODE_FOR_UBOOT_SIZE)
165#define CFG_SECURE_PUK_SIZE (0x100UL>>CPU_SHIFT)
166
167/*wdt iram flag 36byte*/
168#define WDT_NV_ADDR (CFG_SECURE_PUK_ADDR + CFG_SECURE_PUK_SIZE)
169#define WDT_NV_SIZE (0x4UL>>CPU_SHIFT)
170
171#define WDT_GLOBAL_COUNT_ADDR (WDT_NV_ADDR + WDT_NV_SIZE)
172#define WDT_GLOBAL_COUNT_SIZE (0x4UL>>CPU_SHIFT)
173
174#define WDT_PS_TIMEOUT_ADDR (WDT_GLOBAL_COUNT_ADDR + WDT_GLOBAL_COUNT_SIZE)
175#define WDT_PS_TIMEOUT_SIZE (0x4UL>>CPU_SHIFT)
176
177#define WDT_AP_TIMEOUT_ADDR (WDT_PS_TIMEOUT_ADDR + WDT_PS_TIMEOUT_SIZE)
178#define WDT_AP_TIMEOUT_SIZE (0x4UL>>CPU_SHIFT)
179
180#define WDT_PHY_TIMEOUT_ADDR (WDT_AP_TIMEOUT_ADDR + WDT_AP_TIMEOUT_SIZE)
181#define WDT_PHY_TIMEOUT_SIZE (0x4UL>>CPU_SHIFT)
182
183#define WDT_M0_SWITCH_ADDR (WDT_PHY_TIMEOUT_ADDR + WDT_PHY_TIMEOUT_SIZE)
184#define WDT_M0_SWITCH_SIZE (0x4UL>>CPU_SHIFT)
185
186#define WDT_PS_SWITCH_ADDR (WDT_M0_SWITCH_ADDR + WDT_M0_SWITCH_SIZE)
187#define WDT_PS_SWITCH_SIZE (0x4UL>>CPU_SHIFT)
188
189#define WDT_AP_SWITCH_ADDR (WDT_PS_SWITCH_ADDR + WDT_PS_SWITCH_SIZE)
190#define WDT_AP_SWITCH_SIZE (0x4UL>>CPU_SHIFT)
191
192#define WDT_PHY_SWITCH_ADDR (WDT_AP_SWITCH_ADDR + WDT_AP_SWITCH_SIZE)
193#define WDT_PHY_SWITCH_SIZE (0x4UL>>CPU_SHIFT)
194
195#define FB_REGSTER_FLAG_ADDR (WDT_PHY_SWITCH_ADDR + WDT_PHY_SWITCH_SIZE)
196#define FB_REGSTER_FLAG_SIZE (0x4UL)
197
198#define M0_IMAGE_READY_FLAG_ADDR (FB_REGSTER_FLAG_ADDR + FB_REGSTER_FLAG_SIZE)
199#define M0_IMAGE_READY_FLAG_SIZE (0x4UL)
200
201#define BOOT_FLAG_ADDR (M0_IMAGE_READY_FLAG_ADDR + M0_IMAGE_READY_FLAG_SIZE)
202#define BOOT_FLAG_SIZE (0x4UL)
203
204#define EXCEPT_FLAG_ADDR (BOOT_FLAG_ADDR + BOOT_FLAG_SIZE)
205#define EXCEPT_FLAG_SIZE (0x4UL)
206
you.chen94a56082024-06-20 21:22:25 +0800207//youchen@2024-06-20 add for lynq nv config begin
208#define LYNQ_NV_CFG_SUPPORT 1
209
210#ifndef LYNQ_NV_CFG_SUPPORT
211
xf.li84027492024-04-09 00:17:51 -0700212#define MMC_FLAG_ADDR (EXCEPT_FLAG_ADDR + EXCEPT_FLAG_SIZE)
213#define MMC_FLAG_SIZE (0x4UL)/*bit 0: mmc0 exit,bit1 mmc1 exit*/
xf.li84027492024-04-09 00:17:51 -0700214#define RAM_CONFIG_END (MMC_FLAG_ADDR+MMC_FLAG_SIZE)
lh9ed821d2023-04-07 01:36:19 -0700215
you.chen94a56082024-06-20 21:22:25 +0800216#else
217
218#define MMC_LYNQ_NV_CFG_ADDR (EXCEPT_FLAG_ADDR + EXCEPT_FLAG_SIZE)
219#define MMC_LYNQ_NV_CFG_SIZE (0x100UL)
220#define RAM_CONFIG_END (MMC_LYNQ_NV_CFG_ADDR+MMC_LYNQ_NV_CFG_SIZE)
221
222#endif
223//youchen@2024-06-20 add for lynq nv config end
224
lh9ed821d2023-04-07 01:36:19 -0700225//#if RAM_CONFIG_END > (IRAM_BASE_ADDR_DRV+IRAM_BASE_LEN_DRV)
226//#error error drv_ram_cfg !!!!!!!!!!!!!!!
227//#endif
228
229#endif
230
231