debugfs-wilco-ec 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. What: /sys/kernel/debug/wilco_ec/h1_gpio
  2. Date: April 2019
  3. KernelVersion: 5.2
  4. Description:
  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. Output will formatted with "0x%02x\n".
  12. What: /sys/kernel/debug/wilco_ec/raw
  13. Date: January 2019
  14. KernelVersion: 5.1
  15. Description:
  16. Write and read raw mailbox commands to the EC.
  17. You can write a hexadecimal sentence to raw, and that series of
  18. bytes will be sent to the EC. Then, you can read the bytes of
  19. response by reading from raw.
  20. For writing, bytes 0-1 indicate the message type, one of enum
  21. wilco_ec_msg_type. Byte 2+ consist of the data passed in the
  22. request, starting at MBOX[0]. At least three bytes are required
  23. for writing, two for the type and at least a single byte of
  24. data.
  25. Example::
  26. // Request EC info type 3 (EC firmware build date)
  27. // Corresponds with sending type 0x00f0 with
  28. // MBOX = [38, 00, 03, 00]
  29. $ echo 00 f0 38 00 03 00 > /sys/kernel/debug/wilco_ec/raw
  30. // View the result. The decoded ASCII result "12/21/18" is
  31. // included after the raw hex.
  32. // Corresponds with MBOX = [00, 00, 31, 32, 2f, 32, 31, 38, ...]
  33. $ cat /sys/kernel/debug/wilco_ec/raw
  34. 00 00 31 32 2f 32 31 2f 31 38 00 38 00 01 00 2f 00 ..12/21/18.8...
  35. Note that the first 16 bytes of the received MBOX[] will be
  36. printed, even if some of the data is junk, and skipping bytes
  37. 17 to 32. It is up to you to know how many of the first bytes of
  38. data are the actual response.