summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* zork: Create baseboard variants for trembyle/dalbozEdward Hill2020-02-279-56/+108
| | | | | | | | | | | | BUG=b:150110428 BRANCH=none TEST=none Signed-off-by: Edward Hill <ecgh@chromium.org> Change-Id: I30503a0416325fc8573a4a62b3bc3ff943b5008e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2071390 Commit-Queue: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* ish: board level PM enablement for tgl rvpLeifu Zhao2020-02-271-0/+17
| | | | | | | | | | | | | | | | | Board level power management enablement for tgl rvp. BUG=b:149238813 BRANCH=none TEST=ISH can successfully enter into D0i1/D0i2/D0i3 on tgl rvp. Signed-off-by: Leifu Zhao <leifu.zhao@intel.com> Change-Id: Ie1eaa532a38a286ca47540cb41edc8044cd7352b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2056150 Reviewed-by: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Auto-Submit: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com>
* ish: chip level enablement for ish5.4 PMLeifu Zhao2020-02-273-32/+175
| | | | | | | | | | | | | | | | | Chip level power management enablement for ish5.4. BUG=b:149238813 BRANCH=none TEST=ISH can successfully enter into D0i1/D0i2/D0i3 on tgl rvp. Signed-off-by: Leifu Zhao <leifu.zhao@intel.com> Change-Id: Icc554a68fe57970bcaa7be457f56db34067858d9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2055895 Reviewed-by: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Auto-Submit: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com>
* ish: infrastructure changes to support ish5.4 PMLeifu Zhao2020-02-279-47/+114
| | | | | | | | | | | | | | | | | | Infrastructure related changes to support enabling power management for ish5.4 on tgl rvp platform. BUG=b:149238813 BRANCH=none TEST=ISH can successfully enter into D0i1/D0i2/D0i3 on tgl rvp. Signed-off-by: Leifu Zhao <leifu.zhao@intel.com> Change-Id: I50b6f1a4fe9c14f9479af2a2a438ec7395ec27a1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2056149 Reviewed-by: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Auto-Submit: Leifu Zhao <leifu.zhao@intel.corp-partner.google.com>
* usbc: Awaken pd_task during pd_set_suspendAbe Levkoy2020-02-271-0/+7
| | | | | | | | | | | | | | | In the current implementation of the Disabled state, pd_task sleeps until it receives an event. Awaken pd_task upon resume, so that it can transition to Unattached.SNK. BUG=chromium:1021417 TEST=ectool pdcontrol suspend and resume (with subsequent commits) BRANCH=none Change-Id: Ic2de3f46920fa3d0d1853c0439d22cfa32fe07de Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057981 Reviewed-by: Diana Z <dzigterman@chromium.org>
* usb_set_suspend: Use "enable" consistentlyAbe Levkoy2020-02-273-9/+9
| | | | | | | | | | | | | | The port is enabled when suspend is not enabled and vice versa. Avoid confusing these idioms. BUG=none TEST=make buildall BRANCH=none Change-Id: I3063793334ac875afee8a176f96625e8903d2694 Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057979 Reviewed-by: Keith Short <keithshort@chromium.org>
* max32660: add I2C board support for stand-alone read transactionsJerry Bradshaw2020-02-262-70/+134
| | | | | | | | | | | | | | | | | | | Adds support for solitary I2C board read transactions that are not preceded with an I2C write. BRANCH=none BUG=none TEST=Slave tested with EC CMDs and board cmds sent from a custom written EC HOST using another MAX32660 device as an I2C Master. Tested with Raspberry PI that emulates EC HOST and board commands. Change-Id: I653fd2bd9d4799c7e9cec4561906f0afe92c458c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1939779 Reviewed-by: Jes Klinke <jbk@chromium.org> Reviewed-by: Harry Cutts <hcutts@chromium.org> Reviewed-by: Tai-Hsu Lin <sheckylin@chromium.org> Tested-by: Tai-Hsu Lin <sheckylin@chromium.org> Commit-Queue: Harry Cutts <hcutts@chromium.org>
* util: add flash_cr50 script for updating cr50.Mary Ruthven2020-02-261-0/+771
| | | | | | | | | | | | | | | | | | | | | | | Add a flash_cr50 script for updating cr50. The script supports updating through gsctool and cr50-rescue. BUG=b:144048851 BRANCH=none TEST=manual python util/flash_cr50.py -i $IMAGE -p 9999 -c cr50-rescue on octopus. python util/flash_cr50.py -i $IMAGE -p 9999 --method=cr50_reset_odl -c cr50-rescue python util/flash_cr50.py -i $IMAGE -c 'sudo gsctool' python util/flash_cr50.py -i $IMAGE -s $SERIAL Change-Id: Ibdd213446fea4cb66f77c6b7249c02914bd0712a Signed-off-by: Mary Ruthven <mruthven@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1907469 Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
* nocturne_fp/hatch_fp: Make explicit fields in spi arrayCraig Hesling2020-02-262-2/+2
| | | | | | | | | | | | | | | This has no functional change, as verified with compare_build.sh. BRANCH=nocturne,hatch BUG=none TEST=./util/compare_build.sh --board nocturne_fp TEST=./util/compare_build.sh --board hatch_fp Change-Id: I4e58a65cd47fe136a471d2c16444d106e8431e5c Signed-off-by: Craig Hesling <hesling@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2071149 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Tom Hughes <tomhughes@chromium.org>
* RELAND: kodama: enable i2c bitbangxiong.huang2020-02-264-4/+24
| | | | | | | | | | | | | | | | | | | | | This is a reland of CL:1876290 for kodama in master. firmware-kukui-12573.B has landed this function. Original commit message: > - Enable bitbang driver > - increase the console/hook stack size because accessing bitbang i2c bus > - requires more stack memory than before BUG=none TEST=1) make buildall 2) boot on Kodama 3) Get battery information normally BRANCH=kukui Change-Id: I05f9e0f7df2369bcbddfa9be55aec03ce821ea8b Signed-off-by: Xiong Huang <xiong.huang@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2071540 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* dalboz: Add base/lid sensor configurationLu Zhang2020-02-267-97/+386
| | | | | | | | | | | | | | | | Dalboz uses LSM6DS3TR/LIS2DWL instead of BMI160/KX022 BUG=b:149968926 BRANCH=none TEST=using ec console 'accelinfo on' to see if there is sensor data output. Change-Id: If385c5554b50795702736aa8e1e3090dcb8b618a Signed-off-by: Lu Zhang <lu.zhang@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2069965 Commit-Queue: Edward Hill <ecgh@chromium.org> Tested-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org>
* PS8xxx: Workaround of Connection Detection not restartedWai-Hong Tam2020-02-263-3/+44
| | | | | | | | | | | | | | | | | | When issuing the COMMAND.Look4Connection to enable PS8805/PS8815 to restart Connection Detection, PS8805/PS8815 doesn't do so if the partner already presents Rp. This is a workaround that changes the starting pull to the opposite when doing DRP auto-toggle. BRANCH=None BUG=b:149570002 TEST=Enabled TCPMv2 and verified a 20V charger detected properly. TEST=Enabled TCPMv2 and verified a Type-C dongle detected properly. Change-Id: Ic2f65bdd74d1825ae81fcd30fec5e72d29a51663 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2067481 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* volteer: Update USB C1 reset for next buildstabilize-volteer-12931.B-masterKeith Short2020-02-265-10/+43
| | | | | | | | | | | | | | | | Update the GPIO assignment for the USB_C1_RT_RST_ODL signal for the next board build. BUG=b:144933528, b:148243971 BRANCH=none TEST=make buildall TEST=Check unassigned board ID or board ID=0 uses legacy GPIO setting. Otherwise new GPIO setting is used. Change-Id: I4621e039e4461a4e10ab87bc2d4e000b5dcaa885 Signed-off-by: Keith Short <keithshort@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057496 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* TUSB544: Add driverDiana Z2020-02-254-0/+144
| | | | | | | | | | | | | Driver code for the TUSB544 redriver BRANCH=None BUG=b:149561847 TEST=builds Change-Id: I391d6d264ff9d326c2d45569124dd1366f892812 Signed-off-by: Diana Z <dzigterman@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2062766 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* nucleo-dartmonkey: Add fingerprint supportCraig Hesling2020-02-256-2/+79
| | | | | | | | | | | | | This adds the support for the fingerprint sensor and fingerprint system. BRANCH=none BUG=b:130296790 TEST=none Change-Id: Ib6a555f0b0a5fd30487dbf8c314096de3e4f2fcf Signed-off-by: Craig Hesling <hesling@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2061349
* nucleo-dartmonkey: Initial board offeringCraig Hesling2020-02-258-0/+181
| | | | | | | | | | | | | | | | This board will mirror the features of dartmonkey (fingerprint MCU), but using the Nucleo-H743ZI dev board. This is simply a clone of nucleo-h743zi. BRANCH=none BUG=b:130296790 TEST=Run on nucleo. Ensure the console works. Change-Id: I69961147a3ef455d951b664f1c92c917f806b082 Signed-off-by: Craig Hesling <hesling@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057973 Reviewed-by: Jett Rink <jettrink@chromium.org>
* nucleo-h743zi: Separated into baseboardCraig Hesling2020-02-2514-230/+282
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows for creating multiple projects on top of the nucleo-h743zi platform. The intended use for this is to have a fingerprint board/project that pulls in all FPMCU specific config and libraries, while still maintaining another pure nucleo-h743zi board/project that can be used for platform testing and tuning. I suspect there will be more test boards/projects that use the nucleo-h743zi baseboard in the future. A project/board would be used as a way to create a specific test platform that can isolate an individual feature. Note, this does make use of recursively including the basboard gpio table. This requires the use of https://crrev.com/c/2056498 (gpio: Free gpio.inc from oppressive order). This also removes malloc support. BRANCH=none BUG=none TEST=make BOARD=nucleo-h743zi # Copy binary to mass storage # Connect to console and change clock sources Change-Id: I455274e0efb8ec374443314d351e254f1347a1a9 Signed-off-by: Craig Hesling <hesling@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057498 Reviewed-by: Jett Rink <jettrink@chromium.org>
* nocturne_fp: Beautify gpio.incCraig Hesling2020-02-251-5/+3
| | | | | | | | | | | | | This has no functional change, as verified with compare_builds.sh. BRANCH=nocturne,hatch BUG=none TEST=./util/compare_build.sh -b nocturne_fp Change-Id: If0fab353f85c7e61c9556cfdd23d37649420df06 Signed-off-by: Craig Hesling <hesling@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057497 Reviewed-by: Tom Hughes <tomhughes@chromium.org>
* core/riscv-rv32: link libgcc for 64-bit divisionDino Li2020-02-251-0/+1
| | | | | | | | | | | | | | | | We made this change to fix the issue of __udivdi3 routine is missing in host_command_get_uptime_info() function. BUG=none BRANCH=none TEST=There is no error on building it83xx_evb with selecting riscv core. Signed-off-by: Dino Li <Dino.Li@ite.com.tw> Change-Id: Ib745114e7be2a371b18b9268423e9ddd34bfde61 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1866214 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* docs: Add unit test documentationTom Hughes2020-02-253-17/+142
| | | | | | | | | | | | BRANCH=none BUG=none TEST=view in gitiles Change-Id: I4c282ed8bb831afa534e1c40bc619cd8e6d772ad Signed-off-by: Tom Hughes <tomhughes@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1958255 Commit-Queue: Jett Rink <jettrink@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
* docs: Minor formatting fixesAbe Levkoy2020-02-251-5/+6
| | | | | | | | | | | | BUG=none TEST=Observed rendered MD BRANCH=none Change-Id: Iab52f7759028dae68b592ec59b7712a0b04344c7 Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2062990 Reviewed-by: Jett Rink <jettrink@chromium.org> Commit-Queue: Jett Rink <jettrink@chromium.org>
* dalboz: Add battery informationLu Zhang2020-02-252-20/+81
| | | | | | | | | | | | | | | | | | Copied from treeya. Need support three new batteries --SMP:L19M3PG1 --LGC:L19L3PG1 --Celxpert:L19C3PG1 BUG=b:150076461 BRANCH=none TEST=make build Change-Id: Ifb17dae8b0926c5ebca520f0c858ce9738b7e075 Signed-off-by: Lu Zhang <lu.zhang@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2069958 Reviewed-by: Edward Hill <ecgh@chromium.org> Commit-Queue: Eric Peers <epeers@google.com> Tested-by: Eric Peers <epeers@google.com>
* waddledoo: Set CMPOUT as inverted to enable 5VAseda Aboagye2020-02-252-0/+21
| | | | | | | | | | | | | | | | | | | | The charger has a general comparator which is enabled by default. The output of this comparator enables the sub board power rails. This commit adds a mechanism to turn on the 5V on the sub board tied to when the system decides to enable 5V. BUG=b:149794574 BRANCH=None TEST=Build and flash waddledoo, boot to S0, plug in a sink, verify that VCONN is sourced. Change-Id: I05384bdbdde4ccc033c2057b3c45fcaeae4589cc Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2065495 Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Aseda Aboagye <aaboagye@chromium.org> Auto-Submit: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org>
* isl923x: Add isl923x_set_comparator_inversion()Aseda Aboagye2020-02-252-0/+34
| | | | | | | | | | | | | | | | | | This commit adds an API to set the general comparator output polarity inversion. BUG=b:149794574 BRANCH=None TEST=Add some code to waddledoo to exercise this API, build and flash, verify it behaves as expected. Change-Id: Ib412ce9ad0e44e974ee5fc59bc30a26de65c94c5 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2067169 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Diana Z <dzigterman@chromium.org> Auto-Submit: Aseda Aboagye <aaboagye@chromium.org>
* TCPMv1/v2: Move hex8tou32 and remote_flashing to common fileSam Hurst2020-02-253-78/+105
| | | | | | | | | | | | | BUG=chromium:1021235 BRANCH=none TEST=make buildall -j Signed-off-by: Sam Hurst <shurst@google.com> Change-Id: Ia243d5062c77d8f6b8299fbd131cabfdbcffb01e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2070452 Tested-by: Sam Hurst <shurst@google.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Sam Hurst <shurst@google.com>
* gpio: Free gpio.inc from oppressive orderCraig Hesling2020-02-252-14/+140
| | | | | | | | | | | | | | | | | | | | | | | | | This CL enables gpio.wrap to correct the order of all declaration in gpio.inc. Previously, gpio.inc had to be written such that GPIO_INTs were at the top of the file, GPIOs following GPIO_INTs, and then IOEX_INTs before IOEXs declaration. This ordering was required because the signal name enums were used to index into the interrupt handler table. See crrev.com/c/263973 (gpio: Refactor IRQ handler pointer out of gpio_list). This constraint not only limited the creativity and art of an individual crafting a gpio.inc, but also made recursively including gpio.inc's (for baseboard or other) messy and ugly. BRANCH=none BUG=none TEST=make buildall Change-Id: Ie4531b95b65728b646087f00e9434f4cfdc49287 Signed-off-by: Craig Hesling <hesling@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2056498 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
* cleanup: tab over register valuesJett Rink2020-02-251-20/+20
| | | | | | | | | | | | | | Tab over register values underneath the register definition for consistent style. BRANCH=none BUG=none TEST=none Change-Id: I823a454fc57d4ee455c9efb693baff8838bc7d3c Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2067158 Reviewed-by: Diana Z <dzigterman@chromium.org>
* cleanup: move voltage rail detection to commonJett Rink2020-02-254-21/+24
| | | | | | | | | | | | | | Single source the VDD rail sagging reset interrupt Add VDD detection to C2D2 as well. BRANCH=servo BUG=none TEST=builds Change-Id: Iceac7d9fa7a9bde5a3c23c36e63b6d635d8812a3 Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2064593 Reviewed-by: Diana Z <dzigterman@chromium.org>
* servo_micro: move ite flashing codeJett Rink2020-02-256-326/+380
| | | | | | | | | | | | | | | | In preparation for servo_micro and c2d2 to sharing the ite, i2c flashing code, move it to a stm specify common file. It is STM specific because it explicitly uses STM registers to accomplish the non-compliant i2c waveforms needed to put the ITE EC into flash mode. BRANCH=servo BUG=b:148610186,b:79684405 TEST=flash ampton with servo_micro using this code Change-Id: Ia0f3f944df2f8a8ad47ea5a62c5f0edae2c71943 Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2064592 Reviewed-by: Diana Z <dzigterman@chromium.org>
* flash_ec: add pointer to iteflash.mdJett Rink2020-02-251-2/+3
| | | | | | | | | | | | | | | If we cannot find the linux i2c pseudo module then it may have never been installed. The iteflash.md document walks the users how to set up everything correctly. BRANCH=none BUG=none TEST=none Change-Id: I97de487b2d495772d77d7d6085905be64cdf9ec5 Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2064590 Reviewed-by: Matthew Blecker <matthewb@chromium.org>
* iteflash: honor Ctrl+C signalJett Rink2020-02-251-12/+4
| | | | | | | | | | | | | | | Ensure all configuration (e.g. CCD, FTDI, linux) abort when Ctrl+c is pressed. BRANCH=none BUG=none TEST=Verify the Ctrl+c quits when using linux driver with C2D2 Change-Id: Idc0555ae9689a118d9375f2b31f24cc7d1e61a4b Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2064591 Reviewed-by: Matthew Blecker <matthewb@chromium.org>
* EFS2: Sync cr50_comm_err with Cr50's definitiondnojiri2020-02-241-2/+3
| | | | | | | | | | | | | | | | | This patch syncs enum cr50_comm_err with the one defined in cr50_stab. Signed-off-by: dnojiri <dnojiri@chromium.org> BUG=chromium:1045217 BRANCH=none TEST=Boot reworked Helios and verify software sync works. Change-Id: I2848a2d03fc90cbc9b292edaee1760e9ed32298d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2069029 Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-by: Namyoon Woo <namyoon@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* TCPMv1/v2: Move pd_set_polarity() to common fileVijay Hiremath2020-02-248-40/+32
| | | | | | | | | | | BUG=b:148528713 BRANCH=none TEST=make buildall -j Change-Id: Idf6908bfc3e79a960a7de6e4249c2f50b41b56e6 Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2052645 Reviewed-by: Diana Z <dzigterman@chromium.org>
* util: Fix shellcheck warnings in getversion.shTom Hughes2020-02-241-13/+14
| | | | | | | | | | | | | | | | BRANCH=none BUG=none TEST=make buildall -j TEST=for i in $(ls build); do \ bcompare build/$i/ec_version.h \ build.new/$i/ec_version.h; done Change-Id: If7c30746816075ab9958da96466b3a834746b0e1 Signed-off-by: Tom Hughes <tomhughes@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2063377 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Raul E Rangel <rrangel@chromium.org> Commit-Queue: Raul E Rangel <rrangel@chromium.org>
* servo_v4: add command ada_srccaps to list adapter's SrcCapEric Yilun Lin2020-02-241-0/+18
| | | | | | | | | | | | | | | | | | | | | | Add the command for a new servod control. FAFT tests can be aware of the capability of the adapter on servo_v4. BUG=b:140256624 BRANCH=servo_v4 TEST=ensure the command print all the SrcCap > ada_srccaps 0: 5000mV/3000mA 1: 9000mV/3000mA 2: 10000mV/3000mA 3: 12000mV/3000mA 4: 15000mV/3000mA 5: 20000mV/3000mA Change-Id: I5d08240f87838267464a38fa09ab2ee59c7d4edf Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2055267 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Wai-Hong Tam <waihong@google.com>
* servo_v4/pd: support more source voltage to DUTEric Yilun Lin2020-02-241-3/+23
| | | | | | | | | | | | | | | | usbc_action support new subcommand chg which limits the max voltage of PDOs. Also, serov_v4 provides more PDOs to the DUT if the adapter supports it, besides 5, 12, 20V. BRANCH=servo_v4 BUG=b:140256624 TEST=see servo_v4 provides various kinds of SrcCap to DUT Change-Id: Ie33a4fcffe7dc2acbfc65e725c46e62a553f98c1 Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2055266 Reviewed-by: Wai-Hong Tam <waihong@google.com>
* ps8xxx: Only apply PS8751 DRP disabled CC status workaround to PS8751.Matthew Blecker2020-02-221-18/+24
| | | | | | | | | | | BRANCH=none BUG=b:147472779,b:147684491,b:148710467 TEST=make buildall Change-Id: I8eed7bf86fe7c3e135517aaa31c3315128ca74e1 Signed-off-by: Matthew Blecker <matthewb@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2068803 Reviewed-by: caveh jalali <caveh@chromium.org>
* dedede: Configure EN_VCCST as inputAseda Aboagye2020-02-222-2/+4
| | | | | | | | | | | | | | | | | | | | | | Currently, the EC isn't using EN_VCCST itself, but we are using external logic to set this pin. The pin is initialized to low on the EC which causes a drive fight. This commit changes GPIO_EN_VCCST to an input while we determine whether or not we will use this pin in the EC. BUG=b:149775160 BRANCH=None TEST=`make -j buildall` TEST=Build and flash waddledoo, verify EC cannot set EN_VCCST. Change-Id: Ia9f439d3d049580ac66689fdde11ed75ca044584 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2068801 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Auto-Submit: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Diana Z <dzigterman@chromium.org>
* TCPMV1/2: Make the PD Config Flags more consistentSam Hurst2020-02-2254-40/+138
| | | | | | | | | | | | | | | | | | | | The current use of the PD Config Flags are a bit confusing and has been changed to the following: The CONFIG_USB_POWER_DELIVERY flag is used to enable and disable the TCPMv1 and TCPMv2 stacks. And when CONFIG_USB_POWER_DELIVERY is enabled, one of the following must be enabled: CONFIG_USB_PD_TCPMV1 - legacy power delivery state machine CONFIG_USB_PD_TCPMV2 - current power delivery state machine BUG=b:149993808 BRANCH=none TEST=make -j buildall Change-Id: Ie3f8615a75b15b4f1c703f57f3db9e152a471238 Signed-off-by: Sam Hurst <shurst@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2068519 Reviewed-by: Diana Z <dzigterman@chromium.org>
* util: convert config_option_check.py to Python 3Jack Rosenthal2020-02-221-18/+28
| | | | | | | | | | | | | | | | | | | | The main fixes that were needed were: * Use utf-8 encoding from git subprocess. * Don't use 'is' to compare string equality (Python does not guarantee interning of strings). For the parser state, the string comparison was removed by changing this to an Enum, since we have Python 3 anyway. BUG=chromium:1031705 BRANCH=None TEST=create commit with invalid config options and run script, notice the script points them out and exits 1, then test without that commit, no output and exit 0. Change-Id: I1113e063f747f0207c4b59a74f4e4a06bbcd5fcd Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2068520 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* jinlon: Increase CONFIG_POWER_BUTTON_INIT_TIMEOUTDevin Lu2020-02-211-0/+7
| | | | | | | | | | | | | | | | Apply CL:2065713 to jinlon. BUG=b:148749659 BRANCH=firmware-hatch-12672.B TEST=Enable EC flash protection & software sync. Perform cutoff, wait 30s, insert AC and DUT will boot to OS. Change-Id: I7b931328006d4f91173d4a2dec4f969d71161518 Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2066429 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Commit-Queue: Tim Wawrzynczak <twawrzynczak@chromium.org>
* power/common: Add board specific API for 5V controlAseda Aboagye2020-02-212-5/+19
| | | | | | | | | | | | | | | | | | | Some boards need different mechanisms to enable/disable the 5V rail that's not simply setting the PP5000_EN GPIO. This commit adds a new board specific API to control the 5V rail. If a board needs something more complex, they should define `board_power_5v_enable`. BUG=b:149794574 BRANCH=None TEST=Add definition for waddledoo, build and flash, verify that sub-board 5V is turn on as well. Change-Id: I333e3fb8f2b4e7f1907c792c0e35581150857f17 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2065494 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* dedede: Set pullup on PG_PP1050_ST_OD only after RSMRSTAseda Aboagye2020-02-213-1/+19
| | | | | | | | | | | | | | | | | | Per recommendation from the SoC vendor, we should only enable the pull up on PG_PP1050_ST_OD once RSMRST has been de-asserted. Otherwise, the pull up can inidicate a false power good. BUG=b:148688874 BRANCH=None TEST=Build and flash waddledoo, verify that PG_PP1050_ST_OD is actually valid. Change-Id: Icdd8ec08fc84954730ae2d80fed86af4f07f01ba Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2058694 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org>
* intel_x86: Add CONFIG_BOARD_HAS_AFTER_RSMRSTAseda Aboagye2020-02-213-0/+20
| | | | | | | | | | | | | | | | | | | Some x86 boards need to perform some workarounds after handling RSMRST_L, therefore this commit adds a CONFIG_* option to enable this, CONFIG_BOARD_HAS_AFTER_RSMRST. A board callback, board_after_rsmrst() will be called after RSMRST is changed. BUG=b:148688874 BRANCH=None TEST=Enable CONFIG_* option, verify that callback is called once RSMRST changes. Change-Id: Ic6b6b4a0f23639e3fd4d9e69c95b3d94e44a2162 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2058693 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org>
* raa489000: Utilize VBUS auto dischargeAseda Aboagye2020-02-211-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | The Renesas RAA489000 has an issue where GoodCRC messages are not emitted unless the VBUS Auto Discharge Disconnect setting is enabled. This needs to occur after determining orientation. However, there appears to be another issue where the device will not DRP toggle while that VBUS Auto Discharge Disconnect setting is set. Luckily, our TCPMv2 state machine will enable/disable this setting at these times for us. Therefore, this commit leverages the TCPCI auto discharge disconnect function which allows DRP toggling to work. BUG=b:149337338 BRANCH=None TEST=Build and flash waddledoo, boot to S0, verify DUT DRP toggles. Plug in a PD port partner, verify that PD communication works. TEST=Repeat above test in both orientations. Change-Id: Ieb79392f3cd7c1939bb6fb3de0d6785cec0b24c4 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057847 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Auto-Submit: Aseda Aboagye <aaboagye@chromium.org>
* TCPMv2: Notify system when entering attached stateAseda Aboagye2020-02-211-1/+10
| | | | | | | | | | | | | | | | | | | | We have Type-C disconnect and connect hooks, but the Type-C state machine was only notifying on entry to the disconnect states. This commit adds the notifications for connect upon entry to the attached states. BUG=b:149337338 BRANCH=None TEST=Add a hook off of HOOK_USB_PD_CONNECT, verify that it gets called when a Type-C port partner is connected. Change-Id: Ifbdedf77cf519fc58b014c376d7733824791fe2f Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2057846 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Auto-Submit: Aseda Aboagye <aaboagye@chromium.org>
* it83xx/dac: add DAC moduletim2020-02-219-1/+163
| | | | | | | | | | | | | | | | | | The DAC module has four channels. We can set output voltage when DAC channel is enabled by this driver. BUG=b:149094279 BRANCH=none TEST=The console command #dac set as follows: read: dac [ch] write: dac [ch] [voltage] [ch]:2-5, [voltage]:0(disable)-3300 Change-Id: I8e815cb5bc749467581d5f771fd6f9e0995fca3b Signed-off-by: tim <tim2.lin@ite.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2046685 Reviewed-by: Diana Z <dzigterman@chromium.org>
* Ezkinil: Add new SMP batterySue2020-02-212-12/+13
| | | | | | | | | | | | | | | new battery: Simplo 934QA017H/934QA017HB remove the unused battery BUG=b:148962537 BRANCH=none TEST=Make sure battery can cutoff by console "cutoff" or "ectool cutoff" and resume by plug in adapter. Change-Id: Ib290b10918a8e721eb7b9d9b730a7549357bdd3f Signed-off-by: Sue Chen <sue.chen@quanta.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2055265 Reviewed-by: Edward Hill <ecgh@chromium.org>
* puff: Disable console command help to recover flash spaceTom Hughes2020-02-211-0/+2
| | | | | | | | | | | | | | We're running out of flash space, so disable the console command help strings since they're not strictly required. BRANCH=none BUG=b:146447208 TEST=make buildall -j Change-Id: I3c3ce780aafc36bc0b355150d85cc5e4d93245ac Signed-off-by: Tom Hughes <tomhughes@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2065492 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* Servo: Adds persistent storage of MAC addressBrian J. Nemec2020-02-217-24/+230
| | | | | | | | | | | | | | | | | | | | | | | Adds a field to the persistent storage to store the MAC address of the device. This is enabled on ServoV4 in order to store the MAC address for the integrated ethernet port. Added a console command to set and load this value. BUG=b:149506580 TEST=Verified setting and loading the MAC address using: 'macaddr set 12:34:56:78:90:ab' and 'macaddr' or 'macaddr load' Verified that MAC addresses over 19 characters long return an error response and not update the MAC. Verified no set serial number will return the uninitialized string. Verified that the MAC address can be updated independently of serialno Verified that the persist_state fields restore during firmware updates Change-Id: I8425ce9e13322e99a4f59df444ea0dc73821aa6b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2063330 Tested-by: Brian Nemec <bnemec@chromium.org> Reviewed-by: Wai-Hong Tam <waihong@google.com> Commit-Queue: Brian Nemec <bnemec@chromium.org>