aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/powertv/asic/prealloc-cronus.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/powertv/asic/prealloc-cronus.c')
-rw-r--r--arch/mips/powertv/asic/prealloc-cronus.c668
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 @@
30struct resource dvr_cronus_resources[] __initdata = 32struct 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 =
337struct resource non_dvr_cronus_resources[] __initdata = 195struct 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};