summaryrefslogtreecommitdiff
path: root/driver/usb_mux/tusb1064.h
Commit message (Collapse)AuthorAgeFilesLines
* servo_v4p1: Add mechanism to enable/disable USB3 to DUTŁukasz Hajec2023-03-091-0/+2
| | | | | | | | | | | | | | | | | | This CL disables USB3 to DUT by default. It overwrites TUSB1064 usb_mux set method to always prevent or allow using USB3 mode in this mux/switch. This CL also adds console command (and needed backed) that can be used to enable/disable USB3 to DUT. BUG=b:254857085 b:263573379 BRANCH=none TEST=build and flash servo FW test functionality using Lazor board Change-Id: Idcb47369b7b0352a21666e7a46ddcc56b6e1063a Signed-off-by: Łukasz Hajec <hajec@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4236345 Reviewed-by: Jan Dabros <dabros@google.com>
* driver: Sort header filesJeremy Bettis2022-11-291-1/+2
| | | | | | | | | | | | | | | | | | | | | Sort all includes in driver with the clang-format rules used by the zephyr project. BRANCH=None BUG=b:247100970 TEST=zmake build -a TEST=./twister --clobber -v -i TEST=make -j72 buildall_only runtests TEST=zmake compare-builds -a Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I675e0db416b6b7cbcfce031c97fd24ad97b66f4f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4052767 Reviewed-by: Yuval Peress <peress@google.com> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Tom Hughes <tomhughes@chromium.org>
* Update license boilerplate text in source code filesMike Frysinger2022-09-121-1/+1
| | | | | | | | | | | | | | | Normally we don't do this, but enough changes have accumulated that we're doing a tree-wide one-off update of the name & style. BRANCH=none BUG=chromium:1098010 TEST=`repo upload` works Change-Id: Icd3a1723c20595356af83d190b2c6a9078b3013b Signed-off-by: Mike Frysinger <vapier@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3891203 Reviewed-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* driver/usb_mux/tusb1064.h: Format with clang-formatJack Rosenthal2022-07-011-34/+33
| | | | | | | | | | | BUG=b:236386294 BRANCH=none TEST=none Change-Id: I268d6ce97a5d4344ea60613eb046835f0e6efb9c Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3730172 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* usb_mux: add TUSB546 driverTing Shen2022-05-101-1/+1
| | | | | | | | | | | | | | | | | | | Reuse the code from existing TUSB1064/TUSB1044 driver and add TUSB546 specific logic to it. Currently the only change is that we will enable IN_HPD when mux enters dock mode, instead of using hpd_update. BUG=b:228289594 TEST=make BRANCH=none Signed-off-by: Ting Shen <phoenixshen@google.com> Change-Id: I2182eef1a4c5d8cc830f837c544379e854ac331c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3612720 Reviewed-by: Eric Yilun Lin <yllin@google.com> Tested-by: Ting Shen <phoenixshen@chromium.org> Commit-Queue: Ting Shen <phoenixshen@chromium.org>
* USB MUX: Wait on ACK for HPD changes when requiredDiana Z2021-12-021-1/+2
| | | | | | | | | | | | | | | In order to correctly sequence HPD sets with the AP, allow the HPD set to wait on an ACK from the AP before proceeding. BRANCH=None BUG=b:202137658 TEST=on brya, validate retimer and virtual mux are kept in sync as expected Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I368c3290b69d627829a70847876d7b47a8c36948 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3232293 Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
* usb_mux: tusb1064: Add method to set DP Rx EQ gainScott Collyer2021-11-231-0/+9
| | | | | | | | | | | | | | | | | | | | | | This CL adds a method to set DP Rx EQ gain. The previous version of the driver was enabling a 10 dB gain by default in the init function. This CL removes setting both gain and EQ_OVERRIDE by default. A separate CL in the stack moves the 10dB gain setting to the board.c file for the only other board that currently is using the TUSB1064. BUG=b:206059703 BRANCH=quiche TEST=Verified on gingerbread that both EQ_OVERRIDE is set and the gain is set in both registers as expected. Signed-off-by: Scott Collyer <scollyer@google.com> Change-Id: Id2dc6127d27304d8149f7c51a8d527e046595baf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3291129 Tested-by: Scott Collyer <scollyer@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Scott Collyer <scollyer@chromium.org>
* driver/tusb1064 : support for TUSB1044 type-c redriverDeepti Deshatty2021-10-211-0/+13
| | | | | | | | | | | | | | | New config CONFIG_USB_MUX_TUSB1044 introduced to compile existing tusb1064 driver for tusb1044. New api tusb1044_hpd_update() is implemented to update the HPD bit in Gerenal_1 register based on the HPD information received. BRANCH=none TEST=Redriver is enabled on ADL-N and type-c display verified Signed-off-by: Deepti Deshatty <deepti.deshatty@intel.corp-partner.google.com> Change-Id: Ia38aae2ff5c8a545272e5f99b3728e8bbbb4e716 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3205431 Reviewed-by: caveh jalali <caveh@chromium.org>
* tusb1064: Add full list of possible I2C device addressesScott Collyer2021-03-241-1/+24
| | | | | | | | | | | | | | | | | | The TUSB1064 has 16 possible I2C device addresses. This CL adds this full list to the tusb1064.h file. In addition, the TUSB1064 device address was updated to match the new macro. BUG=b:168621142 BRANCH=servo TEST=make -j buildall Signed-off-by: Scott Collyer <scollyer@google.com> Change-Id: I1ee836ef0a88adab1af63901c2ec0be7cef7b232 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2267630 Commit-Queue: Scott Collyer <scollyer@chromium.org> Tested-by: Scott Collyer <scollyer@chromium.org> Reviewed-by: Sam Hurst <shurst@google.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
* usb_mux: add a full TUSB1064 driverNathan K2021-01-201-0/+107
The TUSB1064 driver code is modified to implement a real usb_mux driver. This part is a UFP side (RX Equalizer) USB-C switch contrary to most other usb_mux part we have (used in the DFP). It is used in the servo_v4p1. Signed-off-by: Vincent Palatin <vpalatin@chromium.org> BUG=b:168621142 BRANCH=servo TEST=use the sink mode enabled by 'cc pdsnk', connect to a USB-C Chromebook try both video output on USB-C->mini-DP and USB 3.0. Change-Id: Ie15d246ba7b6601db0d387e8ffda54f0ec36ba99 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2416764 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Tested-by: Vincent Palatin <vpalatin@chromium.org> Commit-Queue: Vincent Palatin <vpalatin@chromium.org>