blob: a071d50d651961122f6bd55568c292e05b54e623 [file] [log] [blame]
<?xml version="1.0"?>
<root>
<!-- TODO(tbroch): Add remaining controls (UART,GPIO) -->
<!-- ********** Maps ********** -->
<include>
<name>common.xml</name>
</include>
<map>
<name>vref_sel_v3</name>
<doc>Determine VREF between pp3300, pp2500, pp1800 and off.
Default is off</doc>
<params off="0" pp2500="4" pp1800="2" pp3300="1"></params>
</map>
<map>
<name>duthub</name>
<doc>Determine whether DUT sees USB hub or Servo via USB port
(TYPE MICRO-B/J6)</doc>
<params dut_sees_hub="0" dut_sees_servo="1"></params>
</map>
<!-- ********** I2c related controls ********** -->
<!-- slv 0x20 : ioexpander port 0 -->
<control>
<name>dut_flaga</name>
<doc>dut_flaga</doc>
<params interface="2" drv="tca6416" slv="0x20" port="0"
offset="0" map="onoff"></params>
</control>
<control>
<name>dut_flagb</name>
<doc>dut_flagb</doc>
<params interface="2" drv="tca6416" slv="0x20" port="0"
offset="1" map="onoff"></params>
</control>
<control>
<name>pch_disable</name>
<doc>DUT specific. Note, is aliased to jtag_buf_on_flex_en
GPIO</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="0"
offset="2" map="onoff_i" init="off"></params>
</control>
<!-- bit overloaded for enabling flex cable buffers -->
<control>
<name>jtag_buf_on_flex_en</name>
<doc>Enables JTAG buffer on servo flex. Note, is aliased to
pch_disable GPIO</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="0"
offset="2" map="onoff_i" init="off"></params>
</control>
<control>
<name>cold_reset</name>
<doc>cold_reset</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="0"
offset="3" map="onoff_i" init="off"></params>
</control>
<control>
<name>warm_reset</name>
<doc>warm_reset</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="0"
offset="4" map="onoff_i" init="off"></params>
</control>
<control>
<name>dev_mode</name>
<doc>dev_mode GPIO. Note, is aliased to spi1_buf_on_flex_en
GPIO</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="0"
offset="5" map="onoff"></params>
</control>
<!-- bit overloaded for enabling flex cable buffers -->
<control>
<name>spi1_buf_on_flex_en</name>
<doc>Enables SPI1 buffers on servo flex. Note, is aliased to
dev_mode GPIO</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="0"
offset="5" map="onoff_i" init="off"></params>
</control>
<control>
<name>tp78</name>
<doc>tp78 on U25 pin 10</doc>
<params interface="2" drv="tca6416" slv="0x20" port="0"
offset="6" map="onoff"></params>
</control>
<control>
<name>sd_detect</name>
<doc>SD Card detect</doc>
<params cmd="set" interface="2" drv="tca6416" slv="0x23"
port="1" offset="7" map="onoff_i"></params>
<params cmd="get" interface="2" drv="tca6416" slv="0x20"
port="0" offset="7" map="onoff_i"></params>
</control>
<!-- slv 0x20 : ioexpander port 1 -->
<control>
<name>spi_hold</name>
<doc>spi_hold</doc>
<params interface="2" drv="tca6416" slv="0x20" port="1"
offset="0" map="onoff_i"></params>
</control>
<control>
<name>dut_nmi</name>
<doc>dut_nmi</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="1"
offset="1" map="onoff"></params>
</control>
<control>
<name>hpd</name>
<doc>hpd</doc>
<params interface="2" drv="tca6416" slv="0x20" port="1"
offset="2" map="onoff"></params>
</control>
<control>
<name>fw_wp</name>
<doc>Firmware write-protect GPIO</doc>
<params cmd="get" interface="2" drv="tca6416" slv="0x20"
port="1" offset="3" map="onoff_i"></params>
<params cmd="set" interface="2" drv="tca6416" slv="0x22"
port="1" offset="5" map="onoff_i"></params>
</control>
<control>
<name>pwr_button</name>
<doc>Power button GPIO</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="1"
offset="4" map="press" init="release"></params>
</control>
<control>
<name>lid_open</name>
<doc>lid open GPIO. Note, is aliased to spi2_buf_on_flex_en
GPIO</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="1"
offset="5" map="yesno" init="yes"></params>
</control>
<!-- bit overloaded for enabling flex cable buffers -->
<control>
<name>spi2_buf_on_flex_en</name>
<doc>Enables SPI2 buffers on servo flex. Note, is aliased to
lid_open GPIO</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="1"
offset="5" map="onoff_i" init="off"></params>
</control>
<control>
<name>rec_mode</name>
<doc>Google recovery mode</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="1"
offset="6" map="onoff_i" init="off"></params>
</control>
<control>
<name>fw_up</name>
<alias>t20_rec</alias>
<doc>Firmware update mode via USB</doc>
<params interface="2" drv="tca6416" slv="0x20" od="PU" port="1"
offset="7" map="onoff_i" init="off"></params>
</control>
<!-- slv 0x21 : ioexpander port 0 -->
<control>
<name>jtag_vref</name>
<doc>jtag_vref</doc>
<params interface="2" drv="tca6416" slv="0x21" port="0"
offset="0" width="3" map="vref_sel_v3" init="off"></params>
</control>
<control>
<name>spi1_vref</name>
<doc>spi1_vref</doc>
<params interface="2" drv="tca6416" slv="0x21" port="0"
offset="3" width="3" map="vref_sel_v3" init="off"></params>
</control>
<!-- TODO(tbroch) See if there is a way to implement multi-bit
control across GPIO expander port -->
<control>
<name>uart3_vref_33</name>
<doc>uart3_vref_33</doc>
<params interface="2" drv="tca6416" slv="0x21" port="0"
offset="6" width="1" map="onoff" init="off"></params>
</control>
<control>
<name>uart3_vref_25</name>
<doc>uart3_vref_25</doc>
<params interface="2" drv="tca6416" slv="0x21" port="0"
offset="7" width="1" map="onoff" init="off"></params>
</control>
<!-- slv 0x21 : ioexpander port 1 -->
<control>
<name>uart3_vref_18</name>
<doc>uart3_vref_18</doc>
<params interface="2" drv="tca6416" slv="0x21" port="1"
offset="0" width="1" map="onoff" init="off"></params>
</control>
<control>
<name>spi2_vref</name>
<doc>spi2_vref</doc>
<alias>fw_wp_vref</alias>
<params interface="2" drv="tca6416" slv="0x21" port="1"
offset="2" width="3" map="vref_sel_v3" init="off"></params>
</control>
<control>
<name>sd_vref</name>
<doc>sd_vref</doc>
<params interface="2" drv="tca6416" slv="0x21" port="1"
offset="5" width="3" map="vref_sel_v3" init="off"></params>
</control>
<!-- ********** GPIO related controls ********** -->
<control>
<name>uart1_en</name>
<alias>ec_uart_en</alias>
<doc>Enable communication with EC's uart console</doc>
<params interface="1" drv="gpio" chip="2" offset="3"
map="onoff_i" init="on"></params>
</control>
<control>
<name>uart2_en</name>
<alias>cpu_uart_en</alias>
<doc>Enable communication with CPU's uart console</doc>
<params interface="1" drv="gpio" chip="2" offset="4"
map="onoff_i" init="on"></params>
</control>
<control>
<name>uart3_en</name>
<alias>legacy_uart_en</alias>
<doc>Enable communication with legacy (v1) uart console.</doc>
<params interface="1" drv="gpio" chip="2" offset="9"
map="onoff_i" init="on"></params>
</control>
<control>
<name>dut_hub1_rst1</name>
<doc>Reset DUT's USB hub with ethernet (RJ45/I54) and USB port
(TYPE A/J3, TYPE A/J8, TYPE A/J10)</doc>
<params interface="1" drv="gpio" chip="2" offset="17"
map="onoff_i"></params>
</control>
<control>
<name>dut_hub_on</name>
<doc>Enables DUT's USB hub with ethernet (RJ45/I54) and USB
port (Vert TYPE A/J3)</doc>
<params interface="1" drv="gpio" chip="1" offset="29" map="yesno_i">
</params>
</control>
<control>
<name>dut_hub_sel</name>
<doc>2to1 Mux select for USB port (TYPE MICRO-B/J6). Set either
'dut_sees_hub' or 'dut_sees_servo'</doc>
<params interface="1" drv="gpio" chip="2" offset="11" map="duthub">
</params>
</control>
<control>
<name>dut_hub_ocs</name>
<doc>DUT USB hub over current signal (OCS). This hub supports
ethernet (RJ45/I54) and USB port (vert TYPE A/J8)</doc>
<params interface="1" drv="gpio" chip="2" offset="5" map="onoff_i">
</params>
</control>
<control>
<name>dut_hub_pwren</name>
<doc>enable power to DUT's USB hub</doc>
<params interface="1" drv="gpio" chip="2" offset="7" map="onoff">
</params>
</control>
<control>
<name>prtctl4_pwren</name>
<doc>USB port 4 (TYPE A/J3, USB key) power enable</doc>
<params interface="1" drv="gpio" chip="2" offset="13" map="onoff">
</params>
</control>
<control>
<name>prtctl4_ocs</name>
<doc>USB port 4 (J3, USB key) over current signal (OCS)</doc>
<params interface="1" drv="gpio" chip="1" offset="2" map="onoff_i">
</params>
</control>
<control>
<name>usb_mux_oe1</name>
<doc>Output enable for USB port (vert TYPE A/J3) to DUT via DUT
USB hub</doc>
<params interface="1" drv="gpio" chip="2" offset="25" map="onoff_i">
</params>
</control>
<control>
<name>usb_mux_sel1</name>
<doc>2to1 mux select for USB port (vert TYPE A/J3). Set either
'dut_sees_usbkey' or 'servo_sees_usbkey'</doc>
<params interface="1" drv="gpio" chip="0" offset="11" map="usbkey">
</params>
</control>
<control>
<name>prtctl2_pwren</name>
<doc>USB port 2 (TYPE A/J9) power enable</doc>
<params interface="1" drv="gpio" chip="0" offset="10" map="onoff">
</params>
</control>
<control>
<name>prtctl2_ocs</name>
<doc>USB port 2 (TYPE A/J9) over current signal (OCS)</doc>
<params interface="1" drv="gpio" chip="0" offset="9" map="onoff_i">
</params>
</control>
<control>
<name>usb_mux_oe3</name>
<doc>Output enable for USB port (vert TYPE A/J8) to DUT via DUT
USB hub</doc>
<params interface="1" drv="gpio" chip="1" offset="16" map="onoff_i">
</params>
</control>
<control>
<name>usb_mux_sel3</name>
<doc>2to1 mux select for USB port (vert TYPE A/J8). Set either
'dut_sees_usbkey' or 'servo_sees_usbkey'</doc>
<params interface="1" drv="gpio" chip="1" offset="28" map="usbkey">
</params>
</control>
<control>
<name>prtctl3_pwren</name>
<doc>USB port 3 (TYPE A/J10) power enable</doc>
<params interface="1" drv="gpio" chip="2" offset="23" map="onoff">
</params>
</control>
<control>
<name>prtctl3_ocs</name>
<doc>USB port 3 (TYPE A/J10) over current signal (OCS)</doc>
<params interface="1" drv="gpio" chip="0" offset="8" map="onoff_i">
</params>
</control>
<control>
<name>usb_mux_oe4</name>
<doc>usb_mux_oe4</doc>
<params interface="1" drv="gpio" chip="1" offset="0" map="onoff_i">
</params>
</control>
<control>
<name>usb_mux_sel4</name>
<doc>usb_mux_sel4</doc>
<params interface="1" drv="gpio" chip="1" offset="1" map="onoff">
</params>
</control>
<control>
<name>dut_usb2_prtctl</name>
<doc>power enable for USB port (TYPE A/J4) to DUT via USB port
(TYPE MICRO-B/J5)</doc>
<params interface="1" drv="gpio" chip="2" offset="16" map="onoff">
</params>
</control>
<control>
<name>dut_usb2_ocs</name>
<doc>Over-current signal for USB port (TYPE A/J4) to DUT via
USB port (TYPE MICRO-B/J5)</doc>
<params interface="1" drv="gpio" chip="1" offset="4" map="onoff_i">
</params>
</control>
<control>
<name>usb_mux_oe2</name>
<doc>Output enable for USB port (TYPE A/J4) to DUT via USB port
(TYPE MICRO-B/J5)</doc>
<params interface="1" drv="gpio" chip="2" offset="24" map="onoff_i">
</params>
</control>
<control>
<name>spi1_buf_en</name>
<doc>spi1_buf_en</doc>
<params interface="1" drv="gpio" chip="0" offset="23" map="onoff_i">
</params>
</control>
<control>
<name>spi2_buf_en</name>
<doc>spi2_buf_en</doc>
<params interface="1" drv="gpio" chip="1" offset="15" map="onoff_i">
</params>
</control>
<control>
<name>ec_spi</name>
<doc>Enable power to DUT for programming EC SPI Flash</doc>
<params interface="1" drv="gpio" chip="1" offset="6" map="onoff_i">
</params>
</control>
<control>
<name>atmega_rst</name>
<doc>atmega_rst</doc>
<params interface="1" drv="gpio" chip="1" offset="14" map="onoff_i">
</params>
</control>
<control>
<name>at_hwb</name>
<doc>at_hwb</doc>
<params interface="1" drv="gpio" chip="0" offset="27" map="onoff_i">
</params>
</control>
<control>
<name>at_buf_en</name>
<doc>at_buf_en</doc>
<params interface="1" drv="gpio" chip="2" offset="1" map="onoff_i">
</params>
</control>
<control>
<name>jtag_buf_en</name>
<doc>jtag_buf_en</doc>
<params interface="1" drv="gpio" chip="1" offset="12" map="onoff_i"
init="off"></params>
</control>
<control>
<name>fw_wp_en</name>
<doc>Enables forwarding of write-protect gpio. Must assert this
and set fw_wp_vref prior to changing fw_wp.</doc>
<params interface="1" drv="gpio" chip="0" offset="26" map="onoff"
init="off"></params>
</control>
<control>
<name>sd_en</name>
<doc>Enable for SD Card detect</doc>
<params cmd="set" interface="1" drv="gpio" chip="1" offset="13"
map="onoff"></params>
</control>
<control>
<name>at_to_ftdi_tx</name>
<doc>at_to_ftdi_tx</doc>
<params interface="1" drv="gpio" chip="0" offset="30" map="onoff">
</params>
</control>
<control>
<name>ftdi_to_at_tx</name>
<doc>ftdi_to_at_tx</doc>
<params interface="1" drv="gpio" chip="0" offset="31" map="onoff">
</params>
</control>
<control>
<name>bb_kbd_m1_c2_r1</name>
<doc>bb_kbd_m1_c2_r1</doc>
<params interface="1" drv="gpio" chip="2" offset="22" map="onoff">
</params>
</control>
<control>
<name>bb_kbd_m1_c2_r2</name>
<doc>bb_kbd_m1_c2_r2</doc>
<params interface="1" drv="gpio" chip="2" offset="12" map="onoff">
</params>
</control>
<control>
<name>bb_kbd_m1_c2_r3</name>
<doc>bb_kbd_m1_c2_r3</doc>
<params interface="1" drv="gpio" chip="1" offset="30" map="onoff">
</params>
</control>
<control>
<name>bb_kbd_m2_c2_r1</name>
<doc>bb_kbd_m2_c2_r1</doc>
<params interface="1" drv="gpio" chip="2" offset="22" map="onoff">
</params>
</control>
<control>
<name>bb_kbd_m2_c2_r2</name>
<doc>bb_kbd_m2_c2_r2</doc>
<params interface="1" drv="gpio" chip="0" offset="22" map="onoff">
</params>
</control>
<control>
<name>bb_kbd_m2_c2_r3</name>
<doc>bb_kbd_m2_c2_r3</doc>
<params interface="1" drv="gpio" chip="2" offset="8" map="onoff">
</params>
</control>
<!-- UART -->
<control>
<name>uart1_pty</name>
<alias>ec_uart_pty</alias>
<doc>Psuedo-terminal (pty) thats connnected to EC's uart
console</doc>
<params cmd="get" subtype="pty" interface="7" drv="uart">
</params>
</control>
<control>
<name>uart1_baudrate</name>
<alias>ec_uart_baudrate</alias>
<doc>Baudrate for EC's uart console</doc>
<params drv="uart" subtype="props" line_prop="baudrate"
interface="7"></params>
</control>
<control>
<name>uart1_parity</name>
<alias>ec_uart_parity</alias>
<doc>Parity for EC's uart console</doc>
<params drv="uart" subtype="props" line_prop="parity"
interface="7" map="uart_parity"></params>
</control>
<control>
<name>uart1_sbits</name>
<alias>ec_uart_sbits</alias>
<doc>Number of stop bits for EC's uart console</doc>
<params drv="uart" subtype="props" line_prop="sbits"
interface="7" map="uart_sbits"></params>
</control>
<control>
<name>uart1_bits</name>
<alias>ec_uart_bits</alias>
<doc>Numbe of data bits for EC's uart console</doc>
<params drv="uart" subtype="props" line_prop="bits"
interface="7" map="uart_bits"></params>
</control>
<control>
<name>uart3_pty</name>
<alias>legacy_uart_pty</alias>
<doc>Legacy (v1) uart console. Typically connected to CPU's
uart console for devices which supported it.</doc>
<params cmd="get" subtype="pty" interface="3" drv="uart">
</params>
</control>
<control>
<name>uart3_baudrate</name>
<alias>legacy_uart_baudrate</alias>
<doc>Baudrate for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="baudrate"
interface="3"></params>
</control>
<control>
<name>uart3_parity</name>
<alias>legacy_uart_parity</alias>
<doc>Parity for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="parity"
interface="3" map="uart_parity"></params>
</control>
<control>
<name>uart3_sbits</name>
<alias>legacy_uart_sbits</alias>
<doc>Number of stop bits for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="sbits"
interface="3" map="uart_sbits"></params>
</control>
<control>
<name>uart3_bits</name>
<alias>legacy_uart_bits</alias>
<doc>Number of data bits for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="bits"
interface="3" map="uart_bits"></params>
</control>
<control>
<name>uart2_pty</name>
<alias>cpu_uart_pty</alias>
<doc>Psuedo-terminal (pty) thats connnected to CPU's uart
console</doc>
<params cmd="get" subtype="pty" interface="8" drv="uart">
</params>
</control>
<control>
<name>uart2_baudrate</name>
<alias>cpu_uart_baudrate</alias>
<doc>Baudrate for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="baudrate"
interface="8"></params>
</control>
<control>
<name>uart2_parity</name>
<alias>cpu_uart_parity</alias>
<doc>Parity for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="parity"
interface="8" map="uart_parity"></params>
</control>
<control>
<name>uart2_sbits</name>
<alias>cpu_uart_sbits</alias>
<doc>Number of stop bits for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="sbits"
interface="8" map="uart_sbits"></params>
</control>
<control>
<name>uart2_bits</name>
<alias>cpu_uart_bits</alias>
<doc>Number of data bits for CPU's uart console</doc>
<params drv="uart" subtype="props" line_prop="bits"
interface="8" map="uart_bits"></params>
</control>
<control>
<name>cpu_uart_cmd</name>
<doc>Set to send command to CPU UART. Get to obtain the matched
results with the regular expression of cpu_uart_regexp.</doc>
<params subtype="uart_cmd" interface="8" drv="uart"
input_type="str"></params>
</control>
<control>
<name>cpu_uart_regexp</name>
<doc>List of regular expressions which matches the response of
cpu_uart_cmd.</doc>
<params subtype="uart_regexp" interface="8" drv="uart"
input_type="str"></params>
</control>
<control>
<name>cpu_uart_timeout</name>
<doc>Timeout value for waiting CPU UART response of issuing an
EC command.</doc>
<params subtype="uart_timeout" interface="8" drv="uart"
input_type="float"></params>
</control>
<control>
<name>cpu_uart_capture</name>
<doc>cpu_uart_capture</doc>
<params subtype="uart_capture" interface="8" drv="uart"
map="onoff"></params>
</control>
<control>
<name>cpu_uart_stream</name>
<doc>Cpu uart stream collected while cpu_uart_capture is set to 'on'</doc>
<params cmd="get" subtype="uart_stream" interface="8" drv="uart"></params>
</control>
</root>