| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Zephyr defines a default system wide work queue and allows to add extra
queues, the default queue is only compiled in if used by anything. The
shim queue was the only one originally used until vboot started to use
the sysworkq as well, which added that to the build as well.
The API documentation[1] explicitly discourages custom workqueues if not
strictly necessary. In this case the system one is only used once and
then it's effectively dedicated to the hooks, so there should be
effectively no change is using that one as the only queue, and we get
rid of a custom queue structure, initialization and thread.
Kernel stacks before:
0x200c2928 ec_hooks (real size 704): unused 144 usage 560 / 704 (79 %)
0x200c3488 sysworkq (real size 288): unused 80 usage 208 / 288 (72 %)
Kernel stacks after:
0x200c76f8 sysworkq (real size 704): unused 176 usage 528 / 704 (75 %)
SRAM should go down by about 520 bytes.
[1] https://docs.zephyrproject.org/latest/reference/kernel/threads/workqueue.html#system-workqueue
BUG=b:183748844
BRANCH=none
TEST=build and run on volteer
TEST=kernel stacks on volteer
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Change-Id: Ia8ab59bf3e6a5e28fe36ec1e94c65483c4645baa
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2854850
Reviewed-by: Keith Short <keithshort@chromium.org>
Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Create a Kconfig option for the sysinfo console command, furthering
our parity with EC configurability.
This is by default enabled anyway, so the Kconfig is just providing a
means to turn it off, if desired. (Which is useful for ITE chips
right now, where we don't have full support for all the deps we bring
in with this command yet.)
BUG=b:180980668
BRANCH=none
TEST=hayato build (follow-up CL)
Signed-off-by: Jack Rosenthal <jrosenth@chromium.org>
Change-Id: Ibe2c2a4d7620ef60979b256735046379bf99e3e5
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2845270
Reviewed-by: Simon Glass <sjg@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Zephyr implementation of EC hooks is currently using a hardcoded
stack size of 1024 bytes. Make it configurable so that we can tweak it
on the board configs.
BUG=none
BRANCH=none
TEST=kernel stacks on the EC shell
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Change-Id: I705f18b3a17ca9da62421ae563bbc6a2f8cefbc5
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2799681
Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
Reviewed-by: Keith Short <keithshort@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
The reset cause will influence the initialization flow. We define some
of initial flow of the reset cause for the following development.
This CL include the following:
1. Add check_reset_cause() which sets the system reset flag.
2. Add chip_bbram_status_check() to clear the error status & show the
error message.
3. Add CONFIG_BOARD_RESET_AFTER_POWER_ON feature.
4. Define the initialize flow for reset cause.
BRANCH=none
BUG=b:178101173
TEST=check the following reset cause by 'sysinfo'
1. power-up
2. reset-pin reset
3. soft by 'reboot' console command
4. watchdog by 'waitms 2000'
Signed-off-by: Wealian Liao <whliao@nuvoton.corp-partner.google.com>
Change-Id: I515868d8cda4544fdbe782210b0108b4dda0d8cc
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2731180
Reviewed-by: Keith Short <keithshort@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Commit-Queue: Keith Short <keithshort@chromium.org>
|