diff options
author | Yu-Ping Wu <yupingso@chromium.org> | 2020-09-07 17:24:26 +0800 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2020-10-19 06:50:20 +0000 |
commit | e68ef7d75ca82f08dabe5848e816800462a66806 (patch) | |
tree | 99acf6903c75753719caef237ae8806a46053777 /src/drivers/camera/cros_camera.h | |
parent | f580d9ffef93243509e84d558e42a8722d0ad6e7 (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.h | 27 |
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 |