summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* zephyr: shim/system: fix APIs of call BBRAM read and writestabilize-14217.B-mainTim Lin2021-09-133-214/+14
| | | | | | | | | | | | | | | | | | | | The APIs of BBRAM read and write have been renamed and moved to drivers/bbram. The related call routines of shim/system.c need to be fixed. BUG=b:195843756 BRANCH=none TEST=the board of asurada and it8xxx2_evb can boot EC and access bbram successfully after adding this CL. zmake testall --> pass Change-Id: I98e51a278a24eeb4bbc92343fe6fc97e3e758e8a Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3153117 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org>
* rammus: Add accelerometer 2nd source KX022.Michael5 Chen12021-09-115-2/+116
| | | | | | | | | | | | | | | | Add accelerometer 2nd source KX022. BUG=b:197005105 BRANCH=rammus TEST=make BOARD=rammus Using command "watch ectool motionsense lid_angle". Signed-off-by: Michael5 Chen1 <michael5_chen1@pegatron.corp-partner.google.com> Change-Id: Iea7fee7766730a8c054217877abb76facb55976a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3102685 Reviewed-by: Zhuohao Lee <zhuohao@chromium.org> Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Commit-Queue: Zhuohao Lee <zhuohao@chromium.org>
* brya: adjust default ALS calibrationBoris Mittelberg2021-09-111-3/+3
| | | | | | | | | | | | | | | Using non-zero coefficiants for initial ALS array removes the need of manual ALS calibration (ectool motionsense calibrate 3) BRANCH=none BUG=b:195332927 TEST=on brya id 2 the backlight changes depending on ambient light Signed-off-by: Boris Mittelberg <bmbm@google.com> Change-Id: I71932c605db0f8f1c42bc62796b5f25c5eb3cacf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3155296 Reviewed-by: Ruben Rodriguez Buchillon <coconutruben@chromium.org> Commit-Queue: Ruben Rodriguez Buchillon <coconutruben@chromium.org>
* docs/fingerprint: Fix linkTom Hughes2021-09-101-2/+2
| | | | | | | | | | | | | The format tool was assuming the parentheses were a markdown link. BRANCH=none BUG=none TEST=view in gitiles Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: Iea221310e87adaa9fbeaf046d634a57034f142c3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3153630 Reviewed-by: Craig Hesling <hesling@chromium.org>
* zephyr: emul: update EMUL_DEFINE call sitesYuval Peress2021-09-107-27/+28
| | | | | | | | | | | | | | | | Update the call sites of EMUL_DEFINE to include the data pointer. BRANCH=none BUG=none TEST=zmake testall Cq-Depend: chromium:3154404 Signed-off-by: Yuval Peress <peress@chromium.org> Change-Id: Icb1a788a2ffcbdd969c231edb2214447041ed5ca Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3153590 Tested-by: Yuval Peress <peress@google.com> Reviewed-by: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Yuval Peress <peress@google.com>
* zephyr: shim: set pwm_led data from device treeFabio Baltieri2021-09-1010-18/+93
| | | | | | | | | | | | | | | | Set up the pwm_leds data from the device tree, gets rid of most static map defines and sets CONFIG_LED_PWM_COUNT automatically. BRANCH=none BUG=b:177452529 TEST=build and run on volteer TEST=compared the built up pwm_leds structure with gdb Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> Change-Id: Ib41faf86ae018f5a1ed8a1c96c4b6ec081e175d9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3154256 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Yuval Peress <peress@google.com>
* driver: bmi: Merge list_activities in common codeGwendal Grignou2021-09-104-24/+14
| | | | | | | | | | | | | | | | | Put list_activities in common code, as it is used by both BMI160 and BMI260 driver. Fixes cb3771973de ("Coachz: MotionSensor: Avoid redefine gesture function list_activites") Fixes fc298a0ada0 ("driver: bmi260: integrate body detection") BUG=b:195908820 BRANCH=trogdor TEST=buildall Change-Id: I05591954c825802502328c842b03e8934c497f08 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3150056 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* driver: lsm6dso: Fix FIFO processingGwendal Grignou2021-09-102-37/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a loop in irq_handler to match datasheet documentation: """ 1. Read the FIFO_STATUS1 and FIFO_STATUS2 registers to check how many words are stored in the FIFO. This information is contained in the DIFF_FIFO_[9:0] bits. 2. For each word in FIFO, read the FIFO word (tag and output data) and interpret it on the basis of the FIFO tag. 3. Go to step 1. """ We need to read the FIFO length at the end of the IRQ handler to be sure a new item has not been put while the FIFO was being read. Otherwise, we will not get interrupt and will stop processing FIFO when the FIFO status register still shows the FIFO as not empty. However, using linux kernel st_lsm6dsx_read_tagged_fifo() as model, read only one word at a time: When reading 2 7bytes word at time, the FIFO would still claim one entry remains: The 3rd entry would be a copy of the accelerometer data, but with a corrupted z axis.That why we fail the data test, the gravity vector is not measured at 9.81m/s^2. There was a bug in the interrupt handler that would read the FIFO twice, which was presenting the data: both gyro and accel at the same ODR: [7623.475256 Base Accel FIFO status: 8002] [7623.476548 Base Gyro sending vector num: 2 raw: 0x00000007 - 0xFFFFFFF6 - 0xFFFFFFF9] [7623.477526 Base Accel sending vector num: 1 raw: 0xFFFFFFCC - 0xFFFFE275 - 0xFFFFE818] [7623.479271 Base Accel FIFO status: 8001] [7623.480333 Base Accel sending vector num: 1 raw: 0xFFFFFFCC - 0xFFFFE275 - 0x00000C18] [7623.481699 Base Accel FIFO status: 0000] We must only run the irq_hanlder for the main/accelerometer sensor. Restructure irq_hanlder to match other driver, like accelgyro_bm160.c. BUG=b:195700255,b:192219470 BRANCH=dedede TEST=Running tast run <ip> hardware.SensorIioserviceHard Check we get the right amount of samples. Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: I5820dec4c7c5ccb1ebeda854398738d1af60290c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3150679 Reviewed-by: Keith Short <keithshort@chromium.org>
* driver: lsm6dso: Minor macro changesGwendal Grignou2021-09-102-5/+4
| | | | | | | | | | | | | | | | | | Rename LSM6DSO_FIFO_ODR_TO_REG into LSM6DSO_FIFO_ODR_MASK as the macro return the mask to use to set the FIFO ODR. Remove CONFIG_EC_MAX_SENSOR_FREQ_MILLIHZ in code, as already used in LSM6DSO_ODR_MAX_VAL. Simplify LSM6DSO_ST_DATA by using . instead of ->. BUG=none BRANCH=deded TEST=buildall Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: I4253368415635c858ce181f228591e8bf93eacb9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3150678 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Yuval Peress <peress@google.com>
* driver: LSM6DSM: Limit FIFO transfer buffer sizeGwendal Grignou2021-09-101-1/+1
| | | | | | | | | | | | | | | | | The buffer is allocated on the stack. It is currently 32*6 bytes. This is unnecessarily large as we set the FIFO threshold at 1. Reduce it to 8*6 bytes, the gain of long I2C transactions is negligible and we save some space in the stack. BUG=none BRANCH=none TEST=buildall Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: I8b6f9f2bdfe27206d049c1fe0b82df4caaadce09 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3150677 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Yuval Peress <peress@google.com>
* TCPMv2: Separate discovery and mode initAbe Levkoy2021-09-105-10/+34
| | | | | | | | | | | | | Don't clear discovery data when resetting active modes during mode exit. BUG=b:141363146 TEST=make buildall BRANCH=firmware-volteer-13672.B-main Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Change-Id: I8052641bb850ce8486eb9c82641b41880cb97d65 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3123837 Reviewed-by: Diana Z <dzigterman@chromium.org>
* IOEX: it8801: Enable GPIO based interruptsVijay Hiremath2021-09-102-26/+153
| | | | | | | | | | | | | | | | Added code to enable GPIO based interrupts on it8801 I/O Expander. BUG=b:197659347 BRANCH=none TEST=Tested on ADL-RVP able to get ISR triggered Change-Id: I7f5f460f48fc21e51bb93bede5a05da89b7dc807 Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3076469 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Dino Li <Dino.Li@ite.com.tw> Commit-Queue: Keith Short <keithshort@chromium.org>
* it8801: Allow configurable option to use RAW KeyboardVijay Hiremath2021-09-101-1/+3
| | | | | | | | | | | | | | | | | | To avoid BOM stuffing options on RVP, it8801 discrete keyboard with I/O expander is added on RVP as an AIC in MECC1.1. This config allows MECC vendors to easily switch between RAW keyboard or discrete keyboard. BUG=b:197659347 BRANCH=none TEST=make buildall -j Change-Id: I3b55eff0f5a1582daf63fca955954b8a42c1b7b2 Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3115433 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Li Feng <li1.feng@intel.com>
* ioex: it8801: Support multiple I2C addressesVijay Hiremath2021-09-1023-36/+75
| | | | | | | | | | | | | | | | | | | To avoid the I2C address contention between multiple I2C devices on same bus, added code to support multiple I2C addresses for it8801 I/O expander. BUG=none BRANCH=none TEST=make buildall -j Change-Id: I6985973f9ae3ce91383d3b568a851169e6a308af Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3115426 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@google.com> Reviewed-by: Li Feng <li1.feng@intel.com>
* zephyr: driver: bbram: Migrate to upstream driverYuval Peress2021-09-1020-316/+56
| | | | | | | | | | | | | | | | | Migrate the BBRAM driver to the upstream version. BRANCH=none BUG=b:195843756 TEST=zmake testall Cq-Depend: chromium:3147080 Signed-off-by: Yuval Peress <peress@chromium.org> Change-Id: I441e58f94c4874e268aad36df2f036a88187801b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3147230 Tested-by: Yuval Peress <peress@google.com> Reviewed-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Yuval Peress <peress@google.com>
* zephyr: it8xxx2_evb: enable hibernate mode on it8xxx2_evbTim Lin2021-09-101-2/+8
| | | | | | | | | | | | | | | | | | | | | The GPIO interrupts that can be waked up in hibernate mode include GPIO_LID_OPEN and GPIO_POWER_BUTTON_L. BUG=b:198305804 BRANCH=none TEST=test1: console command: hibernate Wake-up GPIO interrupt: GPIO_LID_OPEN and GPIO_POWER_BUTTON_L test pass! test2: console command: hibernate [seconds] [microseconds] After the specified seconds, the EC will wake-up from sleep mode. Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Change-Id: I4069ec13d2681015a66fddf8d52666371da6048a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3146775 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* zephyr: hayato: enable hibernate mode on hayatoTim Lin2021-09-101-3/+10
| | | | | | | | | | | | | | | | | | | | | | The GPIO interrupts that can be waked up in hibernate mode include GPIO_AC_PRESENT, GPIO_LID_OPEN and GPIO_POWER_BUTTON_L. BUG=b:198305804 BRANCH=none TEST=test1: console command: hibernate Wake-up GPIO interrupt: GPIO_AC_PRESENT, GPIO_LID_OPEN and GPIO_POWER_BUTTON_L test pass! test2: console command: hibernate [seconds] [microseconds] After the specified seconds, the EC will wake-up from sleep mode. Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Change-Id: Ibd19f14b3a5e2bf47f8edd9205761333d7b0318f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3146774 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org>
* zephyr: cros_system: add hibernate mode to IT8xxx2 chipsetTim Lin2021-09-101-2/+69
| | | | | | | | | | | | | | | | | Add hibernate function. EC can be waked-up by a specified seconds or GPIO interrupts from sleep mode. BUG=b:198305804 BRANCH=none TEST=zmake testall Cq-Depend: chromium:3093834 Change-Id: I55fbd18b916f343b198c8ba8e5dce1bd592261f6 Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3109273 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* asurada: move the hibernate routine into separate fileTim Lin2021-09-104-23/+39
| | | | | | | | | | | | | | | | | | Move the hibernate routine from baseboard.c to separate hibernate.c files. BUG=b:198305804 BRANCH=none TEST=make BOARD=asurada -j The interrupt of GPIO_AC_PRESENT can wake up CPU in hibernate mode. Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com> Change-Id: I0aea0b812f535c907ac8963fc1f09206dfef5956 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3146773 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* gumboz: remove unused configZick Wei2021-09-101-3/+0
| | | | | | | | | | | | | | BUG=none BRANCH=zork TEST=verify DUT can power on normally. Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: Ic9b7c953a0dda88529e2886ab1fd9e736760bb2d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3151210 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Devin Lu <Devin.Lu@quantatw.com> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* gumboz: update AC power on limitZick Wei2021-09-101-0/+3
| | | | | | | | | | | | | | | | | This patch update AC only power on limit from 50W to 40W, and remove unused config. BUG=b:199254041 BRANCH=zork TEST=make sure AC only can auto power on with 45W adapter. Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: I55b6f2a91b68fd1f2bd287228719f8b9a35ba532 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3147971 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Peter Marheine <pmarheine@chromium.org> Tested-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* zephyr: herobrine_npcx9: adjust ~75% stack sizesDenis Brockus2021-09-101-0/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is still more tuning that needs to happen as development continues but this is an initial stab leaving some values the same as they are for NPCX7 when there was doubt. kernel stacks 21-09-09 12:14:06.481 0x200c0e20 PD_INT_C1 (real size 736): unused 496 usage 240 / 736 (32 %) 21-09-09 12:14:06.487 0x200c0d00 PD_INT_C0 (real size 736): unused 496 usage 240 / 736 (32 %) 21-09-09 12:14:06.493 0x200c0be0 PD_C1 (real size 1184): unused 464 usage 720 / 1184 (60 %) 21-09-09 12:14:06.500 0x200c0ac0 PD_C0 (real size 1184): unused 448 usage 736 / 1184 (62 %) 21-09-09 12:14:06.506 0x200c09a0 KEYSCAN (real size 704): unused 184 usage 520 / 704 (73 %) 21-09-09 12:14:06.513 0x200c0880 HOSTCMD (real size 704): unused 112 usage 592 / 704 (84 %) 21-09-09 12:14:06.519 0x200c0760 MOTIONSENSE (real size 816): unused 244 usage 572 / 816 (70 %) 21-09-09 12:14:06.525 0x200c0640 CHIPSET (real size 688): unused 176 usage 512 / 688 (74 %) 21-09-09 12:14:06.532 0x200c0520 CHARGER (real size 752): unused 192 usage 560 / 752 (74 %) 21-09-09 12:14:06.538 0x200c0400 USB_CHG_P1 (real size 544): unused 144 usage 400 / 544 (73 %) 21-09-09 12:14:06.544 0x200c02e0 USB_CHG_P0 (real size 544): unused 120 usage 424 / 544 (77 %) 21-09-09 12:14:06.551 0x200c01c0 HOOKS (real size 672): unused 448 usage 224 / 672 (33 %) 21-09-09 12:14:06.560 0x200c7a60 sysworkq (real size 800): unused 200 usage 600 / 800 (75 %) 21-09-09 12:14:06.564 0x200c67d0 shell_uart (real size 1536): unused 832 usage 704 / 1536 (45 %) 21-09-09 12:14:06.571 0x200c78f0 idle 00 (real size 192): unused 80 usage 112 / 192 (58 %) 21-09-09 12:14:06.577 0x200c79a8 main (real size 1024): unused 448 usage 576 / 1024 (56 %) 21-09-09 12:14:06.583 0x200cc2c8 IRQ 00 (real size 1024): unused 620 usage 404 / 1024 (39 %) BUG=b:199328071 BRANCH=none TEST=ec console command 'kernel stacks' Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: I47a02a3554e066dda87c91a2335f7e89ab0e4100 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3152316 Tested-by: Denis Brockus <dbrockus@chromium.org> Auto-Submit: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* zephyr:herobrine_npcx9: Enable kernel shell ec commandsDenis Brockus2021-09-101-0/+1
| | | | | | | | | | | | | | BUG=b:199328071 BRANCH=none TEST=ec console command 'kernel' Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: I5ad1686e0a472123180587e2584ad79e29da65dd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3152315 Tested-by: Denis Brockus <dbrockus@chromium.org> Auto-Submit: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* dirinboz: update AC power on limitZick Wei2021-09-091-0/+3
| | | | | | | | | | | | | | | This patch update AC only power on limit from 50W to 40W. BUG=b:199254041 BRANCH=zork TEST=make sure AC only can auto power on with 45W adapter. Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: Ib68acc22016d0906deacd699b13dfd3af74f6c2b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3147970 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Peter Marheine <pmarheine@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* kingoftown: Initial EC imageTommy Chung2021-09-0912-0/+1193
| | | | | | | | | | | | | | | | | | | | Create the initial EC image for the kingoftown variant by copying the trogdor reference board EC files into a new directory named for the variant. (Auto-Generated by create_initial_ec_image.sh version 1.5.0). BUG=b:198365759 BRANCH=firmware-trogdor-13577.B-master TEST=make BOARD=kingoftown Signed-off-by: Tommy Chung <tommy.chung@quanta.corp-partner.google.com> Change-Id: I56b34d317509ed74dac405492be9a035375f36e7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3120609 Reviewed-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-by: Wai-Hong Tam <waihong@google.com> Reviewed-by: Philip Chen <philipchen@chromium.org> Commit-Queue: Philip Chen <philipchen@chromium.org>
* zephyr: asurada: Adjust task stack sizesDenis Brockus2021-09-091-9/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stack sizes should be near 75% usage. kernel stacks 21-09-08 16:07:25.972 0x8010af00 PD_C1 (real size 1024): unused 248 usage 776 / 1024 (75 %) 21-09-08 16:07:25.988 0x8010add8 PD_C0 (real size 1024): unused 272 usage 752 / 1024 (73 %) 21-09-08 16:07:26.000 0x8010acb0 KEYSCAN (real size 928): unused 240 usage 688 / 928 (74 %) 21-09-08 16:07:26.013 0x8010ab88 HOSTCMD (real size 1024): unused 272 usage 752 / 1024 (73 %) 21-09-08 16:07:26.026 0x8010aa60 MOTIONSENSE (real size 928): unused 240 usage 688 / 928 (74 %) 21-09-08 16:07:26.038 0x8010a938 CHIPSET (real size 832): unused 224 usage 608 / 832 (73 %) 21-09-08 16:07:26.051 0x8010a810 CHARGER (real size 960): unused 240 usage 720 / 960 (75 %) 21-09-08 16:07:26.062 0x8010a6e8 USB_CHG_P1 (real size 800): unused 192 usage 608 / 800 (76 %) 21-09-08 16:07:26.075 0x8010a5c0 USB_CHG_P0 (real size 800): unused 272 usage 528 / 800 (66 %) 21-09-08 16:07:26.089 0x8010a498 HOOKS (real size 672): unused 352 usage 320 / 672 (47 %) 21-09-08 16:07:26.100 0x80101a08 sysworkq (real size 1024): unused 288 usage 736 / 1024 (71 %) 21-09-08 16:07:26.112 0x801017c8 shell_uart (real size 1056): unused 244 usage 812 / 1056 (76 %) 21-09-08 16:07:26.125 0x80101888 idle 00 (real size 256): unused 128 usage 128 / 256 (50 %) 21-09-08 16:07:26.137 0x80101948 main (real size 1024): unused 344 usage 680 / 1024 (66 %) 21-09-08 16:07:26.150 0x80109cf0 IRQ 00 (real size 800): unused 296 usage 504 / 800 (63 %) BUG=none BRANCH=none TEST=ec console 'kernal stacks' Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: I69a0767e4694a386dd24c95b162d92aad5cbebc7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3150067 Commit-Queue: Denis Brockus <dbrockus@chromium.org> Tested-by: Denis Brockus <dbrockus@chromium.org> Auto-Submit: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* zephyr: fix compilation of kx022 driverMichał Barnaś2021-09-093-2/+3
| | | | | | | | | | | | | | | Add EC root directory to include directories list and fix include directive in kx022 driver info file. BRANCH=main BUG=b:194424288 TEST=Compilation for lazor should work correctly. Change-Id: I1312b4cac8695e61936b9635c7a59c2f59907502 Signed-off-by: Michał Barnaś <mb@semihalf.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3129961 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* felwinter: not support 4th temp_sensorOwen_Ou2021-09-093-9/+0
| | | | | | | | | | | | | | | | | | felwinter not support 4th temp_sensor. BUG=b:197593632 BRANCH=none TEST=make -j BOARD=felwinter Signed-off-by: Owen_Ou <Owen_Ou@compal.corp-partner.google.com> Change-Id: I7cc2db9e0e267f5368a4d953074decf482da200b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3120607 Tested-by: Owen Ou <owen_ou@compal.corp-partner.google.com> Auto-Submit: Owen Ou <owen_ou@compal.corp-partner.google.com> Reviewed-by: Elmo Lan <elmo_lan@compal.corp-partner.google.com> Reviewed-by: YH Lin <yueherngl@chromium.org> Reviewed-by: Boris Mittelberg <bmbm@google.com> Commit-Queue: Boris Mittelberg <bmbm@google.com>
* Felwinter: modified power and battery LED behaviorJosh Tsai2021-09-094-118/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Power LED (DC/AC): S0: Solid White S3: Blinking White, 1s on / 3s off S5: LED off Battery LED: Charging (0%-94%): Amber Full charged: White Discharging: LED off Battery Error (S0): Blinking Amber, 1s on / 1s off Battery Error (S0ix/S5): LED off Battery Low (S0): Blinking Amnber, 1s on / 3s off Battery Low (S0ix/S5): LED off BUG=b:197593645 BRANCH=brya TEST=make BOARD=felwinter, test on brya MB Signed-off-by: Josh Tsai <josh_tsai@compal.corp-partner.google.com> Change-Id: I478e5fb5de0f1cf8d71a08a919dcbb248a55f8b8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3131956 Reviewed-by: Elmo Lan <elmo_lan@compal.corp-partner.google.com> Reviewed-by: Boris Mittelberg <bmbm@google.com> Commit-Queue: Boris Mittelberg <bmbm@google.com>
* brya: support EC_CMD_BATTERY_GET_STATIC version 1Deepti Deshatty2021-09-091-0/+7
| | | | | | | | | | | | | | | | | ectool battery command returns the battery information correctly but returns an ioctl error as EC_CMD_BATTERY_GET_STATIC do not support version 1. Changes enable the command version 1. BRANCH=none BUG=b:197836974 TEST=Verified ectool battery command on brya. Change-Id: I2b2c4068bce1b5150d089ba08596c1191c189c2b Signed-off-by: Deepti Deshatty <deepti.deshatty@intel.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3120611 Reviewed-by: Boris Mittelberg <bmbm@google.com> Reviewed-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Commit-Queue: Boris Mittelberg <bmbm@google.com>
* tcpm/rt1718s: fix race condition between tcpc_init and usb_chg taskTing Shen2021-09-091-3/+0
| | | | | | | | | | | | | | | | | | | | | Two different functions controls the BC12_SNK_FUNC register, one is bc12_init, another one is usb_charger_task. This causes a racing condition happens during EC soft reset: bc12_init resets the BC12_SNK_FUNC register to its initial value when usb_chg task starts bc1.2 detection. To solve this, let usb_chg task has full control of the register. BUG=b:199226158 TEST=bc1.2 detection works after ec soft reset. BRANCH=none Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: Ie423e2d9ddad1e1fadb97e1b73b8b5e535121601 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3147512 Reviewed-by: Rong Chang <rongchang@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org>
* Reland "dirinboz: remove imu sensors"Zick Wei2021-09-094-131/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of d7d8a72b24ba3f1b5845ac2d1fa61b032a2f5075 Original change's description: > dirinboz: remove imu sensors > > Dirinboz is a clamshell only device, not use imu sensors. > > BUG=b:174240357 > BRANCH=zork > TEST=can power on DUT normally. > > Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> > Change-Id: I56202d92da86b5da2919d3e285ce953f568aad5f > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3017902 > Reviewed-by: Peter Marheine <pmarheine@chromium.org> > Reviewed-by: Devin Lu <Devin.Lu@quantatw.com> Bug: b:174240357 Change-Id: I2b5f1f2d653b7f6277ef5e5cfb261fe2c25779f8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3045865 Tested-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Commit-Queue: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Peter Marheine <pmarheine@chromium.org>
* Corori: change eeprom i2c frequencyjohnwc_yeh2021-09-091-0/+30
| | | | | | | | | | | | | | | | Change eeprom i2c frequency to 400kHz. I2C Freq need to keep 400khz. BUG=b:199018393 BRANCH=keeby TEST=make BOARD=corori Signed-off-by: johnwc_yeh <johnwc_yeh@compal.corp-partner.google.com> Change-Id: I5164d1c845931d56d04c74ee40a4b746580c02d6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3144414 Reviewed-by: SamSP Liu <samsp_liu@compal.corp-partner.google.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* zephyr: add missing charger KconfigMichał Barnaś2021-09-082-10/+16
| | | | | | | | | | | | | | | Add CHARGER_MIN_BAT_PCT_IMBALANCED_POWER_ON to Kconfig BRANCH=main BUG=b:183544739 TEST=Define added configs to prj.conf file and verify that compilation takes them into account. Change-Id: I7672315a6938102878b5b3b87a9dcf96b0a71d46 Signed-off-by: Michał Barnaś <mb@semihalf.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3141561 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* zephyr: fix batteries FET masksMichał Barnaś2021-09-086-6/+59
| | | | | | | | | | | | | | | Fix masks and values for charge and discharge FETs. Add missing charge FETs properties. BRANCH=main BUG=b:183544739 TEST=Verify if charge and discharge FETs work correctly Change-Id: I6e3abb9d8f03b9f6372e5bfb97a447b33ee4c7a9 Signed-off-by: Michał Barnaś <mb@semihalf.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3141599 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* intelrvp: Add MECC1.1 supportVijay Hiremath2021-09-082-8/+21
| | | | | | | | | | | | | | | | | MECC1.1 is defined for ADL+ platforms. To simplify the the BOM stuffing options and also to remove dependency on H1 by MECC vendors, H1 is added on RVP as AIC. BUG=b:197659347 BRANCH=none TEST=make buildall -j Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Change-Id: I5c3b4b2b2a116ec8dc5a7448c71a6b8654a78bba Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3114218 Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Li Feng <li1.feng@intel.com> Commit-Queue: Keith Short <keithshort@chromium.org>
* common/timer: Fallback to udelay when interrupt conditions are not metPatryk Duda2021-09-081-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | To call usleep() we must be sure that interrupts are enabled and we are not in interrupt context. This is required because hardware timer is used to make sleeping task ready. Also on Cortex-M task switching is not working properly when interrupts are disabled. If above conditions are not met, just print warning and use udelay(). BUG=b:190597666 BRANCH=none TEST=make -j buildall TEST=Call usleep() when interrupts are disabled and make sure that warning is printed and EC doesn't crash. One can implement console command to test this. Perform this test on following cores: cortex-m - this is the most common core, eg. bloonchipper minute-ia - this is used for Intel Sensor Hub (cros_ish) eg. drallion board riscv-rv32i - hayato (asurada family) has EC chip based on risc-v nds32 - ampton (octopus family) has EC chip based on it Signed-off-by: Patryk Duda <pdk@semihalf.com> Change-Id: Ia38ef0f0511ca1298d3153fa77e169019f4c4c31 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2953235 Tested-by: Patryk Duda <patrykd@google.com> Commit-Queue: Marcin Wojtas <mwojtas@google.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* zephyr: add missing battery KconfigsMichał Barnaś2021-09-084-9/+61
| | | | | | | | | | | | | | | | | | | | | | Add missing Kconfigs for: - PLATFORM_EC_BATTERY_CRITICAL_SHUTDOWN_CUT_OFF - PLATFORM_EC_BATTERY_CHECK_CHARGE_TEMP_LIMITS - PLATFORM_EC_BATTERY_MEASURE_IMBALANCE - PLATFORM_EC_BATTERY_MAX_IMBALANCE_MV Change help text in battery yamls to use Kconfigs instead of legacy CONFIGs BRANCH=main BUG=b:183544739 TEST=Define added configs to prj.conf file and verify that compilation takes them into account. Change-Id: I01716c1515350550c18bbfd4944638034a25c7b5 Signed-off-by: Michał Barnaś <mb@semihalf.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3141598 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
* Coachz: MotionSensor: Combine BMI160 & BMI260pengjunhao52021-09-083-2/+88
| | | | | | | | | | | | | | | | | | | | This commit is for second source BMI260, We use chip id to detect which MotionSensor is on the board(BMI160 or BMI260) and combine two different setting for different MotionSensor. BUG=b:195908820 TEST=make -j BOARD=coachz Verify build on SIT board BRANCH=Trogdor Signed-off-by: pengjunhao <pengjunhao5@huaqin.corp-partner.google.com> Reviewed-by: tongjian <tongjian@huaqin.corp-partner.google.com> Reviewed-by: yudengwu <yudengwu@huaqin.corp-partner.google.com> Change-Id: Ib12226744800a9ca2e6f620295e8c2ff762999e3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3118645 Reviewed-by: Wai-Hong Tam <waihong@google.com> Reviewed-by: Jian Tong <tongjian@huaqin.corp-partner.google.com> Commit-Queue: Keith Short <keithshort@chromium.org>
* pazquel: Battery manufacturer name parameter updateTang Qijun2021-09-082-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Battery manufacturer name parameter update: modified from BMSPow to Ganfeng; And battery other parameters remain unchanged. BRANCH=trogdor BUG=b:198994201 TEST=> battery Status: 0x0080 INIT Param flags:00000003 Temp: 0x0c0c = 308.4 K (35.3 C) V: 0x20f9 = 8441 mV V-desired: 0x21fc = 8700 mV I: 0x0dad = 3501 mA(CHG) I-desired: 0x1612 = 5650 mA Charging: Allowed Charge: 75 % Display: 75.3 % Manuf: Ganfeng Device: SG20 Chem: GF Serial: 0x0008 V-design: 0x1db0 = 7600 mV Mode: 0x0000 Abs charge:74 % Remaining: 4186 mAh Cap-full: 5650 mAh Design: 5650 mAh Time-full: 0h:24 Empty: 0h:0 full_factor:0.97 shutdown_soc:4 % Signed-off-by: Tang Qijun <qijun.tang@ecs.corp-partner.google.com> Change-Id: Ib8befbd4bb6853af7253342f48201a91678ca81f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3143236 Reviewed-by: Philip Chen <philipchen@chromium.org> Commit-Queue: Philip Chen <philipchen@chromium.org>
* pazquel: Support clamshell SKUsTang Qijun2021-09-083-2/+17
| | | | | | | | | | | | | | | | | Configure the sensor count to 0, disable the tablet mode switch, and disable the interrupt line for the clamshell SKUs. BRANCH=trogdor BUG=b:187249927 TEST=>accelinfo Motion sensors count = 0 Signed-off-by: Tang Qijun <qijun.tang@ecs.corp-partner.google.com> Change-Id: I3e3a07762f137b44d71207fff46d4b4df263dcb5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3115931 Reviewed-by: Philip Chen <philipchen@chromium.org> Commit-Queue: Philip Chen <philipchen@chromium.org> Tested-by: Philip Chen <philipchen@chromium.org>
* chip/stm32: UART declarations for STM32L5 seriesJes B. Klinke2021-09-082-1/+164
| | | | | | | | | | | | | | | STM32L5 can have up to four UARTs, one more than previous Lx series. These files were copied from usart-stm32l.{h,c}, modified only by making one more copy of the appropriate declarations. BUG=b:192262089 TEST=Compile with hyperdebug board (from later in the chain) BRANCH=none Signed-off-by: Jes Bodi Klinke <jbk@chromium.org> Change-Id: I8bd2d13de67fc74b59c16a79a87fd4615912be09 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3133814 Reviewed-by: Scott Collyer <scollyer@chromium.org>
* chip/stm32: Factor family specific clock logic out of usb.cJes B. Klinke2021-09-086-32/+78
| | | | | | | | | | | | | | | | | | | | | | | The register for enabling USB register clock appears to have been identical across F0, F3, and G4 families, but for L5 it is different. Rather than having #ifdef in usb.c (as I recently committed), this CL will move the clock logic into clock_enable_module() where it arguably belonged all the time. Additionally: Some of the chip families make use of a clock_mask in their implementation of clock_enable_module(), but since the module_id enum has more than 32 value, until now, some values (among those MODULE_USB) would result in overflow, causing new_mask to be identical to clock_mask, and the USB case could have never been reached. BUG=b:192262089 TEST=Compile servo_v4 without linker errors BRANCH=none Signed-off-by: Jes Bodi Klinke <jbk@chromium.org> Change-Id: I7c29339f45eb513e3e78f662797a70543912c8c7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3130733 Reviewed-by: Scott Collyer <scollyer@chromium.org>
* beetley: Initial ECwuzhongtian2021-09-087-709/+549
| | | | | | | | | | | | | | | Create beetley BUG=b:198713668 BRANCH=dedede TEST=make BOARD=beetley pass Signed-off-by: wuzhongtian <wuzhongtian@huaqin.corp-partner.google.com> Change-Id: I2f8c64708eb628ce55cef56e4c36e12845dd8f55 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3146776 Reviewed-by: Mike Lee <mike5@huaqin.corp-partner.google.com> Reviewed-by: Shou-Chieh Hsu <shouchieh@chromium.org> Commit-Queue: Shou-Chieh Hsu <shouchieh@chromium.org>
* zephyr: hooks: use k_work_reschedule to schedule deferred tasksJack Rosenthal2021-09-082-7/+1
| | | | | | | | | | | | | | | | k_work_reschedule will reschedule a work item if it's already been scheduled. Switching from k_work_schedule to k_work_reschedule fixes us the hooks test snag we saw during the v2.6 uprev. BUG=b:195971523 BRANCH=none TEST=zmake testall Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I66f6bbad1cd39847e68a178165c9c59922abbb7c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3144378 Commit-Queue: Fabio Baltieri <fabiobaltieri@google.com> Reviewed-by: Fabio Baltieri <fabiobaltieri@google.com>
* taeko/taeland: add keyboard backlight functionamber.chen2021-09-083-6/+21
| | | | | | | | | | | | | BUG=b:194477160 BRANCH=main TEST=make -j BOARD=taeko Signed-off-by: amber.chen <amber.chen@lcfc.corp-partner.google.com> Change-Id: I4ca063b7b65ba78c9c3bb0e76217b7d76b6c2829 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3139593 Reviewed-by: YH Lin <yueherngl@chromium.org> Reviewed-by: Boris Mittelberg <bmbm@google.com> Commit-Queue: Boris Mittelberg <bmbm@google.com>
* beetley: Initial EC imageZhi Li2021-09-0811-0/+1504
| | | | | | | | | | | | | | | | | | | Create the initial EC image for the beetley variant by copying the waddledee reference board EC files into a new directory named for the variant. (Auto-Generated by create_initial_ec_image.sh version 1.5.0). BUG=b:198713668 BRANCH=None TEST=make BOARD=beetley Signed-off-by: Zhi Li <lizhi7@huaqin.corp-partner.google.com> Change-Id: I5663d92180d87ca217f698cc0ed31c3494c777a9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3139530 Reviewed-by: Weimin Wu <wuweimin@huaqin.corp-partner.google.com> Reviewed-by: Shou-Chieh Hsu <shouchieh@chromium.org> Commit-Queue: Shou-Chieh Hsu <shouchieh@chromium.org>
* taeko/taelane: modify LED settingamber.chen2021-09-082-3/+2
| | | | | | | | | | | | BUG=b:199008227 BRANCH=main TEST=make -j BOARD=taeko Signed-off-by: amber.chen <amber.chen@lcfc.corp-partner.google.com> Change-Id: Iefa21904d52f44c9f4bc9472cccfdd75e778e871 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3143404 Reviewed-by: Boris Mittelberg <bmbm@google.com> Commit-Queue: Boris Mittelberg <bmbm@google.com>
* taeko/taeland: modify battery settingamber.chen2021-09-081-40/+9
| | | | | | | | | | | | | | modify battery setting BUG=b:198399549 BRANCH=main TEST=make -j BOARD=taeko Signed-off-by: amber.chen <amber.chen@lcfc.corp-partner.google.com> Change-Id: Iaab4de73745278b41bbf8ca9f75e027dd107b8eb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3135435 Reviewed-by: Boris Mittelberg <bmbm@google.com> Commit-Queue: Boris Mittelberg <bmbm@google.com>
* TCPMV2: check if vconn swap is allowedli feng2021-09-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | | Connect TBT/USB4 device to PD port in G3 state, port discovery requests to be vconn source even the PP5000_A rail is turned off in G3, as a result system won't be able to source vconn and cable discovery fails. Port discovery should check if sourcing vconn is possible at board level before it requests swap vconn so to prevent this failure. BUG=b:198226223 BRANCH=none TEST=Boot up ADL RVP, put system in G3 by "shutdown -h now", plug in Gatkex board to port 0, confirmed EC does not request vconn swap in G3 if 5V is not available. Wake up system by "powerbtn" on EC console, cable discovery is successful. Signed-off-by: li feng <li1.feng@intel.com> Change-Id: Ic94c21dbfe0c910b6c9826302b8658eeeff44b72 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3131408 Reviewed-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Abe Levkoy <alevkoy@chromium.org> Commit-Queue: Abe Levkoy <alevkoy@chromium.org>