1d1312fcaSShawn McCarney# power_sequencer 2d1312fcaSShawn McCarney 3d1312fcaSShawn McCarney## Description 4d1312fcaSShawn McCarney 5d1312fcaSShawn McCarneyA power sequencer device within a chassis. 6d1312fcaSShawn McCarney 7d1312fcaSShawn McCarneyThe power sequencer is responsible for performing the following tasks on a set 8d1312fcaSShawn McCarneyof [voltage rails](rail.md): 9d1312fcaSShawn McCarney 10d1312fcaSShawn McCarney- Power the rails on in the correct order 11d1312fcaSShawn McCarney- Monitor the rails for a [pgood fault](../pgood_faults.md) 12d1312fcaSShawn McCarney- Power off the rails in the correct order 13d1312fcaSShawn McCarney 14d1312fcaSShawn McCarneyNote that some voltage rails may automatically power on/off without the power 15d1312fcaSShawn McCarneysequencer, but they might still be monitored for pgood faults. 16d1312fcaSShawn McCarney 17d1312fcaSShawn McCarney[Named GPIOs](../named_gpios.md) are used for the following: 18d1312fcaSShawn McCarney 19d1312fcaSShawn McCarney- Power the sequencer on and off 20d1312fcaSShawn McCarney- Monitor the power good signal from the sequencer. This signal is true when all 21d1312fcaSShawn McCarney rails are providing the expected voltage level. 22d1312fcaSShawn McCarney 23d1312fcaSShawn McCarney## Properties 24d1312fcaSShawn McCarney 25d1312fcaSShawn McCarney| Name | Required | Type | Description | 26*7b7a5632SShawn McCarney| :---------------------- | :-----------------: | :-------------------------------- | :---------------------------------------------------------------------------------------------------------------------------- | 27d1312fcaSShawn McCarney| comments | no | array of strings | One or more comment lines describing this power sequencer. | 28*7b7a5632SShawn McCarney| type | yes | string | Power sequencer type. Specify one of the following supported types: "UCD90160", "UCD90320", "gpios_only_device". | 29*7b7a5632SShawn McCarney| i2c_interface | see [notes](#notes) | [i2c_interface](i2c_interface.md) | I2C interface to this power sequencer. | 30d1312fcaSShawn McCarney| power_control_gpio_name | yes | string | Named GPIO for turning this power sequencer on and off. | 31d1312fcaSShawn McCarney| power_good_gpio_name | yes | string | Named GPIO for reading the power good signal from this power sequencer. | 32*7b7a5632SShawn McCarney| rails | see [notes](#notes) | array of [rails](rail.md) | One or more voltage rails powered on/off and monitored by this power sequencer. The rails must be in power on sequence order. | 33*7b7a5632SShawn McCarney 34*7b7a5632SShawn McCarney### Notes 35*7b7a5632SShawn McCarney 36*7b7a5632SShawn McCarney- The "i2c_interface" and "rails" properties are required if the "type" is 37*7b7a5632SShawn McCarney "UCD90160" or "UCD90320". They are ignored if the "type" is 38*7b7a5632SShawn McCarney "gpios_only_device". 39d1312fcaSShawn McCarney 40d1312fcaSShawn McCarney## Example 41d1312fcaSShawn McCarney 42d1312fcaSShawn McCarney```json 43d1312fcaSShawn McCarney{ 44d1312fcaSShawn McCarney "type": "UCD90320", 45d1312fcaSShawn McCarney "i2c_interface": { "bus": 3, "address": "0x11" }, 46d1312fcaSShawn McCarney "power_control_gpio_name": "power-chassis-control", 47d1312fcaSShawn McCarney "power_good_gpio_name": "power-chassis-good", 48d1312fcaSShawn McCarney "rails": [ 49d1312fcaSShawn McCarney { 50d1312fcaSShawn McCarney "name": "VDD_CPU0", 51d1312fcaSShawn McCarney "page": 11, 52d1312fcaSShawn McCarney "check_status_vout": true 53d1312fcaSShawn McCarney }, 54d1312fcaSShawn McCarney { 55d1312fcaSShawn McCarney "name": "VCS_CPU1", 56d1312fcaSShawn McCarney "presence": "/xyz/openbmc_project/inventory/system/chassis/motherboard/cpu1", 57d1312fcaSShawn McCarney "gpio": { "line": 60 } 58d1312fcaSShawn McCarney } 59d1312fcaSShawn McCarney ] 60d1312fcaSShawn McCarney} 61d1312fcaSShawn McCarney``` 62