xref: /openbmc/bmcweb/features/redfish/schema/dmtf/csdl/VirtualPCI2PCIBridge_v1.xml (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1*c6d7a45dSGunnar Mills<?xml version="1.0" encoding="UTF-8"?>
2*c6d7a45dSGunnar Mills<!---->
3*c6d7a45dSGunnar Mills<!--################################################################################       -->
4*c6d7a45dSGunnar Mills<!--# Redfish Schema:  VirtualPCI2PCIBridge v1.0.0                                         -->
5*c6d7a45dSGunnar Mills<!--#                                                                                      -->
6*c6d7a45dSGunnar Mills<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
7*c6d7a45dSGunnar Mills<!--# available at http://www.dmtf.org/standards/redfish                                   -->
8*c6d7a45dSGunnar Mills<!--# Copyright 2014-2025 DMTF.                                                            -->
9*c6d7a45dSGunnar Mills<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
10*c6d7a45dSGunnar Mills<!--################################################################################       -->
11*c6d7a45dSGunnar Mills<!---->
12*c6d7a45dSGunnar Mills<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
13*c6d7a45dSGunnar Mills
14*c6d7a45dSGunnar Mills  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
15*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
16*c6d7a45dSGunnar Mills  </edmx:Reference>
17*c6d7a45dSGunnar Mills  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
18*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
19*c6d7a45dSGunnar Mills  </edmx:Reference>
20*c6d7a45dSGunnar Mills  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Measures.V1.xml">
21*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
22*c6d7a45dSGunnar Mills  </edmx:Reference>
23*c6d7a45dSGunnar Mills  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
24*c6d7a45dSGunnar Mills    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
25*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
26*c6d7a45dSGunnar Mills  </edmx:Reference>
27*c6d7a45dSGunnar Mills  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
28*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Resource"/>
29*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Resource.v1_0_0"/>
30*c6d7a45dSGunnar Mills  </edmx:Reference>
31*c6d7a45dSGunnar Mills  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Endpoint_v1.xml">
32*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Endpoint"/>
33*c6d7a45dSGunnar Mills  </edmx:Reference>
34*c6d7a45dSGunnar Mills  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Port_v1.xml">
35*c6d7a45dSGunnar Mills    <edmx:Include Namespace="Port"/>
36*c6d7a45dSGunnar Mills  </edmx:Reference>
37*c6d7a45dSGunnar Mills
38*c6d7a45dSGunnar Mills  <edmx:DataServices>
39*c6d7a45dSGunnar Mills
40*c6d7a45dSGunnar Mills    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="VirtualPCI2PCIBridge">
41*c6d7a45dSGunnar Mills      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
42*c6d7a45dSGunnar Mills
43*c6d7a45dSGunnar Mills      <EntityType Name="VirtualPCI2PCIBridge" BaseType="Resource.v1_0_0.Resource" Abstract="true">
44*c6d7a45dSGunnar Mills        <Annotation Term="OData.Description" String="The `VirtualPCI2PCIBridge` schema describes Virtual PCI-to-PCI Bridge (vPPB) inside a CXL switch that is owned by the host."/>
45*c6d7a45dSGunnar Mills        <Annotation Term="OData.LongDescription" String="This resource shall represent a Virtual PCI-to-PCI Bridge (vPPB) inside a CXL switch that is host-owned.  This can be bound to a port that is either disconnected, connected to a PCIe component, or connected to a CXL component."/>
46*c6d7a45dSGunnar Mills        <Annotation Term="Capabilities.InsertRestrictions">
47*c6d7a45dSGunnar Mills          <Record>
48*c6d7a45dSGunnar Mills            <PropertyValue Property="Insertable" Bool="false"/>
49*c6d7a45dSGunnar Mills          </Record>
50*c6d7a45dSGunnar Mills        </Annotation>
51*c6d7a45dSGunnar Mills        <Annotation Term="Capabilities.UpdateRestrictions">
52*c6d7a45dSGunnar Mills          <Record>
53*c6d7a45dSGunnar Mills            <PropertyValue Property="Updatable" Bool="true"/>
54*c6d7a45dSGunnar Mills          </Record>
55*c6d7a45dSGunnar Mills        </Annotation>
56*c6d7a45dSGunnar Mills        <Annotation Term="Capabilities.DeleteRestrictions">
57*c6d7a45dSGunnar Mills          <Record>
58*c6d7a45dSGunnar Mills            <PropertyValue Property="Deletable" Bool="false"/>
59*c6d7a45dSGunnar Mills          </Record>
60*c6d7a45dSGunnar Mills        </Annotation>
61*c6d7a45dSGunnar Mills        <Annotation Term="Redfish.Uris">
62*c6d7a45dSGunnar Mills          <Collection>
63*c6d7a45dSGunnar Mills            <String>/redfish/v1/Fabrics/{FabricId}/Switches/{SwitchId}/VCSs/{VirtualCXLSwitchId}/VPPBs/{VirtualPCI2PCIBridgeId}</String>
64*c6d7a45dSGunnar Mills          </Collection>
65*c6d7a45dSGunnar Mills        </Annotation>
66*c6d7a45dSGunnar Mills      </EntityType>
67*c6d7a45dSGunnar Mills    </Schema>
68*c6d7a45dSGunnar Mills
69*c6d7a45dSGunnar Mills    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="VirtualPCI2PCIBridge.v1_0_0">
70*c6d7a45dSGunnar Mills      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
71*c6d7a45dSGunnar Mills      <Annotation Term="Redfish.Release" String="2025.2"/>
72*c6d7a45dSGunnar Mills
73*c6d7a45dSGunnar Mills      <EntityType Name="VirtualPCI2PCIBridge" BaseType="VirtualPCI2PCIBridge.VirtualPCI2PCIBridge">
74*c6d7a45dSGunnar Mills        <Property Name="Status" Type="Resource.Status" Nullable="false">
75*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
76*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
77*c6d7a45dSGunnar Mills        </Property>
78*c6d7a45dSGunnar Mills        <Property Name="VPPBId" Type="Edm.String">
79*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
80*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The Virtual PCI-PCI Bridge identifier."/>
81*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the identifier of the vPPB.  This property shall contain the same value as the `Id` property."/>
82*c6d7a45dSGunnar Mills        </Property>
83*c6d7a45dSGunnar Mills        <Property Name="BindingStatus" Type="VirtualPCI2PCIBridge.v1_0_0.vPPBStatusTypes" Nullable="false">
84*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
85*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The binding status of the vPPB."/>
86*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the binding status of the vPPB."/>
87*c6d7a45dSGunnar Mills        </Property>
88*c6d7a45dSGunnar Mills        <Property Name="BoundPortId" Type="Edm.Int64" Nullable="false">
89*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
90*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The physical port number of the bound port."/>
91*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the physical port number of the port bound to this vPPB.  This property shall only be present if `BindingStatus` contains `BoundPhysicalPort` or `BoundLD`."/>
92*c6d7a45dSGunnar Mills        </Property>
93*c6d7a45dSGunnar Mills        <Property Name="BoundLDId" Type="Edm.Int64" Nullable="false">
94*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
95*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The identifier of the bound local logical device."/>
96*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the identifier of the bound local logical device bound to this vPPB.  This property shall only be present if `BindingStatus` contains `BoundLD`."/>
97*c6d7a45dSGunnar Mills        </Property>
98*c6d7a45dSGunnar Mills        <Property Name="BoundPBRId" Type="Edm.Int64" Nullable="false">
99*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
100*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The identifier of the bound PBR."/>
101*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the identifier of PBR bound to this vPPB.  This property shall only be present if `BindingStatus` contains `BoundPID`."/>
102*c6d7a45dSGunnar Mills        </Property>
103*c6d7a45dSGunnar Mills        <Property Name="GCXLID" Type="Edm.String">
104*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
105*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The GCXLID for the CXL logical device bound to this vPPB."/>
106*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the globally unique CXL logical device identifier (GCXLID) for the CXL logical device that is bound to this vPPB."/>
107*c6d7a45dSGunnar Mills          <Annotation Term="Validation.Pattern" String="^([0-9A-Fa-f]{2}-){7}[0-9A-Fa-f]{2}:([0-9A-Fa-f]{4})$"/>
108*c6d7a45dSGunnar Mills        </Property>
109*c6d7a45dSGunnar Mills        <Property Name="Actions" Type="VirtualPCI2PCIBridge.v1_0_0.Actions" Nullable="false">
110*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The available actions for this resource."/>
111*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
112*c6d7a45dSGunnar Mills        </Property>
113*c6d7a45dSGunnar Mills        <Property Name="Links" Type="VirtualPCI2PCIBridge.v1_0_0.Links" Nullable="false">
114*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
115*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
116*c6d7a45dSGunnar Mills        </Property>
117*c6d7a45dSGunnar Mills      </EntityType>
118*c6d7a45dSGunnar Mills
119*c6d7a45dSGunnar Mills      <ComplexType Name="Links" BaseType="Resource.Links">
120*c6d7a45dSGunnar Mills        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
121*c6d7a45dSGunnar Mills        <Annotation Term="OData.LongDescription" String="This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
122*c6d7a45dSGunnar Mills        <NavigationProperty Name="Endpoints" Type="Collection(Endpoint.Endpoint)">
123*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
124*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The links to the endpoints associated with this vPPB."/>
125*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `Endpoint` that represent the endpoints associated with this vPPB."/>
126*c6d7a45dSGunnar Mills          <Annotation Term="OData.AutoExpandReferences"/>
127*c6d7a45dSGunnar Mills        </NavigationProperty>
128*c6d7a45dSGunnar Mills        <NavigationProperty Name="Port" Type="Port.Port">
129*c6d7a45dSGunnar Mills          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
130*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The link to the port associated with this vPPB."/>
131*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `Port` that represents the port associated with this vPPB."/>
132*c6d7a45dSGunnar Mills          <Annotation Term="OData.AutoExpandReferences"/>
133*c6d7a45dSGunnar Mills        </NavigationProperty>
134*c6d7a45dSGunnar Mills      </ComplexType>
135*c6d7a45dSGunnar Mills
136*c6d7a45dSGunnar Mills      <EnumType Name="vPPBStatusTypes">
137*c6d7a45dSGunnar Mills        <Member Name="Unbound">
138*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="This vPPB is in unbound state."/>
139*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This value shall indicate the CXL Specification-defined 'Unbound' state for the vPPB."/>
140*c6d7a45dSGunnar Mills        </Member>
141*c6d7a45dSGunnar Mills        <Member Name="Busy">
142*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="Binding or unbinding is in progress for this vPPB."/>
143*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This value shall indicate the CXL Specification-defined 'Binding or Unbinding' state for the vPPB."/>
144*c6d7a45dSGunnar Mills        </Member>
145*c6d7a45dSGunnar Mills        <Member Name="BoundPhysicalPort">
146*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="This vPPB is bound to a physical port."/>
147*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This value shall indicate the CXL Specification-defined 'Bound Physical Port' state for the vPPB."/>
148*c6d7a45dSGunnar Mills        </Member>
149*c6d7a45dSGunnar Mills        <Member Name="BoundLD">
150*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="This vPPB is bound to a CXL logical device."/>
151*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This value shall indicate the CXL Specification-defined 'Bound LD' state for the vPPB."/>
152*c6d7a45dSGunnar Mills        </Member>
153*c6d7a45dSGunnar Mills        <Member Name="BoundPID">
154*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="This vPPB is bound to a PBR ID."/>
155*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This value shall indicate the CXL Specification-defined 'Bound PBR Id' state for the vPPB."/>
156*c6d7a45dSGunnar Mills        </Member>
157*c6d7a45dSGunnar Mills      </EnumType>
158*c6d7a45dSGunnar Mills
159*c6d7a45dSGunnar Mills      <ComplexType Name="Actions">
160*c6d7a45dSGunnar Mills        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
161*c6d7a45dSGunnar Mills        <Annotation Term="OData.Description" String="The available actions for this resource."/>
162*c6d7a45dSGunnar Mills        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
163*c6d7a45dSGunnar Mills        <Property Name="Oem" Type="VirtualPCI2PCIBridge.v1_0_0.OemActions" Nullable="false">
164*c6d7a45dSGunnar Mills          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
165*c6d7a45dSGunnar Mills          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
166*c6d7a45dSGunnar Mills        </Property>
167*c6d7a45dSGunnar Mills      </ComplexType>
168*c6d7a45dSGunnar Mills
169*c6d7a45dSGunnar Mills      <ComplexType Name="OemActions">
170*c6d7a45dSGunnar Mills        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
171*c6d7a45dSGunnar Mills        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
172*c6d7a45dSGunnar Mills        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
173*c6d7a45dSGunnar Mills      </ComplexType>
174*c6d7a45dSGunnar Mills    </Schema>
175*c6d7a45dSGunnar Mills
176*c6d7a45dSGunnar Mills  </edmx:DataServices>
177*c6d7a45dSGunnar Mills</edmx:Edmx>
178