Lines Matching refs:card
115 struct mmc_card *card; member
129 struct mmc_card *card; member
143 struct mmc_card *card; member
184 return mmc_set_blocklen(test->card, size); in mmc_test_set_blksize()
205 if (!mmc_card_blockaddr(test->card)) in mmc_test_prepare_mrq()
224 mmc_set_data_timeout(mrq->data, test->card); in mmc_test_prepare_mrq()
246 cmd.arg = test->card->rca << 16; in mmc_test_wait_busy()
249 ret = mmc_wait_for_cmd(test->card->host, &cmd, 0); in mmc_test_wait_busy()
255 if (test->card->host->caps & MMC_CAP_WAIT_WHILE_BUSY) in mmc_test_wait_busy()
258 mmc_hostname(test->card->host)); in mmc_test_wait_busy()
288 mmc_wait_for_req(test->card->host, &mrq); in mmc_test_buffer_transfer()
560 mmc_hostname(test->card->host), sectors, sectors >> 1, in mmc_test_print_rate()
587 mmc_hostname(test->card->host), count, sectors, count, in mmc_test_print_avg_rate()
599 static unsigned int mmc_test_capacity(struct mmc_card *card) in mmc_test_capacity() argument
601 if (!mmc_card_sd(card) && mmc_card_blockaddr(card)) in mmc_test_capacity()
602 return card->ext_csd.sectors; in mmc_test_capacity()
604 return card->csd.capacity << (card->csd.read_blkbits - 9); in mmc_test_capacity()
686 mrq->cmd->arg = test->card->rca << 16; in mmc_test_prepare_broken_mrq()
718 static int mmc_test_check_result_async(struct mmc_card *card, in mmc_test_check_result_async() argument
816 done_areq = mmc_start_req(test->card->host, cur_areq, &ret); in mmc_test_nonblock_transfer()
835 done_areq = mmc_start_req(test->card->host, NULL, &ret); in mmc_test_nonblock_transfer()
861 mmc_wait_for_req(test->card->host, &mrq); in mmc_test_simple_transfer()
890 mmc_wait_for_req(test->card->host, &mrq); in mmc_test_broken_transfer()
1056 if (test->card->host->max_blk_count == 1) in mmc_test_multi_write()
1060 size = min(size, test->card->host->max_req_size); in mmc_test_multi_write()
1061 size = min(size, test->card->host->max_seg_size); in mmc_test_multi_write()
1062 size = min(size, test->card->host->max_blk_count * 512); in mmc_test_multi_write()
1082 if (test->card->host->max_blk_count == 1) in mmc_test_multi_read()
1086 size = min(size, test->card->host->max_req_size); in mmc_test_multi_read()
1087 size = min(size, test->card->host->max_seg_size); in mmc_test_multi_read()
1088 size = min(size, test->card->host->max_blk_count * 512); in mmc_test_multi_read()
1107 if (!test->card->csd.write_partial) in mmc_test_pow2_write()
1125 if (!test->card->csd.read_partial) in mmc_test_pow2_read()
1143 if (!test->card->csd.write_partial) in mmc_test_weird_write()
1161 if (!test->card->csd.read_partial) in mmc_test_weird_read()
1210 if (test->card->host->max_blk_count == 1) in mmc_test_align_multi_write()
1214 size = min(size, test->card->host->max_req_size); in mmc_test_align_multi_write()
1215 size = min(size, test->card->host->max_seg_size); in mmc_test_align_multi_write()
1216 size = min(size, test->card->host->max_blk_count * 512); in mmc_test_align_multi_write()
1237 if (test->card->host->max_blk_count == 1) in mmc_test_align_multi_read()
1241 size = min(size, test->card->host->max_req_size); in mmc_test_align_multi_read()
1242 size = min(size, test->card->host->max_seg_size); in mmc_test_align_multi_read()
1243 size = min(size, test->card->host->max_blk_count * 512); in mmc_test_align_multi_read()
1292 if (test->card->host->max_blk_count == 1) in mmc_test_multi_xfersize_write()
1310 if (test->card->host->max_blk_count == 1) in mmc_test_multi_xfersize_read()
1362 if (test->card->host->max_blk_count == 1) in mmc_test_multi_write_high()
1366 size = min(size, test->card->host->max_req_size); in mmc_test_multi_write_high()
1367 size = min(size, test->card->host->max_seg_size); in mmc_test_multi_write_high()
1368 size = min(size, test->card->host->max_blk_count * 512); in mmc_test_multi_write_high()
1389 if (test->card->host->max_blk_count == 1) in mmc_test_multi_read_high()
1393 size = min(size, test->card->host->max_req_size); in mmc_test_multi_read_high()
1394 size = min(size, test->card->host->max_seg_size); in mmc_test_multi_read_high()
1395 size = min(size, test->card->host->max_blk_count * 512); in mmc_test_multi_read_high()
1415 mmc_hostname(test->card->host)); in mmc_test_no_highmem()
1442 mmc_hostname(test->card->host)); in mmc_test_area_map()
1539 if (!mmc_can_erase(test->card)) in mmc_test_area_erase()
1542 return mmc_erase(test->card, t->dev_addr, t->max_sz >> 9, in mmc_test_area_erase()
1577 sz = (unsigned long)test->card->pref_erase << 9; in mmc_test_area_init()
1584 t->max_segs = test->card->host->max_segs; in mmc_test_area_init()
1585 t->max_seg_sz = test->card->host->max_seg_size; in mmc_test_area_init()
1589 if (t->max_tfr >> 9 > test->card->host->max_blk_count) in mmc_test_area_init()
1590 t->max_tfr = test->card->host->max_blk_count << 9; in mmc_test_area_init()
1591 if (t->max_tfr > test->card->host->max_req_size) in mmc_test_area_init()
1592 t->max_tfr = test->card->host->max_req_size; in mmc_test_area_init()
1613 t->dev_addr = mmc_test_capacity(test->card) / 2; in mmc_test_area_init()
1767 if (!mmc_can_trim(test->card)) in mmc_test_profile_trim_perf()
1770 if (!mmc_can_erase(test->card)) in mmc_test_profile_trim_perf()
1776 ret = mmc_erase(test->card, dev_addr, sz >> 9, MMC_TRIM_ARG); in mmc_test_profile_trim_perf()
1784 ret = mmc_erase(test->card, dev_addr, sz >> 9, MMC_TRIM_ARG); in mmc_test_profile_trim_perf()
1884 if (!mmc_can_trim(test->card)) in mmc_test_profile_seq_trim_perf()
1887 if (!mmc_can_erase(test->card)) in mmc_test_profile_seq_trim_perf()
1901 ret = mmc_erase(test->card, dev_addr, sz >> 9, in mmc_test_profile_seq_trim_perf()
1934 rnd_addr = mmc_test_capacity(test->card) / 4; in mmc_test_rnd_perf()
1935 range1 = rnd_addr / test->card->pref_erase; in mmc_test_rnd_perf()
1948 dev_addr = rnd_addr + test->card->pref_erase * ea + in mmc_test_rnd_perf()
2036 dev_addr = mmc_test_capacity(test->card) / 4; in mmc_test_seq_perf()
2106 if (size > mmc_test_capacity(test->card) / 2 * 512) in mmc_test_rw_multiple()
2107 size = mmc_test_capacity(test->card) / 2 * 512; in mmc_test_rw_multiple()
2110 dev_addr = mmc_test_capacity(test->card) / 4; in mmc_test_rw_multiple()
2122 if (mmc_can_erase(test->card) && in mmc_test_rw_multiple()
2124 ret = mmc_erase(test->card, dev_addr, in mmc_test_rw_multiple()
2127 ret = mmc_erase(test->card, dev_addr, in mmc_test_rw_multiple()
2151 void *pre_req = test->card->host->ops->pre_req; in mmc_test_rw_multiple_size()
2152 void *post_req = test->card->host->ops->post_req; in mmc_test_rw_multiple_size()
2340 struct mmc_card *card = test->card; in mmc_test_hw_reset() local
2341 struct mmc_host *host = card->host; in mmc_test_hw_reset()
2344 if (!mmc_card_mmc(card) || !mmc_can_reset(card)) in mmc_test_hw_reset()
2694 mmc_hostname(test->card->host), mmc_card_id(test->card)); in mmc_test_run()
2696 mmc_claim_host(test->card->host); in mmc_test_run()
2705 mmc_hostname(test->card->host), i + 1, in mmc_test_run()
2713 mmc_hostname(test->card->host), in mmc_test_run()
2725 gr->card = test->card; in mmc_test_run()
2742 mmc_hostname(test->card->host)); in mmc_test_run()
2746 mmc_hostname(test->card->host)); in mmc_test_run()
2751 mmc_hostname(test->card->host)); in mmc_test_run()
2756 mmc_hostname(test->card->host)); in mmc_test_run()
2760 mmc_hostname(test->card->host), ret); in mmc_test_run()
2772 mmc_hostname(test->card->host), in mmc_test_run()
2778 mmc_release_host(test->card->host); in mmc_test_run()
2781 mmc_hostname(test->card->host)); in mmc_test_run()
2784 static void mmc_test_free_result(struct mmc_card *card) in mmc_test_free_result() argument
2793 if (card && gr->card != card) in mmc_test_free_result()
2812 struct mmc_card *card = (struct mmc_card *)sf->private; in mtf_test_show() local
2820 if (gr->card != card) in mtf_test_show()
2848 struct mmc_card *card = (struct mmc_card *)sf->private; local
2865 mmc_test_free_result(card);
2867 test->card = card;
2927 static void mmc_test_free_dbgfs_file(struct mmc_card *card) argument
2934 if (card && df->card != card)
2944 static int __mmc_test_register_dbgfs_file(struct mmc_card *card, argument
2950 if (card->debugfs_root)
2951 file = debugfs_create_file(name, mode, card->debugfs_root,
2952 card, fops);
2955 dev_err(&card->dev,
2964 dev_err(&card->dev,
2969 df->card = card;
2976 static int mmc_test_register_dbgfs_file(struct mmc_card *card) argument
2982 ret = __mmc_test_register_dbgfs_file(card, "test", S_IWUSR | S_IRUGO,
2987 ret = __mmc_test_register_dbgfs_file(card, "testlist", S_IRUGO,
2998 static int mmc_test_probe(struct mmc_card *card) argument
3002 if (!mmc_card_mmc(card) && !mmc_card_sd(card))
3005 ret = mmc_test_register_dbgfs_file(card);
3009 dev_info(&card->dev, "Card claimed for testing.\n");
3014 static void mmc_test_remove(struct mmc_card *card) argument
3016 mmc_test_free_result(card);
3017 mmc_test_free_dbgfs_file(card);
3020 static void mmc_test_shutdown(struct mmc_card *card) argument