Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d7d170a8 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'tag-chrome-platform-for-v5.3' of...

Merge tag 'tag-chrome-platform-for-v5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux

Pull chrome platform updates from Benson Leung
 "CrOS EC:
   - Add new CrOS ISHTP transport protocol
   - Add proper documentation for debugfs entries and expose resume and
     uptime files
   - Select LPC transport protocol variant at runtime.
   - Add lid angle sensor driver
   - Fix oops on suspend/resume for lightbar driver
   - Set CrOS SPI transport protol in realtime

  Wilco EC:
   - Add telemetry char device interface
   - Add support for event handling
   - Add new sysfs attributes

  Misc:
   - Contains ib-mfd-cros-v5.3 immutable branch from mfd, with
     cros_ec_commands.h header freshly synced with Chrome OS's EC
     project"

* tag 'tag-chrome-platform-for-v5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux: (54 commits)
  mfd / platform: cros_ec_debugfs: Expose resume result via debugfs
  platform/chrome: lightbar: Get drvdata from parent in suspend/resume
  iio: cros_ec: Add lid angle driver
  platform/chrome: wilco_ec: Add circular buffer as event queue
  platform/chrome: cros_ec_lpc_mec: Fix kernel-doc comment first line
  platform/chrome: cros_ec_lpc: Choose Microchip EC at runtime
  platform/chrome: cros_ec_lpc: Merge cros_ec_lpc and cros_ec_lpc_reg
  Input: cros_ec_keyb: mask out extra flags in event_type
  platform/chrome: wilco_ec: Fix unreleased lock in event_read()
  platform/chrome: cros_ec_debugfs: cros_ec_uptime_fops can be static
  platform/chrome: cros_ec_debugfs: Add debugfs ABI documentation
  platform/chrome: cros_ec_debugfs: Fix kernel-doc comment first line
  platform/chrome: cros_ec_debugfs: Add debugfs entry to retrieve EC uptime
  mfd: cros_ec: Update I2S API
  mfd: cros_ec: Add Management API entry points
  mfd: cros_ec: Add SKU ID and Secure storage API
  mfd: cros_ec: Add API for rwsig
  mfd: cros_ec: Add API for Fingerprint support
  mfd: cros_ec: Add API for Touchpad support
  mfd: cros_ec: Add API for EC-EC communication
  ...
parents d06e4156 8c3166e1
Loading
Loading
Loading
Loading
+56 −0
Original line number Diff line number Diff line
What:		/sys/kernel/debug/<cros-ec-device>/console_log
Date:		September 2017
KernelVersion:	4.13
Description:
		If the EC supports the CONSOLE_READ command type, this file
		can be used to grab the EC logs. The kernel polls for the log
		and keeps its own buffer but userspace should grab this and
		write it out to some logs.

What:		/sys/kernel/debug/<cros-ec-device>/panicinfo
Date:		September 2017
KernelVersion:	4.13
Description:
		This file dumps the EC panic information from the previous
		reboot. This file will only exist if the PANIC_INFO command
		type is supported by the EC.

What:		/sys/kernel/debug/<cros-ec-device>/pdinfo
Date:		June 2018
KernelVersion:	4.17
Description:
		This file provides the port role, muxes and power debug
		information for all the USB PD/type-C ports available. If
		the are no ports available, this file will be just an empty
		file.

What:		/sys/kernel/debug/<cros-ec-device>/uptime
Date:		June 2019
KernelVersion:	5.3
Description:
		A u32 providing the time since EC booted in ms. This is
		is used for synchronizing the AP host time with the EC
		log. An error is returned if the command is not supported
		by the EC or there is a communication problem.

What:		/sys/kernel/debug/<cros-ec-device>/last_resume_result
Date:		June 2019
KernelVersion:	5.3
Description:
		Some ECs have a feature where they will track transitions to
		the (Intel) processor's SLP_S0 line, in order to detect cases
		where a system failed to go into S0ix. When the system resumes,
		an EC with this feature will return a summary of SLP_S0
		transitions that occurred. The last_resume_result file returns
		the most recent response from the AP's resume message to the EC.

		The bottom 31 bits contain a count of the number of SLP_S0
		transitions that occurred since the suspend message was
		received. Bit 31 is set if the EC attempted to wake the
		system due to a timeout when watching for SLP_S0 transitions.
		Callers can use this to detect a wake from the EC due to
		S0ix timeouts. The result will be zero if no suspend
		transitions have been attempted, or the EC does not support
		this feature.

		Output will be in the format: "0x%08x\n".
+7 −9
Original line number Diff line number Diff line
@@ -23,11 +23,9 @@ Description:

		For writing, bytes 0-1 indicate the message type, one of enum
		wilco_ec_msg_type. Byte 2+ consist of the data passed in the
		request, starting at MBOX[0]

		At least three bytes are required for writing, two for the type
		and at least a single byte of data. Only the first
		EC_MAILBOX_DATA_SIZE bytes of MBOX will be used.
		request, starting at MBOX[0]. At least three bytes are required
		for writing, two for the type and at least a single byte of
		data.

		Example:
		// Request EC info type 3 (EC firmware build date)
@@ -40,7 +38,7 @@ Description:
		$ cat /sys/kernel/debug/wilco_ec/raw
		00 00 31 32 2f 32 31 2f 31 38 00 38 00 01 00 2f 00  ..12/21/18.8...

		Note that the first 32 bytes of the received MBOX[] will be
		printed, even if some of the data is junk. It is up to you to
		know how many of the first bytes of data are the actual
		response.
		Note that the first 16 bytes of the received MBOX[] will be
		printed, even if some of the data is junk, and skipping bytes
		17 to 32. It is up to you to know how many of the first bytes of
		data are the actual response.
+40 −0
Original line number Diff line number Diff line
What:		/sys/bus/platform/devices/GOOG000C\:00/boot_on_ac
Date:		April 2019
KernelVersion:	5.3
Description:
		Boot on AC is a policy which makes the device boot from S5
		when AC power is connected. This is useful for users who
		want to run their device headless or with a dock.

		Input should be parseable by kstrtou8() to 0 or 1.

What:          /sys/bus/platform/devices/GOOG000C\:00/build_date
Date:          May 2019
KernelVersion: 5.3
Description:
               Display Wilco Embedded Controller firmware build date.
               Output will a MM/DD/YY string.

What:          /sys/bus/platform/devices/GOOG000C\:00/build_revision
Date:          May 2019
KernelVersion: 5.3
Description:
               Display Wilco Embedded Controller build revision.
               Output will a version string be similar to the example below:
               d2592cae0

What:          /sys/bus/platform/devices/GOOG000C\:00/model_number
Date:          May 2019
KernelVersion: 5.3
Description:
               Display Wilco Embedded Controller model number.
               Output will a version string be similar to the example below:
               08B6

What:          /sys/bus/platform/devices/GOOG000C\:00/version
Date:          May 2019
KernelVersion: 5.3
Description:
               Display Wilco Embedded Controller firmware version.
               The format of the string is x.y.z. Where x is major, y is minor
               and z is the build number. For example: 95.00.06
+9 −0
Original line number Diff line number Diff line
@@ -21,3 +21,12 @@ config IIO_CROS_EC_SENSORS
	  Accelerometers, Gyroscope and Magnetometer that are
	  presented by the ChromeOS EC Sensor hub.
	  Creates an IIO device for each functions.

config IIO_CROS_EC_SENSORS_LID_ANGLE
	tristate "ChromeOS EC Sensor for lid angle"
	depends on IIO_CROS_EC_SENSORS_CORE
	help
	  Module to report the angle between lid and base for some
	  convertible devices.
	  This module is loaded when the EC can calculate the angle between the base
	  and the lid.
+1 −0
Original line number Diff line number Diff line
@@ -5,3 +5,4 @@

obj-$(CONFIG_IIO_CROS_EC_SENSORS_CORE) += cros_ec_sensors_core.o
obj-$(CONFIG_IIO_CROS_EC_SENSORS) += cros_ec_sensors.o
obj-$(CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE) += cros_ec_lid_angle.o
Loading