summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Clear OWNERS for factory/firmware branchfirmware-strago-7287.BBrian 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/+/3155259 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Owners-Override: Jora Jacobi <jora@google.com> Tested-by: Jack Rosenthal <jrosenth@chromium.org>
* wizpig: lower the maximum allowed ODR to 100HzGwendal Grignou2019-12-191-0/+3
| | | | | | | | | | | | | | | | | | Some tests are failing on wizpig at the highest ODR. This is likely due to wizpig using accelerometer without interrupt line. Lowering the ODR allows the tests to pass more reliably. BUG=b:129992692 BRANCH=wizpig TEST=Compile, loaded on wizpig, pass on R81: cheets_CTS_P.9.0_r10.x86.CtsSensorTestCases Change-Id: I7fe6d8e09b7c4ffa0d02539b176a1f48c4ea192e Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1968162 Reviewed-by: Alexandru M Stan <amstan@chromium.org>
* driver: kionix: Add software reset flow for KX022Yidi Lin2019-12-192-49/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | Kionix suggests that it is recommended to issue the Software Reset command after the device was powered. This is effective against dynamic or non-liner behavior of a power supply or unexpected noise above normal on the power rail during a power up. BRANCH=oak BUG=b:62607555 TEST=1. press power button 10 second to power off. 2. power on the DUT 3. refresh + power button to cold reboot the DUT 4. Check the g-sensor by 'ectool motionsense' Change-Id: I362f2af59253519aa35b72cfb6b666c49e425777 Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/536723 Reviewed-by: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit 5a52614b8c87ab1de84c461b7bbd0b4a14dc7fdb) Conflict in init routine in accel_kionix.c. By moving WHOAMI after reset, we expect the test to work the first time.) Signed-off-by: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit e862c2c0fbe8add0e11a0af3057df6c59450e127) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1968161 Reviewed-by: Alexandru M Stan <amstan@chromium.org>
* Revert "driver: kionix: Add checking whoami value at initialization."Gwendal Grignou2019-12-191-1/+1
| | | | | | | | | | | | | | | This reverts commit 1d8fcd4fabfed67d8304b3c5ad418cf6f5ae1878. It looks like KXCJ9 may not return proper WHOAMI after powerup but before reset. BUG=b:67865186 BRANCH=eve TEST=compile Change-Id: Iceaaf3b2a45d920e08db587e1308cec0379e68cf Signed-off-by: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit 1288563b9700d668471046fbff50c9eb560104ae) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1968160 Reviewed-by: Alexandru M Stan <amstan@chromium.org>
* common: Add hardware error codeGwendal Grignou2019-12-191-0/+3
| | | | | | | | | | | | | | | | Add error code to indicate a piece of hardware is not working properly. BUG=none TEST=compile BRANCH=none Change-Id: I34eca8073a359aec1c559241654a1d0a7075cd44 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/753968 (cherry picked from commit 1c03af23e1f8a62b6815fd520de5ace9e365b12f) Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1974516 Reviewed-by: Alexandru M Stan <amstan@chromium.org>
* Unify #! use in python scriptsStefan Reinauer2019-12-194-5/+5
| | | | | | | | | | | | | | | | | | | | | | Right now we have several different versions of #! in our python scripts. Unify them all and specify that we are using python2. Signed-off-by: Stefan Reinauer <reinauer@chromium.org> BUG=none BRANCH=none TEST=make buildall Change-Id: Iab33a3f5d4b827451a55542bcee8837b00da7867 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1817948 Commit-Queue: Stefan Reinauer <reinauer@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> (cherry picked from commit 68c9a2870ead8a3306a2601c4f5689656d49c6a8) Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1974515 Reviewed-by: Alexandru M Stan <amstan@chromium.org>
* use _DEFAULT_SOURCE for newer glibcMike Frysinger2019-12-192-2/+4
| | | | | | | | | | | | | | | | | | | Newer versions of glibc have moved to _DEFAULT_SOURCE and away from _BSD_SOURCE. Trying to use the BSD define by itself leads to warnings which causes build failures. BRANCH=none BUG=None TEST=precq still works Reviewed-on: https://chromium-review.googlesource.com/316730 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Change-Id: Ice24b84dc6a540695fc7b76e8f22a4c85c301976 Signed-off-by: Mike Frysinger <vapier@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1974514 Reviewed-by: Alexandru M Stan <amstan@chromium.org> Commit-Queue: Gwendal Grignou <gwendal@chromium.org> Tested-by: Gwendal Grignou <gwendal@chromium.org>
* Kefka: Put device in Pseudo G3 if soc > 25%Daisuke Nojiri2019-07-264-5/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a system is in S5 and EC finds it's idle, we make EC check the battery level and 1. if it's above 25%, EC does Pseudo G3 2. if it's below 25%, EC does deep sleep In case 1, EC never wakes up but according to our power measurement, PG3 should give us more than 90 days with 25% battery. In case 2, system consumes more power but EC eventually will cut off a battery (at 5%). So, we only sacrifice S5 battery life by 1/4. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/129341252 BRANCH=strago TEST=Verify Kefka deep sleeps when soc < 25 in S5 and hibernates when soc >= 25 in S5. Change-Id: I15bb5c650bd788e67f360285c349ba5b7c315e87 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1719876 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* Kefka: Implement battery probe cycleDaisuke Nojiri2019-07-084-52/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This implements a battery probe cycle in EC autonomously. Once EC enters the cycle, it wakes up every 2 hours and checks soc and VBAT. If both are good, EC sets hibernation timer to 2 hours and sleeps again. This repeats until a power button is pressed or a battery is cut off after a battery is drained. The expected behavior can be verified as follows: 1. Shut down DUT. 2. Unplug AC and leave DUT idle for 60 min. 3. DUT hibernates. 4. DUT wakes up every 2 hours and soc is printed on EC console. 5. DUT cuts off battery when soc goes below 6%. 6. DUT boots by plugging in AC. Additionally, - Verify DUT boots when power button is pressed after #3. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/128455667,b/136032811 BRANCH=strago TEST=See the description above. Change-Id: I66fd1345e5db1fc2c31bbee59edf36c3b20cab14 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1686594 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* mec1322: Check HTIMER_PRELOAD in system_hibernateDaisuke Nojiri2019-07-041-11/+16
| | | | | | | | | | | | | | | | | | This patch makes system_hibernate check if input time (seconds & microseconds) exceed the max value of HTIMER_PRELOAD. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/133859209,b/128455667 BRANCH=strago TEST=Error message is printed when 'hibernate 8200' is run. Change-Id: I3799ed141f375403ec04933821ea16c682a0d567 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1686593 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* mec1322: Don't enable interrupt before or after hibernationDaisuke Nojiri2019-07-041-2/+0
| | | | | | | | | | | | | | | | | | | | | | | When interrupts are enabledn in system_hibernate, handlers can be called while various peripherals are disabled (at the entry of system_hibernate). This patch removes calls to interrupt_enable() before wfi to guarantee once system_hibernate is called, no context switches occur until EC resets. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/128455667 BRANCH=strago TEST=Leave device for 60 min. Verify it wakes up by power button. Change-Id: I2ce34538880dd6faf2f05e8152700a395b27f4aa Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1684231 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* Kefka: Add AC as wake-up sourceDaisuke Nojiri2019-06-271-0/+1
| | | | | | | | | | | | | | | Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/128455667 BRANCH=strago TEST=Wake up Kefka from hibernation by AC. Change-Id: Id9f86ef9c530772b2c0776b308c1a033c5b91321 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1668425 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* mec1322: Clear HTIMER in IRQ source register before hibernationDaisuke Nojiri2019-06-241-2/+3
| | | | | | | | | | | | | | | | | | | This patch makes EC clear HTIMER in the IRQ source register so that we will know for sure we woke up by *NEW* timer expiration. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/134973675 BRANCH=strago TEST=Verify sabin repeats hibernate and wake-up periodically. TEST=Verify sabin boots from hibernation when a power button is pressed. Change-Id: I3c9404e96c7f1ac5525adc8313847cf7e63af159 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1668424 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* system: Add EC_CMD_CLEAR_RESET_FLAGDaisuke Nojiri2019-06-202-0/+18
| | | | | | | | | | | | | | | | | | | | | | | Currently, when AP boots for a battery check, it doesn't clear RESET_FLAG_TIMER. This causes the next valid boot (e.g. power button press) to be interpreted as another battery check. This patch adds EC_CMD_CLEAR_RESET_FLAG to allow Depthcharge to clear RESET_FLAG_TIMER to fix the problem. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/135636824 BRANCH=strago TEST=Shutdown, hibernate after G3 timeout, wake up by timer, auto-shutdown, press power button. Kefka boots successfully. Change-Id: I9cc62bffe36a05d33c99eb33419c1bf8998ddd7c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1668423 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* system: Add EC_CMD_GET_RESET_FLAGDaisuke Nojiri2019-06-183-18/+36
| | | | | | | | | | | | | | | | | | | | This patch adds EC_CMD_GET_REEST_FLAG, which allows external program to retrieve reset flags. EC_CMD_GET_UPTIME_INFO is too beefy. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/128455667 BRANCH=none TEST=Verify Depthcharge prints reset flags. Change-Id: Iad90ab53c97e50d22b02508585b46d60863f15ff Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1656774 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* main: Print reset causes after sysjumpDaisuke Nojiri2019-06-181-6/+6
| | | | | | | | | | | | | | | | | | | | | Currently, only RO print reset causes on reset. However, reset causes can be seen differently by RO and RW because RW keeps updating. This patch makes RW print reset causes as well. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=none BRANCH=none TEST=Verify reset causes printed by RO and RW. Change-Id: If2f794ad59afe5e053177a04c425476ff36bc642 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1656772 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* system: Add RESET_FLAG_TIMERDaisuke Nojiri2019-06-184-2/+12
| | | | | | | | | | | | | | | | | | | RESET_FLAG_TIMER is set when EC resets after waking up from hibernation by timer. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/134973675 BRANCH=strago TEST=Verify 'timer' is printed when EC wakes up from hibernation by timer and 'timer' is not printed when EC wakes up by power button. Change-Id: I93c4df3f7bf8711661716887d4ad2061240f00dc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1656770 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* system: Add printf to trace hibernationDaisuke Nojiri2019-06-182-0/+6
| | | | | | | | | | | | | | | | | | This patch adds printf to help us trace akeup cycles. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/128455667 BRANCH=strago TEST=Verify sabin repeats hibernate and wake-up periodically when lid is closed. Change-Id: Ib95b3644fc1df8e1f1284b25d3b754e89b066821 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1652499 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* Kefka: Wake up from hibernation periodicallyDaisuke Nojiri2019-06-184-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes EC wake up from hibernation every 23 hours. EC will go back to hibernation after it's left idle for 60 minutes. This cycle will be repeated until a battery reaches critical level. When battery reaches the critical level, EC cuts off a battery. If a charger is plugged, EC stays in G3. This is not a new behavior. If a power button is pressed, EC should continue to boot. This patch also - Enables battery cutoff on critical charge. - Sets critical charge level to 6% (5% to cutoff) - Disables pseudo G3 (to enable chip hibernation) Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/128455667,b/134973675 BRANCH=strago TEST=Verify sabin repeats hibernate and wake-up periodically. TEST=Verify sabin boots from hibernation when a power button is pressed. Change-Id: I472c406bd709a1ed2e24f0923360ec4ad239ec26 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1652497 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* mec1322: hibernate: Don't reconfigure all GPIOsShawn Nematbakhsh2019-06-184-170/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cherry-picked CL:325073, only files relevant to kefka. Configuring all GPIOs to INPUT / PULL_UP in hibernate is not a good idea: - INPUT / PULL_UP is not necessarially the lowest-power state (for example, if there is an onboard pull-down). - Most GPIOs should already be in lowest-power state when we're in S5. - For the few GPIOs that need to be in a different state for hibernate, we can use a board-level callback. In addition, remove mec1322 code related to restoring from hibernate state, since we always reset coming out of hibernate. BUG=chrome-os-partner:49608,b/133859209 BRANCH=glados, strago TEST=`hibernate` on chell console when in S5 and AC removed. Verify that EC power is roughly equivalent to low-power idle power. Attach Zinger, verify that device wakes and boots, and charges from charger. Change-Id: Ib00ef035bec32cea3847eb38d743f5c0cec896ca Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Previous-Reviewed-on: https://chromium-review.googlesource.com/322937 (cherry picked from commit 9afff7b7eea233ae19610ed8b31874ad98782846) Reviewed-on: https://chromium-review.googlesource.com/325073 Tested-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Commit-Queue: Duncan Laurie <dlaurie@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1651153 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* Reland "chgstv2: Disable battery communication after cutoff"Daisuke Nojiri2019-06-184-32/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f575f8de1bcea5cfac23d05f151246b427ce40fc. Reason for revert: <INSERT REASONING HERE> Original change's description: > Revert "chgstv2: Disable battery communication after cutoff" > > This reverts commit 11f95cf0c8237cb82c79975c610c9299d989ca1d. > > Reason for revert: we're not going to use this feature. > > Original change's description: > > chgstv2: Disable battery communication after cutoff > > > > Simplo battery(Gauge IC: Renesas) will cancel cutoff mode if > > there is communication after receiving cutoff command. > > This patch will disable battery communication after EC issues > > cutoff command. > > > > Add battery_set_cut_off_state function to set battery_cutoff_state. > > Add battery_cutoff to call board_cut_off_battery function. > > > > BUG=b/129030695 > > BRANCH=strago > > TEST=Verify w/ Simplo battery on Kefka. > > 1. Let battery discharge to 5% then enter cutoff mode. > > 2. Check there is no communication w/ battery in EC console > > and battery enter cutoff mode successfully. > > > > Change-Id: Id37d74cf970e4a6acfe273de41ba761cbaf2c317 > > Signed-off-by: Matt_Wang <Matt_Wang@compal.corp-partner.google.com> > > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1544636 > > Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> > > Reviewed-by: Raymond Chou <raymond_chou@compal.corp-partner.google.com> > > Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> > > Tested-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com> > > Bug: b/129030695 > Change-Id: Ieb7913719f67aae999ecbef63f27c9dad9e453e3 > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1603166 > Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> > Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> > Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Bug: b/129030695 Change-Id: Ia0311423d594f5d50bf6b8325710cf0a70dfda13 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1652496 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
* Revert "Kefka: Disable hibernate on G3 idle, cutoff battery on critical charge"Daisuke Nojiri2019-05-091-24/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a7ed75d1b31fb9758421a830f5356d4da713a8b0. Reason for revert: we don't use this feature. Original change's description: > Kefka: Disable hibernate on G3 idle, cutoff battery on critical charge > > Kefka currently hibernates when it's idel in G3 for 60 min. This behavior > makes Kefka drain a battery deeply over a long idle (3+ months). This > patch disable hibernation in G3. > > Kefka currently hibernates when the battery reaches critical level (2%). > This patch sets the threshold to 5% and makes EC cutoff a battery > instead of hibernate. > > Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> > > BUG=b/124266129 > BRANCH=strago > TEST=Make Kefka drain battery and verify it cuts off a battery when the > soc reaches 5%. Verify Kefka doesn't hibernate after G3 idle timer > exipres. > > Change-Id: Ib8cc770c1de17a1a47abf71b0ab45e732e07b267 > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1515722 > Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> > Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> > Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Bug: b/124266129 Change-Id: Ic1d0bc18689a619c44e6aa19e4f5b62b0f9068a1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1601201 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
* Revert "chgstv2: Disable battery communication after cutoff"Daisuke Nojiri2019-05-094-41/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 11f95cf0c8237cb82c79975c610c9299d989ca1d. Reason for revert: we're not going to use this feature. Original change's description: > chgstv2: Disable battery communication after cutoff > > Simplo battery(Gauge IC: Renesas) will cancel cutoff mode if > there is communication after receiving cutoff command. > This patch will disable battery communication after EC issues > cutoff command. > > Add battery_set_cut_off_state function to set battery_cutoff_state. > Add battery_cutoff to call board_cut_off_battery function. > > BUG=b/129030695 > BRANCH=strago > TEST=Verify w/ Simplo battery on Kefka. > 1. Let battery discharge to 5% then enter cutoff mode. > 2. Check there is no communication w/ battery in EC console > and battery enter cutoff mode successfully. > > Change-Id: Id37d74cf970e4a6acfe273de41ba761cbaf2c317 > Signed-off-by: Matt_Wang <Matt_Wang@compal.corp-partner.google.com> > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1544636 > Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> > Reviewed-by: Raymond Chou <raymond_chou@compal.corp-partner.google.com> > Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> > Tested-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com> Bug: b/129030695 Change-Id: Ieb7913719f67aae999ecbef63f27c9dad9e453e3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1603166 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
* sensor: Adjust max_frequency based on EC performanceGwendal Grignou2019-04-267-15/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Put in max_frequency a value that the sensor AND the EC support. BRANCH=strago BUG=b:118205424,b:118851581,chromium:615059, b:129980306 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. Conflicts: driver/accel_bma2x2.h driver/accel_lis2dh.h driver/accelgyro_bmi160.h driver/accelgyro_lsm6dsm.h driver/als_opt3001.h driver/als_si114x.h driver/mag_lis2mdl.h include/config.h 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> (cherry picked from commit 77b306b340ca428ba6785add204ccdce82185274) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1529140 Reviewed-by: Enrico Granata <egranata@chromium.org> (cherry picked from commit 0d13fc3622964212bf266eccf10d6a53327f5d85) Signed-off-by: Enrico Granata <egranata@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1582859
* poppy: Lower sensor max ODRGwendal Grignou2019-04-261-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | EC seems to miss sample while providing sensor data at 200Hz. Limit sensors ODR to 100Hz. BUG=b:67112751, b:129980306 BRANCH=strago TEST=compile, tbd Conflicts: board/poppy/board.h include/config.h Change-Id: Ic324c3d989854ae8b7f6b27bf6338266ce01ceda Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/753434 Commit-Ready: Li1 Feng <li1.feng@intel.com> Tested-by: Li1 Feng <li1.feng@intel.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit c5c061f9b5707205bb32abdac15dc14a9af14800) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1529139 Reviewed-by: Enrico Granata <egranata@chromium.org> (cherry picked from commit 92a8259fad24693be711c085d3e6796490cabc6f) Signed-off-by: Enrico Granata <egranata@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1582018
* common: sensors: add extra sensor attributesNick Vaccaro2019-04-2614-9/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | 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=strago BUG=chromium:615059, b:129980306 TEST=build/boot and verify MOTIONSENSE_CMD_INFO response on kevin, make buildall -j passes. Change-Id: I66db9715c122ef6bb4665ad5d086a9ecc9c7c93a Signed-off-by: Nick Vaccaro <nvaccaro@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/482703 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit 9a0d0aa70d483be79c71a459dfd5f5e89da2638d) Signed-off-by: Enrico Granata <egranata@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1582017 Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* chgstv2: Disable battery communication after cutoffMatt_Wang2019-03-294-32/+41
| | | | | | | | | | | | | | | | | | | | | | | | | Simplo battery(Gauge IC: Renesas) will cancel cutoff mode if there is communication after receiving cutoff command. This patch will disable battery communication after EC issues cutoff command. Add battery_set_cut_off_state function to set battery_cutoff_state. Add battery_cutoff to call board_cut_off_battery function. BUG=b/129030695 BRANCH=strago TEST=Verify w/ Simplo battery on Kefka. 1. Let battery discharge to 5% then enter cutoff mode. 2. Check there is no communication w/ battery in EC console and battery enter cutoff mode successfully. Change-Id: Id37d74cf970e4a6acfe273de41ba761cbaf2c317 Signed-off-by: Matt_Wang <Matt_Wang@compal.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1544636 Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-by: Raymond Chou <raymond_chou@compal.corp-partner.google.com> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com>
* Kefka: Disable hibernate on G3 idle, cutoff battery on critical chargeDaisuke Nojiri2019-03-141-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | Kefka currently hibernates when it's idel in G3 for 60 min. This behavior makes Kefka drain a battery deeply over a long idle (3+ months). This patch disable hibernation in G3. Kefka currently hibernates when the battery reaches critical level (2%). This patch sets the threshold to 5% and makes EC cutoff a battery instead of hibernate. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/124266129 BRANCH=strago TEST=Make Kefka drain battery and verify it cuts off a battery when the soc reaches 5%. Verify Kefka doesn't hibernate after G3 idle timer exipres. Change-Id: Ib8cc770c1de17a1a47abf71b0ab45e732e07b267 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1515722 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
* power: Allow board to take custom action on G3 timer expirationDaisuke Nojiri2019-03-147-23/+749
| | | | | | | | | | | | | | | | | | | | This patch introduces board_system_is_idle callback function. It's called when system is in G3. A board can customize its action taken when system is idle in G3 using battery thresholds, expiration timer, etc. determined at runtime. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=none BRANCH=nami,strago,coral TEST=Verify Vayne cut off battery on G3 idle expiration while other Nami's hibernate. Change-Id: I6118a074ac7d844b99d9c0f3eb638b72d5894008 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1515721 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
* power: Refactor POWER_G3 state logicDaisuke Nojiri2019-03-141-18/+13
| | | | | | | | | | | | | | | | | | | | | This patch refactors the logic for POWER_G3 state. This patch additionally makes the power task sleep instead of break and return from power_common_state if system_hibernate returns, which shouldn't happen. Other than that, there is no functionality change. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=none BRANCH=nami,strago,coral TEST=Verify Vayne hibernates when it's left idle in s5 for 60 mins. Change-Id: Ib4a0e9a0e26fdc867395950e3f77bb06e6977f8b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1515720 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
* chgstv2: Refactor shutdown_on_critical_batteryDaisuke Nojiri2019-03-142-45/+57
| | | | | | | | | | | | | | | | | This patch refactors shutdown_on_critical_battery. There is no change in its functionality. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=none BRANCH=nami,strago,coral TEST=Verify Vayne cuts off battery when soc <= 4% in S0 and S5. Change-Id: Ia6d3e2166d01803ae8983afd2d4e15d254845065 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1515719 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
* chgstv2: Allow board to set charge level for shutdownDaisuke Nojiri2019-03-142-2/+20
| | | | | | | | | | | | | | | | | Currently, BATTERY_LEVEL_SHUTDOWN is statically determined. This patch allows it to be set at runtime. Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/123727148 BRANCH=nami,strago,coral TEST=Verify Vayne shuts down when soc <= 4 in s0 and s5. Change-Id: I535c451e97ebf6bc735c46d7789d4b56ed82914b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1515718 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
* chgstv2: Make board_critical_shutdown_check specify action on critical socDaisuke Nojiri2019-03-145-12/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, board_critical_shutdown_check is used only in the context of CONFIG_BATTERY_CRITICAL_SHUTDOWN_CUT_OFF. It returns true to cutoff the battery or false to take no action. This patch extends board_critical_shutdown_check to allow it to control what actions to take on critical battery condition. With this change, each board can also customize critical battery actions with more granularity (per OEM, BOARD_VERSION, etc.). Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> BUG=b/123727148 BRANCH=nami TEST=Verify a battery is cutoff at critical low charge on Scarlet and DUT wakes up by AC plugin on cros/firmware-scarlet-10388.B. Change-Id: Id49e860b05e21c3bfa4d75f27c48b55c2a3ad95f Reviewed-on: https://chromium-review.googlesource.com/1487113 Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1515717 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org>
* config_option_check.py: Add owner to TODO.Aseda Aboagye2018-10-161-1/+1
| | | | | | | | | | | | | BUG=None BRANCH=firmware-strago-7287.B, firmware-cyan-7287.B TEST=None Change-Id: Id00b23942f3239833e6ee2e7478beb0dfe5e053f Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/1277607 Reviewed-by: Dylan Reid <dgreid@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Aseda Aboagye <aaboagye@chromium.org>
* kefka: Keep giving charge voltage/current when wake up dead batteryCloud2017-08-091-0/+1
| | | | | | | | | | | | | | | | | | | | LGC and BYD battery will give charge voltage 0 and charge current 0 about 5 seconds when the battery wakes up. It will cause charger stops and fail to wake up the battery. Force to give max charge voltage and precharge current after the battery wakes up to prevent the issue. BUG=b:64152371;b:64148243 BRANCH=firmware-strago-7287.B TEST=Make system with LGC/BTD to over discharge state. Make sure that we can wake up the system. Signed-off-by: Cloud Lin <cloud_lin@compal.com> Change-Id: I4b512488465c7870a2359f19bdb910b16cf673f6 Reviewed-on: https://chromium-review.googlesource.com/605409 Tested-by: Lin Cloud <cloud_lin@compal.com> Reviewed-by: YH Lin <yueherngl@chromium.org> Reviewed-by: Shawn N <shawnn@chromium.org> Commit-Queue: Lin Cloud <cloud_lin@compal.com>
* Common: charge timeout function should exclude manual mode in factory.Ryan Zhang2017-07-181-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> (cherry picked from commit a5d1b7169f7ca04cbac7c5bab33602b9eb6f49b4) Reviewed-on: https://chromium-review.googlesource.com/569422
* UPSTREAM: driver: kionix: Add checking whoami value at initialization.Yidi Lin2017-04-231-1/+1
| | | | | | | | | | | | | | | | | | | spi_transaction() always returns success even without the sensor. Check whoami value to make sure that the sensor is existed. BUG=none BRANCH=strago TEST=remove LID accel sensor from elm and see init failed log. [1.258973 Lid Accel: 1: init failed: 4] Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/453579 Reviewed-by: Gwendal Grignou <gwendal@chromium.org> (cherry picked from commit 1d8fcd4fabfed67d8304b3c5ad418cf6f5ae1878) Change-Id: I55aa35bc9790e5dec61e22aa2f51243e29368a86 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/484586 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* driver: kionix: Add WHO_AM_I values.Gwendal Grignou2017-04-232-0/+2
| | | | | | | | | | | | | | Values were added as part of i2ctest console command. Add them to check the sensors are alive. BUG=chrome-os-partner:39269,chrome-os-partner:63146 TEST=make -j buildall BRANCH=strago Change-Id: I2e9d9e57c9bbec33f77fba6b68cc29f8aa244d7d Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/484585 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* UPSTREAM: driver: kionix: Forgive i2c read failures while the acc is resettingGwendal Grignou2017-04-231-5/+0
| | | | | | | | | | | | | | | | | | | | | | | Port changes cl/288874 to generic kionix driver. From cl/288874: After we write SRST in CTRL2, there seems to be a period of time where the accelerometer doesn't respond to i2c commmands. Instead of failing the init just consider it as part of the timeout period. BUG=chrome-os-partner:39269,chrome-os-partner:63146 TEST=make -j buildall BRANCH=veyron,cave,strago Reviewed-on: https://chromium-review.googlesource.com/445973 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit 4a34b0d88f6b0075ee66a18f4aa22325dc766eb6) Reviewed-on: https://chromium-review.googlesource.com/446417 (cherry picked from commit 9af60bb7955a8bba0710798d1dcf2a4d2c2aae6b) Change-Id: I2197aa7741d1482b76c7c07b0cb0c171aab86a59 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/484584
* UPSTREAM: driver: kionix: Increase init delay to 20msGwendal Grignou2017-04-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | Port changes cl/289037 to generic kionix driver. Form cl/289037 Sometimes the accelerometer doesn't initialize nicely. Increase the timeout to 20ms. BUG=chrome-os-partner:39269,chrome-os-partner:63146 TEST=buildall BRANCH=veyron,cave,strago Reviewed-on: https://chromium-review.googlesource.com/446132 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit 11c00e1a4116bb0ac387c0264053e66e41a5ec92) Reviewed-on: https://chromium-review.googlesource.com/446699 (cherry picked from commit eb85cc2101ffccce6f54168782afac797f764202) Change-Id: I4e4d8951fc821b8b33daa53e6c3b8da5ffa7acde Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/484583
* Wizpig: Disable Touch Screen and motion sensor for clamshell SKUChris Wang2017-02-222-7/+44
| | | | | | | | | | | | | | | | | | For support clamsehll sku (board id 101) Disable touch screen and motion sensor by board id detecting. BUG=chrome-os-partner:62214;chrome-os-partner:62907 BRANCH=firmware-strago-7287.B TEST=make buildall -j/Check motion sensor and touch screen function on clamshell SKU and covertiable SKU Signed-off-by: Chris Wang <chriswang@ami.com.tw> Change-Id: I92114558b1dcb0cc09561de78faace502d2e213d Reviewed-on: https://chromium-review.googlesource.com/444587 Tested-by: Chris Wang <chriswang@ami.com.tw> Reviewed-by: Shawn N <shawnn@chromium.org> Commit-Queue: Chris Wang <chriswang@ami.com.tw>
* Wizpig: Adapt to new sensor stackPeggy Chuang2017-02-083-4/+156
| | | | | | | | | | | | | | | | | | | Given wizpig overlay is used for convertible as well as clamshell, re-add sensor stack. It was remove in cl/409508 BUG=chrome-os-partner:62184, chrome-os-partner:62214 CQ-DEPEND=CL:435710 TEST=Test tablet mode and normal mode, switch both mode is working normal. Test ARC++ sees the sensors with app AIDA64. BRANCH=strago Signed-off-by: Peggy Chuang <peggychuang@ami.com.tw> Change-Id: I7c731fbdaceb5a95feff556c8ee74fa80b5a9654 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/429770 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Peggy Chuang <PeggyChuang@ami.com.tw> Tested-by: Peggy Chuang <PeggyChuang@ami.com.tw>
* Kefka: Enable motion sensor when system in S3Chris Wang2017-01-031-6/+6
| | | | | | | | | | | | | | | | | | | Enable base/lid motion sensor when system in S3. BUG=chrome-os-partner:61201 BRANCH=firmware-strago-7287.B TEST=Manual on Sabin sku. Boot system with lid open in clamshell mode. Open a shell window and type powerd_dbus_suspend to bring the system to suspend state. Now fold the system to tablet mode. Verify that pressing a key or trackpad does not cause system to wake up Signed-off-by: Chris Wang <chriswang@ami.com.tw> Change-Id: Ie3e7ccc99d0cf6e0bcfbfe591c68a46c8c381660 Reviewed-on: https://chromium-review.googlesource.com/422828 Reviewed-by: YH Lin <yueherngl@chromium.org> Reviewed-by: Shawn N <shawnn@chromium.org> Commit-Queue: Chris Wang <chriswang@ami.com.tw> Tested-by: Chris Wang <chriswang@ami.com.tw>
* Umaro: Adapt to new sensor stackGuohua Zhong2016-12-153-1/+117
| | | | | | | | | | | | | | | | As the sesnsor stack is update. But the sensor stack has been removed for umaro which make the accel not work. So adapt to new sensor stack. BUG=None BRANCH=firmware-strago-7287.B TEST=Check accel sensor works with the new FW The orientation is correct. The tablet & normal mode transits OK. Change-Id: I94e336c8f6571bbe62ef699e81d4f183d22cd6cb Signed-off-by: Guohua Zhong <ghzhong@yifangdigital.com> Reviewed-on: https://chromium-review.googlesource.com/419729 Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* task: Don't propagate TASK_EVENT_TIMER between between waitsShawn Nematbakhsh2016-11-184-5/+14
| | | | | | | | | | | | | | | | In __wait_evt(), if a timer expiration occurs after we read event status, before the timer is canceled, then TASK_EVENT_TIMER will be propagated to the next task wait, likely leading to premature timeout. Prevent this by clearing TASK_EVENT_TIMER after canceling our timer. BUG=chrome-os-partner:58658 BRANCH=gru TEST=Manual on gru, run 'pd # hard' for 12 hours with charger attached, verify no TCPC I2C read errors occur. Change-Id: Iac2f05a768b4ef29f82e7c3eb899f4c7dd5c3744 Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/412390
* clock: Fix clock_wait_cycles() asmShawn Nematbakhsh2016-11-183-6/+6
| | | | | | | | | | | | | | | | | | The 'cycles' register will be clobbered by our macro, so it must be specified as an output operand that may also be used as input. BUG=chrome-os-partner:60000 BRANCH=gru,strago,glados TEST=Build + burn wheatley, verify alignment exception is not encountered on boot. Also verify produced assembly is still correct: 100a89a6: 2303 movs r3, #3 100a89a8: 3b01 subs r3, #1 100a89aa: d1fd bne.n 100a89a8 Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Change-Id: I1be03a006967aed6970dbac5d98a19a31e0b7d49 Reviewed-on: https://chromium-review.googlesource.com/412350
* Fix: Use CONFIG_KEYBOARD_DEBUG for keyboard debug printfGwendal Grignou2016-11-171-0/+1
| | | | | | | | | | | | Removed line by mistake. BUG=chrome-os-partner:59967 BRANCH=strago TEST=compile. Check other cherry-pick does not have this issue. Change-Id: I85a65327764dd3c41f7a8e76e797316532c3dfa2 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/412032
* Kefka: update thermal tableChris Wang2016-11-161-5/+5
| | | | | | | | | | | | | | | | Update thermal table by referring to Thermal control table of BSW for Keyston and Corinth -V07 BUG=chrome-os-partner:59470 BRANCH=firmware-strago-7287.B TEST=`make buildall -j` and enter "thermalget" to get thermal information. Signed-off-by: Chris Wang <chriswang@ami.com.tw> Change-Id: Id942d4851a084754f9593254ec35e58ce10d366e Reviewed-on: https://chromium-review.googlesource.com/411680 Tested-by: JackJX Lin <jackjx_lin@compal.com> Reviewed-by: Shawn N <shawnn@chromium.org> Commit-Queue: Steven Houtchens <stevenh@google.com>
* Use CONFIG_KEYBOARD_DEBUG for keyboard debug printfGwendal Grignou2016-11-142-4/+14
| | | | | | | | | | | | | | | Remove keyboard printk like: KB wait/poll when not debugging keyboard. BUG=none BRANCH=none TEST=compile. Reviewed-on: https://chromium-review.googlesource.com/394068 (cherry picked from commit ce92dd27dfa2b60cf4443da5eb47c51d8c7170bf) Change-Id: I9743eab4597d2b661ae7b21c0aab4e1ffdcdb9a4 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/410821 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* common: host: Do no report sensor when motion_sensor_count set to 0.Gwendal Grignou2016-11-141-2/+5
| | | | | | | | | | | | | | | | | On some machine (kefka), the number of sensor is set at run time to 0. Be sure we do not report that sensors or sensor FIFO are available to the kernel. BRANCH=glados TEST=On kefka, check no iio devices are reported, even when sensor FIFO is in the firmware. On Sabin, check all expected IIO devices are present. BUG=b:27849483 Change-Id: I6babefd175bcf6839ceb19b670fe178b609bc248 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/410280 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>