|
754 | 754 | #define PCI_EXT_CAP_ID_NPEM 0x29 /* Native PCIe Enclosure Management */ |
755 | 755 | #define PCI_EXT_CAP_ID_PL_32GT 0x2A /* Physical Layer 32.0 GT/s */ |
756 | 756 | #define PCI_EXT_CAP_ID_DOE 0x2E /* Data Object Exchange */ |
| 757 | +#define PCI_EXT_CAP_ID_IDE 0x30 /* Integrity and Data Encryption */ |
757 | 758 | #define PCI_EXT_CAP_ID_PL_64GT 0x31 /* Physical Layer 64.0 GT/s */ |
758 | 759 | #define PCI_EXT_CAP_ID_MAX PCI_EXT_CAP_ID_PL_64GT |
759 | 760 |
|
|
1249 | 1250 | #define PCI_DVSEC_CXL_PORT_CTL 0x0c |
1250 | 1251 | #define PCI_DVSEC_CXL_PORT_CTL_UNMASK_SBR 0x00000001 |
1251 | 1252 |
|
| 1253 | +/* Integrity and Data Encryption Extended Capability */ |
| 1254 | +#define PCI_IDE_CAP 0x04 |
| 1255 | +#define PCI_IDE_CAP_LINK 0x1 /* Link IDE Stream Supported */ |
| 1256 | +#define PCI_IDE_CAP_SELECTIVE 0x2 /* Selective IDE Streams Supported */ |
| 1257 | +#define PCI_IDE_CAP_FLOWTHROUGH 0x4 /* Flow-Through IDE Stream Supported */ |
| 1258 | +#define PCI_IDE_CAP_PARTIAL_HEADER_ENC 0x8 /* Partial Header Encryption Supported */ |
| 1259 | +#define PCI_IDE_CAP_AGGREGATION 0x10 /* Aggregation Supported */ |
| 1260 | +#define PCI_IDE_CAP_PCRC 0x20 /* PCRC Supported */ |
| 1261 | +#define PCI_IDE_CAP_IDE_KM 0x40 /* IDE_KM Protocol Supported */ |
| 1262 | +#define PCI_IDE_CAP_SEL_CFG 0x80 /* Selective IDE for Config Request Support */ |
| 1263 | +#define PCI_IDE_CAP_ALG __GENMASK(12, 8) /* Supported Algorithms */ |
| 1264 | +#define PCI_IDE_CAP_ALG_AES_GCM_256 0 /* AES-GCM 256 key size, 96b MAC */ |
| 1265 | +#define PCI_IDE_CAP_LINK_TC_NUM __GENMASK(15, 13) /* Link IDE TCs */ |
| 1266 | +#define PCI_IDE_CAP_SEL_NUM __GENMASK(23, 16) /* Supported Selective IDE Streams */ |
| 1267 | +#define PCI_IDE_CAP_TEE_LIMITED 0x1000000 /* TEE-Limited Stream Supported */ |
| 1268 | +#define PCI_IDE_CTL 0x08 |
| 1269 | +#define PCI_IDE_CTL_FLOWTHROUGH_IDE 0x4 /* Flow-Through IDE Stream Enabled */ |
| 1270 | + |
| 1271 | +#define PCI_IDE_LINK_STREAM_0 0xc /* First Link Stream Register Block */ |
| 1272 | +#define PCI_IDE_LINK_BLOCK_SIZE 8 |
| 1273 | +/* Link IDE Stream block, up to PCI_IDE_CAP_LINK_TC_NUM */ |
| 1274 | +#define PCI_IDE_LINK_CTL_0 0x00 /* First Link Control Register Offset in block */ |
| 1275 | +#define PCI_IDE_LINK_CTL_EN 0x1 /* Link IDE Stream Enable */ |
| 1276 | +#define PCI_IDE_LINK_CTL_TX_AGGR_NPR __GENMASK(3, 2) /* Tx Aggregation Mode NPR */ |
| 1277 | +#define PCI_IDE_LINK_CTL_TX_AGGR_PR __GENMASK(5, 4) /* Tx Aggregation Mode PR */ |
| 1278 | +#define PCI_IDE_LINK_CTL_TX_AGGR_CPL __GENMASK(7, 6) /* Tx Aggregation Mode CPL */ |
| 1279 | +#define PCI_IDE_LINK_CTL_PCRC_EN 0x100 /* PCRC Enable */ |
| 1280 | +#define PCI_IDE_LINK_CTL_PART_ENC __GENMASK(13, 10) /* Partial Header Encryption Mode */ |
| 1281 | +#define PCI_IDE_LINK_CTL_ALG __GENMASK(18, 14) /* Selection from PCI_IDE_CAP_ALG */ |
| 1282 | +#define PCI_IDE_LINK_CTL_TC __GENMASK(21, 19) /* Traffic Class */ |
| 1283 | +#define PCI_IDE_LINK_CTL_ID __GENMASK(31, 24) /* Stream ID */ |
| 1284 | +#define PCI_IDE_LINK_STS_0 0x4 /* First Link Status Register Offset in block */ |
| 1285 | +#define PCI_IDE_LINK_STS_STATE __GENMASK(3, 0) /* Link IDE Stream State */ |
| 1286 | +#define PCI_IDE_LINK_STS_IDE_FAIL 0x80000000 /* IDE fail message received */ |
| 1287 | + |
| 1288 | +/* Selective IDE Stream block, up to PCI_IDE_CAP_SELECTIVE_STREAMS_NUM */ |
| 1289 | +/* Selective IDE Stream Capability Register */ |
| 1290 | +#define PCI_IDE_SEL_CAP 0x00 |
| 1291 | +#define PCI_IDE_SEL_CAP_ASSOC_NUM __GENMASK(3, 0) |
| 1292 | +/* Selective IDE Stream Control Register */ |
| 1293 | +#define PCI_IDE_SEL_CTL 0x04 |
| 1294 | +#define PCI_IDE_SEL_CTL_EN 0x1 /* Selective IDE Stream Enable */ |
| 1295 | +#define PCI_IDE_SEL_CTL_TX_AGGR_NPR __GENMASK(3, 2) /* Tx Aggregation Mode NPR */ |
| 1296 | +#define PCI_IDE_SEL_CTL_TX_AGGR_PR __GENMASK(5, 4) /* Tx Aggregation Mode PR */ |
| 1297 | +#define PCI_IDE_SEL_CTL_TX_AGGR_CPL __GENMASK(7, 6) /* Tx Aggregation Mode CPL */ |
| 1298 | +#define PCI_IDE_SEL_CTL_PCRC_EN 0x100 /* PCRC Enable */ |
| 1299 | +#define PCI_IDE_SEL_CTL_CFG_EN 0x200 /* Selective IDE for Configuration Requests */ |
| 1300 | +#define PCI_IDE_SEL_CTL_PART_ENC __GENMASK(13, 10) /* Partial Header Encryption Mode */ |
| 1301 | +#define PCI_IDE_SEL_CTL_ALG __GENMASK(18, 14) /* Selection from PCI_IDE_CAP_ALG */ |
| 1302 | +#define PCI_IDE_SEL_CTL_TC __GENMASK(21, 19) /* Traffic Class */ |
| 1303 | +#define PCI_IDE_SEL_CTL_DEFAULT 0x400000 /* Default Stream */ |
| 1304 | +#define PCI_IDE_SEL_CTL_TEE_LIMITED 0x800000 /* TEE-Limited Stream */ |
| 1305 | +#define PCI_IDE_SEL_CTL_ID __GENMASK(31, 24) /* Stream ID */ |
| 1306 | +#define PCI_IDE_SEL_CTL_ID_MAX 255 |
| 1307 | +/* Selective IDE Stream Status Register */ |
| 1308 | +#define PCI_IDE_SEL_STS 0x08 |
| 1309 | +#define PCI_IDE_SEL_STS_STATE __GENMASK(3, 0) /* Selective IDE Stream State */ |
| 1310 | +#define PCI_IDE_SEL_STS_STATE_INSECURE 0 |
| 1311 | +#define PCI_IDE_SEL_STS_STATE_SECURE 2 |
| 1312 | +#define PCI_IDE_SEL_STS_IDE_FAIL 0x80000000 /* IDE fail message received */ |
| 1313 | +/* IDE RID Association Register 1 */ |
| 1314 | +#define PCI_IDE_SEL_RID_1 0x0c |
| 1315 | +#define PCI_IDE_SEL_RID_1_LIMIT __GENMASK(23, 8) |
| 1316 | +/* IDE RID Association Register 2 */ |
| 1317 | +#define PCI_IDE_SEL_RID_2 0x10 |
| 1318 | +#define PCI_IDE_SEL_RID_2_VALID 0x1 |
| 1319 | +#define PCI_IDE_SEL_RID_2_BASE __GENMASK(23, 8) |
| 1320 | +#define PCI_IDE_SEL_RID_2_SEG __GENMASK(31, 24) |
| 1321 | +/* Selective IDE Address Association Register Block, up to PCI_IDE_SEL_CAP_ASSOC_NUM */ |
| 1322 | +#define PCI_IDE_SEL_ADDR_BLOCK_SIZE 12 |
| 1323 | +#define PCI_IDE_SEL_ADDR_1(x) (20 + (x) * PCI_IDE_SEL_ADDR_BLOCK_SIZE) |
| 1324 | +#define PCI_IDE_SEL_ADDR_1_VALID 0x1 |
| 1325 | +#define PCI_IDE_SEL_ADDR_1_BASE_LOW __GENMASK(19, 8) |
| 1326 | +#define PCI_IDE_SEL_ADDR_1_LIMIT_LOW __GENMASK(31, 20) |
| 1327 | +/* IDE Address Association Register 2 is "Memory Limit Upper" */ |
| 1328 | +#define PCI_IDE_SEL_ADDR_2(x) (24 + (x) * PCI_IDE_SEL_ADDR_BLOCK_SIZE) |
| 1329 | +/* IDE Address Association Register 3 is "Memory Base Upper" */ |
| 1330 | +#define PCI_IDE_SEL_ADDR_3(x) (28 + (x) * PCI_IDE_SEL_ADDR_BLOCK_SIZE) |
| 1331 | +#define PCI_IDE_SEL_BLOCK_SIZE(nr_assoc) (20 + PCI_IDE_SEL_ADDR_BLOCK_SIZE * (nr_assoc)) |
| 1332 | + |
1252 | 1333 | #endif /* LINUX_PCI_REGS_H */ |
0 commit comments