[PATCH 6/6] usb: typec: Use FIELD_MODIFY()

From: Hans Zhang

Date: Thu Apr 30 2026 - 12:45:24 EST


Use FIELD_MODIFY() to remove open-coded bit manipulation.
No functional change intended.

Signed-off-by: Hans Zhang <18255117159@xxxxxxx>
---
drivers/usb/typec/tcpm/tcpci.c | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/drivers/usb/typec/tcpm/tcpci.c b/drivers/usb/typec/tcpm/tcpci.c
index 0148b8f50412..24c87dfa6b64 100644
--- a/drivers/usb/typec/tcpm/tcpci.c
+++ b/drivers/usb/typec/tcpm/tcpci.c
@@ -141,13 +141,10 @@ static int tcpci_set_cc(struct tcpc_dev *tcpc, enum typec_cc_status cc)
}

if (vconn_pres) {
- if (polarity == TYPEC_POLARITY_CC2) {
- reg &= ~TCPC_ROLE_CTRL_CC1;
- reg |= FIELD_PREP(TCPC_ROLE_CTRL_CC1, TCPC_ROLE_CTRL_CC_OPEN);
- } else {
- reg &= ~TCPC_ROLE_CTRL_CC2;
- reg |= FIELD_PREP(TCPC_ROLE_CTRL_CC2, TCPC_ROLE_CTRL_CC_OPEN);
- }
+ if (polarity == TYPEC_POLARITY_CC2)
+ FIELD_MODIFY(TCPC_ROLE_CTRL_CC1, &reg, TCPC_ROLE_CTRL_CC_OPEN);
+ else
+ FIELD_MODIFY(TCPC_ROLE_CTRL_CC2, &reg, TCPC_ROLE_CTRL_CC_OPEN);
}

ret = regmap_write(tcpci->regmap, TCPC_ROLE_CTRL, reg);
--
2.34.1