From 80847c63040e03bb19e0e3241387bdd9a4b9c96a Mon Sep 17 00:00:00 2001 From: Devin Lu Date: Fri, 25 Feb 2022 16:02:16 +0800 Subject: ps8811: Add AEQ/BEQ related settings This patch adds one more register for AEQ/BEQ with ps8811. BUG=b:203837657 BRANCH=none TEST=buildall Signed-off-by: Devin Lu Change-Id: If5b8eba1344d6a66e6bf36a698e6320da5cb64a8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3490452 Reviewed-by: Boris Mittelberg --- driver/retimer/ps8811.h | 75 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 74 insertions(+), 1 deletion(-) diff --git a/driver/retimer/ps8811.h b/driver/retimer/ps8811.h index cc341585e4..a0ab50e5d7 100644 --- a/driver/retimer/ps8811.h +++ b/driver/retimer/ps8811.h @@ -30,6 +30,58 @@ */ #define PS8811_REG_PAGE1 0x01 +#define PS8811_REG1_USB_AEQ_LEVEL 0x01 +#define PS8811_AEQ_PIN_LEVEL_UP_CONFIG_MASK GENMASK(3, 0) +#define PS8811_AEQ_PIN_LEVEL_UP_SHIFT 0 +#define PS8811_AEQ_PIN_LEVEL_UP_9DB 0x00 +#define PS8811_AEQ_PIN_LEVEL_UP_10P5DB 0x01 +#define PS8811_AEQ_PIN_LEVEL_UP_12DB 0x02 +#define PS8811_AEQ_PIN_LEVEL_UP_13DB 0x03 +#define PS8811_AEQ_PIN_LEVEL_UP_16DB 0x04 +#define PS8811_AEQ_PIN_LEVEL_UP_17DB 0x05 +#define PS8811_AEQ_PIN_LEVEL_UP_18DB 0x06 +#define PS8811_AEQ_PIN_LEVEL_UP_19DB 0x07 +#define PS8811_AEQ_PIN_LEVEL_UP_20DB 0x08 +#define PS8811_AEQ_PIN_LEVEL_UP_21DB 0x09 +#define PS8811_AEQ_PIN_LEVEL_UP_23DB 0x0A +#define PS8811_AEQ_I2C_LEVEL_UP_CONFIG_MASK GENMASK(7, 4) +#define PS8811_AEQ_I2C_LEVEL_UP_SHIFT 4 +#define PS8811_AEQ_I2C_LEVEL_UP_9DB 0x00 +#define PS8811_AEQ_I2C_LEVEL_UP_10P5DB 0x01 +#define PS8811_AEQ_I2C_LEVEL_UP_12DB 0x02 +#define PS8811_AEQ_I2C_LEVEL_UP_13DB 0x03 +#define PS8811_AEQ_I2C_LEVEL_UP_16DB 0x04 +#define PS8811_AEQ_I2C_LEVEL_UP_17DB 0x05 +#define PS8811_AEQ_I2C_LEVEL_UP_18DB 0x06 +#define PS8811_AEQ_I2C_LEVEL_UP_19DB 0x07 +#define PS8811_AEQ_I2C_LEVEL_UP_20DB 0x08 +#define PS8811_AEQ_I2C_LEVEL_UP_21DB 0x09 +#define PS8811_AEQ_I2C_LEVEL_UP_23DB 0x0A + +#define PS8811_REG1_USB_ADE_CONFIG 0x02 +#define PS8811_AEQ_CONFIG_REG_ENABLE BIT(0) +#define PS8811_AEQ_ADAPTIVE_REG_ENABLE BIT(1) +#define PS8811_ADE_PIN_MID_LEVEL_CONFIG_MASK GENMASK(7, 5) +#define PS8811_ADE_PIN_MID_LEVEL_SHIFT 5 +#define PS8811_ADE_PIN_MID_LEVEL_0P5DB 0x00 +#define PS8811_ADE_PIN_MID_LEVEL_1P5DB 0x01 +#define PS8811_ADE_PIN_MID_LEVEL_2DB 0x02 +#define PS8811_ADE_PIN_MID_LEVEL_3DB 0x03 +#define PS8811_ADE_PIN_MID_LEVEL_3P5DB 0x04 +#define PS8811_ADE_PIN_MID_LEVEL_4P5DB 0x05 +#define PS8811_ADE_PIN_MID_LEVEL_6DB 0x06 +#define PS8811_ADE_PIN_MID_LEVEL_7P5DB 0x07 +#define PS8811_ADE_PIN_LOW_LEVEL_CONFIG_MASK GENMASK(4, 2) +#define PS8811_ADE_PIN_LOW_LEVEL_SHIFT 2 +#define PS8811_ADE_PIN_LOW_LEVEL_0P5DB 0x00 +#define PS8811_ADE_PIN_LOW_LEVEL_1P5DB 0x01 +#define PS8811_ADE_PIN_LOW_LEVEL_2DB 0x02 +#define PS8811_ADE_PIN_LOW_LEVEL_3DB 0x03 +#define PS8811_ADE_PIN_LOW_LEVEL_3P5DB 0x04 +#define PS8811_ADE_PIN_LOW_LEVEL_4P5DB 0x05 +#define PS8811_ADE_PIN_LOW_LEVEL_6DB 0x06 +#define PS8811_ADE_PIN_LOW_LEVEL_7P5DB 0x07 + #define PS8811_REG1_USB_BEQ_LEVEL 0x05 #define PS8811_BEQ_PIN_LEVEL_UP_CONFIG_MASK GENMASK(3, 0) #define PS8811_BEQ_PIN_LEVEL_UP_SHIFT 0 @@ -58,8 +110,29 @@ #define PS8811_BEQ_I2C_LEVEL_UP_21DB 0x09 #define PS8811_BEQ_I2C_LEVEL_UP_23DB 0x0A -#define PS8811_REG1_USB_BEQ_CONFIG 0x06 +#define PS8811_REG1_USB_BDE_CONFIG 0x06 #define PS8811_BEQ_CONFIG_REG_ENABLE BIT(0) +#define PS8811_BEQ_ADAPTIVE_REG_ENABLE BIT(1) +#define PS8811_BDE_PIN_MID_LEVEL_CONFIG_MASK GENMASK(7, 5) +#define PS8811_BDE_PIN_MID_LEVEL_SHIFT 5 +#define PS8811_BDE_PIN_MID_LEVEL_0P5DB 0x00 +#define PS8811_BDE_PIN_MID_LEVEL_1P5DB 0x01 +#define PS8811_BDE_PIN_MID_LEVEL_2DB 0x02 +#define PS8811_BDE_PIN_MID_LEVEL_3DB 0x03 +#define PS8811_BDE_PIN_MID_LEVEL_3P5DB 0x04 +#define PS8811_BDE_PIN_MID_LEVEL_4P5DB 0x05 +#define PS8811_BDE_PIN_MID_LEVEL_6DB 0x06 +#define PS8811_BDE_PIN_MID_LEVEL_7P5DB 0x07 +#define PS8811_BDE_PIN_LOW_LEVEL_CONFIG_MASK GENMASK(4, 2) +#define PS8811_BDE_PIN_LOW_LEVEL_SHIFT 2 +#define PS8811_BDE_PIN_LOW_LEVEL_0P5DB 0x00 +#define PS8811_BDE_PIN_LOW_LEVEL_1P5DB 0x01 +#define PS8811_BDE_PIN_LOW_LEVEL_2DB 0x02 +#define PS8811_BDE_PIN_LOW_LEVEL_3DB 0x03 +#define PS8811_BDE_PIN_LOW_LEVEL_3P5DB 0x04 +#define PS8811_BDE_PIN_LOW_LEVEL_4P5DB 0x05 +#define PS8811_BDE_PIN_LOW_LEVEL_6DB 0x06 +#define PS8811_BDE_PIN_LOW_LEVEL_7P5DB 0x07 #define PS8811_REG1_USB_CHAN_A_SWING 0x66 #define PS8811_CHAN_A_SWING_MASK GENMASK(6, 4) -- cgit v1.2.1