Lines Matching refs:reg

20 #define tcpc_presenting_cc1_rd(reg) \  argument
21 (!(TCPC_ROLE_CTRL_DRP & (reg)) && \
22 (((reg) & (TCPC_ROLE_CTRL_CC1_MASK << TCPC_ROLE_CTRL_CC1_SHIFT)) == \
24 #define tcpc_presenting_cc2_rd(reg) \ argument
25 (!(TCPC_ROLE_CTRL_DRP & (reg)) && \
26 (((reg) & (TCPC_ROLE_CTRL_CC2_MASK << TCPC_ROLE_CTRL_CC2_SHIFT)) == \
53 static int tcpci_read16(struct tcpci *tcpci, unsigned int reg, u16 *val) in tcpci_read16() argument
58 ret = dm_i2c_read(tcpci->dev, reg, buffer, 2); in tcpci_read16()
61 __func__, reg, ret); in tcpci_read16()
70 static int tcpci_block_read(struct tcpci *tcpci, unsigned int reg, in tcpci_block_read() argument
75 ret = dm_i2c_read(tcpci->dev, reg, data, length); in tcpci_block_read()
78 __func__, reg, length, ret); in tcpci_block_read()
83 static int tcpci_write16(struct tcpci *tcpci, unsigned int reg, u16 val) in tcpci_write16() argument
90 ret = dm_i2c_write(tcpci->dev, reg, buffer, 2); in tcpci_write16()
93 __func__, reg, ret); in tcpci_write16()
98 static int tcpci_block_write(struct tcpci *tcpci, unsigned int reg, in tcpci_block_write() argument
103 ret = dm_i2c_write(tcpci->dev, reg, data, length); in tcpci_block_write()
106 __func__, reg, length, ret); in tcpci_block_write()
114 unsigned int reg; in tcpci_set_cc() local
119 reg = (TCPC_ROLE_CTRL_CC_RA << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_set_cc()
123 reg = (TCPC_ROLE_CTRL_CC_RD << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_set_cc()
127 reg = (TCPC_ROLE_CTRL_CC_RP << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_set_cc()
133 reg = (TCPC_ROLE_CTRL_CC_RP << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_set_cc()
139 reg = (TCPC_ROLE_CTRL_CC_RP << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_set_cc()
146 reg = (TCPC_ROLE_CTRL_CC_OPEN << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_set_cc()
151 ret = dm_i2c_reg_write(tcpci->dev, TCPC_ROLE_CTRL, reg); in tcpci_set_cc()
164 unsigned int reg = TCPC_ROLE_CTRL_DRP; in tcpci_start_toggling() local
179 reg |= (TCPC_ROLE_CTRL_RP_VAL_DEF << in tcpci_start_toggling()
183 reg |= (TCPC_ROLE_CTRL_RP_VAL_1_5 << in tcpci_start_toggling()
187 reg |= (TCPC_ROLE_CTRL_RP_VAL_3_0 << in tcpci_start_toggling()
193 reg |= (TCPC_ROLE_CTRL_CC_RD << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_start_toggling()
196 reg |= (TCPC_ROLE_CTRL_CC_RP << TCPC_ROLE_CTRL_CC1_SHIFT) | in tcpci_start_toggling()
198 ret = dm_i2c_reg_write(tcpci->dev, TCPC_ROLE_CTRL, reg); in tcpci_start_toggling()
226 unsigned int reg, role_control; in tcpci_get_cc() local
232 reg = dm_i2c_reg_read(tcpci->dev, TCPC_CC_STATUS); in tcpci_get_cc()
233 if (reg < 0) in tcpci_get_cc()
234 return reg; in tcpci_get_cc()
236 *cc1 = tcpci_to_typec_cc((reg >> TCPC_CC_STATUS_CC1_SHIFT) & in tcpci_get_cc()
238 reg & TCPC_CC_STATUS_TERM || in tcpci_get_cc()
240 *cc2 = tcpci_to_typec_cc((reg >> TCPC_CC_STATUS_CC2_SHIFT) & in tcpci_get_cc()
242 reg & TCPC_CC_STATUS_TERM || in tcpci_get_cc()
252 unsigned int reg; in tcpci_set_polarity() local
257 reg = dm_i2c_reg_read(tcpci->dev, TCPC_ROLE_CTRL); in tcpci_set_polarity()
258 if (reg < 0) in tcpci_set_polarity()
259 return reg; in tcpci_set_polarity()
272 if (reg & TCPC_ROLE_CTRL_DRP) { in tcpci_set_polarity()
274 reg = reg & ~TCPC_ROLE_CTRL_DRP; in tcpci_set_polarity()
277 reg &= ~(TCPC_ROLE_CTRL_CC2_MASK << TCPC_ROLE_CTRL_CC2_SHIFT); in tcpci_set_polarity()
281 reg |= TCPC_ROLE_CTRL_CC_RP << TCPC_ROLE_CTRL_CC2_SHIFT; in tcpci_set_polarity()
283 reg |= TCPC_ROLE_CTRL_CC_RD << TCPC_ROLE_CTRL_CC2_SHIFT; in tcpci_set_polarity()
285 reg &= ~(TCPC_ROLE_CTRL_CC1_MASK << TCPC_ROLE_CTRL_CC1_SHIFT); in tcpci_set_polarity()
289 reg |= TCPC_ROLE_CTRL_CC_RP << TCPC_ROLE_CTRL_CC1_SHIFT; in tcpci_set_polarity()
291 reg |= TCPC_ROLE_CTRL_CC_RD << TCPC_ROLE_CTRL_CC1_SHIFT; in tcpci_set_polarity()
296 reg |= TCPC_ROLE_CTRL_CC_OPEN << TCPC_ROLE_CTRL_CC1_SHIFT; in tcpci_set_polarity()
298 reg |= TCPC_ROLE_CTRL_CC_OPEN << TCPC_ROLE_CTRL_CC2_SHIFT; in tcpci_set_polarity()
299 ret = dm_i2c_reg_write(tcpci->dev, TCPC_ROLE_CTRL, reg); in tcpci_set_polarity()
312 unsigned int reg; in tcpci_set_vconn() local
321 reg = dm_i2c_reg_read(tcpci->dev, TCPC_POWER_CTRL); in tcpci_set_vconn()
322 if (reg) in tcpci_set_vconn()
323 return reg; in tcpci_set_vconn()
324 reg &= ~TCPC_POWER_CTRL_VCONN_ENABLE; in tcpci_set_vconn()
325 reg |= enable ? TCPC_POWER_CTRL_VCONN_ENABLE : 0; in tcpci_set_vconn()
326 return dm_i2c_reg_write(tcpci->dev, TCPC_POWER_CTRL, reg); in tcpci_set_vconn()
333 unsigned int reg; in tcpci_set_roles() local
336 reg = PD_REV20 << TCPC_MSG_HDR_INFO_REV_SHIFT; in tcpci_set_roles()
338 reg |= TCPC_MSG_HDR_INFO_PWR_ROLE; in tcpci_set_roles()
340 reg |= TCPC_MSG_HDR_INFO_DATA_ROLE; in tcpci_set_roles()
341 ret = dm_i2c_reg_write(tcpci->dev, TCPC_MSG_HDR_INFO, reg); in tcpci_set_roles()
351 unsigned int reg = 0; in tcpci_set_pd_rx() local
355 reg = TCPC_RX_DETECT_SOP | TCPC_RX_DETECT_HARD_RESET; in tcpci_set_pd_rx()
356 ret = dm_i2c_reg_write(tcpci->dev, TCPC_RX_DETECT, reg); in tcpci_set_pd_rx()
366 unsigned int reg; in tcpci_get_vbus() local
368 reg = dm_i2c_reg_read(tcpci->dev, TCPC_POWER_STATUS); in tcpci_get_vbus()
369 if (reg < 0) in tcpci_get_vbus()
370 return reg; in tcpci_get_vbus()
372 return !!(reg & TCPC_POWER_STATUS_VBUS_PRES); in tcpci_get_vbus()
420 unsigned int reg, cnt; in tcpci_pd_transmit() local
439 reg = (PD_RETRY_COUNT << TCPC_TRANSMIT_RETRY_SHIFT) | in tcpci_pd_transmit()
441 ret = dm_i2c_reg_write(tcpci->dev, TCPC_TRANSMIT, reg); in tcpci_pd_transmit()
452 unsigned int reg; in tcpci_init() local
456 reg = dm_i2c_reg_read(tcpci->dev, TCPC_POWER_STATUS); in tcpci_init()
457 if (reg < 0) in tcpci_init()
458 return reg; in tcpci_init()
459 if (!(reg & TCPC_POWER_STATUS_UNINIT)) in tcpci_init()
480 reg = TCPC_POWER_STATUS_VBUS_PRES; in tcpci_init()
482 reg = 0; in tcpci_init()
483 ret = dm_i2c_reg_write(tcpci->dev, TCPC_POWER_STATUS_MASK, reg); in tcpci_init()
493 reg = TCPC_ALERT_TX_SUCCESS | TCPC_ALERT_TX_FAILED | in tcpci_init()
497 reg |= TCPC_ALERT_POWER_STATUS; in tcpci_init()
498 return tcpci_write16(tcpci, TCPC_ALERT_MASK, reg); in tcpci_init()
524 unsigned int reg; in tcpci_poll_event() local
526 reg = dm_i2c_reg_read(tcpci->dev, TCPC_POWER_STATUS_MASK); in tcpci_poll_event()
527 if (reg < 0) in tcpci_poll_event()
534 if (reg == 0xff) in tcpci_poll_event()
591 unsigned int reg; in tcpci_enter_low_power_mode() local
598 reg = dm_i2c_reg_read(tcpci->dev, TCPC_BMCIO_CTRL); in tcpci_enter_low_power_mode()
599 if (reg < 0) in tcpci_enter_low_power_mode()
600 return reg; in tcpci_enter_low_power_mode()
607 reg &= ~TCPC_BMCIO_VBUS_DETECT_MASK; in tcpci_enter_low_power_mode()
609 reg &= ~(TCPC_BMCIO_VBUS_DETECT_MASK | TCPC_BMCIO_24M_OSC_MASK); in tcpci_enter_low_power_mode()
610 return dm_i2c_reg_write(tcpci->dev, TCPC_BMCIO_CTRL, reg); in tcpci_enter_low_power_mode()