summaryrefslogtreecommitdiff
path: root/board/prism/board.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/prism/board.c')
-rw-r--r--board/prism/board.c304
1 files changed, 151 insertions, 153 deletions
diff --git a/board/prism/board.c b/board/prism/board.c
index dc5c042db1..1c7778f72f 100644
--- a/board/prism/board.c
+++ b/board/prism/board.c
@@ -1,4 +1,4 @@
-/* Copyright 2021 The Chromium OS Authors. All rights reserved.
+/* Copyright 2021 The ChromiumOS Authors
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
@@ -37,20 +37,20 @@
#define CROS_EC_SECTION "RO"
#endif
-#define CPRINTS(format, args...) cprints(CC_SYSTEM, format, ## args)
+#define CPRINTS(format, args...) cprints(CC_SYSTEM, format, ##args)
/******************************************************************************
* Define the strings used in our USB descriptors.
*/
const void *const usb_strings[] = {
- [USB_STR_DESC] = usb_string_desc,
- [USB_STR_VENDOR] = USB_STRING_DESC("Google Inc."),
- [USB_STR_PRODUCT] = USB_STRING_DESC("Prism"),
- [USB_STR_SERIALNO] = 0,
- [USB_STR_VERSION] =
- USB_STRING_DESC(CROS_EC_SECTION ":" CROS_EC_VERSION32),
- [USB_STR_UPDATE_NAME] = USB_STRING_DESC("Firmware update"),
- [USB_STR_HOSTCMD_NAME] = USB_STRING_DESC("Host command"),
+ [USB_STR_DESC] = usb_string_desc,
+ [USB_STR_VENDOR] = USB_STRING_DESC("Google LLC"),
+ [USB_STR_PRODUCT] = USB_STRING_DESC("Prism"),
+ [USB_STR_SERIALNO] = 0,
+ [USB_STR_VERSION] =
+ USB_STRING_DESC(CROS_EC_SECTION ":" CROS_EC_VERSION32),
+ [USB_STR_UPDATE_NAME] = USB_STRING_DESC("Firmware update"),
+ [USB_STR_HOSTCMD_NAME] = USB_STRING_DESC("Host command"),
};
BUILD_ASSERT(ARRAY_SIZE(usb_strings) == USB_STR_COUNT);
@@ -61,10 +61,9 @@ BUILD_ASSERT(ARRAY_SIZE(usb_strings) == USB_STR_COUNT);
#ifdef SECTION_IS_RW
const struct spi_device_t spi_devices[] = {
- [SPI_RGB0_DEVICE_ID] = {
- CONFIG_SPI_RGB_PORT,
- 2, /* 2: Fpclk/8 = 48Mhz/8 = 6Mhz */
- GPIO_SPI1_CS1_L },
+ [SPI_RGB0_DEVICE_ID] = { CONFIG_SPI_RGB_PORT, 2, /* 2: Fpclk/8 = 48Mhz/8
+ = 6Mhz */
+ GPIO_SPI1_CS1_L },
[SPI_RGB1_DEVICE_ID] = { CONFIG_SPI_RGB_PORT, 2, GPIO_SPI1_CS2_L },
};
const unsigned int spi_devices_used = ARRAY_SIZE(spi_devices);
@@ -103,143 +102,141 @@ const uint8_t rgbkbd_count = ARRAY_SIZE(rgbkbds);
const uint8_t rgbkbd_hsize = RGB_GRID0_COL + RGB_GRID1_COL;
const uint8_t rgbkbd_vsize = RGB_GRID0_ROW;
-#define LED(x, y) RGBKBD_COORD((x), (y))
-#define DELM RGBKBD_DELM
+enum ec_rgbkbd_type rgbkbd_type = EC_RGBKBD_TYPE_PER_KEY;
+
+#define LED(x, y) RGBKBD_COORD((x), (y))
+#define DELM RGBKBD_DELM
+
const uint8_t rgbkbd_map[] = {
- DELM, /* 0: (null) */
- LED( 0, 1), DELM, /* 1: ~ ` */
- LED( 1, 1), LED( 1, 2), DELM, /* 2: ! 1 */
- LED( 2, 1), LED( 2, 2), DELM, /* 3: @ 2 */
- LED( 3, 1), LED( 3, 2), DELM, /* 4: # 3 */
- LED( 4, 1), LED( 4, 2), DELM, /* 5: $ 4 */
- LED( 5, 1), LED( 5, 2), DELM, /* 6: % 5 */
- LED( 6, 1), LED( 6, 2), DELM, /* 7: ^ 6 */
- LED( 7, 1), LED( 7, 2), DELM, /* 8: & 7 */
- LED( 8, 1), LED( 8, 2), DELM, /* 9: * 8 */
- LED( 9, 1), LED( 9, 2), DELM, /* 10: ( 9 */
- LED(10, 1), LED(10, 2), DELM, /* 11: ) 0 */
- LED(11, 1), LED(11, 2), DELM, /* 12: _ - */
- LED(12, 1), LED(12, 2), DELM, /* 13: + = */
- DELM, /* 14: (null) */
- LED(13, 1), LED(13, 2), DELM, /* 15: backspace */
- LED( 0, 3), DELM, /* 16: tab */
- LED( 1, 3), DELM, /* 17: q */
- LED( 2, 3), DELM, /* 18: w */
- LED( 3, 3), DELM, /* 19: e */
- LED( 4, 3), DELM, /* 20: r */
- LED( 5, 3), DELM, /* 21: t */
- LED( 6, 3), DELM, /* 22: y */
- LED( 7, 3), DELM, /* 23: u */
- LED( 8, 3), DELM, /* 24: i */
- LED( 9, 3), DELM, /* 25: o */
- LED(10, 3), DELM, /* 26: p */
- LED(11, 3), LED(12, 3), DELM, /* 27: [ { */
- LED(13, 3), LED(14, 3), DELM, /* 28: ] } */
- LED(15, 3), LED(16, 3), DELM, /* 29: \ | */
- LED( 0, 4), LED( 1, 4), DELM, /* 30: caps lock */
- LED( 2, 4), DELM, /* 31: a */
- LED( 3, 4), DELM, /* 32: s */
- LED( 4, 4), DELM, /* 33: d */
- LED( 5, 4), DELM, /* 34: f */
- LED( 6, 4), DELM, /* 35: g */
- LED( 7, 4), DELM, /* 36: h */
- LED( 8, 4), DELM, /* 37: j */
- LED( 9, 4), DELM, /* 38: k */
- LED(10, 4), DELM, /* 39: l */
- LED(11, 4), LED(12, 4), DELM, /* 40: ; : */
- LED(13, 4), LED(14, 4), DELM, /* 41: " ' */
- DELM, /* 42: (null) */
- LED(15, 4), LED(16, 4), DELM, /* 43: enter */
- LED( 0, 5), LED( 1, 5),
- LED( 2, 5), DELM, /* 44: L-shift */
- DELM, /* 45: (null) */
- LED( 3, 5), DELM, /* 46: z */
- LED( 4, 5), DELM, /* 47: x */
- LED( 5, 5), DELM, /* 48: c */
- LED( 6, 5), DELM, /* 49: v */
- LED( 7, 5), DELM, /* 50: b */
- LED( 8, 5), DELM, /* 51: n */
- LED( 9, 5), DELM, /* 52: m */
- LED(10, 5), LED(11, 5), DELM, /* 53: , < */
- LED(12, 5), LED(13, 5), DELM, /* 54: . > */
- LED(14, 5), LED(15, 5), DELM, /* 55: / ? */
- DELM, /* 56: (null) */
- LED(16, 5), LED(17, 5),
- LED(18, 5), DELM, /* 57: R-shift */
- LED(17, 4), LED(18, 4),
- LED(19, 4), DELM, /* 58: L-ctrl */
- LED(15, 0), DELM, /* 59: power */
- LED(17, 2), LED(18, 2),
- LED(19, 2), DELM, /* 60: L-alt */
- LED(17, 3), LED(18, 3),
- LED(19, 3), LED(20, 3),
- LED(21, 3), DELM, /* 61: space */
- LED(20, 2), DELM, /* 62: R-alt */
- DELM, /* 63: (null) */
- LED(21, 2), DELM, /* 64: R-ctrl */
- DELM, /* 65: (null) */
- DELM, /* 66: (null) */
- DELM, /* 67: (null) */
- DELM, /* 68: (null) */
- DELM, /* 69: (null) */
- DELM, /* 70: (null) */
- DELM, /* 71: (null) */
- DELM, /* 72: (null) */
- DELM, /* 73: (null) */
- DELM, /* 74: (null) */
- DELM, /* 75: (null) */
- DELM, /* 76: (null) */
- DELM, /* 77: (null) */
- DELM, /* 78: (null) */
- LED(19, 5), DELM, /* 79: left */
- DELM, /* 80: (null) */
- DELM, /* 81: (null) */
- DELM, /* 82: (null) */
- LED(20, 4), DELM, /* 83: up */
- LED(20, 5), DELM, /* 84: down */
- DELM, /* 85: (null) */
- DELM, /* 86: (null) */
- DELM, /* 87: (null) */
- DELM, /* 88: (null) */
- LED(21, 5), DELM, /* 89: right */
- DELM, /* 90: (null) */
- DELM, /* 91: (null) */
- DELM, /* 92: (null) */
- DELM, /* 93: (null) */
- DELM, /* 94: (null) */
- DELM, /* 95: (null) */
- DELM, /* 96: (null) */
- DELM, /* 97: (null) */
- DELM, /* 98: (null) */
- DELM, /* 99: (null) */
- DELM, /* 100: (null) */
- DELM, /* 101: (null) */
- DELM, /* 102: (null) */
- DELM, /* 103: (null) */
- DELM, /* 104: (null) */
- DELM, /* 105: (null) */
- DELM, /* 106: (null) */
- DELM, /* 107: (null) */
- DELM, /* 108: (null) */
- DELM, /* 109: (null) */
- LED( 0, 0), DELM, /* 110: esc */
- LED( 1, 0), DELM, /* T1: previous page */
- LED( 2, 0), DELM, /* T2: refresh */
- LED( 3, 0), DELM, /* T3: full screen */
- LED( 4, 0), DELM, /* T4: windows */
- LED( 5, 0), DELM, /* T5: screenshot */
- LED( 6, 0), DELM, /* T6: brightness down */
- LED( 7, 0), DELM, /* T7: brightness up */
- LED( 8, 0), DELM, /* T8: KB backlight off */
- LED( 9, 0), DELM, /* T9: play/pause */
- LED(10, 0), DELM, /* T10: mute microphone */
- LED(11, 0), DELM, /* T11: mute speakers */
- LED(12, 0), DELM, /* T12: volume down */
- LED(13, 0), DELM, /* T13: volume up */
- DELM, /* T14: (null) */
- DELM, /* T15: (null) */
- DELM, /* 126: (null) */
- DELM, /* 127: (null) */
+ DELM, /* 0: (null) */
+ LED(0, 1), LED(0, 2), DELM, /* 1: ~ ` */
+ LED(1, 1), LED(1, 2), DELM, /* 2: ! 1 */
+ LED(2, 1), LED(2, 2), DELM, /* 3: @ 2 */
+ LED(3, 1), LED(3, 2), DELM, /* 4: # 3 */
+ LED(4, 1), LED(4, 2), DELM, /* 5: $ 4 */
+ LED(5, 1), LED(5, 2), DELM, /* 6: % 5 */
+ LED(6, 1), LED(6, 2), DELM, /* 7: ^ 6 */
+ LED(7, 1), LED(7, 2), DELM, /* 8: & 7 */
+ LED(8, 1), LED(8, 2), DELM, /* 9: * 8 */
+ LED(9, 1), LED(9, 2), DELM, /* 10: ( 9 */
+ LED(10, 1), LED(10, 2), DELM, /* 11: ) 0 */
+ LED(11, 1), LED(11, 2), DELM, /* 12: _ - */
+ LED(12, 1), LED(12, 2), DELM, /* 13: + = */
+ DELM, /* 14: (null) */
+ LED(13, 1), LED(13, 2), DELM, /* 15: backspace */
+ LED(0, 3), LED(15, 2), DELM, /* 16: tab */
+ LED(1, 3), DELM, /* 17: q */
+ LED(2, 3), DELM, /* 18: w */
+ LED(3, 3), DELM, /* 19: e */
+ LED(4, 3), DELM, /* 20: r */
+ LED(5, 3), DELM, /* 21: t */
+ LED(6, 3), DELM, /* 22: y */
+ LED(7, 3), DELM, /* 23: u */
+ LED(8, 3), DELM, /* 24: i */
+ LED(9, 3), DELM, /* 25: o */
+ LED(10, 3), DELM, /* 26: p */
+ LED(11, 3), LED(12, 3), DELM, /* 27: [ { */
+ LED(13, 3), LED(14, 3), DELM, /* 28: ] } */
+ LED(15, 3), LED(16, 3), DELM, /* 29: \ | */
+ LED(0, 4), LED(1, 4), DELM, /* 30: caps lock */
+ LED(2, 4), DELM, /* 31: a */
+ LED(3, 4), DELM, /* 32: s */
+ LED(4, 4), DELM, /* 33: d */
+ LED(5, 4), DELM, /* 34: f */
+ LED(6, 4), DELM, /* 35: g */
+ LED(7, 4), DELM, /* 36: h */
+ LED(8, 4), DELM, /* 37: j */
+ LED(9, 4), DELM, /* 38: k */
+ LED(10, 4), DELM, /* 39: l */
+ LED(11, 4), LED(12, 4), DELM, /* 40: ; : */
+ LED(13, 4), LED(14, 4), DELM, /* 41: " ' */
+ DELM, /* 42: (null) */
+ LED(15, 4), LED(16, 4), DELM, /* 43: enter */
+ LED(0, 5), LED(1, 5), LED(2, 5), DELM, /* 44: L-shift */
+ DELM, /* 45: (null) */
+ LED(3, 5), DELM, /* 46: z */
+ LED(4, 5), DELM, /* 47: x */
+ LED(5, 5), DELM, /* 48: c */
+ LED(6, 5), DELM, /* 49: v */
+ LED(7, 5), DELM, /* 50: b */
+ LED(8, 5), DELM, /* 51: n */
+ LED(9, 5), DELM, /* 52: m */
+ LED(10, 5), LED(11, 5), DELM, /* 53: , < */
+ LED(12, 5), LED(13, 5), DELM, /* 54: . > */
+ LED(14, 5), LED(15, 5), DELM, /* 55: / ? */
+ DELM, /* 56: (null) */
+ LED(16, 5), LED(17, 5), LED(18, 5), DELM, /* 57: R-shift */
+ LED(17, 4), LED(18, 4), LED(19, 4), DELM, /* 58: L-ctrl */
+ LED(15, 0), DELM, /* 59: power */
+ LED(17, 2), LED(18, 2), LED(19, 2), DELM, /* 60: L-alt */
+ LED(17, 3), LED(18, 3), LED(19, 3), LED(20, 3),
+ LED(21, 3), LED(16, 2), DELM, /* 61: space */
+ LED(20, 2), DELM, /* 62: R-alt */
+ DELM, /* 63: (null) */
+ LED(21, 2), DELM, /* 64: R-ctrl */
+ DELM, /* 65: (null) */
+ DELM, /* 66: (null) */
+ DELM, /* 67: (null) */
+ DELM, /* 68: (null) */
+ DELM, /* 69: (null) */
+ DELM, /* 70: (null) */
+ DELM, /* 71: (null) */
+ DELM, /* 72: (null) */
+ DELM, /* 73: (null) */
+ DELM, /* 74: (null) */
+ DELM, /* 75: (null) */
+ DELM, /* 76: (null) */
+ DELM, /* 77: (null) */
+ DELM, /* 78: (null) */
+ LED(19, 5), DELM, /* 79: left */
+ DELM, /* 80: (null) */
+ DELM, /* 81: (null) */
+ DELM, /* 82: (null) */
+ LED(20, 4), DELM, /* 83: up */
+ LED(20, 5), DELM, /* 84: down */
+ DELM, /* 85: (null) */
+ DELM, /* 86: (null) */
+ DELM, /* 87: (null) */
+ DELM, /* 88: (null) */
+ LED(21, 5), DELM, /* 89: right */
+ DELM, /* 90: (null) */
+ DELM, /* 91: (null) */
+ DELM, /* 92: (null) */
+ DELM, /* 93: (null) */
+ DELM, /* 94: (null) */
+ DELM, /* 95: (null) */
+ DELM, /* 96: (null) */
+ DELM, /* 97: (null) */
+ DELM, /* 98: (null) */
+ DELM, /* 99: (null) */
+ DELM, /* 100: (null) */
+ DELM, /* 101: (null) */
+ DELM, /* 102: (null) */
+ DELM, /* 103: (null) */
+ DELM, /* 104: (null) */
+ DELM, /* 105: (null) */
+ DELM, /* 106: (null) */
+ DELM, /* 107: (null) */
+ DELM, /* 108: (null) */
+ DELM, /* 109: (null) */
+ LED(0, 0), DELM, /* 110: esc */
+ LED(1, 0), DELM, /* T1: previous page */
+ LED(2, 0), DELM, /* T2: refresh */
+ LED(3, 0), DELM, /* T3: full screen */
+ LED(4, 0), DELM, /* T4: windows */
+ LED(5, 0), DELM, /* T5: screenshot */
+ LED(6, 0), DELM, /* T6: brightness down */
+ LED(7, 0), DELM, /* T7: brightness up */
+ LED(8, 0), DELM, /* T8: KB backlight off */
+ LED(9, 0), DELM, /* T9: play/pause */
+ LED(10, 0), DELM, /* T10: mute microphone */
+ LED(11, 0), DELM, /* T11: mute speakers */
+ LED(12, 0), DELM, /* T12: volume down */
+ LED(13, 0), DELM, /* T13: volume up */
+ DELM, /* T14: (null) */
+ DELM, /* T15: (null) */
+ DELM, /* 126: (null) */
+ DELM, /* 127: (null) */
};
#undef LED
#undef DELM
@@ -322,7 +319,7 @@ int board_get_entropy(void *buffer, int len)
uint8_t *data = buffer;
uint32_t start;
/* We expect one SOF per ms, so wait at most 2ms. */
- const uint32_t timeout = 2*MSEC;
+ const uint32_t timeout = 2 * MSEC;
for (i = 0; i < len; i++) {
STM32_CRS_ICR |= STM32_CRS_ICR_SYNCOKC;
@@ -353,8 +350,9 @@ __override const char *board_read_serial(void)
int i;
for (i = 0; i < idlen && pos < sizeof(str); i++, pos += 2) {
- snprintf(&str[pos], sizeof(str)-pos,
- "%02x", id[i]);
+ if (snprintf(&str[pos], sizeof(str) - pos, "%02x",
+ id[i]) < 0)
+ return NULL;
}
}