Lines Matching defs:mmc_host

320 struct mmc_host {  struct
324 const struct mmc_host_ops *ops; argument
325 struct mmc_pwrseq *pwrseq;
326 unsigned int f_min;
327 unsigned int f_max;
328 unsigned int f_init;
329 u32 ocr_avail;
330 u32 ocr_avail_sdio; /* SDIO-specific OCR */
331 u32 ocr_avail_sd; /* SD-specific OCR */
332 u32 ocr_avail_mmc; /* MMC-specific OCR */
333 struct wakeup_source *ws; /* Enable consume of uevents */
334 u32 max_current_330;
335 u32 max_current_300;
336 u32 max_current_180;
356 u32 caps; /* Host capabilities */
394 u32 caps2; /* More host capabilities */
431 int fixed_drv_type; /* fixed driver type for non-removable media */
433 mmc_pm_flag_t pm_caps; /* supported pm features */
436 unsigned int max_seg_size; /* see blk_queue_max_segment_size */
437 unsigned short max_segs; /* see blk_queue_max_segments */
438 unsigned short unused;
439 unsigned int max_req_size; /* maximum number of bytes in one req */
440 unsigned int max_blk_size; /* maximum size of one mmc block */
441 unsigned int max_blk_count; /* maximum number of blocks in one req */
442 unsigned int max_busy_timeout; /* max busy timeout in ms */
445 spinlock_t lock; /* lock for claim and bus ops */
447 struct mmc_ios ios; /* current io bus settings */
450 unsigned int use_spi_crc:1;
451 unsigned int claimed:1; /* host exclusively claimed */
452 unsigned int doing_init_tune:1; /* initial tuning in progress */
453 unsigned int can_retune:1; /* re-tuning can be used */
454 unsigned int doing_retune:1; /* re-tuning in progress */
455 unsigned int retune_now:1; /* do re-tuning at next req */
456 unsigned int retune_paused:1; /* re-tuning is temporarily disabled */
457 unsigned int retune_crc_disable:1; /* don't trigger retune upon crc */
458 unsigned int can_dma_map_merge:1; /* merging can be used */
459 unsigned int vqmmc_enabled:1; /* vqmmc regulator is enabled */
461 int rescan_disable; /* disable card detection */
462 int rescan_entered; /* used with nonremovable devices */
464 int need_retune; /* re-tuning is needed */
465 int hold_retune; /* hold off re-tuning */
466 unsigned int retune_period; /* re-tuning period in secs */
467 struct timer_list retune_timer; /* for periodic re-tuning */
469 bool trigger_card_event; /* card_event necessary */
471 struct mmc_card *card; /* device attached to this host */
473 wait_queue_head_t wq;
474 struct mmc_ctx *claimer; /* context that has host claimed */
475 int claim_cnt; /* "claim" nesting count */
476 struct mmc_ctx default_ctx; /* default context */
478 struct delayed_work detect;
479 int detect_change; /* card detect flag */
480 struct mmc_slot slot;
482 const struct mmc_bus_ops *bus_ops; /* current bus driver */
484 unsigned int sdio_irqs;
485 struct task_struct *sdio_irq_thread;
486 struct work_struct sdio_irq_work;
487 bool sdio_irq_pending;
488 atomic_t sdio_irq_thread_abort;
490 mmc_pm_flag_t pm_flags; /* requested pm features */
492 struct led_trigger *led; /* activity led */
495 bool regulator_enabled; /* regulator state */
497 struct mmc_supply supply;
499 struct dentry *debugfs_root;
502 struct mmc_request *ongoing_mrq;
505 struct fault_attr fail_mmc_request;
508 unsigned int actual_clock; /* Actual HC clock rate */
510 unsigned int slotno; /* used for sdio acpi binding */
512 int dsr_req; /* DSR value is valid */
513 u32 dsr; /* optional driver stage (DSR) value */
537 struct mmc_host *mmc_alloc_host(int extra, struct device *); argument