facebook: ventura: add GPIODeviceDetect for cable

Add GPIODeviceDetect EM config for cables on ventura platform.

Tested:

1. Query xyz.openbmc_project.gpiopresence service
```
root@bmc:~# busctl tree xyz.openbmc_project.gpiopresence
└─ /xyz
  └─ /xyz/openbmc_project
    └─ /xyz/openbmc_project/GPIODeviceDetected
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort1
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort10
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort11
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort12
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort13
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort14
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort15
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort16
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort17
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort18
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort19
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort2
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort20
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort21
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort22
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort23
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort24
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort25
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort26
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort27
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort3
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort4
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort5
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort6
      ├─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort7
      └─ /xyz/openbmc_project/GPIODeviceDetected/LeakPort8
```

2. Introspect specific LeakPort path
```
root@bmc:~# busctl introspect xyz.openbmc_project.gpiopresence  /xyz/openbmc_project/GPIODeviceDetected/LeakPort1
NAME                                                TYPE      SIGNATURE RESULT/VALUE FLAGS
org.freedesktop.DBus.Introspectable                 interface -         -            -
.Introspect                                         method    -         s            -
org.freedesktop.DBus.Peer                           interface -         -            -
.GetMachineId                                       method    -         s            -
.Ping                                               method    -         -            -
org.freedesktop.DBus.Properties                     interface -         -            -
.Get                                                method    ss        v            -
.GetAll                                             method    s         a{sv}        -
.Set                                                method    ssv       -            -
.PropertiesChanged                                  signal    sa{sv}as  -            -
xyz.openbmc_project.Inventory.Source.DevicePresence interface -         -            -
.Name                                               property  s         "LeakPort1"  emits-change writable
```

3. Show cable inventory
```
root@bmc:~# busctl tree xyz.openbmc_project.EntityManager | grep -i cable
        └─ /xyz/openbmc_project/inventory/system/cable
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort1
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort10
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort11
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort12
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort13
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort14
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort15
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort16
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort17
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort18
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort19
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort2
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort20
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort21
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort22
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort23
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort24
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort25
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort26
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort27
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort3
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort4
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort5
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort6
          ├─ /xyz/openbmc_project/inventory/system/cable/LeakPort7
          └─ /xyz/openbmc_project/inventory/system/cable/LeakPort8
```

4. Redfish cable inventory -
```
{
  "@odata.id": "/redfish/v1/Cables",
  "@odata.type": "#CableCollection.CableCollection",
  "Description": "Collection of Cable Entries",
  "Members": [
    {
      "@odata.id": "/redfish/v1/Cables/LeakPort1"
    },
    {
      "@odata.id": "/redfish/v1/Cables/LeakPort2"
    },
    {
      "@odata.id": "/redfish/v1/Cables/LeakPort3"
    },
    ...
    ...
    {
      "@odata.id": "/redfish/v1/Cables/LeakPort27"
    }
  ],
  "Members@odata.count": 26,
  "Name": "Cable Collection"
}

```

5. Redfish query specific cable -
```
{
  "@odata.id": "/redfish/v1/Cables/LeakPort1",
  "@odata.type": "#Cable.v1_0_0.Cable",
  "Id": "LeakPort1",
  "Name": "Cable",
  "Status": {
    "State": "Enabled"
  }
}
```

Change-Id: I473b9b47e65511a81cc0aa9fd64e84d16dec093e
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
diff --git a/configurations/meson.build b/configurations/meson.build
index 4e769c0..6a3ffd7 100644
--- a/configurations/meson.build
+++ b/configurations/meson.build
@@ -105,6 +105,7 @@
     'meta/minerva_tahan_smb.json',
     'meta/terminus_2x100g_nic_tsff.json',
     'meta/twinlake.json',
+    'meta/ventura_cable.json',
     'meta/ventura_fanboard_adc_max.json',
     'meta/ventura_fanboard_adc_tic.json',
     'meta/ventura_ioboard.json',