summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* kohaku: Set base light sensor information correctlyfirmware-glados-7820.BGwendal Grignou2021-10-092-4/+9
| | | | | | | | | | | | | | | | | | | | BH1370 light sensor only support 10Hz frequency. Set parameters properly. Sensor only used on kohaku. BUG=b:172343923 BRANCH=hatch TEST=Check on Kohaku the light parameters are correct. Conflicts: board/kohaku/board.c: Make change in caroline board. Change-Id: Ibb9b2699e414cf80730d290aba981dcd4898f84f Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2586069 Reviewed-by: Scott Collyer <scollyer@chromium.org> (cherry picked from commit e2882f20fa28810e735e1a8f0750674e7940eb2d) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3200806 Reviewed-by: Stefan Reinauer <reinauer@google.com>
* board: caroline: indent motion_sense arraryGwendal Grignou2021-10-091-142/+83
| | | | | | | | | | | | | Replace ' ' in tabs, remove setting to 0. BUG=none TEST=compile BRANCH=glados Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: I68c21db1a4fa1140b2e782ceeef4079775222f9f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3200805 Reviewed-by: Stefan Reinauer <reinauer@google.com>
* driver: als_bh1730: Set last_valueGwendal Grignou2021-10-071-3/+4
| | | | | | | | | | | | | | | | | | |last_value| was never set, so sensor would send same data and never send measurement of 0 lux. BUG=b:201719476 BRANCH=many TEST=compile Fixes: 47a6acca3a41 ("motion: Add bh1730 as a motion sensor") Change-Id: Ib201db8809cd50b717c37e2f717a1b7ea0dcf312 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3198678 Reviewed-by: Cheng-Hao Yang <chenghaoyang@chromium.org> (cherry picked from commit 2e570139cfc803e0740655cc3da768df4dd716d3) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3200052
* Clear OWNERS for factory/firmware branchBrian Norris2021-09-112-10/+1
| | | | | | | | | | | | BUG=none TEST=none Change-Id: I0f03f432ada1064ffba9595be78ca7ab4d25ecd1 Signed-off-by: Brian Norris <briannorris@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3155177 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Owners-Override: Jora Jacobi <jora@google.com> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* driver: accel: Prevent ODR from crashing the ECGwendal Grignou2020-10-151-23/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For accelerometers which are interrupt driven, setting ODR too high may exhaust the EC and trigger the watchdog timer. Use config variable to verify the ODR requested is not too big. Return an error when setting unsupported parameters. BUG=b:112672627 BRANCH=nocturne,eve TEST=Without this change, ectool motionsense odr 0 500000 crashes the EC Now, it returns EC result 3 (INVALID_PARAM) Conflicts: not existent: driver/accel_lis2dh.c driver/accelgyro_lsm6dsm.c Change-Id: I64a4e522dcad450d619a7fc48a1330479f1cf81f Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1200068 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit f932679e653a4b62fbe1fb28fba8a20d7a7e38c2) Reviewed-on: https://chromium-review.googlesource.com/1211363 Reviewed-by: Martin Roth <martinroth@chromium.org> Commit-Queue: Martin Roth <martinroth@chromium.org> Tested-by: Martin Roth <martinroth@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2454540
* driver: bmi160: Fix ODR to REG when rate is less than 100Hz properlyGwendal Grignou2020-06-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the ODr was the exact frequency, the calculation was not correct. For instance, 50Hz would return register 6 when 7 was expected. Fixes: 0e99e9763 ("bmi160: Fix ODR to REG when rate is less than 100Hz") BUG=b:120942904 BRANCH=none TEST=use: for (int i = 1600000 ; i > 1000 ; i >>= 1) { printf("%d mHZ : reg %d\n", i + 1, BMI160_ODR_TO_REG(i + 1)); printf("%d mHZ : reg %d\n", i, BMI160_ODR_TO_REG(i)); printf("%d mHZ : reg %d\n", i -1 , BMI160_ODR_TO_REG(i -1)); } To verify the code is correct: 1600001 mHZ : reg 12 1600000 mHZ : reg 12 1599999 mHZ : reg 11 800001 mHZ : reg 11 800000 mHZ : reg 11 799999 mHZ : reg 10 400001 mHZ : reg 10 400000 mHZ : reg 10 399999 mHZ : reg 9 200001 mHZ : reg 9 200000 mHZ : reg 9 199999 mHZ : reg 8 100001 mHZ : reg 8 100000 mHZ : reg 8 99999 mHZ : reg 7 50001 mHZ : reg 7 50000 mHZ : reg 7 49999 mHZ : reg 6 25001 mHZ : reg 6 25000 mHZ : reg 6 24999 mHZ : reg 5 12501 mHZ : reg 5 12500 mHZ : reg 5 12499 mHZ : reg 4 6251 mHZ : reg 4 6250 mHZ : reg 4 6249 mHZ : reg 3 3126 mHZ : reg 3 3125 mHZ : reg 3 3124 mHZ : reg 2 1563 mHZ : reg 2 1562 mHZ : reg 2 1561 mHZ : reg 1 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: Iefd0e0c732b52fef02f5b048c083ea67a2da247c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2093289 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> (cherry picked from commit c3dcd2826896e2f2f9b585dcd42ea98d38ae17cc) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2262106 Tested-by: Inno.Park <ih.yoo.park@samsung.corp-partner.google.com> Reviewed-by: Inno.Park <ih.yoo.park@samsung.corp-partner.google.com> Reviewed-by: Bob Moragues <moragues@chromium.org> Commit-Queue: Bob Moragues <moragues@chromium.org>
* driver: bmi160: Fix rounding error in set_offset() and get_offset()Ching-Kang Yen2020-06-233-8/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | The original set_offset() and get_offset() codes in the driver/accelgyro_bmi160 use simple divisions to write the data. The more times the set_offset() and get_offset() is used, the data will get closer to 0. Fixing it by replacing simple division to round_divide(), division that round to nearest, in the common/math_util.c. BRANCH=octopus BUG=b:146823505 TEST=Testing on octopus:ampton on branch [firmware-octopus-11297.B]. Checking the data did not rounding to 0. Change-Id: Ide9df9e32fc501e63d6f952cb8254df7662afd23 Signed-off-by: Ching-Kang Yen <chingkang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2002998 Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Commit-Queue: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit 036e9f7b214b763524497550aae0ee94df8fd536) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2247977 Reviewed-by: Inno.Park <ih.yoo.park@samsung.corp-partner.google.com> Tested-by: Inno.Park <ih.yoo.park@samsung.corp-partner.google.com> Commit-Queue: Bob Moragues <moragues@chromium.org>
* bmi160: Fix ODR to REG when rate is less than 100HzGwendal Grignou2020-06-231-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The calculation was wrong and always returned the next value. We were lucky that we always ask to round up, so the frequencies were rounded up from the get go. BUG=b:120942904 BRANCH=none TEST=Test with several ODR for correctness: cout << "10:" << BMI160_ODR_TO_REG(10000) << ":" << BMI160_REG_TO_ODR(BMI160_ODR_TO_REG(10000)) << "\n" << "29:" << BMI160_ODR_TO_REG(29000) << ":" << BMI160_REG_TO_ODR(BMI160_ODR_TO_REG(29000)) << "\n" << "59:" << BMI160_ODR_TO_REG(59000) << ":" << BMI160_REG_TO_ODR(BMI160_ODR_TO_REG(59000)) << "\n" << "99:" << BMI160_ODR_TO_REG(99000) << ":" << BMI160_REG_TO_ODR(BMI160_ODR_TO_REG(99000)) << "\n" << "109:" << BMI160_ODR_TO_REG(109000) << ":" << BMI160_REG_TO_ODR(BMI160_ODR_TO_REG(109000)) << "\n" << "209:" << BMI160_ODR_TO_REG(209000) << ":" << BMI160_REG_TO_ODR(BMI160_ODR_TO_REG(209000)) << "\n" ; Returns: 10:4:6250 29:6:25000 59:7:50000 99:7:50000 109:8:100000 209:9:200000 Change-Id: I898d1077af78ab1d0e65ac0e8f7714a2a3b042b3 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1535160 Reviewed-by: Yilun Lin <yllin@chromium.org> (cherry picked from commit 0e99e97634135c9d4e6b60dcd6837bb76d91acf7) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2247974 Reviewed-by: Inno.Park <ih.yoo.park@samsung.corp-partner.google.com> Tested-by: Inno.Park <ih.yoo.park@samsung.corp-partner.google.com> Commit-Queue: Bob Moragues <moragues@chromium.org>
* FIXUP: sensor: Adjust max_frequency based on EC performanceGwendal Grignou2020-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | When chaning the macro fro BMA255, the step was set to 125Hz, so it assumes the EC can support MEMS ODR set to 125Hz. This is not the case on poppy and nautilus in the poppy branch. BRANCH=poppy BUG=b:118205424,b:118851581,chromium:615059,b:131705379 TEST=Compile (cherry picked from commit cb9f4e1337c36d9e00869568610d5774a0bbf7bc) Change-Id: Ib60abb3919dc1ce049211d848fc4e4de2e5e51c0 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1621188 Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org> Reviewed-by: Enrico Granata <egranata@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2168898 Reviewed-by: Jett Rink <jettrink@chromium.org>
* sensor: Adjust max_frequency based on EC performanceGwendal Grignou2020-05-1312-16/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Put in max_frequency a value that the sensor AND the EC support. BRANCH=none BUG=b:118205424,b:118851581,chromium:615059 TEST=Compile. Check all max sensors frequencies have been altered with: for i in $(grep -rh max_frequency board | cut -d '=' -f 2 | sort | \ uniq | grep FREQ | sed 's/FREQ.*//') ; do echo -n $i ; git show | grep -q $i || break; echo check done Check on nocturne accel max frequency is still correct. (cherry picked from commit 77b306b340ca428ba6785add204ccdce82185274) Conflicts: driver/accel_bma2x2.h : indent driver/accel_lis2dh.h : not present driver/accelgyro_lsm6dsm.h : not present driver/baro_bmp280.h : not present driver/mag_lis2mdl.h : not present include/config.h : reorder. driver/als_opt3001.c : config.h needed. Change-Id: I848396d9f150a2e94d430a8feeafc1087a6bf2c3 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1352063 Commit-Ready: Elthan Huang <elthan_huang@compal.corp-partner.google.com> Reviewed-by: Jesse Schettler <jschettler@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Justin TerAvest <teravest@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2199518
* common: sensors: add extra sensor attributes - fix mergeGwendal Grignou2020-05-043-5/+8
| | | | | | | | | | | | | | | Fixes: b0911b436 ("common: sensors: add extra sensor attributes") Add changes to driver/als_opt3001.h as well. Use MAX_FIFO_EVENT_COUNT instead of SENSOR_MAX_FIFO_EVENT_COUNT. BRANCH=firmware-glados-7820.B BUG=chromium:615059 TEST=Check further patches for light apply cleanly. Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: I92b4a8cad593a4bcdd4dcfb0fa6e5c4feedb5494 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2168895 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* motion: Fix oversampling calculationGwendal Grignou2020-05-041-1/+1
| | | | | | | | | | | | | | | | | | | CL/385081 was incorrect, MAX should be used instead of MIN when calculating the oversampling factor, to be sure it can't be 0. BUG=b:27849483,chrome-os-partner:59423 BRANCH=reef TEST=Using a special firmware on Reef reporting the ALS in motionsense, check that oversampling is 1 when requested frequency is 5Hz while the maximal frequency supported is 1Hz. Check the ALS sensor reports information to ARC++. Change-Id: I3c2d447bbc3a9ca0a5963aa86d5a24ee87ca6ab6 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/424221 Reviewed-by: Randall Spangler <rspangler@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2175133 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* driver: bma2x2: Fix frequency arrayGwendal Grignou2020-05-041-8/+8
| | | | | | | | | | | | | | | | | | | Array was off by 10. When AP set to 125Hz, the sensor was set at 1000Hz ODR, and the EC would sample at 100Hz. In newer branch, the frequency is set differently, with macros instead of table. BRANCH=glados BUG=b:155104126 TEST=Check with tast hardware.SensorRing the lid accelerometer is working. Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: I5c9e1ba744862d8c8dea0e1be0dc1c43f291ba89 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2175132 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* Lars: Add support for SIMPLO batteryBen Chen2018-07-051-1/+36
| | | | | | | | | | | | | | | | | Provding the 3rd battery type for Lars boards. This CL adds support for the SIMPLO battery. BUG=b:70698631 BRANCH=glados TEST=Manually teseted on Lars. Battery info works. Change-Id: I699d691cbf7984250f5d8bbe2119ab948f8874b1 Signed-off-by: Ben Chen <Ben.Chen2@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/1118090 Reviewed-by: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Commit-Queue: David Huang <David.Huang@quantatw.com> Tested-by: David Huang <David.Huang@quantatw.com>
* smart_battery:Cleanup smart battery & SB users codeBen Chen2018-06-274-22/+47
| | | | | | | | | | | | | reference patch: 422998 BUG=b:70698631 BRANCH=glados TEST=Manually teseted on Lars. Battery info works. Change-Id: I1d8fa98d2ea7a9ad788fc4a354eb7f3c96d1552d Signed-off-by: Ben Chen <Ben.Chen2@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/1114536 Reviewed-by: Aaron Durbin <adurbin@chromium.org>
* chell: CTLV085A/PP850_PRIM_CORE change VR mode based on power state.Todd Broch2018-03-081-3/+24
| | | | | | | | | | | | | | | | | | | | | Change this VR power mode to: - PWM by default & S0 for stability. - PFM in suspend for power savings. Signed-off-by: Todd Broch <tbroch@chromium.org> BRANCH=glados BUG=b:72921038 TEST=manual, Boot problematic device with AC plugged and no longer see reboot at login screen. Change-Id: I25addfd473675d6d0de441286c4c4bdffcc2118c Reviewed-on: https://chromium-review.googlesource.com/943403 Reviewed-by: Yomyung Leem <yungleem@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@google.com> Commit-Queue: Todd Broch <tbroch@chromium.org> Tested-by: Todd Broch <tbroch@chromium.org>
* caroline: ec: run kblight init with in hook init.Jongpil Jung2017-12-171-0/+1
| | | | | | | | | | | | | | | | | | | We don't have plan to update RO at this moment. We don't have chance to call kblight_enable in RW except s2r and power off by UI button. We need run kblight init in hook init. BRANCH=firmware-glados-7820.B BUG=b:65567128, b:70629216 TEST=emerge-caroline chromeos-ec flash ro : 7820.300.0 flash rw : test ec check keyboad backlight. Change-Id: If024265fcd3930fe46edb2147ff960e231b73541 Signed-off-by: Jongpil Jung <jongpil19.jung@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/831306 Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* motion_sense: Add CONFIG_DYNAMIC_MOTION_SENSOR_COUNT config optionScott Collyer2017-12-092-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Some projects, such as Coral use a common image to support different SKUs. In this case the number of motion sensors supported may need to be determined at runtime. CONFIG_DYNAMIC_MOTION_SENSOR_COUNT removes the const assumption for the global variable motion_sensor_count. Based on CL https://chromium-review.googlesource.com/444587 BUG=b:38271876 BRANCH=None TEST=make -j buildall Change-Id: I4dd3384d245641136f3329b60d1d941927366387 Signed-off-by: Scott Collyer <scollyer@google.com> Reviewed-on: https://chromium-review.googlesource.com/711194 Commit-Ready: Scott Collyer <scollyer@chromium.org> Tested-by: Scott Collyer <scollyer@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Patrick Georgi <pgeorgi@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/803195 Tested-by: Jongpil Jung <jongpil19.jung@samsung.com> Commit-Queue: Jongpil Jung <jongpil19.jung@samsung.com> Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* caroline: enable/disable als and kblight as boardid.Jongpil Jung2017-12-092-0/+27
| | | | | | | | | | | | | | | | We want to enable/disable als and keyboard backlight as board id on caroline. BRANCH=firmware-glados-7820.B BUG=b:65567128 TEST=emerge-caroline chromeos-ec flash ec on caroline on rev5 and rev6. Check ALS and Keyboard backlight function. Change-Id: I016fffa30399ebcc3fe8ed92d603fc6abf0092b6 Signed-off-by: Jongpil Jung <jongpil19.jung@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/795617 Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* caroline : Apply BH1730YB.Ha2017-12-082-2/+69
| | | | | | | | | | | | | | | | | - Add als sensor to motion sensors - Add parameter to calculate LUX BRANCH=glados BUG=b:67022366 TEST=emerge-caroline chromeos-ec Complete to check als value on caroline Signed-off-by: yb.ha <ybha@samsung.com> Change-Id: Iab3dc8bb44d4086ca83db3cf7c41b7733b7d2db0 Reviewed-on: https://chromium-review.googlesource.com/792574 Tested-by: YongBeum Ha <ybha@samsung.com> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> Commit-Queue: YongBeum Ha <ybha@samsung.com>
* motion: Add bh1730 as a motion sensorYB.Ha2017-12-086-0/+277
| | | | | | | | | | | | | | | | | | | - Add ROHM ambient light sensor driver - Add als sensor to motion sensors BRANCH=glados BUG=b:67022366 TEST=emerge-caroline chromeos-ec ec-utils Signed-off-by: yb.ha <ybha@samsung.com> Change-Id: Ic73c50e17b412975f7850b7348ce310180f7a6eb Reviewed-on: https://chromium-review.googlesource.com/784659 Commit-Ready: YongBeum Ha <ybha@samsung.com> Tested-by: YongBeum Ha <ybha@samsung.com> Reviewed-by: Gwendal Grignou <gwendal@google.com> Reviewed-on: https://chromium-review.googlesource.com/816917 Reviewed-by: Vincent Palatin <vpalatin@chromium.org> Commit-Queue: YongBeum Ha <ybha@samsung.com>
* caroline : Add EL lamp driver & control keyboard backlight.YB.Ha2017-12-088-0/+194
| | | | | | | | | | | | | | | | - Add MAXIM Max14521 EL lamp driver - Add commands & hooks to control keyboard backlight BRANCH=firmware-glados-7820.B BUG=b:68022216 TEST=emerge-caroline chromeos-ec ec-utils Signed-off-by: yb.ha <ybha@samsung.com> Change-Id: I3f3dae16e3dae2e11ea391cd74a804bcefec2181 Reviewed-on: https://chromium-review.googlesource.com/765624 Tested-by: YongBeum Ha <ybha@samsung.com> Commit-Queue: YongBeum Ha <ybha@samsung.com> Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* motion: Add opt3001 as a motion sensorGwendal Grignou2017-12-016-7/+268
| | | | | | | | | | | | | | | | | | | | | | | | | Use the motion sensor to manage ALS as well. The current interface (via memmap) is preserved, but we can also access the sensor via cros ec sensor stack and send the ALS information to ARC++. BUG=chrome-os-partner:59423 BRANCH=reef CQ-DEPEND=CL:424217 TEST=Check the sensor is working via ACPI sensor and cros ec sensor. Check ARC++ sees the sensors. Change-Id: Iaf608370454ad582691b72b471ea87b511863a78 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/424323 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit 484ef121193865225ddbc3a0b848db7f5384f836 Conflict in: - ec_command.h and ectool.c: add previous sensor definition. - als_opt3001: do not include i2c test code.) Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/772819 Reviewed-by: YongBeum Ha <ybha@samsung.com>
* als: Define CONFIG_ALS when HAS_TASK_ALS is present.Gwendal Grignou2017-12-016-5/+5
| | | | | | | | | | | | | | | | | For oak, set a different list of task (no als, no accel) for compiling revision 4 or less. Fix GPIO include issue. BUG=chrome-os-partner:59423,chrome-os-partner:59084 TEST=compile for oak with board 4 and 5, tested on Reef. BRANCH=kevin,reef Change-Id: I09051a69cbad6d477a7b3bf9907f4c5c144b5136 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/424220 Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit d5bd0bd0f6798574ff7da1ba575753a9ce39719f) Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/782763
* driver: als: Add error code UNCHANGEDGwendal Grignou2017-12-012-4/+7
| | | | | | | | | | | | | | | | | This error code is used to indicates the data has not changed. Motion sense task will therefore not add any entry in the sensor FIFO. BUG=chrome-os-partner:59423 TEST=make -j buildall BRANCH=reef Change-Id: I58b9be5675d8949bd682d8c89dadea1dfff9bf2e Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/424856 Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit 0c7b7f222c59726edca80b1a01f8f217cc5cfcf7) Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/782762
* charger: Prevent SET access to EC_CMD_CHARGE_STATE on locked systemsShawn Nematbakhsh2017-11-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | The SET sub-command of EC_CMD_CHARGE_STATE sets charger current / voltage parameters to arbitrary values and should be locked down. EC_CMD_CHARGE_CONTROL, on the other hand, switches between several safe operation modes, and should be allowed. BUG=None TEST=On kevin, set force_locked, plug zinger, and verify: ectool chargestate param 4 3 <-- ACCESS_DENIED ectool chargestate show <-- prints params ectool chargecontrol idle <-- stops charging battery ectool chargecontrol normal <-- battery charges again BRANCH=None Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Change-Id: I5503f07bb196d023a9bcd2e33f2e247f061f05e5 Reviewed-on: https://chromium-review.googlesource.com/757237 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/786874 Tested-by: Jongpil Jung <jongpil19.jung@samsung.corp-partner.google.com> Commit-Queue: Jongpil Jung <jongpil19.jung@samsung.corp-partner.google.com>
* ALS: OPT3001: Return appropriate error valueVijay Hiremath2017-11-211-7/+7
| | | | | | | | | | | | | | | | | | | | | | Return appropriate error value for I2C errors and data verification errors. BUG=chrome-os-partner:57512 BRANCH=none TEST=Manually tested on Reef, ALS data changes when surrounding brightness is changed. Change-Id: I17b5bd10da5fa5cc82fdff10337ae893146c70ee Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/386397 Commit-Ready: Vijay P Hiremath <vijay.p.hiremath@intel.com> Commit-Ready: Kevin K Wong <kevin.k.wong@intel.com> Tested-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Kevin K Wong <kevin.k.wong@intel.com> Reviewed-by: Shawn N <shawnn@chromium.org> (cherry picked from commit 54187e7b9bf889d662e73d34621d52941392c6f3) Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/772818
* stm32f0: i2c: Fix dropped Rx byte in TCPCI slave modeShawn Nematbakhsh2017-11-151-5/+5
| | | | | | | | | | | | | | | | | If the i2c master sends a stop condition before we've buffered the last Rx byte (eg. due to higher than normal i2c interrupt latency) then we don't want to drop the last byte on the floor, it's still meaningful. BUG=b:65711378 BRANCH=glados TEST=Spam TCPC_REG_ROLE_CTRL commands from caroline to caroline_pd, verify no errors are observed on either side for 12,000,000 transactions. Change-Id: I0c4a81d97315cff553a5448c0940746e1ef0ed2c Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/772698 Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* driver: BMM150: Set max frequency based on repetitions settingGwendal Grignou2017-11-011-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | The compass uses oversampling to produce accurate values. MAX_ODR is functions of the repetitions setting. 80Hz is too high, calculate the frequency based on preset setting. Currently, we use 'SPECIAL' that was calculated for Ryu. BUG=b:68394559 BRANCH=eve,reef,poppy TEST=Check with ectool motionsense info 3 the frequency is around 30Hz. Before: Min Frequency: 781 mHz Max Frequency: 80000 mHz After: Min Frequency: 781 mHz Max Frequency: 29579 mHz Check with AIDA64 the compass is not stuck and return changing values. Fixup of CL/570482 Change-Id: Idcfed1418f59e755e5647d018351c6a7397ffe1b Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/742146 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit 8a2d0a5de6fc03eeea79a65469b361ae0ca694c9) Reviewed-on: https://chromium-review.googlesource.com/749982
* driver: bm160: Fix minimal gyro frequencyGwendal Grignou2017-09-201-1/+1
| | | | | | | | | | | | | | | | | | Was set in Hz unit instead of mHz. The minimal frequency of the gyroscope is 25Hz. By setting it at 25mHz, we make believe that the gyro was also supporting 5Hz or 10Hz: the test would complain when instead the samples came with a 25Hz. Fix up of cl/482703 BUG=b:65000611 TEST=compile BRANCH=caroline,eve,twinkie Change-Id: I162d0d2e9b545af82698d8d484875761f426efe4 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/675784
* driver: sensor: tune MAX_FREQGwendal Grignou2017-07-162-3/+3
| | | | | | | | | | | | | | | | | | | | | | Reduce maximum frequency of BMM150 compass to 80Hz, 800Hz is a typo. Reduce SI1141 maximum frequency to 50Hz: 100Hz is too high when polling mode is used. Fix up of CL:482703 BRANCH=eve, glados BUG=chromium:615059 TEST=On eve, check CTS test android.hardware.cts.SensorBatchingTests#testMagneticField_fastest_flush passes. Observed that dumpsys sensorservice returns compass maxRate at 80Hz instead of 200Hz. Change-Id: If4e688ab59aa53c402d34714b6bb33ccd4a4ab96 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/570482 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit 9fad1adc800cd950e4bd3f292f83186eb0e4f272) Reviewed-on: https://chromium-review.googlesource.com/573223
* motion_lid: Increase precision in noisy mag check.Aseda Aboagye2017-07-131-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit increases the precision used in the noisy magnitude deviation check by multiplying the scaled sensor data by 8 in the intermediate calculations. Prior to this, due to some bits being lost, certain devices would determine the lid angle as unreliable in specific angles, even though the device was at rest. BUG=b:63148973 BRANCH=eve,gru,reef TEST=Flash bob, set DUT on desk, run `while true; do ectool motionsense lid_angle; sleep 0.1; done`, slowly move the lid from 15 degrees until ~350. Verify that no particular angle results in a unreliable lid angle reading. TEST=Run `evtest` and examing cros-ec-buttons, fold screen all the way back to make tablet mode, shake device for at least 30s. Verify that there are no spurious transitions of the tablet mode switch. TEST=Repeat above tests on kevin. Change-Id: Iff06c1df2dd33c60e26a59183f62f29b71548729 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/567050 Commit-Ready: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Shawn N <shawnn@chromium.org> (cherry picked from commit df09bc2c83c70716afcfd73e4eadf8cda0195848) Reviewed-on: https://chromium-review.googlesource.com/570340 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Trybot-Ready: Aseda Aboagye <aaboagye@chromium.org>
* Common: charge timeout function should exclude manual mode in factory.Ryan Zhang2017-07-131-1/+2
| | | | | | | | | | | | | | | Clear deadline & battery_seems_to_be_dead(use for LED indicator) when system is in manual mode. BUG=chrome-os-partner:53590 BRANCH=glados-7820.B TEST=system won't be timeout after switching between ectool chargecontrol normal/idle/discharge Change-Id: Iadb2963aedb9d8414f5ca3f9ae105f8be772c340 Signed-off-by: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/567611 Reviewed-by: Shawn N <shawnn@chromium.org>
* Lili: some 15W TypeC adapters will cause CPU throttledRyan Zhang2017-07-122-0/+22
| | | | | | | | | | | | | | | | | We get adapter type: CHARGE_SUPPLIER_TYPEC and set input current limit to 3000mA and PROCHOT_AC is 3072mA by default. However these two limitation values are so close that ISL9237 will trigger prochot and cause CPU throttled. BUG=b:62291338 BRANCH=glados-7820.B TEST=CPU throttling was release after 0x47 is set to 3200 Signed-off-by: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com> Change-Id: I792dc1c1bc45d7c6cd82957cec1c2772341b76dd Reviewed-on: https://chromium-review.googlesource.com/557742 Reviewed-by: Shawn N <shawnn@chromium.org> Commit-Queue: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com> Tested-by: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com>
* motion_lid: no angle correction when lid closephilipchen2017-06-062-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | BUG=b:36107214 BRANCH=gru TEST=manually on kevin: (1) make DUT in tablet mode (2) swiftly close the lid (3) check ec log and confirm DUT can read small angle and turn into clamshell mode when lid is closed. TEST=make runtests Change-Id: I7ebf10d38a8b300960ebf46be717d48522c6fd0b Reviewed-on: https://chromium-review.googlesource.com/455458 Commit-Queue: Philip Chen <philipchen@chromium.org> Tested-by: Philip Chen <philipchen@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit 75ba9147c392367037c21e79899f463c32c1f92f) Reviewed-on: https://chromium-review.googlesource.com/457137 Commit-Ready: Philip Chen <philipchen@chromium.org> (cherry picked from commit 7814f3319e7331ae9f3313d2a04e14b0bc1f1a90) Reviewed-on: https://chromium-review.googlesource.com/525897 Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Aseda Aboagye <aaboagye@chromium.org> Trybot-Ready: Aseda Aboagye <aaboagye@chromium.org>
* pd: ensure tighter timings for IRQ_HPD pulseVincent Palatin2017-05-3013-169/+247
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to ensure we are always meeting the deadlines for the IRQ_HPD pulse, increase the priority of the processing by moving the rising edge from the low-priority HOOK task (in a deferred function) to the caller task (which is the high-priority PD task). The downside is we are now sleeping in the PD task blocking the processing of the PD messages during this time. Changed HPD_DSTREAM_DEBOUNCE_IRQ to 500us instead of 750us. According to DP spec, the IRQ_HPD pulse width is between 500us and 1000us. Ensure there is a minimum of 2ms delay in between each IRQ_HPD as specified by the DP spec, by sleeping before sending the next pulse if needed. (in practice, this should not wait if we are not too off processing the messages) Signed-off-by: Kevin K Wong <kevin.k.wong@intel.com> Signed-off-by: Vincent Palatin <vpalatin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/508629 Reviewed-by: Todd Broch <tbroch@chromium.org> (cherry picked from commit 03a665939f8adef0f8fd5a170f859210f65d2c54) Updated with all GLaDOS derivatives. BUG=chromium:711334 BRANCH=glados strago reef oak TEST=manual, on SKL platform with kernel 3.18 and MST, verify display is functional on USB-C dock. Change-Id: Iba1fbc8b4a6ec26daf49c19a6aa8af275a59c221 Reviewed-on: https://chromium-review.googlesource.com/477414 Commit-Queue: Vincent Palatin <vpalatin@chromium.org> Tested-by: Vincent Palatin <vpalatin@chromium.org> Trybot-Ready: Vincent Palatin <vpalatin@chromium.org> Reviewed-by: Todd Broch <tbroch@chromium.org>
* common: sensors: add extra sensor attributesNick Vaccaro2017-05-1822-19/+171
| | | | | | | | | | | | | | | | | | | | Adds min_frequency and max_frequency to struct motion_sensor_t. New attributes min_frequency and max_frequency are now returned in ectool's MOTIONSENSE_CMD_INFO response. Incremented ectool's MOTIONSENSE_CMD_INFO version to version 3. Add constants for MIN_FREQUENCY and MAX_FREQUENCY to each sensor's header file. BRANCH=firmware-glados-7820.B BUG=chromium:615059 TEST=build/boot and verify MOTIONSENSE_CMD_INFO response on caroline Change-Id: I66db9715c122ef6bb4665ad5d086a9ecc9c7c93a Signed-off-by: Nick Vaccaro <nvaccaro@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/486102 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* cave: disable CONFIG_CMD_ACCEL to reduce bin sizeNick Vaccaro2017-05-181-3/+0
| | | | | | | | | | | | | | Cave ran out of room with upcoming change, disabled CONFIG_CMD_ACCEL and CONFIG_CMD_ACCEL_FIFO to free up the needed space and keep build from breaking. BRANCH=firmware-glados-7820.B BUG=chromium:615059 TEST=verified cave target build doesn't break Change-Id: I48f77920f8bf919c72c8c055a01d771795ac4ddf Signed-off-by: Nick Vaccaro <nvaccaro@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/487302 Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* pd: Ignore Augmented PDOs when choosing PDO to request.Todd Broch2017-05-182-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Augmented PDOs are part of the PD3.0 specification. As present USB PD sinks can't support these PDO types we need to ignore them. Signed-off-by: Todd Broch <tbroch@chromium.org> BRANCH=samus,glados,oak,gru,reef BUG=b:37476637 TEST=manual, On samus, plug-in blackcat (EVT) charger and see it ignore these Augmented PDOs when making its PDO request. Original-Change-Id: I28a0377e1486368f25f37cad640af71244a4c30b Originally-Reviewed-on: https://chromium-review.googlesource.com/484687 Commit-Ready: Todd Broch <tbroch@chromium.org> Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> (cherry picked from commit 49c776b5b78462ae2118fca240f7fb5df7dc444c) Change-Id: I791e43ef8b42941f5bb64429b98812904fc3c7d8 Reviewed-on: https://chromium-review.googlesource.com/506663 Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> Commit-Queue: Todd Broch <tbroch@chromium.org>
* pd: prefer CD pin assignments over EF for USBC->USBC case.Todd Broch2017-05-181-5/+8
| | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Todd Broch <tbroch@chromium.org> BRANCH=samus,glados,oak,gru,reef BUG=chromium:694597 TEST=manual, connect samus to USB-C monitor via cable and see it select pin assigmnent 'C' Original-Change-Id: Iddad5b654715bd30ba081c62f8fb53e07816498c Originally-Reviewed-on: https://chromium-review.googlesource.com/465379 Commit-Ready: Todd Broch <tbroch@chromium.org> Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> (cherry picked from commit a8e6b070cbd107d8c2f44f44ae8231a4f4efea90) Change-Id: Ica21c46619023468d93ab7faca6284680c858005 Reviewed-on: https://chromium-review.googlesource.com/506662 Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> Commit-Queue: Todd Broch <tbroch@chromium.org>
* Re-enable Google USBC peripheral FW updates.Todd Broch2017-05-188-8/+120
| | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Todd Broch <tbroch@chromium.org> BRANCH=glados,gru,oak BUG=chrome-os-partner:57458 TEST=usbpd_GFU Original-Change-Id: I5a6bfde742a5c698680f99f342b1696084fd002a Originally-Reviewed-on: https://chromium-review.googlesource.com/397862 Commit-Ready: Todd Broch <tbroch@chromium.org> Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Benson Leung <bleung@google.com> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> (cherry picked from commit 35e580b7a9d0dedbb2664dbfd694ab5bd3a87226) Change-Id: I41c8b453daa755d00287933f98b6f8dad129655c Reviewed-on: https://chromium-review.googlesource.com/506661 Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> Commit-Queue: Todd Broch <tbroch@chromium.org>
* caroline: enable VBUS dischargeVincent Palatin2017-05-172-0/+3
| | | | | | | | | | | | | | | | | | | Enable the voltage discharge circuit on VBUS in order to be sure to reach in time the required voltage level during a power swap. Signed-off-by: Vincent Palatin <vpalatin@chromium.org> BRANCH=glados BUG=none TEST=manual, connect to Lenovo Thinkpad USB-C and see we are repeatedly becoming a Sink rather than something staying stuck in the power swap. Change-Id: I9e6a7a6c9e6dc63eae285a90c541fa0138f7b130 Reviewed-on: https://chromium-review.googlesource.com/506149 Tested-by: Vincent Palatin <vpalatin@chromium.org> Trybot-Ready: Vincent Palatin <vpalatin@chromium.org> Reviewed-by: Todd Broch <tbroch@chromium.org> Commit-Queue: Vincent Palatin <vpalatin@chromium.org>
* glados & friends: remove typec console command to save flash space.Todd Broch2017-05-177-0/+7
| | | | | | | | | | | | | | Signed-off-by: Todd Broch <tbroch@chromium.org> BUG=none TEST=all boards compile successfully Change-Id: I58f01919b0d6e61f9ce45af680b74879d0bd06c4 Reviewed-on: https://chromium-review.googlesource.com/506660 Commit-Queue: Todd Broch <tbroch@chromium.org> Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* Lars/Lili: use 15V / 3A instead of 20V / 2.25ARyan Zhang2017-05-021-0/+1
| | | | | | | | | | | | | | | | | | Lars + Lars Adapter => 20V / 2.25A Lars + Lili Adapter => 15V / 3A Lili + Lili Adapter => 15V / 3A Lili + Lars Adapter => 20V / 2.25A BUG=b:37729690 BRANCH=firmware-glados-7820.B TEST=`make -j BOARD=lars`, Signed-off-by: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com> Change-Id: I61e9b3f4f4e844dea3b672a7784ffcd979ae84a7 Reviewed-on: https://chromium-review.googlesource.com/489222 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Commit-Queue: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com> Tested-by: Ryan Zhang <ryan.zhang@quanta.corp-partner.google.com>
* Caroline: cut-off the battery when the level is criticalYB.Ha2017-04-272-1/+3
| | | | | | | | | | | | | | | | | Cut-off the battery (ie disconnect its discharge FET) when it is reaching a critical level, so it keeps the remaining charge longer. BRANCH=firmware-glados-7820.B BUG=b:35581255 TEST=emerge-caroline chromeos-ec Signed-off-by: yb.ha <ybha@samsung.com> Change-Id: I508a547bbcefb74b127ab03d8dae46723a507b09 Reviewed-on: https://chromium-review.googlesource.com/484160 Reviewed-by: Vincent Palatin <vpalatin@chromium.org> Commit-Queue: Jongpil Jung <jongpil19.jung@samsung.corp-partner.google.com> Tested-by: Jongpil Jung <jongpil19.jung@samsung.corp-partner.google.com>
* lars: Save panic data before PMIC triggered reset.Aseda Aboagye2017-04-171-0/+7
| | | | | | | | | | | | | | | BUG=b:35585589 BRANCH=glados TEST=enter 'crash divzero'; verify panic data is present on reboot via 'panicinfo'. Additionally, eventlog indicates an EC event of "panic reset". Change-Id: I7f8a419089be651328a6e04652353f653e314a58 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/479682 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* mec1322: Only restore panic data when saved.Aseda Aboagye2017-04-171-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CL:430577 introduced a panic data backup/restore facility since apparently the ROM uses the top 8KB of memory during ROM execution. However, the little firmware loader was unconditionally restoring the panic data when loading an RO image. This caused an issue when attempting to sysjump from RW to RO. The "restore" operation would destroy the sysjump tag data and caused the EC to fail to recognize the sysjump. This commit changes the LFW to only restore the panic data under resets where the panic data would have been backed up. These include: - Soft Reset - Hard Reset - Watchdog Reset - VCC1 Reset BUG=b:37011065 BRANCH=glados TEST=Apply a CL which adds panic data back up to lars. sysjump between RO and RW and back to RO. Verify that all sysjumps are recognized. Verify that keyboard continues to function post sysjump. TEST=Cause a panic by 'crash' command. Verify that panic data is still present after reset. Change-Id: I6e50f4923dac849a84095ac9e24810eb054e4394 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/479681 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* pbody: add pwm kblight controlbolan.wang2017-03-163-2/+23
| | | | | | | | | | | | | | | | | | For DVT, KB backlight pin is connected with EC, and controlled by driver to adjust duty cycle for requirement in different situations. BUG=none BRANCH=firmware-glados-7820.B TEST=build and burn on pbody run "ectool pwmsetkblight (percent)/pwmgetkblight" test the PWM backlight function Signed-off-by:bolan.wang <bolan.wang@bitland.com.cn> Change-Id: Id0d7a250093bcae6a510d90f41c7e185b1bca0ee Reviewed-on: https://chromium-review.googlesource.com/452279 Commit-Queue: Vanillan Wang <bolan.wang@bitland.corp-partner.google.com> Tested-by: Vanillan Wang <bolan.wang@bitland.corp-partner.google.com> Reviewed-by: Shawn N <shawnn@chromium.org>
* pbody:enable/disable trackpad interruptbolan.wang2017-03-092-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the hardware changes, modify the gpio TRACKPAD_INT_DISABLE configuration. This change disables the keyboard and the trackpad when the lid goes beyond 180 degree. Keyboard and touchpad are also enabled/disabled by the tablet switch. When the lid reaches 360 position, keyboard and touchpad are disabled. And they stay disabled as long as the lid stays at 360 position. This prevents keyboard and touchpad from turning on by the (faulty) lid angle calculation. And enable/Dislable keyboard and touchpad is required to prevent EC from waking up the system from S3 in tablet mode. BUG=none BRANCH=firmware-glados-7820.B TEST=build and burn on pbody 1.Keyboard and trackpad are disabled when the lid goes beyond 180 and re-enabled when it's smaller than 180. 2. Keyboard and trackpad are disabled in tablet mode and the system doesn't wake up by a keypress. Change-Id: Id8c2026eba182fa87fbd417b204a1658117b43cc Reviewed-on: https://chromium-review.googlesource.com/449596 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Vanillan Wang <bolan.wang@bitland.corp-partner.google.com> Tested-by: Vanillan Wang <bolan.wang@bitland.corp-partner.google.com>
* pbody: remove commands and undef CONFIGs for save spacebolan.wang2017-03-071-0/+3
| | | | | | | | | | | | | | | | Remove EC console`hibdelay'and`hibernate` command undef CONFIG_TASK_PROFILING BUG=none BRANCH=firmware-glados-7820.B TEST=build and burn on pbody Signed-off-by:bolan.wang <bolan.wang@bitland.com.cn> Change-Id: I02d2e208c745c98ece3bbe5bdd37546f57644186 Reviewed-on: https://chromium-review.googlesource.com/448298 Reviewed-by: Shawn N <shawnn@chromium.org> Commit-Queue: Vanillan Wang <bolan.wang@bitland.corp-partner.google.com> Tested-by: Vanillan Wang <bolan.wang@bitland.corp-partner.google.com>