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