summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* zephyr: config_chip: Add the config of CONFIG_PLATFORM_EC_LOW_POWER_S0Tim Lin2022-12-123-1/+10
| | | | | | | | | | | | | | | Add config option which will allow entry deep sleep during S0. BUG=none BRANCH=none TEST=none Change-Id: I69d5296ca105790e6cecef5ea0d62b49f09c1ad6 Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3267758 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: shim: fix rt1739 compatsFabio Baltieri2022-12-124-4/+4
| | | | | | | | | | | | | | | The defined bindings are richtek,rt1739-bc12 and richtek,rt1739-ppc. BRANCH=none BUG=none TEST=cq dry run TEST=zmake compare-builds -a Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: I3c172d743031de56dbc414e0ec168a197633c6c4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4092914 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* lisbon: Update fw_config for lisbonTommy Chung2022-12-122-24/+28
| | | | | | | | | | | | | | | | Update fw_config to meet lisbon's fw_config table. BUG=b:248786948 BRANCH=none TEST=make BOARD=lisbon Signed-off-by: Tommy Chung <tommy.chung@quanta.corp-partner.google.com> Change-Id: I51388f4c896e37584716f979b99f275b589e6f66 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4019705 Reviewed-by: Ricky Chang <rickytlchang@chromium.org> Commit-Queue: Ricky Chang <rickytlchang@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Devin Lu <devin.lu@quantatw.com>
* lisbon: Update board config for lisbonTommy Chung2022-12-129-526/+99
| | | | | | | | | | | | | | | | | | | | Update all configs to meet lisbon's board: 1. Update USBC related config (including switching from 3 ports to 1 port, changing TCPC/USBC mux to RT1715/PS8818, removing TBT) 2. Update I2C ports 3. Update gpio config 4. Remove peripheral charger BUG=b:246657849 BRANCH=none TEST=make BOARD=lisbon Signed-off-by: Tommy Chung <tommy.chung@quanta.corp-partner.google.com> Change-Id: Ifaf869462025d35a30d6e2bf65e0083419dbdc39 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3934441 Commit-Queue: Ricky Chang <rickytlchang@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Ricky Chang <rickytlchang@chromium.org>
* tentacruel: reorganize project level dtsiEric Yilun Lin2022-12-123-135/+2
| | | | | | | | | | | | | | | | Move thermistor_tentacruel.dtsi to corsola/tentacruel/thermistor.dtsi BUG=b:254097516 TEST=zmake compare-builds tentacruel; twister -T zephyr/test/ BRANCH=none Change-Id: I656787a670dfc467c4f3735687b6864306583c2d Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4091768 Reviewed-by: Sung-Chi Li <lschyi@chromium.org> Commit-Queue: Eric Yilun Lin <yllin@google.com> Tested-by: Eric Yilun Lin <yllin@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* corsola: reorganize the source filesEric Yilun Lin2022-12-1229-59/+83
| | | | | | | | | | | | | | | | | | | | - Create project level CMakeLists.txt - Move corsola/src/kingler/*.c to corsola/${project}/src/. - Prefix kingler/krabby common files with "npcx_", or "ite_" BUG=b:254097516 TEST=zmake build $(find zephyr/program/corsola/ -type f \ -name project.overlay | sed -r 's|/[^/]+$||' | sed -r 's|^.+/||') TEST=./twister -T ./zephyr/test BRANCH=none Change-Id: I7d859032391f41f803b1092b210ed2f9996bbff4 Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4091426 Reviewed-by: Ting Shen <phoenixshen@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Tested-by: Eric Yilun Lin <yllin@google.com> Commit-Queue: Eric Yilun Lin <yllin@google.com>
* corsola: drop board level cbi.dtsiEric Yilun Lin2022-12-124-74/+60
| | | | | | | | | | | | | | | | | To follow the new project organization rule. BUG=b:254097516 TEST=zmake compare-builds tentacruel magikarp krabby TEST=./twister -T ./zephyr/test BRANCH=none Change-Id: I5448af8f144625816aa25b7d575c35312533effc Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4085115 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Tested-by: Eric Yilun Lin <yllin@google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Eric Yilun Lin <yllin@google.com>
* corsola: drop board level battery.dtsiEric Yilun Lin2022-12-126-39/+21
| | | | | | | | | | | | | | | | | To follow the new project organization rule. BUG=b:254097516 TEST=zmake compare-builds tentacruel magikarp krabby TEST=./twister -T ./zephyr/test BRANCH=none Change-Id: Id015dc01b719d7f7beea73576100734ff99f7f99 Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4085113 Reviewed-by: Sung-Chi Li <lschyi@chromium.org> Commit-Queue: Eric Yilun Lin <yllin@google.com> Tested-by: Eric Yilun Lin <yllin@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* herobrine: Select pcf85063a oscillator capacitor to 12.5 pFBob Moragues2022-12-122-0/+6
| | | | | | | | | | | | | | Add configuration for Villager and Zombie BUG=b:4050011 TEST=verify frequency of ATC BRANCH=none Signed-off-by: Bob Moragues <moragues@chromium.org> Change-Id: Icb55a3d8b24816c0f7928a3a7bae858a57042f18 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4083153 Reviewed-by: Wai-Hong Tam <waihong@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* Xivu: modify second source rotate mappingmick_hsiao2022-12-101-2/+2
| | | | | | | | | | | | | | | | correct the rotate mapping BUG=b:258749706 BRANCH=none TEST=second source DUT can return correct angle. Change-Id: Id6cb5a5b99273455f619731e649e28941d3b8997 Signed-off-by: mick_hsiao <mick_hsiao@compal.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4087907 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: SamSP Liu <samsp_liu2@compal.corp-partner.google.com> Reviewed-by: Andrew McRae <amcrae@google.com>
* cq: Export a few boards in binary_sizesJeremy Bettis2022-12-102-4/+53
| | | | | | | | | | | | | | | | | | | | For some boards that have been added or edited recently, and for just 2 regions, set the track_in_gerrit option on the metric. Also extract the baseboard from make and use that as the platform name instead of "ec". BRANCH=None BUG=b:261622866 TEST=./firmware_builder.py --metrics /tmp/metrics_build build Change-Id: Iac325778370e606901d1e372b735e0531c530323 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4086970 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* cq: Export a few boards in binary_sizesJeremy Bettis2022-12-101-3/+20
| | | | | | | | | | | | | | | | | For the boards that we track for coverage, set the track_in_gerrit option on the metric. BRANCH=None BUG=b:261622866 TEST=./firmware_builder.py --metrics /tmp/metrics_build build Change-Id: I6795c594fcb2fd67ff2a07b5872130d691576740 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4086976 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* core/cortex-m: Call constructors of global objectsTom Hughes2022-12-102-0/+10
| | | | | | | | | | | | | | | BRANCH=none BUG=b:261636413 TEST=./test/run_device_tests.py -b dartmonkey -t global_initialization => PASS Cq-Depend: chromium:4083816 Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: Ia7e9069a6a030c81cb0697346baa9a08861e56cb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4081571 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Bobby Casey <bobbycasey@google.com>
* test: Add a test for global object initializationTom Hughes2022-12-106-0/+63
| | | | | | | | | | | | | | BRANCH=none BUG=b:261636413 TEST=./test/run_device_tests.py -b dartmonkey -t global_initialization => Fails without https://crrev.com/c/4081571 Cq-Depend: chromium:4081571 Change-Id: Ic92a5e92538c22d81d769d0f26be65abe0905656 Signed-off-by: Tom Hughes <tomhughes@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4083114 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Andrea Grandi <agrandi@google.com>
* zephyr: mtlrvpp_npcx: add TCPC interrupts as hibernate wake pinsRajesh Kumar2022-12-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | EC doesn't wakes from hibernate when Type-C charger is connected on any of the port. Its noticed that while bc_acok is not toggling we are seeing the Type-C interrupts toggle. Configuring tcpc interrupt as hibernate wake pin works and EC is coming out of hibernate state. Adding this workaround until actual fix is added in the hardware. BRANCH=none BUG=none TEST=zmake build mtlrvpp_npcx TEST=EC wakes up from hibernate when Type-C charger is connected Change-Id: Ia0a23bdd13e33f455006c0216e02718b004caf22 Signed-off-by: Rajesh Kumar <rajesh3.kumar@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4084483 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Fabio Baltieri <fabiobaltieri@google.com>
* board/hyperdebug: Name pins after connector positionJes B. Klinke2022-12-092-75/+36
| | | | | | | | | | | | | | | | | | | | | | | Even pins that default to a special purpose such as UART or SPI, can be reconfigured at runtime to be used as GPIO. In order to support that case, they have been renamed according to their connector position, like all the other pure GPIO pins. Also, initialize SPI controller at board boot, rather than when host first requests SPI operations via USB. This is in preparation for the HyperDebug board supporting the re-configuration of SPI speed, or individual pins as SPI or GPIO, at any point in time, either before or after the host has initiated USB SPI communcation. BUG=b:254554329 TEST=Observe ability to use UART pin as GPIO Change-Id: I5d1879369a9cc0dde0f84de1cf83429669ca1469 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4089985 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Jes Klinke <jbk@chromium.org> Tested-by: Jes Klinke <jbk@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* board/hyperdebug: Allow runtime pin reconfig to alternateJes B. Klinke2022-12-091-2/+4
| | | | | | | | | | | | | | | | The HyperDebug board is versatile like uServo. This change allows pins which are by default used for UART, SPI, etc. to also be used as GPIO for a while, and then reconfigured back to their special purpose. BUG=b:254554329 TEST=Observed HyperDebug GPIO on UART pin, then revert Change-Id: Iabaed0fc622f208e8d50560ebcb95399594fbc53 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4089451 Commit-Queue: Jes Klinke <jbk@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Jes Klinke <jbk@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: Increase timeout of usb_retimer_fw_updateJeremy Bettis2022-12-091-0/+1
| | | | | | | | | | | | | | | | | | | | The test external/ec_dir/zephyr/test/drivers/drivers.usb_retimer_fw_update is timing out on gitlab: See https://gitlab.com/zephyr-ec/ec/-/jobs/3452224187 Increase test timeout to 2 minutes. BRANCH=None BUG=None TEST=CQ Change-Id: I7e6befa6fb11469b1110deedb624b4a787edf133 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4093116 Reviewed-by: Abe Levkoy <alevkoy@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Tested-by: Jeremy Bettis <jbettis@chromium.org>
* chip/stm32: Add register declarations for OctoSPIJes B. Klinke2022-12-091-0/+291
| | | | | | | | | | | | | | | | The STM32L5 series of chips have a SPI controller capable of using up to eight data lines for fast transfers, primarily with SPI flash chips. This CL adds declarations of register addresses and bits. BUG=b:192262089 TEST=Flashed OpenTitan FPGA via HyperDebug OctoSPI Change-Id: I33d16ba493756cf338353a5f0952be97070720d6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4087327 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Tested-by: Jes Klinke <jbk@chromium.org> Commit-Queue: Jes Klinke <jbk@chromium.org>
* zephyr/test: Add throttle_ap testRobert Zieba2022-12-0910-1/+245
| | | | | | | | | | | | | | Add throttle_ap test since no test currently exists. BRANCH=none BUG=b:27768313 TEST=Ran tests Change-Id: I4a0ca47b4a3d7077573ed07bbf7d9ffa4bd49edf Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4064420 Reviewed-by: Diana Z <dzigterman@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* skyrim: Enable AP throttling interruptRobert Zieba2022-12-094-1/+39
| | | | | | | | | | | | | | | | This commit enables detection of external throttling events and logs those events to the console. BRANCH=none BUG=b:227768313 TEST=Ran on skyrim device, verified that throttling interrupt handler is called correctly LOW_COVERAGE_REASON=Skyrim tests not in yet Signed-off-by: Robert Zieba <robertzieba@google.com> Change-Id: If38589d16da7a53ab7e992668cb1c9706d965b3e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3975226 Reviewed-by: Diana Z <dzigterman@chromium.org>
* driver/isl9241: Add CONTROL3 mutexRobert Zieba2022-12-091-19/+44
| | | | | | | | | | | | | | | | | | The CONTROL3 register does not currently seem to be accessed from different threads. However, the recently added PROCHOT info dumping function could access/modify this register from a separate thread. This commit protects CONTROL3 with a mutex. BRANCH=none BUG=b:227768313 TEST=Ran 1000 cycles of charger factory test LOW_COVERAGE_REASON=No isl9241 emulator Change-Id: I9e4b446c7466f28d7d6eb504d9a5606ae158b287 Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4064419 Reviewed-by: Diana Z <dzigterman@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* driver/charger/isl9241: Add function to help debug PROCHOTRobert Zieba2022-12-092-0/+188
| | | | | | | | | | | | | | | | | | This commit adds the `isl9241_dump_prochot_status` function to dump out prochot information to help debug what caused the prochot. This function is behind a config to help conserve flash space as it includes a fair amount of strings. BRANCH=none BUG=b:227768313 TEST=Verified that `isl9241_dump_prochot_status` works LOW_COVERAGE_REASON=No isl9241 emulator yet Change-Id: Ib6202f8264bbf3b98a71f7f05c2444512a7d1960 Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3994441 Reviewed-by: Diana Z <dzigterman@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* charger: Add prochot printing functionRobert Zieba2022-12-094-0/+27
| | | | | | | | | | | | | | | | Add `print_charger_prochot` function and corresponding entry to charger driver struct to accommodate calling this functionality in a generic way. BRANCH=none BUG=b:227768313 TEST=Builds LOW_COVERAGE_REASON=No generic CrOS EC charger emulator Change-Id: Iabc9b33de55436b2bbdd9c372738d7356536c874 Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4087540 Reviewed-by: Diana Z <dzigterman@chromium.org>
* power/amd_x86: Add support for external prochot interruptsRobert Zieba2022-12-091-2/+23
| | | | | | | | | | | | | | | This commit adds support for external prochot interrupts to AMD specific x86 power code. BRANCH=none BUG=b:227768313 TEST=Ran on skyrim device LOW_COVERAGE_REASON=No AMD x86 power emulator Change-Id: I9154734c102dd9117f13004d9bce6e3f53409c5d Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3975225 Reviewed-by: Diana Z <dzigterman@chromium.org>
* common/throttle_ap: Add support for single pin throttling/detectionRobert Zieba2022-12-095-14/+53
| | | | | | | | | | | | | | | | | This commit adds support for throttling and detection of throttling triggered externally to the EC on a single pin as well as adding support for a custom callback function when the interrupt is triggered. BRANCH=none BUG=b:227768313 TEST=Builds LOW_COVERAGE_REASON=Coverage added in chromium:4064420 Change-Id: Ic8f7d6febe8698ad783edfbb7d37daa2b0c27e5d Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3975224 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Diana Z <dzigterman@chromium.org>
* Zephyr: mchp: Support mtlrvpp_mchp project on Meteorlake RVPmartin yan2022-12-0910-1/+831
| | | | | | | | | | | | | | | | | | | | | | | | | | | Added in support for the Meteorlake RVP code base. BUG=none BRANCH=none TEST=zmake build mtlrvpp_mchp, verify following functions on MTL RVP -- UART console; -- Bring up MTL RVP to S0 state from G3; -- Battery and charger via I2C interface; -- Flash access - flashread / flashwrite / flasherase; -- Hash computation; -- ADC & temps; -- Reboot; -- sysjump RO / RW; -- crash and panicinfo; -- Type C ports: interrupts and protocol via Google Charger; -- Get board ID via PCA95xx; Signed-off-by: martin yan <martin.yan@microchip.corp-partner.google.com> Change-Id: Ibe2e223a5fdfe9f06b1c212b32cb853480f38baf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3887301 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Code-Coverage: Tristan Honscheid <honscheid@google.com>
* corsola: use ite_led.dtsiEric Yilun Lin2022-12-097-264/+257
| | | | | | | | | | | | | | | | | | To avoid duplication, and follow the new project organization rule. BUG=b:254097516 TEST=zmake compare-builds tentacruel magikarp krabby TEST=./twister -T ./zephyr/test BRANCH=none Change-Id: Icdeaeaf2d5587c632cbdcdf30b66881ca75d55ab Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4087966 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Auto-Submit: Eric Yilun Lin <yllin@google.com> Tested-by: Eric Yilun Lin <yllin@google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Eric Yilun Lin <yllin@google.com>
* geralt: change chip variant to cxDino Li2022-12-091-1/+1
| | | | | | | | | | | | | | | | | | | The change applies configurations of cx version to this board. BRANCH=none BUG=none TEST=build geralt. Apply the same variant configuration to build tentacruel FW image, and verify the image on reworked tentacruel: - boot to kernel. - panic info can be saved in the last 256-byte block of RAM (0x8011ff00 ~ 0x8011ffff). Signed-off-by: Dino Li <Dino.Li@ite.com.tw> Change-Id: I5b3b363801dcbeb721392b5cac19b9ba6335c41e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4091903 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* Frostflow : Add fingerprint and stylus FW_configridden_liu2022-12-091-0/+47
| | | | | | | | | | | | | | | | FW_CONFIG field to enable fingerprint or not FW_CONFIG field to enable stylus or not BUG=b:258153920 BRANCH=none TEST=zmake build frostflow Signed-off-by: ridden_liu <ridden_liu@compal.corp-partner.google.com> Change-Id: I7e34598c53bb550668df785f29bb6b5b2f4bf95d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4085684 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Diana Z <dzigterman@chromium.org> Reviewed-by: SamSP Liu <samsp_liu2@compal.corp-partner.google.com>
* chips/stm32/usb_spi: Allow boards to handle non-standard SPI bussesJes B. Klinke2022-12-092-1/+27
| | | | | | | | | | | | | | | | | | The STM32L5 series has a special "OctoSPI" controller, which differs from the standard spi controllers in capabilities and means of programming. Rather than adding drivers for OctoSPI to the common EC code, this change allows special-purpose drivers for HyperDebug to be implemented in its board directory. BUG=b:192262089 TEST=Observed HyperDebug forwarding to OctoSPI controller Change-Id: Ia31eefcb53b08cc23aa0f14a8899bc227a88ea0c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4077429 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Tested-by: Jes Klinke <jbk@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Jes Klinke <jbk@chromium.org>
* chips/stm32/usb_spi: Forwarding to multiple spi devicesJes B. Klinke2022-12-098-13/+43
| | | | | | | | | | | | | | | | For devices similar to Servo Micro, in case of multiple entries in spi_devices, this change allows the USB host to request which device its transaction requests are to be forwarded to. BUG=b:192262089 TEST=HyperDebug board forwards to two SPI busses Change-Id: Ic94e66a8d7f5502c3016a26a1beb24236b3c4893 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4077428 Commit-Queue: Jes Klinke <jbk@chromium.org> Tested-by: Jes Klinke <jbk@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* pujjo: declare unused GPIOsarthur.lin2022-12-091-0/+9
| | | | | | | | | | | | | | Declare unused GPIOs. BUG=b:242622089 BRANCH=none TEST=zmake build pujjo Change-Id: Ia198231db38976e26de110f29be09e4f9c0c1b1a Signed-off-by: arthur.lin <arthur.lin@lcfc.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4086479 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Andrew McRae <amcrae@google.com>
* zephyr: drivers/cros_shi_it8xxx2: Enable sleep mask featureTim Lin2022-12-091-3/+38
| | | | | | | | | | | | | | | | | | | When SHI communicates with AP, disable sleep mode to avoid enter deep doze. Otherwise enable sleep mode. LOW_COVERAGE_REASON=no unit test for zephyr/driver/cros_shi BUG=b:185176098 BRANCH=none TEST=zmake build tentacruel --clobber TEST=Type command 'apshutdown' and then 'sleepmask' on EC console to check bit6 is cleared to 0. TEST=To check system can enter deep sleep of power policy. Change-Id: Ia48975efb96f4f3fd14c988fda659bc2f2dd7760 Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4075328 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* usb_prl: support logging to a ring bufferPeter Marheine2022-12-094-0/+207
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows PRL state logging to be displayed asynchronously, with minimal effect on performance during operation and making it more tractable to debug timing-sensitive behavior. Events are logged unconditionally if logging is enabled, and displayed with the `prllog` console command. Output looks like this: 5489349 C0 PRL_TX_DISCARD_MESSAGE PRL_TX Set 0x4 : PRL_FLAGS_WAIT_SINK_OK | 5489440 C0 PRL_TX_PHY_LAYER_RESET PRL_TX Set 0x4 : PRL_FLAGS_WAIT_SINK_OK | 5489532 C0 PRL_TX_WAIT_FOR_MESSAGE_REQUEST PRL_TX Set 0x4 : PRL_FLAGS_WAIT_SINK_OK | Fields are the event timestamp (in microseconds), followed by the port and state name with the state machine flags on the rest of the line. BUG=b:229692652 TEST=prllog on nereid console prints correct-looking states when CONFIG_PLATFORM_EC_USB_PD_PRL_EVENT_LOG=y BRANCH=none Change-Id: I5ba9f0ee65613e5889b606484a62fe60ebe0b2b8 Signed-off-by: Peter Marheine <pmarheine@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4078586 Reviewed-by: Diana Z <dzigterman@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Andrew McRae <amcrae@google.com>
* xivur: Remove motionsense and tablet functionjeffrey2022-12-098-285/+19
| | | | | | | | | | | | | | | | | | Depend on design, xivur is clamshell only. 1.remove motion sensor 2.remove tablet function 3.remove volume button BUG=b:261661895 TEST=zmake build xivur --clobber BRANCH=nissa Change-Id: Ic0221042fe2319a3bec3acbb75516ad2cf5fdec9 Signed-off-by: jeffrey <jeffrey_lin@pegatron.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4080135 Reviewed-by: Jacky Wang <jacky5_wang@pegatron.corp-partner.google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Andrew McRae <amcrae@google.com>
* include/util: Remove swap macroTom Hughes2022-12-092-33/+0
| | | | | | | | | | | | | | | The swap macro is not used anywhere and it conflicts with std::swap in C++. BRANCH=none BUG=b:260234709 TEST=make buildall Change-Id: Ic2166265ed98c9c72b2c8d4f04a8209a788f9ee3 Signed-off-by: Tom Hughes <tomhughes@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4089950 Reviewed-by: Andrea Grandi <agrandi@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: it8xxx2: Adjust the order of include header filesTim Lin2022-12-092-5/+2
| | | | | | | | | | | | | | | | | | | | Adjust the order of include header files. BRANCH=none BUG=none TEST=zmake build it8xxx2_evb --clobber TEST=Change zephyr_board(project/it8xxx2_evb/BUILD.py) to the following chip version: zephyr_board="it81202bx" zephyr_board="it81302bx" zephyr_board="it81202cx" zephyr_board="it81302cx" Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Change-Id: Ie41997783d50d0e6e45b99e4808d6f3a7120dd21 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3841541 Reviewed-by: Keith Short <keithshort@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* evoker: Add thermistor to read charger temperatureYu-An Chen2022-12-083-1/+44
| | | | | | | | | | | | | | | Add a thermistor to read charger temperature BUG=b:259508078 BRANCH=none TEST=check sensor working by console command temps Change-Id: I17350aeb742e432c4701df40bcfa4ab508026d41 Signed-off-by: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4087967 Reviewed-by: Sam Hurst <shurst@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Commit-Queue: Sam Hurst <shurst@google.com>
* twister: Handle testsuite timeouts as failuresAl Semjonovs2022-12-081-0/+3
| | | | | | | | | | | | | | | | When testsuite timeouts occur, tests were being marked as skipped. Timeouts should be reported as failures using the ResultDB ABORT status. BUG=None BRANCH=NONE TEST=./twister -T zephyr/test Change-Id: If690f6345cd3e41bf128b89d9b3d91a635fc5ed8 Signed-off-by: Al Semjonovs <asemjonovs@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4086965 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* zephyr: cmake: Allow passing in a variable COREBOOT_SDK_ROOTJack Rosenthal2022-12-081-1/+5
| | | | | | | | | | | | | | | | | | | | | Allow coreboot-sdk to exist somewhere else than /opt/coreboot-sdk (where it is in the chroot) by passing in a path as a cmake variable. BUG=b:259306777 BRANCH=none TEST=Locate coreboot-sdk at /tmp/coreboot-sdk Build with: zmake configure -t coreboot-sdk \ -D COREBOOT_SDK_ROOT=/tmp/coreboot-sdk \ brya Change-Id: I5cb6b1fd35cb52e23827624e205b8680431b4573 Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4086978 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: zmake: Allow passing cmake definitions direcly in on the CLIJack Rosenthal2022-12-085-13/+39
| | | | | | | | | | | | | | | | This adds a new configure argument (-D / --cmake-define), which replicates the -D flag to cmake. This will allow bazel to directly pass in toolchain paths to cmake. BUG=b:259306777 BRANCH=none TEST=unit tests pass Change-Id: Ie3906a9eb7cb863abe6047cc28c12ad307763afa Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4086977 Reviewed-by: Jeremy Bettis <jbettis@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: leds: select PLATFORM_EC_LED_DT automaticallyFabio Baltieri2022-12-0815-38/+2
| | | | | | | | | | | | | | | | Select PLATFORM_EC_LED_DT automatically when the LED policy node is find in the devicetree. Drop the remaining LED DT options from the config files. BRANCH=none BUG=none TEST=cq dry run Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: Ia406abed7e9ca36a2952c59d34daa15a9db76c0e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4054627 Reviewed-by: Yuval Peress <peress@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* geralt: initial ECTing Shen2022-12-0826-0/+1885
| | | | | | | | | | | | | | | BUG=b:251747125 TEST=zmake BRANCH=none LOW_COVERAGE_REASON=initial bringup Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: If40ef9ccdfdea650668b190a3e603d861299116c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4042170 Commit-Queue: Ting Shen <phoenixshen@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Eric Yilun Lin <yllin@google.com> Tested-by: Ting Shen <phoenixshen@chromium.org>
* twister: Fix preupload warningAl Semjonovs2022-12-081-4/+4
| | | | | | | | | | | | | | | | Resolve preupload failure check BUG=None BRANCH=NONE TEST=./twister -T zephyr/test Change-Id: I4d94dcd5a42637891ab9a989fda0272e732bb234 Signed-off-by: Al Semjonovs <asemjonovs@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4083110 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Commit-Queue: Yuval Peress <peress@google.com> Reviewed-by: Yuval Peress <peress@google.com> Tested-by: Yuval Peress <peress@google.com>
* Winterhold: Add fw_config to support two charger ICsjohnwc_yeh2022-12-084-0/+60
| | | | | | | | | | | | | | | | | | Use fw_config to separate ISL9238 and ISL9538C driver. LOW_COVERAGE_REASON=Skyrim board tests not created yet: b/247151116 BRANCH=None BUG=b:255199389; b:257851736 TEST=zmake build winterhold; deploy to a board and confirm correct chip is reported for each CBI FW_CONFIG option Signed-off-by: johnwc_yeh <johnwc_yeh@compal.corp-partner.google.com> Change-Id: I7cb82d788d656b8eff9f6f39fee0975d68188ebe Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4040805 Code-Coverage: Diana Z <dzigterman@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com> Reviewed-by: Diana Z <dzigterman@chromium.org>
* Winterhold: Update battery support mfgaccjohnwc_yeh2022-12-084-4/+12
| | | | | | | | | | | | | | | | | | | | | Write command by the SMB block protocol. Mfgacc_support will write OperationStatus(0x0054) to ALT_MANUFACTURER_ACCESS(0x44), and then read back from ALT_MANUFACTURER_ACCESS(0x44). This CL add mfgacc_support. BUG=b:255517119 BRANCH=none TEST=Winterhold can boot up in DC only by Reflash+PWRBTN LOW_COVERAGE_REASON=Skyrim board tests not created yet: b/247151116 Signed-off-by: johnwc_yeh <johnwc_yeh@compal.corp-partner.google.com> Change-Id: Ic2019b02eaf897a3cbeb0ac4606ee07ab8b5b583 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3980935 Reviewed-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Diana Z <dzigterman@chromium.org>
* zephyr: add more watchdog pre-warning messageRuibin Chang2022-12-081-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When watchdog pre-warning interrupt is fired, we print mepc and thread name information for debug. LOW_COVERAGE_REASON=chip-specific branches BUG=b:257861373 BRANCH=none TEST=on nereid, console cmd "waitms 2600" WDT pre-warning MEPC:0x800195e0 THREAD_NAME:PD_C0 WDT pre-warning MEPC:0x80034ca2 THREAD_NAME:PD_C0 WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x8003515a THREAD_NAME:CHARGER WDT pre-warning MEPC:0x80038080 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x8003a47a THREAD_NAME:KEYSCAN WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x80038cc8 THREAD_NAME:CHARGER WDT pre-warning MEPC:0x80039474 THREAD_NAME:CHARGER WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x80038080 THREAD_NAME:shell_uart WDT pre-warning MEPC:0x80038086 THREAD_NAME:shell_uart *** Booting Zephyr OS build v2.7.99-16068-gda4e077ab56e *** Change-Id: Ie4fe2aa4f4f6dde2efeb332166a9272b1c362855 Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4054759 Reviewed-by: Keith Short <keithshort@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Peter Marheine <pmarheine@chromium.org>
* pujjo: Charger limit for 65w adapter.tony.tang2022-12-081-0/+1
| | | | | | | | | | | | | | Charger limit for 65w adapter. BUG=b:261673266 BRANCH=none TEST=zmake build pujjo Change-Id: If4c5e9ef0b48cf079505594e0d6cdb99425d756b Signed-off-by: tony.tang <tony.tang@lcfc.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4080138 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Peter Marheine <pmarheine@chromium.org>
* battery: Send manufacturer access by the SMB block protocoljohnwc_yeh2022-12-086-3/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MAC commands are sent via AlternateManufacturerAccess() by the SMB block protocol. The result is returned on AlternateManufacturerAccess() via an SMB block read. Ex: Read OperationStatus(0x0054) via AlternateManufacturerAccess(). 1. Send OperationStatus() to AlternateManufacturerAccess() a. SMB block write. Command = 0x44. Data sent = 54 00 (data must be sent in little endian). 2. Read the result from AlternateManufacturerAccess(). a. SMB block read. Command = 0x44. Data read = 54 00 07 03 40 40 b. The first 2 bytes 54 00, is the MAC command. c. The second 2 bytes 07 03, is the Operation Status returning in little endian, that LSB(bit15-bit0) is 0x0307. LOW_COVERAGE_REASON=support write block protocol for mfgacc_support BUG=b:255517119 BRANCH=none TEST=ectool i2cxfer 2 0x0b 0 0x44 0x02 0x54 0x00 Write successful. ectool i2cxfer 2 0x0b 7 0x44 Read bytes: 0x6 0x54 00 0x7 0x3 0x40 0x40 Signed-off-by: johnwc_yeh <johnwc_yeh@compal.corp-partner.google.com> Change-Id: I3f247e47506d04e8fc307fc5274492196947c943 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3980695 Reviewed-by: Diana Z <dzigterman@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com>