diff mbox series

[v3,3/5] usb: typec: tcpci_rt1711h: Add rxdz_sel variable to struct rt1711h_chip_info

Message ID 20230906080619.36930-4-biju.das.jz@bp.renesas.com
State New
Headers show
Series Match data improvements for rt1711h driver | expand

Commit Message

Biju Das Sept. 6, 2023, 8:06 a.m. UTC
The RT1715 needs 0.35V/0.75V rx threshold for rd/rp whereas it is 0.4V/0.7V
for RT1711H. Add rxdz_sel variable to struct rt1711h_chip_info for
handling this difference.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
v2->v3:
 * Added Rb tag from Andy.
v1->v2:
 * Swapped the rxdz_sel variable in struct rt1711h_chip_info to avoid
   holes.
---
 drivers/usb/typec/tcpm/tcpci_rt1711h.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

Comments

Heikki Krogerus Sept. 8, 2023, 8:49 a.m. UTC | #1
On Wed, Sep 06, 2023 at 09:06:17AM +0100, Biju Das wrote:
> The RT1715 needs 0.35V/0.75V rx threshold for rd/rp whereas it is 0.4V/0.7V
> for RT1711H. Add rxdz_sel variable to struct rt1711h_chip_info for
> handling this difference.
> 
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

> ---
> v2->v3:
>  * Added Rb tag from Andy.
> v1->v2:
>  * Swapped the rxdz_sel variable in struct rt1711h_chip_info to avoid
>    holes.
> ---
>  drivers/usb/typec/tcpm/tcpci_rt1711h.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/usb/typec/tcpm/tcpci_rt1711h.c b/drivers/usb/typec/tcpm/tcpci_rt1711h.c
> index 2b7258d3cb4e..40822bae9ae8 100644
> --- a/drivers/usb/typec/tcpm/tcpci_rt1711h.c
> +++ b/drivers/usb/typec/tcpm/tcpci_rt1711h.c
> @@ -52,6 +52,7 @@
>  #define BMCIO_RXDZEN	BIT(0)
>  
>  struct rt1711h_chip_info {
> +	u32 rxdz_sel;
>  	u16 did;
>  };
>  
> @@ -204,10 +205,7 @@ static inline int rt1711h_init_cc_params(struct rt1711h_chip *chip, u8 status)
>  	if ((cc1 >= TYPEC_CC_RP_1_5 && cc2 < TYPEC_CC_RP_DEF) ||
>  	    (cc2 >= TYPEC_CC_RP_1_5 && cc1 < TYPEC_CC_RP_DEF)) {
>  		rxdz_en = BMCIO_RXDZEN;
> -		if (chip->info->did == RT1715_DID)
> -			rxdz_sel = RT1711H_BMCIO_RXDZSEL;
> -		else
> -			rxdz_sel = 0;
> +		rxdz_sel = chip->info->rxdz_sel;
>  	} else {
>  		rxdz_en = 0;
>  		rxdz_sel = RT1711H_BMCIO_RXDZSEL;
> @@ -400,6 +398,7 @@ static const struct rt1711h_chip_info rt1711h = {
>  };
>  
>  static const struct rt1711h_chip_info rt1715 = {
> +	.rxdz_sel = RT1711H_BMCIO_RXDZSEL,
>  	.did = RT1715_DID,
>  };
>  
> -- 
> 2.25.1
diff mbox series

Patch

diff --git a/drivers/usb/typec/tcpm/tcpci_rt1711h.c b/drivers/usb/typec/tcpm/tcpci_rt1711h.c
index 2b7258d3cb4e..40822bae9ae8 100644
--- a/drivers/usb/typec/tcpm/tcpci_rt1711h.c
+++ b/drivers/usb/typec/tcpm/tcpci_rt1711h.c
@@ -52,6 +52,7 @@ 
 #define BMCIO_RXDZEN	BIT(0)
 
 struct rt1711h_chip_info {
+	u32 rxdz_sel;
 	u16 did;
 };
 
@@ -204,10 +205,7 @@  static inline int rt1711h_init_cc_params(struct rt1711h_chip *chip, u8 status)
 	if ((cc1 >= TYPEC_CC_RP_1_5 && cc2 < TYPEC_CC_RP_DEF) ||
 	    (cc2 >= TYPEC_CC_RP_1_5 && cc1 < TYPEC_CC_RP_DEF)) {
 		rxdz_en = BMCIO_RXDZEN;
-		if (chip->info->did == RT1715_DID)
-			rxdz_sel = RT1711H_BMCIO_RXDZSEL;
-		else
-			rxdz_sel = 0;
+		rxdz_sel = chip->info->rxdz_sel;
 	} else {
 		rxdz_en = 0;
 		rxdz_sel = RT1711H_BMCIO_RXDZSEL;
@@ -400,6 +398,7 @@  static const struct rt1711h_chip_info rt1711h = {
 };
 
 static const struct rt1711h_chip_info rt1715 = {
+	.rxdz_sel = RT1711H_BMCIO_RXDZSEL,
 	.did = RT1715_DID,
 };