Back to home page

OSCL-LXR

 
 

    


0001 #ifndef DT_BINDINGS_MEMORY_TEGRA186_MC_H
0002 #define DT_BINDINGS_MEMORY_TEGRA186_MC_H
0003 
0004 /* special clients */
0005 #define TEGRA186_SID_INVALID        0x00
0006 #define TEGRA186_SID_PASSTHROUGH    0x7f
0007 
0008 /* host1x clients */
0009 #define TEGRA186_SID_HOST1X     0x01
0010 #define TEGRA186_SID_CSI        0x02
0011 #define TEGRA186_SID_VIC        0x03
0012 #define TEGRA186_SID_VI         0x04
0013 #define TEGRA186_SID_ISP        0x05
0014 #define TEGRA186_SID_NVDEC      0x06
0015 #define TEGRA186_SID_NVENC      0x07
0016 #define TEGRA186_SID_NVJPG      0x08
0017 #define TEGRA186_SID_NVDISPLAY      0x09
0018 #define TEGRA186_SID_TSEC       0x0a
0019 #define TEGRA186_SID_TSECB      0x0b
0020 #define TEGRA186_SID_SE         0x0c
0021 #define TEGRA186_SID_SE1        0x0d
0022 #define TEGRA186_SID_SE2        0x0e
0023 #define TEGRA186_SID_SE3        0x0f
0024 
0025 /* GPU clients */
0026 #define TEGRA186_SID_GPU        0x10
0027 
0028 /* other SoC clients */
0029 #define TEGRA186_SID_AFI        0x11
0030 #define TEGRA186_SID_HDA        0x12
0031 #define TEGRA186_SID_ETR        0x13
0032 #define TEGRA186_SID_EQOS       0x14
0033 #define TEGRA186_SID_UFSHC      0x15
0034 #define TEGRA186_SID_AON        0x16
0035 #define TEGRA186_SID_SDMMC4     0x17
0036 #define TEGRA186_SID_SDMMC3     0x18
0037 #define TEGRA186_SID_SDMMC2     0x19
0038 #define TEGRA186_SID_SDMMC1     0x1a
0039 #define TEGRA186_SID_XUSB_HOST      0x1b
0040 #define TEGRA186_SID_XUSB_DEV       0x1c
0041 #define TEGRA186_SID_SATA       0x1d
0042 #define TEGRA186_SID_APE        0x1e
0043 #define TEGRA186_SID_SCE        0x1f
0044 
0045 /* GPC DMA clients */
0046 #define TEGRA186_SID_GPCDMA_0       0x20
0047 #define TEGRA186_SID_GPCDMA_1       0x21
0048 #define TEGRA186_SID_GPCDMA_2       0x22
0049 #define TEGRA186_SID_GPCDMA_3       0x23
0050 #define TEGRA186_SID_GPCDMA_4       0x24
0051 #define TEGRA186_SID_GPCDMA_5       0x25
0052 #define TEGRA186_SID_GPCDMA_6       0x26
0053 #define TEGRA186_SID_GPCDMA_7       0x27
0054 
0055 /* APE DMA clients */
0056 #define TEGRA186_SID_APE_1      0x28
0057 #define TEGRA186_SID_APE_2      0x29
0058 
0059 /* camera RTCPU */
0060 #define TEGRA186_SID_RCE        0x2a
0061 
0062 /* camera RTCPU on host1x address space */
0063 #define TEGRA186_SID_RCE_1X     0x2b
0064 
0065 /* APE DMA clients */
0066 #define TEGRA186_SID_APE_3      0x2c
0067 
0068 /* camera RTCPU running on APE */
0069 #define TEGRA186_SID_APE_CAM        0x2d
0070 #define TEGRA186_SID_APE_CAM_1X     0x2e
0071 
0072 /*
0073  * The BPMP has its SID value hardcoded in the firmware. Changing it requires
0074  * considerable effort.
0075  */
0076 #define TEGRA186_SID_BPMP       0x32
0077 
0078 /* for SMMU tests */
0079 #define TEGRA186_SID_SMMU_TEST      0x33
0080 
0081 /* host1x virtualization channels */
0082 #define TEGRA186_SID_HOST1X_CTX0    0x38
0083 #define TEGRA186_SID_HOST1X_CTX1    0x39
0084 #define TEGRA186_SID_HOST1X_CTX2    0x3a
0085 #define TEGRA186_SID_HOST1X_CTX3    0x3b
0086 #define TEGRA186_SID_HOST1X_CTX4    0x3c
0087 #define TEGRA186_SID_HOST1X_CTX5    0x3d
0088 #define TEGRA186_SID_HOST1X_CTX6    0x3e
0089 #define TEGRA186_SID_HOST1X_CTX7    0x3f
0090 
0091 /* host1x command buffers */
0092 #define TEGRA186_SID_HOST1X_VM0     0x40
0093 #define TEGRA186_SID_HOST1X_VM1     0x41
0094 #define TEGRA186_SID_HOST1X_VM2     0x42
0095 #define TEGRA186_SID_HOST1X_VM3     0x43
0096 #define TEGRA186_SID_HOST1X_VM4     0x44
0097 #define TEGRA186_SID_HOST1X_VM5     0x45
0098 #define TEGRA186_SID_HOST1X_VM6     0x46
0099 #define TEGRA186_SID_HOST1X_VM7     0x47
0100 
0101 /* SE data buffers */
0102 #define TEGRA186_SID_SE_VM0     0x48
0103 #define TEGRA186_SID_SE_VM1     0x49
0104 #define TEGRA186_SID_SE_VM2     0x4a
0105 #define TEGRA186_SID_SE_VM3     0x4b
0106 #define TEGRA186_SID_SE_VM4     0x4c
0107 #define TEGRA186_SID_SE_VM5     0x4d
0108 #define TEGRA186_SID_SE_VM6     0x4e
0109 #define TEGRA186_SID_SE_VM7     0x4f
0110 
0111 /*
0112  * memory client IDs
0113  */
0114 
0115 /* Misses from System Memory Management Unit (SMMU) Page Table Cache (PTC) */
0116 #define TEGRA186_MEMORY_CLIENT_PTCR 0x00
0117 /* PCIE reads */
0118 #define TEGRA186_MEMORY_CLIENT_AFIR 0x0e
0119 /* High-definition audio (HDA) reads */
0120 #define TEGRA186_MEMORY_CLIENT_HDAR 0x15
0121 /* Host channel data reads */
0122 #define TEGRA186_MEMORY_CLIENT_HOST1XDMAR 0x16
0123 #define TEGRA186_MEMORY_CLIENT_NVENCSRD 0x1c
0124 /* SATA reads */
0125 #define TEGRA186_MEMORY_CLIENT_SATAR 0x1f
0126 /* Reads from Cortex-A9 4 CPU cores via the L2 cache */
0127 #define TEGRA186_MEMORY_CLIENT_MPCORER 0x27
0128 #define TEGRA186_MEMORY_CLIENT_NVENCSWR 0x2b
0129 /* PCIE writes */
0130 #define TEGRA186_MEMORY_CLIENT_AFIW 0x31
0131 /* High-definition audio (HDA) writes */
0132 #define TEGRA186_MEMORY_CLIENT_HDAW 0x35
0133 /* Writes from Cortex-A9 4 CPU cores via the L2 cache */
0134 #define TEGRA186_MEMORY_CLIENT_MPCOREW 0x39
0135 /* SATA writes */
0136 #define TEGRA186_MEMORY_CLIENT_SATAW 0x3d
0137 /* ISP Read client for Crossbar A */
0138 #define TEGRA186_MEMORY_CLIENT_ISPRA 0x44
0139 /* ISP Write client for Crossbar A */
0140 #define TEGRA186_MEMORY_CLIENT_ISPWA 0x46
0141 /* ISP Write client Crossbar B */
0142 #define TEGRA186_MEMORY_CLIENT_ISPWB 0x47
0143 /* XUSB reads */
0144 #define TEGRA186_MEMORY_CLIENT_XUSB_HOSTR 0x4a
0145 /* XUSB_HOST writes */
0146 #define TEGRA186_MEMORY_CLIENT_XUSB_HOSTW 0x4b
0147 /* XUSB reads */
0148 #define TEGRA186_MEMORY_CLIENT_XUSB_DEVR 0x4c
0149 /* XUSB_DEV writes */
0150 #define TEGRA186_MEMORY_CLIENT_XUSB_DEVW 0x4d
0151 /* TSEC Memory Return Data Client Description */
0152 #define TEGRA186_MEMORY_CLIENT_TSECSRD 0x54
0153 /* TSEC Memory Write Client Description */
0154 #define TEGRA186_MEMORY_CLIENT_TSECSWR 0x55
0155 /* 3D, ltcx reads instance 0 */
0156 #define TEGRA186_MEMORY_CLIENT_GPUSRD 0x58
0157 /* 3D, ltcx writes instance 0 */
0158 #define TEGRA186_MEMORY_CLIENT_GPUSWR 0x59
0159 /* sdmmca memory read client */
0160 #define TEGRA186_MEMORY_CLIENT_SDMMCRA 0x60
0161 /* sdmmcbmemory read client */
0162 #define TEGRA186_MEMORY_CLIENT_SDMMCRAA 0x61
0163 /* sdmmc memory read client */
0164 #define TEGRA186_MEMORY_CLIENT_SDMMCR 0x62
0165 /* sdmmcd memory read client */
0166 #define TEGRA186_MEMORY_CLIENT_SDMMCRAB 0x63
0167 /* sdmmca memory write client */
0168 #define TEGRA186_MEMORY_CLIENT_SDMMCWA 0x64
0169 /* sdmmcb memory write client */
0170 #define TEGRA186_MEMORY_CLIENT_SDMMCWAA 0x65
0171 /* sdmmc memory write client */
0172 #define TEGRA186_MEMORY_CLIENT_SDMMCW 0x66
0173 /* sdmmcd memory write client */
0174 #define TEGRA186_MEMORY_CLIENT_SDMMCWAB 0x67
0175 #define TEGRA186_MEMORY_CLIENT_VICSRD 0x6c
0176 #define TEGRA186_MEMORY_CLIENT_VICSWR 0x6d
0177 /* VI Write client */
0178 #define TEGRA186_MEMORY_CLIENT_VIW 0x72
0179 #define TEGRA186_MEMORY_CLIENT_NVDECSRD 0x78
0180 #define TEGRA186_MEMORY_CLIENT_NVDECSWR 0x79
0181 /* Audio Processing (APE) engine reads */
0182 #define TEGRA186_MEMORY_CLIENT_APER 0x7a
0183 /* Audio Processing (APE) engine writes */
0184 #define TEGRA186_MEMORY_CLIENT_APEW 0x7b
0185 #define TEGRA186_MEMORY_CLIENT_NVJPGSRD 0x7e
0186 #define TEGRA186_MEMORY_CLIENT_NVJPGSWR 0x7f
0187 /* SE Memory Return Data Client Description */
0188 #define TEGRA186_MEMORY_CLIENT_SESRD 0x80
0189 /* SE Memory Write Client Description */
0190 #define TEGRA186_MEMORY_CLIENT_SESWR 0x81
0191 /* ETR reads */
0192 #define TEGRA186_MEMORY_CLIENT_ETRR 0x84
0193 /* ETR writes */
0194 #define TEGRA186_MEMORY_CLIENT_ETRW 0x85
0195 /* TSECB Memory Return Data Client Description */
0196 #define TEGRA186_MEMORY_CLIENT_TSECSRDB 0x86
0197 /* TSECB Memory Write Client Description */
0198 #define TEGRA186_MEMORY_CLIENT_TSECSWRB 0x87
0199 /* 3D, ltcx reads instance 1 */
0200 #define TEGRA186_MEMORY_CLIENT_GPUSRD2 0x88
0201 /* 3D, ltcx writes instance 1 */
0202 #define TEGRA186_MEMORY_CLIENT_GPUSWR2 0x89
0203 /* AXI Switch read client */
0204 #define TEGRA186_MEMORY_CLIENT_AXISR 0x8c
0205 /* AXI Switch write client */
0206 #define TEGRA186_MEMORY_CLIENT_AXISW 0x8d
0207 /* EQOS read client */
0208 #define TEGRA186_MEMORY_CLIENT_EQOSR 0x8e
0209 /* EQOS write client */
0210 #define TEGRA186_MEMORY_CLIENT_EQOSW 0x8f
0211 /* UFSHC read client */
0212 #define TEGRA186_MEMORY_CLIENT_UFSHCR 0x90
0213 /* UFSHC write client */
0214 #define TEGRA186_MEMORY_CLIENT_UFSHCW 0x91
0215 /* NVDISPLAY read client */
0216 #define TEGRA186_MEMORY_CLIENT_NVDISPLAYR 0x92
0217 /* BPMP read client */
0218 #define TEGRA186_MEMORY_CLIENT_BPMPR 0x93
0219 /* BPMP write client */
0220 #define TEGRA186_MEMORY_CLIENT_BPMPW 0x94
0221 /* BPMPDMA read client */
0222 #define TEGRA186_MEMORY_CLIENT_BPMPDMAR 0x95
0223 /* BPMPDMA write client */
0224 #define TEGRA186_MEMORY_CLIENT_BPMPDMAW 0x96
0225 /* AON read client */
0226 #define TEGRA186_MEMORY_CLIENT_AONR 0x97
0227 /* AON write client */
0228 #define TEGRA186_MEMORY_CLIENT_AONW 0x98
0229 /* AONDMA read client */
0230 #define TEGRA186_MEMORY_CLIENT_AONDMAR 0x99
0231 /* AONDMA write client */
0232 #define TEGRA186_MEMORY_CLIENT_AONDMAW 0x9a
0233 /* SCE read client */
0234 #define TEGRA186_MEMORY_CLIENT_SCER 0x9b
0235 /* SCE write client */
0236 #define TEGRA186_MEMORY_CLIENT_SCEW 0x9c
0237 /* SCEDMA read client */
0238 #define TEGRA186_MEMORY_CLIENT_SCEDMAR 0x9d
0239 /* SCEDMA write client */
0240 #define TEGRA186_MEMORY_CLIENT_SCEDMAW 0x9e
0241 /* APEDMA read client */
0242 #define TEGRA186_MEMORY_CLIENT_APEDMAR 0x9f
0243 /* APEDMA write client */
0244 #define TEGRA186_MEMORY_CLIENT_APEDMAW 0xa0
0245 /* NVDISPLAY read client instance 2 */
0246 #define TEGRA186_MEMORY_CLIENT_NVDISPLAYR1 0xa1
0247 #define TEGRA186_MEMORY_CLIENT_VICSRD1 0xa2
0248 #define TEGRA186_MEMORY_CLIENT_NVDECSRD1 0xa3
0249 
0250 #endif