CP-8358: Don't filter out quotes before parsing lspci output

Instead take them into account when doing the sscanf.

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Rename field pci.id to pci.pci_id

Signed-off-by: john Else <john.else@citrix.com>
CP-8358: Decompose Xapi_pci_helpers.pci into a collection of int64/st…
…ring pairs

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Add subsystem IDs to PCI objects

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Log the new pci fields after test failures

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Typo fix in comment

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Read physical subsystem device from vgpu config files

If the value of plugin0.pdev_id in the config file is of the form

"0x1234"

then store None as the physical subsystem device ID.

If the value is of the form

"0x1234:0x5678"

then store (Some 0x5678) as the physical subsystem device ID.

In both cases 0x1234 will be stored as the physical device ID.

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Refactor print_vgpu_conf into two functions

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Print the new psubdev_id on test failure

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Add tests of the vgpu config parser

Includes a couple of example config files.

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Log physical subsystem device ID of relevant VGPU types

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Only pass one PCI ID to relevant_vgpu_types

Signed-off-by: John Else <john.else@citrix.com>
CP-8358: Take subsystem device ID into account in relevant_vgpu_types

If the VGPU config file specifies a particular physical subsystem ID,
then the device must have the same ID for that VGPU configuration to be
supported.

If the config file doesn't specify a physical subsystem ID, then the ID
of the device doesn't matter.

Signed-off-by: John Else <john.else@citrix.com>
Remove unnecessary scanning indications

This breaks the sscanf in OCaml 4.01.0

Signed-off-by: John Else <john.else@citrix.com>
Change schema version to clearwater_whetstone_release

Signed-off-by: John Else <john.else@citrix.com>
Merge pull request #1874 from zhengyul/HFX-1238

HFX-1238: Pick CP-8359 & CP-8358: Use Subsystem ID when determining vGPU support on physical GPUs from creedence to clearwater-sp1-lcm