Lines Matching refs:rc

82 	struct _citrus_mapper_std_rowcol *rc;
88 rc = &ms->ms_rowcol;
90 for (i = rc->rc_src_rowcol_len * rc->rc_src_rowcol_bits,
91 lz = &rc->rc_src_rowcol[0]; i > 0; ++lz) {
92 i -= rc->rc_src_rowcol_bits;
93 n = (src >> i) & rc->rc_src_rowcol_mask;
95 switch (rc->rc_oob_mode) {
97 *dst = rc->rc_dst_invalid;
107 switch (rc->rc_dst_unit_bits) {
109 conv = _region_peek8(&rc->rc_table, idx);
112 conv = be16toh(_region_peek16(&rc->rc_table, idx*2));
115 conv = be32toh(_region_peek32(&rc->rc_table, idx*4));
121 if (conv == rc->rc_dst_invalid) {
122 *dst = rc->rc_dst_invalid;
125 if (conv == rc->rc_dst_ilseq)
149 rowcol_parse_variable_compat(struct _citrus_mapper_std_rowcol *rc,
159 rc->rc_dst_invalid = be32toh(rcx->rcx_dst_invalid);
160 rc->rc_dst_unit_bits = be32toh(rcx->rcx_dst_unit_bits);
164 rc->rc_src_rowcol_bits = m;
165 rc->rc_src_rowcol_mask = n;
167 rc->rc_src_rowcol = malloc(2 *
168 sizeof(*rc->rc_src_rowcol));
169 if (rc->rc_src_rowcol == NULL)
171 lz = rc->rc_src_rowcol;
172 rc->rc_src_rowcol_len = 1;
178 free(rc->rc_src_rowcol);
179 rc->rc_src_rowcol = NULL;
182 ++rc->rc_src_rowcol_len, ++lz;
191 rowcol_parse_variable(struct _citrus_mapper_std_rowcol *rc,
202 rc->rc_dst_invalid = be32toh(rcx->rcx_dst_invalid);
203 rc->rc_dst_unit_bits = be32toh(rcx->rcx_dst_unit_bits);
208 rc->rc_src_rowcol_bits = m;
209 rc->rc_src_rowcol_mask = n;
211 rc->rc_src_rowcol_len = be32toh(rcx->rcx_src_rowcol_len);
212 if (rc->rc_src_rowcol_len > _CITRUS_MAPPER_STD_ROWCOL_MAX)
214 rc->rc_src_rowcol = malloc(rc->rc_src_rowcol_len *
215 sizeof(*rc->rc_src_rowcol));
216 if (rc->rc_src_rowcol == NULL)
218 for (i = 0, lz = rc->rc_src_rowcol;
219 i < rc->rc_src_rowcol_len; ++i, ++lz) {
224 free(rc->rc_src_rowcol);
225 rc->rc_src_rowcol = NULL;
235 struct _citrus_mapper_std_rowcol *rc;
237 rc = &ms->ms_rowcol;
238 free(rc->rc_src_rowcol);
245 struct _citrus_mapper_std_rowcol *rc;
254 rc = &ms->ms_rowcol;
258 &rc->rc_table, NULL);
274 ret = rowcol_parse_variable_compat(rc, &r);
277 ret = rowcol_parse_variable(rc, &r);
285 switch (rc->rc_src_rowcol_bits) {
287 if (rc->rc_src_rowcol_len <= 32 / rc->rc_src_rowcol_bits)
295 rc->rc_oob_mode = _CITRUS_MAPPER_STD_OOB_NONIDENTICAL;
296 rc->rc_dst_ilseq = rc->rc_dst_invalid;
305 rc->rc_oob_mode = be32toh(eix->eix_oob_mode);
306 rc->rc_dst_ilseq = be32toh(eix->eix_dst_ilseq);
310 i = rc->rc_src_rowcol_len;
311 lz = &rc->rc_src_rowcol[--i];
314 lz = &rc->rc_src_rowcol[--i];
317 table_size *= rc->rc_dst_unit_bits/8;
320 _region_size(&rc->rc_table) < table_size)