diff options
author | Boris Mittelberg <bmbm@google.com> | 2022-04-14 11:38:33 -0700 |
---|---|---|
committer | Boris Mittelberg <bmbm@google.com> | 2022-04-14 11:38:33 -0700 |
commit | 10cf54860dc2f7ac36610799919f1a0cf1d501bb (patch) | |
tree | ac982e3f9c46d97c7ec713ac5e15ee284179fec7 /board/anahera/usbc_config.c | |
parent | 59ede6b1714c313de3e003c0497c70725bf625d5 (diff) | |
parent | 265691a2fe290e0fa54ecccba151a5c63dd73e47 (diff) | |
download | chrome-ec-10cf54860dc2f7ac36610799919f1a0cf1d501bb.tar.gz |
Merge remote-tracking branch cros/main into firmware-brya-14505.B-mainfirmware-brya-14505.71.B-main
Generated by: util/update_release_branch.py --baseboard brya
--relevant_paths_file baseboard/brya/relevant-paths.txt
firmware-brya-14505.B-main
Relevant changes:
git log --oneline 59ede6b17..265691a2f -- baseboard/brya board/agah
board/anahera board/banshee board/brya board/crota board/felwinter
board/gimble board/kano board/primus board/redrix board/taeko
board/taniks board/vell board/volmar driver/bc12/pi3usb9201_public.*
driver/charger/bq25710.* driver/ppc/nx20p348x.*
driver/ppc/syv682x_public.* driver/retimer/bb_retimer_public.*
driver/tcpm/nct38xx.* driver/tcpm/ps8xxx_public.* driver/tcpm/tcpci.*
include/power/alderlake* include/intel_x86.h power/alderlake*
power/intel_x86.c util/getversion.sh
98493ee98 crota: remove type-c port 2 to avoid confusion
88a19dd1b anahera: Tune USBA retimer EQ revision 2
37d45dd56 kano: Support 28w cpu fan table
BRANCH=None
BUG=b:228775653 b:203837657 b:219176652
TEST=`make -j buildall`
Signed-off-by: Boris Mittelberg <bmbm@google.com>
Change-Id: Ia775339f54ad90ecdbc81ce1543b1b38f94f3b3b
Diffstat (limited to 'board/anahera/usbc_config.c')
-rw-r--r-- | board/anahera/usbc_config.c | 49 |
1 files changed, 43 insertions, 6 deletions
diff --git a/board/anahera/usbc_config.c b/board/anahera/usbc_config.c index 247cc50dd3..2c0cd85a67 100644 --- a/board/anahera/usbc_config.c +++ b/board/anahera/usbc_config.c @@ -317,11 +317,11 @@ const struct usb_mux usba_ps8811[] = { }; BUILD_ASSERT(ARRAY_SIZE(usba_ps8811) == USBA_PORT_COUNT); -const static struct ps8811_reg_val equalizer_table[] = { +const static struct ps8811_reg_val equalizer_wwan_table[] = { { /* Set channel A EQ setting */ .reg = PS8811_REG1_USB_AEQ_LEVEL, - .val = (PS8811_AEQ_I2C_LEVEL_UP_10P5DB << + .val = (PS8811_AEQ_I2C_LEVEL_UP_13DB << PS8811_AEQ_I2C_LEVEL_UP_SHIFT) | (PS8811_AEQ_PIN_LEVEL_UP_18DB << PS8811_AEQ_PIN_LEVEL_UP_SHIFT), @@ -351,7 +351,18 @@ const static struct ps8811_reg_val equalizer_table[] = { }, }; -#define NUM_EQ_ARRAY ARRAY_SIZE(equalizer_table) +#define NUM_EQ_WWAN_ARRAY ARRAY_SIZE(equalizer_wwan_table) + +const static struct ps8811_reg_val equalizer_wlan_table[] = { + { + /* Set 50ohm adjust for B channel */ + .reg = PS8811_REG1_50OHM_ADJUST_CHAN_B, + .val = (PS8811_50OHM_ADJUST_CHAN_B_MINUS_9PCT << + PS8811_50OHM_ADJUST_CHAN_B_SHIFT), + }, +}; + +#define NUM_EQ_WLAN_ARRAY ARRAY_SIZE(equalizer_wlan_table) static int usba_retimer_init(int port) { @@ -380,10 +391,36 @@ static int usba_retimer_init(int port) PS8811_CHAN_A_SWING_MASK, 0x2 << PS8811_CHAN_A_SWING_SHIFT); - for (i = 0; i < NUM_EQ_ARRAY; i++) + /* Set channel B output PS level */ + rv |= ps8811_i2c_field_update( + me, PS8811_REG_PAGE1, + PS8811_REG1_USB_CHAN_B_DE_PS_LSB, + PS8811_CHAN_B_DE_PS_LSB_MASK, 0x06); + + /* Set channel B output DE level */ + rv |= ps8811_i2c_field_update( + me, PS8811_REG_PAGE1, + PS8811_REG1_USB_CHAN_B_DE_PS_MSB, + PS8811_CHAN_B_DE_PS_MSB_MASK, 0x16); + + + for (i = 0; i < NUM_EQ_WWAN_ARRAY; i++) + rv |= ps8811_i2c_write(me, PS8811_REG_PAGE1, + equalizer_wwan_table[i].reg, + equalizer_wwan_table[i].val); + } else { + /* Set channel A output swing */ + rv = ps8811_i2c_field_update( + me, PS8811_REG_PAGE1, + PS8811_REG1_USB_CHAN_A_SWING, + PS8811_CHAN_A_SWING_MASK, + 0x2 << PS8811_CHAN_A_SWING_SHIFT); + + + for (i = 0; i < NUM_EQ_WLAN_ARRAY; i++) rv |= ps8811_i2c_write(me, PS8811_REG_PAGE1, - equalizer_table[i].reg, - equalizer_table[i].val); + equalizer_wlan_table[i].reg, + equalizer_wlan_table[i].val); } break; } |