summaryrefslogtreecommitdiff
path: root/zephyr
Commit message (Collapse)AuthorAgeFilesLines
* zephyr: Test 100% of reachable code in vboot/efs2Jeremy Bettis2022-09-211-11/+96
| | | | | | | | | | | | | | | | | | | | Add test cases to test 100% of reachable code in common/vboot/efs2.c. I really tried to make uart_shell_stop() fail, but all possible error conditions also either make logging raise an assert or cause the test to hang forever. BRANCH=None BUG=None TEST=./twister Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I259acb13d541dd41c7d2c9f5a1080bd4e77c200c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3906618 Tested-by: Jeremy Bettis <jbettis@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Tomasz Michalec <tmichalec@google.com> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
* Winterhold: Remove board usbc_configDiana Z2022-09-212-403/+2
| | | | | | | | | | | | | | | | | Now that all mux and PPC functions have been broken out, the contents of usbc_config.c are now redundant with the skyrim copy. Remove this extra copy to reduce the amount of board c code. LOW_COVERAGE_REASON=Skyrim board tests not created yet: b/247151116 BRANCH=None BUG=b:244457125 TEST=zmake build winterhold Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Id0c6ed45a20f6ee0fa4a48ef4fb999f6709220f7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905891 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Robert Zieba <robertzieba@google.com>
* Skyrim: Move USB mux functions to board codeDiana Z2022-09-219-256/+435
| | | | | | | | | | | | | | | | | | Move functions which are setting USB mux parameters into board functions, as the tuning for each port will be sensitive to the board layout. Also, re-name mux set functions to reflect that they're no longer in the equivalent of baseboard code. LOW_COVERAGE_REASON=Skyrim board tests not created yet: b/247151116 BRANCH=None BUG=b:244457125 TEST=zmake build skyrim and variants Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I03ef85d409db5b49dae2646916e9652d04d0f2af Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905890 Reviewed-by: Robert Zieba <robertzieba@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* Skyrim: Move PPC control to board codeDiana Z2022-09-217-49/+123
| | | | | | | | | | | | | | | | | Not all boards are using the AOZ PPC, so move its control function into a specific PPC board file. Also move the PPC interrupt function to board code. LOW_COVERAGE_REASON=Skyrim board tests not created yet: b/247151116 BRANCH=None BUG=b:244457125 TEST=zmake build skyrim and morthal Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I93d24ddeaa61706c8d02e7e8ad099f4d904ae90c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905889 Reviewed-by: Robert Zieba <robertzieba@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* Craask: Fw_config bit9 to describe clamshell/convertibleSue Chen2022-09-213-0/+41
| | | | | | | | | | | | | | | | FW_CONFIG bit9 0: Convertible 1: Clamshell BUG=none BRANCH=none TEST=set fw_config bit9=1 can disable motion sense. Signed-off-by: Sue Chen <sue.chen@quanta.corp-partner.google.com> Change-Id: I9e29a901e3f5c647c561bada31b03f1f3f20332d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3906511 Code-Coverage: Andrew McRae <amcrae@google.com> Reviewed-by: Andrew McRae <amcrae@google.com>
* nereid: Use low power clock for keyboard b/l PWMAndrew McRae2022-09-213-3/+15
| | | | | | | | | | | | | | | Use low power clock for the keyboard backlight PWM so that the keyboard backlight does not flicker when using battery. BUG=b:247919980 TEST=zmake build yaviks; flash and check keyboard BRANCH=none Signed-off-by: Andrew McRae <amcrae@google.com> Change-Id: Ic76b433c1d02775c06af0827a6da17155b42538b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3906516 Reviewed-by: Peter Marheine <pmarheine@chromium.org>
* nissa: Invert the USB-A limit selectAndrew McRae2022-09-211-0/+1
| | | | | | | | | | | | | | | | | | | | | The output ilimit select should be inverted so that the EC output is 1 when current limiting is enabled (SDP), and 0 when current limiting is disabled (CDP). The default mode is CDP (charging downstream port), and internally the EC assumes that setting an ilimit of 1 will enable the higher current, so this value needs to be inverted before setting the GPIO output. BUG=b:246504619 TEST=zmake build nivviks; gpioget usb_a0_ilimit_sdp BRANCH=none Signed-off-by: Andrew McRae <amcrae@google.com> Change-Id: Ieb56ded563f61f0c41d280e7cf65bbc534e6fd50 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3904720 Commit-Queue: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Peter Marheine <pmarheine@chromium.org>
* ec: Shim PLATFORM_EC_CPS8100Derek Huang2022-09-212-0/+7
| | | | | | | | | | | | | | Shim CONFIG_PLATFORM_EC_CPS8100 in zephyr to CONFIG_CPS8100 in legacy ec. BRANCH=None BUG=b:239783274 TEST=make -j40 buildall && util/run_tests.sh Change-Id: I15e2009b810102caaee54d59c48015a34a979f49 Signed-off-by: Derek Huang <derekhuang@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905451 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* test: virtual_battery: Manufacture Info SB ext cmdAaron Massey2022-09-214-3/+21
| | | | | | | | | | | | | | | Verify the virtual_battery code appropriately responds to a manufacture info extended smart battery spec command. BRANCH=none BUG=b:246652125 TEST=./twister --clobber -i -s zephyr/test/drivers/drivers.default Signed-off-by: Aaron Massey <aaronmassey@google.com> Change-Id: Ibc316a052b26364110b7b8a3712af1ce466cc8f4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905884 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* Skyrim: Convert muxes to devicetreeDiana Z2022-09-206-116/+114
| | | | | | | | | | | | | | | | Move the existing mux arrays into devicetree. LOW_COVERAGE_REASON=Skyrim board tests not created yet: b/247151116 BRANCH=None BUG=b:244457125 TEST=zmake build skyrim and variants, load onto skyrim and confirm ports work as well as before Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I27dd8fa1882460d4d6bad88852ee93bb555ec9dd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905888 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* Zephyr: Remove default anx7483 board setDiana Z2022-09-204-7/+9
| | | | | | | | | | | | | | Remove the default declaration of board_set, as boards may need their own tuning in addition to the default tuning. BRANCH=None BUG=b:244457125 TEST=zmake build affected boards Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Iedacdfb92417076841fd3c1c0178653c0a58cc60 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905900 Reviewed-by: Andrew McRae <amcrae@google.com>
* Zephyr: Add shim support for PS8818Diana Z2022-09-205-2/+34
| | | | | | | | | | | | | | | | | 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>
* test: Verify uncovered common OCP routinesAaron Massey2022-09-205-0/+77
| | | | | | | | | | | | | | | | Verify adding/clearing over-current events flag the port latched off state appropriately and that usbc_ocp common code routines with bad port arguments return appropriately. BRANCH=none BUG=b:247635955 TEST=twister --clobber -i -s zephyr/test/drivers/drivers.usbc_ocp Signed-off-by: Aaron Massey <aaronmassey@google.com> Change-Id: I7519867aebf24eb28965b32b3b78b313427a1af6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3908152 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Al Semjonovs <asemjonovs@google.com>
* test: Rest of standard SBS virtual_battery cmdsAaron Massey2022-09-203-8/+26
| | | | | | | | | | | | | | | | | | | | | Some of the SBS read commands had not been tested via the virtual battery interface. Verify read commands for: Battery Status Design Voltage Manufacturer Data BRANCH=none BUG=b:246652125 TEST=./twister --clobber -i -s zephyr/test/drivers/drivers.default Signed-off-by: Aaron Massey <aaronmassey@google.com> Change-Id: Iaeecf912dc965ee2479e42fd7a2650f011af2dc6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3902457 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Wai-Hong Tam <waihong@google.com>
* test: Replace magic number in virtual_battery.cAaron Massey2022-09-201-3/+5
| | | | | | | | | | | | | | | | | | | The number "32" is a parameter in multiple zassert invocations in the virtual battery test. Although this number isn't entirely magic, it may make tests brittle when asserting against a new version of the smart battery specification that doesn't use 32 bit size values. Replace these values with a defined constant in battery.h BRANCH=none BUG=b:246652125 TEST=./twister --clobber -i -s zephyr/test/drivers/drivers.default Signed-off-by: Aaron Massey <aaronmassey@google.com> Change-Id: I8d85ca7e4d42320559e4631b853a6db30b1aa000 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3902456 Reviewed-by: Jeremy Bettis <jbettis@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: test: Test `kblight` console commandTristan Honscheid2022-09-201-0/+53
| | | | | | | | | | | | | | | Test the above console command in `common/keyboard_backlight.c` BRANCH=None BUG=b:246577858 TEST=./twister Signed-off-by: Tristan Honscheid <honscheid@google.com> Change-Id: Ic1d23c08f9a91fd7812e50f053aa5a8d79af2c5f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3892156 Commit-Queue: Tomasz Michalec <tmichalec@google.com> Reviewed-by: Tomasz Michalec <tmichalec@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* Zephyr: Add AMD FP6 mux driver to shimDiana Z2022-09-203-1/+33
| | | | | | | | | | | | | | Add the AMD FP6 mux driver into the shim so boards may use devicetree to set up this mux. BRANCH=None BUG=b:244457125 TEST=zmake build skyrim Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I15b74a73c31d9d54597382cb34c5b45e98c20c55 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905886 Reviewed-by: Keith Short <keithshort@chromium.org>
* Skyrim: Fold SBU protection into mux board_setDiana Z2022-09-203-110/+64
| | | | | | | | | | | | | | | | | | | Since the SBU protection chip isn't a true mux, fold it into the board_set for the actual muxes. LOW_COVERAGE_REASON=Skyrim board tests not created yet: b/247151116 BRANCH=None BUG=b:244457125 TEST=zmake build skyrim; verify SBU polarity is set correctly on both ports Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I96744fef11c9fc0044b97b2fe39f588b89e80e43 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3880672 Commit-Queue: Robert Zieba <robertzieba@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Robert Zieba <robertzieba@google.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* test: fix warningsYuval Peress2022-09-206-8/+24
| | | | | | | | | | | | BRANCH=none BUG=none TEST=twister Signed-off-by: Yuval Peress <peress@google.com> Change-Id: Ib330e1cac7fa2439ee133292f310d9289da86201 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3893084 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: rework temperature sensorsDawid Niedzwiecki2022-09-2037-548/+737
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Rework how the temperature sensors are presented in dts files. A temperature sensor has to be declared independently from the named-temp-sensors node. The sensor nodes have to specify all properties that are handled by driver- i2c port/address, used adc channel etc. Children nodes of the named-temp-sensors set meta values needed for EC code like enum-names, power-good-pin and temperature thresholds. Also, every child node has a pointer to a physical temperature sensor. It implicates a different way of indexing the temperature sensors. This change is done to separate defining physical sensors from metadata for EC application and move some sensors onto i2c buses BUG=b:240619570 TEST=zmake build -a && ./twister -T zephyr/test/ && make sure temperature sensors work with the "temps" EC CC BRANCH=main Signed-off-by: Dawid Niedzwiecki <dn@semihalf.com> Change-Id: Ia0dfc0b98455e8e28233c17d5feff27a7cc5b96d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3879364 Commit-Queue: Dawid Niedzwiecki <dawidn@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Keith Short <keithshort@chromium.org>
* TCPMv2: Add PD suspend/resume console commandsCaveh Jalali2022-09-201-0/+19
| | | | | | | | | | | | | | BUG=b:240458902 BRANCH=none TEST="pd 2 suspend ; pd 2 resume" suspend/resume port 'make buildall' passes './twister -v -T zephyr/test' passes Change-Id: I83b50798e211ceccf088555d28d5b094e5e77aa2 Signed-off-by: Caveh Jalali <caveh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3860648 Reviewed-by: Diana Z <dzigterman@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* nissa: split SoC kconfigs into top-level filesPeter Marheine2022-09-2010-316/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This means we don't need to duplicate a lot of options for every board using the same chip, which is error-prone and difficult to update. Config changes that are made: * USB FRS is enabled on all RAA489000 boards (from pujjo) * Shell RX ring buffer is uniformly 256 bytes on NPCX * FPU is enabled on yaviks (matching other ITE boards) BUG=none TEST=No unexpected diff in generated zephyr configs: BOARDS=(nivviks nereid craask pujjo xivu joxer yaviks) git checkout m/main; zmake build ${BOARDS[@]} for b in ${BOARDS[@]}; do cp build/zephyr/$b/build-rw/zephyr/.config $b.config done git checkout HEAD for b in ${BOARDS[@]}; do diff -u build/zephyr/$b/build-rw/zephyr/.config $b.config done BRANCH=none Signed-off-by: Peter Marheine <pmarheine@chromium.org> Change-Id: I93d0dbc4465c1c2c63b86e40856deafabfde3101 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905592 Reviewed-by: Andrew McRae <amcrae@google.com>
* zephyr: emul_rt9490: fix incorrect multibyte IO implementationTing Shen2022-09-201-4/+6
| | | | | | | | | | | | | | | | | | | | When performing multibyte IO, the `reg` parameter means the first byte of this IO operation, it won't increase during consecutive read/write operations. The actual byte to access is offsetted by the `bytes` parameter. BUG=none TEST=pass all tests BRANCH=none Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: I15c046fcfb8dbcc05f260bd929da32b7d86a3c90 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3896554 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@google.com>
* tentacruel : Modify port 0 ppc config condition.jeffrey2022-09-201-5/+4
| | | | | | | | | | | | | | | | Modify port 0 ppc config condition. BUG=b:238263725 TEST=zmake build tentacruel --clobber BRANCH=None LOW_COVERAGE_REASON=krabby board test under development(b/243841599) Signed-off-by: jeffrey <jeffrey_lin@pegatron.corp-partner.google.com> Change-Id: I66a540e71695e0b6b9ad7d14d625e74fa172d756 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3905593 Code-Coverage: Ting Shen <phoenixshen@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* evoker: Change lid accel sensor to BMA422Yu-An Chen2022-09-202-11/+14
| | | | | | | | | | | | | | | Change lid accel sensor to BMA422 Update Rotation matrix BUG=b:238571776 BRANCH=none TEST=check sensor working via ‘accelinfo on’ Signed-off-by: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com> Change-Id: Ic3ee762c5a933ce14904ca14c0f8a5ae5a360510 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3903931 Reviewed-by: Sam Hurst <shurst@google.com> Reviewed-by: Bob Moragues <moragues@chromium.org>
* zephyr: Kconfig: Add data reset configLi Feng2022-09-201-0/+5
| | | | | | | | | | | | | | | | | PLATFORM_EC_USB_PD_DATA_RESET_MSG is defined in Kconfig.pd, but it's not included in shim/include/config_chip.h. So it won't take effect even set CONFIG_PLATFORM_EC_USB_PD_DATA_RESET_MSG=y. Add this config to shim to enable data reset. BUG=b:247192444 BRANCH=None TEST=zmake build -a Signed-off-by: Li Feng <li1.feng@intel.com> Change-Id: I73f0b04994813a33bce7e093db9b78a3e238e411 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3902610 Reviewed-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com>
* evoker: Remove TCS3400 Light sensorYu-An Chen2022-09-203-8/+149
| | | | | | | | | | | | | | Remove TCS3400 Light sensor BUG=b:238571776 BRANCH=none TEST=zmake build evoker Signed-off-by: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com> Change-Id: Ibe307307bc331373b9f469f7d2430098db6fdf30 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3897920 Commit-Queue: Sam Hurst <shurst@google.com> Reviewed-by: Sam Hurst <shurst@google.com>
* herobrine: Wait negotiated VBUS transition before enabling 5V railWai-Hong Tam2022-09-2010-0/+251
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previous, the PP5000 is enabled at GPIO init. In the dead battery case, enabling PP5000 overloads the battery charger at the initial 5V 500mA supply. We want to defer it until the PD negotiated VBUS transition, so the battery charger won't be overloaded. A window of PD negotiation is created. It starts from the Type-C state reaching Attached.SNK, and eneds when the PD contract is created. The VBUS may be raised anytime in this window. The current implementation is the worst case scenario. Every message the PD negotiation is received at the last moment before timeout. The extra time is added to compensate the delay internally, like the decision of the DPM. The unit tests are added. BRANCH=None BUG=b:215726554 TEST=Booted the Herobrine board with no-battery. The 5V rail got delayed. Change-Id: I5529762de3495e4cb6702e887bf6ee09d1711f14 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3501013 Reviewed-by: Sam Hurst <shurst@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: tests: Test host command EC_CMD_PWM_GET_KEYBOARD_BACKLIGHTTristan Honscheid2022-09-191-0/+21
| | | | | | | | | | | | | | | Test the EC_CMD_PWM_GET_KEYBOARD_BACKLIGHT host command in `common/keyboard_backlight.c` BRANCH=None BUG=b:246577858 TEST=./twister Signed-off-by: Tristan Honscheid <honscheid@google.com> Change-Id: I481d6705aa1e63df4dbf35f12626a53fd5b734b8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3892155 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* zephyr: tests: Delay post-main tests until hooks finishTristan Honscheid2022-09-191-0/+28
| | | | | | | | | | | | | | | | | | | Add a semaphore mechanism to test_main() that delays execution of the post-main tests until the last `HOOK_CHIPSET_STARTUP` hook has completed. This allows certain drivers to finish initializing before tests run, eliminating a pesky race condition. This only affects tests under `zephyr/test/drivers` BRANCH=None BUG=None TEST=./twister -T zephyr/test/drivers Signed-off-by: Tristan Honscheid <honscheid@google.com> Change-Id: I2f79cb2bde7d3c1326070992a03d3b556774e3a7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3892153 Reviewed-by: Abe Levkoy <alevkoy@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
* zephyr: mchp: Add switches in cros_system_xec.cmartin yan2022-09-191-0/+10
| | | | | | | | | | | | | | | Add switches to support different and flexible project configurations. For example, CONFIG_PLATFORM_EC_KEYBOARD_DISCRETE is used but not CONFIG_CROS_KB_RAW_XEC is used in Meteor Lake RVP projects. BUG=none BRANCH=main TEST=zmake build -a Signed-off-by: martin yan <martin.yan@microchip.corp-partner.google.com> Change-Id: Ia0196068f6d240d8106647c8dfc361f601184168 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3904926 Reviewed-by: Al Semjonovs <asemjonovs@google.com>
* pujjo: Use SSFC bit 2-3 value to identify lid sensorstabilize-15129.B-mainarthur.lin2022-09-193-0/+53
| | | | | | | | | | | | | | | | | Use SSFC bit 2-3 value to identify lid sensor. 0: bma422 1: lis2dwl BUG=b:236922025 BRANCH=none TEST=zmake build pujjo TEST=can read raw data from bma422 after setting ssfc=0x00 TEST=can read raw data from lis2dwl after setting ssfc=0x04 Signed-off-by: arthur.lin <arthur.lin@lcfc.corp-partner.google.com> Change-Id: I9a0668407e2f770d21d7d8aab1cec717aa1074ee Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3901914 Reviewed-by: Andrew McRae <amcrae@google.com>
* tentacruel : Modify typec port 0 configjeffrey2022-09-197-9/+260
| | | | | | | | | | | | | | | | | | Modify port 0 ppc config to syv682 and bc12 config to pi3usb9201. BUG=b:238263725 TEST=zmake build tentacruel --clobber check port 0 can work normally. BRANCH=None LOW_COVERAGE_REASON=krabby board test under developement(b/243841599) Signed-off-by: jeffrey <jeffrey_lin@pegatron.corp-partner.google.com> Change-Id: I0b183783e93090b2247e01c18ebc72b6180eb753 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3897911 Code-Coverage: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Chen-Tsung Hsieh <chentsung@chromium.org> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* nissa/ite: Set maximum sensor frequency to 100Hz.Sam McNally2022-09-193-0/+3
| | | | | | | | | | | | BUG=b:238597720 TEST=x86 CtsSensorTestCases can pass on nereid BRANCH=none Signed-off-by: Sam McNally <sammc@chromium.org> Change-Id: Ica8304be047ccd9bef78d8b417698672df5fdcbe Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3899958 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Commit-Queue: Peter Marheine <pmarheine@chromium.org>
* pujjo: Use SSFC bit 0-1 value to identify base sensor.jimmy.wu2022-09-196-2/+120
| | | | | | | | | | | | | | | | | | 0: bmi323 1: lsm6dsm BUG=b:235866642 BRANCH=none TEST=zmake build pujjo TEST=can read raw data from bmi323 after setting ssfc=0x00 TEST=can read raw data from lsm6dsm after setting ssfc=0x01 Signed-off-by: jimmy.wu <jimmy.wu@lcfc.corp-partner.google.com> Change-Id: I668317cde8b0431ae4b454ca28e3f0d644bb8d8c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3881429 Reviewed-by: Andrew McRae <amcrae@google.com> Reviewed-by: Peter Marheine <pmarheine@chromium.org> Code-Coverage: Andrew McRae <amcrae@google.com>
* zephyr: add initial shim for lsm6dsm sensoramber.chen2022-09-199-0/+140
| | | | | | | | | | | | | | | | | Add initial shim for the lsm6dsm accel/gryo sensor BUG=none BRANCH=none TEST=zmake build pujjo Signed-off-by: amber.chen <amber.chen@lcfc.corp-partner.google.com> Change-Id: Ib1ab863bedd2575dfafcbfc1c49c54afe46a7c2c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3865215 Reviewed-by: Andrew McRae <amcrae@google.com> Commit-Queue: Andrew McRae <amcrae@google.com> Code-Coverage: Andrew McRae <amcrae@google.com> Tested-by: Andrew McRae <amcrae@google.com> Reviewed-by: Peter Marheine <pmarheine@chromium.org>
* intelrvp: enable more console command featuresLi Feng2022-09-182-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | Set configs for console commands history, auto complete, help. BUG=none BRANCH=none TEST=on MTL RVP console, type help, will get ec:~$ help Please press the <Tab> button to see all available commands. You can also use the <Tab> button to prompt or auto-complete all commands or its subcommands. You can try to call commands with <-h> or <--help> parameter for more information. Available commands: 8042 :Print 8042 state in one place adc :Print ADC channel(s) apreset ... Signed-off-by: Li Feng <li1.feng@intel.com> Change-Id: Ibf4dcd67c20e1137d112442b00294dd99745a72e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3877940 Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Fabio Baltieri <fabiobaltieri@google.com>
* zephyr: tests: Test Host command EC_CMD_PWM_SET_KEYBOARD_BACKLIGHTTristan Honscheid2022-09-162-0/+61
| | | | | | | | | | | | | | Test the above host command in `common/keyboard_backlight.c` BRANCH=None BUG=b:246577858 TEST=./twister Signed-off-by: Tristan Honscheid <honscheid@google.com> Change-Id: I4f5c6074bddd4ec78919794cc02a98ed2faa4638 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3893396 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Yuval Peress <peress@google.com>
* Skyrim: Create i2c dtsi fileDiana Z2022-09-165-1/+6
| | | | | | | | | | | | | | | Move the i2c common code into a dtsi file which the variants may include in their own dts files. BRANCH=None BUG=b:244457125 TEST=zmake build skyrim and variants Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I1b48e21c76fff8bd1f4db127aea4da2bf936c1e9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3902646 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* zephyr: pwm_mock: Add support for PWM flags to mock PWM driverTristan Honscheid2022-09-166-10/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The upstream Zephyr PWM API supports passing extra flags to control PWM polarity and this feature is used in our keyboard backlight PWM driver. However, our internal PWM mock/emul doesn't support specifying flags in the device tree. This CL adds support for this. * Add a "flags" cell to cros,pwm-mock * Update references in the device tree to pass the default flag of PWM_POLARITY_NORMAL. Since this only affects the PWM mock, this was limited in scope to our test code, specifically `zephyr/test/drivers/boards/native_posix.overlay` * Update the PWM mock to store the passed flags in its state struct and add a getter function. To make use of the updated PWM mock for an upcoming test suite covering `common/keyboard_backlight.c`, I also: * Add a keyboard backlight driver to the device tree * Enable CONFIG_PWM_MOCK for all driver tests, as required by the above backlight driver. BRANCH=None BUG=None TEST=./twister LOW_COVERAGE_REASON=Minor upgrade (~6 SLOC) to an emulator Signed-off-by: Tristan Honscheid <honscheid@google.com> Change-Id: I6abb6aba8b7ab4f2185c2ef28868767f95f79af2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3893395 Reviewed-by: Keith Short <keithshort@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Code-Coverage: Jeremy Bettis <jbettis@chromium.org>
* Zephyr: Set default eSPI log level to errorDiana Z2022-09-163-2/+5
| | | | | | | | | | | | | | | The eSPI shim can be quite chatty, so default it to the error level on all boards. BRANCH=None BUG=None TEST=CQ+1 pass, boot on skyrim and observe no "KB put" info prints Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Iaf9c3805a2f657e525f09cf591563395c6358c87 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3902030 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* zephyr: tests: Test host command EC_CMD_MKBP_INFO (mkbp_info.c)Tristan Honscheid2022-09-166-9/+284
| | | | | | | | | | | | | | | | | | | | | * Move a utility function in to a common source to share it between tests * Add a missing header to the KB emul header * Expose two functions to access button and switch capabilities * Reset KB emul after the keyboard scan tests since they left some keys pressed down. * Fix period in copyright headers because the presubmit hooks made me. * Test all of the branches of the EC_CMD_MKBP_INFO host command BRANCH=None BUG=b:236075259 TEST=./twister Signed-off-by: Tristan Honscheid <honscheid@google.com> Change-Id: I99110a5cff066bea366fce28d2a9a92811608c56 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3893389 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: tests: Test force_mkbp_if_events() in mkbp_event.cTristan Honscheid2022-09-162-4/+94
| | | | | | | | | | | | | | | Test the scenario where the AP does not respond to the interrupt indicating MKBP events are available. BRANCH=None BUG=b:245531291 TEST=./twister Signed-off-by: Tristan Honscheid <honscheid@google.com> Change-Id: I81d3da9a01012a6eceb8c001b81296c06626d295 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3891207 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* zephyr: battery shim fix misspellingZick Wei2022-09-161-1/+1
| | | | | | | | | | | | | | | Fix misspelling in battery shim. BUG=b:246504615 BRANCH=none TEST=make sure battery can exit cutoff mode. Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: I473bbef9e27d6ff7d409ea1fe3bec3af0bf3fa05 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3897928 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Devin Lu <devin.lu@quantatw.com> Reviewed-by: Andrew McRae <amcrae@google.com>
* Craask: Volup/dn button exchanged on ver3 USB skuSue Chen2022-09-153-6/+29
| | | | | | | | | | | | | | | | | | | | Set correct GPIO definition of VOLUP/DN_BTN_ODL to meet Craask hardware design. VOLUP_BTN_ODL -> EC GPIOA2 VOLDN_BTN_ODL -> EC GPIO93 Volup/dn button exchanged on ver3 USB sub board. BUG=none BRANCH=none TEST=Volume up/down button works correct on ver3 DUTs. Signed-off-by: Sue Chen <sue.chen@quanta.corp-partner.google.com> Change-Id: Ic44161ed47778a36dc473789f350250ec3be47ef Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3893308 Code-Coverage: Andrew McRae <amcrae@google.com> Reviewed-by: Andrew McRae <amcrae@google.com> Commit-Queue: Andrew McRae <amcrae@google.com>
* zmake: Remove options for boards or tests onlyJeremy Bettis2022-09-153-37/+3
| | | | | | | | | | | | | | | | Since there are no tests in zmake, no reason to filter by boards or tests only. BRANCH=None BUG=None TEST=CQ Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I628fa87d41d60437bdb1597111da2eb2928b2ada Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3896635 Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Aaron Massey <aaronmassey@google.com> Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
* test: Verify DP mode entry via PD info host cmdsAaron Massey2022-09-151-0/+33
| | | | | | | | | | | | | | | Test that after discovery, the PD info request EC_CMD_PD_SET_AMODE can be used to make the DPM enter DisplayPort alternate mode. BRANCH=none BUG=b:236075275 TEST=twister --clobber -i -s zephyr/test/drivers/drivers.usbc_alt_mode Signed-off-by: Aaron Massey <aaronmassey@google.com> Change-Id: I0fd03a309c2a192589d856d89bb9f77ec1be5aab Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3896636 Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Reviewed-by: Wai-Hong Tam <waihong@google.com>
* evoker: Implement LED behaviorYu-An Chen2022-09-153-175/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | evoker has two leds that are battery led and power led. The led behavior define as following: Power led: S0 - white S3 - white 1 second, off 1 second S5 - off Battery led: Full charge - white Charge - amber Discharge - off Error - red Forced idle - red 1 second, white 1 second BUG=b:243477929 BRANCH=none TEST=zmake build evoker Signed-off-by: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com> Change-Id: I1f6b0c161be7e79596de11b125e8624806406767 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3775798 Reviewed-by: Bob Moragues <moragues@chromium.org> Auto-Submit: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com> Reviewed-by: Sam Hurst <shurst@google.com> Commit-Queue: Sam Hurst <shurst@google.com> Tested-by: Yu-An Chen <yu-an.chen@quanta.corp-partner.google.com>
* zephyr/console: Add console buffer logging backendstabilize-15120.B-mainRob Barnes2022-09-153-0/+80
| | | | | | | | | | | | | | | | | | Add a zephyr logging backend for the console buffer. This allows the AP to access the logs sent to the zephyr logging subsystem. This backend will not run in LOG_MODE_MINIMAL, so it may not be usable for some EC OS projects. BUG=b:243709788 BRANCH=None TEST='ectool console' on Skyrim in immediate and deferred logging mode. Signed-off-by: Rob Barnes <robbarnes@google.com> Change-Id: I24d9ffeb5c90c99982c70ac2bcbdc0f814b45b01 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3853303 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: enable the chargen console command by defaultPeter Marheine2022-09-151-0/+1
| | | | | | | | | | | | | | | | This command is used by some firmware tests, and it should have a very small effect on overall EC image size (but boards can still disable it if needed). BUG=b:246007302 TEST=zmake build --all BRANCH=none Signed-off-by: Peter Marheine <pmarheine@chromium.org> Change-Id: Id15fcd3afe7801fe279ae237e1d238bf22581910 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3897910 Commit-Queue: Al Semjonovs <asemjonovs@google.com> Reviewed-by: Al Semjonovs <asemjonovs@google.com>