1# chassis 2 3## Description 4 5A chassis within the system. 6 7Chassis are typically a physical enclosure that contains system components such 8as CPUs, fans, power supplies, and PCIe cards. A chassis can be stand-alone, 9such as a tower or desktop. A chassis can also be designed to be mounted in an 10equipment rack. 11 12A chassis only needs to be defined in the config file if it contains a power 13sequencer device. 14 15### Chassis Templates 16 17In a multiple chassis system, two or more of the chassis may have the same 18hardware design. 19 20A [chassis template](chassis_template.md) can be used to avoid duplicate data. 21 22Specify the "template_id" and "template_variable_values" properties to use a 23chassis template. 24 25## Properties 26 27| Name | Required | Type | Description | 28| :----------------------- | :-----------------: | :------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------- | 29| comments | no | array of strings | One or more comment lines describing this chassis. | 30| number | see [notes](#notes) | number | Chassis number within the system. Chassis numbers start at 1 because chassis 0 represents the entire system. | 31| inventory_path | see [notes](#notes) | string | D-Bus inventory path of the chassis, such as "/xyz/openbmc_project/inventory/system/chassis". | 32| power_sequencers | see [notes](#notes) | array of [power_sequencers](power_sequencer.md) | One or more power sequencer devices within the chassis. | 33| template_id | see [notes](#notes) | string | Unique ID of the [chassis template](chassis_template.md) to use for the contents of this chassis. | 34| template_variable_values | see [notes](#notes) | [template_variable_values](template_variable_values.md) | Chassis-specific values for chassis template variables. | 35 36### Notes 37 38- You must specify exactly one of the following two groups of properties: 39 - "number", "inventory_path", and "power_sequencers" 40 - "template_id" and "template_variable_values" 41 42## Examples 43 44```json 45{ 46 "number": 1, 47 "inventory_path": "/xyz/openbmc_project/inventory/system/chassis", 48 "power_sequencers": [ 49 { 50 "type": "UCD90320", 51 "i2c_interface": { "bus": 3, "address": "0x11" }, 52 "power_control_gpio_name": "power-chassis-control", 53 "power_good_gpio_name": "power-chassis-good", 54 "rails": [ 55 { 56 "name": "VDD_CPU0", 57 "page": 11, 58 "check_status_vout": true 59 }, 60 { 61 "name": "VCS_CPU1", 62 "presence": "/xyz/openbmc_project/inventory/system/chassis/motherboard/cpu1", 63 "gpio": { "line": 60 } 64 } 65 ] 66 } 67 ] 68} 69``` 70 71```json 72{ 73 "comments": ["Chassis 2: Standard hardware layout"], 74 "template_id": "standard_chassis_template", 75 "template_variable_values": { 76 "chassis_number": "2", 77 "sequencer_bus_number": "13" 78 } 79} 80``` 81