summaryrefslogtreecommitdiff
path: root/zephyr/Kconfig
Commit message (Collapse)AuthorAgeFilesLines
* zephyr/Kconfig: add detachable base supportTing Shen2023-03-101-0/+1
| | | | | | | | | | | | | BUG=b:272439221 TEST=enable these config on geralt and build ec BRANCH=none Change-Id: I2acbd499ff26ef38ea8e0919cab2e95f8a5450b4 Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4327718 Commit-Queue: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@google.com> Tested-by: Ting Shen <phoenixshen@chromium.org>
* zephyr: enable elan touchpad driverTing Shen2023-03-031-0/+1
| | | | | | | | | | | | | | | | This CL enables the Elan touchpad driver and touchpad task on zephyr EC, with minimal changes to make the code compilable. BUG=b:269989432 TEST=Add a touchpad node on krabby and verify it buildable. BRANCH=none Change-Id: I4b723ed2230f54d3dc597cdc30605fcfa4d4e0a3 Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4149991 Tested-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@google.com>
* power/amd_x86: Add support for STB dumpingRobert Zieba2023-02-161-0/+11
| | | | | | | | | | | | | | | | Skyrim supports dumping the contents of the SoCs smart-trace buffer when triggered externally. The contents of the STB can be useful in debugging S0i3 suspend failures. Add support for triggering an STB dump when the SoC hangs during S0i3 entry/exit. BRANCH=none BUG=b:246770811 TEST=Ran on skyrim DUT Change-Id: Ie18c6072a77f6dd306a46d7f76bd345b4f9e75a7 Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4220248 Reviewed-by: Diana Z <dzigterman@chromium.org>
* zephyr/app/ec/ec_app_main: Add support for disabling sleep from bootRobert Zieba2023-01-271-0/+12
| | | | | | | | | | | | | | | Legacy EC code on some platforms disables sleep for the first 15 seconds following boot by default. Add the same functionality to zephyr. BRANCH=none BUG=b:249314949 TEST=Built and ran on skyrim device, verified sleep disabled Change-Id: I9c3f868d6d5a4d55d14b341bc1c4b304edd5be88 Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4179368 Reviewed-by: Diana Z <dzigterman@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* zephyr:drivers: power button driverAl Semjonovs2023-01-171-1/+1
| | | | | | | | | | | | | | Add power button driver using Zephyr gpio-keys APIs BUG=b:234728861 BRANCH=NONE TEST=./twister -T zephyr/test Change-Id: I8399f7f0689657b6444a300021161cb8a89c50db Signed-off-by: Al Semjonovs <asemjonovs@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4139709 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* zephyr: shim: shim SHA256 API to adapot HW accelerator driverJun Lin2022-12-291-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | Wrap Zephyr crypto_sha* driver APIs to meet the interface of Cros-EC SHA256 APIs. This CL has dependency on PR: https://github.com/zephyrproject-rtos/zephyr/pull/53031 BRANCH=none BUG=b:155771688 TEST=keep the same RW image; flash different RO images with/without hardware accelerator; verify the RW hash value is the same in the console message. TEST=in the test CL; move test patterns in test/sha256.c to zephyr/program/npcx_evb/npcx9/src/test_sha256.c; pass all test patterns. Signed-off-by: Jun Lin <CHLin56@nuvoton.com> Change-Id: I3979c088933d2caa09576f4aacc14d2ffb6f73f6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4116105 Reviewed-by: Fabio Baltieri <fabiobaltieri@google.com> Tested-by: CH Lin <chlin56@nuvoton.com> Commit-Queue: CH Lin <chlin56@nuvoton.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: mkbp: split the node compatible in twoFabio Baltieri2022-12-231-2/+4
| | | | | | | | | | | | | | | | | Split the mkbp node binding in two nodes, normal and host. This adds the automatic Kconfig entries that can be used to control the option and simplify few macros. BRANCH=none BUG=none TEST=cq dry run TEST=zmake compare-builds -a Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: I8a4825e616557a981a700c13517e76a3fd86ea07 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4117086 Reviewed-by: Wai-Hong Tam <waihong@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: config_chip: Add the config of CONFIG_PLATFORM_EC_LOW_POWER_S0Tim Lin2022-12-121-0/+5
| | | | | | | | | | | | | | | 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>
* common/throttle_ap: Add support for single pin throttling/detectionRobert Zieba2022-12-091-5/+24
| | | | | | | | | | | | | | | | | 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>
* ec: Support logging system boot time infoRajesh Kumar2022-12-071-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL add support logging system boot time and hostcommand to get boot time info. EC logs elapsed time (in micro second) info since boot for different signal events,that can be used to calculate system boot time in cold boot and warm boot scenarios. Below are the events when EC logs time info ARAIL EC turns on A-RAIL RSMRST EC releases RSMRST# ESPIRST ESPIRST received PLTRST_LOW PLTRST# asserted PLTRST_HIGH PLTRST# deasserted EC_CUR_TIME EC current time cnt increments on every warm reboot and reset to 0 on cold reboot BUG=b:249163956 BRANCH=none TEST='ectool boottime' AP console command is used to fetch data 'reboot' on AP console to trigger warm reboot 'apshutdown' on EC console to trigger cold reboot Signed-off-by: Rajesh Kumar <rajesh3.kumar@intel.com> Change-Id: I47abe3f8a0b7ab43f2af11bf8387c006ba383020 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4081566 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Tested-by: Li-Yu Yu <aaronyu@google.com> Reviewed-by: Boris Mittelberg <bmbm@google.com>
* Revert "ec: Support logging system boot time info"Piotr Pawliczek2022-12-031-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c8325ba18b9f4d5b1f3f3bc739e83d8f591308cf. Reason for revert: broke at least 9 cq builds (https://ci.chromium.org/ui/p/chromeos/builders/cq/cq-orchestrator/b8795833246203447793/overview) Original change's description: > ec: Support logging system boot time info > > This CL add support logging system boot time and hostcommand to get > boot time info. > EC logs elapsed time (in micro second) info since boot for different > signal events,that can be used to calculate system boot time in cold > boot and warm boot scenarios. > > Below are the events when EC logs time info > > ARAIL EC turns on A-RAIL > RSMRST EC releases RSMRST# > ESPIRST ESPIRST received > PLTRST_LOW PLTRST# asserted > PLTRST_HIGH PLTRST# deasserted > EC_CUR_TIME EC current time > cnt increments on every warm reboot and reset to 0 on > cold reboot > > BUG=b:249163956 > BRANCH=none > TEST='ectool boottime' AP console command is used to fetch data > 'reboot' on AP console to trigger warm reboot > 'apshutdown' on EC console to trigger cold reboot > > Signed-off-by: Rajesh Kumar <rajesh3.kumar@intel.com> > Change-Id: I15fedbde252e0452270ef0e3fd4391bf624169f1 > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3794612 > Reviewed-by: Boris Mittelberg <bmbm@google.com> > Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Bug: b:249163956 Change-Id: Ie83026c4a3a38c3dd24522901233f06e03430a54 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4077335 Reviewed-by: Jonathon Murphy <jpmurphy@google.com> Commit-Queue: Piotr Pawliczek <pawliczek@chromium.org> Tested-by: Piotr Pawliczek <pawliczek@chromium.org>
* ec: Support logging system boot time infoRajesh Kumar2022-12-021-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL add support logging system boot time and hostcommand to get boot time info. EC logs elapsed time (in micro second) info since boot for different signal events,that can be used to calculate system boot time in cold boot and warm boot scenarios. Below are the events when EC logs time info ARAIL EC turns on A-RAIL RSMRST EC releases RSMRST# ESPIRST ESPIRST received PLTRST_LOW PLTRST# asserted PLTRST_HIGH PLTRST# deasserted EC_CUR_TIME EC current time cnt increments on every warm reboot and reset to 0 on cold reboot BUG=b:249163956 BRANCH=none TEST='ectool boottime' AP console command is used to fetch data 'reboot' on AP console to trigger warm reboot 'apshutdown' on EC console to trigger cold reboot Signed-off-by: Rajesh Kumar <rajesh3.kumar@intel.com> Change-Id: I15fedbde252e0452270ef0e3fd4391bf624169f1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3794612 Reviewed-by: Boris Mittelberg <bmbm@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: Remove CONFIG_PLATFORM_EC_WATCHDOGMark Hasemeyer2022-12-011-17/+0
| | | | | | | | | | | | | | | | | | | | Remove CONFIG_PLATFORM_EC_WATCHDOG. Use Zephyr's CONFIG_WATCHDOG option instead. BUG=b:217926701 BRANCH=none TEST=./twister -T zephyr/test/ TEST=zmake compare-builds -a TEST=emerge-drallion chromeos-ish && make BOARD=drallion_ish LOW_COVERAGE_REASON=watchdog_init test not yet implemented Signed-off-by: Mark Hasemeyer <markhas@google.com> Cq-Depend: chromium:4067356 Change-Id: I2b7578f6918cb3b0c4317492662ba3fc949f43e0 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4064392 Reviewed-by: Keith Short <keithshort@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Aaron Massey <aaronmassey@google.com>
* zephyr: Remove CONFIG_PLATFORM_EC_FPUMark Hasemeyer2022-11-291-10/+0
| | | | | | | | | | | | | | | Remove CONFIG_PLATFORM_EC_FPU. Use Zephyr's CONFIG_FPU option instead. BUG=b:217926701 BRANCH=none TEST=twister -T zephyr/test/ TEST=zmake compare-builds -a Signed-off-by: Mark Hasemeyer <markhas@google.com> Change-Id: Icd0fdbc440f0dd574b75bf5ca0f1750f1e858b40 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4049382 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* Revert "zephyr: Remove CONFIG_PLATFORM_EC_WATCHDOG"Keith Short2022-11-241-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e04250319d222ef8505d9111ba4f03eddcaf5521. Reason for revert: Breaks drallion builds. b:260270232 Original change's description: > zephyr: Remove CONFIG_PLATFORM_EC_WATCHDOG > > Remove CONFIG_PLATFORM_EC_WATCHDOG. Use Zephyr's CONFIG_WATCHDOG option > instead. > > BUG=b:217926701 > BRANCH=none > TEST=twister -T zephyr/test/ > TEST=zmake compare-builds -a > LOW_COVERAGE_REASON=watchdog_init test not yet implemented > > Signed-off-by: Mark Hasemeyer <markhas@google.com> > > Change-Id: I7d5fedfc72ed886f94a94df9d3db14224bc6fb75 > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4050634 > Reviewed-by: Keith Short <keithshort@chromium.org> > Reviewed-by: Aaron Massey <aaronmassey@google.com> > Tested-by: Mark Hasemeyer <markhas@google.com> > Commit-Queue: Mark Hasemeyer <markhas@google.com> Bug: b:217926701 Change-Id: I01471b9544cc0792427b3ca6761fb07ee0432dc6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4053682 Commit-Queue: Piotr Pawliczek <pawliczek@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Piotr Pawliczek <pawliczek@chromium.org> Tested-by: Keith Short <keithshort@chromium.org> Owners-Override: Piotr Pawliczek <pawliczek@chromium.org>
* zephyr: Remove CONFIG_PLATFORM_EC_WATCHDOGMark Hasemeyer2022-11-231-17/+0
| | | | | | | | | | | | | | | | | | | | Remove CONFIG_PLATFORM_EC_WATCHDOG. Use Zephyr's CONFIG_WATCHDOG option instead. BUG=b:217926701 BRANCH=none TEST=twister -T zephyr/test/ TEST=zmake compare-builds -a LOW_COVERAGE_REASON=watchdog_init test not yet implemented Signed-off-by: Mark Hasemeyer <markhas@google.com> Change-Id: I7d5fedfc72ed886f94a94df9d3db14224bc6fb75 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4050634 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Aaron Massey <aaronmassey@google.com> Tested-by: Mark Hasemeyer <markhas@google.com> Commit-Queue: Mark Hasemeyer <markhas@google.com>
* Kconfig: fix typoTing Shen2022-11-221-1/+1
| | | | | | | | | | | | | | | | | | SHA25 -> SHA256 BUG=none TEST=zmake build krabby, no warning message about unsatisfied dependencies BRANCH=none Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: I954f29f291d3a9a7ea5aeb5a7bdcdbdc6226d229 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4045297 Auto-Submit: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Eric Yilun Lin <yllin@google.com> Reviewed-by: Eric Yilun Lin <yllin@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: config: select PWM automaticallyFabio Baltieri2022-11-211-0/+1
| | | | | | | | | | | | | | | | | | | Add the missing dependency to the PWM subsystem for the drivers that depends on PWM. This is done using the select Kconfig directive, so that the subsystem gets enabled explicitly as soon as the first of these gets defined in the devicetree. Drop a bunch of now unnecessary CONFIG_PWM=y settings. BRANCH=none BUG=none TEST=cq dry run Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: I55a78d6324f753fe5fe13a0b81b5e129626621af Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4031191 Reviewed-by: Aaron Massey <aaronmassey@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: switchcap: rename binding, clean up codeFabio Baltieri2022-11-181-12/+11
| | | | | | | | | | | | | | | | | | | | | | Various cleanups on the switchcap code: - rename the bindings to add the vendor prefix - split the Kconfig option for the common code (used in project specific drivers) and the generic one (devicetree based) - drop the choice and use the compatible to select the option automatically instead - cleanup the code to remove the now unnecessary guards - use DT_INST macros instead of DT_PATH so we don't depends on the node path anymore BRANCH=none BUG=none TEST=cq dry run Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: I77e790c0b7b0d947e4eafed64b0ace556a22c034 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4028145 Reviewed-by: Abe Levkoy <alevkoy@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: shim: use a Kconfig option for building power.cFabio Baltieri2022-11-091-0/+8
| | | | | | | | | | | | | | | | | | Use an automatic Kconfig option to include power.c in the build, rather than including it unconditionally. Removes some precompiler guards from the source file and also move some macro that are only used in power.c out of the header file. BRANCH=none BUG=none TEST=cq dry run Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: I021ec1384ef374f1c1dc841ea861e848ee9e65f1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4003277 Reviewed-by: Abe Levkoy <alevkoy@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: gpio_id: use nodelabels, add a build optionFabio Baltieri2022-11-091-0/+10
| | | | | | | | | | | | | | | | | | | | Few minor cleanups around the gpio_id.c file: - stop using DT_PATH, use a known nodelabel instead, makes it easier to define bits in dts files without relying on a known path - use an explicit Kconfig automatic option instead of always having the file in the build and macro'ing out if not needed - add a build warning if neither sku or board nodes are found, should catch misconfigured nodes at build time BRANCH=none BUG=none TEST=cq dry run Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: Iddaf737a2a2efd647ffd303d3f3692e90a49318b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4003281 Reviewed-by: Aaron Massey <aaronmassey@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: ap_pwrseq: Add Power Signals EmulatorBernardo Perez Priego2022-11-041-0/+1
| | | | | | | | | | | | | | | | | | | Power Signal Emulator provides an engine in which a given set of defined power signals connection is instantiated to simulate platform behavior. This emulator is created to supports executing AP Power Sequence test by configuring power signals behavior using devicetree. BUG=b:222933615 TEST=zmake test test-ap_power BRANCH=None Signed-off-by: Bernardo Perez Priego <bernardo.perez.priego@intel.com> Change-Id: If1b1af2d287e23fe73e77986356bd3c50d56f148 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3684435 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Andrew McRae <amcrae@google.com>
* zephyr: Kconfig: Add extpower debouncemike2022-10-311-0/+8
| | | | | | | | | | | | | | Porting the config CONFIG_EXTPOWER_DEBOUNCE_MS to Zephyr BUG=b:255908917 BRANCH=none TEST=zmake build steelix Signed-off-by: mike <mike5@huaqin.corp-partner.google.com> Change-Id: Ic55bdc8cef4f5e473b3e9c534a741788ddb1b18a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3990093 Reviewed-by: wen zhang <zhangwen6@huaqin.corp-partner.google.com> Reviewed-by: Eric Yilun Lin <yllin@google.com>
* button: expose the button debounce time for the customizationZhuohao Lee2022-10-281-0/+6
| | | | | | | | | | | | | | | | In order to let the project customizing its button debounce time, we expose the button debounce time and the project could use CONFIG_BUTTON_DEBOUNCE to configure it. BUG=b:255963865 BRANCH=None TEST=make buildall Change-Id: I4f215a682c4c4e210e16dde187ae06e10f5e9576 Signed-off-by: Zhuohao Lee <zhuohao@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3990091 Reviewed-by: caveh jalali <caveh@chromium.org> Commit-Queue: Randy Wang <ifanw@google.com>
* sha256: port CONFIG_SHA256_UNROLLEDEric Yilun Lin2022-10-281-0/+8
| | | | | | | | | | | | | | | | Port CONFIG_SHA256_UNROLLED to zephyr BUG=b:239378639 TEST=vboot hash imrpove BRANCH=none Change-Id: I277c931130bc1f1118425792f167ec589e90a964 Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3950275 Tested-by: Eric Yilun Lin <yllin@google.com> Auto-Submit: Eric Yilun Lin <yllin@google.com> Commit-Queue: Sung-Chi Li <lschyi@chromium.org> Reviewed-by: Sung-Chi Li <lschyi@chromium.org>
* Update license boilerplate text in source code filesMike Frysinger2022-09-121-1/+1
| | | | | | | | | | | | | | | Normally we don't do this, but enough changes have accumulated that we're doing a tree-wide one-off update of the name & style. BRANCH=none BUG=chromium:1098010 TEST=`repo upload` works Change-Id: Icd3a1723c20595356af83d190b2c6a9078b3013b Signed-off-by: Mike Frysinger <vapier@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3891203 Reviewed-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Move the fake system functions into their own fileSimon Glass2022-09-101-0/+1
| | | | | | | | | | | | | | | | | | Move this out of the flash emulator so we can add to it and use it from other tests. Put it in a new 'fake' subdirectory, since we don't seem to have of this sort of thing yet. BUG=b:243982872 BRANCH=none TEST=./twister -c -T zephyr/test/drivers/ Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: Ia4cd3b10e2f38dbacadf0d20198be8f9bbc026e3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3883773 Reviewed-by: Aaron Massey <aaronmassey@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: Mock power sequence driverAl Semjonovs2022-08-251-0/+1
| | | | | | | | | | | | | | | Mock power sequence handling BUG=None BRANCH=NONE TEST=./twister -T zephyr/test Signed-off-by: Al Semjonovs <asemjonovs@google.com> Change-Id: I8ec3198abfb069501bed2c5aa661e31f780e2c34 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3833564 Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Yuval Peress <peress@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: Delete CONFIG_PLATFORM_EC_MPUKeith Short2022-08-011-17/+0
| | | | | | | | | | | | | | CONFIG_PLATFORM_EC_MPU is redundant with the Zephyr Kconfig option, CONFIG_MPU. Use the Zephyr option directly. BUG=none BRANCH=none TEST=zmake testall --static; compare binaries Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: Iff92c7e9fe3a003366d153e618d2450b367fd169 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3791660 Reviewed-by: Aaron Massey <aaronmassey@google.com>
* zephyr: Kconfig: use devicetree Kconfig symbolsFabio Baltieri2022-07-291-3/+2
| | | | | | | | | | | | | | | | Replace all instances of $(dt_compat_enabled, ...) with the equivalent auto-generated Kconfig symbols. BRANCH=none BUG=none TEST=zmake testall TEST=zmake build brya and diff the .config Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Cq-Depend: chromium:3776850 Change-Id: I3a86a934182d3277aab7e5a545a4ca2d5cfedfb0 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3779894 Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* ec: Shim PLATFORM_EC_PERIPHERAL_CHARGERJeremy Bettis2022-07-131-0/+1
| | | | | | | | | | | | | | | | | | Shim CONFIG_PLATFORM_EC_PERIPHERAL_CHARGER in zephyr to CONFIG_PERIPHERAL_CHARGER in legacy ec. BRANCH=None BUG=b:238773780,b:181253613 TEST=make -j40 buildall && util/run_tests.sh Change-Id: Iedfc6f7eb89fd7018892f9e467c163c453cfcdc6 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3759273 Commit-Queue: Keith Short <keithshort@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
* zephyr: Remove gpio_map.h legacy include fileAndrew McRae2022-07-071-3/+3
| | | | | | | | | | | | | Remove gpio_map.h and update Kconfig references to it. BUG=b:237716584 TEST=zmake testall BRANCH=none Signed-off-by: Andrew McRae <amcrae@google.com> Change-Id: I4b21b53a4a63c6a934f9ab3bef3707e225bd01b1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3750267 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Remove cros_fwid from version outputRobert Zieba2022-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the ec version output prints the value of cros_fwid. However, this string isn't set up for zephyr and is in the process of being deprecated. This commit disables the Zephyr Kconfig for this feature by default. This is done instead of removing it to pass a CQ test that will fail because it identifies `CONFIG_CROS_FWID_VERSION` as an orphan config. Example EC console output: ``` 22-05-26 13:07:39.852 Chip: Nuvoton npcx9m3f 00160207 22-05-26 13:07:39.855 Board: 2 22-05-26 13:07:39.855 RO: skyrim_v3.1.49995-ec:15e362,os: 22-05-26 13:07:39.858 RW: skyrim_v3.1.49995-ec:15e362,os: 22-05-26 13:07:39.860 Build: skyrim_v3.1.49995-ec:15e362,os:<...> 22-05-26 13:07:39.868 2022-05-26 13:04:44 <...> ``` BRANCH=none BUG=b:232468323 TEST=Ran version command Signed-off-by: Robert Zieba <robertzieba@google.com> Change-Id: Ic80efaec46f67b971ccdde0441538545d3321d20 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3671455 Reviewed-by: Diana Z <dzigterman@chromium.org>
* zephyr/riscv: implement FPU support functions for RV32FPeter Marheine2022-05-111-3/+1
| | | | | | | | | | | | | | | EC floating-point depends on custom implementations of `fqrtf` and `fabsf` since Zephyr doesn't provide them. Implement them in terms of the standard F extension's instructions for those operations. BUG=b:227961840 TEST=Nereid now builds if CONFIG_FPU is enabled BRANCH=none Signed-off-by: Peter Marheine <pmarheine@chromium.org> Change-Id: I904084f297d6a6c85f69feb9e0e72775dbabf83f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3631854 Reviewed-by: Keith Short <keithshort@chromium.org>
* chargesplash: State machine implementationJack Rosenthal2022-05-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is much of the legwork required for go/cros-charging-splash, at least the portion of connecting the charger from chipset off state. What remains is: - Examining battery state and charger supply to make better decisions about when we can show the splash. - Consider assertion of PROCHOT during bootup of a low power charger, or after display initialization before the power button is pressed. The next CL adds a simple text-based UI on top of this. BUG=b:228370390 BRANCH=none TEST=connect charger and boot to splash on brya (using ghost image) (with full CL stack) TEST=provided integration tests pass Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: Ic114e975109a338ffaa3be977094020251fc36e6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3575089 Reviewed-by: Diana Z <dzigterman@chromium.org> Reviewed-by: Aaron Massey <aaronmassey@google.com>
* zephyr: displight: make the option dt node basedFabio Baltieri2022-04-221-0/+3
| | | | | | | | | | | | | | Change the Kconfig displight option to enable automatically if a a cros-ec,displight node is defined. BRANCH=none BUG=b:217741090 TEST=compared the .config on herobrine and lazor Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: I9edbd4f6984c4900dd3b35cd4d46cc4d90a90b1b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3578649 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: Kconfig: fix few choice symbols formatFabio Baltieri2022-04-141-2/+2
| | | | | | | | | | | | | | | | | | | | Choice entries expects a symbol (or nothing) as the argument. The symbol is only used to have choices in multiple files (which we don't) and for documentation referencing. This renames few instances of descriptions where there should be a symbol around various Kconfig files, and cleans up various choice/endchoice definition cosmetic inconsistencies. BUG=none BRANCH=none TEST=ninja menuconfig Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Link: https://www.kernel.org/doc/html/latest/kbuild/kconfig-language.html#kconfig-syntax Change-Id: I040bc9008d6c97bf96d8cf4f37384504ccda78b1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3586429 Reviewed-by: Sam Hurst <shurst@google.com>
* zephyr: shim: drop the shim PWM codeFabio Baltieri2022-04-141-6/+4
| | | | | | | | | | | | | | | | | | Drop the shim PWM code, all drivers of Zephyr enable projects are now using the Zephyr PWM APIs. The pwm.c file only contains the PWM host command now, so rename the corresponding Kconfig option and file to reflect that. BRANCH=none BUG=b:217741090 TEST=cq dry run TEST=build and run on brya Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: I3837a81be98c4c2a9c2f7ceea24e05fe7940c7d5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3578701 Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* zephyr: Move all I2C configs into a separate fileKeith Short2022-04-081-83/+1
| | | | | | | | | | | | | Move the I2C related Kconfigs to a separate file. BUG=none BRANCH=none TEST=zmake testall Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: Ic5518c7209217e88677a8818d3793ddc58c2d41f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3575081 Reviewed-by: Sam Hurst <shurst@google.com>
* zephyr: mchp: Add zephyr Kconfig and CMakeListsmartin yan2022-04-061-0/+1
| | | | | | | | | | | | | Add zephyr Kconfig and CMakeLists to support shim layer code BUG=none BRANCH=main TEST=zmake testall and make buildall -j$(nproc) Signed-off-by: martin yan <martin.yan@microchip.corp-partner.google.com> Change-Id: I248ad8289b40e1d5a921f0b0eecf1d00dbfb8e24 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3563498 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: remove prompt for wakeup-mask KconfigsMichał Barnaś2022-03-291-2/+4
| | | | | | | | | | | | | | | | This commit removes the Kconfig prompt for event and host event wakeup masks and enables them automatically based on device-tree nodes. If nodes that specify the masks exist, then the Kconfig will be enabled. BRANCH=main BUG=b:222689734 TEST=zmake testall, grep for WAKEUP Kconfigs in .config Change-Id: I6d85d7118e74c668120129879c32ade93169e761 Signed-off-by: Michał Barnaś <mb@semihalf.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3525177 Reviewed-by: Al Semjonovs <asemjonovs@google.com>
* zephyr: CBI documentationDenis Brockus2022-03-241-48/+1
| | | | | | | | | | | | | | BRANCH=none BUG=b:222105950, b:226143500 TEST=none Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: Ibf7f8be8aae82fa776f6165ef9d82a6aa3ab76cc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3500076 Tested-by: Denis Brockus <dbrockus@chromium.org> Auto-Submit: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* zephyr: Add common led implementation to shim dirParth Malkan2022-03-221-0/+1
| | | | | | | | | | | | | | | | | | Current implementation supports gpio based leds. It has been tested on lazor board and can be expanded to other boards. Kconfig.led_dt will eventually be replaced by Kconfig.led once the shim layer supports PWM based LEDs as well and each board has added led.dts policy file BRANCH=None BUG=b:226019522, b:194430340 TEST=manual led test on lazor Signed-off-by: Parth Malkan <parthmalkan@google.com> Change-Id: I761d5d52bf91a9a44bb70d421c54634f5cbb795a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3540926 Reviewed-by: Wai-Hong Tam <waihong@google.com>
* zephyr: Convert HOOK_CHIPSET calls to AP power callbacksAndrew McRae2022-03-151-9/+11
| | | | | | | | | | | | | Convert HOOK_CHIPSET_ hooks to AP power callback handling. BUG=b:223800037 TEST=zmake testall BRANCH=none Signed-off-by: Andrew McRae <amcrae@google.com> Change-Id: I1a9574cacd5746467494facf9133f360a31cc3d5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3518465 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Kconfig: update the displight and kblight descriptionsFabio Baltieri2022-03-081-3/+2
| | | | | | | | | | | | | | Update the PLATFORM_EC_PWM_DISPLIGHT and PLATFORM_EC_PWM_KBLIGHT option help text to reflect the fact that these now needs a device tree node. BRANCH=none BUG=none TEST=zmake testall Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: Iddd0d061d00851c37ce050e5b19d52c8274932ab Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3497697 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: Extract charger config to its own kconfigAaron Massey2022-03-031-0/+1
| | | | | | | | | | | | | | Make build more tractable by moving the charger configs defined in Kconfig.battery to separate Kconfig.charger. BRANCH=none BUG=b:218897689 TEST=zmake testall Signed-off-by: Aaron Massey <aaronmassey@google.com> Change-Id: If9c817a6a201e484bc296e4b072c6dc32da202d7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3453231 Reviewed-by: Yuval Peress <peress@google.com>
* zephyr: Kconfig: drop the PLATFORM_EC_PWM option promptFabio Baltieri2022-03-011-1/+1
| | | | | | | | | | | | | | | | | This drops the PLATFORM_EC_PWM prompt, making it work as a helper symbol: https://docs.zephyrproject.org/latest/guides/build/kconfig/tips.html#using-select-for-helper-symbols BRANCH=none BUG=b:217926701 TEST=zmake configure -b volteer Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: Ic48392051a8de6806ac592ea8b28bbeec53fa19e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3494636 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* zephyr: Kconfig: default PLATFORM_EC_PWM if PWM is setFabio Baltieri2022-02-241-0/+1
| | | | | | | | | | | | | | | Change the default of PLATFORM_EC_PWM to auto-enable if PWM is set, so that setting CONFIG_PWM=y in the project file is going to take care of both. BRANCH=none BUG=b:217926701 TEST=zmake configure -b volteer Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: Iac9f01c37314df9a413586bfe57e68f4c6a03590 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3488366 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: subsys/ap_pwrseq: Add inbuilt power sequencing supportDivya Sasidharan2022-02-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Add inbuilt AP power sequencing support. This patch adds power up sequence for AP. Built on top of below reference: https://github.com/zephyrproject-rtos/zephyr/pull/29245 TODO: * b:216764983: Create separate .yaml for common and chipset specific GPIOS. * b:217952699: Subsys to driver model, override to callback implementation change. BUG=b:203446068 BRANCH=None TEST=zmake testall; make buildall; brya boots up to S0 and display is up. Change-Id: I84ce803d4e1b4594dc3f61bd2d8bcd1f94fd2be8 Signed-off-by: Divya Sasidharan <divya.s.sasidharan@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3377810 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Andrew McRae <amcrae@google.com>
* zephyr: Create Kconfig.ap_powerSam Hurst2022-02-121-0/+1
| | | | | | | | | | | | | | | Split AP Power Kconfig options from Kconfig.usbc and place in a separate file named Kconfig.ap_power. BUG=b:208437225 TEST=Verified Kconfig options with menuconfig BRANCH=main Signed-off-by: Sam Hurst <shurst@google.com> Change-Id: I38438ad1fb935c6afc19af936b3ee1c5995a7a0d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3445102 Reviewed-by: Wai-Hong Tam <waihong@google.com> Reviewed-by: Keith Short <keithshort@chromium.org>