diff options
Diffstat (limited to 'arch/mips/powertv/asic/prealloc-cronus.c')
-rw-r--r-- | arch/mips/powertv/asic/prealloc-cronus.c | 668 |
1 files changed, 200 insertions, 468 deletions
diff --git a/arch/mips/powertv/asic/prealloc-cronus.c b/arch/mips/powertv/asic/prealloc-cronus.c index 45a5c3ea718c..c532b50521ec 100644 --- a/arch/mips/powertv/asic/prealloc-cronus.c +++ b/arch/mips/powertv/asic/prealloc-cronus.c | |||
@@ -22,7 +22,9 @@ | |||
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/init.h> | 24 | #include <linux/init.h> |
25 | #include <linux/ioport.h> | ||
25 | #include <asm/mach-powertv/asic.h> | 26 | #include <asm/mach-powertv/asic.h> |
27 | #include "prealloc.h" | ||
26 | 28 | ||
27 | /* | 29 | /* |
28 | * DVR_CAPABLE CRONUS RESOURCES | 30 | * DVR_CAPABLE CRONUS RESOURCES |
@@ -30,305 +32,161 @@ | |||
30 | struct resource dvr_cronus_resources[] __initdata = | 32 | struct resource dvr_cronus_resources[] __initdata = |
31 | { | 33 | { |
32 | /* | 34 | /* |
33 | * | ||
34 | * VIDEO1 / LX1 | 35 | * VIDEO1 / LX1 |
35 | * | ||
36 | */ | 36 | */ |
37 | { | 37 | /* Delta-Mu 1 image (2MiB) */ |
38 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | 38 | PREALLOC_NORMAL("ST231aImage", 0x24000000, 0x24200000-1, |
39 | .start = 0x24000000, | 39 | IORESOURCE_MEM) |
40 | .end = 0x241FFFFF, /* 2MiB */ | 40 | /* Delta-Mu 1 monitor (8KiB) */ |
41 | .flags = IORESOURCE_MEM, | 41 | PREALLOC_NORMAL("ST231aMonitor", 0x24200000, 0x24202000-1, |
42 | }, | 42 | IORESOURCE_MEM) |
43 | { | 43 | /* Delta-Mu 1 RAM (~29.9MiB (32MiB - (2MiB + 8KiB))) */ |
44 | .name = "ST231aMonitor", /* 8KiB block ST231a monitor */ | 44 | PREALLOC_NORMAL("MediaMemory1", 0x24202000, 0x26000000-1, |
45 | .start = 0x24200000, | 45 | IORESOURCE_MEM) |
46 | .end = 0x24201FFF, | 46 | |
47 | .flags = IORESOURCE_MEM, | ||
48 | }, | ||
49 | { | ||
50 | .name = "MediaMemory1", | ||
51 | .start = 0x24202000, | ||
52 | .end = 0x25FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
53 | .flags = IORESOURCE_MEM, | ||
54 | }, | ||
55 | /* | 47 | /* |
56 | * | ||
57 | * VIDEO2 / LX2 | 48 | * VIDEO2 / LX2 |
58 | * | ||
59 | */ | 49 | */ |
60 | { | 50 | /* Delta-Mu 2 image (2MiB) */ |
61 | .name = "ST231bImage", /* Delta-Mu 2 image and ram */ | 51 | PREALLOC_NORMAL("ST231bImage", 0x60000000, 0x60200000-1, |
62 | .start = 0x60000000, | 52 | IORESOURCE_MEM) |
63 | .end = 0x601FFFFF, /* 2MiB */ | 53 | /* Delta-Mu 2 monitor (8KiB) */ |
64 | .flags = IORESOURCE_IO, | 54 | PREALLOC_NORMAL("ST231bMonitor", 0x60200000, 0x60202000-1, |
65 | }, | 55 | IORESOURCE_MEM) |
66 | { | 56 | /* Delta-Mu 2 RAM (~29.9MiB (32MiB - (2MiB + 8KiB))) */ |
67 | .name = "ST231bMonitor", /* 8KiB block ST231b monitor */ | 57 | PREALLOC_NORMAL("MediaMemory2", 0x60202000, 0x62000000-1, |
68 | .start = 0x60200000, | 58 | IORESOURCE_MEM) |
69 | .end = 0x60201FFF, | 59 | |
70 | .flags = IORESOURCE_IO, | ||
71 | }, | ||
72 | { | ||
73 | .name = "MediaMemory2", | ||
74 | .start = 0x60202000, | ||
75 | .end = 0x61FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
76 | .flags = IORESOURCE_IO, | ||
77 | }, | ||
78 | /* | 60 | /* |
79 | * | ||
80 | * Sysaudio Driver | 61 | * Sysaudio Driver |
81 | * | ||
82 | * This driver requires: | ||
83 | * | ||
84 | * Arbitrary Based Buffers: | ||
85 | * DSP_Image_Buff - DSP code and data images (1MB) | ||
86 | * ADSC_CPU_PCM_Buff - ADSC CPU PCM buffer (40KB) | ||
87 | * ADSC_AUX_Buff - ADSC AUX buffer (16KB) | ||
88 | * ADSC_Main_Buff - ADSC Main buffer (16KB) | ||
89 | * | ||
90 | */ | 62 | */ |
91 | { | 63 | /* DSP code and data images (1MiB) */ |
92 | .name = "DSP_Image_Buff", | 64 | PREALLOC_NORMAL("DSP_Image_Buff", 0x00000000, 0x00100000-1, |
93 | .start = 0x00000000, | 65 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
94 | .end = 0x000FFFFF, | 66 | /* ADSC CPU PCM buffer (40KiB) */ |
95 | .flags = IORESOURCE_MEM, | 67 | PREALLOC_NORMAL("ADSC_CPU_PCM_Buff", 0x00000000, 0x0000A000-1, |
96 | }, | 68 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
97 | { | 69 | /* ADSC AUX buffer (128KiB) */ |
98 | .name = "ADSC_CPU_PCM_Buff", | 70 | PREALLOC_NORMAL("ADSC_AUX_Buff", 0x00000000, 0x00020000-1, |
99 | .start = 0x00000000, | 71 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
100 | .end = 0x00009FFF, | 72 | /* ADSC Main buffer (128KiB) */ |
101 | .flags = IORESOURCE_MEM, | 73 | PREALLOC_NORMAL("ADSC_Main_Buff", 0x00000000, 0x00020000-1, |
102 | }, | 74 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
103 | { | 75 | |
104 | .name = "ADSC_AUX_Buff", | ||
105 | .start = 0x00000000, | ||
106 | .end = 0x00003FFF, | ||
107 | .flags = IORESOURCE_MEM, | ||
108 | }, | ||
109 | { | ||
110 | .name = "ADSC_Main_Buff", | ||
111 | .start = 0x00000000, | ||
112 | .end = 0x00003FFF, | ||
113 | .flags = IORESOURCE_MEM, | ||
114 | }, | ||
115 | /* | 76 | /* |
116 | * | ||
117 | * STAVEM driver/STAPI | 77 | * STAVEM driver/STAPI |
118 | * | 78 | * |
119 | * This driver requires: | ||
120 | * | ||
121 | * Arbitrary Based Buffers: | ||
122 | * This memory area is used for allocating buffers for Video decoding | 79 | * This memory area is used for allocating buffers for Video decoding |
123 | * purposes. Allocation/De-allocation within this buffer is managed | 80 | * purposes. Allocation/De-allocation within this buffer is managed |
124 | * by the STAVMEM driver of the STAPI. They could be Decimated | 81 | * by the STAVMEM driver of the STAPI. They could be Decimated |
125 | * Picture Buffers, Intermediate Buffers, as deemed necessary for | 82 | * Picture Buffers, Intermediate Buffers, as deemed necessary for |
126 | * video decoding purposes, for any video decoders on Zeus. | 83 | * video decoding purposes, for any video decoders on Zeus. |
127 | * | ||
128 | */ | 84 | */ |
129 | { | 85 | /* 12MiB */ |
130 | .name = "AVMEMPartition0", | 86 | PREALLOC_NORMAL("AVMEMPartition0", 0x00000000, 0x00c00000-1, |
131 | .start = 0x63580000, | 87 | IORESOURCE_MEM) |
132 | .end = 0x64180000 - 1, /* 12 MB total */ | 88 | |
133 | .flags = IORESOURCE_IO, | ||
134 | }, | ||
135 | /* | 89 | /* |
136 | * | ||
137 | * DOCSIS Subsystem | 90 | * DOCSIS Subsystem |
138 | * | ||
139 | * This driver requires: | ||
140 | * | ||
141 | * Arbitrary Based Buffers: | ||
142 | * Docsis - | ||
143 | * | ||
144 | */ | 91 | */ |
145 | { | 92 | /* 7MiB */ |
146 | .name = "Docsis", | 93 | PREALLOC_DOCSIS("Docsis", 0x67500000, 0x67c00000-1, IORESOURCE_MEM) |
147 | .start = 0x62000000, | 94 | |
148 | .end = 0x62700000 - 1, /* 7 MB total */ | ||
149 | .flags = IORESOURCE_IO, | ||
150 | }, | ||
151 | /* | 95 | /* |
152 | * | ||
153 | * GHW HAL Driver | 96 | * GHW HAL Driver |
154 | * | ||
155 | * This driver requires: | ||
156 | * | ||
157 | * Arbitrary Based Buffers: | ||
158 | * GraphicsHeap - PowerTV Graphics Heap | ||
159 | * | ||
160 | */ | 97 | */ |
161 | { | 98 | /* PowerTV Graphics Heap (14MiB) */ |
162 | .name = "GraphicsHeap", | 99 | PREALLOC_NORMAL("GraphicsHeap", 0x62700000, 0x63500000-1, |
163 | .start = 0x62700000, | 100 | IORESOURCE_MEM) |
164 | .end = 0x63500000 - 1, /* 14 MB total */ | 101 | |
165 | .flags = IORESOURCE_IO, | ||
166 | }, | ||
167 | /* | 102 | /* |
168 | * | ||
169 | * multi com buffer area | 103 | * multi com buffer area |
170 | * | ||
171 | * This driver requires: | ||
172 | * | ||
173 | * Arbitrary Based Buffers: | ||
174 | * Docsis - | ||
175 | * | ||
176 | */ | 104 | */ |
177 | { | 105 | /* 128KiB */ |
178 | .name = "MulticomSHM", | 106 | PREALLOC_NORMAL("MulticomSHM", 0x26000000, 0x26020000-1, |
179 | .start = 0x26000000, | 107 | IORESOURCE_MEM) |
180 | .end = 0x26020000 - 1, | 108 | |
181 | .flags = IORESOURCE_MEM, | ||
182 | }, | ||
183 | /* | 109 | /* |
184 | * | ||
185 | * DMA Ring buffer | 110 | * DMA Ring buffer |
186 | * | ||
187 | * This driver requires: | ||
188 | * | ||
189 | * Arbitrary Based Buffers: | ||
190 | * Docsis - | ||
191 | * | ||
192 | */ | 111 | */ |
193 | { | 112 | PREALLOC_NORMAL("BMM_Buffer", 0x00000000, 0x002EA000-1, |
194 | .name = "BMM_Buffer", | 113 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
195 | .start = 0x00000000, | 114 | |
196 | .end = 0x00280000 - 1, | ||
197 | .flags = IORESOURCE_MEM, | ||
198 | }, | ||
199 | /* | 115 | /* |
200 | * | ||
201 | * Display bins buffer for unit0 | 116 | * Display bins buffer for unit0 |
202 | * | ||
203 | * This driver requires: | ||
204 | * | ||
205 | * Arbitrary Based Buffers: | ||
206 | * Display Bins for unit0 | ||
207 | * | ||
208 | */ | 117 | */ |
209 | { | 118 | /* 4KiB */ |
210 | .name = "DisplayBins0", | 119 | PREALLOC_NORMAL("DisplayBins0", 0x00000000, 0x00001000-1, |
211 | .start = 0x00000000, | 120 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
212 | .end = 0x00000FFF, /* 4 KB total */ | 121 | |
213 | .flags = IORESOURCE_MEM, | ||
214 | }, | ||
215 | /* | 122 | /* |
216 | * | 123 | * Display bins buffer for unit1 |
217 | * Display bins buffer | ||
218 | * | ||
219 | * This driver requires: | ||
220 | * | ||
221 | * Arbitrary Based Buffers: | ||
222 | * Display Bins for unit1 | ||
223 | * | ||
224 | */ | 124 | */ |
225 | { | 125 | /* 4KiB */ |
226 | .name = "DisplayBins1", | 126 | PREALLOC_NORMAL("DisplayBins1", 0x00000000, 0x00001000-1, |
227 | .start = 0x64AD4000, | 127 | IORESOURCE_MEM) |
228 | .end = 0x64AD5000 - 1, /* 4 KB total */ | 128 | |
229 | .flags = IORESOURCE_IO, | ||
230 | }, | ||
231 | /* | 129 | /* |
232 | * | ||
233 | * ITFS | 130 | * ITFS |
234 | * | ||
235 | * This driver requires: | ||
236 | * | ||
237 | * Arbitrary Based Buffers: | ||
238 | * Docsis - | ||
239 | * | ||
240 | */ | 131 | */ |
241 | { | 132 | /* 815,104 bytes each for 2 ITFS partitions. */ |
242 | .name = "ITFS", | 133 | PREALLOC_NORMAL("ITFS", 0x00000000, 0x0018E000-1, IORESOURCE_MEM) |
243 | .start = 0x64180000, | 134 | |
244 | /* 815,104 bytes each for 2 ITFS partitions. */ | ||
245 | .end = 0x6430DFFF, | ||
246 | .flags = IORESOURCE_IO, | ||
247 | }, | ||
248 | /* | 135 | /* |
249 | * | ||
250 | * AVFS | 136 | * AVFS |
251 | * | ||
252 | * This driver requires: | ||
253 | * | ||
254 | * Arbitrary Based Buffers: | ||
255 | * Docsis - | ||
256 | * | ||
257 | */ | 137 | */ |
258 | { | 138 | /* (945K * 8) = (128K * 3) 5 playbacks / 3 server */ |
259 | .name = "AvfsDmaMem", | 139 | PREALLOC_NORMAL("AvfsDmaMem", 0x00000000, 0x007c2000-1, |
260 | .start = 0x6430E000, | 140 | IORESOURCE_MEM) |
261 | /* (945K * 8) = (128K *3) 5 playbacks / 3 server */ | 141 | |
262 | .end = 0x64AD0000 - 1, | 142 | /* 4KiB */ |
263 | .flags = IORESOURCE_IO, | 143 | PREALLOC_NORMAL("AvfsFileSys", 0x00000000, 0x00001000-1, |
264 | }, | 144 | IORESOURCE_MEM) |
265 | { | 145 | |
266 | .name = "AvfsFileSys", | ||
267 | .start = 0x64AD0000, | ||
268 | .end = 0x64AD1000 - 1, /* 4K */ | ||
269 | .flags = IORESOURCE_IO, | ||
270 | }, | ||
271 | /* | 146 | /* |
272 | * | ||
273 | * PMEM | 147 | * PMEM |
274 | * | ||
275 | * This driver requires: | ||
276 | * | ||
277 | * Arbitrary Based Buffers: | ||
278 | * Persistent memory for diagnostics. | ||
279 | * | ||
280 | */ | 148 | */ |
281 | { | 149 | /* Persistent memory for diagnostics (64KiB) */ |
282 | .name = "DiagPersistentMemory", | 150 | PREALLOC_PMEM("DiagPersistentMemory", 0x00000000, 0x10000-1, |
283 | .start = 0x00000000, | 151 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
284 | .end = 0x10000 - 1, | 152 | |
285 | .flags = IORESOURCE_MEM, | ||
286 | }, | ||
287 | /* | 153 | /* |
288 | * | ||
289 | * Smartcard | 154 | * Smartcard |
290 | * | ||
291 | * This driver requires: | ||
292 | * | ||
293 | * Arbitrary Based Buffers: | ||
294 | * Read and write buffers for Internal/External cards | ||
295 | * | ||
296 | */ | 155 | */ |
297 | { | 156 | /* Read and write buffers for Internal/External cards (10KiB) */ |
298 | .name = "SmartCardInfo", | 157 | PREALLOC_NORMAL("SmartCardInfo", 0x00000000, 0x2800-1, |
299 | .start = 0x64AD1000, | 158 | IORESOURCE_MEM) |
300 | .end = 0x64AD3800 - 1, | 159 | |
301 | .flags = IORESOURCE_IO, | ||
302 | }, | ||
303 | /* | 160 | /* |
304 | * | ||
305 | * KAVNET | 161 | * KAVNET |
306 | * NP Reset Vector - must be of the form xxCxxxxx | ||
307 | * NP Image - must be video bank 1 | ||
308 | * NP IPC - must be video bank 2 | ||
309 | */ | 162 | */ |
310 | { | 163 | /* NP Reset Vector - must be of the form xxCxxxxx (4KiB) */ |
311 | .name = "NP_Reset_Vector", | 164 | PREALLOC_NORMAL("NP_Reset_Vector", 0x27c00000, 0x27c01000-1, |
312 | .start = 0x27c00000, | 165 | IORESOURCE_MEM) |
313 | .end = 0x27c01000 - 1, | 166 | /* NP Image - must be video bank 1 (320KiB) */ |
314 | .flags = IORESOURCE_MEM, | 167 | PREALLOC_NORMAL("NP_Image", 0x27020000, 0x27070000-1, IORESOURCE_MEM) |
315 | }, | 168 | /* NP IPC - must be video bank 2 (512KiB) */ |
316 | { | 169 | PREALLOC_NORMAL("NP_IPC", 0x63500000, 0x63580000-1, IORESOURCE_MEM) |
317 | .name = "NP_Image", | 170 | |
318 | .start = 0x27020000, | 171 | /* |
319 | .end = 0x27060000 - 1, | 172 | * TFTPBuffer |
320 | .flags = IORESOURCE_MEM, | 173 | * |
321 | }, | 174 | * This buffer is used in some minimal configurations (e.g. two-way |
322 | { | 175 | * loader) for storing software images |
323 | .name = "NP_IPC", | 176 | */ |
324 | .start = 0x63500000, | 177 | PREALLOC_TFTP("TFTPBuffer", 0x00000000, MEBIBYTE(80)-1, |
325 | .end = 0x63580000 - 1, | 178 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
326 | .flags = IORESOURCE_IO, | 179 | |
327 | }, | ||
328 | /* | 180 | /* |
329 | * Add other resources here | 181 | * Add other resources here |
330 | */ | 182 | */ |
331 | { }, | 183 | |
184 | /* | ||
185 | * End of Resource marker | ||
186 | */ | ||
187 | { | ||
188 | .flags = 0, | ||
189 | }, | ||
332 | }; | 190 | }; |
333 | 191 | ||
334 | /* | 192 | /* |
@@ -337,272 +195,146 @@ struct resource dvr_cronus_resources[] __initdata = | |||
337 | struct resource non_dvr_cronus_resources[] __initdata = | 195 | struct resource non_dvr_cronus_resources[] __initdata = |
338 | { | 196 | { |
339 | /* | 197 | /* |
340 | * | ||
341 | * VIDEO1 / LX1 | 198 | * VIDEO1 / LX1 |
342 | * | ||
343 | */ | 199 | */ |
344 | { | 200 | /* Delta-Mu 1 image (2MiB) */ |
345 | .name = "ST231aImage", /* Delta-Mu 1 image and ram */ | 201 | PREALLOC_NORMAL("ST231aImage", 0x24000000, 0x24200000-1, |
346 | .start = 0x24000000, | 202 | IORESOURCE_MEM) |
347 | .end = 0x241FFFFF, /* 2MiB */ | 203 | /* Delta-Mu 1 monitor (8KiB) */ |
348 | .flags = IORESOURCE_MEM, | 204 | PREALLOC_NORMAL("ST231aMonitor", 0x24200000, 0x24202000-1, |
349 | }, | 205 | IORESOURCE_MEM) |
350 | { | 206 | /* Delta-Mu 1 RAM (~29.9MiB (32MiB - (2MiB + 8KiB))) */ |
351 | .name = "ST231aMonitor", /* 8KiB block ST231a monitor */ | 207 | PREALLOC_NORMAL("MediaMemory1", 0x24202000, 0x26000000-1, |
352 | .start = 0x24200000, | 208 | IORESOURCE_MEM) |
353 | .end = 0x24201FFF, | 209 | |
354 | .flags = IORESOURCE_MEM, | ||
355 | }, | ||
356 | { | ||
357 | .name = "MediaMemory1", | ||
358 | .start = 0x24202000, | ||
359 | .end = 0x25FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
360 | .flags = IORESOURCE_MEM, | ||
361 | }, | ||
362 | /* | 210 | /* |
363 | * | ||
364 | * VIDEO2 / LX2 | 211 | * VIDEO2 / LX2 |
365 | * | ||
366 | */ | 212 | */ |
367 | { | 213 | /* Delta-Mu 2 image (2MiB) */ |
368 | .name = "ST231bImage", /* Delta-Mu 2 image and ram */ | 214 | PREALLOC_NORMAL("ST231bImage", 0x60000000, 0x60200000-1, |
369 | .start = 0x60000000, | 215 | IORESOURCE_MEM) |
370 | .end = 0x601FFFFF, /* 2MiB */ | 216 | /* Delta-Mu 2 monitor (8KiB) */ |
371 | .flags = IORESOURCE_IO, | 217 | PREALLOC_NORMAL("ST231bMonitor", 0x60200000, 0x60202000-1, |
372 | }, | 218 | IORESOURCE_MEM) |
373 | { | 219 | /* Delta-Mu 2 RAM (~29.9MiB (32MiB - (2MiB + 8KiB))) */ |
374 | .name = "ST231bMonitor", /* 8KiB block ST231b monitor */ | 220 | PREALLOC_NORMAL("MediaMemory2", 0x60202000, 0x62000000-1, |
375 | .start = 0x60200000, | 221 | IORESOURCE_MEM) |
376 | .end = 0x60201FFF, | 222 | |
377 | .flags = IORESOURCE_IO, | ||
378 | }, | ||
379 | { | ||
380 | .name = "MediaMemory2", | ||
381 | .start = 0x60202000, | ||
382 | .end = 0x61FFFFFF, /*~29.9MiB (32MiB - (2MiB + 8KiB)) */ | ||
383 | .flags = IORESOURCE_IO, | ||
384 | }, | ||
385 | /* | 223 | /* |
386 | * | ||
387 | * Sysaudio Driver | 224 | * Sysaudio Driver |
388 | * | ||
389 | * This driver requires: | ||
390 | * | ||
391 | * Arbitrary Based Buffers: | ||
392 | * DSP_Image_Buff - DSP code and data images (1MB) | ||
393 | * ADSC_CPU_PCM_Buff - ADSC CPU PCM buffer (40KB) | ||
394 | * ADSC_AUX_Buff - ADSC AUX buffer (16KB) | ||
395 | * ADSC_Main_Buff - ADSC Main buffer (16KB) | ||
396 | * | ||
397 | */ | 225 | */ |
398 | { | 226 | /* DSP code and data images (1MiB) */ |
399 | .name = "DSP_Image_Buff", | 227 | PREALLOC_NORMAL("DSP_Image_Buff", 0x00000000, 0x00100000-1, |
400 | .start = 0x00000000, | 228 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
401 | .end = 0x000FFFFF, | 229 | /* ADSC CPU PCM buffer (40KiB) */ |
402 | .flags = IORESOURCE_MEM, | 230 | PREALLOC_NORMAL("ADSC_CPU_PCM_Buff", 0x00000000, 0x0000A000-1, |
403 | }, | 231 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
404 | { | 232 | /* ADSC AUX buffer (128KiB) */ |
405 | .name = "ADSC_CPU_PCM_Buff", | 233 | PREALLOC_NORMAL("ADSC_AUX_Buff", 0x00000000, 0x00020000-1, |
406 | .start = 0x00000000, | 234 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
407 | .end = 0x00009FFF, | 235 | /* ADSC Main buffer (128KiB) */ |
408 | .flags = IORESOURCE_MEM, | 236 | PREALLOC_NORMAL("ADSC_Main_Buff", 0x00000000, 0x00020000-1, |
409 | }, | 237 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
410 | { | 238 | |
411 | .name = "ADSC_AUX_Buff", | ||
412 | .start = 0x00000000, | ||
413 | .end = 0x00003FFF, | ||
414 | .flags = IORESOURCE_MEM, | ||
415 | }, | ||
416 | { | ||
417 | .name = "ADSC_Main_Buff", | ||
418 | .start = 0x00000000, | ||
419 | .end = 0x00003FFF, | ||
420 | .flags = IORESOURCE_MEM, | ||
421 | }, | ||
422 | /* | 239 | /* |
423 | * | ||
424 | * STAVEM driver/STAPI | 240 | * STAVEM driver/STAPI |
425 | * | 241 | * |
426 | * This driver requires: | ||
427 | * | ||
428 | * Arbitrary Based Buffers: | ||
429 | * This memory area is used for allocating buffers for Video decoding | 242 | * This memory area is used for allocating buffers for Video decoding |
430 | * purposes. Allocation/De-allocation within this buffer is managed | 243 | * purposes. Allocation/De-allocation within this buffer is managed |
431 | * by the STAVMEM driver of the STAPI. They could be Decimated | 244 | * by the STAVMEM driver of the STAPI. They could be Decimated |
432 | * Picture Buffers, Intermediate Buffers, as deemed necessary for | 245 | * Picture Buffers, Intermediate Buffers, as deemed necessary for |
433 | * video decoding purposes, for any video decoders on Zeus. | 246 | * video decoding purposes, for any video decoders on Zeus. |
434 | * | ||
435 | */ | 247 | */ |
436 | { | 248 | /* 12MiB */ |
437 | .name = "AVMEMPartition0", | 249 | PREALLOC_NORMAL("AVMEMPartition0", 0x00000000, 0x00c00000-1, |
438 | .start = 0x63580000, | 250 | IORESOURCE_MEM) |
439 | .end = 0x64180000 - 1, /* 12 MB total */ | 251 | |
440 | .flags = IORESOURCE_IO, | ||
441 | }, | ||
442 | /* | 252 | /* |
443 | * | ||
444 | * DOCSIS Subsystem | 253 | * DOCSIS Subsystem |
445 | * | ||
446 | * This driver requires: | ||
447 | * | ||
448 | * Arbitrary Based Buffers: | ||
449 | * Docsis - | ||
450 | * | ||
451 | */ | 254 | */ |
452 | { | 255 | /* 7MiB */ |
453 | .name = "Docsis", | 256 | PREALLOC_DOCSIS("Docsis", 0x67500000, 0x67c00000-1, IORESOURCE_MEM) |
454 | .start = 0x62000000, | 257 | |
455 | .end = 0x62700000 - 1, /* 7 MB total */ | ||
456 | .flags = IORESOURCE_IO, | ||
457 | }, | ||
458 | /* | 258 | /* |
459 | * | ||
460 | * GHW HAL Driver | 259 | * GHW HAL Driver |
461 | * | ||
462 | * This driver requires: | ||
463 | * | ||
464 | * Arbitrary Based Buffers: | ||
465 | * GraphicsHeap - PowerTV Graphics Heap | ||
466 | * | ||
467 | */ | 260 | */ |
468 | { | 261 | /* PowerTV Graphics Heap (14MiB) */ |
469 | .name = "GraphicsHeap", | 262 | PREALLOC_NORMAL("GraphicsHeap", 0x62700000, 0x63500000-1, |
470 | .start = 0x62700000, | 263 | IORESOURCE_MEM) |
471 | .end = 0x63500000 - 1, /* 14 MB total */ | 264 | |
472 | .flags = IORESOURCE_IO, | ||
473 | }, | ||
474 | /* | 265 | /* |
475 | * | ||
476 | * multi com buffer area | 266 | * multi com buffer area |
477 | * | ||
478 | * This driver requires: | ||
479 | * | ||
480 | * Arbitrary Based Buffers: | ||
481 | * Docsis - | ||
482 | * | ||
483 | */ | 267 | */ |
484 | { | 268 | /* 128KiB */ |
485 | .name = "MulticomSHM", | 269 | PREALLOC_NORMAL("MulticomSHM", 0x26000000, 0x26020000-1, |
486 | .start = 0x26000000, | 270 | IORESOURCE_MEM) |
487 | .end = 0x26020000 - 1, | 271 | |
488 | .flags = IORESOURCE_MEM, | ||
489 | }, | ||
490 | /* | 272 | /* |
491 | * | 273 | * DMA Ring buffer (don't need recording buffers) |
492 | * DMA Ring buffer | ||
493 | * | ||
494 | * This driver requires: | ||
495 | * | ||
496 | * Arbitrary Based Buffers: | ||
497 | * Docsis - | ||
498 | * | ||
499 | */ | 274 | */ |
500 | { | 275 | /* 680KiB */ |
501 | .name = "BMM_Buffer", | 276 | PREALLOC_NORMAL("BMM_Buffer", 0x00000000, 0x000AA000-1, |
502 | .start = 0x00000000, | 277 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
503 | .end = 0x000AA000 - 1, | 278 | |
504 | .flags = IORESOURCE_MEM, | ||
505 | }, | ||
506 | /* | 279 | /* |
507 | * | ||
508 | * Display bins buffer for unit0 | 280 | * Display bins buffer for unit0 |
509 | * | ||
510 | * This driver requires: | ||
511 | * | ||
512 | * Arbitrary Based Buffers: | ||
513 | * Display Bins for unit0 | ||
514 | * | ||
515 | */ | 281 | */ |
516 | { | 282 | /* 4KiB */ |
517 | .name = "DisplayBins0", | 283 | PREALLOC_NORMAL("DisplayBins0", 0x00000000, 0x00001000-1, |
518 | .start = 0x00000000, | 284 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
519 | .end = 0x00000FFF, /* 4 KB total */ | 285 | |
520 | .flags = IORESOURCE_MEM, | ||
521 | }, | ||
522 | /* | 286 | /* |
523 | * | 287 | * Display bins buffer for unit1 |
524 | * Display bins buffer | ||
525 | * | ||
526 | * This driver requires: | ||
527 | * | ||
528 | * Arbitrary Based Buffers: | ||
529 | * Display Bins for unit1 | ||
530 | * | ||
531 | */ | 288 | */ |
532 | { | 289 | /* 4KiB */ |
533 | .name = "DisplayBins1", | 290 | PREALLOC_NORMAL("DisplayBins1", 0x00000000, 0x00001000-1, |
534 | .start = 0x64AD4000, | 291 | IORESOURCE_MEM) |
535 | .end = 0x64AD5000 - 1, /* 4 KB total */ | 292 | |
536 | .flags = IORESOURCE_IO, | ||
537 | }, | ||
538 | /* | 293 | /* |
539 | * | ||
540 | * AVFS: player HAL memory | 294 | * AVFS: player HAL memory |
541 | * | ||
542 | * | ||
543 | */ | 295 | */ |
544 | { | 296 | /* 945K * 3 for playback */ |
545 | .name = "AvfsDmaMem", | 297 | PREALLOC_NORMAL("AvfsDmaMem", 0x00000000, 0x002c4c00-1, IORESOURCE_MEM) |
546 | .start = 0x6430E000, | 298 | |
547 | .end = 0x645D2C00 - 1, /* 945K * 3 for playback */ | ||
548 | .flags = IORESOURCE_IO, | ||
549 | }, | ||
550 | /* | 299 | /* |
551 | * | ||
552 | * PMEM | 300 | * PMEM |
553 | * | ||
554 | * This driver requires: | ||
555 | * | ||
556 | * Arbitrary Based Buffers: | ||
557 | * Persistent memory for diagnostics. | ||
558 | * | ||
559 | */ | 301 | */ |
560 | { | 302 | /* Persistent memory for diagnostics (64KiB) */ |
561 | .name = "DiagPersistentMemory", | 303 | PREALLOC_PMEM("DiagPersistentMemory", 0x00000000, 0x10000-1, |
562 | .start = 0x00000000, | 304 | (IORESOURCE_MEM|IORESOURCE_PTV_RES_LOEXT)) |
563 | .end = 0x10000 - 1, | 305 | |
564 | .flags = IORESOURCE_MEM, | ||
565 | }, | ||
566 | /* | 306 | /* |
567 | * | ||
568 | * Smartcard | 307 | * Smartcard |
569 | * | ||
570 | * This driver requires: | ||
571 | * | ||
572 | * Arbitrary Based Buffers: | ||
573 | * Read and write buffers for Internal/External cards | ||
574 | * | ||
575 | */ | 308 | */ |
576 | { | 309 | /* Read and write buffers for Internal/External cards (10KiB) */ |
577 | .name = "SmartCardInfo", | 310 | PREALLOC_NORMAL("SmartCardInfo", 0x00000000, 0x2800-1, IORESOURCE_MEM) |
578 | .start = 0x64AD1000, | 311 | |
579 | .end = 0x64AD3800 - 1, | ||
580 | .flags = IORESOURCE_IO, | ||
581 | }, | ||
582 | /* | 312 | /* |
583 | * | ||
584 | * KAVNET | 313 | * KAVNET |
585 | * NP Reset Vector - must be of the form xxCxxxxx | 314 | */ |
586 | * NP Image - must be video bank 1 | 315 | /* NP Reset Vector - must be of the form xxCxxxxx (4KiB) */ |
587 | * NP IPC - must be video bank 2 | 316 | PREALLOC_NORMAL("NP_Reset_Vector", 0x27c00000, 0x27c01000-1, |
317 | IORESOURCE_MEM) | ||
318 | /* NP Image - must be video bank 1 (320KiB) */ | ||
319 | PREALLOC_NORMAL("NP_Image", 0x27020000, 0x27070000-1, IORESOURCE_MEM) | ||
320 | /* NP IPC - must be video bank 2 (512KiB) */ | ||
321 | PREALLOC_NORMAL("NP_IPC", 0x63500000, 0x63580000-1, IORESOURCE_MEM) | ||
322 | |||
323 | /* | ||
324 | * NAND Flash | ||
325 | */ | ||
326 | /* 10KiB */ | ||
327 | PREALLOC_NORMAL("NandFlash", NAND_FLASH_BASE, NAND_FLASH_BASE+0x400-1, | ||
328 | IORESOURCE_MEM) | ||
329 | |||
330 | /* | ||
331 | * Add other resources here | ||
332 | */ | ||
333 | |||
334 | /* | ||
335 | * End of Resource marker | ||
588 | */ | 336 | */ |
589 | { | 337 | { |
590 | .name = "NP_Reset_Vector", | 338 | .flags = 0, |
591 | .start = 0x27c00000, | ||
592 | .end = 0x27c01000 - 1, | ||
593 | .flags = IORESOURCE_MEM, | ||
594 | }, | ||
595 | { | ||
596 | .name = "NP_Image", | ||
597 | .start = 0x27020000, | ||
598 | .end = 0x27060000 - 1, | ||
599 | .flags = IORESOURCE_MEM, | ||
600 | }, | ||
601 | { | ||
602 | .name = "NP_IPC", | ||
603 | .start = 0x63500000, | ||
604 | .end = 0x63580000 - 1, | ||
605 | .flags = IORESOURCE_IO, | ||
606 | }, | 339 | }, |
607 | { }, | ||
608 | }; | 340 | }; |