aboutsummaryrefslogtreecommitdiff
path: root/src/drivers/camera/cros_camera.h
diff options
context:
space:
mode:
authorYu-Ping Wu <yupingso@chromium.org>2020-09-07 17:24:26 +0800
committerPatrick Georgi <pgeorgi@google.com>2020-10-19 06:50:20 +0000
commite68ef7d75ca82f08dabe5848e816800462a66806 (patch)
tree99acf6903c75753719caef237ae8806a46053777 /src/drivers/camera/cros_camera.h
parentf580d9ffef93243509e84d558e42a8722d0ad6e7 (diff)
drivers/camera: Add config CHROMEOS_CAMERA
Add cros_camera_info struct for camera information, and check_cros_camera_info() for checking the magic, CRC and version. BUG=b:144820097 TEST=emerge-kukui coreboot BRANCH=kukui Change-Id: I1215fec76643b0cf7e09433e1190e8bd387e6953 Signed-off-by: Yu-Ping Wu <yupingso@chromium.org> Reviewed-on: https://review.coreboot.org/c/coreboot/+/46042 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/drivers/camera/cros_camera.h')
-rw-r--r--src/drivers/camera/cros_camera.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/drivers/camera/cros_camera.h b/src/drivers/camera/cros_camera.h
new file mode 100644
index 0000000000..f69e77d3e5
--- /dev/null
+++ b/src/drivers/camera/cros_camera.h
@@ -0,0 +1,27 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#ifndef __VENDORCODE_GOOGLE_CHROMEOS_CAMERA_H
+#define __VENDORCODE_GOOGLE_CHROMEOS_CAMERA_H
+
+#include <stdint.h>
+
+#define CROS_CAMERA_INFO_MAGIC "CrOS"
+#define CROS_CAMERA_INFO_VERSION 1
+#define CROS_CAMERA_INFO_SIZE_MIN 0x0a
+
+struct cros_camera_info {
+ uint8_t magic[4]; /* CROS_CAMERA_INFO_MAGIC */
+ uint16_t crc16;
+ uint8_t version;
+ uint8_t size;
+ uint16_t data_format;
+ uint16_t module_pid;
+ uint8_t module_vid[2];
+ uint8_t sensor_vid[2];
+ uint16_t sensor_pid;
+};
+
+/* Returns 0 on success, non-zero on errors. */
+int check_cros_camera_info(const struct cros_camera_info *info);
+
+#endif