Lines Matching refs:rk_scr
51 struct rk_scr scr[RK_SCR_NUM];
61 static struct rk_scr_device *rk_scr; variable
63 static struct rk_scr *to_rk_scr(int id) in to_rk_scr()
66 return &rk_scr->scr[id]; in to_rk_scr()
71 static struct rk_scr *to_opened_rk_scr(int id) in to_opened_rk_scr()
73 struct rk_scr *scr; in to_opened_rk_scr()
83 static void rk_scr_deactive(struct rk_scr *scr) in rk_scr_deactive()
93 static void rk_scr_set_clk(struct rk_scr *scr) in rk_scr_set_clk()
105 static void rk_scr_set_work_waitingtime(struct rk_scr *scr, in rk_scr_set_work_waitingtime()
116 static void rk_scr_set_etu_duration(struct rk_scr *scr, unsigned int F, in rk_scr_set_etu_duration()
132 static void rk_scr_set_scr_voltage(struct rk_scr *scr, in rk_scr_set_scr_voltage()
157 static void rk_scr_powerdown(struct rk_scr *scr) in rk_scr_powerdown()
162 static void rk_scr_set_clockstop_mode(struct rk_scr *scr, in rk_scr_set_clockstop_mode()
173 static void rk_scr_clock_start(struct rk_scr *scr) in rk_scr_clock_start()
192 static void rk_scr_clock_stop(struct rk_scr *scr) in rk_scr_clock_stop()
208 static void rk_scr_reset(struct rk_scr *scr, unsigned char *rx_buffer) in rk_scr_reset()
252 static void rk_scr_write_bytes(struct rk_scr *scr) in rk_scr_write_bytes()
266 static void rk_scr_read_bytes(struct rk_scr *scr) in rk_scr_read_bytes()
282 struct rk_scr *scr = (struct rk_scr *)priv; in rk_scr_irqhandler()
395 static void _rk_scr_init(struct rk_scr *scr) in _rk_scr_init()
458 static void _rk_scr_deinit(struct rk_scr *scr) in _rk_scr_deinit()
474 struct rk_scr *scr = NULL; in rk_scr_freqchanged_notifiy()
488 struct rk_scr *p = to_rk_scr(idx); in rk_scr_freqchanged_notifiy()
506 struct rk_scr_device *rk_scr_dev = rk_scr; in rk_scr_open()
507 struct rk_scr *scr = to_rk_scr(id); in rk_scr_open()
537 struct rk_scr *scr; in rk_scr_close()
556 struct rk_scr *scr; in rk_scr_read()
593 struct rk_scr *scr; in rk_scr_write()
646 struct rk_scr *scr; in rk_scr_transfer()
724 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_set_voltage()
737 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_reset()
746 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_set_etu_duration()
755 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_set_clock_stopmode()
764 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_set_work_waitingtime()
773 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_clock_start()
782 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_clock_stop()
829 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_get_num_rx_bytes()
840 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_get_num_tx_bytes()
851 struct rk_scr *scr = to_opened_rk_scr(id); in _scr_powerdown()
860 struct rk_scr *scr = to_rk_scr(id); in _scr_irq_set_handler()
869 struct rk_scr *scr = to_rk_scr(id); in _scr_irq_set_mask()
878 struct rk_scr *scr = to_rk_scr(id); in _scr_irq_get_mask()
890 struct rk_scr *scr = to_rk_scr(id); in _scr_irq_get_detect_status()
904 struct rk_scr *scr = to_rk_scr(id); in _scr_rx_done()
951 complete(&rk_scr->is_done); in scr_isr_callback()
961 mutex_lock(&rk_scr->scr_mutex); in scr_write()
963 mutex_unlock(&rk_scr->scr_mutex); in scr_write()
969 init_completion(&rk_scr->is_done); in scr_write()
970 rk_scr->recv_data_count = 0; in scr_write()
971 rk_scr->recv_data_offset = 0; in scr_write()
977 _scr_rx_byte(*to_read_cnt, rk_scr->recv_buffer); in scr_write()
979 ret = wait_for_completion_timeout(&rk_scr->is_done, in scr_write()
981 rk_scr->recv_data_count = _scr_get_num_rx_bytes(); in scr_write()
984 mutex_unlock(&rk_scr->scr_mutex); in scr_write()
989 mutex_unlock(&rk_scr->scr_mutex); in scr_write()
1005 if (!rk_scr->recv_buffer) in scr_read()
1008 mutex_lock(&rk_scr->scr_mutex); in scr_read()
1010 mutex_unlock(&rk_scr->scr_mutex); in scr_read()
1023 data_available = rk_scr->recv_data_count in scr_read()
1024 - rk_scr->recv_data_offset; in scr_read()
1031 data_offset = rk_scr->recv_data_offset; in scr_read()
1033 &rk_scr->recv_buffer[data_offset], in scr_read()
1036 rk_scr->recv_data_offset += data_len; in scr_read()
1047 mutex_unlock(&rk_scr->scr_mutex); in scr_read()
1054 mutex_lock(&rk_scr->scr_mutex); in scr_open()
1056 if (!rk_scr->recv_buffer) { in scr_open()
1057 rk_scr->recv_buffer = kmalloc(SMC_RECEIVE_BUF_LEN, GFP_DMA); in scr_open()
1058 if (!rk_scr->recv_buffer) in scr_open()
1061 memset(rk_scr->recv_buffer, 0, SMC_RECEIVE_BUF_LEN); in scr_open()
1062 init_completion(&rk_scr->is_done); in scr_open()
1063 rk_scr->recv_data_count = 0; in scr_open()
1064 rk_scr->recv_data_offset = 0; in scr_open()
1066 mutex_unlock(&rk_scr->scr_mutex); in scr_open()
1073 mutex_lock(&rk_scr->scr_mutex); in scr_close()
1075 kfree(rk_scr->recv_buffer); in scr_close()
1076 rk_scr->recv_buffer = NULL; in scr_close()
1077 mutex_unlock(&rk_scr->scr_mutex); in scr_close()
1089 mutex_lock(&rk_scr->scr_mutex); in scr_reset()
1091 mutex_unlock(&rk_scr->scr_mutex); in scr_reset()
1095 init_completion(&rk_scr->is_done); in scr_reset()
1097 rk_scr->recv_data_count = 0; in scr_reset()
1098 rk_scr->recv_data_offset = 0; in scr_reset()
1099 memset(rk_scr->atr_buffer, 0, SMC_ATR_MAX_LENGTH); in scr_reset()
1100 rk_scr->atr_length = 0; in scr_reset()
1103 _scr_reset(rk_scr->recv_buffer); in scr_reset()
1105 ret = wait_for_completion_timeout(&rk_scr->is_done, in scr_reset()
1107 rk_scr->recv_data_count = _scr_get_num_rx_bytes(); in scr_reset()
1111 if ((rk_scr->recv_data_count <= SMC_ATR_MAX_LENGTH) && in scr_reset()
1112 (rk_scr->recv_data_count > 0)) { in scr_reset()
1113 memcpy(rk_scr->atr_buffer, rk_scr->recv_buffer, in scr_reset()
1114 rk_scr->recv_data_count); in scr_reset()
1115 rk_scr->atr_length = rk_scr->recv_data_count; in scr_reset()
1118 rk_scr->recv_data_count); in scr_reset()
1119 mutex_unlock(&rk_scr->scr_mutex); in scr_reset()
1124 DAL_LOGV("rk_scr->atr_length = %d\n", rk_scr->atr_length); in scr_reset()
1125 for (i = 0; i < rk_scr->recv_data_count; i++) in scr_reset()
1126 DAL_LOGV("0x%2x\n", rk_scr->atr_buffer[i]); in scr_reset()
1128 mutex_unlock(&rk_scr->scr_mutex); in scr_reset()
1138 mutex_lock(&rk_scr->scr_mutex); in scr_get_atr_data()
1139 if ((rk_scr->atr_length < SMC_ATR_MIN_LENGTH) || in scr_get_atr_data()
1140 (rk_scr->atr_length > SMC_ATR_MAX_LENGTH)) { in scr_get_atr_data()
1141 mutex_unlock(&rk_scr->scr_mutex); in scr_get_atr_data()
1145 memcpy(atr_buf, &rk_scr->atr_buffer[0], rk_scr->atr_length); in scr_get_atr_data()
1146 *atr_len = rk_scr->atr_length; in scr_get_atr_data()
1147 mutex_unlock(&rk_scr->scr_mutex); in scr_get_atr_data()
1154 mutex_lock(&rk_scr->scr_mutex); in scr_set_etu_duration()
1156 mutex_unlock(&rk_scr->scr_mutex); in scr_set_etu_duration()
1161 mutex_lock(&rk_scr->scr_mutex); in scr_set_work_waitingtime()
1163 mutex_unlock(&rk_scr->scr_mutex); in scr_set_work_waitingtime()
1220 rk_scr = rk_scr_dev; in rk_scr_probe()
1221 mutex_init(&rk_scr->scr_mutex); in rk_scr_probe()
1231 (void *)&rk_scr->scr[g_curr_sur_id]); in rk_scr_probe()