summaryrefslogtreecommitdiff
path: root/board/damu
Commit message (Collapse)AuthorAgeFilesLines
* ish: Trim down the release branchstabilize-wristpin-14469.59.B-ishstabilize-voshyr-14637.B-ishstabilize-quickfix-14695.187.B-ishstabilize-quickfix-14695.124.B-ishstabilize-quickfix-14526.91.B-ishstabilize-14695.85.B-ishstabilize-14695.107.B-ishstabilize-14682.B-ishstabilize-14633.B-ishstabilize-14616.B-ishstabilize-14589.B-ishstabilize-14588.98.B-ishstabilize-14588.14.B-ishstabilize-14588.123.B-ishstabilize-14536.B-ishstabilize-14532.B-ishstabilize-14528.B-ishstabilize-14526.89.B-ishstabilize-14526.84.B-ishstabilize-14526.73.B-ishstabilize-14526.67.B-ishstabilize-14526.57.B-ishstabilize-14498.B-ishstabilize-14496.B-ishstabilize-14477.B-ishstabilize-14469.9.B-ishstabilize-14469.8.B-ishstabilize-14469.58.B-ishstabilize-14469.41.B-ishstabilize-14442.B-ishstabilize-14438.B-ishstabilize-14411.B-ishstabilize-14396.B-ishstabilize-14395.B-ishstabilize-14388.62.B-ishstabilize-14388.61.B-ishstabilize-14388.52.B-ishstabilize-14385.B-ishstabilize-14345.B-ishstabilize-14336.B-ishstabilize-14333.B-ishrelease-R99-14469.B-ishrelease-R98-14388.B-ishrelease-R102-14695.B-ishrelease-R101-14588.B-ishrelease-R100-14526.B-ishfirmware-cherry-14454.B-ishfirmware-brya-14505.B-ishfirmware-brya-14505.71.B-ishfactory-kukui-14374.B-ishfactory-guybrush-14600.B-ishfactory-cherry-14455.B-ishfactory-brya-14517.B-ishJack Rosenthal2021-11-058-908/+0
| | | | | | | | | | | | | | | | | | | | | | In the interest of making long-term branch maintenance incur as little technical debt on us as possible, we should not maintain any files on the branch we are not actually using. This has the added effect of making it extremely clear when merging CLs from the main branch when changes have the possibility to affect us. The follow-on CL adds a convenience script to actually pull updates from the main branch and generate a CL for the update. BUG=b:204206272 BRANCH=ish TEST=make BOARD=arcada_ish && make BOARD=drallion_ish Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I17e4694c38219b5a0823e0a3e55a28d1348f4b18 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3262038 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Tom Hughes <tomhughes@chromium.org>
* ioex: it8801: Support multiple I2C addressesVijay Hiremath2021-09-102-3/+6
| | | | | | | | | | | | | | | | | | | To avoid the I2C address contention between multiple I2C devices on same bus, added code to support multiple I2C addresses for it8801 I/O expander. BUG=none BRANCH=none TEST=make buildall -j Change-Id: I6985973f9ae3ce91383d3b568a851169e6a308af Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3115426 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@google.com> Reviewed-by: Li Feng <li1.feng@intel.com>
* USB MUX: Convert usb_mux HPD functions to use mux_state_tDiana Z2021-08-301-1/+1
| | | | | | | | | | | | | | Since we have definitions for HPD IRQ and level in the mux flags, extend this to the HPD update function in the usb_mux structure as well. BRANCH=None BUG=b:172222942 TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I19c3a65fc821a341338d73fabd7876339b37fe7d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3095437 Reviewed-by: Keith Short <keithshort@chromium.org>
* adc: Remove adc_chip.h where adc.h is usedCaveh Jalali2021-08-271-1/+0
| | | | | | | | | | | | | | This removes the use of adc_chip.h where adc.h is also used. In this case, adc_chip.h is redundant. BRANCH=none BUG=b:181271666 TEST=buildall passes Change-Id: Id7baf9aef949447a4d47934242f9bae97c971262 Signed-off-by: Caveh Jalali <caveh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3120317 Reviewed-by: Keith Short <keithshort@chromium.org>
* keyboard: Use __override for keyboard_scan_configDaisuke Nojiri2021-07-231-1/+1
| | | | | | | | | | | | | | | | | Currently keyboard_scan_config is defined by each board using CONFIG_KEYBOARD_BOARD_CONFIG. This patch makes it defined as __override hence removes CONFIG_KEYBOARD_BOARD_CONFIG. BUG=None BRANCH=None TEST=buildall Change-Id: I53a356741ba4d00e829ca59b74ee6dc704188728 Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3044403 Tested-by: Gwendal Grignou <gwendal@chromium.org> Commit-Queue: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* kukui: move common mkbp wake events to baseboard.hEric Yilun Lin2021-06-291-4/+0
| | | | | | | | | | | | | | | | also, kodama(detachable) missed MODE_CHANGE event, add it back. BUG=none TEST=make buildall BRANCH=kukui,icarus Change-Id: Id7139ef64caf28720d389d8c048bfd724b42ba95 Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2987227 Tested-by: Eric Yilun Lin <yllin@google.com> Auto-Submit: Eric Yilun Lin <yllin@google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org>
* COIL: Rename motion sense address macrosDiana Z2021-06-091-2/+4
| | | | | | | | | | | | | | | | Update the motion_sense.h address macros to reflect our current i2c terms, and also to specify that these are used exclusively in the accelerometer code. BRANCH=None BUG=None TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Ibad287df2ba1ecd0b6f3061599476636ac7a5354 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2946316 Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* COIL: Rename MODULE_SPI_MASTER to MODULE_SPI_CONTROLLERCaveh Jalali2021-06-032-4/+4
| | | | | | | | | | | | | | | | This renames the MODULE_SPI_MASTER to MODULE_SPI_CONTROLLER. BRANCH=none BUG=b:181607131 TEST=make buildall passes; "compare_build.sh -b all" shows no difference Change-Id: I4d33f57fd82c5b57f111c12387113dc82cebe60b Signed-off-by: Caveh Jalali <caveh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2932466 Reviewed-by: Craig Hesling <hesling@chromium.org> Reviewed-by: Harry Cutts <hcutts@chromium.org> Commit-Queue: Craig Hesling <hesling@chromium.org>
* LED On/Off: Make battery LED optionalDiana Z2021-04-221-4/+5
| | | | | | | | | | | | | | | Currently, all boards using the LED On/Off module have battery LEDs. However, if we'd like to expand support to Chromeboxes then the battery LED must become optional. BRANCH=None BUG=b:185508707 TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Ieae098829ebe6c8b103f23d5abdbf70e7bcbdf2d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2832692 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* LED On/Off: Remove power LED configDiana Z2021-04-222-3/+3
| | | | | | | | | | | | | | | | | | | | | | Move the LED on/off module towards using a more flexible LED support approach. Define a weak power LED table and setter for boards to override when needed. Note that during run-time these functions will not get called since led_auto_control_is_enabled() will return false for nonexistent LEDs. This consumes an average of 165 additional bytes of flash space on boards which do not use a power LED. BRANCH=None BUG=b:185508707 TEST=make -j buildall, load on guybrush (battery LED only) and confirm no errors are seen. Load on Boten (both LEDs) and confirm behavior appears normal Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Iaa1e22a7f5d8be39eb8792ee13d358087d7f7482 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2832691 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* Add a common header for board_is_sourcing_vbus()Simon Glass2021-03-311-1/+0
| | | | | | | | | | | | | | | | This function prototype is defined in lots of files, none of which is visible to Zephyr. Add a prototype in one place and remove the others. BUG=b:183296099 BRANCH=none TEST=make buildall Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: Ia324327a69b117483ab9ee5c85eba93c0fb5ad9c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2789799 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* genvif: Use VIF overrides by defaultAbe Levkoy2021-03-301-0/+3
| | | | | | | | | | | | | | Use board-specific override files when generating VIFs for boards. BUG=b:172276715 TEST=make buildall BRANCH=none Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Change-Id: I197365018ceb8197c22d631cebf4cbce1c0119f7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2785506 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org>
* jacuzzi: enable keyboard scanning in S0/tabletTing Shen2021-03-231-13/+0
| | | | | | | | | | | | | | | | | | | Most Jacuzzi devices copied the incorrect lid_angle_peripheral_enable code from Reef. Fix this by sharing Willow's good implementation to all followers. BUG=b:181852624 TEST=1) make buildall 2) manually test on fennel BRANCH=kukui Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: Ie2dd79d5d0dcebe564664c357db73c5956d1b14b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2765633 Tested-by: Ting Shen <phoenixshen@chromium.org> Auto-Submit: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Commit-Queue: Eric Yilun Lin <yllin@chromium.org>
* COIL: Rename ioexpander i2c address variableDiana Z2021-02-241-1/+1
| | | | | | | | | | | | | | Rename ioexpander i2c address to match current conventions and update any calling locations. BRANCH=None BUG=None TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Iddad457f73d0dd0167496b794c00e274f8985615 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2697855 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* baseboard/kukui: add support for EC variantDino Li2021-02-231-0/+1
| | | | | | | | | | | | | | | With this change, we are able to build baseboard/kukui/baseboard.c on other chips. BUG=none BRANCH=none TEST=buildall. Signed-off-by: Dino Li <Dino.Li@ite.com.tw> Change-Id: I209daaa991f021fb7c33c21c28a7be30203510bc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2710131 Reviewed-by: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@chromium.org>
* board: Set Accelerometer range to 4gGwendal Grignou2021-02-131-1/+1
| | | | | | | | | | | | | | | | | For accelerometer presented to Android, set default range to 4g. Required by Android CDD - Section 7.3.1 - Paragraph C.1.4. mems_setup can correct it, but it is cleaner if the default setting is right. BUG=b:144004449 BRANCH=none TEST=compile Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: I781eafc003823e2595d46d7170f717aaee08dc6d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2657956 Reviewed-by: Alexandru M Stan <amstan@chromium.org>
* spi: Pass in spi_device as argument to spi_enable instead of portTom Hughes2021-01-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | Rather than passing in the port and iterating over the global spi_devices variable, pass in the specific spi_device that is being enabled/disabled. The spi_device_t struct has the port. This change makes the functions in spi.h more consistent since they now all take a spi_device_t*. This change is the first step in making the SPI configuration more dynamic. BRANCH=none BUG=b:177908650 TEST=git grep 'spi_enable(CONFIG' => no results TEST=make buildall TEST=Flash dragonclaw v0.2 and view console to verify FP sensor ID Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: I64124e0ebcf898e88496acb77703b5f59ae931c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2654081 Commit-Queue: Abe Levkoy <alevkoy@chromium.org> Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* COIL: Rename fusb302 driver variablesDiana Z2021-01-271-1/+1
| | | | | | | | | | | | | Rename i2c variables in the fusb302 driver and c-file references. BRANCH=None BUG=None TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Ifaf7984c52fc197403d447e00c02af036e54987e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2649354 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
* damu: Fix LED behavior under suspend.Michael5 Chen2020-12-231-1/+2
| | | | | | | | | | | | | | | Depend on marketing spec. modify LED behavior under suspend. BUG=b:175920421 BRANCH=kukui TEST=check LED behavir Signed-off-by: Michael5 Chen <michael5_chen1@pegatron.corp-partner.google.com> Change-Id: Ife6c8823dd99d96e568d32abee4d630dc901f6f4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2600425 Reviewed-by: Paul2 Huang <paul2_huang@pegatron.corp-partner.google.com> Reviewed-by: Chen-Tsung Hsieh <chentsung@chromium.org> Commit-Queue: Chen-Tsung Hsieh <chentsung@chromium.org>
* tcpm: Move tcpm.h into an include directorySimon Glass2020-12-221-1/+1
| | | | | | | | | | | | | | | | | | This header file is used from quite a few files, relying on the EC build system to find includes in the driver/tcpm directory. For Zephyr we don't want to add that as an include. It makes more sense for header files to be in an include directory, so move it and fix up the users. BUG=b:175434113 BRANCH=none TEST=build Zephyr and ECOS on volteer Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I5851914b1a7d3fdc1ba911c0fbe9046afbaf6f5d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2597985 Reviewed-by: Keith Short <keithshort@chromium.org>
* task_set_event: remove the wait argumentDawid Niedzwiecki2020-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | There is an option in the task_set_event function which force the calling task to wait for an event. However, the option is never used thus remove it. This also will help in the Zephyr migration process. BUG=b:172360521 BRANCH=none TEST=make buildall Signed-off-by: Dawid Niedzwiecki <dn@semihalf.com> Change-Id: Ic152fd3d6862d487bcc0024c48d136556c0b81bc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2521599 Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Tom Hughes <tomhughes@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org>
* jacuzzi: remove ADC_BATT_IDTing Shen2020-08-282-2/+0
| | | | | | | | | | | | | | | | | ADC_BATT_ID is reassigned to BATT_PRES in Jacuzzi families. Remove it from source code to prevent people using it. BRANCH=kukui BUG=none TEST=make buildall Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: I213b502413642c9bfff99443180ddb43debb2463 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2380842 Tested-by: Ting Shen <phoenixshen@chromium.org> Auto-Submit: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Nicolas Boichat <drinkcat@chromium.org> Commit-Queue: Nicolas Boichat <drinkcat@chromium.org>
* Charger: Add dynamic charger chip countDiana Z2020-07-111-1/+0
| | | | | | | | | | | | | | | | Different DB options may cause different numbers of charger chips to be present on the system. Remove constant count for charger chips, and instead always call into the overridable function to query the count. BRANCH=None BUG=b:155963446 TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I0e65b8af351ecabe6f7b823e0e56f1932cc280a6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2277833 Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* damu: disable keyboard at tablet mode when in S3Paul Ma2020-07-082-0/+14
| | | | | | | | | | | | | | | | | When in S3 and tablet mode, keyboard scan should be disabled and machine should not be waked up if user press keyboard. BUG=b:160557015 BRANCH=kukui TEST=put machine in tablet mode, use 'powerd_dbus_suspend' to let machine enter S3, press any key of keyboard will not wake up the machine. Change-Id: If98e01e512b040b7e45e40b6064cbdae5b39944e Signed-off-by: Paul Ma <magf@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2284510 Reviewed-by: Li-jen Chen <lijen@google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* Damu: fix lid sensor rotation matrixCasper Chang2020-06-151-2/+2
| | | | | | | | | | | | | | | | BUG=b:147689571 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall TEST=boot into OS and screen show normally. Change-Id: Ib163eb7edee9c79efbf650b9889c6bb16fd3cd05 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2241090 Tested-by: Casper Chang <casper.chang@bitland.corp-partner.google.com> Reviewed-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Reviewed-by: Li-jen Chen <lijen@google.com> Reviewed-by: Zhuohao Lee <zhuohao@chromium.org> Commit-Queue: Casper Chang <casper.chang@bitland.corp-partner.google.com>
* kukui: pull up SPI1_NSS (CS_L).Eric Yilun Lin2020-05-251-1/+1
| | | | | | | | | | | | | | | | There is no pull-up at AP side, so we should pull it up at EC side to prevent EC SPI controller is starved waitting for AP SPI commands. BUG=b:156047546 TEST=make buildall; krane is booted. BRANCH=kukui Change-Id: I81f4aefb5e96f968cfbf5189b1f80e1e82f2d3ae Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2214460 Reviewed-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org>
* PD: Remove unnecessary PDCMD taskDiana Z2020-05-201-1/+0
| | | | | | | | | | | | | | | | | | | The PDCMD task is only pulling interrupts from the TCPCs on most boards, which is unnecessary since the PD_INT tasks handle this job now. Remove it from any boards using the PD_INT command which are not using the older CONFIG_HOSTCMD_PD functionality (ex. samus, oak). Located boards using: find -name "ec.tasklist" | xargs grep -l PD_INT | xargs grep PDCMD BRANCH=None BUG=b:154959596 TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I29be8ab1d7a2616603fb55236aed4329ed8654f5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2208221 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* damu: fix battery cutoffScott Chao2020-05-111-1/+1
| | | | | | | | | | | | | BUG=b:156209241 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall TEST=ectool batterycutoff Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: Ie2555d7f3254c193d9d76289f53b4833708c6c0f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2193252 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: modify lid accel to LIS2DWLScott Chao2020-05-112-9/+9
| | | | | | | | | | | | BUG=b:147689571 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: I2e05202e062a16c9f746a13608c3d31d90148481 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2190099 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: update LED GPIO pinsScott Chao2020-05-071-1/+1
| | | | | | | | | | | | | BUG=b:147163799 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall TEST=LED on damu work as expected. Change-Id: Ie0d6a4b968cf6d186f420cda19ebe2ac9456c47c Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2182112 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: fix lid sensor rotation matrixScott Chao2020-05-051-6/+6
| | | | | | | | | | | | | BUG=b:155315888 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall TEST=boot into OS and screen show normally. Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: I65176198555e37bb5deb7f54cbf49e767fe4253f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2172284 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* OCPC: Add concept of active charger ICAseda Aboagye2020-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | With OCPC, one charger IC per Type-C port, there are now multiple charger ICs present in the system. This commit adds the beginning of OCPC support by adding the notion of an active charger IC. Charge Manager will select the active charger IC based upon the charge port. Boards must define this mapping in a board specific function. Additionally, this commit adds chgnum as a parameter to charger_set_input_current_limit(). BUG=b:148981052 BRANCH=None TEST=With other patches, verify that the active charger IC is able to be saved and retrieved. Change-Id: Iba4a8958171ad6e1630b0ca3d07d128bc1f2c4dd Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2135963 Tested-by: Aseda Aboagye <aaboagye@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
* damu: correct battery i2c portScott Chao2020-04-281-1/+1
| | | | | | | | | | | | | | | We set wrong battery i2c port and cause charger stack overflow(CL:2167112). BUG=b:154801027 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall TEST=In ec console type "battery" can get proper info. Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: I02945f1a27e9b4660b2ee2df3b3e4efeb8bd52d9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2169668 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: enlarge CHARGER task stack to 1024 bytesPaul Ma2020-04-271-1/+1
| | | | | | | | | | | | | | | Enlarge CHARGER task stack to 1024 bytes since when charging, charger stack will overflow. BUG=b:154801027 BRANCH=kukui TEST=boot damu, insert battery and DUT will not reboot continuously and battery charging works well. Change-Id: I257ed166b88ce07c0a637c8c1bda38269bf0b27c Signed-off-by: Paul Ma <magf@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2167112 Reviewed-by: Eric Yilun Lin <yllin@chromium.org>
* driver: Replace BMI160 to BMI in board configChing-Kang Yen2020-04-231-6/+6
| | | | | | | | | | | | | | | | | Replace some macro of BMI160 to BMI version for common function of BMI series. Make board config include the accelgyro_bmi_common.h instead of accel_gyro_bmi160.h. BRANCH=None BUG=b:146144827 TEST=make buildall -j Change-Id: I043ff8a92f15295ead3fa5c1e292319e2b4fa21a Signed-off-by: Ching-Kang Yen <chingkang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2156525 Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
* jacuzzi: introduce VARIANT_KUKUI_JACUZZITing Shen2020-04-211-15/+1
| | | | | | | | | | | | | | | move common configs from jacuzzi derivatives into baseboard BUG=None TEST=make BRANCH=kukui Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: I5baf8c5bbb6520c324be4d30824b642141eeb331 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2147824 Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org>
* jacuzzi: enable 3A sourcingTing Shen2020-04-211-0/+1
| | | | | | | | | | | | | | | | | | | According to the hw requirement, Jacuzzi should be able to provide 5V/3A when it's not providing power on any other port. BUG=b:153699375 TEST=1. Connect juniper to another chromebook 2. in ec console, `pd 0 dualrole source` to force juniper sourcing power 3. make sure another device is receiving 5V/3A. BRANCH=kukui Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: I3f1b95d3a63b15828b4ea860c32fe2a638593f2b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2145128 Tested-by: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org>
* damu: reduce bitbang failrateScott Chao2020-03-302-3/+3
| | | | | | | | | | | | | | apply CL:2050003 to damu. BUG=b:152456966 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall Change-Id: I397b8e2ae548080e4d6d3cd75f3e57b10080f09a Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2124431 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: modify gpio as SPI for BMI160.Scott Chao2020-03-302-13/+24
| | | | | | | | | | | | | | | | | | | Damu EC using SPI to communicate with BMI160, so set gpio as alternate pin. Also include CL:2043151. BUG=b:147206199 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall TEST=No failed log when sensor init [25.483715 Accel: MS Done Init type:0x0 range:2] [25.492217 Accel ODR: 10000 - roundup 1 from config 1 [AP 0] [25.495683 Gyro: MS Done Init type:0x1 range:1000] [25.501918 Gyro ODR: 0 - roundup 0 from config 0 [AP 0]] Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: I499762166a7021bdda2731f7b1bef0f11d61f1d1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2123621 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: enable bit-bang for battery smbusScott Chao2020-03-264-1/+16
| | | | | | | | | | | | | | | EC using PA5/PC4 as i2c pin for battery. BUG=b:152456966 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall TEST=On board testing to wait until we receive proto1 board. Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: I0064b8fde634fc3824593102e5fe8bc64563b0d5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2120877 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: change lid sensorScott Chao2020-03-192-9/+9
| | | | | | | | | | | | | | | change lid sensor from LIS2DWL to LIS2DE12. BUG:b:147689571 BRANCH:kukui TEST=make -j BOARD=damu TEST=make buildall Change-Id: I3920e41df83d264af177fd3ae36029e866f8a01a Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2109433 Reviewed-by: Li-jen Chen <lijen@google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: Enable IMU sensorsScott Chao2020-03-113-28/+157
| | | | | | | | | | | | | | The LIS2DWLTR is used on lid and BMI160 is used on base. BUG=b:147206199 BRANCH= TEST=make -j BOARD=duma TEST=make buildall Change-Id: I010fe245bf183aaec050ef9390a74ad73b4ab716 Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2091132 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* damu: add initial led supportScott Chao2020-03-094-1/+113
| | | | | | | | | | | | | | | Enable battery and power LED. Note: LED settings will be fine tune after we receive board. BUG=b:147163799, b:147192374 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: I012abd5f4b745015e5265abfa215cf4d1c092e81 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2087436 Reviewed-by: Eric Yilun Lin <yllin@chromium.org>
* damu: update battery parameterScott Chao2020-03-092-41/+13
| | | | | | | | | | | | | | | | | Update battery parameter. - Modified Manufacturer Name and Device Name. - Read the data from reg. SBS_PackStatus_ACCESS (0x99), Bit-3:XDSG, Bit-2:XCHG. When XDSG and XCHG=1, MOSFET is off. BUG=b:150833879 BRANCH=kukui TEST=make -j BOARD=damu TEST=make buildall Signed-off-by: Scott Chao <scott.chao@bitland.corp-partner.google.com> Change-Id: If066a17c069e6652fee081060e37b9dfafb6ad20 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2089211 Reviewed-by: Ting Shen <phoenixshen@chromium.org>
* usb_mux: retimer: mux as chained mux and retimerDenis Brockus2020-02-281-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes retimers appear as generic muxes. By allowing a chain of muxes they can be stacked up to the new configurations that zork requires and will continue to work as they did before on configurations that only have a single mux. The code used to have two different arrays, 1) muxes and 2) retimers. On one of the zork configurations the processor MUX stopped being the primary mux and the retimer took its place. In a different configuration of that same platform it left the primary and secondary alone but the mux_set FLIP operation had to be ignored. Since the same interfaces needed to be available for both it stopped making sense to have two different structures and two different methods of handling them. This consolodates the two into one. The platforms that do not have retimers, this change will not make any difference. For platforms like zork, it will remove the retimers and make them chained muxes. So testing on trembyle makes sense to verify, BUG=b:147593660 BRANCH=none TEST=verify USB still works on trembyle Change-Id: I286cf1e302f9bd3dd7e81098ec08514a2a009fe3 Signed-off-by: Denis Brockus <dbrockus@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2066794 Commit-Queue: Jett Rink <jettrink@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
* jacuzzi: enable tablet mode in ECTing Shen2020-02-183-1/+7
| | | | | | | | | | | | | | | BUG=b:149666087 TEST="tablet mode enabled/disabled" in EC console TEST=see virtual keyboard when flip to 360 degree BRANCH=kukui Change-Id: I44af9f742775aaf71bbf792a70af3176f73bda52 Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2059861 Reviewed-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org> Auto-Submit: Ting Shen <phoenixshen@chromium.org>
* driver/ioexpander_it8801: add I/O expander driver for GPIOtim2020-02-174-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IT8801 is an I/O expander with the gpio. Add api compatible with ioexpander_drv so the main io expander framework can make use of the pins on the it8801. BUG=b/138352732, b/146996723 BRANCH=none TEST=Use gpio.inc to declare the gpio state. The console command #ioexget can get as follows: 0 O L IT8801_G0_00 1 O H IT8801_G0_03 1 O H IT8801_G0_04 0 O L IT8801_G0_06 0 O L IT8801_G0_07 1 O H ODR IT8801_G1_10 1 O H ODR IT8801_G1_11 1 O H ODR IT8801_G1_12 1 I H IT8801_G1_13 1 I H IT8801_G1_14 1 I H IT8801_G1_15 1 O H ODR IT8801_G2_20 1 O H ODR IT8801_G2_21 0 O L ODR IT8801_G2_22 0 O L ODR IT8801_G2_23 TEST=jacuzzi, juniper and kappa still compile TEST=keyboard scanning still works TEST=keyboard scanning now uses fewer i2c packets due to caching of GPIO23 Change-Id: I7ad89058ccd43b073d648e93877b86d6f187b5df Signed-off-by: tim <tim2.lin@ite.corp-partner.google.com> Signed-off-by: Alexandru M Stan <amstan@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1712887 Reviewed-by: David Huang <David.Huang@quantatw.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org> Tested-by: David Huang <David.Huang@quantatw.com>
* juniper: implement otg functionTing Shen2020-02-101-6/+0
| | | | | | | | | | | | | | | | - set otg limit to 5V/3.3A according to hw requirement - remove unused charger_is_sourcing_otg_power function BUG=b:148627490 TEST=verify that the USB ports (both C and A) can supply up to 3A BRANCH=kukui Change-Id: I61b047f1d05e5428d4eef74c9e0af3a222449779 Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2040879 Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Tested-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org>
* jacuzzi: enable watchdog interruptTing Shen2020-02-101-1/+2
| | | | | | | | | | | | | | | | | BUG=b:148834107 TEST=On juniper: $ stop daisydog $ echo "z" > /dev/watchdog make sure DUT reboots successfully. BRANCH=kukui Change-Id: I60aa093bcbca0ef8865a9b4063a6c7c217b58499 Signed-off-by: Ting Shen <phoenixshen@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2043431 Reviewed-by: Yu-Ping Wu <yupingso@chromium.org> Reviewed-by: Eric Yilun Lin <yllin@chromium.org> Commit-Queue: Yu-Ping Wu <yupingso@chromium.org> Tested-by: Yu-Ping Wu <yupingso@chromium.org>
* Charger: Create charger driver structureDiana Z2020-01-282-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With upcoming boards which use multiple charger chips, the EC codebase needs to be changed to assume chargers may have different I2C ports. This commit creates the driver structure and wrapper functions, which for now are hard-coded to chip 0 for equivalent behavior with previous code. A general charger config is created for all boards in charger.c for now, which uses the build information to fill in the structure. All boards will default to defining CONFIG_CHARGER_SINGLE_CHIP, which in turn defines a CHARGER_SOLO which can be used by drivers which have code that needs to determine charger numbers. For boards which have multiple chips, they may undefine this config and should generate build errors if their driver is still using the hardcoded charger reference of CHARGER_SOLO. Older drivers may continue using CHARGER_SOLO in non-static functions until they're needed in a multiple charger board. For boards which may be supporting different I2C configurations for the charger over board versions, they may define CONFIG_CHARGER_RUNTIME_CONFIG to fill in these fields after boot. BRANCH=none BUG=b:147672225 TEST=builds, chargers on hatch and octopus work Change-Id: I390ede494226252e512595c48099fa1288ffe93e Signed-off-by: Diana Z <dzigterman@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2008451 Reviewed-by: Jett Rink <jettrink@chromium.org>