Lines Matching refs:func
23 static int cistpl_vers_1(struct mmc_card *card, struct sdio_func *func, in cistpl_vers_1() argument
66 if (func) { in cistpl_vers_1()
67 func->major_rev = major_rev; in cistpl_vers_1()
68 func->minor_rev = minor_rev; in cistpl_vers_1()
69 func->num_info = nr_strings; in cistpl_vers_1()
70 func->info = (const char**)buffer; in cistpl_vers_1()
81 static int cistpl_manfid(struct mmc_card *card, struct sdio_func *func, in cistpl_manfid() argument
92 if (func) { in cistpl_manfid()
93 func->vendor = vendor; in cistpl_manfid()
94 func->device = device; in cistpl_manfid()
118 static int cis_tpl_parse(struct mmc_card *card, struct sdio_func *func, in cis_tpl_parse() argument
134 ret = tpl->parse(card, func, buf, size); in cis_tpl_parse()
153 static int cistpl_funce_common(struct mmc_card *card, struct sdio_func *func, in cistpl_funce_common() argument
157 if (func) in cistpl_funce_common()
170 static int cistpl_funce_func(struct mmc_card *card, struct sdio_func *func, in cistpl_funce_func() argument
177 if (!func) in cistpl_funce_func()
184 vsn = func->card->cccr.sdio_vsn; in cistpl_funce_func()
196 func->max_blksize = buf[12] | (buf[13] << 8); in cistpl_funce_func()
200 func->enable_timeout = (buf[28] | (buf[29] << 8)) * 10; in cistpl_funce_func()
202 func->enable_timeout = jiffies_to_msecs(HZ); in cistpl_funce_func()
220 static int cistpl_funce(struct mmc_card *card, struct sdio_func *func, in cistpl_funce() argument
226 return cis_tpl_parse(card, func, "CISTPL_FUNCE", in cistpl_funce()
241 static int sdio_read_cis(struct mmc_card *card, struct sdio_func *func) in sdio_read_cis() argument
255 if (func) in sdio_read_cis()
256 fn = func->num; in sdio_read_cis()
267 if (func) in sdio_read_cis()
268 prev = &func->tuples; in sdio_read_cis()
314 ret = cis_tpl_parse(card, func, "CIS", in sdio_read_cis()
354 if (func) in sdio_read_cis()
380 int sdio_read_func_cis(struct sdio_func *func) in sdio_read_func_cis() argument
384 ret = sdio_read_cis(func->card, func); in sdio_read_func_cis()
392 get_device(&func->card->dev); in sdio_read_func_cis()
398 if (func->vendor == 0) { in sdio_read_func_cis()
399 func->vendor = func->card->cis.vendor; in sdio_read_func_cis()
400 func->device = func->card->cis.device; in sdio_read_func_cis()
406 void sdio_free_func_cis(struct sdio_func *func) in sdio_free_func_cis() argument
410 tuple = func->tuples; in sdio_free_func_cis()
412 while (tuple && tuple != func->card->tuples) { in sdio_free_func_cis()
418 func->tuples = NULL; in sdio_free_func_cis()
424 put_device(&func->card->dev); in sdio_free_func_cis()