1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2017-2021 NVIDIA CORPORATION. All rights reserved.
4 */
5
6#include <soc/tegra/mc.h>
7
8#include <dt-bindings/memory/tegra194-mc.h>
9
10#include "mc.h"
11
12static const struct tegra_mc_client tegra194_mc_clients[] = {
13 {
14 .id = TEGRA194_MEMORY_CLIENT_PTCR,
15 .name = "ptcr",
16 .sid = TEGRA194_SID_PASSTHROUGH,
17 .regs = {
18 .sid = {
19 .override = 0x000,
20 .security = 0x004,
21 },
22 },
23 }, {
24 .id = TEGRA194_MEMORY_CLIENT_MIU7R,
25 .name = "miu7r",
26 .sid = TEGRA194_SID_MIU,
27 .regs = {
28 .sid = {
29 .override = 0x008,
30 .security = 0x00c,
31 },
32 },
33 }, {
34 .id = TEGRA194_MEMORY_CLIENT_MIU7W,
35 .name = "miu7w",
36 .sid = TEGRA194_SID_MIU,
37 .regs = {
38 .sid = {
39 .override = 0x010,
40 .security = 0x014,
41 },
42 },
43 }, {
44 .id = TEGRA194_MEMORY_CLIENT_HDAR,
45 .name = "hdar",
46 .sid = TEGRA194_SID_HDA,
47 .regs = {
48 .sid = {
49 .override = 0x0a8,
50 .security = 0x0ac,
51 },
52 },
53 }, {
54 .id = TEGRA194_MEMORY_CLIENT_HOST1XDMAR,
55 .name = "host1xdmar",
56 .sid = TEGRA194_SID_HOST1X,
57 .regs = {
58 .sid = {
59 .override = 0x0b0,
60 .security = 0x0b4,
61 },
62 },
63 }, {
64 .id = TEGRA194_MEMORY_CLIENT_NVENCSRD,
65 .name = "nvencsrd",
66 .sid = TEGRA194_SID_NVENC,
67 .regs = {
68 .sid = {
69 .override = 0x0e0,
70 .security = 0x0e4,
71 },
72 },
73 }, {
74 .id = TEGRA194_MEMORY_CLIENT_SATAR,
75 .name = "satar",
76 .sid = TEGRA194_SID_SATA,
77 .regs = {
78 .sid = {
79 .override = 0x0f8,
80 .security = 0x0fc,
81 },
82 },
83 }, {
84 .id = TEGRA194_MEMORY_CLIENT_MPCORER,
85 .name = "mpcorer",
86 .sid = TEGRA194_SID_PASSTHROUGH,
87 .regs = {
88 .sid = {
89 .override = 0x138,
90 .security = 0x13c,
91 },
92 },
93 }, {
94 .id = TEGRA194_MEMORY_CLIENT_NVENCSWR,
95 .name = "nvencswr",
96 .sid = TEGRA194_SID_NVENC,
97 .regs = {
98 .sid = {
99 .override = 0x158,
100 .security = 0x15c,
101 },
102 },
103 }, {
104 .id = TEGRA194_MEMORY_CLIENT_HDAW,
105 .name = "hdaw",
106 .sid = TEGRA194_SID_HDA,
107 .regs = {
108 .sid = {
109 .override = 0x1a8,
110 .security = 0x1ac,
111 },
112 },
113 }, {
114 .id = TEGRA194_MEMORY_CLIENT_MPCOREW,
115 .name = "mpcorew",
116 .sid = TEGRA194_SID_PASSTHROUGH,
117 .regs = {
118 .sid = {
119 .override = 0x1c8,
120 .security = 0x1cc,
121 },
122 },
123 }, {
124 .id = TEGRA194_MEMORY_CLIENT_SATAW,
125 .name = "sataw",
126 .sid = TEGRA194_SID_SATA,
127 .regs = {
128 .sid = {
129 .override = 0x1e8,
130 .security = 0x1ec,
131 },
132 },
133 }, {
134 .id = TEGRA194_MEMORY_CLIENT_ISPRA,
135 .name = "ispra",
136 .sid = TEGRA194_SID_ISP,
137 .regs = {
138 .sid = {
139 .override = 0x220,
140 .security = 0x224,
141 },
142 },
143 }, {
144 .id = TEGRA194_MEMORY_CLIENT_ISPFALR,
145 .name = "ispfalr",
146 .sid = TEGRA194_SID_ISP_FALCON,
147 .regs = {
148 .sid = {
149 .override = 0x228,
150 .security = 0x22c,
151 },
152 },
153 }, {
154 .id = TEGRA194_MEMORY_CLIENT_ISPWA,
155 .name = "ispwa",
156 .sid = TEGRA194_SID_ISP,
157 .regs = {
158 .sid = {
159 .override = 0x230,
160 .security = 0x234,
161 },
162 },
163 }, {
164 .id = TEGRA194_MEMORY_CLIENT_ISPWB,
165 .name = "ispwb",
166 .sid = TEGRA194_SID_ISP,
167 .regs = {
168 .sid = {
169 .override = 0x238,
170 .security = 0x23c,
171 },
172 },
173 }, {
174 .id = TEGRA194_MEMORY_CLIENT_XUSB_HOSTR,
175 .name = "xusb_hostr",
176 .sid = TEGRA194_SID_XUSB_HOST,
177 .regs = {
178 .sid = {
179 .override = 0x250,
180 .security = 0x254,
181 },
182 },
183 }, {
184 .id = TEGRA194_MEMORY_CLIENT_XUSB_HOSTW,
185 .name = "xusb_hostw",
186 .sid = TEGRA194_SID_XUSB_HOST,
187 .regs = {
188 .sid = {
189 .override = 0x258,
190 .security = 0x25c,
191 },
192 },
193 }, {
194 .id = TEGRA194_MEMORY_CLIENT_XUSB_DEVR,
195 .name = "xusb_devr",
196 .sid = TEGRA194_SID_XUSB_DEV,
197 .regs = {
198 .sid = {
199 .override = 0x260,
200 .security = 0x264,
201 },
202 },
203 }, {
204 .id = TEGRA194_MEMORY_CLIENT_XUSB_DEVW,
205 .name = "xusb_devw",
206 .sid = TEGRA194_SID_XUSB_DEV,
207 .regs = {
208 .sid = {
209 .override = 0x268,
210 .security = 0x26c,
211 },
212 },
213 }, {
214 .id = TEGRA194_MEMORY_CLIENT_SDMMCRA,
215 .name = "sdmmcra",
216 .sid = TEGRA194_SID_SDMMC1,
217 .regs = {
218 .sid = {
219 .override = 0x300,
220 .security = 0x304,
221 },
222 },
223 }, {
224 .id = TEGRA194_MEMORY_CLIENT_SDMMCR,
225 .name = "sdmmcr",
226 .sid = TEGRA194_SID_SDMMC3,
227 .regs = {
228 .sid = {
229 .override = 0x310,
230 .security = 0x314,
231 },
232 },
233 }, {
234 .id = TEGRA194_MEMORY_CLIENT_SDMMCRAB,
235 .name = "sdmmcrab",
236 .sid = TEGRA194_SID_SDMMC4,
237 .regs = {
238 .sid = {
239 .override = 0x318,
240 .security = 0x31c,
241 },
242 },
243 }, {
244 .id = TEGRA194_MEMORY_CLIENT_SDMMCWA,
245 .name = "sdmmcwa",
246 .sid = TEGRA194_SID_SDMMC1,
247 .regs = {
248 .sid = {
249 .override = 0x320,
250 .security = 0x324,
251 },
252 },
253 }, {
254 .id = TEGRA194_MEMORY_CLIENT_SDMMCW,
255 .name = "sdmmcw",
256 .sid = TEGRA194_SID_SDMMC3,
257 .regs = {
258 .sid = {
259 .override = 0x330,
260 .security = 0x334,
261 },
262 },
263 }, {
264 .id = TEGRA194_MEMORY_CLIENT_SDMMCWAB,
265 .name = "sdmmcwab",
266 .sid = TEGRA194_SID_SDMMC4,
267 .regs = {
268 .sid = {
269 .override = 0x338,
270 .security = 0x33c,
271 },
272 },
273 }, {
274 .id = TEGRA194_MEMORY_CLIENT_VICSRD,
275 .name = "vicsrd",
276 .sid = TEGRA194_SID_VIC,
277 .regs = {
278 .sid = {
279 .override = 0x360,
280 .security = 0x364,
281 },
282 },
283 }, {
284 .id = TEGRA194_MEMORY_CLIENT_VICSWR,
285 .name = "vicswr",
286 .sid = TEGRA194_SID_VIC,
287 .regs = {
288 .sid = {
289 .override = 0x368,
290 .security = 0x36c,
291 },
292 },
293 }, {
294 .id = TEGRA194_MEMORY_CLIENT_VIW,
295 .name = "viw",
296 .sid = TEGRA194_SID_VI,
297 .regs = {
298 .sid = {
299 .override = 0x390,
300 .security = 0x394,
301 },
302 },
303 }, {
304 .id = TEGRA194_MEMORY_CLIENT_NVDECSRD,
305 .name = "nvdecsrd",
306 .sid = TEGRA194_SID_NVDEC,
307 .regs = {
308 .sid = {
309 .override = 0x3c0,
310 .security = 0x3c4,
311 },
312 },
313 }, {
314 .id = TEGRA194_MEMORY_CLIENT_NVDECSWR,
315 .name = "nvdecswr",
316 .sid = TEGRA194_SID_NVDEC,
317 .regs = {
318 .sid = {
319 .override = 0x3c8,
320 .security = 0x3cc,
321 },
322 },
323 }, {
324 .id = TEGRA194_MEMORY_CLIENT_APER,
325 .name = "aper",
326 .sid = TEGRA194_SID_APE,
327 .regs = {
328 .sid = {
329 .override = 0x3c0,
330 .security = 0x3c4,
331 },
332 },
333 }, {
334 .id = TEGRA194_MEMORY_CLIENT_APEW,
335 .name = "apew",
336 .sid = TEGRA194_SID_APE,
337 .regs = {
338 .sid = {
339 .override = 0x3d0,
340 .security = 0x3d4,
341 },
342 },
343 }, {
344 .id = TEGRA194_MEMORY_CLIENT_NVJPGSRD,
345 .name = "nvjpgsrd",
346 .sid = TEGRA194_SID_NVJPG,
347 .regs = {
348 .sid = {
349 .override = 0x3f0,
350 .security = 0x3f4,
351 },
352 },
353 }, {
354 .id = TEGRA194_MEMORY_CLIENT_NVJPGSWR,
355 .name = "nvjpgswr",
356 .sid = TEGRA194_SID_NVJPG,
357 .regs = {
358 .sid = {
359 .override = 0x3f0,
360 .security = 0x3f4,
361 },
362 },
363 }, {
364 .name = "axiapr",
365 .id = TEGRA194_MEMORY_CLIENT_AXIAPR,
366 .sid = TEGRA194_SID_PASSTHROUGH,
367 .regs = {
368 .sid = {
369 .override = 0x410,
370 .security = 0x414,
371 },
372 },
373 }, {
374 .id = TEGRA194_MEMORY_CLIENT_AXIAPW,
375 .name = "axiapw",
376 .sid = TEGRA194_SID_PASSTHROUGH,
377 .regs = {
378 .sid = {
379 .override = 0x418,
380 .security = 0x41c,
381 },
382 },
383 }, {
384 .id = TEGRA194_MEMORY_CLIENT_ETRR,
385 .name = "etrr",
386 .sid = TEGRA194_SID_ETR,
387 .regs = {
388 .sid = {
389 .override = 0x420,
390 .security = 0x424,
391 },
392 },
393 }, {
394 .id = TEGRA194_MEMORY_CLIENT_ETRW,
395 .name = "etrw",
396 .sid = TEGRA194_SID_ETR,
397 .regs = {
398 .sid = {
399 .override = 0x428,
400 .security = 0x42c,
401 },
402 },
403 }, {
404 .id = TEGRA194_MEMORY_CLIENT_AXISR,
405 .name = "axisr",
406 .sid = TEGRA194_SID_PASSTHROUGH,
407 .regs = {
408 .sid = {
409 .override = 0x460,
410 .security = 0x464,
411 },
412 },
413 }, {
414 .id = TEGRA194_MEMORY_CLIENT_AXISW,
415 .name = "axisw",
416 .sid = TEGRA194_SID_PASSTHROUGH,
417 .regs = {
418 .sid = {
419 .override = 0x468,
420 .security = 0x46c,
421 },
422 },
423 }, {
424 .id = TEGRA194_MEMORY_CLIENT_EQOSR,
425 .name = "eqosr",
426 .sid = TEGRA194_SID_EQOS,
427 .regs = {
428 .sid = {
429 .override = 0x470,
430 .security = 0x474,
431 },
432 },
433 }, {
434 .name = "eqosw",
435 .id = TEGRA194_MEMORY_CLIENT_EQOSW,
436 .sid = TEGRA194_SID_EQOS,
437 .regs = {
438 .sid = {
439 .override = 0x478,
440 .security = 0x47c,
441 },
442 },
443 }, {
444 .id = TEGRA194_MEMORY_CLIENT_UFSHCR,
445 .name = "ufshcr",
446 .sid = TEGRA194_SID_UFSHC,
447 .regs = {
448 .sid = {
449 .override = 0x480,
450 .security = 0x484,
451 },
452 },
453 }, {
454 .id = TEGRA194_MEMORY_CLIENT_UFSHCW,
455 .name = "ufshcw",
456 .sid = TEGRA194_SID_UFSHC,
457 .regs = {
458 .sid = {
459 .override = 0x488,
460 .security = 0x48c,
461 },
462 },
463 }, {
464 .id = TEGRA194_MEMORY_CLIENT_NVDISPLAYR,
465 .name = "nvdisplayr",
466 .sid = TEGRA194_SID_NVDISPLAY,
467 .regs = {
468 .sid = {
469 .override = 0x490,
470 .security = 0x494,
471 },
472 },
473 }, {
474 .id = TEGRA194_MEMORY_CLIENT_BPMPR,
475 .name = "bpmpr",
476 .sid = TEGRA194_SID_BPMP,
477 .regs = {
478 .sid = {
479 .override = 0x498,
480 .security = 0x49c,
481 },
482 },
483 }, {
484 .id = TEGRA194_MEMORY_CLIENT_BPMPW,
485 .name = "bpmpw",
486 .sid = TEGRA194_SID_BPMP,
487 .regs = {
488 .sid = {
489 .override = 0x4a0,
490 .security = 0x4a4,
491 },
492 },
493 }, {
494 .id = TEGRA194_MEMORY_CLIENT_BPMPDMAR,
495 .name = "bpmpdmar",
496 .sid = TEGRA194_SID_BPMP,
497 .regs = {
498 .sid = {
499 .override = 0x4a8,
500 .security = 0x4ac,
501 },
502 },
503 }, {
504 .id = TEGRA194_MEMORY_CLIENT_BPMPDMAW,
505 .name = "bpmpdmaw",
506 .sid = TEGRA194_SID_BPMP,
507 .regs = {
508 .sid = {
509 .override = 0x4b0,
510 .security = 0x4b4,
511 },
512 },
513 }, {
514 .id = TEGRA194_MEMORY_CLIENT_AONR,
515 .name = "aonr",
516 .sid = TEGRA194_SID_AON,
517 .regs = {
518 .sid = {
519 .override = 0x4b8,
520 .security = 0x4bc,
521 },
522 },
523 }, {
524 .id = TEGRA194_MEMORY_CLIENT_AONW,
525 .name = "aonw",
526 .sid = TEGRA194_SID_AON,
527 .regs = {
528 .sid = {
529 .override = 0x4c0,
530 .security = 0x4c4,
531 },
532 },
533 }, {
534 .id = TEGRA194_MEMORY_CLIENT_AONDMAR,
535 .name = "aondmar",
536 .sid = TEGRA194_SID_AON,
537 .regs = {
538 .sid = {
539 .override = 0x4c8,
540 .security = 0x4cc,
541 },
542 },
543 }, {
544 .id = TEGRA194_MEMORY_CLIENT_AONDMAW,
545 .name = "aondmaw",
546 .sid = TEGRA194_SID_AON,
547 .regs = {
548 .sid = {
549 .override = 0x4d0,
550 .security = 0x4d4,
551 },
552 },
553 }, {
554 .id = TEGRA194_MEMORY_CLIENT_SCER,
555 .name = "scer",
556 .sid = TEGRA194_SID_SCE,
557 .regs = {
558 .sid = {
559 .override = 0x4d8,
560 .security = 0x4dc,
561 },
562 },
563 }, {
564 .id = TEGRA194_MEMORY_CLIENT_SCEW,
565 .name = "scew",
566 .sid = TEGRA194_SID_SCE,
567 .regs = {
568 .sid = {
569 .override = 0x4e0,
570 .security = 0x4e4,
571 },
572 },
573 }, {
574 .id = TEGRA194_MEMORY_CLIENT_SCEDMAR,
575 .name = "scedmar",
576 .sid = TEGRA194_SID_SCE,
577 .regs = {
578 .sid = {
579 .override = 0x4e8,
580 .security = 0x4ec,
581 },
582 },
583 }, {
584 .id = TEGRA194_MEMORY_CLIENT_SCEDMAW,
585 .name = "scedmaw",
586 .sid = TEGRA194_SID_SCE,
587 .regs = {
588 .sid = {
589 .override = 0x4f0,
590 .security = 0x4f4,
591 },
592 },
593 }, {
594 .id = TEGRA194_MEMORY_CLIENT_APEDMAR,
595 .name = "apedmar",
596 .sid = TEGRA194_SID_APE,
597 .regs = {
598 .sid = {
599 .override = 0x4f8,
600 .security = 0x4fc,
601 },
602 },
603 }, {
604 .id = TEGRA194_MEMORY_CLIENT_APEDMAW,
605 .name = "apedmaw",
606 .sid = TEGRA194_SID_APE,
607 .regs = {
608 .sid = {
609 .override = 0x500,
610 .security = 0x504,
611 },
612 },
613 }, {
614 .id = TEGRA194_MEMORY_CLIENT_NVDISPLAYR1,
615 .name = "nvdisplayr1",
616 .sid = TEGRA194_SID_NVDISPLAY,
617 .regs = {
618 .sid = {
619 .override = 0x508,
620 .security = 0x50c,
621 },
622 },
623 }, {
624 .id = TEGRA194_MEMORY_CLIENT_VICSRD1,
625 .name = "vicsrd1",
626 .sid = TEGRA194_SID_VIC,
627 .regs = {
628 .sid = {
629 .override = 0x510,
630 .security = 0x514,
631 },
632 },
633 }, {
634 .id = TEGRA194_MEMORY_CLIENT_NVDECSRD1,
635 .name = "nvdecsrd1",
636 .sid = TEGRA194_SID_NVDEC,
637 .regs = {
638 .sid = {
639 .override = 0x518,
640 .security = 0x51c,
641 },
642 },
643 }, {
644 .id = TEGRA194_MEMORY_CLIENT_MIU0R,
645 .name = "miu0r",
646 .sid = TEGRA194_SID_MIU,
647 .regs = {
648 .sid = {
649 .override = 0x530,
650 .security = 0x534,
651 },
652 },
653 }, {
654 .name = "miu0w",
655 .id = TEGRA194_MEMORY_CLIENT_MIU0W,
656 .sid = TEGRA194_SID_MIU,
657 .regs = {
658 .sid = {
659 .override = 0x538,
660 .security = 0x53c,
661 },
662 },
663 }, {
664 .id = TEGRA194_MEMORY_CLIENT_MIU1R,
665 .name = "miu1r",
666 .sid = TEGRA194_SID_MIU,
667 .regs = {
668 .sid = {
669 .override = 0x540,
670 .security = 0x544,
671 },
672 },
673 }, {
674 .id = TEGRA194_MEMORY_CLIENT_MIU1W,
675 .name = "miu1w",
676 .sid = TEGRA194_SID_MIU,
677 .regs = {
678 .sid = {
679 .override = 0x548,
680 .security = 0x54c,
681 },
682 },
683 }, {
684 .id = TEGRA194_MEMORY_CLIENT_MIU2R,
685 .name = "miu2r",
686 .sid = TEGRA194_SID_MIU,
687 .regs = {
688 .sid = {
689 .override = 0x570,
690 .security = 0x574,
691 },
692 },
693 }, {
694 .id = TEGRA194_MEMORY_CLIENT_MIU2W,
695 .name = "miu2w",
696 .sid = TEGRA194_SID_MIU,
697 .regs = {
698 .sid = {
699 .override = 0x578,
700 .security = 0x57c,
701 },
702 },
703 }, {
704 .id = TEGRA194_MEMORY_CLIENT_MIU3R,
705 .name = "miu3r",
706 .sid = TEGRA194_SID_MIU,
707 .regs = {
708 .sid = {
709 .override = 0x580,
710 .security = 0x584,
711 },
712 },
713 }, {
714 .id = TEGRA194_MEMORY_CLIENT_MIU3W,
715 .name = "miu3w",
716 .sid = TEGRA194_SID_MIU,
717 .regs = {
718 .sid = {
719 .override = 0x588,
720 .security = 0x58c,
721 },
722 },
723 }, {
724 .id = TEGRA194_MEMORY_CLIENT_MIU4R,
725 .name = "miu4r",
726 .sid = TEGRA194_SID_MIU,
727 .regs = {
728 .sid = {
729 .override = 0x590,
730 .security = 0x594,
731 },
732 },
733 }, {
734 .id = TEGRA194_MEMORY_CLIENT_MIU4W,
735 .name = "miu4w",
736 .sid = TEGRA194_SID_MIU,
737 .regs = {
738 .sid = {
739 .override = 0x598,
740 .security = 0x59c,
741 },
742 },
743 }, {
744 .id = TEGRA194_MEMORY_CLIENT_DPMUR,
745 .name = "dpmur",
746 .sid = TEGRA194_SID_PASSTHROUGH,
747 .regs = {
748 .sid = {
749 .override = 0x598,
750 .security = 0x59c,
751 },
752 },
753 }, {
754 .id = TEGRA194_MEMORY_CLIENT_VIFALR,
755 .name = "vifalr",
756 .sid = TEGRA194_SID_VI_FALCON,
757 .regs = {
758 .sid = {
759 .override = 0x5e0,
760 .security = 0x5e4,
761 },
762 },
763 }, {
764 .id = TEGRA194_MEMORY_CLIENT_VIFALW,
765 .name = "vifalw",
766 .sid = TEGRA194_SID_VI_FALCON,
767 .regs = {
768 .sid = {
769 .override = 0x5e8,
770 .security = 0x5ec,
771 },
772 },
773 }, {
774 .id = TEGRA194_MEMORY_CLIENT_DLA0RDA,
775 .name = "dla0rda",
776 .sid = TEGRA194_SID_NVDLA0,
777 .regs = {
778 .sid = {
779 .override = 0x5f0,
780 .security = 0x5f4,
781 },
782 },
783 }, {
784 .id = TEGRA194_MEMORY_CLIENT_DLA0FALRDB,
785 .name = "dla0falrdb",
786 .sid = TEGRA194_SID_NVDLA0,
787 .regs = {
788 .sid = {
789 .override = 0x5f8,
790 .security = 0x5fc,
791 },
792 },
793 }, {
794 .id = TEGRA194_MEMORY_CLIENT_DLA0WRA,
795 .name = "dla0wra",
796 .sid = TEGRA194_SID_NVDLA0,
797 .regs = {
798 .sid = {
799 .override = 0x600,
800 .security = 0x604,
801 },
802 },
803 }, {
804 .id = TEGRA194_MEMORY_CLIENT_DLA0FALWRB,
805 .name = "dla0falwrb",
806 .sid = TEGRA194_SID_NVDLA0,
807 .regs = {
808 .sid = {
809 .override = 0x608,
810 .security = 0x60c,
811 },
812 },
813 }, {
814 .id = TEGRA194_MEMORY_CLIENT_DLA1RDA,
815 .name = "dla1rda",
816 .sid = TEGRA194_SID_NVDLA1,
817 .regs = {
818 .sid = {
819 .override = 0x610,
820 .security = 0x614,
821 },
822 },
823 }, {
824 .id = TEGRA194_MEMORY_CLIENT_DLA1FALRDB,
825 .name = "dla1falrdb",
826 .sid = TEGRA194_SID_NVDLA1,
827 .regs = {
828 .sid = {
829 .override = 0x618,
830 .security = 0x61c,
831 },
832 },
833 }, {
834 .id = TEGRA194_MEMORY_CLIENT_DLA1WRA,
835 .name = "dla1wra",
836 .sid = TEGRA194_SID_NVDLA1,
837 .regs = {
838 .sid = {
839 .override = 0x620,
840 .security = 0x624,
841 },
842 },
843 }, {
844 .id = TEGRA194_MEMORY_CLIENT_DLA1FALWRB,
845 .name = "dla1falwrb",
846 .sid = TEGRA194_SID_NVDLA1,
847 .regs = {
848 .sid = {
849 .override = 0x628,
850 .security = 0x62c,
851 },
852 },
853 }, {
854 .id = TEGRA194_MEMORY_CLIENT_PVA0RDA,
855 .name = "pva0rda",
856 .sid = TEGRA194_SID_PVA0,
857 .regs = {
858 .sid = {
859 .override = 0x630,
860 .security = 0x634,
861 },
862 },
863 }, {
864 .id = TEGRA194_MEMORY_CLIENT_PVA0RDB,
865 .name = "pva0rdb",
866 .sid = TEGRA194_SID_PVA0,
867 .regs = {
868 .sid = {
869 .override = 0x638,
870 .security = 0x63c,
871 },
872 },
873 }, {
874 .id = TEGRA194_MEMORY_CLIENT_PVA0RDC,
875 .name = "pva0rdc",
876 .sid = TEGRA194_SID_PVA0,
877 .regs = {
878 .sid = {
879 .override = 0x640,
880 .security = 0x644,
881 },
882 },
883 }, {
884 .id = TEGRA194_MEMORY_CLIENT_PVA0WRA,
885 .name = "pva0wra",
886 .sid = TEGRA194_SID_PVA0,
887 .regs = {
888 .sid = {
889 .override = 0x648,
890 .security = 0x64c,
891 },
892 },
893 }, {
894 .id = TEGRA194_MEMORY_CLIENT_PVA0WRB,
895 .name = "pva0wrb",
896 .sid = TEGRA194_SID_PVA0,
897 .regs = {
898 .sid = {
899 .override = 0x650,
900 .security = 0x654,
901 },
902 },
903 }, {
904 .id = TEGRA194_MEMORY_CLIENT_PVA0WRC,
905 .name = "pva0wrc",
906 .sid = TEGRA194_SID_PVA0,
907 .regs = {
908 .sid = {
909 .override = 0x658,
910 .security = 0x65c,
911 },
912 },
913 }, {
914 .id = TEGRA194_MEMORY_CLIENT_PVA1RDA,
915 .name = "pva1rda",
916 .sid = TEGRA194_SID_PVA1,
917 .regs = {
918 .sid = {
919 .override = 0x660,
920 .security = 0x664,
921 },
922 },
923 }, {
924 .id = TEGRA194_MEMORY_CLIENT_PVA1RDB,
925 .name = "pva1rdb",
926 .sid = TEGRA194_SID_PVA1,
927 .regs = {
928 .sid = {
929 .override = 0x668,
930 .security = 0x66c,
931 },
932 },
933 }, {
934 .id = TEGRA194_MEMORY_CLIENT_PVA1RDC,
935 .name = "pva1rdc",
936 .sid = TEGRA194_SID_PVA1,
937 .regs = {
938 .sid = {
939 .override = 0x670,
940 .security = 0x674,
941 },
942 },
943 }, {
944 .id = TEGRA194_MEMORY_CLIENT_PVA1WRA,
945 .name = "pva1wra",
946 .sid = TEGRA194_SID_PVA1,
947 .regs = {
948 .sid = {
949 .override = 0x678,
950 .security = 0x67c,
951 },
952 },
953 }, {
954 .id = TEGRA194_MEMORY_CLIENT_PVA1WRB,
955 .name = "pva1wrb",
956 .sid = TEGRA194_SID_PVA1,
957 .regs = {
958 .sid = {
959 .override = 0x680,
960 .security = 0x684,
961 },
962 },
963 }, {
964 .id = TEGRA194_MEMORY_CLIENT_PVA1WRC,
965 .name = "pva1wrc",
966 .sid = TEGRA194_SID_PVA1,
967 .regs = {
968 .sid = {
969 .override = 0x688,
970 .security = 0x68c,
971 },
972 },
973 }, {
974 .id = TEGRA194_MEMORY_CLIENT_RCER,
975 .name = "rcer",
976 .sid = TEGRA194_SID_RCE,
977 .regs = {
978 .sid = {
979 .override = 0x690,
980 .security = 0x694,
981 },
982 },
983 }, {
984 .id = TEGRA194_MEMORY_CLIENT_RCEW,
985 .name = "rcew",
986 .sid = TEGRA194_SID_RCE,
987 .regs = {
988 .sid = {
989 .override = 0x698,
990 .security = 0x69c,
991 },
992 },
993 }, {
994 .id = TEGRA194_MEMORY_CLIENT_RCEDMAR,
995 .name = "rcedmar",
996 .sid = TEGRA194_SID_RCE,
997 .regs = {
998 .sid = {
999 .override = 0x6a0,
1000 .security = 0x6a4,
1001 },
1002 },
1003 }, {
1004 .id = TEGRA194_MEMORY_CLIENT_RCEDMAW,
1005 .name = "rcedmaw",
1006 .sid = TEGRA194_SID_RCE,
1007 .regs = {
1008 .sid = {
1009 .override = 0x6a8,
1010 .security = 0x6ac,
1011 },
1012 },
1013 }, {
1014 .id = TEGRA194_MEMORY_CLIENT_NVENC1SRD,
1015 .name = "nvenc1srd",
1016 .sid = TEGRA194_SID_NVENC1,
1017 .regs = {
1018 .sid = {
1019 .override = 0x6b0,
1020 .security = 0x6b4,
1021 },
1022 },
1023 }, {
1024 .id = TEGRA194_MEMORY_CLIENT_NVENC1SWR,
1025 .name = "nvenc1swr",
1026 .sid = TEGRA194_SID_NVENC1,
1027 .regs = {
1028 .sid = {
1029 .override = 0x6b8,
1030 .security = 0x6bc,
1031 },
1032 },
1033 }, {
1034 .id = TEGRA194_MEMORY_CLIENT_PCIE0R,
1035 .name = "pcie0r",
1036 .sid = TEGRA194_SID_PCIE0,
1037 .regs = {
1038 .sid = {
1039 .override = 0x6c0,
1040 .security = 0x6c4,
1041 },
1042 },
1043 }, {
1044 .id = TEGRA194_MEMORY_CLIENT_PCIE0W,
1045 .name = "pcie0w",
1046 .sid = TEGRA194_SID_PCIE0,
1047 .regs = {
1048 .sid = {
1049 .override = 0x6c8,
1050 .security = 0x6cc,
1051 },
1052 },
1053 }, {
1054 .id = TEGRA194_MEMORY_CLIENT_PCIE1R,
1055 .name = "pcie1r",
1056 .sid = TEGRA194_SID_PCIE1,
1057 .regs = {
1058 .sid = {
1059 .override = 0x6d0,
1060 .security = 0x6d4,
1061 },
1062 },
1063 }, {
1064 .id = TEGRA194_MEMORY_CLIENT_PCIE1W,
1065 .name = "pcie1w",
1066 .sid = TEGRA194_SID_PCIE1,
1067 .regs = {
1068 .sid = {
1069 .override = 0x6d8,
1070 .security = 0x6dc,
1071 },
1072 },
1073 }, {
1074 .id = TEGRA194_MEMORY_CLIENT_PCIE2AR,
1075 .name = "pcie2ar",
1076 .sid = TEGRA194_SID_PCIE2,
1077 .regs = {
1078 .sid = {
1079 .override = 0x6e0,
1080 .security = 0x6e4,
1081 },
1082 },
1083 }, {
1084 .id = TEGRA194_MEMORY_CLIENT_PCIE2AW,
1085 .name = "pcie2aw",
1086 .sid = TEGRA194_SID_PCIE2,
1087 .regs = {
1088 .sid = {
1089 .override = 0x6e8,
1090 .security = 0x6ec,
1091 },
1092 },
1093 }, {
1094 .id = TEGRA194_MEMORY_CLIENT_PCIE3R,
1095 .name = "pcie3r",
1096 .sid = TEGRA194_SID_PCIE3,
1097 .regs = {
1098 .sid = {
1099 .override = 0x6f0,
1100 .security = 0x6f4,
1101 },
1102 },
1103 }, {
1104 .id = TEGRA194_MEMORY_CLIENT_PCIE3W,
1105 .name = "pcie3w",
1106 .sid = TEGRA194_SID_PCIE3,
1107 .regs = {
1108 .sid = {
1109 .override = 0x6f8,
1110 .security = 0x6fc,
1111 },
1112 },
1113 }, {
1114 .id = TEGRA194_MEMORY_CLIENT_PCIE4R,
1115 .name = "pcie4r",
1116 .sid = TEGRA194_SID_PCIE4,
1117 .regs = {
1118 .sid = {
1119 .override = 0x700,
1120 .security = 0x704,
1121 },
1122 },
1123 }, {
1124 .id = TEGRA194_MEMORY_CLIENT_PCIE4W,
1125 .name = "pcie4w",
1126 .sid = TEGRA194_SID_PCIE4,
1127 .regs = {
1128 .sid = {
1129 .override = 0x708,
1130 .security = 0x70c,
1131 },
1132 },
1133 }, {
1134 .id = TEGRA194_MEMORY_CLIENT_PCIE5R,
1135 .name = "pcie5r",
1136 .sid = TEGRA194_SID_PCIE5,
1137 .regs = {
1138 .sid = {
1139 .override = 0x710,
1140 .security = 0x714,
1141 },
1142 },
1143 }, {
1144 .id = TEGRA194_MEMORY_CLIENT_PCIE5W,
1145 .name = "pcie5w",
1146 .sid = TEGRA194_SID_PCIE5,
1147 .regs = {
1148 .sid = {
1149 .override = 0x718,
1150 .security = 0x71c,
1151 },
1152 },
1153 }, {
1154 .id = TEGRA194_MEMORY_CLIENT_ISPFALW,
1155 .name = "ispfalw",
1156 .sid = TEGRA194_SID_ISP_FALCON,
1157 .regs = {
1158 .sid = {
1159 .override = 0x720,
1160 .security = 0x724,
1161 },
1162 },
1163 }, {
1164 .id = TEGRA194_MEMORY_CLIENT_DLA0RDA1,
1165 .name = "dla0rda1",
1166 .sid = TEGRA194_SID_NVDLA0,
1167 .regs = {
1168 .sid = {
1169 .override = 0x748,
1170 .security = 0x74c,
1171 },
1172 },
1173 }, {
1174 .id = TEGRA194_MEMORY_CLIENT_DLA1RDA1,
1175 .name = "dla1rda1",
1176 .sid = TEGRA194_SID_NVDLA1,
1177 .regs = {
1178 .sid = {
1179 .override = 0x750,
1180 .security = 0x754,
1181 },
1182 },
1183 }, {
1184 .id = TEGRA194_MEMORY_CLIENT_PVA0RDA1,
1185 .name = "pva0rda1",
1186 .sid = TEGRA194_SID_PVA0,
1187 .regs = {
1188 .sid = {
1189 .override = 0x758,
1190 .security = 0x75c,
1191 },
1192 },
1193 }, {
1194 .id = TEGRA194_MEMORY_CLIENT_PVA0RDB1,
1195 .name = "pva0rdb1",
1196 .sid = TEGRA194_SID_PVA0,
1197 .regs = {
1198 .sid = {
1199 .override = 0x760,
1200 .security = 0x764,
1201 },
1202 },
1203 }, {
1204 .id = TEGRA194_MEMORY_CLIENT_PVA1RDA1,
1205 .name = "pva1rda1",
1206 .sid = TEGRA194_SID_PVA1,
1207 .regs = {
1208 .sid = {
1209 .override = 0x768,
1210 .security = 0x76c,
1211 },
1212 },
1213 }, {
1214 .id = TEGRA194_MEMORY_CLIENT_PVA1RDB1,
1215 .name = "pva1rdb1",
1216 .sid = TEGRA194_SID_PVA1,
1217 .regs = {
1218 .sid = {
1219 .override = 0x770,
1220 .security = 0x774,
1221 },
1222 },
1223 }, {
1224 .id = TEGRA194_MEMORY_CLIENT_PCIE5R1,
1225 .name = "pcie5r1",
1226 .sid = TEGRA194_SID_PCIE5,
1227 .regs = {
1228 .sid = {
1229 .override = 0x778,
1230 .security = 0x77c,
1231 },
1232 },
1233 }, {
1234 .id = TEGRA194_MEMORY_CLIENT_NVENCSRD1,
1235 .name = "nvencsrd1",
1236 .sid = TEGRA194_SID_NVENC,
1237 .regs = {
1238 .sid = {
1239 .override = 0x780,
1240 .security = 0x784,
1241 },
1242 },
1243 }, {
1244 .id = TEGRA194_MEMORY_CLIENT_NVENC1SRD1,
1245 .name = "nvenc1srd1",
1246 .sid = TEGRA194_SID_NVENC1,
1247 .regs = {
1248 .sid = {
1249 .override = 0x788,
1250 .security = 0x78c,
1251 },
1252 },
1253 }, {
1254 .id = TEGRA194_MEMORY_CLIENT_ISPRA1,
1255 .name = "ispra1",
1256 .sid = TEGRA194_SID_ISP,
1257 .regs = {
1258 .sid = {
1259 .override = 0x790,
1260 .security = 0x794,
1261 },
1262 },
1263 }, {
1264 .id = TEGRA194_MEMORY_CLIENT_PCIE0R1,
1265 .name = "pcie0r1",
1266 .sid = TEGRA194_SID_PCIE0,
1267 .regs = {
1268 .sid = {
1269 .override = 0x798,
1270 .security = 0x79c,
1271 },
1272 },
1273 }, {
1274 .id = TEGRA194_MEMORY_CLIENT_NVDEC1SRD,
1275 .name = "nvdec1srd",
1276 .sid = TEGRA194_SID_NVDEC1,
1277 .regs = {
1278 .sid = {
1279 .override = 0x7c8,
1280 .security = 0x7cc,
1281 },
1282 },
1283 }, {
1284 .id = TEGRA194_MEMORY_CLIENT_NVDEC1SRD1,
1285 .name = "nvdec1srd1",
1286 .sid = TEGRA194_SID_NVDEC1,
1287 .regs = {
1288 .sid = {
1289 .override = 0x7d0,
1290 .security = 0x7d4,
1291 },
1292 },
1293 }, {
1294 .id = TEGRA194_MEMORY_CLIENT_NVDEC1SWR,
1295 .name = "nvdec1swr",
1296 .sid = TEGRA194_SID_NVDEC1,
1297 .regs = {
1298 .sid = {
1299 .override = 0x7d8,
1300 .security = 0x7dc,
1301 },
1302 },
1303 }, {
1304 .id = TEGRA194_MEMORY_CLIENT_MIU5R,
1305 .name = "miu5r",
1306 .sid = TEGRA194_SID_MIU,
1307 .regs = {
1308 .sid = {
1309 .override = 0x7e0,
1310 .security = 0x7e4,
1311 },
1312 },
1313 }, {
1314 .id = TEGRA194_MEMORY_CLIENT_MIU5W,
1315 .name = "miu5w",
1316 .sid = TEGRA194_SID_MIU,
1317 .regs = {
1318 .sid = {
1319 .override = 0x7e8,
1320 .security = 0x7ec,
1321 },
1322 },
1323 }, {
1324 .id = TEGRA194_MEMORY_CLIENT_MIU6R,
1325 .name = "miu6r",
1326 .sid = TEGRA194_SID_MIU,
1327 .regs = {
1328 .sid = {
1329 .override = 0x7f0,
1330 .security = 0x7f4,
1331 },
1332 },
1333 }, {
1334 .id = TEGRA194_MEMORY_CLIENT_MIU6W,
1335 .name = "miu6w",
1336 .sid = TEGRA194_SID_MIU,
1337 .regs = {
1338 .sid = {
1339 .override = 0x7f8,
1340 .security = 0x7fc,
1341 },
1342 },
1343 },
1344};
1345
1346const struct tegra_mc_soc tegra194_mc_soc = {
1347 .num_clients = ARRAY_SIZE(tegra194_mc_clients),
1348 .clients = tegra194_mc_clients,
1349 .num_address_bits = 40,
1350 .num_channels = 16,
1351 .client_id_mask = 0xff,
1352 .intmask = MC_INT_DECERR_ROUTE_SANITY |
1353 MC_INT_DECERR_GENERALIZED_CARVEOUT | MC_INT_DECERR_MTS |
1354 MC_INT_SECERR_SEC | MC_INT_DECERR_VPR |
1355 MC_INT_SECURITY_VIOLATION | MC_INT_DECERR_EMEM,
1356 .has_addr_hi_reg = true,
1357 .ops = &tegra186_mc_ops,
1358 .icc_ops = &tegra_mc_icc_ops,
1359 .ch_intmask = 0x00000f00,
1360 .global_intstatus_channel_shift = 8,
1361};
1362

source code of linux/drivers/memory/tegra/tegra194.c