summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Clear OWNERS for factory/firmware branchfactory-zork-13427.B-masterBrian Norris2021-09-107-21/+0
| | | | | | | | | | | | BUG=none TEST=none Change-Id: I0f03f432ada1064ffba9595be78ca7ab4d25ecd1 Signed-off-by: Brian Norris <briannorris@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3155128 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Owners-Override: Jora Jacobi <jora@google.com> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* flash_fp_mcu: Change dw-apb-uart changed from AMD0020:XX to AMDI0020:XXBhanu Prakash Maiya2021-05-021-3/+3
| | | | | | | | | | | | | | The dw-apb-uart node was changed to match UEFI naming convention. BRANCH=none BUG=b:181349369 TEST=1. Run flash_fp_mcu on Zork device with FW 13434.212 and TOT OS image. Signed-off-by: Bhanu Prakash Maiya <bhanumaiya@google.com> Change-Id: I33c313a8de3842c37611199a7ffd31be4cd50f3f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2770512 Reviewed-by: Raul E Rangel <rrangel@chromium.org>
* flash_fp_mcu: Fix Zork's gpiochip base from 320 -> 256Bhanu Prakash Maiya2021-03-031-6/+7
| | | | | | | | | | | | | | | | | On Zork's SoC change was caused by changing the amount of reserved space for GPIO banks from 0x300 to 0x400. This resulted in base change. Previous: 512 - 192 = 320 Current: 512 - 256 = 256 BRANCH=none BUG=b:181349369 TEST=1. Run flash_fp_mcu on Zork device with FW 13434.212 Signed-off-by: Bhanu Prakash Maiya <bhanumaiya@google.com> Change-Id: Ied4a5fd9281d59f1bfa30a4ee9677f9a0a11387e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2727866 Commit-Queue: Tom Hughes <tomhughes@chromium.org> Reviewed-by: Tom Hughes <tomhughes@chromium.org>
* shuboz: Initial EC imageMichael5 Chen2020-12-098-0/+1292
| | | | | | | | | | | | | | | | | | | | | | | | Create the initial EC image for the shuboz variant by copying the dalboz reference board EC files into a new directory named for the variant. (Auto-Generated by create_initial_ec_image.sh version 1.2.0). BUG=b:172021093 BRANCH=none TEST=make BOARD=shuboz Signed-off-by: Michael5 Chen <michael5_chen1@pegatron.corp-partner.google.com> Change-Id: I636a0e5c9b72cc67e7d751d9233a2fb8b2f60691 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2507360 Reviewed-by: Bhanu Prakash Maiya <bhanumaiya@google.com> Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org> (cherry picked from commit aa71c2bfd0a6207a3ae2b52782abb2655088c9c8) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2566858 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Kane Chen <kane_chen@pegatron.corp-partner.google.com> Tested-by: Kane Chen <kane_chen@pegatron.corp-partner.google.com> Commit-Queue: Isaac Lee <isaaclee@google.com>
* Add EC_CMD_BATTERY_GET_STATIC v1 for zorkPeter Marheine2020-12-086-31/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some zork variants have battery model names that differ only beyond the 7th character, which cannot be differentiated with the current limitation of 8 characters per battery string. Introduce a new hostcmd version that allows longer battery strings and enable it on Zork. Because allowing longer strings through the host memory map is more difficult and not required (because getting the full longer string is mostly only useful for servicing), the host memory map is unchanged. ectool is updated to use hostcmd (rather than memory map) if the new command version is available, in order to take advantage of it. BUG=b:171854783 TEST=ectool battery prints longer strings when supported by the EC; a hacked EC on morphius can return 11 characters of text. An EC running older firmware still works with a new ectool. BRANCH=zork Change-Id: I63d20d4f690b6945cb1d423aafaf55dafc039211 Signed-off-by: Peter Marheine <pmarheine@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2519243 Reviewed-by: Edward Hill <ecgh@chromium.org> (cherry picked from commit 6bc9bb622a31845277d5513fa80fb6766ee68f6c) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2578616 Reviewed-by: Pin-yen Lin <treapking@chromium.org> Commit-Queue: Pin-yen Lin <treapking@chromium.org> Tested-by: Pin-yen Lin <treapking@chromium.org>
* ectool: Retry fpframe command when a frame failsYicheng Li2020-10-101-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fpframe command downloads fingerprint templates frame by frame. Add some retries to it, so that if there's a problem in the transport layer, we don't give up immediately. BRANCH=none BUG=b:169783567, b:160208269 TEST=cros_workon --board=zork start ec-utils emerge-zork ec-utils cros deploy <IP> ec-utils (On Morphius) for i in {1..1000}; do ectool --name=cros_fp fpframe > /dev/null; done ==> No fpframe failures (before there were 20+) TEST=Enroll one fingerprint, then with old ectool: ectool --name=cros_fp fpframe > before.txt with new ectool: ectool --name=cros_fp fpframe > after.txt cmp before.txt after.txt ==> Same Signed-off-by: Yicheng Li <yichengli@chromium.org> Change-Id: I66a31824d2515be2ac284abb98c389d89e494687 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2459226 Reviewed-by: Tom Hughes <tomhughes@chromium.org> Reviewed-by: Bhanu Prakash Maiya <bhanumaiya@google.com> Tested-by: Bhanu Prakash Maiya <bhanumaiya@google.com> Commit-Queue: Bhanu Prakash Maiya <bhanumaiya@google.com> (cherry picked from commit e371a6360ccad67f4264f3ebda4ce0df08c5b18a) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2464414 Auto-Submit: Bhanu Prakash Maiya <bhanumaiya@google.com>
* flash_fp_mcu: Add config zork, uart transport and gpiosBhanu Prakash Maiya2020-10-061-41/+112
| | | | | | | | | | | | | | | | | | | | | | Zork devices have FPMCU connected to AP via UART. Changes in this patch will let developer flash STM32 in chip's bootloader mode via UART. BUG=b:162368367 TEST=1. Run script on Zork device and confirm firmware flash. 2. Run script on Hatch devices and confirm that SPI functionality is intact. Signed-off-by: Bhanu Prakash Maiya <bhanumaiya@google.com> Change-Id: I9464ae7602e2b6b21d7d31283c6c242a4d603fe5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2444457 Commit-Queue: Yicheng Li <yichengli@chromium.org> Reviewed-by: Yicheng Li <yichengli@chromium.org> Tested-by: Yicheng Li <yichengli@chromium.org> (cherry picked from commit 347e73f4ea4347e142bd942aa879eb1c729ad2c0) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2454231 Reviewed-by: Cheng-Han Yang <chenghan@chromium.org> Commit-Queue: Cheng-Han Yang <chenghan@chromium.org> Tested-by: Cheng-Han Yang <chenghan@chromium.org>
* ectool: add pse host commandJeff Chase2020-08-221-0/+66
| | | | | | | | | | | | BUG=b:163786867 TEST=manual BRANCH=none Change-Id: Ibc595f8a887e3fe63a45dc9b29f3bc4f75feb8ad Signed-off-by: Jeff Chase <jnchase@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2354545 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Joe Tessler <jrt@chromium.org>
* Fennel: Remove the prepocessor check for BOARD_JUNIPER and BOARD_JACUZZI.Aaron Zhang2020-08-223-18/+2
| | | | | | | | | | | | | | Remove the prepocessor check for BOARD_JUNIPER and BOARD_JACUZZI. BUG=b:165214737 BRANCH=firmware-kukui-12573.B TEST=make -j BOARD=fennel Change-Id: I0cc9c143be16b02ad7d1b2735772d3d6875ba34e Signed-off-by: Aaron Zhang <zhangjianbo@huaqin.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2351643 Reviewed-by: Zhuohao Lee <zhuohao@chromium.org> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* pi3hdx1204: Print error if enable failsEdward Hill2020-08-221-3/+9
| | | | | | | | | | | | BUG=none BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: I33b574d42008330b58ae21d5bfbfc6fc73d50271 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2367313 Commit-Queue: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* Trembyle: Fix HDMI retimer suspend / resumeEdward Hill2020-08-221-9/+20
| | | | | | | | | | | | BUG=none BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: Id997c71498d4cb7f59b87f641cf4a67ec3617bad Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2364117 Commit-Queue: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* Dalboz: Fix HDMI retimer suspend / resumeEdward Hill2020-08-221-13/+21
| | | | | | | | | | | | BUG=none BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: I2d91c848222d7b7b47c6b15e94ee9138441e4898 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2364116 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* Berknip: Fix HDMI retimer suspend / resumeEdward Hill2020-08-221-9/+19
| | | | | | | | | | | | BUG=b:165191082 BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: If0619e61faa36e67e4e73c1cc59b296f6a039075 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2364115 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* Woomax: Fix HDMI retimer suspend / resumeEdward Hill2020-08-221-23/+22
| | | | | | | | | | | | BUG=b:163861706 BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: I8fda70cef671e3cdf14f6ea58e3890f82622237d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2364114 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* Morphius: Fix HDMI retimer suspend / resumeEdward Hill2020-08-221-23/+38
| | | | | | | | | | | | BUG=b:165191080 BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: I04ea831a2bfd684d13f211959acc52c511895f80 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2364113 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* Ezkinil: Fix HDMI retimer suspend / resumeEdward Hill2020-08-224-40/+40
| | | | | | | | | | | | BUG=none BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: I9eac47383695156ca0d222eb75f75492065720b7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2364112 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* Zork: Workaround for bad ISL9241 CONTROL1 readSue Chen2020-08-223-5/+46
| | | | | | | | | | | | | | | | | | Sometimes CONTROL1 was read 0xFF03 for unknown reason when the state change from S0 to S3, but the second read will get the correct 0x0103. Retry CONTROL1 read before update learn mode to make sure write the correct value. BUG=b:163076059 b:163136699 BRANCH=none TEST=none Signed-off-by: Sue Chen <sue.chen@quanta.corp-partner.google.com> Change-Id: Iec56dab838b0aa362c543cce74d64615faf40bfc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2362386 Tested-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Edward Hill <ecgh@chromium.org>
* TCPMv2: Don't interrupt RX/TX Extended Chunked Msg sequenceSam Hurst2020-08-224-3/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Delay sending a new message during the reception or transmitting of Chunked messages. BRANCH=none BUG=b:161836223 TEST=make -j buildall manual: Transmitted an extended message and verified that the sequence was not interrupted by attempting to send a VDM message. Without patch Chunked message request that was interrupted. 20-08-14 10:46:13.473 C1: RECV 9a9f/1 [0]00008c00 20-08-14 10:46:13.494 C1: RECV 9c9f/1 [0]00009400 20-08-14 10:46:13.516 C1: RECV 9e9f/1 [0]00009c00 20-08-14 10:46:13.535 C1: RECV 909f/1 [0]0000a400 Try to send VDM. MSG_TYPE is corrupted, was 0x1f, now 0x0f 20-08-14 10:46:13.563 C1: RECV 928f/1 [0]0000ac00 20-08-14 10:46:13.591 C1: RECV 948f/1 [0]0000b400 20-08-14 10:46:13.618 C1: RECV 968f/1 [0]0000bc00 20-08-14 10:46:13.645 C1: RECV 988f/1 [0]0000c400 20-08-14 10:46:13.674 C1: RECV 9a8f/1 [0]0000cc00 With patch. Chunked message request was not interrupted. 20-08-14 10:50:56.052 C1: RECV 9a9f/1 [0]00008c00 20-08-14 10:50:56.075 C1: RECV 9c9f/1 [0]00009400 20-08-14 10:50:56.093 C1: RECV 9e9f/1 [0]00009c00 20-08-14 10:50:56.114 C1: RECV 909f/1 [0]0000a400 Try to send VDM. Message delayed 20-08-14 10:50:56.134 C1: RECV 929f/1 [0]0000ac00 20-08-14 10:50:56.155 C1: RECV 949f/1 [0]0000b400 20-08-14 10:50:56.175 C1: RECV 969f/1 [0]0000bc00 20-08-14 10:50:56.195 C1: RECV 989f/1 [0]0000c400 20-08-14 10:50:56.216 C1: RECV 9a9f/1 [0]0000cc00 20-08-14 10:50:56.242 C1: RECV 0c90/0 Try to send VDM. Signed-off-by: Sam Hurst <shurst@google.com>wq Change-Id: I5475792ee9f272fe4964e27839e55e3409a6a799 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2357414
* config: cleanup TCPC driver optionsKeith Short2020-08-221-4/+1
| | | | | | | | | | | | | | | When CL:2343733 and CL:2304237 merged, config.h ended up with duplicated CONFIG options. BUG=none BRANCH=none TEST=make buildall Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: I264668c9990b76a0010265f4cb22e632cb785548 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2369471 Commit-Queue: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* usbc: remove PD_EVENT_SM in favor of task_wakeJett Rink2020-08-215-20/+17
| | | | | | | | | | | | | | | | We have used both methods of waking up the PD tasks to process the next state: PD_EVENT_SM and TASK_EVENT_WAKE. They effectively do the same thing and it is more straightforward to only have one way to wake the task up with the sole purpose of re-evaluating the current state. BRANCH=none BUG=none TEST=No regressions on GRL testing. Signed-off-by: Jett Rink <jettrink@chromium.org> Change-Id: I0fa79b82223e6b97eede4130480156949d79f365 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2363466 Reviewed-by: Edward Hill <ecgh@chromium.org>
* Revert "volteer: Disable USB PD extended messages"Abe Levkoy2020-08-211-3/+0
| | | | | | | | | | | | | | | | | This reverts commit 3e09f177ef5021fe36b5306122439eed42fc059a. Space saved on BMI260 initialization file allows extended message support to build with ~5 KB of free flash, which should be sufficient for the time being. BUG=b:158572770 TEST=make buildall BRANCH=none Change-Id: I546374253fd80efcc7d582744b173d1bd1aa8383 Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2369361 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* drawman: Disable auxiliary charger accessDevin Lu2020-08-211-14/+36
| | | | | | | | | | | | | | | Drawman don't have auxiliary charger on DB, this patch turns off i2c traffic on auxiliary charger base on board_get_charger_chip_count(). BUG=none BRANCH=none TEST=Make sure no i2c traffic on i2ctrace enable 4 0x30 to 0x36. Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Change-Id: I08f4682093461f39f2b909ffc97345db5e3ccc27 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2367422 Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Diana Z <dzigterman@chromium.org>
* tcpc: Add TCPC reset as a low power eventKeith Short2020-08-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Some TCPCs do not immediately generate an CC_STATUS interrupt when waking from low power mode on a device connect. Add PD_EVENT_TCPC_RESET as a low power event to the type C state machine exits TC_LOW_POWER_MODE. The low power exit delay ensures the type C state machine gives the TCPC an opportunity to internally debounce the CC lines and report a CC_STATUS interrupt. BUG=b:165850054 BRANCH=none TEST=make buildall TEST=Verfiy connection of SRC and SNK devices on Volteer. Tested against TUSB422, PS8815, and RT1715 TCPCs. Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: I21f691d750ef569c02e8d00f528a4f2e6d3064be Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2369369 Tested-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Jett Rink <jettrink@chromium.org>
* COIL: remove master/slave instances from EC termsKeith Short2020-08-211-15/+26
| | | | | | | | | | | | | | | | | | | | Google is working to change its source code to use more inclusive language. To that end, replace the terms "master" and "slve" with more inclusive alternatives. For SPI description, follow terminology suggested by the open source hardware association. https://www.oshwa.org/a-resolution-to-redefine-spi-signal-names/ BUG=b:163885307 BRANCH=none TEST=Verify md output in gitiles. Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: Ib12ce61a79b44744fbf3fb6ff19df077e150139c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2358192 Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* compare_build.sh: Add private directory handlingCraig Hesling2020-08-211-0/+12
| | | | | | | | | | | | | | | | This allows compare_build.sh to use private libs if available. BRANCH=none BUG=none TEST=# Ensure that you have an ec checkout that has a broken # public build, but working private build. ./compare_build.sh -p # This will only work if private was accessible Signed-off-by: Craig Hesling <hesling@chromium.org> Change-Id: Id5e2d1afe474e0175dbba2cddfd84de7c895a927 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2357870
* RT1715: Create driverEric Herrmann2020-08-214-0/+108
| | | | | | | | | | | | | | | Add driver for RT1715, it is a TCPCI rev1 TCPC supporting PD3.0 (except FRS), there are a few vendor-defined registers that need to be configured past the TCPCI ones. BUG=b:162617664 TEST=make buildall BRANCH=none Change-Id: Ie84610c8a1e17ea5874692ae9c383fa70d7dd486 Signed-off-by: Eric Herrmann <eherrmann@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2343733 Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* Dedede: Move PWM to board levelDiana Z2020-08-2112-27/+96
| | | | | | | | | | | | | | | | Move the PWM related defines and arrays into the board level, to allow customization of what PWM channels boards use (if they choose to use the PWM at all). BRANCH=None BUG=None TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Id417a7be079511c17de9f2e5d03c729467435804 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2358899 Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* Puff: revert hack to set fw_configAndrew McRae2020-08-211-14/+0
| | | | | | | | | | | | | | | | | Earlier board versions did not always have the correct CBI settings, so a hack was added to correctly set the fw_config for those boards. This is no longer necessary, and should be removed before RO. BUG=b:165883533 TEST=Build and run on puff. BRANCH=puff Signed-off-by: Andrew McRae <amcrae@google.com> Change-Id: I596f5b0f4c76a834e23e3c833f440308e5bb4b85 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2367425 Tested-by: Sam McNally <sammc@chromium.org> Reviewed-by: Sam McNally <sammc@chromium.org> Commit-Queue: Andrew McRae <amcrae@chromium.org>
* morphius: add ppc_id for ppc optionZick Wei2020-08-212-2/+6
| | | | | | | | | | | | | | | | | This pathc use external gpio as ppc id for different ppc: 1:nx20p3483 0:aoz1380 BUG=b:150278507 BRANCH=none TEST=make BOARD=morphius Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: I32c26f86a35bd18bd23689a53ab2c44174a01e34 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2348739 Reviewed-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Edward Hill <ecgh@chromium.org>
* drawcia: enable stylus chargingDevin Lu2020-08-212-1/+11
| | | | | | | | | | | | | | | Drawcia has garage stylus, this patch enables stylus charging when stylus present. BUG=b:163146414 BRANCH=none TEST=Make sure EN_PP5000_PEN turn on when stylus detected. Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Change-Id: I53f181ae381a33a87d7c2c312f7528cddccf49e3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2364344 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* trembyle: correctly pass USB-C1 HPD to the MST hubPeter Marheine2020-08-214-7/+38
| | | | | | | | | | | | | | | | | | | | | | | The RTD2141 MST hub on some daughterboard options requires the EC to drive its HPD input because HPD comes over USB-PD, but the MST hub then drives the AP's HPD input. The EC was incorrectly driving nothing, causing DP outputs on port C1 to not be detected. Because the MST's HPD input is connected to an IO expander on current hardware, configure the USB-C and Trembyle-specific HPD twiddling code to support regular or expander GPIOs. Experience says IO expanders tend to be too slow for reliable HPD, but this should allow some (possibly flaky) HPD support until hardware changes are completed to put the output directly on an EC GPIO. BUG=b:159051013,b:165622386 TEST=still builds (I have no v3 hardware to test against) BRANCH=None Signed-off-by: Peter Marheine <pmarheine@chromium.org> Change-Id: I9e041ab7c222927a11b8972920b7e978ab30d751 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2366456 Reviewed-by: Edward Hill <ecgh@chromium.org>
* gpio: add a gpio_or_ioex_get_level function to match the setterPeter Marheine2020-08-212-0/+18
| | | | | | | | | | | | | | Code that wants to work with either regular or IO expander GPIOs may also wish to read the current value; this function permits it. BUG=b:159051013,b:165622386 TEST=buildall BRANCH=None Signed-off-by: Peter Marheine <pmarheine@chromium.org> Change-Id: I677617621ae4964f568ad87512b372ce8a9830a1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2366455 Reviewed-by: Edward Hill <ecgh@chromium.org>
* Revert "util: add gen_bmi_config utility"stabilize-13421.53.B-masterstabilize-13421.42.B-masterKeith Short2020-08-214-308/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f137f2493db5b5ee27ffc784538b766d5192704d. Reason for revert: Compression of BMI260 config no longer needed. Original change's description: > util: add gen_bmi_config utility > > Add the gen_bmi_config utility used to generate a compressed version > of the configuration file required by the BMI260 IMU sensor. > > This is expected to be a temporary solution until the 8 KiB BMI > configuration file can be moved out of the EC code. > > BUG=b:160330682 > BRANCH=none > TEST=make utils > TEST=run "gen_bmi_config compress BMI260_main.tbin > bmi260_compressed.bin" > TEST=run "gen_bmi_config decrompress bmi260_compressed.bin > bmi260_uncompressed.bin", verify uncompressed file matches original > file. BUG=b:160330682 BRANCH=none TEST=make buildall Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: I2bfe8d7bef2a35f43b96cc0cd07209bef534ed63 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2354195 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: caveh jalali <caveh@chromium.org>
* bmi260: back out support for compressed config fileKeith Short2020-08-212-175/+6
| | | | | | | | | | | | | | | | | Now that the BMI260 config file can be moved to the .init_rom section, the simple compression scheme is no longer needed. BUG=b:160330682 BRANCH=none TEST=make buildall TEST=Verify BMI260 operation on both volteer and volteer_tcpmv1 builds using "ectool motionsense lid_angle". Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: I83bbaadcd3dade2d585b771b6b9ebae7e9fdc0cb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2354194 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: caveh jalali <caveh@chromium.org>
* TCPMv2: SRC->SNK PR Swap enable AutoDischarge after VbusDenis Brockus2020-08-211-15/+37
| | | | | | | | | | | | | | | | | | | A debounce was added to allow for the TCPC to get a valid Vbus but AutoDischargeDisconnect was enabled as soon as we set for the debounce. Since Vbus had a good chance of not being valid, we would get a FAULT from the TCPC indicating an Auto Discharge Disconnect failure. BUG=b:165797061 BRANCH=none TEST=DUT-DUT PR_Swap Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: I897d682e405d7f2fcda4b4a36a3c1b333e8f7913 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2365253 Tested-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org>
* TCPMv2: PR_Swap SRC->SNK should send PS_RDY in current AMSDenis Brockus2020-08-211-6/+16
| | | | | | | | | | | | | | | | | | The SRC->SNK PR_Swap is currently starting a new AMS for the SNK PS_RDY and this causes the partner to disconnect from the bus instead of continuing with the swap. BUG=b:165794652 BRANCH=none TEST=DUT-DUT PR_Swap Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: Id953a9b6f78057777617d06f518eb17b061b6f92 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2365057 Tested-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* TCPMv2: Do not send GetSnkCap if FRS is not enabledDenis Brockus2020-08-211-1/+10
| | | | | | | | | | | | | | | GetSnkCap is only needed for FastRoleSwap BUG=none BRANCH=none TEST=PR_Swap DUT-DUT testing Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: I51973dfbfbfe855d1027c3b1cec35a2ba06a7b65 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2367283 Tested-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* dirinboz: add LED behaviorZick Wei2020-08-203-67/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | dirinboz have two charging leds on left side and right side. each side have two colors amber and white. The led behavior define as following: Charging led: led on with charging port active, other port is off. Charging: Amber. Discharging: Off. Battery Error: Blinking white (0.4 sec on, 0.4 sec off) Fuel < 10%: Blinking white on right side port (1 sec on, 1 sec off) Force idle for factory: Blinking amber (1 sec on, 1 sec off) System suspend with non-charging state: Blinking both side LED white (1 sec on, 1 sec off) BUG=none BRANCH=none TEST=make sure led behavior intended. make sure ectool led left white/amber/off/auto work correctly. make sure ectool led right white/amber/off/auto work correctly. Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: I3a182b1608554cf82fdb3b76917c01321d8d473d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2331983 Reviewed-by: Edward Hill <ecgh@chromium.org> Commit-Queue: Edward Hill <ecgh@chromium.org>
* Zork: Add command to print temps periodicallyEdward Hill2020-08-204-6/+56
| | | | | | | | | | | BUG=b:162907613 BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: Iddbba7d7955f252cacf666528195bbfc7d9718e6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2365633 Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* bmi260: move BMI260 init file into .init.rom sectionKeith Short2020-08-205-19/+75
| | | | | | | | | | | | | | | | | | | | | Increases Volteer RO and RW flash spaces by 7088 bytes each. This is the net gain after including the init_rom layer. BUG=b:160330682 BRANCH=none TEST=make buildall TEST=On volteer run "ectool motionsense" and "ectool motionsense lid_angle". Verify both RO and RW images. TEST=Program RO image with predecessor CL:2311268. Program this CL into AP firmware image and verify EC software sync updates to RW image. TEST=Verify BMI260 operation with CONFIG_CHIP_INIT_ROM_REGION disabled using volteer_tcpmv1 board. Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: I6849b6c9e96756266528b39ab5e53268dce2a13c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2311756 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: caveh jalali <caveh@chromium.org>
* EC: Fix presubmit message to avoid unbounded parallel makeAndrew McRae2020-08-201-2/+5
| | | | | | | | | | | | | | | | | | | | The presubmit message that checks for 'make buildall' having been run suggests using 'make buildall -j', which can cause an unbounded number of processes to be started, especially as the number of EC targets have increased. Suggest a more reasonable value. BUG=none TEST=Check presubmit output. BRANCH=none Change-Id: Ie35a545dc1c4d58a3ad9d0ed0233c62ab5a92464 Signed-off-by: Andrew McRae <amcrae@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2366324 Reviewed-by: Andrew McRae <amcrae@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> Commit-Queue: Andrew McRae <amcrae@chromium.org> Tested-by: Andrew McRae <amcrae@chromium.org> Auto-Submit: Andrew McRae <amcrae@chromium.org>
* riscv-rv32i: Enable FPU extension only if CONFIG_FPU is enabledDino Li2020-08-201-1/+3
| | | | | | | | | | | | | | | | | | | At default, CONFIG_FPU option isn't enabled. But currently, FPU extension is always enabled when building FW image. This will cause problem if hardware doesn't support the extension and floating-point instructions are generated. So we fix it. BUG=none BRANCH=none TEST=Floating-point instructions are used for floating point operation if CONFIG_FPU is enabled. Otherwise, library routines are used. Signed-off-by: Dino Li <Dino.Li@ite.com.tw> Change-Id: Ifb77bd0cca1158ca7f6637fa9ec025ac8712bbfd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2227779 Reviewed-by: Vincent Palatin <vpalatin@chromium.org> Commit-Queue: Vincent Palatin <vpalatin@chromium.org>
* Dood: set SYV682X HV_ILIM to 5.5AYu-An Chen2020-08-201-0/+3
| | | | | | | | | | | | | | | | | Set CONFIG_SYV682X_HV_ILIM to 5.5A on Dood. BUG=b:161965761 BRANCH=octopus TEST=make BOARD=dood TEST=Use ppc_dump <port> to check the setting correct. Signed-off-by: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com> Change-Id: I582b122f72511a60136380efdfb7e8a61e4be38a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2366322 Tested-by: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com> Tested-by: Henry Sun <henrysun@google.com> Reviewed-by: Henry Sun <henrysun@google.com> Commit-Queue: Henry Sun <henrysun@google.com>
* Puff: Enable AP reset command handlerAndrew McRae2020-08-201-0/+4
| | | | | | | | | | | | | | | | | | | | Description taken from crrev/2337430: TPMs with old firmware version cannot detect AP initiated reset eg. AP gets reset when CSE Lite SKU jumps from RO to RW. Enable AP reset command handler so that AP can request EC to perform the reset. This will lead to TPM detecting the AP reset. BUG=b:162290856 TEST=FAFT EC tests BRANCH=puff Signed-off-by: Andrew McRae <amcrae@google.com> Change-Id: I2c3b805b2099e6cc5fff8dc945b575a89ef04465 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2366313 Tested-by: Edward O'Callaghan <quasisec@chromium.org> Commit-Queue: Andrew McRae <amcrae@chromium.org> Commit-Queue: Edward O'Callaghan <quasisec@chromium.org> Reviewed-by: Edward O'Callaghan <quasisec@chromium.org>
* ampton: increase tasks stackDino Li2020-08-201-3/+3
| | | | | | | | | | | | | | Increased stack size for these tasks: CHIPSET, PD_C0, and PD_C1 BUG=none BRANCH=none TEST=No panic of stack overflow on ampton. Signed-off-by: Dino Li <Dino.Li@ite.com.tw> Change-Id: Ibb40661f2e4abbd1dd0ac9a99ace271ea87c4b6e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2362380 Reviewed-by: Diana Z <dzigterman@chromium.org>
* BB retimer: Remove FORCE_PWR GPIO from EC driverVijay Hiremath2020-08-1920-40/+59
| | | | | | | | | | | | | | | | | | FORCE_PWR GPIO is used for keeping the BB retimer in active state during f/w updating. On TGLRVP, control to enable the FORCE_PWR GPIO was given to EC to support the I2C based F/W updating. I2C based f/w updating is deprecated and the LSx interface is POR hence the FORCE_PWR GPIO control is given to AP now. Thus, removing the FORCE_PWR GPIO from EC driver. BUG=b:165214747 BRANCH=none TEST=make buildall -j Change-Id: If9bb7199a68c93f704f698552e5594a58bd68f7c Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2363334 Reviewed-by: Ayushee Shah <ayushee.shah@intel.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* usbc: wake task on every state transitionJett Rink2020-08-196-26/+25
| | | | | | | | | | | | | | | | | | Whenever we change state, we should continue to wake the USB statemachine task up until is settles into a steady state were it is waiting/polling on a timer or event. BRANCH=none BUG=b:163152687 TEST=Ran GRL PD3.0 test on Trembyle and did not see any regressions. It did make a few tests pass that were failing before due to timing issues. Signed-off-by: Jett Rink <jettrink@chromium.org> Change-Id: Idc3c1ae8d92a0f6a5cd4b82f9db6d7138d143f77 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2356954 Reviewed-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Diana Z <dzigterman@chromium.org>
* cleanup: update formatting for clarityJett Rink2020-08-191-11/+10
| | | | | | | | | | | | | | | Make it clear that there are multiple function calls happening instead of a single statement with multiple parameters. BRANCH=none BUG=none TEST=builds. No actual code change Signed-off-by: Jett Rink <jettrink@chromium.org> Change-Id: I1c01a40794e0c2dc08be205ac953f42bdc9298be Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2363465 Commit-Queue: Edward Hill <ecgh@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org>
* TCPM common: Store number of Identity VDOsDiana Z2020-08-192-0/+3
| | | | | | | | | | | | | | Store the number of valid identity VDOs that were received for use later. BRANCH=None BUG=b:165264379 TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I54f991c862c4b6589edff2476a79b5c3a8b69b4b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2363416 Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* todor: modify gpio for mb/db typec FRS_ENDavid Huang2020-08-191-0/+2
| | | | | | | | | | | | | Add FRS_EN default low for mb/db typec port. BUG=b:163167407 BRANCH=master TEST=Check system can power on with AC only. Signed-off-by: David Huang <david.huang@quanta.corp-partner.google.com> Change-Id: I4ddf88811be214247908ba370718311ed6e5f576 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2359626 Reviewed-by: Keith Short <keithshort@chromium.org>