SIGN IN SIGN UP

bmcweb: add Chassis Links/Processors support

Implement Redfish Chassis Links/Processors property to expose the
association between a chassis and its processors. The "containing"
association from the chassis D-Bus object is traversed to discover
all associated processor objects.

Processors implementing either of the following D-Bus interfaces are
included:
- xyz.openbmc_project.Inventory.Item.Accelerator
- xyz.openbmc_project.Inventory.Item.Cpu

The following Redfish property is populated:
- Links/Processors[]/@odata.id
  (/redfish/v1/Systems/<system>/Processors/<name>)

Tested:
```
Build an image for nvl32-obmc machine with the following
patches cherry-picked:
1. platform-init enable LCLK and espiCLK:
   https://gerrit.openbmc.org/c/openbmc/platform-init/+/89900
2. mctpd configuration:
   https://gerrit.openbmc.org/c/openbmc/openbmc/+/87390
3. Enable nvidia-gpu sensor:
   https://gerrit.openbmc.org/c/openbmc/openbmc/+/89933
```
```
$ curl -sk -u \
  https://localhost/redfish/v1/Chassis/{}
  {
    ...
    "Links": {
      ...
      "Processors": [
        {
          "@odata.id": "/redfish/v1/Systems/system/Processors/GPU_*_*"
        }
      ]
    }
    ...
  }
```
```
Redfish Service Validator: PASS: 10646, WARN: 381, FAIL: 1,
NOT TESTED: 16809
The FAIL is pre-existing.
```

Change-Id: I071ba0f7774d7c6c11f4a49fc584d50b0dfb9ca8
Signed-off-by: Jacky Huang <jackyhuang@nvidia.com>
J
Jacky Huang committed
8f680d8456c9e834f871fffa630043811597c3f8
Parent: e05fbc0