Lines Matching defs:csd

124 	struct mmc_csd csd;
279 mmc_decode_csd_sd(uint32_t *raw_csd, struct mmc_csd *csd)
285 memset(csd, 0, sizeof(*csd));
286 csd->csd_structure = v = mmc_get_bits(raw_csd, 128, 126, 2);
290 csd->tacc = (exp[e] * mant[m] + 9) / 10;
291 csd->nsac = mmc_get_bits(raw_csd, 128, 104, 8) * 100;
294 csd->tran_speed = exp[e] * 10000 * mant[m];
295 csd->ccc = mmc_get_bits(raw_csd, 128, 84, 12);
296 csd->read_bl_len = 1 << mmc_get_bits(raw_csd, 128, 80, 4);
297 csd->read_bl_partial = mmc_get_bits(raw_csd, 128, 79, 1);
298 csd->write_blk_misalign = mmc_get_bits(raw_csd, 128, 78, 1);
299 csd->read_blk_misalign = mmc_get_bits(raw_csd, 128, 77, 1);
300 csd->dsr_imp = mmc_get_bits(raw_csd, 128, 76, 1);
301 csd->vdd_r_curr_min = cur_min[mmc_get_bits(raw_csd, 128, 59, 3)];
302 csd->vdd_r_curr_max = cur_max[mmc_get_bits(raw_csd, 128, 56, 3)];
303 csd->vdd_w_curr_min = cur_min[mmc_get_bits(raw_csd, 128, 53, 3)];
304 csd->vdd_w_curr_max = cur_max[mmc_get_bits(raw_csd, 128, 50, 3)];
307 csd->capacity = ((1 + m) << (e + 2)) * csd->read_bl_len;
308 csd->erase_blk_en = mmc_get_bits(raw_csd, 128, 46, 1);
309 csd->erase_sector = mmc_get_bits(raw_csd, 128, 39, 7) + 1;
310 csd->wp_grp_size = mmc_get_bits(raw_csd, 128, 32, 7);
311 csd->wp_grp_enable = mmc_get_bits(raw_csd, 128, 31, 1);
312 csd->r2w_factor = 1 << mmc_get_bits(raw_csd, 128, 26, 3);
313 csd->write_bl_len = 1 << mmc_get_bits(raw_csd, 128, 22, 4);
314 csd->write_bl_partial = mmc_get_bits(raw_csd, 128, 21, 1);
318 csd->tacc = (exp[e] * mant[m] + 9) / 10;
319 csd->nsac = mmc_get_bits(raw_csd, 128, 104, 8) * 100;
322 csd->tran_speed = exp[e] * 10000 * mant[m];
323 csd->ccc = mmc_get_bits(raw_csd, 128, 84, 12);
324 csd->read_bl_len = 1 << mmc_get_bits(raw_csd, 128, 80, 4);
325 csd->read_bl_partial = mmc_get_bits(raw_csd, 128, 79, 1);
326 csd->write_blk_misalign = mmc_get_bits(raw_csd, 128, 78, 1);
327 csd->read_blk_misalign = mmc_get_bits(raw_csd, 128, 77, 1);
328 csd->dsr_imp = mmc_get_bits(raw_csd, 128, 76, 1);
329 csd->capacity = ((uint64_t)mmc_get_bits(raw_csd, 128, 48, 22) + 1) *
331 csd->erase_blk_en = mmc_get_bits(raw_csd, 128, 46, 1);
332 csd->erase_sector = mmc_get_bits(raw_csd, 128, 39, 7) + 1;
333 csd->wp_grp_size = mmc_get_bits(raw_csd, 128, 32, 7);
334 csd->wp_grp_enable = mmc_get_bits(raw_csd, 128, 31, 1);
335 csd->r2w_factor = 1 << mmc_get_bits(raw_csd, 128, 26, 3);
336 csd->write_bl_len = 1 << mmc_get_bits(raw_csd, 128, 22, 4);
337 csd->write_bl_partial = mmc_get_bits(raw_csd, 128, 21, 1);
343 mmc_decode_csd_mmc(uint32_t *raw_csd, struct mmc_csd *csd)
348 memset(csd, 0, sizeof(*csd));
349 csd->csd_structure = mmc_get_bits(raw_csd, 128, 126, 2);
350 csd->spec_vers = mmc_get_bits(raw_csd, 128, 122, 4);
353 csd->tacc = exp[e] * mant[m] + 9 / 10;
354 csd->nsac = mmc_get_bits(raw_csd, 128, 104, 8) * 100;
357 csd->tran_speed = exp[e] * 10000 * mant[m];
358 csd->ccc = mmc_get_bits(raw_csd, 128, 84, 12);
359 csd->read_bl_len = 1 << mmc_get_bits(raw_csd, 128, 80, 4);
360 csd->read_bl_partial = mmc_get_bits(raw_csd, 128, 79, 1);
361 csd->write_blk_misalign = mmc_get_bits(raw_csd, 128, 78, 1);
362 csd->read_blk_misalign = mmc_get_bits(raw_csd, 128, 77, 1);
363 csd->dsr_imp = mmc_get_bits(raw_csd, 128, 76, 1);
364 csd->vdd_r_curr_min = cur_min[mmc_get_bits(raw_csd, 128, 59, 3)];
365 csd->vdd_r_curr_max = cur_max[mmc_get_bits(raw_csd, 128, 56, 3)];
366 csd->vdd_w_curr_min = cur_min[mmc_get_bits(raw_csd, 128, 53, 3)];
367 csd->vdd_w_curr_max = cur_max[mmc_get_bits(raw_csd, 128, 50, 3)];
370 csd->capacity = ((1 + m) << (e + 2)) * csd->read_bl_len;
371 csd->erase_blk_en = 0;
372 csd->erase_sector = (mmc_get_bits(raw_csd, 128, 42, 5) + 1) *
374 csd->wp_grp_size = mmc_get_bits(raw_csd, 128, 32, 5);
375 csd->wp_grp_enable = mmc_get_bits(raw_csd, 128, 31, 1);
376 csd->r2w_factor = 1 << mmc_get_bits(raw_csd, 128, 26, 3);
377 csd->write_bl_len = 1 << mmc_get_bits(raw_csd, 128, 22, 4);
378 csd->write_bl_partial = mmc_get_bits(raw_csd, 128, 21, 1);
897 KASSERT(buf_len == 512, ("Buffer for ext csd must be 512 bytes"));
993 return (softc->csd.spec_vers);
1265 mmc_decode_csd_mmc(mmcp->card_csd, &softc->csd);
1278 mmc_decode_csd_sd(mmcp->card_csd, &softc->csd);
1282 softc->sector_count = softc->csd.capacity / 512;
1283 softc->mediasize = softc->csd.capacity;
1337 softc->card_f_max = softc->csd.tran_speed;
1351 if ((softc->scr.sda_vsn >= 1) && (softc->csd.ccc & (1<<10))) {