Add association between FabricAdapter and Port

As a course of implementing PortCollection and Port schemas,
this commit adds a new association to describe the links
between FabricAdapter and Port.

 - FabricAdapter may be "connected_to" one or more ports,
 - A port may also be "connecting" one or more items.

The generic associations of 'containing' and 'contained_by'
are considered, but they are for the physically "containing" items.

Related schemas are:

- https://redfish.dmtf.org/schemas/v1/Port.v1_8_0.json

```
       "Links": {
           "description": "The links to other resources that are related to this resource.",
            "properties": {
                "AssociatedEndpoints": {
                    "description": "An array of links to the endpoints at the other end of the link.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Endpoint.json#/definitions/Endpoint"
                    },
                    "longDescription": "This property shall contain an array of links to resources of type Endpoint that represent the endpoints to which this port is connected.",
                    "readonly": true,
                    "type": "array"
                },
                "AssociatedEndpoints@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
```

- https://redfish.dmtf.org/schemas/v1/FabricAdapter.v1_5_0.json

```
                "Ports": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/PortCollection.json#/definitions/PortCollection",
                    "description": "The link to the collection of ports that exist on the fabric adapter.",
                    "longDescription": "This property shall contain a link to a Resource Collection of type PortCollection.",
                    "readonly": true
                },
```

Change-Id: I2cc8caf0128bf1cfa619312e689fe02039977e44
Signed-off-by: Myung Bae <myungbae@us.ibm.com>
5 files changed
tree: 3163fa834985f6a90933db44a6fd27fa6c4894b1
  1. gen/
  2. subprojects/
  3. yaml/
  4. .gitignore
  5. .markdownlint.yaml
  6. .prettierrc.yaml
  7. .shellcheck
  8. LICENSE
  9. meson.build
  10. meson_options.txt
  11. OWNERS
  12. README.md
  13. requirements.md
README.md

phosphor-dbus-interfaces

YAML descriptors of standard D-Bus interfaces. The format is described by the sdbusplus binding generation tool sdbus++.

Before defining a new D-Bus interface or modifying an existing one, please read through the documented set of the common requirements and expectations.

Building

This project can be built with meson. The typical meson workflow is: meson builddir && ninja -C builddir.

The meson files used to handle the YAML files are automatically generated and found under the gen subdirectory. When adding or removing YAML files, this must be regenerated. This can be done with the helper script found in the gen subdirectory: cd gen && ./regenerate-meson.

Configuration

Only the xyz/openbmc_project and org/freedesktop interfaces are built by default. Other interfaces can be enabled by meson options:

  • com/ibm - -Ddata_com_ibm=true
  • org/open_power - -Ddata_org_open_power=true

Example: meson builddir -Ddata_com_ibm=true && ninja -C builddir

References