Home
last modified time | relevance | path

Searched +full:cros +full:- +full:ec (Results 1 – 25 of 65) sorted by relevance

123

/linux/Documentation/devicetree/bindings/extcon/
H A Dextcon-usbc-cros-ec.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/extcon/extcon-usbc-cros-ec.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: ChromeOS EC USB Type-C cable and accessories detection
10 - Benson Leung <bleung@chromium.org>
16 The node for this device must be under a cros-ec node like google,cros-ec-spi
17 or google,cros-ec-i2c.
21 const: google,extcon-usbc-cros-ec
23 google,usb-port-id:
[all …]
/linux/drivers/platform/chrome/
H A Dcros_ec_sensorhub.c1 // SPDX-License-Identifier: GPL-2.0
21 #define DRV_NAME "cros-ec-sensorhub"
56 struct cros_ec_command *msg = sensorhub->msg; in cros_ec_sensorhub_register()
57 struct cros_ec_dev *ec = sensorhub->ec; in cros_ec_sensorhub_register() local
62 msg->version = 1; in cros_ec_sensorhub_register()
63 msg->insize = sizeof(struct ec_response_motion_sense); in cros_ec_sensorhub_register()
64 msg->outsize = sizeof(struct ec_params_motion_sense); in cros_ec_sensorhub_register()
66 for (i = 0; i < sensorhub->sensor_num; i++) { in cros_ec_sensorhub_register()
67 sensorhub->params->cmd = MOTIONSENSE_CMD_INFO; in cros_ec_sensorhub_register()
68 sensorhub->params->info.sensor_num = i; in cros_ec_sensorhub_register()
[all …]
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
3 # tell define_trace.h where to find the cros ec trace header
4 CFLAGS_cros_ec_trace.o:= -I$(src)
5 CFLAGS_cros_ec_sensorhub_ring.o:= -I$(src)
7 obj-$(CONFIG_CHROMEOS_ACPI) += chromeos_acpi.o
8 obj-$(CONFIG_CHROMEOS_LAPTOP) += chromeos_laptop.o
9 obj-$(CONFIG_CHROMEOS_OF_HW_PROBER) += chromeos_of_hw_prober.o
10 obj-$(CONFIG_CHROMEOS_PRIVACY_SCREEN) += chromeos_privacy_screen.o
11 obj-$(CONFIG_CHROMEOS_PSTORE) += chromeos_pstore.o
12 obj-$(CONFIG_CHROMEOS_TBMC) += chromeos_tbmc.o
[all …]
/linux/Documentation/ABI/testing/
H A Ddebugfs-cros-ec1 What: /sys/kernel/debug/<cros-ec-device>/console_log
5 If the EC supports the CONSOLE_READ command type, this file
6 can be used to grab the EC logs. The kernel polls for the log
10 What: /sys/kernel/debug/<cros-ec-device>/panicinfo
14 This file dumps the EC panic information from the previous
16 type is supported by the EC.
18 What: /sys/kernel/debug/<cros-ec-device>/pdinfo
23 information for all the USB PD/type-C ports available. If
27 What: /sys/kernel/debug/<cros-ec-device>/uptime
31 A u32 providing the time since EC booted in ms. This is
[all …]
/linux/Documentation/devicetree/bindings/chrome/
H A Dgoogle,cros-ec-typec.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/chrome/google,cros-ec-typec.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Google Chrome OS EC(Embedded Controller) Type C port driver.
10 - Benson Leung <bleung@chromium.org>
11 - Prashant Malani <pmalani@chromium.org>
14 Chrome OS devices have an Embedded Controller(EC) which has access to
17 cros-ec node like google,cros-ec-spi.
21 const: google,cros-ec-typec
[all …]
/linux/Documentation/devicetree/bindings/display/bridge/
H A Dgoogle,cros-ec-anx7688.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/display/bridge/google,cros-ec-anx7688.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: ChromeOS EC ANX7688 HDMI to DP Converter through Type-C Port
10 - Nicolas Boichat <drinkcat@chromium.org>
13 ChromeOS EC ANX7688 is a display bridge that converts HDMI 2.0 to
14 DisplayPort 1.3 Ultra-HDi (4096x2160p60). It is an Analogix ANX7688 chip
16 (See google,cros-ec.yaml). It is accessed using I2C tunneling through
17 the EC and therefore its node should be a child of an EC I2C tunnel node
[all …]
/linux/arch/arm64/boot/dts/qcom/
H A Dsc7280-idp-ec-h1.dtsi1 // SPDX-License-Identifier: BSD-3-Clause
3 * sc7280 EC/H1 over SPI (common between IDP2 and CRD)
11 pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs_gpio_init_high>, <&qup_spi10_cs_gpio>;
12 cs-gpios = <&tlmm 43 GPIO_ACTIVE_LOW>;
14 cros_ec: ec@0 {
15 compatible = "google,cros-ec-spi";
17 interrupt-parent = <&tlmm>;
19 pinctrl-names = "default";
20 pinctrl-0 = <&ap_ec_int_l>;
21 spi-max-frequency = <3000000>;
[all …]
/linux/Documentation/devicetree/bindings/input/
H A Dgoogle,cros-ec-keyb.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
5 $id: http://devicetree.org/schemas/input/google,cros-ec-keyb.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 title: ChromeOS EC Keyboard
11 - Simon Glass <sjg@chromium.org>
12 - Benson Leung <bleung@chromium.org>
15 Google's ChromeOS EC Keyboard is a simple matrix keyboard
16 implemented on a separate EC (Embedded Controller) device. It provides
17 a message for reading key scans from the EC. These are then converted
[all …]
/linux/Documentation/devicetree/bindings/regulator/
H A Dgoogle,cros-ec-regulator.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/regulator/google,cros-ec-regulator.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: ChromeOS EC controlled voltage regulators
10 - Pi-Hsun Shih <pihsun@chromium.org>
17 - $ref: regulator.yaml#
21 const: google,cros-ec-regulator
25 description: Identifier for the voltage regulator to ChromeOS EC.
28 - compatible
[all …]
/linux/Documentation/devicetree/bindings/iio/proximity/
H A Dgoogle,cros-ec-mkbp-proximity.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: ChromeOS EC MKBP Proximity Sensor
10 - Stephen Boyd <swboyd@chromium.org>
11 - Benson Leung <bleung@chromium.org>
14 Google's ChromeOS EC sometimes has the ability to detect user proximity.
15 This is implemented on the EC as near/far logic and exposed to the OS
20 const: google,cros-ec-mkbp-proximity
[all …]
/linux/arch/arm/boot/dts/
H A Dcros-ec-keyboard.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
3 * Keyboard dts fragment for devices that use cros-ec-keyboard
8 #include <dt-bindings/input/input.h>
9 #include <dt-bindings/input/cros-ec-keyboard.h>
12 keyboard_controller: keyboard-controller {
13 compatible = "google,cros-ec-keyb";
14 keypad,num-rows = <8>;
15 keypad,num-columns = <13>;
16 google,needs-ghost-filter;
/linux/drivers/iio/common/cros_ec_sensors/
H A Dcros_ec_sensors.c1 // SPDX-License-Identifier: GPL-2.0
3 * cros_ec_sensors - Driver for Chrome OS Embedded Controller sensors.
7 * This driver uses the cros-ec interface to communicate with the Chrome OS
8 * EC about sensors data. Data access is presented through iio sysfs.
45 int idx = chan->scan_index; in cros_ec_sensors_read()
47 mutex_lock(&st->core.cmd_lock); in cros_ec_sensors_read()
51 ret = st->core.read_ec_sensors_data(indio_dev, 1 << idx, &data); in cros_ec_sensors_read()
58 st->core.param.cmd = MOTIONSENSE_CMD_SENSOR_OFFSET; in cros_ec_sensors_read()
59 st->core.param.sensor_offset.flags = 0; in cros_ec_sensors_read()
61 ret = cros_ec_motion_send_host_cmd(&st->core, 0); in cros_ec_sensors_read()
[all …]
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0-only
3 # Makefile for sensors seen through the ChromeOS EC sensor hub.
6 cros-ec-sensors-core-objs += cros_ec_sensors_core.o cros_ec_sensors_trace.o
7 obj-$(CONFIG_IIO_CROS_EC_SENSORS_CORE) += cros-ec-sensors-core.o
8 obj-$(CONFIG_IIO_CROS_EC_SENSORS) += cros_ec_sensors.o
9 obj-$(CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE) += cros_ec_lid_angle.o
10 obj-$(CONFIG_IIO_CROS_EC_ACTIVITY) += cros_ec_activity.o
H A Dcros_ec_lid_angle.c1 // SPDX-License-Identifier: GPL-2.0
4 * cros_ec_lid_angle - Driver for CrOS EC lid angle sensor.
8 * This driver uses the cros-ec interface to communicate with the Chrome OS
9 * EC about counter sensors. Counters are presented through
29 #define DRV_NAME "cros-ec-lid-angle"
57 st->param.cmd = MOTIONSENSE_CMD_LID_ANGLE; in cros_ec_sensors_read_lid_angle()
58 ret = cros_ec_motion_send_host_cmd(st, sizeof(st->resp->lid_angle)); in cros_ec_sensors_read_lid_angle()
60 dev_warn(&indio_dev->dev, "Unable to read lid angle\n"); in cros_ec_sensors_read_lid_angle()
64 *data = st->resp->lid_angle.value; in cros_ec_sensors_read_lid_angle()
76 mutex_lock(&st->core.cmd_lock); in cros_ec_lid_angle_read()
[all …]
H A Dcros_ec_activity.c1 // SPDX-License-Identifier: GPL-2.0
3 * cros_ec_activity - Driver for activities/gesture recognition.
7 * This driver uses the cros-ec interface to communicate with the ChromeOS
8 * EC about activity data.
27 #define DRV_NAME "cros-ec-activity"
64 if (chan->type != IIO_PROXIMITY || mask != IIO_CHAN_INFO_RAW) in cros_ec_activity_sensors_read_raw()
65 return -EINVAL; in cros_ec_activity_sensors_read_raw()
67 guard(mutex)(&st->core.cmd_lock); in cros_ec_activity_sensors_read_raw()
68 st->core.param.cmd = MOTIONSENSE_CMD_GET_ACTIVITY; in cros_ec_activity_sensors_read_raw()
69 st->core.param.get_activity.activity = in cros_ec_activity_sensors_read_raw()
[all …]
/linux/drivers/i2c/busses/
H A Di2c-cros-ec-tunnel.c1 // SPDX-License-Identifier: GPL-2.0+
2 // Expose an I2C passthrough to the ChromeOS EC.
17 * struct ec_i2c_device - Driver data for I2C tunnel
21 * @ec: Pointer to EC device
22 * @remote_bus: The EC bus number we tunnel to on the other side.
30 struct cros_ec_device *ec; member
39 * ec_i2c_count_message - Count bytes needed for ec_i2c_construct_message
61 * ec_i2c_construct_message - construct a message to go to the EC
64 * a format that the EC understands.
84 params->port = bus_num; in ec_i2c_construct_message()
[all …]
/linux/drivers/iio/proximity/
H A Dcros_ec_mkbp_proximity.c1 // SPDX-License-Identifier: GPL-2.0
3 * Driver for cros-ec proximity sensor exposed through MKBP switch
27 struct cros_ec_device *ec; member
64 struct ec_params_mkbp_info *params = (struct ec_params_mkbp_info *)buf->data; in cros_ec_mkbp_proximity_query()
66 u32 *switches = (u32 *)buf->data; in cros_ec_mkbp_proximity_query()
70 msg->command = EC_CMD_MKBP_INFO; in cros_ec_mkbp_proximity_query()
71 msg->version = 1; in cros_ec_mkbp_proximity_query()
72 msg->outsize = sizeof(*params); in cros_ec_mkbp_proximity_query()
73 msg->insize = insize; in cros_ec_mkbp_proximity_query()
75 params->info_type = EC_MKBP_INFO_CURRENT; in cros_ec_mkbp_proximity_query()
[all …]
/linux/drivers/gpio/
H A Dgpio-cros-ec.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * This driver provides the ability to control GPIOs on the Chrome OS EC.
23 /* Prefix all names to avoid collisions with EC <-> AP nets */
24 static const char cros_ec_gpio_prefix[] = "EC:";
29 const char *name = gc->names[gpio] + strlen(cros_ec_gpio_prefix); in cros_ec_gpio_set()
46 const char *name = gc->names[gpio] + strlen(cros_ec_gpio_prefix); in cros_ec_gpio_get()
55 return -EINVAL; in cros_ec_gpio_get()
60 dev_err(gc->parent, "error getting gpio%d (%s) on EC: %d\n", gpio, name, ret); in cros_ec_gpio_get()
72 const char *name = gc->names[gpio] + strlen(cros_ec_gpio_prefix); in cros_ec_gpio_get_direction()
84 dev_err(gc->parent, "error getting direction of gpio%d (%s) on EC: %d\n", gpio, name, ret); in cros_ec_gpio_get_direction()
[all …]
/linux/include/linux/iio/common/
H A Dcros_ec_sensors_core.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * ChromeOS EC sensor hub
24 /* EC returns sensor values using signed 16 bit registers */
36 * struct cros_ec_sensors_core_state - state data for EC sensors IIO driver
37 * @ec: cros EC device structure
40 * @msg: cros EC command structure
54 * is always 8-byte aligned.
56 * @fifo_max_event_count: Size of the EC sensor FIFO
61 struct cros_ec_device *ec; member
/linux/arch/arm64/boot/dts/mediatek/
H A Dmt8192-asurada.dtsi1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
6 /dts-v1/;
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/spmi/spmi.h>
25 stdout-path = "serial0:115200n8";
33 backlight_lcd0: backlight-lcd0 {
34 compatible = "pwm-backlight";
36 power-supply = <&ppvar_sys>;
37 enable-gpios = <&pio 152 0>;
38 brightness-levels = <0 1023>;
[all …]
H A Dmt8186-corsola.dtsi1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
5 /dts-v1/;
7 #include <dt-bindings/pinctrl/mt8186-pinfunc.h>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/input/input.h>
10 #include <dt-bindings/input/gpio-keys.h>
11 #include <dt-bindings/regulator/mediatek,mt6397-regulator.h>
26 stdout-path = "serial0:115200n8";
35 backlight_lcd0: backlight-lcd0 {
36 compatible = "pwm-backlight";
[all …]
/linux/arch/arm64/boot/dts/rockchip/
H A Drk3399-gru.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
5 * Copyright 2016-2017 Google, Inc
8 #include <dt-bindings/input/input.h>
9 #include "rk3399-op1.dtsi"
18 stdout-path = "serial2:115200n8";
27 * - Rails that only connect to the EC (or devices that the EC talks to)
29 * - Rails _are_ included if the rails go to the AP even if the AP
38 * - The EC controls the enable and the EC always enables a rail as
40 * - The rails are actually connected to each other by a jumper and
45 ppvar_sys: regulator-ppvar-sys {
[all …]
/linux/drivers/iio/pressure/
H A Dcros_ec_baro.c1 // SPDX-License-Identifier: GPL-2.0
3 * cros_ec_baro - Driver for barometer sensor behind CrosEC.
44 int idx = chan->scan_index; in cros_ec_baro_read()
46 mutex_lock(&st->core.cmd_lock); in cros_ec_baro_read()
59 st->core.param.cmd = MOTIONSENSE_CMD_SENSOR_RANGE; in cros_ec_baro_read()
60 st->core.param.sensor_range.data = EC_MOTION_SENSE_NO_VALUE; in cros_ec_baro_read()
62 ret = cros_ec_motion_send_host_cmd(&st->core, 0); in cros_ec_baro_read()
66 *val = st->core.resp->sensor_range.ret; in cros_ec_baro_read()
68 /* scale * in_pressure_raw --> kPa */ in cros_ec_baro_read()
73 ret = cros_ec_sensors_core_read(&st->core, chan, val, val2, in cros_ec_baro_read()
[all …]
/linux/drivers/power/supply/
H A Dcros_charge-control.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * ChromeOS EC driver for charge control
24 * Semantics of data *returned* from the EC API and Linux sysfs differ
26 * To match the expected sysfs API, data is never read back from the EC but
29 * Changes to the EC bypassing the driver will not be reflected in sysfs.
30 * Any change to "charge_behaviour" will synchronize the EC with the driver state.
70 lockdep_assert_held(&priv->lock); in cros_chctl_configure_ec()
74 switch (priv->current_behaviour) { in cros_chctl_configure_ec()
85 return -EINVAL; in cros_chctl_configure_ec()
88 if (priv->current_behaviour == POWER_SUPPLY_CHARGE_BEHAVIOUR_AUTO && in cros_chctl_configure_ec()
[all …]
/linux/drivers/iio/light/
H A Dcros_ec_light_prox.c1 // SPDX-License-Identifier: GPL-2.0
3 * cros_ec_light_prox - Driver for light and prox sensors behing CrosEC.
25 * We only represent one entry for light or proximity. EC is merging different
47 int idx = chan->scan_index; in cros_ec_light_prox_read()
49 mutex_lock(&st->core.cmd_lock); in cros_ec_light_prox_read()
53 if (chan->type == IIO_PROXIMITY) { in cros_ec_light_prox_read()
61 ret = -EINVAL; in cros_ec_light_prox_read()
65 if (chan->type == IIO_LIGHT) { in cros_ec_light_prox_read()
72 * pre-processed and represents the ambient light in cros_ec_light_prox_read()
78 ret = -EINVAL; in cros_ec_light_prox_read()
[all …]

123