1description: > 2 This defines a PCIe device to be exposed for system management. It includes 3 the device properties and function properties for all 8 possible functions 4 that are needed for the device identification. 5 6properties: 7 - name: DeviceType 8 type: string 9 description: > 10 Indicates if the device is MultiFunction or SingleFunction. 11 - name: GenerationInUse 12 type: enum[xyz.openbmc_project.Inventory.Item.PCIeSlot.Generations] 13 default: "Unknown" 14 description: > 15 The PCIe interface generation in use by the device. 16 - name: GenerationSupported 17 type: enum[xyz.openbmc_project.Inventory.Item.PCIeSlot.Generations] 18 default: "Unknown" 19 description: > 20 The maximum PCIe generation supported by the device. 21 22 - name: Function0ClassCode 23 type: string 24 description: > 25 The Class Code for this function. 26 - name: Function0DeviceClass 27 type: string 28 description: > 29 The Device Class for this function. 30 - name: Function0DeviceId 31 type: string 32 description: > 33 The Device ID for this function. 34 - name: Function0FunctionType 35 type: string 36 description: > 37 Indicates if the function is Physical or Virtual 38 - name: Function0RevisionId 39 type: string 40 description: > 41 The Revision ID for this function. 42 - name: Function0SubsystemId 43 type: string 44 description: > 45 The Subsystem ID for this function. 46 - name: Function0SubsystemVendorId 47 type: string 48 description: > 49 The Subsystem Vendor ID for this function. 50 - name: Function0VendorId 51 type: string 52 description: > 53 The Vendor ID for this function. 54 55 - name: Function1ClassCode 56 type: string 57 description: > 58 The Class Code for this function. 59 - name: Function1DeviceClass 60 type: string 61 description: > 62 The Device Class for this function. 63 - name: Function1DeviceId 64 type: string 65 description: > 66 The Device ID for this function. 67 - name: Function1FunctionType 68 type: string 69 description: > 70 Indicates if the function is Physical or Virtual 71 - name: Function1RevisionId 72 type: string 73 description: > 74 The Revision ID for this function. 75 - name: Function1SubsystemId 76 type: string 77 description: > 78 The Subsystem ID for this function. 79 - name: Function1SubsystemVendorId 80 type: string 81 description: > 82 The Subsystem Vendor ID for this function. 83 - name: Function1VendorId 84 type: string 85 description: > 86 The Vendor ID for this function. 87 88 - name: Function2ClassCode 89 type: string 90 description: > 91 The Class Code for this function. 92 - name: Function2DeviceClass 93 type: string 94 description: > 95 The Device Class for this function. 96 - name: Function2DeviceId 97 type: string 98 description: > 99 The Device ID for this function. 100 - name: Function2FunctionType 101 type: string 102 description: > 103 Indicates if the function is Physical or Virtual 104 - name: Function2RevisionId 105 type: string 106 description: > 107 The Revision ID for this function. 108 - name: Function2SubsystemId 109 type: string 110 description: > 111 The Subsystem ID for this function. 112 - name: Function2SubsystemVendorId 113 type: string 114 description: > 115 The Subsystem Vendor ID for this function. 116 - name: Function2VendorId 117 type: string 118 description: > 119 The Vendor ID for this function. 120 121 - name: Function3ClassCode 122 type: string 123 description: > 124 The Class Code for this function. 125 - name: Function3DeviceClass 126 type: string 127 description: > 128 The Device Class for this function. 129 - name: Function3DeviceId 130 type: string 131 description: > 132 The Device ID for this function. 133 - name: Function3FunctionType 134 type: string 135 description: > 136 Indicates if the function is Physical or Virtual 137 - name: Function3RevisionId 138 type: string 139 description: > 140 The Revision ID for this function. 141 - name: Function3SubsystemId 142 type: string 143 description: > 144 The Subsystem ID for this function. 145 - name: Function3SubsystemVendorId 146 type: string 147 description: > 148 The Subsystem Vendor ID for this function. 149 - name: Function3VendorId 150 type: string 151 description: > 152 The Vendor ID for this function. 153 154 - name: Function4ClassCode 155 type: string 156 description: > 157 The Class Code for this function. 158 - name: Function4DeviceClass 159 type: string 160 description: > 161 The Device Class for this function. 162 - name: Function4DeviceId 163 type: string 164 description: > 165 The Device ID for this function. 166 - name: Function4FunctionType 167 type: string 168 description: > 169 Indicates if the function is Physical or Virtual 170 - name: Function4RevisionId 171 type: string 172 description: > 173 The Revision ID for this function. 174 - name: Function4SubsystemId 175 type: string 176 description: > 177 The Subsystem ID for this function. 178 - name: Function4SubsystemVendorId 179 type: string 180 description: > 181 The Subsystem Vendor ID for this function. 182 - name: Function4VendorId 183 type: string 184 description: > 185 The Vendor ID for this function. 186 187 - name: Function5ClassCode 188 type: string 189 description: > 190 The Class Code for this function. 191 - name: Function5DeviceClass 192 type: string 193 description: > 194 The Device Class for this function. 195 - name: Function5DeviceId 196 type: string 197 description: > 198 The Device ID for this function. 199 - name: Function5FunctionType 200 type: string 201 description: > 202 Indicates if the function is Physical or Virtual 203 - name: Function5RevisionId 204 type: string 205 description: > 206 The Revision ID for this function. 207 - name: Function5SubsystemId 208 type: string 209 description: > 210 The Subsystem ID for this function. 211 - name: Function5SubsystemVendorId 212 type: string 213 description: > 214 The Subsystem Vendor ID for this function. 215 - name: Function5VendorId 216 type: string 217 description: > 218 The Vendor ID for this function. 219 220 - name: Function6ClassCode 221 type: string 222 description: > 223 The Class Code for this function. 224 - name: Function6DeviceClass 225 type: string 226 description: > 227 The Device Class for this function. 228 - name: Function6DeviceId 229 type: string 230 description: > 231 The Device ID for this function. 232 - name: Function6FunctionType 233 type: string 234 description: > 235 Indicates if the function is Physical or Virtual 236 - name: Function6RevisionId 237 type: string 238 description: > 239 The Revision ID for this function. 240 - name: Function6SubsystemId 241 type: string 242 description: > 243 The Subsystem ID for this function. 244 - name: Function6SubsystemVendorId 245 type: string 246 description: > 247 The Subsystem Vendor ID for this function. 248 - name: Function6VendorId 249 type: string 250 description: > 251 The Vendor ID for this function. 252 253 - name: Function7ClassCode 254 type: string 255 description: > 256 The Class Code for this function. 257 - name: Function7DeviceClass 258 type: string 259 description: > 260 The Device Class for this function. 261 - name: Function7DeviceId 262 type: string 263 description: > 264 The Device ID for this function. 265 - name: Function7FunctionType 266 type: string 267 description: > 268 Indicates if the function is Physical or Virtual 269 - name: Function7RevisionId 270 type: string 271 description: > 272 The Revision ID for this function. 273 - name: Function7SubsystemId 274 type: string 275 description: > 276 The Subsystem ID for this function. 277 - name: Function7SubsystemVendorId 278 type: string 279 description: > 280 The Subsystem Vendor ID for this function. 281 - name: Function7VendorId 282 type: string 283 description: > 284 The Vendor ID for this function. 285 286 - name: MaxLanes 287 type: size 288 default: 0 289 description: > 290 The maximum number of PCIe lanes supported by the PCIe Device 291 292 - name: LanesInUse 293 type: size 294 default: maxint 295 description: > 296 The number of PCIe lanes in use by this device. Deafult value of 297 maxint is to accommodate the situation where the value of this 298 property is not known due to some unknown reason, like hardware 299 failure or link down. 300 301associations: 302 - name: upstream_pcie_slot 303 description: > 304 Objects that implement PCIeDevice can optionally implement the 305 upstream_pcie_slot association to provide a link back to a PCIe slot. 306 reverse_names: 307 - associated_pcie_device 308 required_endpoint_interfaces: 309 - xyz.openbmc_project.Inventory.Item.PCIeSlot 310