cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

debugfs-wilco-ec (1702B)


      1What:		/sys/kernel/debug/wilco_ec/h1_gpio
      2Date:		April 2019
      3KernelVersion:	5.2
      4Description:
      5		As part of Chrome OS's FAFT (Fully Automated Firmware Testing)
      6		tests, we need to ensure that the H1 chip is properly setting
      7		some GPIO lines. The h1_gpio attribute exposes the state
      8		of the lines:
      9		- ENTRY_TO_FACT_MODE in BIT(0)
     10		- SPI_CHROME_SEL in BIT(1)
     11
     12		Output will formatted with "0x%02x\n".
     13
     14What:		/sys/kernel/debug/wilco_ec/raw
     15Date:		January 2019
     16KernelVersion:	5.1
     17Description:
     18		Write and read raw mailbox commands to the EC.
     19
     20		You can write a hexadecimal sentence to raw, and that series of
     21		bytes will be sent to the EC. Then, you can read the bytes of
     22		response by reading from raw.
     23
     24		For writing, bytes 0-1 indicate the message type, one of enum
     25		wilco_ec_msg_type. Byte 2+ consist of the data passed in the
     26		request, starting at MBOX[0]. At least three bytes are required
     27		for writing, two for the type and at least a single byte of
     28		data.
     29
     30		Example::
     31
     32		    // Request EC info type 3 (EC firmware build date)
     33		    // Corresponds with sending type 0x00f0 with
     34		    // MBOX = [38, 00, 03, 00]
     35		    $ echo 00 f0 38 00 03 00 > /sys/kernel/debug/wilco_ec/raw
     36		    // View the result. The decoded ASCII result "12/21/18" is
     37		    // included after the raw hex.
     38		    // Corresponds with MBOX = [00, 00, 31, 32, 2f, 32, 31, 38, ...]
     39		    $ cat /sys/kernel/debug/wilco_ec/raw
     40		    00 00 31 32 2f 32 31 2f 31 38 00 38 00 01 00 2f 00  ..12/21/18.8...
     41
     42		Note that the first 16 bytes of the received MBOX[] will be
     43		printed, even if some of the data is junk, and skipping bytes
     44		17 to 32. It is up to you to know how many of the first bytes of
     45		data are the actual response.