summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncan Laurie <dlaurie@google.com>2018-11-29 17:59:04 -0800
committerDuncan Laurie <dlaurie@chromium.org>2018-12-04 22:49:40 +0000
commit221ebdc6e56ca65cb28e6069203602e52800c6f5 (patch)
treefe30d051af1907eaaefaf0b3fa84df83e5c56b29
parent833a3a879d9af4c793233dd537f5fa9da5b3c110 (diff)
ec/google/wilco: Turn camera power on
Send the EC command required to turn the camera power on and verify that it shows up on the USB bus. Change-Id: I9e9ba712a11cef85cde91ac21a4b6b5090ef58dc Signed-off-by: Duncan Laurie <dlaurie@google.com> Reviewed-on: https://review.coreboot.org/c/29987 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
-rw-r--r--src/ec/google/wilco/chip.c3
-rw-r--r--src/ec/google/wilco/commands.h7
2 files changed, 10 insertions, 0 deletions
diff --git a/src/ec/google/wilco/chip.c b/src/ec/google/wilco/chip.c
index e1f468d71c..a9caaeca23 100644
--- a/src/ec/google/wilco/chip.c
+++ b/src/ec/google/wilco/chip.c
@@ -69,6 +69,9 @@ static void wilco_ec_init(struct device *dev)
/* Enable WiFi radio */
wilco_ec_radio_control(RADIO_WIFI, 1);
+
+ /* Turn on camera power */
+ wilco_ec_send(KB_CAMERA, CAMERA_ON);
}
static void wilco_ec_resource(struct device *dev, int index,
diff --git a/src/ec/google/wilco/commands.h b/src/ec/google/wilco/commands.h
index 0989b202d7..752e19ba69 100644
--- a/src/ec/google/wilco/commands.h
+++ b/src/ec/google/wilco/commands.h
@@ -32,6 +32,8 @@ enum {
KB_SAVE = 0x2f,
/* Restore PS/2 data after S3 resume */
KB_RESTORE = 0x30,
+ /* Manage the EC control of camera power */
+ KB_CAMERA = 0x33,
/* Retrieve information about the EC */
KB_EC_INFO = 0x38,
/* Set ACPI mode on or off */
@@ -67,6 +69,11 @@ enum ec_radio {
RADIO_WIFI = 0x02,
};
+enum ec_camera {
+ CAMERA_ON = 0,
+ CAMERA_OFF
+};
+
/**
* wilco_ec_radio_control() - Control wireless radios.
* @ec_radio: Wireless radio type.