Lines Matching refs:ucr

46 	struct rtsx_ucr	*ucr;  member
77 struct rtsx_ucr *ucr = host->ucr; in sd_clear_error() local
78 rtsx_usb_ep0_write_register(ucr, CARD_STOP, in sd_clear_error()
82 rtsx_usb_clear_dma_err(ucr); in sd_clear_error()
83 rtsx_usb_clear_fsm_err(ucr); in sd_clear_error()
89 struct rtsx_ucr *ucr = host->ucr; in sd_print_debug_regs() local
92 rtsx_usb_ep0_read_register(ucr, SD_STAT1, &val); in sd_print_debug_regs()
94 rtsx_usb_ep0_read_register(ucr, SD_STAT2, &val); in sd_print_debug_regs()
96 rtsx_usb_ep0_read_register(ucr, SD_BUS_STAT, &val); in sd_print_debug_regs()
106 struct rtsx_ucr *ucr = host->ucr; in sd_read_data() local
113 rtsx_usb_init_cmd(ucr); in sd_read_data()
122 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_read_data()
124 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_read_data()
126 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_read_data()
128 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_read_data()
130 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_read_data()
136 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BYTE_CNT_L, 0xFF, (u8)byte_cnt); in sd_read_data()
137 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BYTE_CNT_H, in sd_read_data()
139 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BLOCK_CNT_L, 0xFF, 1); in sd_read_data()
140 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BLOCK_CNT_H, 0xFF, 0); in sd_read_data()
142 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG2, 0xFF, in sd_read_data()
146 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_read_data()
149 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_TRANSFER, in sd_read_data()
151 rtsx_usb_add_cmd(ucr, CHECK_REG_CMD, SD_TRANSFER, in sd_read_data()
155 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD1, 0, 0); in sd_read_data()
156 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD2, 0, 0); in sd_read_data()
157 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD3, 0, 0); in sd_read_data()
158 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD4, 0, 0); in sd_read_data()
161 err = rtsx_usb_send_cmd(ucr, MODE_CR, timeout); in sd_read_data()
168 err = rtsx_usb_get_rsp(ucr, !cmd ? 1 : 5, timeout); in sd_read_data()
169 if (err || (ucr->rsp_buf[0] & SD_TRANSFER_ERR)) { in sd_read_data()
175 ucr->rsp_buf[0]); in sd_read_data()
186 cmd->resp[0] = get_unaligned_be32(ucr->rsp_buf + 1); in sd_read_data()
193 err = rtsx_usb_read_ppbuf(ucr, buf, byte_cnt - (byte_cnt % 2)); in sd_read_data()
202 return rtsx_usb_read_register(ucr, in sd_read_data()
213 struct rtsx_ucr *ucr = host->ucr; in sd_write_data() local
221 err = rtsx_usb_write_ppbuf(ucr, buf, buf_len); in sd_write_data()
231 rtsx_usb_init_cmd(ucr); in sd_write_data()
236 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_write_data()
238 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_write_data()
240 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_write_data()
242 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_write_data()
244 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_write_data()
248 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BYTE_CNT_L, 0xFF, (u8)byte_cnt); in sd_write_data()
249 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BYTE_CNT_H, in sd_write_data()
251 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BLOCK_CNT_L, 0xFF, 1); in sd_write_data()
252 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BLOCK_CNT_H, 0xFF, 0); in sd_write_data()
254 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG2, 0xFF, in sd_write_data()
257 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_write_data()
260 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_TRANSFER, 0xFF, in sd_write_data()
262 rtsx_usb_add_cmd(ucr, CHECK_REG_CMD, SD_TRANSFER, in sd_write_data()
266 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD1, 0, 0); in sd_write_data()
267 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD2, 0, 0); in sd_write_data()
268 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD3, 0, 0); in sd_write_data()
269 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_CMD4, 0, 0); in sd_write_data()
272 err = rtsx_usb_send_cmd(ucr, MODE_CR, timeout); in sd_write_data()
279 err = rtsx_usb_get_rsp(ucr, !cmd ? 1 : 5, timeout); in sd_write_data()
288 cmd->resp[0] = get_unaligned_be32(ucr->rsp_buf + 1); in sd_write_data()
299 struct rtsx_ucr *ucr = host->ucr; in sd_send_cmd_get_rsp() local
349 err = rtsx_usb_write_register(ucr, SD_BUS_STAT, in sd_send_cmd_get_rsp()
356 rtsx_usb_init_cmd(ucr); in sd_send_cmd_get_rsp()
358 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CMD0, 0xFF, 0x40 | cmd_idx); in sd_send_cmd_get_rsp()
359 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CMD1, 0xFF, (u8)(arg >> 24)); in sd_send_cmd_get_rsp()
360 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CMD2, 0xFF, (u8)(arg >> 16)); in sd_send_cmd_get_rsp()
361 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CMD3, 0xFF, (u8)(arg >> 8)); in sd_send_cmd_get_rsp()
362 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CMD4, 0xFF, (u8)arg); in sd_send_cmd_get_rsp()
364 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG2, 0xFF, rsp_type); in sd_send_cmd_get_rsp()
365 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_DATA_SOURCE, in sd_send_cmd_get_rsp()
367 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_TRANSFER, in sd_send_cmd_get_rsp()
369 rtsx_usb_add_cmd(ucr, CHECK_REG_CMD, SD_TRANSFER, in sd_send_cmd_get_rsp()
376 rtsx_usb_add_cmd(ucr, READ_REG_CMD, (u16)i, 0, 0); in sd_send_cmd_get_rsp()
381 rtsx_usb_add_cmd(ucr, READ_REG_CMD, (u16)i, 0, 0); in sd_send_cmd_get_rsp()
386 rtsx_usb_add_cmd(ucr, READ_REG_CMD, SD_STAT1, 0, 0); in sd_send_cmd_get_rsp()
388 err = rtsx_usb_send_cmd(ucr, MODE_CR, 100); in sd_send_cmd_get_rsp()
395 err = rtsx_usb_get_rsp(ucr, len, timeout); in sd_send_cmd_get_rsp()
396 if (err || (ucr->rsp_buf[0] & SD_TRANSFER_ERR)) { in sd_send_cmd_get_rsp()
403 ucr->rsp_buf[0]); in sd_send_cmd_get_rsp()
419 ptr = ucr->rsp_buf + 1; in sd_send_cmd_get_rsp()
462 struct rtsx_ucr *ucr = host->ucr; in sd_rw_multi() local
485 rtsx_usb_init_cmd(ucr); in sd_rw_multi()
487 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BYTE_CNT_L, 0xFF, 0x00); in sd_rw_multi()
488 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BYTE_CNT_H, 0xFF, 0x02); in sd_rw_multi()
489 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BLOCK_CNT_L, in sd_rw_multi()
491 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BLOCK_CNT_H, in sd_rw_multi()
494 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_DATA_SOURCE, in sd_rw_multi()
497 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, MC_DMA_TC3, in sd_rw_multi()
499 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, MC_DMA_TC2, in sd_rw_multi()
501 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, MC_DMA_TC1, in sd_rw_multi()
503 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, MC_DMA_TC0, in sd_rw_multi()
507 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, MC_DMA_CTL, in sd_rw_multi()
512 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, MC_DMA_CTL, in sd_rw_multi()
517 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG2, 0xFF, cfg2); in sd_rw_multi()
518 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_TRANSFER, 0xFF, in sd_rw_multi()
520 rtsx_usb_add_cmd(ucr, CHECK_REG_CMD, SD_TRANSFER, in sd_rw_multi()
523 err = rtsx_usb_send_cmd(ucr, flag, 100); in sd_rw_multi()
528 pipe = usb_rcvbulkpipe(ucr->pusb_dev, EP_BULK_IN); in sd_rw_multi()
530 pipe = usb_sndbulkpipe(ucr->pusb_dev, EP_BULK_OUT); in sd_rw_multi()
532 err = rtsx_usb_transfer_data(ucr, pipe, data->sg, data_len, in sd_rw_multi()
541 return rtsx_usb_get_rsp(ucr, 1, 2000); in sd_rw_multi()
546 rtsx_usb_write_register(host->ucr, SD_CFG1, in sd_enable_initial_mode()
552 rtsx_usb_write_register(host->ucr, SD_CFG1, in sd_disable_initial_mode()
592 struct rtsx_ucr *ucr = host->ucr; in sd_change_phase() local
598 rtsx_usb_init_cmd(ucr); in sd_change_phase()
600 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CLK_DIV, CLK_CHANGE, CLK_CHANGE); in sd_change_phase()
603 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_VPCLK0_CTL, in sd_change_phase()
606 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_VPCLK1_CTL, in sd_change_phase()
609 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_VPCLK0_CTL, PHASE_NOT_RESET, 0); in sd_change_phase()
610 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_VPCLK0_CTL, in sd_change_phase()
612 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CLK_DIV, CLK_CHANGE, 0); in sd_change_phase()
613 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG1, SD_ASYNC_FIFO_RST, 0); in sd_change_phase()
615 err = rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_change_phase()
672 err = rtsx_usb_ep0_read_register(host->ucr, in sd_wait_data_idle()
766 struct rtsx_ucr *ucr = host->ucr; in sdmmc_get_ro() local
773 mutex_lock(&ucr->dev_mutex); in sdmmc_get_ro()
776 err = rtsx_usb_get_card_status(ucr, &val); in sdmmc_get_ro()
778 mutex_unlock(&ucr->dev_mutex); in sdmmc_get_ro()
794 struct rtsx_ucr *ucr = host->ucr; in sdmmc_get_cd() local
801 mutex_lock(&ucr->dev_mutex); in sdmmc_get_cd()
804 err = rtsx_usb_get_card_status(ucr, &val); in sdmmc_get_cd()
806 mutex_unlock(&ucr->dev_mutex); in sdmmc_get_cd()
825 struct rtsx_ucr *ucr = host->ucr; in sdmmc_request() local
853 mutex_lock(&ucr->dev_mutex); in sdmmc_request()
873 rtsx_usb_write_register(ucr, MC_FIFO_CTL, in sdmmc_request()
888 mutex_unlock(&ucr->dev_mutex); in sdmmc_request()
919 err = rtsx_usb_write_register(host->ucr, SD_CFG1, in sd_set_bus_width()
925 static int sd_pull_ctl_disable_lqfp48(struct rtsx_ucr *ucr) in sd_pull_ctl_disable_lqfp48() argument
927 rtsx_usb_init_cmd(ucr); in sd_pull_ctl_disable_lqfp48()
929 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL1, 0xFF, 0x55); in sd_pull_ctl_disable_lqfp48()
930 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL2, 0xFF, 0x55); in sd_pull_ctl_disable_lqfp48()
931 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL3, 0xFF, 0x95); in sd_pull_ctl_disable_lqfp48()
932 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL4, 0xFF, 0x55); in sd_pull_ctl_disable_lqfp48()
933 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL5, 0xFF, 0x55); in sd_pull_ctl_disable_lqfp48()
934 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL6, 0xFF, 0xA5); in sd_pull_ctl_disable_lqfp48()
936 return rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_pull_ctl_disable_lqfp48()
939 static int sd_pull_ctl_disable_qfn24(struct rtsx_ucr *ucr) in sd_pull_ctl_disable_qfn24() argument
941 rtsx_usb_init_cmd(ucr); in sd_pull_ctl_disable_qfn24()
943 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL1, 0xFF, 0x65); in sd_pull_ctl_disable_qfn24()
944 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL2, 0xFF, 0x55); in sd_pull_ctl_disable_qfn24()
945 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL3, 0xFF, 0x95); in sd_pull_ctl_disable_qfn24()
946 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL4, 0xFF, 0x55); in sd_pull_ctl_disable_qfn24()
947 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL5, 0xFF, 0x56); in sd_pull_ctl_disable_qfn24()
948 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL6, 0xFF, 0x59); in sd_pull_ctl_disable_qfn24()
950 return rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_pull_ctl_disable_qfn24()
953 static int sd_pull_ctl_enable_lqfp48(struct rtsx_ucr *ucr) in sd_pull_ctl_enable_lqfp48() argument
955 rtsx_usb_init_cmd(ucr); in sd_pull_ctl_enable_lqfp48()
957 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL1, 0xFF, 0xAA); in sd_pull_ctl_enable_lqfp48()
958 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL2, 0xFF, 0xAA); in sd_pull_ctl_enable_lqfp48()
959 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL3, 0xFF, 0xA9); in sd_pull_ctl_enable_lqfp48()
960 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL4, 0xFF, 0x55); in sd_pull_ctl_enable_lqfp48()
961 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL5, 0xFF, 0x55); in sd_pull_ctl_enable_lqfp48()
962 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL6, 0xFF, 0xA5); in sd_pull_ctl_enable_lqfp48()
964 return rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_pull_ctl_enable_lqfp48()
967 static int sd_pull_ctl_enable_qfn24(struct rtsx_ucr *ucr) in sd_pull_ctl_enable_qfn24() argument
969 rtsx_usb_init_cmd(ucr); in sd_pull_ctl_enable_qfn24()
971 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL1, 0xFF, 0xA5); in sd_pull_ctl_enable_qfn24()
972 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL2, 0xFF, 0x9A); in sd_pull_ctl_enable_qfn24()
973 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL3, 0xFF, 0xA5); in sd_pull_ctl_enable_qfn24()
974 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL4, 0xFF, 0x9A); in sd_pull_ctl_enable_qfn24()
975 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL5, 0xFF, 0x65); in sd_pull_ctl_enable_qfn24()
976 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PULL_CTL6, 0xFF, 0x5A); in sd_pull_ctl_enable_qfn24()
978 return rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_pull_ctl_enable_qfn24()
983 struct rtsx_ucr *ucr = host->ucr; in sd_power_on() local
987 rtsx_usb_init_cmd(ucr); in sd_power_on()
988 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_SELECT, 0x07, SD_MOD_SEL); in sd_power_on()
989 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_SHARE_MODE, in sd_power_on()
991 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_CLK_EN, in sd_power_on()
993 err = rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_power_on()
997 if (CHECK_PKG(ucr, LQFP48)) in sd_power_on()
998 err = sd_pull_ctl_enable_lqfp48(ucr); in sd_power_on()
1000 err = sd_pull_ctl_enable_qfn24(ucr); in sd_power_on()
1004 err = rtsx_usb_write_register(ucr, CARD_PWR_CTL, in sd_power_on()
1011 rtsx_usb_init_cmd(ucr); in sd_power_on()
1012 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PWR_CTL, in sd_power_on()
1014 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_OE, in sd_power_on()
1017 return rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_power_on()
1022 struct rtsx_ucr *ucr = host->ucr; in sd_power_off() local
1026 rtsx_usb_init_cmd(ucr); in sd_power_off()
1028 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_CLK_EN, SD_CLK_EN, 0); in sd_power_off()
1029 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_OE, SD_OUTPUT_EN, 0); in sd_power_off()
1030 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PWR_CTL, in sd_power_off()
1032 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_PWR_CTL, in sd_power_off()
1035 err = rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_power_off()
1039 if (CHECK_PKG(ucr, LQFP48)) in sd_power_off()
1040 return sd_pull_ctl_disable_lqfp48(ucr); in sd_power_off()
1041 return sd_pull_ctl_disable_qfn24(ucr); in sd_power_off()
1072 struct rtsx_ucr *ucr = host->ucr; in sd_set_timing() local
1077 rtsx_usb_init_cmd(ucr); in sd_set_timing()
1082 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG1, in sd_set_timing()
1085 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_CLK_SOURCE, 0xFF, in sd_set_timing()
1092 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG1, in sd_set_timing()
1095 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_CLK_SOURCE, 0xFF, in sd_set_timing()
1097 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_PUSH_POINT_CTL, in sd_set_timing()
1099 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_SAMPLE_POINT_CTL, in sd_set_timing()
1106 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_CFG1, in sd_set_timing()
1108 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_CLK_SOURCE, 0xFF, in sd_set_timing()
1110 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_PUSH_POINT_CTL, in sd_set_timing()
1112 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_SAMPLE_POINT_CTL, in sd_set_timing()
1117 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_set_timing()
1119 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, CARD_CLK_SOURCE, 0xFF, in sd_set_timing()
1121 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, in sd_set_timing()
1123 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_SAMPLE_POINT_CTL, in sd_set_timing()
1128 err = rtsx_usb_send_cmd(ucr, MODE_C, 100); in sd_set_timing()
1136 struct rtsx_ucr *ucr = host->ucr; in sdmmc_set_ios() local
1139 mutex_lock(&ucr->dev_mutex); in sdmmc_set_ios()
1141 if (rtsx_usb_card_exclusive_check(ucr, RTSX_USB_SD_CARD)) { in sdmmc_set_ios()
1142 mutex_unlock(&ucr->dev_mutex); in sdmmc_set_ios()
1172 rtsx_usb_switch_clock(host->ucr, host->clock, host->ssc_depth, in sdmmc_set_ios()
1175 mutex_unlock(&ucr->dev_mutex); in sdmmc_set_ios()
1182 struct rtsx_ucr *ucr = host->ucr; in sdmmc_switch_voltage() local
1194 mutex_lock(&ucr->dev_mutex); in sdmmc_switch_voltage()
1196 err = rtsx_usb_card_exclusive_check(ucr, RTSX_USB_SD_CARD); in sdmmc_switch_voltage()
1198 mutex_unlock(&ucr->dev_mutex); in sdmmc_switch_voltage()
1205 rtsx_usb_init_cmd(ucr); in sdmmc_switch_voltage()
1208 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_PAD_CTL, in sdmmc_switch_voltage()
1210 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, LDO_POWER_CFG, in sdmmc_switch_voltage()
1213 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_BUS_STAT, in sdmmc_switch_voltage()
1216 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, SD_PAD_CTL, in sdmmc_switch_voltage()
1218 rtsx_usb_add_cmd(ucr, WRITE_REG_CMD, LDO_POWER_CFG, in sdmmc_switch_voltage()
1222 err = rtsx_usb_send_cmd(ucr, MODE_C, 100); in sdmmc_switch_voltage()
1223 mutex_unlock(&ucr->dev_mutex); in sdmmc_switch_voltage()
1231 struct rtsx_ucr *ucr = host->ucr; in sdmmc_card_busy() local
1239 mutex_lock(&ucr->dev_mutex); in sdmmc_card_busy()
1241 err = rtsx_usb_write_register(ucr, SD_BUS_STAT, in sdmmc_card_busy()
1249 err = rtsx_usb_read_register(ucr, SD_BUS_STAT, &stat); in sdmmc_card_busy()
1253 err = rtsx_usb_write_register(ucr, SD_BUS_STAT, in sdmmc_card_busy()
1256 mutex_unlock(&ucr->dev_mutex); in sdmmc_card_busy()
1271 struct rtsx_ucr *ucr = host->ucr; in sdmmc_execute_tuning() local
1277 mutex_lock(&ucr->dev_mutex); in sdmmc_execute_tuning()
1282 mutex_unlock(&ucr->dev_mutex); in sdmmc_execute_tuning()
1315 struct rtsx_ucr *ucr = host->ucr; in rtsx_usb_update_led() local
1317 mutex_lock(&ucr->dev_mutex); in rtsx_usb_update_led()
1320 rtsx_usb_turn_off_led(ucr); in rtsx_usb_update_led()
1322 rtsx_usb_turn_on_led(ucr); in rtsx_usb_update_led()
1324 mutex_unlock(&ucr->dev_mutex); in rtsx_usb_update_led()
1357 struct rtsx_ucr *ucr; in rtsx_usb_sdmmc_drv_probe() local
1362 ucr = usb_get_intfdata(to_usb_interface(pdev->dev.parent)); in rtsx_usb_sdmmc_drv_probe()
1363 if (!ucr) in rtsx_usb_sdmmc_drv_probe()
1373 host->ucr = ucr; in rtsx_usb_sdmmc_drv_probe()