summaryrefslogtreecommitdiff
path: root/board/rowan
Commit message (Collapse)AuthorAgeFilesLines
* board: In motion sensor array, remove assignment to 0Gwendal Grignou2018-03-141-37/+0
| | | | | | | | | | | | Assignment to 0 are no necessary. BUG=none TEST=compile, check nami. BRANCH=none Change-Id: I1bc11efcff31cbfe2947580e7b8db0d5ba72d444 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/959502
* driver/charger/isl923x: Make sure CONFIG_CHARGER_NARROW_VDC is setNicolas Boichat2018-01-101-1/+0
| | | | | | | | | | | | | | | | | | Without this, the battery will discharge if we disallow battery charging (e.g. calling charge_request with either voltage == 0 or current == 0, either by policy, or when the battery is full). Also update config.h to set the option whenever isl923x is used. BRANCH=none BUG=b:66575472 BUG=b:35585464 TEST=make buildall -j Change-Id: Id5515d5ea82a393a3693a3da44cbdc2778296a95 Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/856538 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* config: Add CONFIG_BUTTON_TRIGGERED_RECOVERY.Aseda Aboagye2017-12-182-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The CONFIG_BUTTON_RECOVERY option was a little confusing especially when we have the CONFIG_DEDICATED_RECOVERY_BUTTON option. This commit renames CONFIG_BUTTON_RECOVERY to CONFIG_BUTTON_TRIGGERED_RECOVERY to help make things a little clearer. Additionally, to avoid copy paste, defining CONFIG_BUTTON_TRIGGERED_RECOVERY will populate the recovery_buttons table with either the volume buttons or a dedicated recovery button depending what the board is configured for. Lastly, if CONFIG_DEDICATED_RECOVERY_BUTTON is defined, CONFIG_BUTTON_TRIGGERED_RECOVERY is defined as well since it's implicit. BUG=chromium:783371 BRANCH=None TEST=make -j buildall Change-Id: Idccaa4d049ace0df3b98b35bdd38ac9dbd843200 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/830917 Commit-Ready: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* buttons: Make buttons[] common.Aseda Aboagye2017-11-172-14/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Nearly every board had a buttons array defined in which its contents had the standard volume buttons. This commit creates a single common buttons array that can contain the standard volume buttons and recovery buttons. If a board has volume up and down buttons, they can simply define CONFIG_VOLUME_BUTTONS and it will populate the buttons array with the standard definition. The buttons are active low and have a 30 ms debounce period. Similiarly, if a board has a dedicated recovery button, defining CONFIG_DEDICATED_RECOVERY_BUTTON will also populate the buttons array with a recovery button. BUG=chromium:783371 BRANCH=None TEST=make -j buildall. TEST=Flash a device with CONFIG_VOLUME_BUTTONS, verify pressing volume buttons still work. Change-Id: Ie5d63670ca4c6b146ec8ffb64d40ea9ce437b913 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/773794 Commit-Ready: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-by: Shawn N <shawnn@chromium.org>
* charge_manager: Enter safe mode at bootShawn Nematbakhsh2017-11-021-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | Charge port / current selection often needs to be significantly altered when a battery cannot provide sufficient charge, so have charge_manager initially enter safe mode. After a battery with sufficient capacity has been identified, charge manager will leave safe mode, and port / current selection will return to standard rules. BUG=chromium:777596 BRANCH=None TEST=Pass charge_manager unit tests. On kevin, remove battery, attach Apple PD charger, verify safe mode is not exited and device does not brown out. Hot-plug battery and verify safe mode is exited. Next, remove battery, attach to Samus, verify safe mode is not exited and device doesn't brown out. Hot-plug battery, verify that safe mode is exited and no active charge port, due to dual-role exclusion. Change-Id: I7784865750087a037aad8dbbac058b22c77ba6d4 Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/733954 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* charge_ramp: Move ramp allowed / ilim callbacks to common codeShawn Nematbakhsh2017-10-061-33/+0
| | | | | | | | | | | | | | | | | | | | | The decision on whether to ramp (and how high) depends on the quirks of charger identification, so move the decision out of board, into the drivers that implement usb_charger. Also, rename CONFIG_CHARGE_RAMP to CONFIG_CHARGE_RAMP_SW, to better contrast with the existing CONFIG_CHARGE_RAMP_HW. BUG=None TEST=Manual on kevin, verify ramp occurs when port plugged into Z840 workstation. BRANCH=None Change-Id: I5b395274133837a18a4f4ac34b59b623287be175 Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/702681 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* pd: Move *_set_input_current() to common codeShawn Nematbakhsh2017-10-051-20/+0
| | | | | | | | | | | | | | | | | | | Boards that use charge_manager have identical implementations of typec_set_input_current_limit() and pd_set_input_current_limit(), so move these functions to charge_manager. BUG=b:67413505 TEST=`make buildall -j`, also verify that fizz continues to power-on and boot AP, in both protected and unprotected mode, with barrel jack power and with zinger. BRANCH=None Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Change-Id: I99a5314d02c4696db944c0f8ac689405f4f1f707 Reviewed-on: https://chromium-review.googlesource.com/701412 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* power: Add flags parameter to power_signal_infoFurquan Shaikh2017-10-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | Replace structure member "level" in power_signal_info with "flags". "level" has been used on all boards to indicate active-high or active-low levels. Addition of "flags" allows easy extension of power_signal_info structure to define various flags that might be applicable to power signals (e.g. "level"). Going forward, additional flag will be added in follow-up CLs. Also, provide a helper function power_signal_is_asserted that checks the actual level of a signal and compares it to the flags level to identify if a power signal is asserted. BUG=b:65421825 BRANCH=None TEST=make -j buildall Change-Id: Iacaabd1185b347c17b5159f05520731505b824b8 Signed-off-by: Furquan Shaikh <furquan@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/679979 Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
* Treat SYSTEM_IMAGE_RW_B also as RW copyDaisuke Nojiri2017-09-091-2/+1
| | | | | | | | | | | | | | SYSTEM_IMAGE_RW_B hasn't been globally treated as a RW copy. This change makes EC treat it also as a RW copy. BUG=none BRANCH=none TEST=make buildall Change-Id: Iae5a9090cdf30f980014daca44cdf8f2a65ea1f2 Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/656337 Reviewed-by: Randall Spangler <rspangler@chromium.org>
* pd_log: Make PD logging more generic for general purpose loggingShawn Nematbakhsh2017-08-021-1/+0
| | | | | | | | | | | | | | | | | | We can re-use our pd_log FIFO for other purposes, such as TPM logging. Carve out event_log, a generic logging module which pd_log is compatible with. BUG=b:63760920 TEST=On kevin, verify PD logging is still functional and entries are seen in dmesg. BRANCH=None Change-Id: I8e6ad6f93e9eebc676aca64652c60f81da471a94 Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/597314 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
* driver: Move PI3USB9281 to bc12 directory.Aseda Aboagye2017-07-312-3/+3
| | | | | | | | | | | | | | | | | | | | The primary purpose of the Pericom PI3USB9281 is for BC1.2 detection. Therefore, move the driver to the bc12/ directory. Additonally, rename the config option to match. CONFIG_USB_SWITCH_PI3USB9281 => CONFIG_BC12_DETECT_PI3USB9281 BUG=None BRANCH=None TEST=`make -j buildall` Change-Id: I02f17064c0625e62d6779f895e69899c24898f74 Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/594710 Commit-Ready: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Shawn N <shawnn@chromium.org>
* cleanup: motion_sense: Remove driver data structure externsShawn Nematbakhsh2017-06-151-1/+1
| | | | | | | | | | | | | | | Driver data structs are now accessed through the drv_data pointer. BUG=chromium:733352 BRANCH=None TEST=`make buildall -j` Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Change-Id: I8fedb425708a08ae6900ade6f17967fe2bc75ebf Reviewed-on: https://chromium-review.googlesource.com/537217 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* common: sensors: add extra sensor attributesNick Vaccaro2017-05-181-0/+4
| | | | | | | | | | | | | | | | | | | | | | 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=none BUG=chromium:615059 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>
* button: Allow board to define recovery buttonsDaisuke Nojiri2017-05-091-0/+6
| | | | | | | | | | | | | | This patch declares recovery_buttons array, where each board lists recovery buttons. Pressing those while the board reboots makes the system enter recovery mode. BUG=none BRANCH=none TEST=buildall Change-Id: I1f204156efbd6d2a507d67ba90f75ce857b03559 Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/486944
* rowan: enable Lid Accel but not Gyro readings in S0Daniel Kurtz2017-04-211-6/+6
| | | | | | | | | | | | | | | | | | | Allow EC to take Lid Accelerometer readings in S0 to support rotation, but disable taking Gyro readings unless requested by AP. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> BRANCH=none BUG=b:36668539 TEST=in ec console: accelinfo on => confirm Lid Accel values are non-zero => confirm Gyro values are zero Change-Id: Ie0bf466a5877cf8d20fb3d5cd223696fbdc9c271 Reviewed-on: https://chromium-review.googlesource.com/484140 Commit-Ready: Daniel Kurtz <djkurtz@chromium.org> Tested-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* rowan: update rotation matrixMilton Chiang2017-04-211-2/+2
| | | | | | | | | | | | | | | | BRANCH=none BUG=b:35647688 TEST=test on rowan proto and make sure the display can rotate correctly according to the orientation. Change-Id: I8066227dd2a0628c899ea93680d0f9764b013ddf Signed-off-by: Milton Chiang <milton.chiang@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/461057 Commit-Ready: Daniel Kurtz <djkurtz@chromium.org> Tested-by: Yidi Lin <yidi.lin@mediatek.com> Tested-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
* rowan: gpio: Change SUSPEND_L to PIN(C, 11)Yidi Lin2017-03-221-1/+1
| | | | | | | | | | | | | BRANCH=none BUG=chrome-os-partner:63142 TEST=none Change-Id: I20cafc51bd16856599271503f96a4cbf40e2d6af Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/451177 Commit-Ready: Rong Chang <rongchang@chromium.org> Tested-by: Rong Chang <rongchang@chromium.org> Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
* rowan: correct battery LED colorRong Chang2017-03-221-32/+32
| | | | | | | | | | | | | | | Rowan is using red and green LEDs. BUG=chrome-os-partner:62673 TEST=manual ectool led battery red ectool led battery green BRANCH=None Change-Id: Ifd0e7a6c3d30d260a86ad5c41ef360d50579f56d Signed-off-by: Rong Chang <rongchang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/441568 Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
* rowan: add support for recovery modeRong Chang2017-03-223-0/+20
| | | | | | | | | | | | | Rowan enters recovery mode by pressing volume up + volume down keys. BUG=chrome-os-partner:62673 TEST=press POWER+VOL_UP+VOL_DOWN, rowan enters recovery BRANCH=none Change-Id: I7be33a7e4d820568e7d31dc8a17af7fa96b2d3ac Signed-off-by: Rong Chang <rongchang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/442344 Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
* rowan: Config BMI160Yidi Lin2017-03-222-84/+74
| | | | | | | | | | | | | | | | | | | | | Rowan uses BMI160 as g-sensor and gyro sensor. This change removes KX022 settings and adds BMI160 settings. The LID_ANGLE config is also removed. BRANCH=none BUG=chrome-os-partner:62673 TEST=check the values of the sensors are correct: run ectool motionsense while the machine is flat on the table, raised on its left side and raised on its front edge. With these 3 measurements the accel data along the Z, X and Y axis are showing + 1G. Change-Id: I03c84f143bbfc3037fd5232398d15e9c2a511291 Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/427566 Commit-Ready: Rong Chang <rongchang@chromium.org> Tested-by: Rong Chang <rongchang@chromium.org> Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Rong Chang <rongchang@chromium.org>
* rowan: enable SPI and GPIO console commandsRong Chang2017-03-141-1/+3
| | | | | | | | | | | | | | | | | | Enable more hardware related console commands to help hardware validation. BUG=chrome-os-partner:62673 TEST=manual build and load into Rowan check console commands: gpioget spixfer BRANCH=none Change-Id: I86d3b74cef77ed9244a140290241a9fac6af3f84 Signed-off-by: Rong Chang <rongchang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/441486 Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
* rowan: fix SPI2 reset sequence and chip select ALT functionRong Chang2017-03-142-1/+2
| | | | | | | | | | | | | | | | | EC controls SPI CS pin as GPIO. This CL remove the ALT function config. And before trigger SPI hardware reset, the driver state needs to be disable. BUG=chrome-os-partner:62673 TEST=manual load into Rowan and boot up AP. check console command accelread BRANCH=none Change-Id: I511c5906efbbb42b09547c61414bcc24b0217ad3 Signed-off-by: Rong Chang <rongchang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/441485 Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
* rowan: change battery profile to 2 cellRong Chang2017-03-141-4/+4
| | | | | | | | | | | | | | Rowan use 2 cell battery. BUG=chrome-os-partner:62673 TEST=manual load into rowan and see if EC complains about battery low. BRANCH=none Change-Id: I6d9006ee37e1e3ecc3d2965619a31f1774580cf0 Signed-off-by: Rong Chang <rongchang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/441484 Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
* rowan: enable CONFIG_CHARGE_MANAGER_EXTERNAL_POWER_LIMITYidi Lin2017-02-091-0/+1
| | | | | | | | | | | | | BRANCH=master BUG=chrome-os-partner:62673 TEST=EC_FIRMWARE=rowan emerge-rowan chromeos-ec Change-Id: I16b5584380abac7f32aecd9bcf87ec5dc0123107 Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/427565 Commit-Ready: Patrick Berny <pberny@chromium.org> Tested-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Rong Chang <rongchang@chromium.org>
* rowan: Add ISL29035Yidi Lin2017-02-093-1/+20
| | | | | | | | | | | | | | | Add ambient light sensor support for rowan. BRANCH=master BUG=chrome-os-partner:62673 TEST=EC_FIRMWARE=rowan emerge-rowan chromeos-ec Change-Id: Idfc34bd7977c96ac245a6d06cab064e65b8bf72a Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/427564 Commit-Ready: Patrick Berny <pberny@chromium.org> Tested-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Rong Chang <rongchang@chromium.org>
* rowan: config SPI pinsYidi Lin2017-02-091-6/+3
| | | | | | | | | | | | | | | Configure B12/B13/B14/B15 as SPI pins. BRANCH=master BUG=chrome-os-partner:62673 TEST=EC_FIRMWARE=rowan emerge-rowan chromeos-ec Change-Id: Ia7aad9ba0e15a8e6b623a8ae37f76db3f8f7c7a5 Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/427563 Commit-Ready: Patrick Berny <pberny@chromium.org> Tested-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Rong Chang <rongchang@chromium.org>
* rowan: GPIO configurationYidi Lin2017-02-095-126/+30
| | | | | | | | | | | | | | | | | | | | | | Configure GPIO pins according to Rowan's design. Leave following pins unconfigured for now. - CCD_MODE_ODL - EC_HAVEN_RST_ODL - OTG_EN_EC - VOLUME_UP_IN_SOC_R - VOLUME_DOWN_IN_SOC_R BRANCH=master BUG=chrome-os-partner:62673 TEST=EC_FIRMWARE=rowan emerge-rowan chromeos-ec Change-Id: Icd5113a7ba1903d1e8eb7930c606dde2418fdc61 Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/427562 Commit-Ready: Patrick Berny <pberny@chromium.org> Tested-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Rong Chang <rongchang@chromium.org>
* rowan: remove keyscan task to remove the keyboard supportYidi Lin2017-02-091-1/+0
| | | | | | | | | | | | | | | | | Rowan does not have the keyboard. Remove keyscan task to remove the keyboard support. BRANCH=master BUG=chrome-os-partner:62673 TEST=EC_FIRMWARE=rowan emerge-rowan chromeos-ec Change-Id: I802dd4073cabaa71c2655cc654efe3669f6ed083 Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/427561 Commit-Ready: Patrick Berny <pberny@chromium.org> Tested-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Rong Chang <rongchang@chromium.org>
* rowan: Add initial support for rowanYidi Lin2017-02-098-0/+1609
Copied from elm with string updated. BRANCH=master BUG=chrome-os-partner:62673 TEST=EC_FIRMWARE=rowan emerge-rowan chromeos-ec Change-Id: I424e9ea1cb1520766222eff3156da5f6edbcc2fd Signed-off-by: Yidi Lin <yidi.lin@mediatek.com> Reviewed-on: https://chromium-review.googlesource.com/427560 Commit-Ready: Patrick Berny <pberny@chromium.org> Tested-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Patrick Berny <pberny@chromium.org> Reviewed-by: Rong Chang <rongchang@chromium.org>