summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* dood: initial files commitben.chen2@quanta.corp-partner.google.com2019-10-227-0/+1019
| | | | | | | | | | | | | | | | | Initial files for dood are copied from bobba, to be revised later. BRANCH=octopus BUG=b:141960652 TEST=build Change-Id: Ie26c6dfd21f420a9d66902de39d2393b0cd95fb3 Signed-off-by: Ben Chen <ben.chen2@quanta.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1868129 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org> Reviewed-by: Henry Sun <henrysun@google.com> Tested-by: Henry Sun <henrysun@google.com> Commit-Queue: Justin TerAvest <teravest@chromium.org>
* fluffy: Fix voltage conversion accuracyAseda Aboagye2019-10-211-3/+4
| | | | | | | | | | | | | | | | | | | | When converting the ADC reads into mV, I had used the wrong value which was leading to some errors that would grow with the voltage. This commit simply uses the right values and attempts to gain more accuracy by increasing the number of significant figures. BUG=b:140393065 BRANCH=None TEST=Flash fluffy; measure the VBUS voltage with a multimeter, verify that the fluffy reported value is now closer to the multimeter. Change-Id: I9dfd749eb533d96c8bc45454f968d7bcb095b9ef Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1871123 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Auto-Submit: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* Delay uart_init() done to after pinhold is disengaged.Pai Peng2019-10-211-4/+17
| | | | | | | | | | | | | | | | | | | | | Since pinhold will hold UART pin, UART won't work correctly. In this case, we want to delay uart_init() done until pinhold is disengaged. The messages to UART are still kept in the UART buffer and can be correctly printed through UART after pinhold is released. BUG=b:138327854 BRANCH=none TEST=manual Testing: verified that after cold or warm reset, messages from RW image can be correctly printed to UART. Without this change, we might see incomplete messages or garbage characters. Change-Id: I00934aa16178b995d996f6ba773abab80f329124 Signed-off-by: Pai Peng <paipeng@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1717547 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* stm32f0: handle i2c reload mode properlyTing Shen2019-10-211-0/+17
| | | | | | | | | | | | | | | | | | | | | | Fixed a bug that RELOAD bit not cleared properly when there's two consecutive chip_i2c_xfer() calls, where the first call only contains "write" transaction, and the second call contains a "read" transaction. BUG=b:138095176 TEST=Case 1 - write and read in two separate i2c_xfer call: `ectool i2cxfer 1 0x55 8 0x64` On Krane, this should print the string "L16D2P31" in hex. Case 2 - no write and read 1 byte: `i2cscan` in ec console. BRANCH=kukui Change-Id: I57c1909058606b458801b3b35f54c16c1309c594 Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866222 Reviewed-by: Alexandru M Stan <amstan@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org>
* it83xx/flash: add support for KGD flashDino Li2019-10-214-14/+79
| | | | | | | | | | | | | | | Embedded flash of it8xxx2 is KGD, so we made this change to support it. BUG=b:133460224 BRANCH=none TEST=On both it83202 and it8320 EVBs, verify flasherase and flashwrite console commands. Change-Id: Idde0846eb8c59a330ccf69d7f6b7aa352c623caa Signed-off-by: Dino Li <Dino.Li@ite.com.tw> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1844657 Reviewed-by: Jett Rink <jettrink@chromium.org>
* dratini: chagne thermal configrationDevin Lu2019-10-211-8/+18
| | | | | | | | | | | | | | | | | | | | split thermal configration table for temp sensor 1/temp sensor 2, because sensor location is different, they have their own table. BUG=none BRANCH=none TEST=manually remove dptf control then do follwoing: make sure system shutdown when over 85 degree with temp sensor 1. make sure system shutdown when over 75 degree with temp sensor 2. make sure fan works when over 25 degree with temp sensor 1. make sure fan fully on when over 70 degree with temp sensor 1. make sure fan works when over 25 degree with temp sensor 2. make sure fan fully on when over 50 degree with temp sensor 2. Change-Id: I1139f9ee8a8ef9fc67c3ba6f5cbc2b6cf265ede9 Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1869171 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
* dratini: disable accel, gyro sensors and tablet mode switch for clamshellsDevin Lu2019-10-212-2/+30
| | | | | | | | | | | | | | | | | | dratini and dragonair use the same PCB with BOM changes. Dratini uses a hall sensor instead of GMR, and does not stuff the accelerometer and gryo sensors. Disable initialization of those sensors on Dratini. Dratini is a clamshell that does not support tablet mode, so disable that, too. BUG=none BRANCH=none TEST=make buildall -j. make sure no initial event occurs with dratini. make sure tablet mode was disabled with dragonair. Change-Id: If65183f458d62f0b74e21233900d86102c4cc88d Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866220 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
* dratini: enable GMR sensor for tablet modeDevin Lu2019-10-213-0/+4
| | | | | | | | | | | | BUG=none BRANCH=none TEST=Check screen rotation with tablet mode. Check keyboard disabled and on-screen keyboard enabled with tablet mode. Change-Id: Ifa3bcc24b19608fb52525208569e8fdde25e99ea Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866218 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
* Reland "baseboard/kukui: use BASE_STATE_SWITCH instead"Yilun Lin2019-10-202-30/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of 92b3e86b23b59ebec3e59132cae2b32288fcf1b4, fixing up the call to base_init that does not exist anymore. Original change's description: > baseboard/kukui: use BASE_STATE_SWITCH instead > > tablet mode will also depend on BASE_ATTACHED_SWITCH. > > TEST=see EC sends BASE_ATTACHED event when keyboard attach/detach > BUG=b:140608847 > BRANCH=none > > Change-Id: Ib7d9bd0e8cf0efb5d0a3808f4649e0d9eb69b6d8 > Signed-off-by: Yilun Lin <yllin@chromium.org> > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1806178 > Reviewed-by: Nicolas Boichat <drinkcat@chromium.org> BRANCH=kukui BUG=b:140608847 BUG=b:141518464 TEST=see EC sends BASE_ATTACHED event when keyboard attach/detach Cq-Depend: chromium:1844514 Change-Id: I609c8ac958f7d344d73f28934e2b1187a8d11f22 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1844653 Tested-by: Nicolas Boichat <drinkcat@chromium.org> Commit-Queue: Nicolas Boichat <drinkcat@chromium.org> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* octopus: lock gpio config for reset signalJett Rink2019-10-198-8/+48
| | | | | | | | | | | | | BRANCH=octopus BUG=b:142953493 TEST=verify that later modification of gpio flag will no allow driving signal high. Change-Id: I0b8c1503ba8c03afa3eb6fa4f921b3480106f05b Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1869407 Commit-Queue: Edward Hill <ecgh@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org>
* usbc: Add missing IS_ENABLED(CONFIG_CHARGE_MANAGER) checksEdward Hill2019-10-184-16/+7
| | | | | | | | | | | | | | | Remove the need for stubs of charge_manager_set_ceil() by adding a few missing IS_ENABLED(CONFIG_CHARGE_MANAGER) checks. BUG=none BRANCH=none TEST=buildall Change-Id: Ia70434b05107747eb773ae30ee1de5b4bd8cbcea Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1869401 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* krane: set end of charge current threshold to 140mAstabilize-12607.6.Bstabilize-12607.5.Bstabilize-12607.3.BTing Shen2019-10-181-0/+14
| | | | | | | | | | | | | | | | According to the battery spec in b/142097561#comment15, EoC current should be 140mA. BUG=b:142097561 TEST=make BRANCH=kukui Change-Id: I913a1abecd2fc6ac28ba16513c3f0cc145afc38c Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866212 Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org>
* kukui: remove battery SoC overwrite hackTing Shen2019-10-181-1/+3
| | | | | | | | | | | | | | | | | On-pack battery gauges should have better knowledge about battery life, so maybe we can trust SoC value reported from gauge and don't need this hack. BUG=b:142097561 TEST=confirm battery SoC won't jump to 97% unexpectedly BRANCH=kukui Change-Id: Ie3efdcbfa6d6525040e68b5abe0345a4b6c1fcde Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866210 Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org>
* board/hammer: Fix masterball touchpad settingsNicolas Boichat2019-10-183-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* krane: Modify the Charging and Fully charged LED colorLeo Zhou2019-10-181-5/+4
| | | | | | | | | | | | | | | Based on the Lenovo requirement,modify the Charging and Fully charged LED color as white BUG=b:137618886 BRANCH=kukui TEST=Do a charge test Change-Id: I75a3e9f24c98a67cb6b9dda8294c73926c20d4d7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1706248 Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Tested-by: Leo Zhou <zhoubo@huaqin.corp-partner.google.com> Commit-Queue: Nicolas Boichat <drinkcat@chromium.org>
* panic.h: include required stdint.hCaveh Jalali2019-10-181-2/+3
| | | | | | | | | | | | | | | | | panic.h uses types from stdint.h, so it should really include it by default. also, order standard header files ahead of project specific header files. BRANCH=none BUG=b:142031466 TEST=make buildall passes Change-Id: I8ac6d42f1da412bd3ce20df2838b8e420ad25e52 Signed-off-by: Caveh Jalali <caveh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1855643 Tested-by: Caveh Jalali <caveh@google.com> Commit-Queue: Caveh Jalali <caveh@google.com> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* helios: Modify EC fan control tableMichael5 Chen2019-10-181-12/+6
| | | | | | | | | | | | | | | | | | Modify EC fan control table by Thermal request. (#21) BUG=b:136565336 BRANCH=none TEST=Manual Verify fan behavior by thermal team. Remove DPTF and check fan speed with temperature. When temperature over 65 degree, the fan start working. When temperature over 85 degree, the fan full run. And check system shutdown when temperature over 90 degree. Change-Id: I0d4633e9ba93ba12f28d4d069a9ae2a7a82fcedd Signed-off-by: Michael5 Chen <michael5_chen@pegatroncorp.com> Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1833944
* dratini: correct accel orientationDevin Lu2019-10-181-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BUG=none BRANCH=none TEST=When device is laying on a table, lid angle at 180, both sensors report gravity along Z axis: localhost ~ # ectool motionsense Motion sensing active Sensor 0: -1040 4336 15408 Sensor 1: 760 -291 17127 Sensor 2: 0 0 0 When on the base bottom edge, report gravity along Y axis: localhost ~ # ectool motionsense Motion sensing active Sensor 0: -960 14112 -5952 Sensor 1: 453 16136 -373 Sensor 2: 0 0 0 When on its left side, report gravity along X axis: localhost ~ # ectool motionsense Motion sensing active Sensor 0: 16352 -432 64 Sensor 1: 16802 -338 192 Sensor 2: 0 0 0 and check the screen rotation was normally. Change-Id: Idbe7184d5c14eb31d7823f9e17648d9bf3df4443 Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866209 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
* Cr50: In hash crypto test, return valid hash for empty input.Gurleen Grewal2019-10-172-2/+2
| | | | | | | | | | | | | | | | | | | | FIPS ACVP tests require that on an empty input, the result is the hash of the empty string. In the current implementation, an empty result is returned. Change the implementation so it matches FIPS expectations. Also added two test cases in hash crypto test to check the corner case of the empty input. BUG=None BRANCH=cr50 TEST=test/tpm_test/tpmtest.py Change-Id: I9f5c3f71e4b10cbce2ea204eeb52e57ef26ad0e7 Signed-off-by: Gurleen Grewal <gurleengrewal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866444 Reviewed-by: Andrey Pronin <apronin@chromium.org> Tested-by: Gurleen Grewal <gurleengrewal@google.com>
* fpsensor: Improve unit test for enable/disable positive match secretYicheng Li2019-10-171-11/+27
| | | | | | | | | | | | | | | Initialize the local struct so that the test is not flaky. Also extract helper function and add more asserts to make the logic more explicit to readers. BUG=none BRANCH=nocturne TEST=make -j buildall Change-Id: I84ccd097b64c3ff304f4af228121b2cb989e6ab7 Signed-off-by: Yicheng Li <yichengli@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1865956 Reviewed-by: Craig Hesling <hesling@chromium.org>
* volteer: Configure power sequencing signalsAbe Levkoy2019-10-174-0/+26
| | | | | | | | | | | | | | Configure power sequencing interrupts and power-enable lines. Leave SLP_S4_L, which will be virtual, unimplemented for now. BUG=b:139553375 TEST=make buildall BRANCH=none Change-Id: Idf11290c84deb9ea2a71f5498a4a0db5363d2a3b Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1865481 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* fuzz: Add fuzz test for TCPMv2Edward Hill2019-10-174-3/+56
| | | | | | | | | | | | | | | | | | | | | Add usb_tcpm_v2_fuzz, a TCPMv2 version of usb_pd_fuzz. This gives some fuzz test coverage of: common/usbc/usb_pe_drp_sm.c common/usbc/usb_prl_sm.c common/usbc/usb_sm.c common/usbc/usb_tc_drp_acc_trysrc_sm.c common/usbc/usbc_task.c BRANCH=none BUG=none TEST=make run-usb_tcpm_v2_fuzz Change-Id: Ic129d9ebbe9bb37c2ca2674106e2a6652d08ee2a Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1865017 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* kukui: runtime usb mux config selectionTing Shen2019-10-173-3/+28
| | | | | | | | | | | | | | | | | The compile time IF_ENABLED(CONFIG_USB_MUX_XXX) does not work on kukui, change this to runtime selection. BUG=b:135079572 TEST=On Krane Rev5/Kodama, verify the mux switch to dp + usb mode (i2cxfer r 0 0x48 0x11 returns 0x03 or 0x13) BRANCH=kukui Change-Id: Ib44f0c383ed5f9156e3dd3bf6faa3daebb22e146 Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1864493 Tested-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@chromium.org>
* chip/it83xx: introduction of IT83202/BX versionDino Li2019-10-174-16/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Changing PLL and standby instruction didn't work on AX have been fixed on this version, so we can remove patches dedicated for AX. - Enable more chip config option. - Disable IT83XX_INTC_GROUP_21_22_SUPPORT option: Because IT8xxx2 series has its own interrupt group 21 and 22, so we will create another CL to support them. - System triggers a soft reset by default if IT83XX_ETWD_HW_RESET_SUPPORT option is enabled. BUG=b:134542199; b:133460224; b:142029177 BRANCH=none TEST=boots on BX version. console command reboot: reboot hard Hard-Rebooting! [Reset cause: power-on hard] reboot Rebooting! [Reset cause: soft] Change-Id: I06e57952cd758b4f344ada0f87729c961b1e747b Signed-off-by: Dino Li <Dino.Li@ite.com.tw> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1835884 Reviewed-by: Jett Rink <jettrink@chromium.org>
* pd: Extend READY_HOLD_OFF_US timer value for SRCScott Collyer2019-10-171-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | The READY_HOLD_OFF_US was set to 200 msec for both SNK and SRC connections. However, in the case of SRC, there can be a race condition with charge through hubs that initiate a power swap request and the SRC port sending the VDM discover idenity message. This CL makes the holdoff timer delay longer for SRC connections and prefixes READY_HOLD_OFF_US with SNK/SRC to differentiate the two timer values. BUG=b:140092163 BRANCH=None TEST=Tested with the AA-AM1N95W charge through hub. Verfied that this can be attached to Kohaku with external power already connected and successfully power role swap into source to charge the kohaku port. Tested 20-25 connections with no failures. Prior to this change the failure rate was 1 out of 3 attempts. Change-Id: I375415fec96baf44ecd4592033e8b44ed4616011 Signed-off-by: Scott Collyer <scollyer@google.com> Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1776844 Tested-by: Scott Collyer <scollyer@chromium.org> Tested-by: Jongpil Jung <jongpil19.jung@samsung.corp-partner.google.com>
* cr50: Fix building with CRYPTO_TEST=1Vadim Sukhomlinov2019-10-172-3/+2
| | | | | | | | | | | | | | | | | | | | 1. Recent change https://crrev/1730605 introduced syntax error which is only affecting build with CRYPTO_TEST=1. This patch fixes it. 2. -Wformat which was turned on for /platform/ec caught another issue with CPRINTF() not receiving right number of parameters. BUG=none BRANCH=cr50 TEST=make BOARD=cr50 CRYPTO_TEST=1 Change-Id: Id5e61f7633d6e93aff761771c22b888aebd87265 Signed-off-by: Vadim Sukhomlinov <sukhomlinov@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1863813 Tested-by: Andrey Pronin <apronin@chromium.org> Commit-Queue: Andrey Pronin <apronin@chromium.org> Reviewed-by: Vadim Bendebury <vbendeb@chromium.org> Reviewed-by: Andrey Pronin <apronin@chromium.org>
* pd: Prevent trasmitting messages if rx messages are pendingScott Collyer2019-10-171-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | This CL adds a check in pd_transmit to prevent sending tx messages if there are pending rx messages to be processed. This fixes an issue where a power role swap request is received, but before the accept reply can be sent a VDM discover identity message is sent which confuses the other side of the connection. BUG=b:140092163 BRANCH=None TEST=Tested with the AA-AM1N95W charge through hub. Verfied that this can be attached to Kohaku with external power already connected and successfully power role swap into source to charge the kohaku port. Tested 20-25 connections with no failures. Prior to this change the failure rate was 1 out of 3 attempts. Change-Id: Iebe53e0fc52bf817b709d58ef3e0ee7b226b0aa9 Signed-off-by: Scott Collyer <scollyer@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1799288 Reviewed-by: Jett Rink <jettrink@chromium.org> Tested-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Tested-by: Scott Collyer <scollyer@chromium.org> Commit-Queue: Scott Collyer <scollyer@chromium.org>
* fleex: Change adjust charge max sleep time to 10selthanhuang2019-10-161-0/+11
| | | | | | | | | | | | | | | Change CHARGE_MAX_SLEEP_USEC to 10 seconds. BUG=b:133375756 BRANCH=octopus TEST=Verify access battery once per 10 seconds by ec console. Change-Id: I273ec13381d131866c536b879f5a912a63a53ecb Signed-off-by: elthanhuang <elthan_huang@compal.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1852864 Reviewed-by: Jett Rink <jettrink@chromium.org> Commit-Queue: Jett Rink <jettrink@chromium.org> Tested-by: Jett Rink <jettrink@chromium.org>
* charge: allow boards to customize max battery poll timeJett Rink2019-10-161-0/+3
| | | | | | | | | | | | | | Some designs need to keep their battery from going to sleep. Allow boards to specify their max delay for polling the battery. BUG=b:133375756 BRANCH=octopus TEST=Verify access battery once per 10 seconds by ec console. Change-Id: I7e70a45fe643af567434f8187344e0e0d18d733c Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1865253
* driver: bmi160: Move commit to end of loopYuval Peress2019-10-161-2/+7
| | | | | | | | | | | | | | | | | | This change moves the motion_sense_fifo_commit_data call outside of the do...while loop in irq_handler. This is needed to allow for 1 commit per last_interrupt_timestamp which makes the commit more efficient and accurate. BUG=b:137758297,b:140157960 TEST=Ran CTS on Kohaku (this doesn't fix all the issues but improves the state) BRANCH=None Change-Id: Ifd680fb8d6eb47383928e25858898ac828fe4e92 Signed-off-by: Yuval Peress <peress@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1856829 Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* common: motion_sense: Refactor common code out of event processYuval Peress2019-10-161-50/+48
| | | | | | | | | | | | | Refactor motion_sense_process to include less repeated code. TEST=buildall and run on Kohaku BUG=None BRANCH=None Change-Id: I2e5af84f20cc7e50d3ddfb39d661238643aa99b3 Signed-off-by: Yuval Peress <peress@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1856828 Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* cleanup: Refactor #ifdefs toenable use of IS_ENABLEAyushee2019-10-161-38/+42
| | | | | | | | | | | | | | This change fixes #ifdef gaurds around CONFIG_USB_PD_TCPC_LOW_POWER and CONFIG_USB_PE_SM by replacing it with IS_ENABLED condition BUG=b:141971044 BRANCH=None TEST=make buildall -j Change-Id: I889752a8c4cdd8e22c97ede99643945fe2db868a Signed-off-by: Ayushee <ayushee.shah@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1863823 Reviewed-by: Keith Short <keithshort@chromium.org>
* pd: Add PE FRS unit test for new stackDenis Brockus2019-10-1612-2/+551
| | | | | | | | | | | BUG=none BRANCH=none TEST=make buildall -j Change-Id: I55453ddf1d1da0fdee902a33e14357716fb12c4a Signed-off-by: Denis Brockus <dbrockus@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1859826 Reviewed-by: Jett Rink <jettrink@chromium.org>
* pd: fix timer issue on pe_prs_snk_src_source_on_runDenis Brockus2019-10-161-9/+8
| | | | | | | | | | | | BUG=none BRANCH=none TEST=make buildall -j Change-Id: I12fbeb0a85d45bce8173c0c3831f663f5b618cc8 Signed-off-by: Denis Brockus <dbrockus@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1862621 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org>
* ectool: Add new mkbpget command to get button/switch statusNicolas Boichat2019-10-161-0/+83
| | | | | | | | | | | | | | | | The base attached switch is not exposed to userspace via /dev/input, so provide an alternative way to read it on boot. BRANCH=none BUG=b:109839180 TEST=ectool mkbpget buttons/switches prints correct states Change-Id: Id0314c7f15149ec8d863e43bd4a05a0f7bed9f02 Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1844655 Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org> Reviewed-by: Joel Kitching <kitching@chromium.org>
* dratini: enable ec_feature kbbacklit by SKUIDDevin Lu2019-10-162-0/+25
| | | | | | | | | | | | | BUG=b:140610519 BRANCH=none TEST=make sure ectool inventory has shown keyboard backlight support with dratini/dragonair kbbacklit SKU. Change-Id: I8fceebc417d4b5b319dbc6126d8311346f09bdcf Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1859234 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
* util/ectool: move `struct command` into `ectool.h`Harry Cutts2019-10-162-9/+16
| | | | | | | | | | | | | | | This allows it to be used by private host binaries (such as the one in https://crrev.com/i/1914158), which may wish to follow the same pattern as `ectool`. While we're at it, add some documentation comments. BRANCH=none BUG=chromium:1008568 TEST=Check `ectool` builds and runs. Change-Id: I94b02f9b734f65b1344a79d6ac8752c40ecf1f04 Signed-off-by: Harry Cutts <hcutts@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1861075 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* NPCX ESPI: fix some typosEdward Hill2019-10-162-8/+8
| | | | | | | | | | | | BUG=none BRANCH=none TEST=buildall Change-Id: I7f9089ce8028f12a94d8e73dd58a5bb36ebc614f Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1862090 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* usbc: make pe_init() staticEdward Hill2019-10-153-9/+2
| | | | | | | | | | | | | | pe_init() is called via pe_run(), so make it static. BRANCH=none BUG=none TEST=build Change-Id: I56928369e50a2022fc7e2aee2f68f09ebe7c06b6 Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1850191 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
* usbc: rename exe_state to run_stateEdward Hill2019-10-159-12/+12
| | | | | | | | | | | | | | | | | Just a simple rename. run_state() seems more readable to me, and "run" is used in many of the related functions and comments. exe_state used to be called sm_run_state_machine before the great refactoring of CL:1733744. BRANCH=none BUG=none TEST=build Change-Id: I5fe9e5b98042d7a5b9b9e9bde48ebecbda420458 Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1848970 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
* usbc: remove evt_timeout from struct type_cEdward Hill2019-10-156-74/+3
| | | | | | | | | | | | | | | | Simplify the pd_task loop timeout by making it a fixed 5 milliseconds. If there is nothing to do then it shouldn't take long to realize this. This allows removal of evt_timeout, tc_set_timeout, tc_get_timeout. BRANCH=none BUG=none TEST=usbc unit tests (make -j runhosttests) Change-Id: I067309b191e5118fbe9e89a92a650fa837fb75fa Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1857216 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
* usbc: fix flaky usb_typec_ctvpd testEdward Hill2019-10-151-1/+5
| | | | | | | | | | | | | | | | | | | When testing "Host Port VBUS Removed" at the end of test_vpd_host_src_detection_vbus(), we go to TC_UNATTACHED_SNK but then quickly move to TC_ATTACH_WAIT_SNK. Reduce the task_wait_event() timeout in wait_for_state_change() to make checking this transition more reliable. BRANCH=none BUG=none TEST=usb_typec_ctvpd test still passes Change-Id: I11a927fabbcff4a7adc50f5495fab796129b04ab Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1857215 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
* Trembyle: Add USB-A retimer GPIO definitionsEdward Hill2019-10-151-1/+4
| | | | | | | | | | | | | | Add enable and reset IO expander signal definitions for USB-A PS8811 retimers. BUG=b:138600008 BRANCH=none TEST=none Change-Id: I48731c143c08f450047a920c090c6abc6b30af4f Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1854373 Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* icelake: Cleanup GPIO_PCH_DSW_PWROKKeith Short2019-10-153-10/+12
| | | | | | | | | | | | | | | | | | Change GPIO_EC_PCH_DSW_PWROK to GPIO_PCH_DSW_PWROK to match convention for EC to PCH signals used by other Intel processors (specifically cannonlake already used GPIO_PCH_DSW_PWROK). BUG=none BRANCH=none TEST=buildall -j Change-Id: I59fb8d3ee3867c70dde74c186ba3974490c3cd27 Signed-off-by: Keith Short <keithshort@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1848252 Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* cometlake: Cleanup GPIO_PCH_SYS_PWROKKeith Short2019-10-158-51/+58
| | | | | | | | | | | | | | | | | | | | Change GPIO_EC_PCH_SYS_PWROK to GPIO_PCH_SYS_PWROK on cometlake to conform with naming convention used on other Intel processors. Leave gpio.inc files unchanged and add a mapping from GPIO_EC_PCH_SYS_PWROK to GPIO_PCH_SYS_PWROK in the board files. BUG=none BRANCH=none TEST=make buildall -j TEST=boot kohaku Change-Id: I722cb06dd90ee5d7e426664508f54a5cbe19de4a Signed-off-by: Keith Short <keithshort@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1848251 Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* cometlake/icelake: cleanup GPIO_PCH_RSMRST_LKeith Short2019-10-153-3/+2
| | | | | | | | | | | | | | | | | | | | | Replaced references of GPIO_EC_PCH_RSMRST_L with GPIO_PCH_RSMRST_L in to match convention used in common Intel power sequencing. Boards still use GPIO_EC_PCH_RSMRST_L in their gpio.inc files to match schematic net names. BUG=none BRANCH=none TEST=buildall -j TEST=boot kohaku (cometlake device) TEST=run "apshutdown" on kohaku Change-Id: Ic9fa13dbf2d4e6c8953b82a9dd20f48a6cf8d2c8 Signed-off-by: Keith Short <keithshort@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1846690 Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* power_button_x86: Make sure PWRBTN_STATE_INIT_ON base 100 millisecondsben.chen2@quanta.corp-partner.google.com2019-10-151-23/+22
| | | | | | | | | | | | | | | | Fix sub function state_machine PWRBTN_STATE_INIT_ON case, should be first check charge_prevent_power_on until POWER Button Time out. BUG=b:141260790 BRANCH=Master TEST=check PB task timing with power on timing be sure the same time. Change-Id: I15a599773afe94e0730755dd60674cb4c4ea27d6 Signed-off-by: Ben Chen <ben.chen2@quanta.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1847571 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
* treeya: apply USB EQ setting to PS8751 USB muxLu Zhang2019-10-151-1/+12
| | | | | | | | | | | | | | | | | | | The default USB TYPE C connector facing receiver equalization setting is 0x90, compensate for channel loss up to 15.4dB It's high for some dongles. Apply lower USB EQ to 8.7dB BUG=b:140472120 BRANCH=none TEST=build and boot on, read back registers to verify > ectool i2cread 8 2 0x16 0xe7 0x40 Signed-off-by: Lu Zhang <lu.zhang@bitland.corp-partner.google.com> Change-Id: I1fce255d0dbe8c5a12cf8c8ff5b3c506e8d19475 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1830538 Reviewed-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Paul Ma <magf@bitland.corp-partner.google.com> Tested-by: Paul Ma <magf@bitland.corp-partner.google.com>
* kohaku: Change halt temperature to 90 CTim Wawrzynczak2019-10-151-1/+1
| | | | | | | | | | | BUG=b:142410208 BRANCH=none TEST=buildall Change-Id: I8eb8d2b8ef35572f50cc3dfd1a56b7503fadb1e1 Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1859828 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
* Fix race condition in spiflashfw.Allen Webb2019-10-151-7/+10
| | | | | | | | | | | | BRANCH=None BUG=chromium:1011870 TEST=make -j buildall Change-Id: Ifa0241cf9ea02ecf989fc7257f37c24efb17c3a7 Signed-off-by: Allen Webb <allenwebb@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1860720 Reviewed-by: LaMont Jones <lamontjones@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org>