Searched refs:ios (Results 1 - 91 of 91) sorted by relevance

/linux-4.1.27/fs/exofs/
H A Dore.c124 static u8 *_ios_cred(struct ore_io_state *ios, unsigned index) _ios_cred() argument
126 return ios->oc->comps[index & ios->oc->single_comp].cred; _ios_cred()
129 static struct osd_obj_id *_ios_obj(struct ore_io_state *ios, unsigned index) _ios_obj() argument
131 return &ios->oc->comps[index & ios->oc->single_comp].obj; _ios_obj()
134 static struct osd_dev *_ios_od(struct ore_io_state *ios, unsigned index) _ios_od() argument
137 ios->oc->first_dev, ios->oc->numdevs, index, _ios_od()
138 ios->oc->ods); _ios_od()
140 return ore_comp_dev(ios->oc, index); _ios_od()
148 struct ore_io_state *ios; _ore_get_io_state() local
152 struct ore_io_state ios; _ore_get_io_state() member in struct:__alloc_all_io_state
170 ios = &_aios->ios; _ore_get_io_state()
173 struct ore_io_state ios; _ore_get_io_state() member in struct:__alloc_small_io_state
202 ios = &_aio_small->ios; _ore_get_io_state()
203 ios->extra_part_alloc = true; _ore_get_io_state()
207 ios->parity_pages = pages; _ore_get_io_state()
208 ios->max_par_pages = num_par_pages; _ore_get_io_state()
214 ios->per_dev[d].sglist = sgilist; _ore_get_io_state()
217 ios->sgs_per_dev = sgs_per_dev; _ore_get_io_state()
220 ios->layout = layout; _ore_get_io_state()
221 ios->oc = oc; _ore_get_io_state()
222 *pios = ios; _ore_get_io_state()
237 * And check the returned ios->length for max_io_size.)
239 * The caller must check returned ios->length (and/or ios->nr_pages) and
240 * re-issue these pages that fall outside of ios->length
246 struct ore_io_state *ios; ore_get_rw_state() local
287 ios = *pios; ore_get_rw_state()
288 ios->reading = is_reading; ore_get_rw_state()
289 ios->offset = offset; ore_get_rw_state()
292 ore_calc_stripe_info(layout, offset, length, &ios->si); ore_get_rw_state()
293 ios->length = ios->si.length; ore_get_rw_state()
294 ios->nr_pages = ((ios->offset & (PAGE_SIZE - 1)) + ore_get_rw_state()
295 ios->length + PAGE_SIZE - 1) / PAGE_SIZE; ore_get_rw_state()
297 _ore_post_alloc_raid_stuff(ios); ore_get_rw_state()
318 void ore_put_io_state(struct ore_io_state *ios) ore_put_io_state() argument
320 if (ios) { ore_put_io_state()
323 for (i = 0; i < ios->numdevs; i++) { ore_put_io_state()
324 struct ore_per_dev_state *per_dev = &ios->per_dev[i]; ore_put_io_state()
332 _ore_free_raid_stuff(ios); ore_put_io_state()
333 kfree(ios); ore_put_io_state()
338 static void _sync_done(struct ore_io_state *ios, void *p) _sync_done() argument
347 struct ore_io_state *ios = container_of( _last_io() local
350 ios->done(ios, ios->private); _last_io()
355 struct ore_io_state *ios = p; _done_io() local
357 kref_put(&ios->kref, _last_io); _done_io()
360 int ore_io_execute(struct ore_io_state *ios) ore_io_execute() argument
363 bool sync = (ios->done == NULL); ore_io_execute()
367 ios->done = _sync_done; ore_io_execute()
368 ios->private = &wait; ore_io_execute()
371 for (i = 0; i < ios->numdevs; i++) { ore_io_execute()
372 struct osd_request *or = ios->per_dev[i].or; ore_io_execute()
376 ret = osd_finalize_request(or, 0, _ios_cred(ios, i), NULL); ore_io_execute()
384 kref_init(&ios->kref); ore_io_execute()
386 for (i = 0; i < ios->numdevs; i++) { ore_io_execute()
387 struct osd_request *or = ios->per_dev[i].or; ore_io_execute()
391 kref_get(&ios->kref); ore_io_execute()
392 osd_execute_request_async(or, _done_io, ios); ore_io_execute()
395 kref_put(&ios->kref, _last_io); ore_io_execute()
400 ret = ore_check_io(ios, NULL); ore_io_execute()
420 int ore_check_io(struct ore_io_state *ios, ore_on_dev_error on_dev_error) ore_check_io() argument
426 for (i = 0; i < ios->numdevs; i++) { ore_check_io()
428 struct ore_per_dev_state *per_dev = &ios->per_dev[i]; ore_check_io()
455 u64 residual = ios->reading ? ore_check_io()
457 u64 offset = (ios->offset + ios->length) - residual; ore_check_io()
458 unsigned dev = per_dev->dev - ios->oc->first_dev; ore_check_io()
459 struct ore_dev *od = ios->oc->ods[dev]; ore_check_io()
461 on_dev_error(ios, od, dev, osi.osd_err_pri, ore_check_io()
593 int _ore_add_stripe_unit(struct ore_io_state *ios, unsigned *cur_pg, _ore_add_stripe_unit() argument
599 osd_request_queue(_ios_od(ios, per_dev->dev)); _ore_add_stripe_unit()
606 if (!ios->reading) { _ore_add_stripe_unit()
607 bio_size = ios->si.maxdevUnits; _ore_add_stripe_unit()
609 bio_size = (ios->si.maxdevUnits + 1) * _ore_add_stripe_unit()
610 (ios->layout->group_width - ios->layout->parity) / _ore_add_stripe_unit()
611 ios->layout->group_width; _ore_add_stripe_unit()
613 bio_size *= (ios->layout->stripe_unit / PAGE_SIZE); _ore_add_stripe_unit()
642 _add_stripe_page(ios->sp2d, &ios->si, pages[pg]); _ore_add_stripe_unit()
660 static int _add_parity_units(struct ore_io_state *ios, _add_parity_units() argument
669 for (do_parity = ios->layout->parity; do_parity; --do_parity) { _add_parity_units()
672 per_dev = &ios->per_dev[dev - first_dev]; _add_parity_units()
682 ret = _ore_add_parity_unit(ios, si, per_dev, cur_len, _add_parity_units()
690 ios->layout->group_width; _add_parity_units()
697 static int _prepare_for_striping(struct ore_io_state *ios) _prepare_for_striping() argument
699 struct ore_striping_info *si = &ios->si; _prepare_for_striping()
700 unsigned stripe_unit = ios->layout->stripe_unit; _prepare_for_striping()
701 unsigned mirrors_p1 = ios->layout->mirrors_p1; _prepare_for_striping()
702 unsigned group_width = ios->layout->group_width; _prepare_for_striping()
706 unsigned cur_pg = ios->pages_consumed; _prepare_for_striping()
707 u64 length = ios->length; _prepare_for_striping()
710 if (!ios->pages) { _prepare_for_striping()
711 ios->numdevs = ios->layout->mirrors_p1; _prepare_for_striping()
719 &ios->per_dev[dev - first_dev]; _prepare_for_striping()
730 BUG_ON(page_off && (page_off != ios->pgbase)); _prepare_for_striping()
741 ret = _ore_add_stripe_unit(ios, &cur_pg, page_off, ios->pages, _prepare_for_striping()
750 if (unlikely((dev == si->par_dev) || (!length && ios->sp2d))) { _prepare_for_striping()
751 if (!length && ios->sp2d) { _prepare_for_striping()
757 si->cur_comp = group_width - ios->layout->parity; _prepare_for_striping()
763 ret = _add_parity_units(ios, si, dev, first_dev, _prepare_for_striping()
765 ios->sp2d ? length : cur_len); _prepare_for_striping()
771 ios->layout->parity * mirrors_p1) % _prepare_for_striping()
781 ios->numdevs = devs_in_group; _prepare_for_striping()
782 ios->pages_consumed = cur_pg; _prepare_for_striping()
786 int ore_create(struct ore_io_state *ios) ore_create() argument
790 for (i = 0; i < ios->oc->numdevs; i++) { ore_create()
793 or = osd_start_request(_ios_od(ios, i), GFP_KERNEL); ore_create()
799 ios->per_dev[i].or = or; ore_create()
800 ios->numdevs++; ore_create()
802 osd_req_create_object(or, _ios_obj(ios, i)); ore_create()
804 ret = ore_io_execute(ios); ore_create()
811 int ore_remove(struct ore_io_state *ios) ore_remove() argument
815 for (i = 0; i < ios->oc->numdevs; i++) { ore_remove()
818 or = osd_start_request(_ios_od(ios, i), GFP_KERNEL); ore_remove()
824 ios->per_dev[i].or = or; ore_remove()
825 ios->numdevs++; ore_remove()
827 osd_req_remove_object(or, _ios_obj(ios, i)); ore_remove()
829 ret = ore_io_execute(ios); ore_remove()
836 static int _write_mirror(struct ore_io_state *ios, int cur_comp) _write_mirror() argument
838 struct ore_per_dev_state *master_dev = &ios->per_dev[cur_comp]; _write_mirror()
839 unsigned dev = ios->per_dev[cur_comp].dev; _write_mirror()
840 unsigned last_comp = cur_comp + ios->layout->mirrors_p1; _write_mirror()
843 if (ios->pages && !master_dev->length) _write_mirror()
847 struct ore_per_dev_state *per_dev = &ios->per_dev[cur_comp]; _write_mirror()
850 or = osd_start_request(_ios_od(ios, dev), GFP_KERNEL); _write_mirror()
858 if (ios->pages) { _write_mirror()
884 osd_req_write(or, _ios_obj(ios, cur_comp), _write_mirror()
888 _LLU(_ios_obj(ios, cur_comp)->id), _write_mirror()
891 } else if (ios->kern_buff) { _write_mirror()
892 per_dev->offset = ios->si.obj_offset; _write_mirror()
893 per_dev->dev = ios->si.dev + dev; _write_mirror()
896 BUG_ON((ios->layout->group_width > 1) && _write_mirror()
897 (ios->si.unit_off + ios->length > _write_mirror()
898 ios->layout->stripe_unit)); _write_mirror()
900 ret = osd_req_write_kern(or, _ios_obj(ios, cur_comp), _write_mirror()
902 ios->kern_buff, ios->length); _write_mirror()
907 _LLU(_ios_obj(ios, cur_comp)->id), _write_mirror()
909 _LLU(ios->length), per_dev->dev); _write_mirror()
911 osd_req_set_attributes(or, _ios_obj(ios, cur_comp)); _write_mirror()
913 _LLU(_ios_obj(ios, cur_comp)->id), _write_mirror()
914 ios->out_attr_len, dev); _write_mirror()
917 if (ios->out_attr) _write_mirror()
918 osd_req_add_set_attr_list(or, ios->out_attr, _write_mirror()
919 ios->out_attr_len); _write_mirror()
921 if (ios->in_attr) _write_mirror()
922 osd_req_add_get_attr_list(or, ios->in_attr, _write_mirror()
923 ios->in_attr_len); _write_mirror()
930 int ore_write(struct ore_io_state *ios) ore_write() argument
935 if (unlikely(ios->sp2d && !ios->r4w)) { ore_write()
943 ret = _prepare_for_striping(ios); ore_write()
947 for (i = 0; i < ios->numdevs; i += ios->layout->mirrors_p1) { ore_write()
948 ret = _write_mirror(ios, i); ore_write()
953 ret = ore_io_execute(ios); ore_write()
958 int _ore_read_mirror(struct ore_io_state *ios, unsigned cur_comp) _ore_read_mirror() argument
961 struct ore_per_dev_state *per_dev = &ios->per_dev[cur_comp]; _ore_read_mirror()
962 struct osd_obj_id *obj = _ios_obj(ios, cur_comp); _ore_read_mirror()
965 if (ios->pages && !per_dev->length) _ore_read_mirror()
968 first_dev = per_dev->dev + first_dev % ios->layout->mirrors_p1; _ore_read_mirror()
969 or = osd_start_request(_ios_od(ios, first_dev), GFP_KERNEL); _ore_read_mirror()
976 if (ios->pages) { _ore_read_mirror()
996 BUG_ON(ios->kern_buff); _ore_read_mirror()
1001 ios->in_attr_len, first_dev); _ore_read_mirror()
1003 if (ios->out_attr) _ore_read_mirror()
1004 osd_req_add_set_attr_list(or, ios->out_attr, ios->out_attr_len); _ore_read_mirror()
1006 if (ios->in_attr) _ore_read_mirror()
1007 osd_req_add_get_attr_list(or, ios->in_attr, ios->in_attr_len); _ore_read_mirror()
1012 int ore_read(struct ore_io_state *ios) ore_read() argument
1017 ret = _prepare_for_striping(ios); ore_read()
1021 for (i = 0; i < ios->numdevs; i += ios->layout->mirrors_p1) { ore_read()
1022 ret = _ore_read_mirror(ios, i); ore_read()
1027 ret = ore_io_execute(ios); ore_read()
1032 int extract_attr_from_ios(struct ore_io_state *ios, struct osd_attr *attr) extract_attr_from_ios() argument
1040 osd_req_decode_get_attr_list(ios->per_dev[0].or, extract_attr_from_ios()
1054 static int _truncate_mirrors(struct ore_io_state *ios, unsigned cur_comp, _truncate_mirrors() argument
1057 int last_comp = cur_comp + ios->layout->mirrors_p1; _truncate_mirrors()
1060 struct ore_per_dev_state *per_dev = &ios->per_dev[cur_comp]; _truncate_mirrors()
1063 or = osd_start_request(_ios_od(ios, cur_comp), GFP_KERNEL); _truncate_mirrors()
1070 osd_req_set_attributes(or, _ios_obj(ios, cur_comp)); _truncate_mirrors()
1103 struct ore_io_state *ios; ore_truncate() local
1111 ret = ore_get_io_state(layout, oc, &ios); ore_truncate()
1115 _calc_trunk_info(ios->layout, size, &ti); ore_truncate()
1117 size_attrs = kcalloc(ios->oc->numdevs, sizeof(*size_attrs), ore_truncate()
1124 ios->numdevs = ios->oc->numdevs; ore_truncate()
1126 for (i = 0; i < ios->numdevs; ++i) { ore_truncate()
1136 ios->layout->stripe_unit - ti.si.unit_off; ore_truncate()
1148 ret = _truncate_mirrors(ios, i * ios->layout->mirrors_p1, ore_truncate()
1153 ret = ore_io_execute(ios); ore_truncate()
1157 ore_put_io_state(ios); ore_truncate()
H A Dore_raid.c35 * It is put on ios->sp2d for RAID5/6 writes only. See _gen_xor_unit.
319 static int _alloc_read_4_write(struct ore_io_state *ios) _alloc_read_4_write() argument
321 struct ore_layout *layout = ios->layout; _alloc_read_4_write()
326 unsigned sgs_per_dev = ios->sp2d->pages_in_unit + 2; _alloc_read_4_write()
328 ret = _ore_get_io_state(layout, ios->oc, _alloc_read_4_write()
330 sgs_per_dev, 0, &ios->ios_read_4_write); _alloc_read_4_write()
337 static int _add_to_r4w(struct ore_io_state *ios, struct ore_striping_info *si, _add_to_r4w() argument
344 (ios->layout->group_width * ios->layout->mirrors_p1)); _add_to_r4w()
348 if (!ios->ios_read_4_write) { _add_to_r4w()
349 int ret = _alloc_read_4_write(ios); _add_to_r4w()
355 read_ios = ios->ios_read_4_write; _add_to_r4w()
356 read_ios->numdevs = ios->layout->group_width * ios->layout->mirrors_p1; _add_to_r4w()
361 ios->sp2d->pages_in_unit); _add_to_r4w()
364 ios->sp2d->pages_in_unit); _add_to_r4w()
388 static int _add_to_r4w_first_page(struct ore_io_state *ios, struct page *page) _add_to_r4w_first_page() argument
393 ore_calc_stripe_info(ios->layout, ios->offset, 0, &si); _add_to_r4w_first_page()
401 return _add_to_r4w(ios, &si, page, pg_len); _add_to_r4w_first_page()
405 static int _add_to_r4w_last_page(struct ore_io_state *ios, u64 *offset) _add_to_r4w_last_page() argument
411 ore_calc_stripe_info(ios->layout, *offset, 0, &si); _add_to_r4w_last_page()
415 page = ios->sp2d->_1p_stripes[p].pages[c]; _add_to_r4w_last_page()
425 return _add_to_r4w(ios, &si, page, pg_len); _add_to_r4w_last_page()
428 static void _mark_read4write_pages_uptodate(struct ore_io_state *ios, int ret) _mark_read4write_pages_uptodate() argument
434 for (d = 0; d < ios->numdevs; d++) { _mark_read4write_pages_uptodate()
435 struct bio *bio = ios->per_dev[d].bio; _mark_read4write_pages_uptodate()
453 * are populating ios->sp2d[][]
455 * NOTE: We call ios->r4w->lock_fn for all pages needed for parity calculations
458 * ios->r4w->lock_fn(). The ios->r4w->lock_fn might signal that the page is
464 * maybe "devs_in_group - ios->sp2d[p].write_count" is a good enough
466 * ios->sp2d[p][*], xor is calculated the same way. These pages are
469 static int _read_4_write_first_stripe(struct ore_io_state *ios) _read_4_write_first_stripe() argument
472 struct __stripe_pages_2d *sp2d = ios->sp2d; _read_4_write_first_stripe()
473 u64 offset = ios->si.first_stripe_start; _read_4_write_first_stripe()
476 if (offset == ios->offset) /* Go to start collect $200 */ _read_4_write_first_stripe()
482 ORE_DBGMSG("stripe_start=0x%llx ios->offset=0x%llx min_p=%d max_p=%d\n", _read_4_write_first_stripe()
483 offset, ios->offset, min_p, max_p); _read_4_write_first_stripe()
486 ore_calc_stripe_info(ios->layout, offset, 0, &read_si); _read_4_write_first_stripe()
495 if (ios->offset % PAGE_SIZE) _read_4_write_first_stripe()
497 _add_to_r4w_first_page(ios, *pp); _read_4_write_first_stripe()
502 *pp = ios->r4w->get_page(ios->private, offset, _read_4_write_first_stripe()
508 _add_to_r4w(ios, &read_si, *pp, PAGE_SIZE); _read_4_write_first_stripe()
522 static int _read_4_write_last_stripe(struct ore_io_state *ios) _read_4_write_last_stripe() argument
525 struct __stripe_pages_2d *sp2d = ios->sp2d; _read_4_write_last_stripe()
528 unsigned bytes_in_stripe = ios->si.bytes_in_stripe; _read_4_write_last_stripe()
531 offset = ios->offset + ios->length; _read_4_write_last_stripe()
533 _add_to_r4w_last_page(ios, &offset); _read_4_write_last_stripe()
541 ore_calc_stripe_info(ios->layout, offset, 0, &read_si); _read_4_write_last_stripe()
562 page = ios->r4w->get_page(ios->private, offset, _read_4_write_last_stripe()
571 _add_to_r4w(ios, &read_si, page, PAGE_SIZE); _read_4_write_last_stripe()
578 ore_calc_stripe_info(ios->layout, offset, 0, &read_si); _read_4_write_last_stripe()
589 static int _read_4_write_execute(struct ore_io_state *ios) _read_4_write_execute() argument
595 ios_read = ios->ios_read_4_write; _read_4_write_execute()
602 ios_read->pages = ios->pages; _read_4_write_execute()
619 ios->ios_read_4_write = NULL; /* Might need a reuse at last stripe */ _read_4_write_execute()
624 int _ore_add_parity_unit(struct ore_io_state *ios, _ore_add_parity_unit() argument
629 if (ios->reading) { _ore_add_parity_unit()
630 if (per_dev->cur_sg >= ios->sgs_per_dev) { _ore_add_parity_unit()
632 per_dev->cur_sg, ios->sgs_per_dev); _ore_add_parity_unit()
637 struct __stripe_pages_2d *sp2d = ios->sp2d; _ore_add_parity_unit()
638 struct page **pages = ios->parity_pages + ios->cur_par_page; _ore_add_parity_unit()
653 _read_4_write_first_stripe(ios); _ore_add_parity_unit()
657 _read_4_write_last_stripe(ios); _ore_add_parity_unit()
658 _read_4_write_execute(ios); _ore_add_parity_unit()
665 ++(ios->cur_par_page); _ore_add_parity_unit()
671 ret = _ore_add_stripe_unit(ios, &array_start, 0, pages, _ore_add_parity_unit()
678 _sp2d_reset(sp2d, ios->r4w, ios->private); _ore_add_parity_unit()
684 int _ore_post_alloc_raid_stuff(struct ore_io_state *ios) _ore_post_alloc_raid_stuff() argument
686 if (ios->parity_pages) { _ore_post_alloc_raid_stuff()
687 struct ore_layout *layout = ios->layout; _ore_post_alloc_raid_stuff()
691 layout->parity, &ios->sp2d)) { _ore_post_alloc_raid_stuff()
698 void _ore_free_raid_stuff(struct ore_io_state *ios) _ore_free_raid_stuff() argument
700 if (ios->sp2d) { /* writing and raid */ _ore_free_raid_stuff()
703 for (i = 0; i < ios->cur_par_page; i++) { _ore_free_raid_stuff()
704 struct page *page = ios->parity_pages[i]; _ore_free_raid_stuff()
709 if (ios->extra_part_alloc) _ore_free_raid_stuff()
710 kfree(ios->parity_pages); _ore_free_raid_stuff()
712 _sp2d_reset(ios->sp2d, ios->r4w, ios->private); _ore_free_raid_stuff()
713 _sp2d_free(ios->sp2d); _ore_free_raid_stuff()
716 if (ios->extra_part_alloc) _ore_free_raid_stuff()
717 kfree(ios->per_dev[0].sglist); _ore_free_raid_stuff()
719 if (ios->ios_read_4_write) _ore_free_raid_stuff()
720 ore_put_io_state(ios->ios_read_4_write); _ore_free_raid_stuff()
H A Dore_raid.h34 /* ios_raid.c stuff needed by ios.c */
35 int _ore_post_alloc_raid_stuff(struct ore_io_state *ios);
36 void _ore_free_raid_stuff(struct ore_io_state *ios);
40 int _ore_add_parity_unit(struct ore_io_state *ios, struct ore_striping_info *si,
53 /* ios.c stuff needed by ios_raid.c */
58 int _ore_add_stripe_unit(struct ore_io_state *ios, unsigned *cur_pg,
61 int _ore_read_mirror(struct ore_io_state *ios, unsigned cur_comp);
62 int ore_io_execute(struct ore_io_state *ios);
H A Dinode.c53 struct ore_io_state *ios; member in struct:page_collect
75 pcol->ios = NULL; _pcol_init()
94 pcol->ios = NULL; _pcol_reset()
131 if (pcol->ios) { pcol_free()
132 ore_put_io_state(pcol->ios); pcol_free()
133 pcol->ios = NULL; pcol_free()
200 int ret = ore_check_io(pcol->ios, NULL); __readpages_done()
243 static void readpages_done(struct ore_io_state *ios, void *p) readpages_done() argument
268 static int _maybe_not_all_in_one_io(struct ore_io_state *ios, _maybe_not_all_in_one_io() argument
272 BUG_ON(pcol_src->nr_pages < ios->nr_pages); _maybe_not_all_in_one_io()
274 if (pcol_src->nr_pages > ios->nr_pages) { _maybe_not_all_in_one_io()
276 unsigned pages_less = pcol_src->nr_pages - ios->nr_pages; _maybe_not_all_in_one_io()
277 unsigned long len_less = pcol_src->length - ios->length; _maybe_not_all_in_one_io()
282 pcol_src->nr_pages = ios->nr_pages; _maybe_not_all_in_one_io()
283 pcol_src->length = ios->length; _maybe_not_all_in_one_io()
311 struct ore_io_state *ios; read_exec() local
318 if (!pcol->ios) { read_exec()
321 pcol->length, &pcol->ios); read_exec()
327 ios = pcol->ios; read_exec()
328 ios->pages = pcol->pages; read_exec()
331 ore_read(pcol->ios); read_exec()
342 ios->done = readpages_done; read_exec()
343 ios->private = pcol_copy; read_exec()
348 ret = _maybe_not_all_in_one_io(ios, pcol_copy, pcol); read_exec()
353 pcol->inode->i_ino, _LLU(ios->offset), _LLU(ios->length)); read_exec()
355 ret = ore_read(ios); read_exec()
520 static void writepages_done(struct ore_io_state *ios, void *p) writepages_done() argument
526 int ret = ore_check_io(ios, NULL); writepages_done()
630 struct ore_io_state *ios; write_exec() local
637 BUG_ON(pcol->ios); write_exec()
640 pcol->length, &pcol->ios); write_exec()
653 ios = pcol->ios; write_exec()
654 ios->pages = pcol_copy->pages; write_exec()
655 ios->done = writepages_done; write_exec()
656 ios->r4w = &_r4w_op; write_exec()
657 ios->private = pcol_copy; write_exec()
662 ret = _maybe_not_all_in_one_io(ios, pcol_copy, pcol); write_exec()
667 pcol->inode->i_ino, _LLU(ios->offset), _LLU(ios->length)); write_exec()
669 ret = ore_write(ios); write_exec()
1079 struct ore_io_state *ios; exofs_get_inode() local
1083 ret = ore_get_io_state(&sbi->layout, &oi->oc, &ios); exofs_get_inode()
1092 ios->in_attr = attrs; exofs_get_inode()
1093 ios->in_attr_len = ARRAY_SIZE(attrs); exofs_get_inode()
1095 ret = ore_read(ios); exofs_get_inode()
1108 ret = extract_attr_from_ios(ios, &attrs[0]); exofs_get_inode()
1116 ret = extract_attr_from_ios(ios, &attrs[1]); exofs_get_inode()
1131 ret = extract_attr_from_ios(ios, &attrs[2]); exofs_get_inode()
1147 ore_put_io_state(ios); exofs_get_inode()
1265 static void create_done(struct ore_io_state *ios, void *p) create_done() argument
1272 ret = ore_check_io(ios, NULL); create_done()
1273 ore_put_io_state(ios); create_done()
1303 struct ore_io_state *ios; exofs_new_inode() local
1331 ret = ore_get_io_state(&sbi->layout, &oi->oc, &ios); exofs_new_inode()
1337 ios->done = create_done; exofs_new_inode()
1338 ios->private = inode; exofs_new_inode()
1340 ret = ore_create(ios); exofs_new_inode()
1342 ore_put_io_state(ios); exofs_new_inode()
1361 static void updatei_done(struct ore_io_state *ios, void *p) updatei_done() argument
1365 ore_put_io_state(ios); updatei_done()
1381 struct ore_io_state *ios; exofs_update_inode() local
1420 ret = ore_get_io_state(&sbi->layout, &oi->oc, &ios); exofs_update_inode()
1428 ios->out_attr_len = 1; exofs_update_inode()
1429 ios->out_attr = &attr; exofs_update_inode()
1435 ios->done = updatei_done; exofs_update_inode()
1436 ios->private = args; exofs_update_inode()
1439 ret = ore_write(ios); exofs_update_inode()
1445 ore_put_io_state(ios); exofs_update_inode()
1464 static void delete_done(struct ore_io_state *ios, void *p) delete_done() argument
1468 ore_put_io_state(ios); delete_done()
1483 struct ore_io_state *ios; exofs_evict_inode() local
1503 ret = ore_get_io_state(&sbi->layout, &oi->oc, &ios); exofs_evict_inode()
1509 ios->done = delete_done; exofs_evict_inode()
1510 ios->private = sbi; exofs_evict_inode()
1512 ret = ore_remove(ios); exofs_evict_inode()
1515 ore_put_io_state(ios); exofs_evict_inode()
H A Dsuper.c271 struct ore_io_state *ios; __sbi_read_stats() local
274 ret = ore_get_io_state(&sbi->layout, &sbi->oc, &ios); __sbi_read_stats()
280 ios->in_attr = attrs; __sbi_read_stats()
281 ios->in_attr_len = ARRAY_SIZE(attrs); __sbi_read_stats()
283 ret = ore_read(ios); __sbi_read_stats()
289 ret = extract_attr_from_ios(ios, &attrs[0]); __sbi_read_stats()
310 ore_put_io_state(ios); __sbi_read_stats()
314 static void stats_done(struct ore_io_state *ios, void *p) stats_done() argument
316 ore_put_io_state(ios); stats_done()
326 struct ore_io_state *ios; exofs_sbi_write_stats() local
329 ret = ore_get_io_state(&sbi->layout, &sbi->oc, &ios); exofs_sbi_write_stats()
340 ios->done = stats_done; exofs_sbi_write_stats()
341 ios->private = sbi; exofs_sbi_write_stats()
342 ios->out_attr = attrs; exofs_sbi_write_stats()
343 ios->out_attr_len = ARRAY_SIZE(attrs); exofs_sbi_write_stats()
345 ret = ore_write(ios); exofs_sbi_write_stats()
348 ore_put_io_state(ios); exofs_sbi_write_stats()
369 struct ore_io_state *ios; exofs_sync_fs() local
388 ret = ore_get_io_state(&sbi->layout, &oc, &ios); exofs_sync_fs()
392 ios->length = offsetof(struct exofs_fscb, s_dev_table_oid); exofs_sync_fs()
393 memset(fscb, 0, ios->length); exofs_sync_fs()
400 ios->offset = 0; exofs_sync_fs()
401 ios->kern_buff = fscb; exofs_sync_fs()
403 ret = ore_write(ios); exofs_sync_fs()
409 ore_put_io_state(ios); exofs_sync_fs()
887 struct ore_io_state *ios; exofs_statfs() local
898 ret = ore_get_io_state(&sbi->layout, &sbi->oc, &ios); exofs_statfs()
904 ios->in_attr = attrs; exofs_statfs()
905 ios->in_attr_len = ARRAY_SIZE(attrs); exofs_statfs()
907 ret = ore_read(ios); exofs_statfs()
911 ret = extract_attr_from_ios(ios, &attrs[0]); exofs_statfs()
919 ret = extract_attr_from_ios(ios, &attrs[1]); exofs_statfs()
936 ore_put_io_state(ios); exofs_statfs()
/linux-4.1.27/drivers/mmc/core/
H A Ddebugfs.c56 struct mmc_ios *ios = &host->ios; mmc_ios_show() local
59 seq_printf(s, "clock:\t\t%u Hz\n", ios->clock); mmc_ios_show()
62 seq_printf(s, "vdd:\t\t%u ", ios->vdd); mmc_ios_show()
63 if ((1 << ios->vdd) & MMC_VDD_165_195) mmc_ios_show()
65 else if (ios->vdd < (ARRAY_SIZE(vdd_str) - 1) mmc_ios_show()
66 && vdd_str[ios->vdd] && vdd_str[ios->vdd + 1]) mmc_ios_show()
67 seq_printf(s, "(%s ~ %s V)\n", vdd_str[ios->vdd], mmc_ios_show()
68 vdd_str[ios->vdd + 1]); mmc_ios_show()
72 switch (ios->bus_mode) { mmc_ios_show()
83 seq_printf(s, "bus mode:\t%u (%s)\n", ios->bus_mode, str); mmc_ios_show()
85 switch (ios->chip_select) { mmc_ios_show()
99 seq_printf(s, "chip select:\t%u (%s)\n", ios->chip_select, str); mmc_ios_show()
101 switch (ios->power_mode) { mmc_ios_show()
115 seq_printf(s, "power mode:\t%u (%s)\n", ios->power_mode, str); mmc_ios_show()
117 ios->bus_width, 1 << ios->bus_width); mmc_ios_show()
119 switch (ios->timing) { mmc_ios_show()
151 seq_printf(s, "timing spec:\t%u (%s)\n", ios->timing, str); mmc_ios_show()
153 switch (ios->signal_voltage) { mmc_ios_show()
167 seq_printf(s, "signal voltage:\t%u (%s)\n", ios->chip_select, str); mmc_ios_show()
188 *val = host->ios.clock; mmc_clock_opt_get()
226 if (!debugfs_create_file("ios", S_IRUSR, root, host, &mmc_ios_fops)) mmc_add_host_debugfs()
H A Dcore.c988 * Internal function that does the actual ios call to the host driver,
993 struct mmc_ios *ios = &host->ios; mmc_set_ios() local
997 mmc_hostname(host), ios->clock, ios->bus_mode, mmc_set_ios()
998 ios->power_mode, ios->chip_select, ios->vdd, mmc_set_ios()
999 ios->bus_width, ios->timing); mmc_set_ios()
1001 if (ios->clock > 0) mmc_set_ios()
1003 host->ops->set_ios(host, ios); mmc_set_ios()
1012 host->ios.chip_select = mode; mmc_set_chip_select()
1028 host->ios.clock = hz; __mmc_set_clock()
1048 host->clk_old = host->ios.clock; mmc_gate_clock()
1049 host->ios.clock = 0; mmc_gate_clock()
1069 BUG_ON(host->ios.clock); mmc_ungate_clock()
1124 host->ios.bus_mode = mode; mmc_set_bus_mode()
1135 host->ios.bus_width = width; mmc_set_bus_width()
1146 host->ios.chip_select = MMC_CS_HIGH; mmc_set_initial_state()
1148 host->ios.chip_select = MMC_CS_DONTCARE; mmc_set_initial_state()
1149 host->ios.bus_mode = MMC_BUSMODE_PUSHPULL; mmc_set_initial_state()
1150 host->ios.bus_width = MMC_BUS_WIDTH_1; mmc_set_initial_state()
1151 host->ios.timing = MMC_TIMING_LEGACY; mmc_set_initial_state()
1347 * mmc_regulator_set_ocr - set regulator to match host->ios voltage
1350 * @vdd_bit: zero for power off, else a bit number (host->ios.vdd)
1465 if (bit != host->ios.vdd) mmc_select_voltage()
1475 int old_signal_voltage = host->ios.signal_voltage; __mmc_set_signal_voltage()
1477 host->ios.signal_voltage = signal_voltage; __mmc_set_signal_voltage()
1480 err = host->ops->start_signal_voltage_switch(host, &host->ios); __mmc_set_signal_voltage()
1485 host->ios.signal_voltage = old_signal_voltage; __mmc_set_signal_voltage()
1543 clock = host->ios.clock; mmc_set_signal_voltage()
1544 host->ios.clock = 0; mmc_set_signal_voltage()
1558 host->ios.clock = clock; mmc_set_signal_voltage()
1590 host->ios.timing = timing; mmc_set_timing()
1601 host->ios.drv_type = drv_type; mmc_set_driver_type()
1619 if (host->ios.power_mode == MMC_POWER_ON) mmc_power_up()
1626 host->ios.vdd = fls(ocr) - 1; mmc_power_up()
1627 host->ios.power_mode = MMC_POWER_UP; mmc_power_up()
1647 host->ios.clock = host->f_init; mmc_power_up()
1649 host->ios.power_mode = MMC_POWER_ON; mmc_power_up()
1663 if (host->ios.power_mode == MMC_POWER_OFF) mmc_power_off()
1670 host->ios.clock = 0; mmc_power_off()
1671 host->ios.vdd = 0; mmc_power_off()
1673 host->ios.power_mode = MMC_POWER_OFF; mmc_power_off()
1895 * ios.clock is only a target. The real clock rate might be mmc_mmc_erase_timeout()
2523 host->ios.power_mode = MMC_POWER_UNDEFINED; mmc_start_host()
H A Dhost.c91 * set_ios() operations with ios.clock field set to 0 to gate (disable)
97 unsigned long freq = host->ios.clock; mmc_host_clk_gate_delayed()
131 /* This will set host->ios.clock to 0 */ mmc_host_clk_gate_delayed()
155 * Makes sure the host ios.clock is restored to a non-zero value
202 * Calls the host driver with ios.clock set to zero as often as possible
234 freq = host->ios.clock; mmc_host_clk_rate()
H A Dmmc.c783 switch (1 << host->ios.vdd) { __mmc_select_powerclass()
785 if (host->ios.clock <= MMC_HIGH_26_MAX_DTR) __mmc_select_powerclass()
787 else if (host->ios.clock <= MMC_HIGH_52_MAX_DTR) __mmc_select_powerclass()
791 else if (host->ios.clock <= MMC_HS200_MAX_DTR) __mmc_select_powerclass()
803 if (host->ios.clock <= MMC_HIGH_26_MAX_DTR) __mmc_select_powerclass()
805 else if (host->ios.clock <= MMC_HIGH_52_MAX_DTR) __mmc_select_powerclass()
809 else if (host->ios.clock <= MMC_HS200_MAX_DTR) __mmc_select_powerclass()
848 bus_width = host->ios.bus_width; mmc_select_powerclass()
987 bus_width = host->ios.bus_width; mmc_select_hs_ddr()
1055 host->ios.bus_width == MMC_BUS_WIDTH_8)) mmc_select_hs400()
1188 host->ios.bus_width == MMC_BUS_WIDTH_8) mmc_hs200_tuning()
1190 host->ops->prepare_hs400_tuning(host, &host->ios); mmc_hs200_tuning()
H A Dmmc_ops.c156 * SPI hosts ignore ios.chip_select; it's managed according to mmc_go_idle()
586 struct mmc_ios *ios = &host->ios; mmc_send_tuning() local
592 if (ios->bus_width == MMC_BUS_WIDTH_8) { mmc_send_tuning()
596 } else if (ios->bus_width == MMC_BUS_WIDTH_4) { mmc_send_tuning()
H A Dsd.c534 voltage = 1 << host->ios.vdd; sd_get_host_max_current()
664 (card->host->ios.timing == MMC_TIMING_UHS_SDR50 || mmc_sd_init_uhs_card()
665 card->host->ios.timing == MMC_TIMING_UHS_DDR50 || mmc_sd_init_uhs_card()
666 card->host->ios.timing == MMC_TIMING_UHS_SDR104)) { mmc_sd_init_uhs_card()
676 if (err && card->host->ios.timing == MMC_TIMING_UHS_DDR50) { mmc_sd_init_uhs_card()
H A Dsdio.c569 ((card->host->ios.timing == MMC_TIMING_UHS_SDR50) || mmc_sdio_init_uhs_card()
570 (card->host->ios.timing == MMC_TIMING_UHS_SDR104))) mmc_sdio_init_uhs_card()
/linux-4.1.27/include/scsi/
H A Dosd_ore.h109 typedef void (*ore_io_done_fn)(struct ore_io_state *ios, void *private);
111 /* @Priv given here is passed ios->private */
180 struct ore_io_state **ios);
182 struct ore_io_state **ios);
183 void ore_put_io_state(struct ore_io_state *ios);
185 typedef void (*ore_on_dev_error)(struct ore_io_state *ios, struct ore_dev *od,
188 int ore_check_io(struct ore_io_state *ios, ore_on_dev_error rep);
190 int ore_create(struct ore_io_state *ios);
191 int ore_remove(struct ore_io_state *ios);
192 int ore_write(struct ore_io_state *ios);
193 int ore_read(struct ore_io_state *ios);
197 int extract_attr_from_ios(struct ore_io_state *ios, struct osd_attr *attr);
H A Dscsi.h32 * is totally arbitrary, a setting of 2048 will get you at least 8mb ios.
/linux-4.1.27/drivers/mmc/host/
H A Ddw_mmc-rockchip.c34 static void dw_mci_rk3288_set_ios(struct dw_mci *host, struct mmc_ios *ios) dw_mci_rk3288_set_ios() argument
40 if (ios->clock == 0) dw_mci_rk3288_set_ios()
47 * ios->clock = (div == 0) ? bus_hz : (bus_hz / (2 * div)) dw_mci_rk3288_set_ios()
53 if (ios->bus_width == MMC_BUS_WIDTH_8 && dw_mci_rk3288_set_ios()
54 ios->timing == MMC_TIMING_MMC_DDR52) dw_mci_rk3288_set_ios()
55 cclkin = 2 * ios->clock * RK3288_CLKGEN_DIV; dw_mci_rk3288_set_ios()
57 cclkin = ios->clock * RK3288_CLKGEN_DIV; dw_mci_rk3288_set_ios()
61 dev_warn(host->dev, "failed to set rate %uHz\n", ios->clock); dw_mci_rk3288_set_ios()
H A Ddw_mmc-k3.c21 static void dw_mci_k3_set_ios(struct dw_mci *host, struct mmc_ios *ios) dw_mci_k3_set_ios() argument
25 ret = clk_set_rate(host->ciu_clk, ios->clock); dw_mci_k3_set_ios()
27 dev_warn(host->dev, "failed to set rate %uHz\n", ios->clock); dw_mci_k3_set_ios()
H A Dbfin_sdh.c356 static void sdh_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) sdh_set_ios() argument
370 switch (ios->bus_width) { sdh_set_ios()
396 host->power_mode = ios->power_mode; sdh_set_ios()
398 if (ios->bus_mode == MMC_BUSMODE_OPENDRAIN) { sdh_set_ios()
405 if (ios->power_mode != MMC_POWER_OFF) sdh_set_ios()
413 if (ios->bus_mode == MMC_BUSMODE_OPENDRAIN) sdh_set_ios()
419 if (ios->power_mode != MMC_POWER_OFF) sdh_set_ios()
428 if (ios->power_mode == MMC_POWER_ON && ios->clock) { sdh_set_ios()
430 clk_div = (get_sclk() / ios->clock - 1) / 2; sdh_set_ios()
440 if (ios->power_mode == MMC_POWER_ON) sdh_set_ios()
453 ios->clock); sdh_set_ios()
H A Dmvsdio.c603 static void mvsd_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) mvsd_set_ios() argument
609 if (ios->power_mode == MMC_POWER_UP) mvsd_set_ios()
612 if (ios->clock == 0) { mvsd_set_ios()
617 } else if (ios->clock != host->clock) { mvsd_set_ios()
618 u32 m = DIV_ROUND_UP(host->base_clock, ios->clock) - 1; mvsd_set_ios()
622 host->clock = ios->clock; mvsd_set_ios()
625 ios->clock, host->base_clock / (m+1), m); mvsd_set_ios()
636 if (ios->bus_mode == MMC_BUSMODE_PUSHPULL) mvsd_set_ios()
639 if (ios->bus_width == MMC_BUS_WIDTH_4) mvsd_set_ios()
650 if (ios->timing == MMC_TIMING_MMC_HS || mvsd_set_ios()
651 ios->timing == MMC_TIMING_SD_HS) mvsd_set_ios()
665 if (ios->power_mode == MMC_POWER_OFF) mvsd_set_ios()
H A Dsdhci.c228 static void sdhci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios);
249 sdhci_set_ios(host->mmc, &host->mmc->ios); sdhci_init()
1497 static void sdhci_do_set_ios(struct sdhci_host *host, struct mmc_ios *ios) sdhci_do_set_ios() argument
1508 ios->power_mode == MMC_POWER_OFF) sdhci_do_set_ios()
1517 if (ios->power_mode == MMC_POWER_OFF) { sdhci_do_set_ios()
1523 (ios->power_mode == MMC_POWER_UP) && sdhci_do_set_ios()
1527 if (!ios->clock || ios->clock != host->clock) { sdhci_do_set_ios()
1528 host->ops->set_clock(host, ios->clock); sdhci_do_set_ios()
1529 host->clock = ios->clock; sdhci_do_set_ios()
1544 sdhci_set_power(host, ios->power_mode, ios->vdd); sdhci_do_set_ios()
1547 host->ops->platform_send_init_74_clocks(host, ios->power_mode); sdhci_do_set_ios()
1549 host->ops->set_bus_width(host, ios->bus_width); sdhci_do_set_ios()
1553 if ((ios->timing == MMC_TIMING_SD_HS || sdhci_do_set_ios()
1554 ios->timing == MMC_TIMING_MMC_HS) sdhci_do_set_ios()
1564 if ((ios->timing == MMC_TIMING_MMC_HS400) || sdhci_do_set_ios()
1565 (ios->timing == MMC_TIMING_MMC_HS200) || sdhci_do_set_ios()
1566 (ios->timing == MMC_TIMING_MMC_DDR52) || sdhci_do_set_ios()
1567 (ios->timing == MMC_TIMING_UHS_SDR50) || sdhci_do_set_ios()
1568 (ios->timing == MMC_TIMING_UHS_SDR104) || sdhci_do_set_ios()
1569 (ios->timing == MMC_TIMING_UHS_DDR50) || sdhci_do_set_ios()
1570 (ios->timing == MMC_TIMING_UHS_SDR25)) sdhci_do_set_ios()
1581 if (ios->drv_type == MMC_SET_DRIVER_TYPE_A) sdhci_do_set_ios()
1583 else if (ios->drv_type == MMC_SET_DRIVER_TYPE_C) sdhci_do_set_ios()
1611 host->ops->set_uhs_signaling(host, ios->timing); sdhci_do_set_ios()
1612 host->timing = ios->timing; sdhci_do_set_ios()
1615 ((ios->timing == MMC_TIMING_UHS_SDR12) || sdhci_do_set_ios()
1616 (ios->timing == MMC_TIMING_UHS_SDR25) || sdhci_do_set_ios()
1617 (ios->timing == MMC_TIMING_UHS_SDR50) || sdhci_do_set_ios()
1618 (ios->timing == MMC_TIMING_UHS_SDR104) || sdhci_do_set_ios()
1619 (ios->timing == MMC_TIMING_UHS_DDR50) || sdhci_do_set_ios()
1620 (ios->timing == MMC_TIMING_MMC_DDR52))) { sdhci_do_set_ios()
1625 ios->drv_type = (preset & SDHCI_PRESET_DRV_MASK) sdhci_do_set_ios()
1635 * Some (ENE) controllers go apeshit on some ios operation, sdhci_do_set_ios()
1637 * it on each ios seems to solve the problem. sdhci_do_set_ios()
1646 static void sdhci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) sdhci_set_ios() argument
1651 sdhci_do_set_ios(host, ios); sdhci_set_ios()
1781 struct mmc_ios *ios) sdhci_do_start_signal_voltage_switch()
1796 switch (ios->signal_voltage) { sdhci_do_start_signal_voltage_switch()
1872 struct mmc_ios *ios) sdhci_start_signal_voltage_switch()
1880 err = sdhci_do_start_signal_voltage_switch(host, ios); sdhci_start_signal_voltage_switch()
1898 static int sdhci_prepare_hs400_tuning(struct mmc_host *mmc, struct mmc_ios *ios) sdhci_prepare_hs400_tuning() argument
2017 if (mmc->ios.bus_width == MMC_BUS_WIDTH_8) sdhci_execute_tuning()
2020 else if (mmc->ios.bus_width == MMC_BUS_WIDTH_4) sdhci_execute_tuning()
2777 sdhci_do_set_ios(host, &host->mmc->ios); sdhci_resume_host()
2862 sdhci_do_start_signal_voltage_switch(host, &host->mmc->ios); sdhci_runtime_resume_host()
2863 sdhci_do_set_ios(host, &host->mmc->ios); sdhci_runtime_resume_host()
1780 sdhci_do_start_signal_voltage_switch(struct sdhci_host *host, struct mmc_ios *ios) sdhci_do_start_signal_voltage_switch() argument
1871 sdhci_start_signal_voltage_switch(struct mmc_host *mmc, struct mmc_ios *ios) sdhci_start_signal_voltage_switch() argument
H A Dtoshsd.c81 static void __toshsd_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) __toshsd_set_ios() argument
85 if (ios->clock) { __toshsd_set_ios()
89 while (ios->clock < HCLK / div) __toshsd_set_ios()
108 switch (ios->power_mode) { __toshsd_set_ios()
125 switch (ios->bus_width) { __toshsd_set_ios()
360 __toshsd_set_ios(host->mmc, &host->mmc->ios); toshsd_irq()
527 static void toshsd_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) toshsd_set_ios() argument
533 __toshsd_set_ios(mmc, ios); toshsd_set_ios()
H A Dpxamci.c468 static void pxamci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) pxamci_set_ios() argument
472 if (ios->clock) { pxamci_set_ios()
474 unsigned int clk = rate / ios->clock; pxamci_set_ios()
479 if (ios->clock == 26000000) { pxamci_set_ios()
492 if (rate / clk > ios->clock) pxamci_set_ios()
508 if (host->power_mode != ios->power_mode) { pxamci_set_ios()
511 host->power_mode = ios->power_mode; pxamci_set_ios()
513 ret = pxamci_set_power(host, ios->power_mode, ios->vdd); pxamci_set_ios()
525 if (ios->power_mode == MMC_POWER_ON) pxamci_set_ios()
529 if (ios->bus_width == MMC_BUS_WIDTH_4) pxamci_set_ios()
H A Dmmci.c361 if (host->mmc->ios.bus_width == MMC_BUS_WIDTH_4) mmci_set_clkreg()
363 if (host->mmc->ios.bus_width == MMC_BUS_WIDTH_8) mmci_set_clkreg()
366 if (host->mmc->ios.timing == MMC_TIMING_UHS_DDR50 || mmci_set_clkreg()
367 host->mmc->ios.timing == MMC_TIMING_MMC_DDR52) mmci_set_clkreg()
840 if (host->mmc->ios.timing == MMC_TIMING_UHS_DDR50 || mmci_start_data()
841 host->mmc->ios.timing == MMC_TIMING_MMC_DDR52) mmci_start_data()
1313 static void mmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) mmci_set_ios() argument
1324 host->plat->ios_handler(mmc_dev(mmc), ios)) mmci_set_ios()
1327 switch (ios->power_mode) { mmci_set_ios()
1340 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, ios->vdd); mmci_set_ios()
1364 if (variant->signal_direction && ios->power_mode != MMC_POWER_OFF) { mmci_set_ios()
1372 if (ios->bus_width == MMC_BUS_WIDTH_4) mmci_set_ios()
1374 else if (ios->bus_width == MMC_BUS_WIDTH_1) mmci_set_ios()
1380 if (ios->bus_mode == MMC_BUSMODE_OPENDRAIN) { mmci_set_ios()
1396 if (!ios->clock && variant->pwrreg_clkgate) mmci_set_ios()
1400 ios->clock != host->clock_cache) { mmci_set_ios()
1401 ret = clk_set_rate(host->clk, ios->clock); mmci_set_ios()
1408 host->clock_cache = ios->clock; mmci_set_ios()
1412 mmci_set_clkreg(host, ios->clock); mmci_set_ios()
1437 static int mmci_sig_volt_switch(struct mmc_host *mmc, struct mmc_ios *ios) mmci_sig_volt_switch() argument
1445 switch (ios->signal_voltage) { mmci_sig_volt_switch()
H A Domap.c1125 static int mmc_omap_calc_divisor(struct mmc_host *mmc, struct mmc_ios *ios) mmc_omap_calc_divisor() argument
1132 if (ios->clock == 0) mmc_omap_calc_divisor()
1135 dsor = func_clk_rate / ios->clock; mmc_omap_calc_divisor()
1139 if (func_clk_rate / dsor > ios->clock) mmc_omap_calc_divisor()
1147 if (ios->bus_width == MMC_BUS_WIDTH_4) mmc_omap_calc_divisor()
1153 static void mmc_omap_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) mmc_omap_set_ios() argument
1162 dsor = mmc_omap_calc_divisor(mmc, ios); mmc_omap_set_ios()
1164 if (ios->vdd != slot->vdd) mmc_omap_set_ios()
1165 slot->vdd = ios->vdd; mmc_omap_set_ios()
1168 switch (ios->power_mode) { mmc_omap_set_ios()
1170 mmc_omap_set_power(slot, 0, ios->vdd); mmc_omap_set_ios()
1174 mmc_omap_set_power(slot, 1, ios->vdd); mmc_omap_set_ios()
1183 if (slot->bus_mode != ios->bus_mode) { mmc_omap_set_ios()
1186 ios->bus_mode); mmc_omap_set_ios()
1187 slot->bus_mode = ios->bus_mode; mmc_omap_set_ios()
1197 if (ios->power_mode == MMC_POWER_ON) { mmc_omap_set_ios()
H A Dmoxart-mmc.c493 static void moxart_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) moxart_set_ios() argument
502 if (ios->clock) { moxart_set_ios()
504 if (ios->clock >= host->sysclk / (2 * (div + 1))) moxart_set_ios()
514 if (ios->power_mode == MMC_POWER_OFF) { moxart_set_ios()
518 if (ios->vdd < MIN_POWER) moxart_set_ios()
521 power = ios->vdd - MIN_POWER; moxart_set_ios()
527 switch (ios->bus_width) { moxart_set_ios()
H A Domap_hsmmc.c513 static u16 calc_divisor(struct omap_hsmmc_host *host, struct mmc_ios *ios) calc_divisor() argument
517 if (ios->clock) { calc_divisor()
518 dsor = DIV_ROUND_UP(clk_get_rate(host->fclk), ios->clock); calc_divisor()
528 struct mmc_ios *ios = &host->mmc->ios; omap_hsmmc_set_clock() local
533 dev_vdbg(mmc_dev(host->mmc), "Set clock to %uHz\n", ios->clock); omap_hsmmc_set_clock()
539 clkdiv = calc_divisor(host, ios); omap_hsmmc_set_clock()
561 (ios->timing != MMC_TIMING_MMC_DDR52) && omap_hsmmc_set_clock()
562 (ios->timing != MMC_TIMING_UHS_DDR50) && omap_hsmmc_set_clock()
578 struct mmc_ios *ios = &host->mmc->ios; omap_hsmmc_set_bus_width() local
582 if (ios->timing == MMC_TIMING_MMC_DDR52 || omap_hsmmc_set_bus_width()
583 ios->timing == MMC_TIMING_UHS_DDR50) omap_hsmmc_set_bus_width()
587 switch (ios->bus_width) { omap_hsmmc_set_bus_width()
606 struct mmc_ios *ios = &host->mmc->ios; omap_hsmmc_set_bus_mode() local
610 if (ios->bus_mode == MMC_BUSMODE_OPENDRAIN) omap_hsmmc_set_bus_mode()
624 struct mmc_ios *ios = &host->mmc->ios; omap_hsmmc_context_restore() local
638 (1 << ios->vdd) <= MMC_VDD_23_24) omap_hsmmc_context_restore()
1560 static void omap_hsmmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) omap_hsmmc_set_ios() argument
1567 if (ios->power_mode != host->power_mode) { omap_hsmmc_set_ios()
1568 switch (ios->power_mode) { omap_hsmmc_set_ios()
1573 mmc_pdata(host)->set_power(host->dev, 1, ios->vdd); omap_hsmmc_set_ios()
1579 host->power_mode = ios->power_mode; omap_hsmmc_set_ios()
1582 /* FIXME: set registers based only on changes to ios */ omap_hsmmc_set_ios()
1591 (ios->vdd == DUAL_VOLT_OCR_BIT)) { omap_hsmmc_set_ios()
1598 if (omap_hsmmc_switch_opcond(host, ios->vdd) != 0) omap_hsmmc_set_ios()
H A Dusdhi6rol0.c719 static void usdhi6_clk_set(struct usdhi6_host *host, struct mmc_ios *ios) usdhi6_clk_set() argument
721 unsigned long rate = ios->clock; usdhi6_clk_set()
742 if (ios->timing != MMC_TIMING_UHS_DDR50) { usdhi6_clk_set()
786 static void usdhi6_set_power(struct usdhi6_host *host, struct mmc_ios *ios) usdhi6_set_power() argument
793 ios->power_mode ? ios->vdd : 0); usdhi6_set_power()
810 static void usdhi6_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) usdhi6_set_ios() argument
817 ios->clock, ios->vdd, ios->power_mode, ios->bus_width, ios->timing); usdhi6_set_ios()
819 switch (ios->power_mode) { usdhi6_set_ios()
821 usdhi6_set_power(host, ios); usdhi6_set_ios()
833 usdhi6_set_power(host, ios); usdhi6_set_ios()
844 if (ios->bus_width == MMC_BUS_WIDTH_1) { usdhi6_set_ios()
845 if (ios->timing == MMC_TIMING_UHS_DDR50) usdhi6_set_ios()
852 mode = ios->timing == MMC_TIMING_UHS_DDR50; usdhi6_set_ios()
859 if (host->rate != ios->clock) usdhi6_set_ios()
860 usdhi6_clk_set(host, ios); usdhi6_set_ios()
H A Drtsx_pci_sdmmc.c1050 static void sdmmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) sdmmc_set_ios() argument
1065 sd_set_bus_width(host, ios->bus_width); sdmmc_set_ios()
1066 sd_set_power_mode(host, ios->power_mode); sdmmc_set_ios()
1067 sd_set_timing(host, ios->timing); sdmmc_set_ios()
1072 switch (ios->timing) { sdmmc_set_ios()
1089 host->initial_mode = (ios->clock <= 1000000) ? true : false; sdmmc_set_ios()
1091 host->clock = ios->clock; sdmmc_set_ios()
1092 rtsx_pci_switch_clock(pcr, ios->clock, host->ssc_depth, sdmmc_set_ios()
1221 static int sdmmc_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios) sdmmc_switch_voltage() argument
1229 __func__, ios->signal_voltage); sdmmc_switch_voltage()
1242 if (ios->signal_voltage == MMC_SIGNAL_VOLTAGE_330) sdmmc_switch_voltage()
1291 switch (mmc->ios.timing) { sdmmc_execute_tuning()
1312 if ((mmc->ios.timing == MMC_TIMING_UHS_SDR104) || sdmmc_execute_tuning()
1313 (mmc->ios.timing == MMC_TIMING_UHS_SDR50)) sdmmc_execute_tuning()
1315 else if (mmc->ios.timing == MMC_TIMING_UHS_DDR50) sdmmc_execute_tuning()
H A Dtifm_sd.c797 static void tifm_sd_ios(struct mmc_host *mmc, struct mmc_ios *ios) tifm_sd_ios() argument
806 dev_dbg(&sock->dev, "ios: clock = %u, vdd = %x, bus_mode = %x, " tifm_sd_ios()
808 ios->clock, ios->vdd, ios->bus_mode, ios->chip_select, tifm_sd_ios()
809 ios->power_mode, ios->bus_width); tifm_sd_ios()
811 if (ios->bus_width == MMC_BUS_WIDTH_4) { tifm_sd_ios()
820 if (ios->clock) { tifm_sd_ios()
821 clk_div1 = 20000000 / ios->clock; tifm_sd_ios()
825 clk_div2 = 24000000 / ios->clock; tifm_sd_ios()
829 if ((20000000 / clk_div1) > ios->clock) tifm_sd_ios()
831 if ((24000000 / clk_div2) > ios->clock) tifm_sd_ios()
855 host->open_drain = (ios->bus_mode == MMC_BUSMODE_OPENDRAIN); tifm_sd_ios()
H A Ddavinci_mmc.c683 static void calculate_clk_divider(struct mmc_host *mmc, struct mmc_ios *ios) calculate_clk_divider() argument
689 if (ios->bus_mode == MMC_BUSMODE_OPENDRAIN) { calculate_clk_divider()
709 mmc_push_pull_freq = calculate_freq_for_card(host, ios->clock); calculate_clk_divider()
729 static void mmc_davinci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) mmc_davinci_set_ios() argument
737 ios->clock, ios->bus_mode, ios->power_mode, mmc_davinci_set_ios()
738 ios->vdd); mmc_davinci_set_ios()
740 switch (ios->power_mode) { mmc_davinci_set_ios()
751 switch (ios->bus_width) { mmc_davinci_set_ios()
782 calculate_clk_divider(mmc, ios); mmc_davinci_set_ios()
784 host->bus_mode = ios->bus_mode; mmc_davinci_set_ios()
785 if (ios->power_mode == MMC_POWER_UP) { mmc_davinci_set_ios()
1120 calculate_clk_divider(mmc, &mmc->ios); mmc_davinci_cpufreq_transition()
H A Ds3cmci.c1210 static void s3cmci_set_clk(struct s3cmci_host *host, struct mmc_ios *ios) s3cmci_set_clk() argument
1218 if (host->real_rate <= ios->clock) s3cmci_set_clk()
1229 if (ios->clock == 0) s3cmci_set_clk()
1233 static void s3cmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) s3cmci_set_ios() argument
1242 switch (ios->power_mode) { s3cmci_set_ios()
1250 host->pdata->set_power(ios->power_mode, ios->vdd); s3cmci_set_ios()
1265 host->pdata->set_power(ios->power_mode, ios->vdd); s3cmci_set_ios()
1270 s3cmci_set_clk(host, ios); s3cmci_set_ios()
1273 if (ios->clock) s3cmci_set_ios()
1280 if ((ios->power_mode == MMC_POWER_ON) || s3cmci_set_ios()
1281 (ios->power_mode == MMC_POWER_UP)) { s3cmci_set_ios()
1283 host->real_rate/1000, ios->clock/1000); s3cmci_set_ios()
1288 host->bus_width = ios->bus_width; s3cmci_set_ios()
1389 if (mmc->ios.power_mode != MMC_POWER_OFF && s3cmci_cpufreq_transition()
1390 mmc->ios.clock != 0) s3cmci_cpufreq_transition()
1391 s3cmci_set_clk(host, &mmc->ios); s3cmci_cpufreq_transition()
H A Ddw_mmc-exynos.c283 static void dw_mci_exynos_set_ios(struct dw_mci *host, struct mmc_ios *ios) dw_mci_exynos_set_ios() argument
286 unsigned int wanted = ios->clock; dw_mci_exynos_set_ios()
287 u32 timing = ios->timing, clksel; dw_mci_exynos_set_ios()
299 if (ios->bus_width == MMC_BUS_WIDTH_8) dw_mci_exynos_set_ios()
481 struct mmc_ios *ios) dw_mci_exynos_prepare_hs400_tuning()
486 dw_mci_exynos_adjust_clock(host, (ios->clock) << 1); dw_mci_exynos_prepare_hs400_tuning()
480 dw_mci_exynos_prepare_hs400_tuning(struct dw_mci *host, struct mmc_ios *ios) dw_mci_exynos_prepare_hs400_tuning() argument
H A Dtmio_mmc_pio.c763 if (host->mmc->ios.bus_width == MMC_BUS_WIDTH_4) { tmio_mmc_start_data()
917 static void tmio_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) tmio_mmc_set_ios() argument
933 ios->clock, ios->power_mode); tmio_mmc_set_ios()
951 switch (ios->power_mode) { tmio_mmc_set_ios()
957 tmio_mmc_set_clock(host, ios->clock); tmio_mmc_set_ios()
958 tmio_mmc_power_on(host, ios->vdd); tmio_mmc_set_ios()
960 tmio_mmc_set_bus_width(host, ios->bus_width); tmio_mmc_set_ios()
963 tmio_mmc_set_clock(host, ios->clock); tmio_mmc_set_ios()
965 tmio_mmc_set_bus_width(host, ios->bus_width); tmio_mmc_set_ios()
975 ios->clock, ios->power_mode); tmio_mmc_set_ios()
978 host->clk_cache = ios->clock; tmio_mmc_set_ios()
H A Dvia-sdmmc.c719 static void via_sdc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) via_sdc_set_ios() argument
735 if (ios->bus_width == MMC_BUS_WIDTH_1) via_sdc_set_ios()
740 if (ios->power_mode == MMC_POWER_OFF) via_sdc_set_ios()
745 if (ios->timing == MMC_TIMING_SD_HS) via_sdc_set_ios()
753 if (ios->clock >= 48000000) via_sdc_set_ios()
755 else if (ios->clock >= 33000000) via_sdc_set_ios()
757 else if (ios->clock >= 24000000) via_sdc_set_ios()
759 else if (ios->clock >= 16000000) via_sdc_set_ios()
761 else if (ios->clock >= 12000000) via_sdc_set_ios()
763 else if (ios->clock >= 8000000) via_sdc_set_ios()
775 if (ios->power_mode != MMC_POWER_OFF) via_sdc_set_ios()
776 via_sdc_set_power(host, ios->vdd, 1); via_sdc_set_ios()
778 via_sdc_set_power(host, ios->vdd, 0); via_sdc_set_ios()
H A Dsunxi-mmc.c629 struct mmc_ios *ios) sunxi_mmc_clk_set_rate()
634 rate = clk_round_rate(host->clk_mmc, ios->clock); sunxi_mmc_clk_set_rate()
636 ios->clock, rate); sunxi_mmc_clk_set_rate()
663 if (ios->timing == MMC_TIMING_UHS_DDR50) { sunxi_mmc_clk_set_rate()
686 static void sunxi_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) sunxi_mmc_set_ios() argument
692 switch (ios->power_mode) { sunxi_mmc_set_ios()
697 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, ios->vdd); sunxi_mmc_set_ios()
714 switch (ios->bus_width) { sunxi_mmc_set_ios()
728 if (ios->timing == MMC_TIMING_UHS_DDR50) sunxi_mmc_set_ios()
735 if (ios->clock && ios->power_mode) { sunxi_mmc_set_ios()
736 host->ferror = sunxi_mmc_clk_set_rate(host, ios); sunxi_mmc_set_ios()
628 sunxi_mmc_clk_set_rate(struct sunxi_mmc_host *host, struct mmc_ios *ios) sunxi_mmc_clk_set_rate() argument
H A Dsh_mmcif.c988 static void sh_mmcif_set_power(struct sh_mmcif_host *host, struct mmc_ios *ios) sh_mmcif_set_power() argument
995 ios->power_mode ? ios->vdd : 0); sh_mmcif_set_power()
998 static void sh_mmcif_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) sh_mmcif_set_ios() argument
1013 if (ios->power_mode == MMC_POWER_UP) { sh_mmcif_set_ios()
1019 sh_mmcif_set_power(host, ios); sh_mmcif_set_ios()
1020 } else if (ios->power_mode == MMC_POWER_OFF || !ios->clock) { sh_mmcif_set_ios()
1023 if (ios->power_mode == MMC_POWER_OFF) { sh_mmcif_set_ios()
1033 if (ios->power_mode == MMC_POWER_OFF) sh_mmcif_set_ios()
1034 sh_mmcif_set_power(host, ios); sh_mmcif_set_ios()
1040 if (ios->clock) { sh_mmcif_set_ios()
1047 sh_mmcif_clock_control(host, ios->clock); sh_mmcif_set_ios()
1050 host->timing = ios->timing; sh_mmcif_set_ios()
1051 host->bus_width = ios->bus_width; sh_mmcif_set_ios()
H A Dushc.c375 static void ushc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) ushc_set_ios() argument
379 ushc_set_power(ushc, ios->power_mode); ushc_set_ios()
380 ushc_set_bus_width(ushc, 1 << ios->bus_width); ushc_set_ios()
381 ushc_set_bus_freq(ushc, ios->clock, ios->timing == MMC_TIMING_SD_HS); ushc_set_ios()
H A Drtsx_usb_sdmmc.c1133 static void sdmmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) sdmmc_set_ios() argument
1146 sd_set_power_mode(host, ios->power_mode); sdmmc_set_ios()
1147 sd_set_bus_width(host, ios->bus_width); sdmmc_set_ios()
1148 sd_set_timing(host, ios->timing, &host->ddr_mode); sdmmc_set_ios()
1153 switch (ios->timing) { sdmmc_set_ios()
1169 host->initial_mode = (ios->clock <= 1000000) ? true : false; sdmmc_set_ios()
1170 host->clock = ios->clock; sdmmc_set_ios()
1179 static int sdmmc_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios) sdmmc_switch_voltage() argument
1186 __func__, ios->signal_voltage); sdmmc_switch_voltage()
1191 if (ios->signal_voltage == MMC_SIGNAL_VOLTAGE_120) sdmmc_switch_voltage()
1207 if (ios->signal_voltage == MMC_SIGNAL_VOLTAGE_330) { sdmmc_switch_voltage()
H A Dmxcmmc.c849 static void mxcmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) mxcmci_set_ios() argument
858 if (ios->bus_width == MMC_BUS_WIDTH_4) mxcmci_set_ios()
875 if (ios->bus_width == MMC_BUS_WIDTH_4) mxcmci_set_ios()
880 if (host->power_mode != ios->power_mode) { mxcmci_set_ios()
881 host->power_mode = ios->power_mode; mxcmci_set_ios()
882 mxcmci_set_power(host, ios->vdd); mxcmci_set_ios()
884 if (ios->power_mode == MMC_POWER_ON) mxcmci_set_ios()
888 if (ios->clock) { mxcmci_set_ios()
889 mxcmci_set_clk_rate(host, ios->clock); mxcmci_set_ios()
895 host->clock = ios->clock; mxcmci_set_ios()
H A Dmmc_spi.c1181 static void mmc_spi_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) mmc_spi_set_ios() argument
1185 if (host->power_mode != ios->power_mode) { mmc_spi_set_ios()
1191 mmc_powerstring(ios->power_mode), mmc_spi_set_ios()
1192 ios->vdd, mmc_spi_set_ios()
1199 switch (ios->power_mode) { mmc_spi_set_ios()
1203 ios->vdd); mmc_spi_set_ios()
1204 if (ios->power_mode == MMC_POWER_UP) mmc_spi_set_ios()
1210 if (ios->power_mode == MMC_POWER_ON) mmc_spi_set_ios()
1222 if (canpower && ios->power_mode == MMC_POWER_OFF) { mmc_spi_set_ios()
1256 host->power_mode = ios->power_mode; mmc_spi_set_ios()
1259 if (host->spi->max_speed_hz != ios->clock && ios->clock != 0) { mmc_spi_set_ios()
1262 host->spi->max_speed_hz = ios->clock; mmc_spi_set_ios()
H A Dwmt-sdmmc.c673 static void wmt_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) wmt_mci_set_ios() argument
680 if (ios->power_mode == MMC_POWER_UP) { wmt_mci_set_ios()
685 if (ios->power_mode == MMC_POWER_OFF) wmt_mci_set_ios()
688 if (ios->clock != 0) wmt_mci_set_ios()
689 clk_set_rate(priv->clk_sdmmc, ios->clock); wmt_mci_set_ios()
697 switch (ios->bus_width) { wmt_mci_set_ios()
H A Dsdhci-msm.c352 struct mmc_ios ios = host->mmc->ios; sdhci_msm_execute_tuning() local
359 !((ios.timing == MMC_TIMING_MMC_HS200) || sdhci_msm_execute_tuning()
360 (ios.timing == MMC_TIMING_UHS_SDR104))) sdhci_msm_execute_tuning()
H A Dsdricoh_cs.c355 static void sdricoh_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) sdricoh_set_ios() argument
360 if (ios->power_mode == MMC_POWER_ON) { sdricoh_set_ios()
363 if (ios->bus_width == MMC_BUS_WIDTH_4) { sdricoh_set_ios()
370 } else if (ios->power_mode == MMC_POWER_UP) { sdricoh_set_ios()
H A Dau1xmmc.c754 static void au1xmmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) au1xmmc_set_ios() argument
759 if (ios->power_mode == MMC_POWER_OFF) au1xmmc_set_ios()
761 else if (ios->power_mode == MMC_POWER_ON) { au1xmmc_set_ios()
765 if (ios->clock && ios->clock != host->clock) { au1xmmc_set_ios()
766 au1xmmc_set_clock(host, ios->clock); au1xmmc_set_ios()
767 host->clock = ios->clock; au1xmmc_set_ios()
771 switch (ios->bus_width) { au1xmmc_set_ios()
H A Dcb710-mmc.c561 static void cb710_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) cb710_mmc_set_ios() argument
567 cb710_mmc_select_clock_divider(mmc, ios->clock); cb710_mmc_set_ios()
569 if (ios->power_mode != reader->last_power_mode) cb710_mmc_set_ios()
570 switch (ios->power_mode) { cb710_mmc_set_ios()
595 cb710_mmc_enable_4bit_data(slot, ios->bus_width != MMC_BUS_WIDTH_1); cb710_mmc_set_ios()
H A Dmxs-mmc.c499 static void mxs_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) mxs_mmc_set_ios() argument
503 if (ios->bus_width == MMC_BUS_WIDTH_8) mxs_mmc_set_ios()
505 else if (ios->bus_width == MMC_BUS_WIDTH_4) mxs_mmc_set_ios()
510 if (ios->clock) mxs_mmc_set_ios()
511 mxs_ssp_set_clk_rate(&host->ssp, ios->clock); mxs_mmc_set_ios()
H A Dwbsd.c850 static void wbsd_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) wbsd_set_ios() argument
861 if (ios->power_mode == MMC_POWER_OFF) wbsd_set_ios()
864 if (ios->clock >= 24000000) wbsd_set_ios()
866 else if (ios->clock >= 16000000) wbsd_set_ios()
868 else if (ios->clock >= 12000000) wbsd_set_ios()
885 if (ios->power_mode != MMC_POWER_OFF) { wbsd_set_ios()
897 if (ios->chip_select == MMC_CS_HIGH) { wbsd_set_ios()
898 BUG_ON(ios->bus_width != MMC_BUS_WIDTH_1); wbsd_set_ios()
918 host->bus_width = ios->bus_width; wbsd_set_ios()
H A Ddw_mmc.c1150 static void dw_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) dw_mci_set_ios() argument
1157 switch (ios->bus_width) { dw_mci_set_ios()
1172 if (ios->timing == MMC_TIMING_MMC_DDR52 || dw_mci_set_ios()
1173 ios->timing == MMC_TIMING_MMC_HS400) dw_mci_set_ios()
1179 slot->host->timing = ios->timing; dw_mci_set_ios()
1182 * Use mirror of ios->clock to prevent race with mmc dw_mci_set_ios()
1183 * core ios update when finding the minimum. dw_mci_set_ios()
1185 slot->clock = ios->clock; dw_mci_set_ios()
1188 drv_data->set_ios(slot->host, ios); dw_mci_set_ios()
1190 switch (ios->power_mode) { dw_mci_set_ios()
1194 ios->vdd); dw_mci_set_ios()
1250 if (slot->host->state == STATE_WAITING_CMD11_DONE && ios->clock != 0) dw_mci_set_ios()
1268 static int dw_mci_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios) dw_mci_switch_voltage() argument
1283 if (ios->signal_voltage == MMC_SIGNAL_VOLTAGE_330) { dw_mci_switch_voltage()
1426 static int dw_mci_prepare_hs400_tuning(struct mmc_host *mmc, struct mmc_ios *ios) dw_mci_prepare_hs400_tuning() argument
1433 return drv_data->prepare_hs400_tuning(host, ios); dw_mci_prepare_hs400_tuning()
3046 dw_mci_set_ios(slot->mmc, &slot->mmc->ios); dw_mci_resume()
H A Dvub300.c1972 struct mmc_ios *ios) __set_clock_speed()
1977 if (ios->clock >= 48000000) __set_clock_speed()
1979 else if (ios->clock >= 24000000) __set_clock_speed()
1981 else if (ios->clock >= 20000000) __set_clock_speed()
1983 else if (ios->clock >= 15000000) __set_clock_speed()
1985 else if (ios->clock >= 200000) __set_clock_speed()
2011 static void vub300_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) vub300_mmc_set_ios() argument
2018 if ((ios->power_mode == MMC_POWER_OFF) && vub300->card_powered) { vub300_mmc_set_ios()
2026 } else if ((ios->power_mode == MMC_POWER_UP) && !vub300->card_powered) { vub300_mmc_set_ios()
2033 } else if (ios->power_mode == MMC_POWER_ON) { vub300_mmc_set_ios()
2036 __set_clock_speed(vub300, buf, ios); vub300_mmc_set_ios()
1971 __set_clock_speed(struct vub300_mmc_host *vub300, u8 buf[8], struct mmc_ios *ios) __set_clock_speed() argument
H A Ddw_mmc.h285 void (*set_ios)(struct dw_mci *host, struct mmc_ios *ios);
289 struct mmc_ios *ios);
H A Djz4740_mmc.c859 static void jz4740_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) jz4740_mmc_set_ios() argument
862 if (ios->clock) jz4740_mmc_set_ios()
863 jz4740_mmc_set_clock_rate(host, ios->clock); jz4740_mmc_set_ios()
865 switch (ios->power_mode) { jz4740_mmc_set_ios()
884 switch (ios->bus_width) { jz4740_mmc_set_ios()
H A Dandroid-goldfish.c432 static void goldfish_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) goldfish_mmc_set_ios() argument
436 host->bus_mode = ios->bus_mode; goldfish_mmc_set_ios()
H A Datmel-mci.c686 if (mmc->ios.bus_mode == MMC_BUSMODE_OPENDRAIN) atmci_prepare_command()
1287 static void atmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) atmci_set_ios() argument
1296 switch (ios->bus_width) { atmci_set_ios()
1305 if (ios->clock) { atmci_set_ios()
1318 * Use mirror of ios->clock to prevent race with mmc atmci_set_ios()
1319 * core ios update when finding the minimum. atmci_set_ios()
1321 slot->clock = ios->clock; atmci_set_ios()
1365 if (ios->timing == MMC_TIMING_SD_HS) atmci_set_ios()
1401 switch (ios->power_mode) { atmci_set_ios()
1409 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, ios->vdd); atmci_set_ios()
H A Dsdhci-pxav3.c214 "ios->power_mode = %d\n", pxav3_gen_init_74_clocks()
H A Dsdhci.h332 /* Controller has flaky internal state so reset it on each ios change */
/linux-4.1.27/drivers/staging/lustre/lustre/llite/
H A Dvvp_io.c105 const struct cl_io_slice *ios) vvp_io_fault_iter_init()
107 struct vvp_io *vio = cl2vvp_io(env, ios); vvp_io_fault_iter_init()
108 struct inode *inode = ccc_object_inode(ios->cis_obj); vvp_io_fault_iter_init()
111 file_inode(cl2ccc_io(env, ios)->cui_fd->fd_file)); vvp_io_fault_iter_init()
116 static void vvp_io_fini(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_fini() argument
118 struct cl_io *io = ios->cis_io; vvp_io_fini()
120 struct ccc_io *cio = cl2ccc_io(env, ios); vvp_io_fini()
178 const struct cl_io_slice *ios) vvp_io_fault_fini()
180 struct cl_io *io = ios->cis_io; vvp_io_fault_fini()
190 vvp_io_fini(env, ios); vvp_io_fault_fini()
308 const struct cl_io_slice *ios) vvp_io_read_lock()
310 struct cl_io *io = ios->cis_io; vvp_io_read_lock()
321 const struct cl_io_slice *ios) vvp_io_fault_lock()
323 struct cl_io *io = ios->cis_io; vvp_io_fault_lock()
324 struct vvp_io *vio = cl2vvp_io(env, ios); vvp_io_fault_lock()
334 const struct cl_io_slice *ios) vvp_io_write_lock()
336 struct cl_io *io = ios->cis_io; vvp_io_write_lock()
351 const struct cl_io_slice *ios) vvp_io_setattr_iter_init()
362 const struct cl_io_slice *ios) vvp_io_setattr_lock()
365 struct cl_io *io = ios->cis_io; vvp_io_setattr_lock()
404 const struct cl_io_slice *ios, vvp_io_setattr_trunc()
412 const struct cl_io_slice *ios) vvp_io_setattr_time()
414 struct cl_io *io = ios->cis_io; vvp_io_setattr_time()
437 const struct cl_io_slice *ios) vvp_io_setattr_start()
439 struct cl_io *io = ios->cis_io; vvp_io_setattr_start()
445 result = vvp_io_setattr_trunc(env, ios, inode, vvp_io_setattr_start()
448 result = vvp_io_setattr_time(env, ios); vvp_io_setattr_start()
453 const struct cl_io_slice *ios) vvp_io_setattr_end()
455 struct cl_io *io = ios->cis_io; vvp_io_setattr_end()
468 const struct cl_io_slice *ios) vvp_io_setattr_fini()
470 vvp_io_fini(env, ios); vvp_io_setattr_fini()
474 const struct cl_io_slice *ios) vvp_io_read_start()
476 struct vvp_io *vio = cl2vvp_io(env, ios); vvp_io_read_start()
477 struct ccc_io *cio = cl2ccc_io(env, ios); vvp_io_read_start()
478 struct cl_io *io = ios->cis_io; vvp_io_read_start()
554 static void vvp_io_read_fini(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_read_fini() argument
556 struct vvp_io *vio = cl2vvp_io(env, ios); vvp_io_read_fini()
557 struct ccc_io *cio = cl2ccc_io(env, ios); vvp_io_read_fini()
562 vvp_io_fini(env, ios); vvp_io_read_fini()
566 const struct cl_io_slice *ios) vvp_io_write_start()
568 struct ccc_io *cio = cl2ccc_io(env, ios); vvp_io_write_start()
569 struct cl_io *io = ios->cis_io; vvp_io_write_start()
649 const struct cl_io_slice *ios) vvp_io_fault_start()
651 struct vvp_io *vio = cl2vvp_io(env, ios); vvp_io_fault_start()
652 struct cl_io *io = ios->cis_io; vvp_io_fault_start()
806 const struct cl_io_slice *ios) vvp_io_fsync_start()
815 const struct cl_io_slice *ios, vvp_io_read_page()
818 struct cl_io *io = ios->cis_io; vvp_io_read_page()
824 struct ll_file_data *fd = cl2ccc_io(env, ios)->cui_fd; vvp_io_read_page()
936 const struct cl_io_slice *ios, vvp_io_prepare_write()
962 result = vvp_io_prepare_partial(env, ios->cis_io, obj, vvp_io_prepare_write()
970 const struct cl_io_slice *ios, vvp_io_commit_write()
975 struct cl_io *io = ios->cis_io; vvp_io_commit_write()
104 vvp_io_fault_iter_init(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_fault_iter_init() argument
177 vvp_io_fault_fini(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_fault_fini() argument
307 vvp_io_read_lock(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_read_lock() argument
320 vvp_io_fault_lock(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_fault_lock() argument
333 vvp_io_write_lock(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_write_lock() argument
350 vvp_io_setattr_iter_init(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_setattr_iter_init() argument
361 vvp_io_setattr_lock(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_setattr_lock() argument
403 vvp_io_setattr_trunc(const struct lu_env *env, const struct cl_io_slice *ios, struct inode *inode, loff_t size) vvp_io_setattr_trunc() argument
411 vvp_io_setattr_time(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_setattr_time() argument
436 vvp_io_setattr_start(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_setattr_start() argument
452 vvp_io_setattr_end(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_setattr_end() argument
467 vvp_io_setattr_fini(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_setattr_fini() argument
473 vvp_io_read_start(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_read_start() argument
565 vvp_io_write_start(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_write_start() argument
648 vvp_io_fault_start(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_fault_start() argument
805 vvp_io_fsync_start(const struct lu_env *env, const struct cl_io_slice *ios) vvp_io_fsync_start() argument
814 vvp_io_read_page(const struct lu_env *env, const struct cl_io_slice *ios, const struct cl_page_slice *slice) vvp_io_read_page() argument
935 vvp_io_prepare_write(const struct lu_env *env, const struct cl_io_slice *ios, const struct cl_page_slice *slice, unsigned from, unsigned to) vvp_io_prepare_write() argument
969 vvp_io_commit_write(const struct lu_env *env, const struct cl_io_slice *ios, const struct cl_page_slice *slice, unsigned from, unsigned to) vvp_io_commit_write() argument
/linux-4.1.27/fs/nfs/objlayout/
H A Dobjio_osd.c82 struct ore_io_state *ios; member in struct:objio_state
300 struct ore_io_state *ios; objio_alloc_io_state() local
315 offset, count, &ios); objio_alloc_io_state()
321 ios->pages = pages; objio_alloc_io_state()
322 ios->pgbase = pgbase; objio_alloc_io_state()
323 ios->private = aos; objio_alloc_io_state()
324 BUG_ON(ios->nr_pages > (pgbase + count + PAGE_SIZE - 1) >> PAGE_SHIFT); objio_alloc_io_state()
327 aos->objios.ios = ios; objio_alloc_io_state()
336 ore_put_io_state(objios->ios); objio_free_result()
370 static void __on_dev_error(struct ore_io_state *ios, __on_dev_error() argument
374 struct objio_state *objios = ios->private; __on_dev_error()
383 pooid.oid_partition_id = ios->oc->comps[comp].obj.partition; __on_dev_error()
384 pooid.oid_object_id = ios->oc->comps[comp].obj.id; __on_dev_error()
388 dev_offset, dev_len, !ios->reading); __on_dev_error()
394 static void _read_done(struct ore_io_state *ios, void *private) _read_done() argument
398 int ret = ore_check_io(ios, &__on_dev_error); _read_done()
400 /* FIXME: _io_free(ios) can we dealocate the libosd resources; */ _read_done()
403 status = ios->length; _read_done()
422 objios->ios->done = _read_done; objio_read_pagelist()
425 ret = ore_read(objios->ios); objio_read_pagelist()
434 static void _write_done(struct ore_io_state *ios, void *private) _write_done() argument
438 int ret = ore_check_io(ios, &__on_dev_error); _write_done()
440 /* FIXME: _io_free(ios) can we dealocate the libosd resources; */ _write_done()
446 status = ios->length; _write_done()
514 objios->ios->r4w = &_r4w_op; objio_write_pagelist()
517 objios->ios->done = _write_done; objio_write_pagelist()
521 ret = ore_write(objios->ios); objio_write_pagelist()
528 _write_done(objios->ios, objios); objio_write_pagelist()
/linux-4.1.27/drivers/staging/lustre/lustre/lov/
H A Dlov_io.c353 static void lov_io_fini(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_fini() argument
355 struct lov_io *lio = cl2lov_io(env, ios); lov_io_fini()
356 struct lov_object *lov = cl2lov(ios->cis_obj); lov_io_fini()
380 const struct cl_io_slice *ios) lov_io_iter_init()
382 struct lov_io *lio = cl2lov_io(env, ios); lov_io_iter_init()
398 if (ios->cis_io->ci_type == CIT_READ || lov_io_iter_init()
399 ios->cis_io->ci_type == CIT_WRITE || lov_io_iter_init()
400 ios->cis_io->ci_type == CIT_FAULT) lov_io_iter_init()
427 const struct cl_io_slice *ios) lov_io_rw_iter_init()
429 struct lov_io *lio = cl2lov_io(env, ios); lov_io_rw_iter_init()
430 struct cl_io *io = ios->cis_io; lov_io_rw_iter_init()
459 return lov_io_iter_init(env, ios); lov_io_rw_iter_init()
482 static int lov_io_lock(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_lock() argument
484 return lov_io_call(env, cl2lov_io(env, ios), cl_io_lock); lov_io_lock()
487 static int lov_io_start(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_start() argument
489 return lov_io_call(env, cl2lov_io(env, ios), cl_io_start); lov_io_start()
518 static void lov_io_end(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_end() argument
522 rc = lov_io_call(env, cl2lov_io(env, ios), lov_io_end_wrapper); lov_io_end()
527 const struct cl_io_slice *ios) lov_io_iter_fini()
529 struct lov_io *lio = cl2lov_io(env, ios); lov_io_iter_fini()
539 const struct cl_io_slice *ios) lov_io_unlock()
543 rc = lov_io_call(env, cl2lov_io(env, ios), lov_io_unlock_wrapper); lov_io_unlock()
571 const struct cl_io_slice *ios, lov_io_submit()
574 struct lov_io *lio = cl2lov_io(env, ios); lov_io_submit()
680 const struct cl_io_slice *ios, lov_io_prepare_write()
684 struct lov_io *lio = cl2lov_io(env, ios); lov_io_prepare_write()
700 const struct cl_io_slice *ios, lov_io_commit_write()
704 struct lov_io *lio = cl2lov_io(env, ios); lov_io_commit_write()
720 const struct cl_io_slice *ios) lov_io_fault_start()
726 fio = &ios->cis_io->u.ci_fault; lov_io_fault_start()
727 lio = cl2lov_io(env, ios); lov_io_fault_start()
731 return lov_io_start(env, ios); lov_io_fault_start()
735 const struct cl_io_slice *ios) lov_io_fsync_end()
737 struct lov_io *lio = cl2lov_io(env, ios); lov_io_fsync_end()
739 unsigned int *written = &ios->cis_io->u.ci_fsync.fi_nr_written; lov_io_fsync_end()
824 const struct cl_io_slice *ios) lov_empty_io_fini()
826 struct lov_object *lov = cl2lov(ios->cis_obj); lov_empty_io_fini()
833 struct cl_io_slice *ios) lov_empty_impossible()
379 lov_io_iter_init(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_iter_init() argument
426 lov_io_rw_iter_init(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_rw_iter_init() argument
526 lov_io_iter_fini(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_iter_fini() argument
538 lov_io_unlock(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_unlock() argument
570 lov_io_submit(const struct lu_env *env, const struct cl_io_slice *ios, enum cl_req_type crt, struct cl_2queue *queue) lov_io_submit() argument
679 lov_io_prepare_write(const struct lu_env *env, const struct cl_io_slice *ios, const struct cl_page_slice *slice, unsigned from, unsigned to) lov_io_prepare_write() argument
699 lov_io_commit_write(const struct lu_env *env, const struct cl_io_slice *ios, const struct cl_page_slice *slice, unsigned from, unsigned to) lov_io_commit_write() argument
719 lov_io_fault_start(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_fault_start() argument
734 lov_io_fsync_end(const struct lu_env *env, const struct cl_io_slice *ios) lov_io_fsync_end() argument
823 lov_empty_io_fini(const struct lu_env *env, const struct cl_io_slice *ios) lov_empty_io_fini() argument
832 lov_empty_impossible(const struct lu_env *env, struct cl_io_slice *ios) lov_empty_impossible() argument
H A Dlov_cl_internal.h806 const struct cl_io_slice *ios) cl2lov_io()
810 lio = container_of(ios, struct lov_io, lis_cl); cl2lov_io()
805 cl2lov_io(const struct lu_env *env, const struct cl_io_slice *ios) cl2lov_io() argument
/linux-4.1.27/drivers/net/wireless/rsi/
H A Drsi_91x_sdio.c178 host->ios.vdd = bit; rsi_reset_card()
179 host->ios.chip_select = MMC_CS_DONTCARE; rsi_reset_card()
180 host->ios.bus_mode = MMC_BUSMODE_OPENDRAIN; rsi_reset_card()
181 host->ios.power_mode = MMC_POWER_UP; rsi_reset_card()
182 host->ios.bus_width = MMC_BUS_WIDTH_1; rsi_reset_card()
183 host->ios.timing = MMC_TIMING_LEGACY; rsi_reset_card()
184 host->ops->set_ios(host, &host->ios); rsi_reset_card()
192 host->ios.clock = host->f_min; rsi_reset_card()
193 host->ios.power_mode = MMC_POWER_ON; rsi_reset_card()
194 host->ops->set_ios(host, &host->ios); rsi_reset_card()
203 host->ios.chip_select = MMC_CS_HIGH; rsi_reset_card()
204 host->ops->set_ios(host, &host->ios); rsi_reset_card()
211 host->ios.chip_select = MMC_CS_DONTCARE; rsi_reset_card()
212 host->ops->set_ios(host, &host->ios); rsi_reset_card()
267 host->ios.bus_mode = MMC_BUSMODE_PUSHPULL; rsi_reset_card()
268 host->ops->set_ios(host, &host->ios); rsi_reset_card()
298 host->ios.timing = MMC_TIMING_SD_HS; rsi_reset_card()
299 host->ops->set_ios(host, &host->ios); rsi_reset_card()
312 host->ios.clock = clock; rsi_reset_card()
313 host->ops->set_ios(host, &host->ios); rsi_reset_card()
326 host->ios.bus_width = MMC_BUS_WIDTH_4; rsi_reset_card()
327 host->ops->set_ios(host, &host->ios); rsi_reset_card()
348 host->ios.clock = clock; rsi_setclock()
349 host->ops->set_ios(host, &host->ios); rsi_setclock()
/linux-4.1.27/include/linux/mmc/
H A Dhost.h115 void (*set_ios)(struct mmc_host *host, struct mmc_ios *ios);
124 int (*start_signal_voltage_switch)(struct mmc_host *host, struct mmc_ios *ios);
133 int (*prepare_hs400_tuning)(struct mmc_host *host, struct mmc_ios *ios);
315 struct mmc_ios ios; /* current io bus settings */ member in struct:mmc_host
485 return host->ios.clock; mmc_host_clk_rate()
491 return card->host->ios.timing == MMC_TIMING_SD_HS || mmc_card_hs()
492 card->host->ios.timing == MMC_TIMING_MMC_HS; mmc_card_hs()
497 return card->host->ios.timing >= MMC_TIMING_UHS_SDR12 && mmc_card_uhs()
498 card->host->ios.timing <= MMC_TIMING_UHS_DDR50; mmc_card_uhs()
503 return card->host->ios.timing == MMC_TIMING_MMC_HS200; mmc_card_hs200()
508 return card->host->ios.timing == MMC_TIMING_MMC_DDR52; mmc_card_ddr52()
513 return card->host->ios.timing == MMC_TIMING_MMC_HS400; mmc_card_hs400()
/linux-4.1.27/drivers/md/
H A Ddm-stats.c26 unsigned long long ios[2]; member in struct:dm_stat_percpu
483 p->ios[idx] += 1; dm_stat_for_entry()
585 shared->tmp.ios[READ] += ACCESS_ONCE(p->ios[READ]); for_each_possible_cpu()
586 shared->tmp.ios[WRITE] += ACCESS_ONCE(p->ios[WRITE]); for_each_possible_cpu()
613 p->ios[READ] -= shared->tmp.ios[READ]; __dm_stat_clear()
614 p->ios[WRITE] -= shared->tmp.ios[WRITE]; __dm_stat_clear()
712 shared->tmp.ios[READ], dm_stats_print()
716 shared->tmp.ios[WRITE], dm_stats_print()
H A Draid1.h122 atomic_t behind_remaining; /* number of write-behind ios remaining
H A Ddm-cache-policy-mq.c31 * Large, sequential ios are probably better left on the origin device since
H A Ddm.c170 * A list of ios that arrived while we were suspended.
894 * Decrements the number of outstanding ios that a bio has been
H A Dmd.c297 part_stat_inc(cpu, &mddev->gendisk->part0, ios[rw]); md_make_request()
/linux-4.1.27/include/linux/amba/
H A Dmmci.h15 * @ios_handler: a callback function to act on specfic ios changes,
/linux-4.1.27/drivers/staging/lustre/lustre/osc/
H A Dosc_io.c100 const struct cl_io_slice *ios, osc_io_submit()
123 osc = cl2osc(ios->cis_obj); osc_io_submit()
128 brw_flags = osc_io_srvlock(cl2osc_io(env, ios)) ? OBD_BRW_SRVLOCK : 0; osc_io_submit()
257 const struct cl_io_slice *ios, osc_io_prepare_write()
263 struct osc_io *oio = cl2osc_io(env, ios); osc_io_prepare_write()
283 const struct cl_io_slice *ios, osc_io_commit_write()
287 struct osc_io *oio = cl2osc_io(env, ios); osc_io_commit_write()
312 const struct cl_io_slice *ios) osc_io_fault_start()
317 io = ios->cis_io; osc_io_fault_start()
327 osc_page_touch_at(env, ios->cis_obj, osc_io_fault_start()
99 osc_io_submit(const struct lu_env *env, const struct cl_io_slice *ios, enum cl_req_type crt, struct cl_2queue *queue) osc_io_submit() argument
256 osc_io_prepare_write(const struct lu_env *env, const struct cl_io_slice *ios, const struct cl_page_slice *slice, unsigned from, unsigned to) osc_io_prepare_write() argument
282 osc_io_commit_write(const struct lu_env *env, const struct cl_io_slice *ios, const struct cl_page_slice *slice, unsigned from, unsigned to) osc_io_commit_write() argument
311 osc_io_fault_start(const struct lu_env *env, const struct cl_io_slice *ios) osc_io_fault_start() argument
/linux-4.1.27/drivers/staging/lustre/lustre/lclient/
H A Dlcommon_cl.c693 void ccc_io_fini(const struct lu_env *env, const struct cl_io_slice *ios) ccc_io_fini() argument
695 struct cl_io *io = ios->cis_io; ccc_io_fini()
750 void ccc_io_end(const struct lu_env *env, const struct cl_io_slice *ios) ccc_io_end() argument
752 CLOBINVRNT(env, ios->cis_io->ci_obj, ccc_io_end()
753 ccc_object_invariant(ios->cis_io->ci_obj)); ccc_io_end()
757 const struct cl_io_slice *ios, ccc_io_advance()
760 struct ccc_io *cio = cl2ccc_io(env, ios); ccc_io_advance()
761 struct cl_io *io = ios->cis_io; ccc_io_advance()
762 struct cl_object *obj = ios->cis_io->ci_obj; ccc_io_advance()
756 ccc_io_advance(const struct lu_env *env, const struct cl_io_slice *ios, size_t nob) ccc_io_advance() argument
/linux-4.1.27/arch/arm/mach-lpc32xx/
H A Dphy3250.c191 static int mmc_handle_ios(struct device *dev, struct mmc_ios *ios) mmc_handle_ios() argument
194 if (ios->power_mode == MMC_POWER_OFF) mmc_handle_ios()
/linux-4.1.27/drivers/staging/lustre/lustre/include/
H A Dlclient.h339 void ccc_io_fini(const struct lu_env *env, const struct cl_io_slice *ios);
346 void ccc_io_end(const struct lu_env *env, const struct cl_io_slice *ios);
347 void ccc_io_advance(const struct lu_env *env, const struct cl_io_slice *ios,
H A Dcl_object.h59 * canceled. cl_io has sub-ios that can be stopped and resumed
/linux-4.1.27/arch/alpha/kernel/
H A Dio.c592 const u16 __iomem *ios = (const u16 __iomem *) s; scr_memcpyw() local
604 u16 tmp = __raw_readw(ios++); scr_memcpyw()
609 memcpy_fromio(d, ios, count); scr_memcpyw()
/linux-4.1.27/block/
H A Dpartition-generic.c125 part_stat_read(p, ios[READ]), part_stat_show()
129 part_stat_read(p, ios[WRITE]), part_stat_show()
H A Dgenhd.c1172 part_stat_read(hd, ios[READ]), diskstats_show()
1176 part_stat_read(hd, ios[WRITE]), diskstats_show()
H A Dbio.c1713 part_stat_inc(cpu, part, ios[rw]); generic_start_io_acct()
H A Dcfq-iosched.c179 /* number of ios merged */
194 /* sum of number of ios queued across all samples */
H A Dblk-core.c2172 part_stat_inc(cpu, part, ios[rw]); blk_account_io_done()
/linux-4.1.27/drivers/scsi/csiostor/
H A Dcsio_attr.c621 /* Quiesce ios and send remove event to lnode */ csio_vport_delete()
646 /* Quiesce ios and send stop event to lnode */ csio_vport_disable()
/linux-4.1.27/include/uapi/linux/
H A Ddm-ioctl.h309 * Set this to suspend without flushing queued ios.
/linux-4.1.27/drivers/staging/iio/meter/
H A Dmeter.h174 IIO_DEVICE_ATTR(ios, _mode, _show, _store, _addr)
/linux-4.1.27/drivers/usb/gadget/udc/
H A Dmv_udc_core.c452 unsigned char zlt = 0, ios = 0, mult = 0; mv_ep_enable() local
495 ios = 1; mv_ep_enable()
517 | (ios ? EP_QUEUE_HEAD_IOS : 0); mv_ep_enable()
/linux-4.1.27/include/linux/
H A Dgenhd.h83 unsigned long ios[2]; member in struct:disk_stats
/linux-4.1.27/drivers/staging/lustre/lustre/obdclass/
H A Dcl_io.c689 cl_io_slice_page(const struct cl_io_slice *ios, struct cl_page *page) cl_io_slice_page() argument
693 slice = cl_page_at(page, ios->cis_obj->co_lu.lo_dev->ld_type); cl_io_slice_page()
/linux-4.1.27/drivers/net/wireless/libertas/
H A Dif_sdio.c881 (host->ios.bus_width == MMC_BUS_WIDTH_1)) { if_sdio_power_on()
/linux-4.1.27/drivers/scsi/bnx2fc/
H A Dbnx2fc_fcoe.c595 * bnx2fc_percpu_io_thread - thread per cpu for ios
H A Dbnx2fc_io.c461 "ios(%d):sqes(%d)\n", bnx2fc_elstm_alloc()
/linux-4.1.27/drivers/scsi/bnx2i/
H A Dbnx2i_hwi.c1865 * bnx2i_percpu_io_thread - thread per cpu for ios
/linux-4.1.27/drivers/scsi/fnic/
H A Dfnic_scsi.c1304 * without sending completions for outstanding ios. fnic_cleanup_io()
/linux-4.1.27/drivers/scsi/
H A Dgdth.c3733 TRACE2(("gdth_to(): ints %d, ios %d, act_stats %d, act_rq %d\n", gdth_timeout()
/linux-4.1.27/fs/btrfs/
H A Dctree.h1507 * no two ios are trying to mod the same stripe at the same
/linux-4.1.27/sound/pci/hda/
H A Dhda_generic.c1219 /* No possible multi-ios */

Completed in 1604 milliseconds