<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/platform/chrome/Kconfig, branch v6.6.133</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.133</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.133'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2023-01-09T20:32:53+00:00</updated>
<entry>
<title>platform/chrome: cros_ec_typec: Alter module name with hyphens</title>
<updated>2023-01-09T20:32:53+00:00</updated>
<author>
<name>Prashant Malani</name>
<email>pmalani@chromium.org</email>
</author>
<published>2022-12-28T00:45:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e5eea6a3319fcd0d6c71c8ff359e0d8c5b1bd5cd'/>
<id>urn:sha1:e5eea6a3319fcd0d6c71c8ff359e0d8c5b1bd5cd</id>
<content type='text'>
Change the Type-C module name from cros_ec_typec to cros-ec-typec. This
allows us to include more files in the same module (rather than relying
on the file name cros_ec_typec to also be the module name).

Signed-off-by: Prashant Malani &lt;pmalani@chromium.org&gt;
[pmalani: Fixed trivial conflict in Makefile]
Reviewed-by: Benson Leung &lt;bleung@chromium.org&gt;
Acked-by: Heikki Krogerus &lt;heikki.krogerus@linux.intel.com&gt;
Link: https://lore.kernel.org/r/20221228004648.793339-8-pmalani@chromium.org
</content>
</entry>
<entry>
<title>platform/chrome: cros_ec_uart: Add transport layer</title>
<updated>2022-12-28T03:41:48+00:00</updated>
<author>
<name>Bhanu Prakash Maiya</name>
<email>bhanumaiya@chromium.org</email>
</author>
<published>2022-12-27T19:32:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=04a8bdd135cc05b10b665cedb360c7353312602d'/>
<id>urn:sha1:04a8bdd135cc05b10b665cedb360c7353312602d</id>
<content type='text'>
This patch does following:
1. Adds a new cros-ec-uart driver. This driver can send EC requests on
   UART and process response packets received on UART transport.
2. Once probed, this driver will initialize the serdev device based on
   the underlying information in the ACPI resource. After serdev device
   properties are set, this driver will register itself cros-ec.
3. High level driver can use this implementation to talk to ChromeOS
   Embedded Controller device in case it supports UART as transport.
4. When cros-ec driver initiates a request packet, outgoing message is
   processed in buffer and sent via serdev. Once bytes are sent, driver
   enables a wait_queue.
5. Since ChromeOS EC device sends response asynchronously, AP's TTY
   driver accumulates response bytes and calls the registered callback.
   TTY driver can send multiple callback for bytes ranging from 1 to MAX
   bytes supported by EC device.
6. Driver waits for EC_MSG_DEADLINE_MS to collect and process received
   bytes. It wakes wait_queue if expected bytes are received or else
   wait_queue timeout. Based on the error condition, driver returns
   data_len or error to cros_ec.

Signed-off-by: Bhanu Prakash Maiya &lt;bhanumaiya@chromium.org&gt;
Co-developed-by: Mark Hasemeyer &lt;markhas@chromium.org&gt;
Signed-off-by: Mark Hasemeyer &lt;markhas@chromium.org&gt;
Reviewed-by: Prashant Malani &lt;pmalani@chromium.org&gt;
Signed-off-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Link: https://lore.kernel.org/r/20221227123212.v13.1.If7926fcbad397bc6990dd725690229bed403948c@changeid
</content>
</entry>
<entry>
<title>platform/chrome: add a driver for HPS</title>
<updated>2022-10-18T04:53:15+00:00</updated>
<author>
<name>Dan Callaghan</name>
<email>dcallagh@chromium.org</email>
</author>
<published>2022-10-18T04:06:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5f9952548d91263eaf70a2ca71f8897c2a638cf1'/>
<id>urn:sha1:5f9952548d91263eaf70a2ca71f8897c2a638cf1</id>
<content type='text'>
This patch introduces a driver for the ChromeOS human presence
sensor (aka. HPS). The driver supports a sensor connected to the I2C bus
and identified as "GOOG0020" in the ACPI tables.

When loaded, the driver exports the sensor to userspace through a
character device. This device only supports power management, i.e.,
communication with the sensor must be done through regular I2C
transmissions from userspace.

Power management is implemented by enabling the respective power GPIO
while at least one userspace process holds an open fd on the character
device. By default, the device is powered down if there are no active
clients.

Note that the driver makes no effort to preserve the state of the sensor
between power down and power up events. Userspace is responsible for
reinitializing any needed state once power has been restored.

The device firmware, I2C protocol and other documentation is available
at https://chromium.googlesource.com/chromiumos/platform/hps-firmware.

Co-developed-by: Sami Kyöstilä &lt;skyostil@chromium.org&gt;
Signed-off-by: Sami Kyöstilä &lt;skyostil@chromium.org&gt;
Signed-off-by: Dan Callaghan &lt;dcallagh@chromium.org&gt;
Signed-off-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Link: https://lore.kernel.org/r/20221018040623.2173441-1-dcallagh@chromium.org
</content>
</entry>
<entry>
<title>platform/chrome: cros_typec_switch: Add switch driver</title>
<updated>2022-08-18T22:20:35+00:00</updated>
<author>
<name>Prashant Malani</name>
<email>pmalani@chromium.org</email>
</author>
<published>2022-08-16T21:48:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=affc804c44c8259ae53423aa3b5c20907e3a9a34'/>
<id>urn:sha1:affc804c44c8259ae53423aa3b5c20907e3a9a34</id>
<content type='text'>
Introduce a driver to configure USB Type-C mode switches and retimers
which are controlled by the ChromeOS EC (Embedded Controller).
This allows Type-C port drivers, as well as alternate mode drivers to
configure their relevant mode switches and retimers according to the
Type-C state they want to achieve.

ACPI devices with ID GOOG001A will bind to this driver.

Currently, we only register a retimer switch with a stub set function.
Subsequent patches will implement the host command set functionality,
and introduce mode switches.

Signed-off-by: Prashant Malani &lt;pmalani@chromium.org&gt;
Reviewed-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Link: https://lore.kernel.org/r/20220816214857.2088914-3-pmalani@chromium.org
</content>
</entry>
<entry>
<title>platform/chrome: merge Kunit utils and test cases</title>
<updated>2022-07-21T08:49:28+00:00</updated>
<author>
<name>Tzung-Bi Shih</name>
<email>tzungbi@kernel.org</email>
</author>
<published>2022-07-20T04:47:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f92dd1475b0644b4779eed6f937a1eebfb80d53d'/>
<id>urn:sha1:f92dd1475b0644b4779eed6f937a1eebfb80d53d</id>
<content type='text'>
Merge CROS_KUNIT and CROS_EC_PROTO_KUNIT_TEST so that when they're built
as modules cros_kunit_util doesn't need to export the symbols.

Signed-off-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Link: https://lore.kernel.org/r/20220720044754.4026295-2-tzungbi@kernel.org
</content>
</entry>
<entry>
<title>platform/chrome: cros_ec_proto: add Kunit tests for cros_ec_query_all()</title>
<updated>2022-06-10T02:31:42+00:00</updated>
<author>
<name>Tzung-Bi Shih</name>
<email>tzungbi@kernel.org</email>
</author>
<published>2022-06-09T08:49:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b99eb596efbd2aa138dad3dd5b6705b2e8c42c36'/>
<id>urn:sha1:b99eb596efbd2aa138dad3dd5b6705b2e8c42c36</id>
<content type='text'>
cros_ec_query_all() sends multiple host commands to EC for querying
supported protocols and settings.

Add required mock for interacting with cros_ec_query_all() and Kunit
tests.

Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Signed-off-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Link: https://lore.kernel.org/r/20220609084957.3684698-3-tzungbi@kernel.org
</content>
</entry>
<entry>
<title>platform/chrome: cros_kbd_led_backlight: support EC PWM backend</title>
<updated>2022-06-10T02:31:42+00:00</updated>
<author>
<name>Tzung-Bi Shih</name>
<email>tzungbi@kernel.org</email>
</author>
<published>2022-05-23T09:08:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=40f58143745eaabc68ef44b068642ca3b38d23a6'/>
<id>urn:sha1:40f58143745eaabc68ef44b068642ca3b38d23a6</id>
<content type='text'>
EC PWM backend uses EC_CMD_PWM_SET_KEYBOARD_BACKLIGHT and
EC_CMD_PWM_GET_KEYBOARD_BACKLIGHT for setting and getting the brightness
respectively.

Signed-off-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Reviewed-by: Matthias Kaehlcke &lt;mka@chromium.org&gt;
Tested-by: Matthias Kaehlcke &lt;mka@chromium.org&gt;
Link: https://lore.kernel.org/r/20220523090822.3035189-6-tzungbi@kernel.org
</content>
</entry>
<entry>
<title>platform/chrome: cros_ec_proto: add Kunit tests for cros_ec_prepare_tx()</title>
<updated>2022-06-06T03:11:37+00:00</updated>
<author>
<name>Tzung-Bi Shih</name>
<email>tzungbi@kernel.org</email>
</author>
<published>2022-05-18T09:18:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=db681eaf7145158fb49eddbdb548692e8bfe7fab'/>
<id>urn:sha1:db681eaf7145158fb49eddbdb548692e8bfe7fab</id>
<content type='text'>
cros_ec_prepare_tx() is used to fill the protocol headers according to
the requested protocol version.

Add Kunit tests cros_ec_prepare_tx() for each version.

Signed-off-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Link: https://lore.kernel.org/r/20220518091814.2028579-2-tzungbi@kernel.org
</content>
</entry>
<entry>
<title>platform/chrome: Add ChromeOS ACPI device driver</title>
<updated>2022-05-13T11:42:30+00:00</updated>
<author>
<name>Enric Balletbo i Serra</name>
<email>enric.balletbo@collabora.com</email>
</author>
<published>2022-05-13T07:52:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0a4cad9c11ad46662ede48d94f08ecb7cd9f6916'/>
<id>urn:sha1:0a4cad9c11ad46662ede48d94f08ecb7cd9f6916</id>
<content type='text'>
The x86 Chromebooks have the ChromeOS ACPI device. This driver attaches
to the ChromeOS ACPI device and exports the values reported by ACPI in a
sysfs directory. This data isn't present in ACPI tables when read
through ACPI tools, hence a driver is needed to do it. The driver gets
data from firmware using the ACPI component of the kernel. The ACPI values
are presented in string form (numbers as decimal values) or binary
blobs, and can be accessed as the contents of the appropriate read only
files in the standard ACPI device's sysfs directory tree. This data is
consumed by the ChromeOS user space.

Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Reviewed-by: Andy Shevchenko &lt;andy.shevchenko@gmail.com&gt;
Reviewed-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Acked-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
Signed-off-by: Enric Balletbo i Serra &lt;enric.balletbo@collabora.com&gt;
Co-developed-by: Muhammad Usama Anjum &lt;usama.anjum@collabora.com&gt;
Signed-off-by: Muhammad Usama Anjum &lt;usama.anjum@collabora.com&gt;
Signed-off-by: Tzung-Bi Shih &lt;tzungbi@kernel.org&gt;
Link: https://lore.kernel.org/r/Yn4OKYrtV35Dv+nd@debian-BULLSEYE-live-builder-AMD64
</content>
</entry>
<entry>
<title>platform/chrome: Add driver for ChromeOS privacy-screen</title>
<updated>2022-01-10T11:17:37+00:00</updated>
<author>
<name>Rajat Jain</name>
<email>rajatja@google.com</email>
</author>
<published>2022-01-07T19:02:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3fb57847f6ec30e9aa27af7b37aed7a7419d50aa'/>
<id>urn:sha1:3fb57847f6ec30e9aa27af7b37aed7a7419d50aa</id>
<content type='text'>
This adds the ACPI driver for the ChromeOS privacy screen that is
present on some chromeos devices.

Note that ideally, we'd want this privacy screen driver to be probed
BEFORE the drm probe in order to avoid a drm probe deferral:
https://hansdegoede.livejournal.com/25948.html

In practise, I found that ACPI drivers are bound to their devices AFTER
the drm probe on chromebooks. So on chromebooks with privacy-screen,
this patch along with the other one in this series results in a probe
deferral of about 250ms for i915 driver. However, it did not result in
any user noticeable delay of splash screen in my personal experience.

In future if this probe deferral turns out to be an issue, we can
consider turning this ACPI driver into something that is probed
earlier than the drm drivers.

Signed-off-by: Rajat Jain &lt;rajatja@google.com&gt;
Reviewed-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
Acked-by: Benson Leung &lt;bleung@chromium.org&gt;
Signed-off-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220107190208.95479-2-rajatja@google.com
</content>
</entry>
</feed>
