diff options
-rw-r--r-- | board/hammer/board.h | 34 | ||||
-rw-r--r-- | board/hammer/gpio.inc | 25 | ||||
l--------- | board/whiskers | 1 | ||||
-rwxr-xr-x | util/flash_ec | 1 |
4 files changed, 51 insertions, 10 deletions
diff --git a/board/hammer/board.h b/board/hammer/board.h index 9d5bbb833c..7b713d05f2 100644 --- a/board/hammer/board.h +++ b/board/hammer/board.h @@ -80,10 +80,12 @@ /* USB Configuration */ #define CONFIG_USB -#ifdef BOARD_STAFF -#define CONFIG_USB_PID 0x502b -#elif defined(BOARD_HAMMER) +#ifdef BOARD_HAMMER #define CONFIG_USB_PID 0x5022 +#elif defined(BOARD_STAFF) +#define CONFIG_USB_PID 0x502b +#elif defined(BOARD_WHISKERS) +#define CONFIG_USB_PID 0x5030 #else #error "Invalid board" #endif @@ -148,17 +150,24 @@ #define CONFIG_TOUCHPAD_HASH_FW /* Touchpad firmware size and dimension difference */ -#ifdef BOARD_STAFF +#ifdef BOARD_HAMMER +#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_X 3207 +#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_Y 1783 +#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_X 1018 /* tenth of mm */ +#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_Y 566 /* tenth of mm */ +#define CONFIG_TOUCHPAD_VIRTUAL_SIZE (48*1024) +#elif defined(BOARD_STAFF) #define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_X 3206 #define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_Y 1832 #define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_X 1017 /* tenth of mm */ #define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_Y 581 /* tenth of mm */ #define CONFIG_TOUCHPAD_VIRTUAL_SIZE (56*1024) -#elif defined(BOARD_HAMMER) -#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_X 3207 -#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_Y 1783 -#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_X 1018 /* tenth of mm */ -#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_Y 566 /* tenth of mm */ +#elif defined(BOARD_WHISKERS) +/* TODO(b:68934906): Add support for touchpad and replace these values. */ +#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_X 3000 +#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_Y 1500 +#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_X 1000 /* tenth of mm */ +#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_Y 500 /* tenth of mm */ #define CONFIG_TOUCHPAD_VIRTUAL_SIZE (48*1024) #else #error "No touchpad information for board." @@ -167,7 +176,7 @@ #define CONFIG_KEYBOARD_DEBUG #undef CONFIG_KEYBOARD_BOOT_KEYS #undef CONFIG_KEYBOARD_RUNTIME_KEYS -#ifdef BOARD_HAMMER +#if defined(BOARD_HAMMER) || defined(BOARD_WHISKERS) #define CONFIG_KEYBOARD_BOARD_CONFIG #define CONFIG_KEYBOARD_NEW_KEY #endif @@ -223,8 +232,13 @@ /* Timer selection */ #define TIM_CLOCK32 2 +#ifdef BOARD_WHISKERS +#define TIM_KBLIGHT 16 +#define TIM_WATCHDOG 17 +#else #define TIM_WATCHDOG 16 #define TIM_KBLIGHT 17 +#endif #include "gpio_signal.h" diff --git a/board/hammer/gpio.inc b/board/hammer/gpio.inc index b9eb46c09b..305a9f95b7 100644 --- a/board/hammer/gpio.inc +++ b/board/hammer/gpio.inc @@ -8,14 +8,22 @@ /* Declare symbolic names for all the GPIOs that we care about. * Note: Those with interrupt handlers must be declared first. */ +#ifdef BOARD_WHISKERS +GPIO_INT(TOUCHPAD_INT, PIN(B, 9), GPIO_INT_FALLING, elan_tp_interrupt) +#else GPIO_INT(TOUCHPAD_INT, PIN(B, 8), GPIO_INT_FALLING, elan_tp_interrupt) +#endif /* Keyboard inputs */ #define GPIO_KB_INPUT (GPIO_INPUT | GPIO_PULL_UP | GPIO_INT_BOTH) #define GPIO_KB_OUTPUT GPIO_ODR_HIGH GPIO_INT(KB_IN00, PIN(A, 4), GPIO_KB_INPUT, keyboard_raw_gpio_interrupt) +#ifdef BOARD_WHISKERS +GPIO_INT(KB_IN01, PIN(A, 8), GPIO_KB_INPUT, keyboard_raw_gpio_interrupt) +#else GPIO_INT(KB_IN01, PIN(B, 3), GPIO_KB_INPUT, keyboard_raw_gpio_interrupt) +#endif GPIO_INT(KB_IN02, PIN(B, 0), GPIO_KB_INPUT, keyboard_raw_gpio_interrupt) GPIO_INT(KB_IN03, PIN(A, 7), GPIO_KB_INPUT, keyboard_raw_gpio_interrupt) GPIO_INT(KB_IN04, PIN(B, 12), GPIO_KB_INPUT, keyboard_raw_gpio_interrupt) @@ -43,14 +51,27 @@ GPIO(KB_OUT12, PIN(C, 13), GPIO_KB_OUTPUT) GPIO(MASTER_I2C_SCL, PIN(B, 6), GPIO_INPUT) GPIO(MASTER_I2C_SDA, PIN(B, 7), GPIO_INPUT) /* TODO(crosbug.com/p/59083): Disable trackpad when appropriate */ +#ifdef BOARD_WHISKERS +GPIO(EN_PP3300_TP, PIN(A, 14), GPIO_OUT_HIGH) +#else GPIO(EN_PP3300_TP_ODL, PIN(A, 14), GPIO_OUT_LOW) +#endif +#ifdef BOARD_WHISKERS +GPIO(KEYBOARD_BACKLIGHT, PIN(B, 8), GPIO_OUT_LOW) +#else GPIO(KEYBOARD_BACKLIGHT, PIN(B, 9), GPIO_OUT_LOW) +#endif GPIO(WP_L, PIN(A, 13), GPIO_INPUT | GPIO_PULL_UP) GPIO(BASE_DET, PIN(A, 15), GPIO_INPUT) +#ifdef BOARD_WHISKERS +GPIO(TP_BOOT0, PIN(B, 4), GPIO_INPUT) +GPIO(TP_RESET, PIN(B, 5), GPIO_INPUT) +#endif + /* Unimplemented signals since we are not an EC */ UNIMPLEMENTED(ENTERING_RW) @@ -58,4 +79,8 @@ ALTERNATE(PIN_MASK(A, 0x0600), 1, MODULE_UART, GPIO_PULL_UP) /* USART1: PA09/PA1 ALTERNATE(PIN_MASK(B, 0x00c0), 1, MODULE_I2C, 0) /* I2C MASTER:PB6/7 GPIO_ODR_HIGH */ +#ifdef BOARD_WHISKERS +ALTERNATE(PIN_MASK(B, 0x0100), 2, MODULE_PWM, GPIO_PULL_DOWN) /* PWM: PB8 */ +#else ALTERNATE(PIN_MASK(B, 0x0200), 2, MODULE_PWM, GPIO_PULL_DOWN) /* PWM: PB9 */ +#endif diff --git a/board/whiskers b/board/whiskers new file mode 120000 index 0000000000..7f4a914148 --- /dev/null +++ b/board/whiskers @@ -0,0 +1 @@ +hammer
\ No newline at end of file diff --git a/util/flash_ec b/util/flash_ec index bda340fe22..9ba3f4a659 100755 --- a/util/flash_ec +++ b/util/flash_ec @@ -75,6 +75,7 @@ BOARDS_STM32=( scarlet staff strago_pd + whiskers zinger ) BOARDS_STM32_PROG_EN=( |