| { |
| "$schema": "http://json-schema.org/draft-07/schema#", |
| "$defs": { |
| "FirmwareInfoDef": { |
| "description": "This indicates the properties which apply to all firmwares", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "VendorIANA": { |
| "description": "The IANA Enterprise Id of the hardware vendor", |
| "type": "number" |
| }, |
| "CompatibleHardware": { |
| "description": "The compatible hardware with name format com.<vendor>.Hardware.<XXX> specified by vendor in phosphor-dbus-interfaces", |
| "type": "string" |
| } |
| }, |
| "required": ["VendorIANA", "CompatibleHardware"] |
| }, |
| "I2CVRFirmware": { |
| "description": "Required information to complete I2C voltage regulator firmware update", |
| "object": "object", |
| "additionalProperties": false, |
| "properties": { |
| "Name": { |
| "description": "Name of the firmware", |
| "type": "string" |
| }, |
| "Type": { |
| "description": "The type of configuration object", |
| "enum": ["XDPE1X2XXFirmware", "ISL69269Firmware"] |
| }, |
| "Bus": { |
| "$ref": "legacy.json#/$defs/Types/Bus" |
| }, |
| "Address": { |
| "$ref": "legacy.json#/$defs/Types/Address" |
| }, |
| "FirmwareInfo": { |
| "$ref": "#/$defs/FirmwareInfoDef" |
| } |
| }, |
| "required": ["Name", "Type", "Bus", "Address", "FirmwareInfo"] |
| }, |
| "BIOS": { |
| "description": "Required information to complete the host fw update process.", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "Type": { |
| "description": "The type of configuration object. IntelSPIFlash implies Intel Flash Descriptor.", |
| "enum": ["IntelSPIFlash", "SPIFlash"] |
| }, |
| "Name": { |
| "description": "The name of the firmware.", |
| "type": "string" |
| }, |
| "SPIControllerIndex": { |
| "description": "The index of the SPI controller", |
| "type": "number" |
| }, |
| "SPIDeviceIndex": { |
| "description": "The index of the SPI device connected to that controller", |
| "type": "number" |
| }, |
| "MuxOutputs": { |
| "description": "The pin names and values for the mux which toggles the flash to BMC", |
| "type": "array", |
| "items": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "Name": { |
| "$ref": "legacy.json#/$defs/Types/Name" |
| }, |
| "Polarity": { |
| "$ref": "legacy.json#/$defs/Types/Polarity" |
| } |
| }, |
| "required": ["Name", "Polarity"] |
| } |
| }, |
| "FirmwareInfo": { |
| "$ref": "#/$defs/FirmwareInfoDef" |
| } |
| }, |
| "required": [ |
| "Name", |
| "Type", |
| "SPIControllerIndex", |
| "SPIDeviceIndex", |
| "MuxOutputs", |
| "FirmwareInfo" |
| ] |
| }, |
| "EEPROMDeviceFirmware": { |
| "description": "Required information to complete the EEPROM device firmware update process", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "Name": { |
| "description": "Unique identifier or label for the EEPROM device", |
| "type": "string" |
| }, |
| "Type": { |
| "description": "The type of configuration object", |
| "enum": ["PT5161LFirmware"] |
| }, |
| "Bus": { |
| "$ref": "legacy.json#/$defs/Types/Bus" |
| }, |
| "Address": { |
| "$ref": "legacy.json#/$defs/Types/Address" |
| }, |
| "FirmwareDevice": { |
| "description": "The device that stores the EEPROM device firmware", |
| "type": "string" |
| }, |
| "MuxOutputs": { |
| "description": "The pin names and polarities for the mux which toggles the flash to BMC", |
| "type": "array", |
| "items": { |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "Name": { |
| "$ref": "legacy.json#/$defs/Types/Name" |
| }, |
| "Polarity": { |
| "$ref": "legacy.json#/$defs/Types/Polarity" |
| } |
| }, |
| "required": ["Name", "Polarity"] |
| } |
| }, |
| "FirmwareInfo": { |
| "$ref": "#/$defs/FirmwareInfoDef" |
| } |
| }, |
| "required": [ |
| "Name", |
| "Type", |
| "Bus", |
| "Address", |
| "FirmwareDevice", |
| "FirmwareInfo" |
| ] |
| } |
| } |
| } |