| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
BRANCH=none
BUG=b:172020503, b:256193799
TEST=make buildall
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: Iaa06710e9d83f240252c0fe07de88c29280a79bb
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4033070
Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The config from EC collides with the same config from Zephyr.
BUG=b:239712345
BRANCH=none
TEST=make runhosttests buildall
Change-Id: Ic6e63ea6dd9e745e82feb2af04b77069c2d78af1
Signed-off-by: Patryk Duda <pdk@semihalf.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4295699
Reviewed-by: Keith Short <keithshort@chromium.org>
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
Commit-Queue: Patryk Duda <patrykd@google.com>
Tested-by: Patryk Duda <patrykd@google.com>
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=b:269367960
TEST=i2cscan can scan all buses
BRANCH=none
Change-Id: Iccb3a28a24de4e82119d50a1f581162ac58913cf
Signed-off-by: Sam McNally <sammc@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4252439
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
During the DP-Config phase, when the DP-Config VDM is acked, the
PPC SW and TCPC MUX are connected. Afterward, when the EC
receives any HPD event (High, Low, or IRQ), should not change
the PPC SW and TCPC MUX. Otherwise, disconnecting any of them
when HPD Low makes the AUX termination disappear.
BRANCH=trogdor
BUG=b:247005613
TEST=Connect the device through a Type-C dongle to a monitor,
unplug the monitor from the dongle, and replug it again. The
monitor should detect the device and assert HPD high.
Change-Id: Id890bfe8fec23109da2b36aa9662e24aec4ae32c
Signed-off-by: Wai-Hong Tam <waihong@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4242456
Reviewed-by: Alexandru Stan <amstan@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
move isl9238c_hibernate from board_hibernate_late to board_hibernate.
BUG=none
BRANCH=cherry
TEST=none
Change-Id: I37ad977db73410c9e68a2850a5984df052e86db1
Signed-off-by: Sue Chen <sue.chen@quanta.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4225332
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=b:257833880
TEST=make -j BOARD=dibbi
BRANCH=dedede
Change-Id: Iec7296d47565714682d6ad59bf4e4273da631cb0
Signed-off-by: Adam Mills <adamjmills@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4199243
Reviewed-by: Liam Flaherty <liamflaherty@chromium.org>
Reviewed-by: Sam McNally <sammc@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
move isl9238c_hibernate from board_hibernate_late to board_hibernate.
BUG=b:247925239
BRANCH=asurada
TEST=hibernate
Change-Id: Ie7130fac68ce045da18bbe369c14d07d5253d017
Signed-off-by: Sue Chen <sue.chen@quanta.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4165983
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Not derating seems like a common pitfall that can cause problems with
some chargers, so set a reasonably conservative default.
5% is chosen as the most common derating factor used among boards today
(counting occurrences in source code, so this may undercount 5%
occurrences because several projects set 5% at the project rather than
board-level):
1. 38 x 5%
2. 23 x 4%
3. 6 x 10%
3. 2 x 3%
4. 1 x 2%
Boards that currently configure this setting are modified only to
continue building without warnings regardless of whether they use the
new default value in order to signal that they were explicitly
configured.
BUG=b:260774380
TEST=make buildall / zmake build -a
BRANCH=none
Change-Id: I017849d38572fbc48090ae1fa2c539b808e426f9
Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4109651
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Due to in Treeya360 project add "#undef CONFIG_HIBERNATE_PSL" this
configuration, so PPC1 remains powered during hibernate.
PPC1 therefore now needs to be configured the same way as PPC0, to mimic
the previous dead-battery behavior and allow wake on AC plug.
BRANCH=none
BUG=b:259211176
TEST=make buildall -j48
Change-Id: Ie353a3f3ca118dd94a2131d8ea62ddf5ee12c470
Signed-off-by: amber.chen <amber.chen@lcfc.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4119878
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Edward Hill <ecgh@chromium.org>
Reviewed-by: Zhuohao Lee <zhuohao@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The HPD state is a field of the DP-Status VDO. The DP-Status VDO is
embedded in either the DP-Status VDM or the Attention VDM.
The DP-Status happens before the DP-Config. The pin assignment of the
PD partner hasn't been set up yet. Passing through the HPD to the DP
PHY is too early. Racing it may fail the link-training. Should wait
until the DP-Config is done.
BRANCH=trogdor
BUG=b:247005613
TEST=Connect the device through a Type-C dongle to a monitor and verify
the screen. Try the combinations:
* Plug C0 monitor -> plug C0 dongle -> screen on C0 monitor
* Plug C0 dongle -> plug C0 monitor -> screen on C0 monitor
-> unplug C0 monitor -> plug C0 monitor -> screen on C0 monitor
* Plug C0 dongle -> plug C0 monitor -> screen on C0 monitor
-> plug C1 dongle -> -> plug C1 monitor -> no screen on C1 monitor
-> unplug C0 monitor -> replug C1 monitor -> screen on C0 monitor
* Plug C0 dongle -> plug C1 dongle -> plug C1 monitor
-> screen on C1 monitor -> unplug C1 dongle -> plug C0 monitor
-> screen on C0 monitor
Change-Id: I796bc459659ddccf860f540de9409159e3c99d36
Signed-off-by: Wai-Hong Tam <waihong@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4076561
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Commit-Queue: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The hardware block diagram is like:
AUX termination
|
+----+--- TCPC MUX --- PPC SW --- Type-C connector (port-0)
DP PHY -- DP MUX
+----+--- TCPC MUX --- PPC SW --- Type-C connector (port-1)
|
AUX termination
The current implementation muxes the path end-to-end on a HPD high
event.
The dependencies are:
* Chromebook muxing the AUX channel depends on a HPD high event,
* DP sink raising HPD depends on a cable connection detected (auto-
probe),
* Successful probe of a cable connection depends on AUX termination,
which cause a dead-lock.
This change breaks the dead-lock. During the DP-Config phase, when the
DP-Config VDM is acked, connect the PPC SW and TCPC MUX, but leave the
DP MUX disconnected. So the DP sink can detect the correct AUX
termination. The DP port selection mux is not enabled yet so no signal
passes through to the DP PHY.
As the TCPC MUX is enabled in the DP-Config phase, we can't use the TCPC
MUX status as the condition to check if the DP path is muxable. Change
it to the DP selection mux.
BRANCH=trogdor
BUG=b:247005613
TEST=Together with the next CL.
Connect the device through a Type-C dongle to a monitor and verify
the screen. Try the combinations:
* Plug C0 monitor -> plug C0 dongle -> screen on C0 monitor
* Plug C0 dongle -> plug C0 monitor -> screen on C0 monitor
-> unplug C0 monitor -> plug C0 monitor -> screen on C0 monitor
* Plug C0 dongle -> plug C0 monitor -> screen on C0 monitor
-> plug C1 dongle -> -> plug C1 monitor -> no screen on C1 monitor
-> unplug C0 monitor -> replug C1 monitor -> screen on C0 monitor
* Plug C0 dongle -> plug C1 dongle -> plug C1 monitor
-> screen on C1 monitor -> unplug C1 dongle -> plug C0 monitor
-> screen on C0 monitor
Change-Id: Id24ce4627a1c015ad2dc9748578fa1a6d68122c6
Signed-off-by: Wai-Hong Tam <waihong@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4076560
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Commit-Queue: Stephen Boyd <swboyd@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Chromebox for Meetings (CfM) devices are videoconferencing appliances.
Discovering that a significant fraction of our fleet was throttling the
CPU due to temperature, resulting in bad video quality, we have decided
that these devices should never throttle. The present change reduces the
temperature thresholds at which we increase fan speeds. For most of the
time, when the CfM is idle, we expect no or little change in fan speeds.
During calls, the CfM CPU can exceed 60 C, and the sensors controlling
the fan are typically 10-20 degrees C cooler than the CPU, so we set
the maximum-fan temperature to 50-55 C in an attempt to arrest any
temperature increase before the CPU reaches throttling temperatures.
We add fan tables to enable hysteresis in the fan speed setting. Fan
RPMs are chosen to span the min-to-max range, while avoiding 50 Hz and
60 Hz line frequencies.
fizz and kalista boards are shared with non-CfM versions, while the
other boards are CfM-only. Since those boards are several years old, we
plan to build these firmware changes only into CfM-branch releases, not
all fizz and kalista devices.
Additional details at go/cfm-overheating . Temperature traces with load
testing on both top-of-tree and firmware with this change are shown at
go/cfm-overheating#heading=h.ykpzxotgnu2j
BRANCH=update-fan-tables
BUG=b:252966838,b:191187610,chromium:1383859
TEST=Confirmed validity of settings with `ectool thermalset`. Built
firmware, flashed to endeavour and excelsior (fizz), verified that fan
turns on earlier. This does not completely prevent throttling from
47.25 W to 15.00 W on Kaby Lake boards (endeavour, fizz, kalista), but
it does prevent dropping below 15.00 W. Comet Lake boards (ambassador,
genesis, moonbuggy, scout) start at 15.00 W and rarely throttle anyway.
Change-Id: I9259b05bcfa1bf4e6433df74913668424d005dbd
Signed-off-by: Richard Yeh <rcy@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4060608
Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL enables system boot time logging support for adlrvp.
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: I7b975aafe7e1846e132827e061551af11e7d1101
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3832585
Reviewed-by: Boris Mittelberg <bmbm@google.com>
Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
various board specific TCPC interrupt handler have been moved into
tcpc.c in shim. ports are now automatically configured from the i2c dts
instead of hardcoded.
this does not remove the handler binding from interrupts.dts or
initialize the interrupt from the driver, which will be added in a
followup CL.
stub test handler in test/.../stubs.c has been removed and existing
tests have been modified to use new tcpc driver.
BUG=b:256996124
TEST=twister, usbc charging on lazor
BRANCH=none
Signed-off-by: Jason Yuan <jasonyuan@google.com>
Change-Id: Iac05907f3c286f26329dac7f99730396d23b1166
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4024013
Commit-Queue: zhi cheng yuan <jasonyuan@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Sam Hurst <shurst@google.com>
Commit-Queue: Sam Hurst <shurst@google.com>
Auto-Submit: zhi cheng yuan <jasonyuan@chromium.org>
Tested-by: zhi cheng yuan <jasonyuan@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sort all includes in board with the clang-format rules used by
the zephyr project.
BRANCH=None
BUG=b:247100970
TEST=zmake build -a
TEST=./twister --clobber -v -i
TEST=make -j72 buildall_only runtests
TEST=zmake compare-builds -a
Signed-off-by: Jeremy Bettis <jbettis@google.com>
Change-Id: I6ad72b167cbb768a64c338fa633eb4bf5a401897
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4060360
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
Tested-by: Jeremy Bettis <jbettis@chromium.org>
Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"Default input current" is not a very clear name, so rename this option to
better express its use as a default value that is set in the charger.
This is made possible by splitting other uses into
CHARGER_MIN_INPUT_CURRENT_LIMIT, making the only use for
CHARGER_INPUT_CURRENT be as a default.
BUG=b:163093572
TEST=make buildall; zmake build -a
BRANCH=none
LOW_COVERAGE_REASON=isl9241 and sm5803 currently lack emulators
Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Change-Id: Ia9c1df9061825b15477466e85343afeb2a371288
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4025404
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removed battery and battery charging support, as dibbi does not have
either of these.
Added support for dual barrel-jack/USB-C power supplies and update USB PD
policies accordingly.
Added support for USB-C0 output load-switch.
Made changes in dedede baseboard to allow alternate implementation of
extpower_is_present with the absence of a charger chip.
BUG=b:257377326
BRANCH=dedede
TEST=make -j BOARD=dibbi
Signed-off-by: Liam Flaherty <liamflaherty@chromium.org>
Change-Id: I81d01a88caf174eb038685bf098686e8a310a9b1
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4054386
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Sam McNally <sammc@chromium.org>
Reviewed-by: Adam Mills <adamjmills@google.com>
Tested-by: Adam Mills <adamjmills@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Depend on design,
1. Remove BC1.2 (USB_CHARGE, CHARGER_RAMP).
2. Remove TypeC port 2.
3. Change PPC to SYV682 for typeC port 1.
4. Support 2 USB TypeA ports.
BUG=b:259002141,b:255184961
BRANCH=none
TEST=make BOARD=marasov
Signed-off-by: Michael5 Chen1 <michael5_chen1@pegatron.corp-partner.google.com>
Change-Id: I8dbd75ffc8666b8931ef0e486e6e6a3ba6ac0c56
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4022557
Reviewed-by: Boris Mittelberg <bmbm@google.com>
Reviewed-by: Kyle Lin <kylelinck@google.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The majority of boards simply call charge_set_input_current_limit()
from board_set_charge_limit() now that the minimum current limit and
derating are available as config options. Make this the default behavior
of the charge manager, overridable by boards as needed.
Boards that have existing custom behavior retain it, with their versions
of board_set_charge_limit() marked as __override as necessary.
BUG=b:163093572
TEST=make buildall; zmake build -a
BRANCH=none
Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Change-Id: I72475ca0e8381596cafbcda4b042c7f884ae0432
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4022857
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The symbols zork_base_standard_ref and grunt_base_standard_ref are never
actually defined or used anywhere.
BRANCH=None
BUG=b:247100970
TEST=zmake build -a
TEST=./twister --clobber -v -i
TEST=make -j$(nproc) buildall_only runtests
TEST=zmake compare-builds
Change-Id: I1425ceb38f1de45e50c98f86f4df4221602120e0
Signed-off-by: Jeremy Bettis <jbettis@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4049881
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Auto-Submit: Jeremy Bettis <jbettis@chromium.org>
Commit-Queue: Simon Glass <sjg@chromium.org>
Tested-by: Jeremy Bettis <jbettis@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move the zephyr only headers to be last, so the others will sort
correctly with clang-format.
BRANCH=None
BUG=b:247100970
TEST=zmake build -a
TEST=./twister --clobber -v -i
TEST=make -j$(nproc) buildall_only runtests
TEST=zmake compare-builds
Signed-off-by: Jeremy Bettis <jbettis@google.com>
Change-Id: I88211638be6ee1d3558a42e641d7c1882d7294cc
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4049880
Reviewed-by: Aaron Massey <aaronmassey@google.com>
Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Tested-by: Jeremy Bettis <jbettis@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This splits the dual use of CONFIG_CHARGER_INPUT_CURRENT into two
different symbols, changing the uses of that which are used to set a
minimum current limit to be CONFIG_CHARGER_MAX_INPUT_CURRENT_LIMIT.
Most boards implement this in the same way within either the board or
baseboard, so handling of the new option is moved into
charge_set_input_current_limit (which is called by every user of the
option) and every board which repeated this pattern has the new symbol
set to the same value as the old one, with the duplicated code deleted.
One functional change to the charge manager is made: when charging
stops, the input current limit is set to the default value
(CONFIG_CHARGER_INPUT_CURRENT) rather than 0. This captures the intent
that the default current is appropriate at any time, which was previously
configured by individual boards' implementation of board_set_charge_limit()
while still allowing the limit to be set lower as needed.
To verify that all changes are appropriate, the following has been
manually checked:
* All boards with a change to a .c file also have a .h change
* All boards without a changed .h file have a changed baseboard.h
* For Zephyr projects, those with a changed .c file have config added
for the minimum limit and others (only corsola) are unchanged to
leave it off.
This is intended to verify that each board that duplicated the MAX()
logic has its configuration updated to use the shared copy, and that
boards with that code in the baseboard also update their configuration.
BUG=b:163093572
TEST=make buildall; zmake build -a
BRANCH=none
LOW_COVERAGE_REASON=added lines will soon be deleted
Change-Id: Ia460a16293c1fb82aac3784fd9be57ba0985f2fe
Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4019703
Reviewed-by: Keith Short <keithshort@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sort all includes in baseboard with the clang-format rules used by
the zephyr project.
BRANCH=None
BUG=b:247100970
TEST=zmake build -a
TEST=./twister --clobber -v -i
TEST=make -j72 buildall_only runtests
TEST=zmake compare-builds
Signed-off-by: Jeremy Bettis <jbettis@google.com>
Change-Id: I259d3bae478d1f649623bc56339e2f8423ede0dc
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4049441
Tested-by: Jeremy Bettis <jbettis@chromium.org>
Commit-Queue: Simon Glass <sjg@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Auto-Submit: Jeremy Bettis <jbettis@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
cbi.h needs common.h for __override_proto
Zephyr's inttypes.h includes stdint.h, so do the same for ec's
inttypes.h also.
BRANCH=None
BUG=b:247100970
TEST=zmake build -a
TEST=./twister --clobber -v -i
TEST=make -j$(nproc) buildall_only runtests
TEST=zmake compare-builds
Signed-off-by: Jeremy Bettis <jbettis@google.com>
Change-Id: I8917f1ad6a04dc35c2ef8eb437d9cf4cd5ec7fa7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4049440
Commit-Queue: Tristan Honscheid <honscheid@google.com>
Tested-by: Jeremy Bettis <jbettis@chromium.org>
Reviewed-by: Tristan Honscheid <honscheid@google.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
Auto-Submit: Jeremy Bettis <jbettis@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=b:259354679
BRANCH=none
TEST=make buildall -j
Signed-off-by: Tommy Chung <tommy.chung@quanta.corp-partner.google.com>
Change-Id: Ia93b7fb6c927e2d527186e0d59d3e37da01ed820
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4001240
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Zhuohao Lee <zhuohao@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Many boards derate their charge current limits by some fixed ratio,
which results in duplicate code appearing in many different boards.
Since nearly all of these are in implementations of
board_set_charge_limit() and themselves call
charge_set_input_current_limit(), make that derating a config option
and move it into charge_set_input_current_limit(). This makes most
boards' implementations uniform and ripe for further simplification
in later changes.
For those boards that do more complex adjustments, those can be
retained by keeping the existing logic in board_set_charge_limit().
Several boards also uselessly defined multiple versions of
board_set_charge_limit(): the redundant ones are removed.
BUG=b:163093572
TEST=make buildall; zmake build -a
BRANCH=none
LOW_COVERAGE_REASON=follow-up CLs delete uncovered code
Change-Id: I0a7162e72538a91ad06ba85b91a10b93eb6af96b
Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4015966
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Commit-Queue: Keith Short <keithshort@chromium.org>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
BRANCH=none
BUG=b:172020503, b:256193799
TEST=make buildall
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I746815d69bbdab3dd95ba69f47d4c1f7494fe642
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4024040
Reviewed-by: Eric Yilun Lin <yllin@google.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CONFIG_STM_HWTIMER32 was used to choose between a 32-bit timer and
16-bit timer. The 16-bit timer code was removed in
https://crrev.com/c/3388064, so we no longer need this config.
Command used:
git grep --name-only CONFIG_STM_HWTIMER |\
xargs sed -i '/CONFIG_STM_HWTIMER32/d'
BRANCH=none
BUG=b:214423235
TEST=make buildall -j
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I89da8915cd5a467975cd8f90e734ea2b11f18cb3
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3388065
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Patryk Duda <patrykd@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix potential memory corruption in port check
BUG=b:64477774
BRANCH=none
TEST=none
Signed-off-by: Boris Mittelberg <bmbm@google.com>
Change-Id: Ib1a74f06d3299a1b46514f888dbb250831051d95
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4018210
Reviewed-by: Rob Barnes <robbarnes@google.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To avoid the EC reset signal coming from the H1 breaks the
SOC power rails requirement, we increase the button debounce
time from 30ms to 100ms. This can workaround the power sequence
problem when user follows the recovery guidance in the official
document.
BUG=b:255963865
BRANCH=none
TEST=The device can boot to the recovery mode successfully.
Change-Id: Ifc4c7d9892069124b0cfb05d9799ce38ae0c78cf
Signed-off-by: Zhuohao Lee <zhuohao@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3990092
Tested-by: Matt Wang <matt_wang@compal.corp-partner.google.com>
Reviewed-by: caveh jalali <caveh@chromium.org>
Commit-Queue: Randy Wang <ifanw@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The EC code has generally been good about adding comments about
intentional fallthrough in switch statements, but there were a few cases
without comments (e.g., https://crrev.com/c/3949622). Enabling
-Wimplicit-fallthrough generates a compiler warning if the fallthrough
is not annotated with __attribute__((fallthrough)). For convenience, we
add a "__fallthrough" macro for this attribute.
See https://clang.llvm.org/docs/AttributeReference.html#fallthrough and
https://gcc.gnu.org/onlinedocs/gcc/Statement-Attributes.html.
BRANCH=none
BUG=b:253644823
TEST=make buildall
LOW_COVERAGE_REASON=legacy code
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I9f4d6049f4507a25ce706675d159b70e28b4b825
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3957420
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building with clang it warns:
baseboard/intelrvp/adlrvp.c:235:23: error: implicit conversion from
enumeration type 'enum ioex_signal' to different enumeration type 'enum
gpio_signal' [-Werror,-Wenum-conversion]
.retimer_rst_gpio = IOEX_USB_C3_BB_RETIMER_RST,
^~~~~~~~~~~~~~~~~~~~~~~~~~
baseboard/intelrvp/adlrvp.c:236:21: error: implicit conversion from
enumeration type 'enum ioex_signal' to different enumeration type 'enum
gpio_signal' [-Werror,-Wenum-conversion]
.usb_ls_en_gpio = IOEX_USB_C3_BB_RETIMER_LS_EN,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
baseboard/intelrvp/adlrvp.c:310:44: error: implicit conversion from
enumeration type 'const enum gpio_signal' to different enumeration type
'enum ioex_signal' [-Werror,-Wenum-conversion]
ioex_set_level(bb_controls[me->usb_port].usb_ls_en_gpio, 1);
~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
baseboard/intelrvp/adlrvp.c:319:44: error: implicit conversion from
enumeration type 'const enum gpio_signal' to different enumeration type
'enum ioex_signal' [-Werror,-Wenum-conversion]
ioex_set_level(bb_controls[me->usb_port].retimer_rst_gpio, 1);
~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
BRANCH=none
BUG=b:172020503
TEST=./util/compare_build.sh -b all -j 120
=> MATCH
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I5ba7821d47b07a14925274fadbfaf963d061a4b6
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3953253
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before (homestar):
RO: 5376 bytes in flash and 28448 bytes in RAM still available
RW: 5536 bytes in flash and 28448 bytes in RAM still available
After (homestar):
RO: 16272 bytes in flash and 28832 bytes in RAM still available
RW: 16428 bytes in flash and 28832 bytes in RAM still available
BRANCH=none
BUG=b:172020503
TEST=make buildall
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I48613449cab4977c59a47d98255e0ab683a46fbf
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3952909
Reviewed-by: Denis Brockus <dbrockus@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
clang warns:
error: initializer element is not a compile-time constant
There is an upstream LLVM review with proposed fix:
https://reviews.llvm.org/D76096.
In the meantime, we will work around it.
BRANCH=none
BUG=b:172020503, b:202062363
TEST=./util/compare_build.sh -b all -j 120
=> MATCH
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: If48c7bd9544c0fae0a889693122673016e1ba183
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3953254
Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's always enabled in the core/<core>/core_config.h files. The
following script demonstrates that it's enabled in all boards:
for board in `make print-boards`; do
make print-configs board="${board}" | grep -q CONFIG_SOFTWARE_PANIC
if [ $? -ne 0 ]; then
echo "${board} failed"
exit 1
fi
done
BRANCH=none
BUG=none
TEST=make buildall
Cq-Depend: chromium:3943248
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: If683b244f17b48bedf3699f2b24e83b5ad6e849e
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3933255
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Setting the DRP state as PD_DRP_TOGGLE_OFF in RVP as part
of CL:3690048 had an impact for bus powered devices like
pendrive to go undectected. As default pd state is sink, self
powered devices like TBT/USB4 didnot have any issue in detection.
Selecting the default DRP state as SOURCE, would ensure that any
device(both source and sink based) connected on typec port would
starts as source and gets detected fine.
BUG=None
BRANCH=None
TEST=Verify on bus powered and self powered devices on RVP
Verified both hotpluggin and coldboot scenario of both bus powered
(pendrive, DP dongle) and self powered devices(TBT, USB4) on all ports.
In NDA case, all ports entering low power mode as well.
ex:
Pendrive on P0:
pd 0 state
Port C0 CC1, Enable - Role: SRC-DFP-VC TC State: Attached.SRC, Flags:
0x8011 PE State: PE_SRC_Disabled, Flags: 0x1000000
TBT on P1:
pd 1 state
Port C1 CC1, Enable - Role: SNK-DFP-VC TC State: Attached.SNK, Flags:
0x9001 PE State: PE_SNK_Ready, Flags: 0x0201
NDA:
pd 2 state
Port C2 CC1, Disable - Role: SRC-UFP TC State: LowPowerMode, Flags:
0x0010 PE State:, Flags: 0x8400000
Signed-off-by: poornima tom <poornima.tom@intel.com>
Change-Id: I465ff23377058a35a545015c192f804414c57534
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3855157
Tested-by: Poornima Tom <poornima.tom@intel.corp-partner.google.com>
Reviewed-by: Diana Z <dzigterman@chromium.org>
Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for the PS8818 in the shim so it can be configured using the
devicetree. Note that all of the PS8818's include file is "public" in
that boards regularly manipulate the registers directly rather than
through well-formed APIs.
BRANCH=None
BUG=b:244457125
TEST=zmake build skyrim
Signed-off-by: Diana Z <dzigterman@chromium.org>
Change-Id: Ia182ca5617d312db2acb8fb7680a7847a3a7ecb8
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905887
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only build Thunderbolt UFP config for boards that support Thunderbolt.
Reduce code size and avoid linker errors.
BUG=b:244467636
TEST=make buildall
BRANCH=none
Signed-off-by: Abe Levkoy <alevkoy@chromium.org>
Change-Id: Ia6bf6785cc2def57cbcd65eeb25565a15a5c1484
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3887966
Reviewed-by: Zhuohao Lee <zhuohao@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only build Thunderbolt UFP config for boards that support Thunderbolt.
Reduce code size and avoid linker errors.
BUG=b:244467636
TEST=make buildall
BRANCH=none
Signed-off-by: Abe Levkoy <alevkoy@chromium.org>
Change-Id: I9d78c527ee35501add7d0e8ab3974647f1e4d9a7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3887965
Reviewed-by: Boris Mittelberg <bmbm@google.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only build Thunderbolt UFP config for boards that support Thunderbolt.
Reduce code size and avoid linker errors.
BUG=b:244467636
TEST=make buildall
BRANCH=none
Signed-off-by: Abe Levkoy <alevkoy@chromium.org>
Change-Id: I31b6ff121663a73e46e1eddace59dbb14140ef55
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3887964
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update goroh board to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: I978b1174f8ab2f3274c242c460243c5d97067496
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3780408
Tested-by: Tomasz Michalec <tmichalec@google.com>
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update octopus board to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: If009199437a2aa980fea5bfce82ba0753aad75c7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3780399
Reviewed-by: Keith Short <keithshort@chromium.org>
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
Tested-by: Tomasz Michalec <tmichalec@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update kalista board to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: I36deb3491d71c13221539878d3331196b1c887a7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3780398
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
Tested-by: Tomasz Michalec <tmichalec@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update guybrush board to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: I57dba5ee02a9ed68df848fb1ff1e307ad128fc89
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3780397
Tested-by: Tomasz Michalec <tmichalec@google.com>
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update grunt board to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: I2fdb031b6c5e41cd7cb0183e5835f62bd4d72018
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3779635
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
Tested-by: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update asurada boards to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: I5a75f017a006137721d39162fcd44a1b0dcfc372
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3779626
Tested-by: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update brya boards to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: Ibfce1a895db0b179672f26cdf2c27b7168bf8985
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3779625
Tested-by: Tomasz Michalec <tmichalec@google.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update zork boards to use new struct usb_mux_chain.
BUG=b:236274003
TEST=make buildall
BRANCH=None
Cq-Depend: chromium:3748785
Signed-off-by: Tomasz Michalec <tm@semihalf.com>
Change-Id: I0ce3899148a8b5e9bc95abbc929adb63f27f42fc
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3779619
Commit-Queue: Tomasz Michalec <tmichalec@google.com>
Tested-by: Tomasz Michalec <tmichalec@google.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename ESPI additional configs to match the name of base config
that selects ESPI as HOST_INTERFACE.
BUG=b:195416058
BRANCH=main
TEST=zmake testall && make buildall
Change-Id: I137449a1a58b1ea0d9794ebc0900e1b68413819d
Signed-off-by: Michał Barnaś <mb@semihalf.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3291744
Reviewed-by: Sam Hurst <shurst@google.com>
Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
|