diff options
author | Nicolas Boichat <drinkcat@chromium.org> | 2019-10-09 12:03:27 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-10-18 08:52:46 +0000 |
commit | 5f3380d0a80dcedb6cb120b9e4c420b66b747a95 (patch) | |
tree | bc7e95388a0f9e6179f2482cadaea829e008628e | |
parent | b9b9c35c38b50908cc5985d75947aeb3aa1571ce (diff) | |
download | chrome-ec-5f3380d0a80dcedb6cb120b9e4c420b66b747a95.tar.gz |
board/hammer: Fix masterball touchpad settings
Fix the dimensions, and also the size, and make sure that updating
the FW actually works (it seems like increasing the timeout to
2000ms is needed).
BRANCH=kukui
BUG=b:140596094
TEST=Flash masterball, no warning in console on start
TEST=
Host:
make TOUCHPAD_FW=S8648A-15H0_FW01.bin BOARD=masterball -j
USE=updater_utils emerge-kukui -av ec-utils
cros deploy $IP ec-utils
DUT:
usb_updater2 -d 18d1:503c -r; sleep 0.5; \
usb_updater2 -d 18d1:503c -s; usb_updater2 -d 18d1:503c ec.bin
usb_updater2 -d 18d1:503c -p S8648A-15H0_FW01.bin
Change-Id: Ia473ac420b42f52ad1639f950a3f08ff5d32df09
Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1847512
Reviewed-by: Eric Yilun Lin <yllin@chromium.org>
Reviewed-by: Joel Kitching <kitching@chromium.org>
-rw-r--r-- | board/hammer/variants.h | 11 | ||||
-rw-r--r-- | driver/touchpad_elan.c | 4 | ||||
-rw-r--r-- | extra/usb_updater/usb_updater2.c | 2 |
3 files changed, 9 insertions, 8 deletions
diff --git a/board/hammer/variants.h b/board/hammer/variants.h index ac50e5265b..d648181ab1 100644 --- a/board/hammer/variants.h +++ b/board/hammer/variants.h @@ -44,13 +44,12 @@ #define HAS_NO_TOUCHPAD #elif defined(BOARD_MASTERBALL) #define HAS_I2C_TOUCHPAD -/* TODO(b:138422450): Insert correct dimensions. */ -#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_X 3206 -#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_Y 1832 +#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_X 2644 +#define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_Y 1440 #define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_PRESSURE 511 -#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) +#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_X 839 /* tenth of mm */ +#define CONFIG_USB_HID_TOUCHPAD_PHYSICAL_MAX_Y 457 /* tenth of mm */ +#define CONFIG_TOUCHPAD_VIRTUAL_SIZE (64*1024) #elif defined(BOARD_STAFF) #define HAS_I2C_TOUCHPAD #define CONFIG_USB_HID_TOUCHPAD_LOGICAL_MAX_X 3206 diff --git a/driver/touchpad_elan.c b/driver/touchpad_elan.c index ace80c3b70..4c7cb91a61 100644 --- a/driver/touchpad_elan.c +++ b/driver/touchpad_elan.c @@ -413,6 +413,7 @@ static int elan_get_ic_page_count(void) case 0x0D: return 896; case 0x00: + case 0x10: return 1024; } return -1; @@ -531,9 +532,10 @@ int touchpad_update_write(int offset, int size, const uint8_t *data) rv = touchpad_update_page(data + addr - offset); if (rv) return rv; - CPRINTS("%s: page %d updated.", __func__, addr / FW_PAGE_SIZE); + CPRINTF("/p%d", addr / FW_PAGE_SIZE); watchdog_reload(); } + CPRINTF("\n"); if (offset + size == FW_SIZE) { CPRINTS("%s: End update, wait for reset.", __func__); diff --git a/extra/usb_updater/usb_updater2.c b/extra/usb_updater/usb_updater2.c index 65c5fd248d..10bfeee7bb 100644 --- a/extra/usb_updater/usb_updater2.c +++ b/extra/usb_updater/usb_updater2.c @@ -513,7 +513,7 @@ static int transfer_block(struct usb_endpoint *uep, /* Now get the reply. */ r = libusb_bulk_transfer(uep->devh, uep->ep_num | 0x80, (void *) &reply, sizeof(reply), - &actual, 1000); + &actual, 5000); if (r) { if (r == -7) { fprintf(stderr, "Timeout!\n"); |