summaryrefslogtreecommitdiff
path: root/zephyr
Commit message (Collapse)AuthorAgeFilesLines
* zephyr: shim: remove dynamic mutex initHyungwoo Yang2021-03-311-13/+1
| | | | | | | | | | | | | | | | This change replaces the runtime mutex initialization with the static(compile-time) one. BUG=b:173507858 BRANCH=none TEST=build volteer zephyr Signed-off-by: Hyungwoo Yang <hyungwoo.yang@intel.corp-partner.google.com> Change-Id: Ia908bb10b77814cf3bc59a76f0c54d24fff96ecf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2797545 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Add find_projects() to zmake.project.Jeremy Bettis2021-03-313-12/+62
| | | | | | | | | | | | | | | | A new generator function which searches subdirectories for zmake projects. BUG=b:183007888 TEST=zmake testall BRANCH=none Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: Iceca946a12e0e64a46c5994366734addb3e24cb2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2795931 Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Set up USB-A chargingSimon Glass2021-03-311-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | There is a hidden warning in the current build: zephyr/shim/include/zephyr_gpio_signal.h:14:32: warning: excess elements in array initializer 14 | #define GPIO_SIGNAL(id) DT_CAT(GPIO_, id) ... board/lazor/usbc_config.c:158:2: note: in expansion of macro 'GPIO_EN_USB_A_5V' 158 | GPIO_EN_USB_A_ The root cause is that CONFIG_PLATFORM_EC_USB_A_PORT_COUNT is set to 0. Set it to 1 to match the ECOS board setting. BUG=b:183296099 BRANCH=none TEST=build zephyr for lazor and see the warning is gone Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I8d54d87b28d170ddbdff5c2f0a4bab4ad3a91584 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2789801 Reviewed-by: Yuval Peress <peress@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* zephyr: lazor: enable SHIJun Lin2021-03-311-0/+3
| | | | | | | | | | | | | BUG=b:182600858 BRANCH=none TEST=AP-EC host commands communication is functional. Signed-off-by: Jun Lin <CHLin56@nuvoton.com> Change-Id: Ic9b75f1bea988a0cc6ef8193490daea475caa34e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2786889 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* Zephyr: npcx: shim SHIJun Lin2021-03-312-0/+86
| | | | | | | | | | | | | | BUG=b:182600858 BRANCH=none TEST=Test host command "version" and "Hello" on npcx7_evb and the host emulator. Signed-off-by: Jun Lin <CHLin56@nuvoton.com> Change-Id: Ie9424d9e68a04f575bc6f695b29ca64f14147eef Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2786888 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: npcx: support SHI driverJun Lin2021-03-319-0/+1169
| | | | | | | | | | | | | | | | | Add the support for SHI (Serial Host Interface) driver. This is used to transfer host commands between EC and ARM-based AP. BUG=b:182600858 BRANCH=none TEST=Test host command "version" and "Hello" on npcx7_evb and the host emulator. Signed-off-by: Jun Lin <CHLin56@nuvoton.com> Change-Id: I5f290fe910600162764f5728f094dd0f42d508ef Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2786887 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Implement task_start_calledDawid Niedzwiecki2021-03-311-1/+3
| | | | | | | | | | | | | | | | | Fix task_start_called to return a correct value, not hardcoded 1. The task_start_called is used before jumping to RW to prepare PD before sysjump. If the PD tasks are not started, the preparation is not needed. BUG=b:164421798 BRANCH=none TEST=Flash DUT with bootimage with Zephyr included then boot with the SoftSync enabled. Signed-off-by: Dawid Niedzwiecki <dn@semihalf.com> Change-Id: Ib2a2dbdb56c109e51a31b5a6f20a42f1e181727b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2794141 Reviewed-by: Yuval Peress <peress@chromium.org>
* zephyr: zmake: Move CRITICAL output to ERRORSimon Glass2021-03-311-3/+0
| | | | | | | | | | | | | | | | There really isn't an obvious distinction here between something that is critical and something that is just an error. They are both errors and stop the build, requiring user action. Drop this test and let everything that doesn't otherwise match become an ERROR. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake build / configure Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I94342d9425046285efde8ec9d9c79e79ad9ba181 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2789796 Reviewed-by: Yuval Peress <peress@chromium.org>
* zephyr: zmake: Drop the 'boilerplate' message on stderrSimon Glass2021-03-311-1/+21
| | | | | | | | | | | | | | | The 'Including boilerplate' message is still there on every build and still doesn't seem that useful. Add a filter to the stderr output so we can move it to DEBUG. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake build / configure Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I6e356c0abecbbba624fd41144a3c460398a4e874 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2789795 Reviewed-by: Yuval Peress <peress@chromium.org>
* zephyr: npcx: add hibernate callback implementation for cros_system.Mulin Chao2021-03-313-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL uses soc-specific functions for supporting hibernating. It includes: 1. npcx_pinctrl_psl_input_configure() - Used to configure PSL input pads from "psl-in-pads" property which detect the wake-up events. After ec received them, PSL_OUT will be set to active level and the related circuit will turn on core power supply (VCC1) from standby power state (ultra-low-power mode) later. 2. npcx_pinctrl_psl_output_set_inactive() - Used to set PSL output pad to inactive level. When PSL_OUT is in inactive level, VCC1 is turned off for entering standby power state (ultra-low-power mode). Use EC_SYSTEM_HIBERNATE_PSL to turn on this feature. BUG=b:173787365 BRANCH=none TEST=zmake testall, Press 'hibernate' on console and each PSL input can wake-up ec from hibernating on volteer. Cq-Depend: chromium:2793324 Signed-off-by: Mulin Chao <mlchao@nuvoton.com> Signed-off-by: Wealian Liao <whliao@nuvoton.corp-partner.google.com> Change-Id: I0fe3a9eb0c56e679c56bcb8abc1c6353ec46b5c9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2794206 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: shim: system: add hibernate support.Mulin Chao2021-03-311-10/+30
| | | | | | | | | | | | | | | | Add hibernate support via cros_system driver api in the shimmed system driver. It also saves related reset flag for reset cause checking. BUG=b:173787365 BRANCH=none TEST=zmake testall Signed-off-by: Mulin Chao <mlchao@nuvoton.com> Signed-off-by: Wealian Liao <whliao@nuvoton.corp-partner.google.com> Change-Id: I6c919ac46b9f38a9a2888967be0f55412d4bcc26 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2794205 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: add hibernate callback in cros_system driver api.Mulin Chao2021-03-311-0/+37
| | | | | | | | | | | | | | | Add hibernate callback in cros_system driver api for entering hibernate state (lowest EC power state). BUG=b:173787365 BRANCH=none TEST=zmake testall Signed-off-by: Mulin Chao <mlchao@nuvoton.com> Signed-off-by: Wealian Liao <whliao@nuvoton.corp-partner.google.com> Change-Id: I6942b6a4a53897ef551a3b2160ec8efeeb628863 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2794204 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: zmake: Drop common cmake and ninja messagesSimon Glass2021-03-311-0/+10
| | | | | | | | | | | | | | | | | | | | | When ninja gets an error it reports that the build stops, but we know that since we see the error and get a return code. Move it to DEBUG. Similarly cmake shows FAILED which is not useful since we can see the actual error immediately above, so move it to INFO. Also it prints out the command that failed but this is normally just a 20-line compiler invocation command which is not actionable and makes it easy to miss the one-line, useful error from the compiler. Move that to DEBUG. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake build / configure Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I0a5946e0210c05f09c0af06817fd263ee17384f3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2789794
* zephyr: zmake: Move devicetree output to DEBUGSimon Glass2021-03-301-0/+14
| | | | | | | | | | | | | | This output appears when a Kconfig or devicetree change is detected. It the same every time and is not an error. Move it to INFO. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake build / configure Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I585dbff4439650f031318ebd0c6c5a35c8f1ff2e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2789793 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: zmake: Drop success and info messagesSimon Glass2021-03-301-0/+10
| | | | | | | | | | | | | | | | | | | | | Update the filter to assume everything it doesn't know about is an error. This is safer than leaving it as an INFO message. On the other hand, build success should be assumed unless otherwise notified, so move the *** SUCCESS *** message and associated asterisk lines to DEBUG. The build ends with a note about memory usage. This is helpful, but is not an error, so show it on the default INFO. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake configure / build Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: Ief932c2f6343049c0b21493231c72c0390bfd444 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2788847 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: zmake: Move progress information to DEBUGSimon Glass2021-03-301-0/+10
| | | | | | | | | | | | | | | | | | | Perhaps unique among ninjas, 'ninja' is very noisy about its progress. This information is not actionable and goes past so quickly only a true ninja could read it. Move it to DEBUG. Do the same with 'Entering directory' since this happens every time and is not very interesting. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake with -D Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: Ied1ac3e73d14b8cd6009aa7ad4247d4fcc6a849b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2788846 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* zmake: Adjust the 'building' message to show the commandSimon Glass2021-03-301-2/+4
| | | | | | | | | | | | | | It is useful to be able to see what zmake is doing sometimes. Add the command being run to the output, for informational purposes. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake build Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I7a392a68c9053adb7ec9a2ccf14d52718bf4718a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2788845 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zmake: Send output to INFO by defaultSimon Glass2021-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | At present zmake sends most of its output to DEBUG in an attempt to deflect the onslaught of useless progress messages produced by ninja, as well as a good quantity of unactionable output from the Zephyr build system. While this approach certainly makes building bearable, unfortunately it hides a multitude of sins, including introducing build warnings. The correct level, if we have no other information, is INFO, since DEBUG is normally only useful to those debugging the build. Switch it over, with the expectation that future CLs will reduce the INFO output down to a trickle. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake configure / build Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I57fd95034aadd91815cdf8671efc57f946d61255 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2788844 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* zmake: Use a common function to report a failure messageSimon Glass2021-03-301-12/+17
| | | | | | | | | | | | | | | | | | | | At present when zmake fails the resulting messages is independently created in a different place for each subcommand. Move this in a common function, so we can make it consistent. Also adjust the output to show the command at the end, in case the user wants to copy it out and try it. Drop the exclaimation mark since errors are not all that exciting. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake configure / build Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I913c3c86dcd257ed8a7f5d378b38e31d7c6d6465 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2788843 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: zmake: Avoid showing a backtrace on errorsSimon Glass2021-03-302-2/+7
| | | | | | | | | | | | | | | | | The backtrace is typically only useful for people debugging zmake. Others just want to use it as a tool and the error message should be enough to explain what is going on. Add a debug flag (-D) to enable the backtrace; otherwise drop it. BUG=b:177096315 BRANCH=none TEST=manually test by running zmake with -D Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: Ib8425289fb057cc907d73fbddb7eee8351fb84d8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2788842 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Generate initial coverage for every boardJeremy Bettis2021-03-304-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | Create a new ninja target 'all.libraries' which is everything that zephyr.elf depends on, but doesn't actually link the zephyr.elf binary. This allows creating coverage info for boards that run on SOCs that are too small for real coverage runs. Enabled the HAS_COVERAGE_SUPPORT for all boards, so that the all.libraries target will build with coverage enabled. HAS_COVERAGE_SUPPORT can't be set in prj files, as it is not directly user assignable. This is probably somewhat of a misuse of this flag, but nothing depends on it except for CONFIG_COVERAGE. Tweaked the instructions to exclude some more directories that are not useful code, like tests and generate headers. BUG=b:183007888 TEST=Ran commands in code_coverage.md BRANCH=none Change-Id: I6cf1b889b6b3883f7a76d1ae4957805bfa6d7b96 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2786067 Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
* zephyr: lazor: enable volume buttons and simulation commandWai-Hong Tam2021-03-302-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Define the volume button GPIOs. Enable the configs of volume buttons and simulation command. BRANCH=None BUG=b:182398910 TEST=Tested on Lazor. Checked the volume buttons working in Chrome. And tested the "button" command": uart:~$ button vup 200 uart:~$ [25.412800 Button 'Volume Up' was pressed] [25.415200 buttons: 2] [25.418200 HC 0x67] [25.448600 HC 0x25] +++(++)[25.612800 Button 'Volume Up' was released] [25.615400 buttons: 0] [25.617700 HC 0x67] [25.634800 HC 0x25] +++(++)button vdown 200 uart:~$ [33.391100 Button 'Volume Down' was pressed] [33.393600 buttons: 4] [33.397100 HC 0x67] [33.591500 Button 'Volume Down' was released] [33.594100 buttons: 0] [33.597400 HC 0x67] Change-Id: I2e1fbe30ed704fa57d49377fea344e0aa52c5741 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2792695 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: add Kconfig for button simulation commandWai-Hong Tam2021-03-302-0/+11
| | | | | | | | | | | | | | | | The Kconfig adds the console command "button", which simulates button press. The buttons are like volume-up, volume-down, and recovery buttons. BRANCH=None BUG=b:182398910 TEST=With the following CLs, which enables the Kconfig, tested the console command. Change-Id: I55aa409f2d98a8794f99d788d3b9588619f316da Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2792694 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: main: initialize the buttonsWai-Hong Tam2021-03-301-0/+6
| | | | | | | | | | | | | Initialize the button states and enables the interrupts. BRANCH=None BUG=b:182398910 TEST=With the following CLs, tested the volume buttons working. Change-Id: I4d5b6965915c1103093114c3b01acb965c619a37 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2792693 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Import the compiler specific link flagsJeremy Bettis2021-03-291-2/+3
| | | | | | | | | | | | | | | | | | | I noticed earlier that the --coverage flag was missing from the link command, and added it to ldd/linker_flags.cmake, but I realize this is a better fix, as it will pick up all compiler specific link flags in zephyr. BUG=b:183007888 TEST=cmds in code_coverage.md BRANCH=none Change-Id: I957100dbe0e5c75e2e8124ce121f295778bd8f68 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787353 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: delbin: switch to volteer boardJack Rosenthal2021-03-298-243/+3
| | | | | | | | | | | | | | Switch to common volteer baseboard, allowing us to delete the delbin copy. BUG=b:183643832 BRANCH=none TEST=build zephyr for delbin Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I0961eec112c38f0373b959f747fc3bae4cc29d9b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787352 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: volteer: move ADC kconfig to baseboardJack Rosenthal2021-03-292-2/+2
| | | | | | | | | | | | | | ADC support in volteer is enabled at baseboard level, so move the configuration from prj.conf to volteer_defconfig. BUG=b:183643832 BRANCH=none TEST=compile zephyr for volteer Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I7cd1ceb7bbbde7517a3c37de1b4c3ded14d7d3f5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787351 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: volteer: move bb_retimer to DTS overlayJack Rosenthal2021-03-293-9/+19
| | | | | | | | | | | | | USB_C1_BB_RETIMER is project specific. Move to DTS overlay. BUG=b:183643832 BRANCH=none TEST=build zephyr for volteer Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I5683c9581d2df3120e30e41419529ec17a73f5fc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787350 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: volteer: move motion sensors to DTS overlayJack Rosenthal2021-03-293-2/+1
| | | | | | | | | | | | | Motion sensors are project specific, move to overlay. BUG=b:183643832 BRANCH=none TEST=compile zephyr for volteer Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: Ib9fb7d38f5d2b368fba1f6330d69df84a4bb19b7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787349 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: volteer: move fans to DTS overlayJack Rosenthal2021-03-293-23/+30
| | | | | | | | | | | | | Move fans to a Zephyr DTS overlay since they're project specific. BUG=b:183643832 BRANCH=none TEST=build zephyr for volteer Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I0460d6589d461d1c16c7c70eeae5dfaddb807ecb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787348 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: volteer: move pwm device-tree to DTS overlayJack Rosenthal2021-03-293-65/+72
| | | | | | | | | | | | | Move named-pwms to a device-tree overlay, since it's project specific. BUG=b:183643832 BRANCH=none TEST=build zephyr for volteer Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I93b04cd86d3e3459081127fe50e87963d04a9336 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787347 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: delbin: move gpio device-tree to DTS overlayJack Rosenthal2021-03-293-300/+308
| | | | | | | | | | | | | | Move board-specific GPIO definitions to a Zephyr device-tree overlay, since this is not shared with volteer reference board. BUG=b:183643832 BRANCH=none TEST=build for delbin Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I2dfb6c827c770b70b4c227bc27d7664f307b3195 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787346 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: volteer: move gpio device-tree to DTS overlayJack Rosenthal2021-03-293-302/+310
| | | | | | | | | | | | | | | Move device-tree GPIO definitions (named-gpios and nuvoton low voltage selection list) to a Zephyr DTS overlay. These are board-specific and shouldn't be shared with delbin. BUG=b:183643832 BRANCH=none TEST=compile zephyr for volteer Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I258aa024a6d32598326490be1f0d2a5e7000f72a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787345 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: volteer: start converting board to baseboardJack Rosenthal2021-03-299-30/+12
| | | | | | | | | | | | | | | | Start working on converting the Zephyr volteer board to be more representative of a volteer baseboard. It's still not ready for use with delbin yet, as GPIOs and other board-specific configurations will still need moved. BUG=b:183643832 BRANCH=none TEST=build zephyr for volteer Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I86fdd11d2670b40ffed0e44617e999ddf89adc84 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2785219 Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: restructure volteer and delbin project directoriesJack Rosenthal2021-03-2926-1/+1
| | | | | | | | | | | | | | | | | | | | Move volteer and delbin directories into under a volteer directory for the baseboard. This is purely just a file-rename CL. The combination into a common Zephyr board is done in a follow-up. Post submit task (jrosenth@): update table on go/zephyr-care with new file names. BUG=b:183643832 BRANCH=none TEST=zmake testall Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I219ceada116651e7d324a099fb55dffe4cc83806 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2785218 Reviewed-by: Simon Glass <sjg@chromium.org>
* common/battery: Provide function to lower input voltagePatryk Duda2021-03-292-0/+17
| | | | | | | | | | | | | | This patch introduces generic version of function that sets voltage limit when chipset is off and battery is fully charged. BUG=b:182546058 BRANCH=none TEST=make -j buildall Signed-off-by: Patryk Duda <pdk@semihalf.com> Change-Id: Ib7606c8d1ab3fe1dc650a3abcef9ebc207335ab5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2773218 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* zephyr: Import firmware_builder.py from zephyr-chrome repoJack Rosenthal2021-03-291-0/+103
| | | | | | | | | | | | | | | | | | Bring in firmware_builder.py from zephyr-chrome. Had to make a few changes to file paths. Still has to be enabled in Chromite. BUG=b:177003034 BRANCH=none TEST=firmware_builder.py --metics=$(mktemp -d) build && \ firmware_builder.py --metrics=$(mktemp -d) test Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: Ia7ad5bac2b0daab4c5eec17963cd49fe507587c1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787482 Reviewed-by: LaMont Jones <lamontjones@chromium.org>
* npcx: eSPI: add config option to zephyr kconfigCaveh Jalali2021-03-262-0/+13
| | | | | | | | | | | | | | This adds the new CONFIG_HOSTCMD_ESPI_RESET_SLP_SX_VW_ON_ESPI_RST config option to the zephyr kconfig tree. BRANCH=none BUG=b:179977907,b:183148073 TEST=new config option is no longer flagged as missing Change-Id: I0de404ea164933aa9c1222f09f1dd7ef7a3dbb0c Signed-off-by: Caveh Jalali <caveh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2771741 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: lazor: enable memory mapped switchesWai-Hong Tam2021-03-251-1/+1
| | | | | | | | | | | | | | | | | Enable the CONFIG_PLATFORM_EC_SWITCH. BRANCH=None BUG=b:183445211 TEST=Tested on Lazor. The following errors didn't show on depthcharge: error, assuming lid is open error, assuming lid is open error, assuming lid is open ... Change-Id: I8f1b6fc8772bb47cc98d559772ab6029fb6e0742 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787595 Reviewed-by: Keith Short <keithshort@chromium.org>
* zephyr: lazor: enable the display backlight based on the lid switchWai-Hong Tam2021-03-252-1/+2
| | | | | | | | | | | | | | | Enable the CONFIG_PLATFORM_EC_BACKLIGHT_LID. BRANCH=None BUG=b:183445211 TEST=Tested on Lazor. Display backligh ON when booting AP. Change-Id: I4a70c418b0250f77d626ad1387ac94e530c3e065 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787467 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Have zmake log every command run at DEBUGJeremy Bettis2021-03-251-1/+4
| | | | | | | | | | | | | | | If you want to see the command line of cmake and ninja, this is helpful. BUG=b:183007888 TEST=zmake -l DEBUG BRANCH=none Change-Id: Icb8baebd36349b1b1a83e74c3ae6dec05bd28ae1 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2786064 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: lazor: enable RTCWai-Hong Tam2021-03-252-0/+5
| | | | | | | | | | | | | | | | | | | | Enable PLATFORM_EC_RTC and PLATFORM_EC_CONSOLE_CMD_RTC. BRANCH=None BUG=b:182398910 TEST=Tested on Lazor. The RTC counted. Can set it. uart:~$ rtc RTC: 0x605ccb65 (1616694117.00 s) uart:~$ rtc RTC: 0x605ccb93 (1616694163.00 s) uart:~$ rtc set 12345 RTC: 0x00003039 (12345.00 s) Change-Id: Iecd67ea279508aaa28c81b6d28b7aa2e118023b2 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787084 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org>
* Revert "ps8815: delete CONFIG_USB_PD_TCPM_PS8815_FORCE_DID"Zhuohao Lee2021-03-251-0/+1
| | | | | | | | | | | | | | | | | This reverts commit e2761c8be4571adcfc425a9187290872ffa9d02d. In order to support the old TCPC chip which bcd revision is smaller than 0x7, we need to bring back the CONFIG_USB_PD_TCPM_PS8815_FORCE_DID and force the TCPC firmware be updated in the factory line. BUG=b:177251013, b:159289062, b:182018599, b:178978970 BRANCH=firmware-volteer-13672.B TEST=the old TCPC chip can update its firmware. Signed-off-by: Zhuohao Lee <zhuohao@chromium.org> Change-Id: I66d12aee569137cc7823a186e3251ca8b187e767 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2784327 Reviewed-by: Keith Short <keithshort@chromium.org>
* zephyr: delbin: bringup keyboardJack Rosenthal2021-03-243-2/+36
| | | | | | | | | | | | | | Enable keyboard support. BUG=b:180410072 BRANCH=none TEST=use keyboard in ChromeOS Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I82c6e8a0a289ae10f9aaae532fc5d7359eea3ec0 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2727847 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: remove unused compiler definitionsKeith Short2021-03-241-14/+0
| | | | | | | | | | | | | | | Remove the CHIP_FAMILY_ and CHIP_VARIANT_ preprocessor definitions that are not used. BUG=none BRANCH=none TEST=zmake testall Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: Ied1d49495109ea99029196d4ad65462381c2581b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2777124 Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Enable link time optimization for board filesKeith Short2021-03-244-23/+22
| | | | | | | | | | | | | | | | | | | Move the baseboard and board files into the zephyr_ec library to take advantage of the LTO compiler option enabled for the zephyr_ec library. On Volteer, this reduces the image size by 832 bytes. Total LTO saving is just over 10,000 bytes. BUG=none BRANCH=none TEST=zmake testall TEST=boot zephry-ec on Volteer, verify AP boots Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: I2f3aa7f6c400a5b5cd1b346fcf52160b834e66a3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2776218 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: Enable link time optimization (LTO)Keith Short2021-03-247-148/+191
| | | | | | | | | | | | | | | | | | | The upstream Zephyr repo does not support LTO. Reconfigure the platform/ec source files into a cmake library so the LTO option can be enabled for all the platorm/ec sources. This reduces the Volteer flash image size by 9176 bytes. BUG=none BRANCH=none TEST=zmake testall TEST=boot zephyr-ec on Volteer, verfiy AP boots Cq-Depend: chromium:2776218 Signed-off-by: Keith Short <keithshort@chromium.org> Change-Id: I8312773c8b21c498ec8116a8558b7571831159ff Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2776217 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: lazor: Connect up the USB interruptsSimon Glass2021-03-241-1/+6
| | | | | | | | | | | | | | | Now that all the code is accessible to zephyr, connect up the interrupt handlers so that events are dealt with. BUG=b:183296099 BRANCH=none TEST=build zephyr for lazor Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: Ie4790ae85efb7e63fb472d3081c4288f16b31c1f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2777647 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* zephyr: lazor: Add initial USC-C config into the buildSimon Glass2021-03-243-2/+57
| | | | | | | | | | | | | | | | | | Add this file into the zephyr build along with the required CONFIG options and device tree additions, so we can make a start on bringing up USB-C and charging functionality. Add all the required GPIOs here as well, so that things will work when we move the code over in the following CLs. BUG=b:183296099 BRANCH=none TEST=build zephyr for lazor Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I8c4f54664d2d18b44ed8992e61e7b2f694f04f93 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2777642 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* zephyr: volteer: enable BOARD_RESET_AFTER_POWER_ONWealian Liao2021-03-241-0/+1
| | | | | | | | | | | | | | | | | | | This enables BOARD_RESET_AFTER_POWER_ON feature for volteer. BUG=b:178101173 BRANCH=None. TEST=zmake testall TEST=check the following reset cause 1. power-up 2. reset-pin reset Signed-off-by: Wealian Liao <whliao@nuvoton.corp-partner.google.com> Change-Id: Ie1b0fc4b41227bc23d6a58e62af5e35e6f154ad3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2771130 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>