regulators: Allow empty expected VPD value
Modify the compare_vpd action to support specifying an empty string or
empty byte vector as the expected keyword value.
The VPD service was modified in a previous commit to return an empty
keyword value if the VPD interface or keyword does not exist on the
specified D-Bus object path. Thus, the actual keyword value may be
empty.
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com>
Change-Id: If48ab6423c40e5b24d6cff72264dc2efe750c85f
diff --git a/phosphor-regulators/schema/config_schema.json b/phosphor-regulators/schema/config_schema.json
index 2e0a8b7..dbfed58 100644
--- a/phosphor-regulators/schema/config_schema.json
+++ b/phosphor-regulators/schema/config_schema.json
@@ -133,7 +133,7 @@
"fru": {"$ref": "#/definitions/inventory_path" },
"keyword": {"$ref": "#/definitions/keyword" },
"value": {"$ref": "#/definitions/string_value" },
- "byte_values": {"$ref": "#/definitions/bytes_values" }
+ "byte_values": {"$ref": "#/definitions/byte_values_min0" }
},
"required": ["fru", "keyword"],
"oneOf": [
@@ -236,21 +236,28 @@
"properties":
{
"register": {"$ref": "#/definitions/register" },
- "values": {"$ref": "#/definitions/bytes_values" },
- "masks": {"$ref": "#/definitions/bytes_masks" }
+ "values": {"$ref": "#/definitions/byte_values" },
+ "masks": {"$ref": "#/definitions/byte_masks" }
},
"required": ["register", "values"],
"additionalProperties": false
},
- "bytes_values":
+ "byte_values":
{
"type": "array",
"items": {"$ref": "#/definitions/byte_value" },
"minItems": 1
},
- "bytes_masks":
+ "byte_values_min0":
+ {
+ "type": "array",
+ "items": {"$ref": "#/definitions/byte_value" },
+ "minItems": 0
+ },
+
+ "byte_masks":
{
"type": "array",
"items": {"$ref": "#/definitions/byte_mask" },