Release 4.7 drivers/mmc/core/core.h
/*
* linux/drivers/mmc/core/core.h
*
* Copyright (C) 2003 Russell King, All Rights Reserved.
* Copyright 2007 Pierre Ossman
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#ifndef _MMC_CORE_CORE_H
#define _MMC_CORE_CORE_H
#include <linux/delay.h>
#define MMC_CMD_RETRIES 3
struct mmc_bus_ops {
void (*remove)(struct mmc_host *);
void (*detect)(struct mmc_host *);
int (*pre_suspend)(struct mmc_host *);
int (*suspend)(struct mmc_host *);
int (*resume)(struct mmc_host *);
int (*runtime_suspend)(struct mmc_host *);
int (*runtime_resume)(struct mmc_host *);
int (*power_save)(struct mmc_host *);
int (*power_restore)(struct mmc_host *);
int (*alive)(struct mmc_host *);
int (*shutdown)(struct mmc_host *);
int (*reset)(struct mmc_host *);
};
void mmc_attach_bus(struct mmc_host *host, const struct mmc_bus_ops *ops);
void mmc_detach_bus(struct mmc_host *host);
struct device_node *mmc_of_find_child_device(struct mmc_host *host,
unsigned func_num);
void mmc_init_erase(struct mmc_card *card);
void mmc_set_chip_select(struct mmc_host *host, int mode);
void mmc_set_clock(struct mmc_host *host, unsigned int hz);
void mmc_set_bus_mode(struct mmc_host *host, unsigned int mode);
void mmc_set_bus_width(struct mmc_host *host, unsigned int width);
u32 mmc_select_voltage(struct mmc_host *host, u32 ocr);
int mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage, u32 ocr);
int __mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage);
void mmc_set_timing(struct mmc_host *host, unsigned int timing);
void mmc_set_driver_type(struct mmc_host *host, unsigned int drv_type);
int mmc_select_drive_strength(struct mmc_card *card, unsigned int max_dtr,
int card_drv_type, int *drv_type);
void mmc_power_up(struct mmc_host *host, u32 ocr);
void mmc_power_off(struct mmc_host *host);
void mmc_power_cycle(struct mmc_host *host, u32 ocr);
void mmc_set_initial_state(struct mmc_host *host);
static inline void mmc_delay(unsigned int ms)
{
if (ms < 1000 / HZ) {
cond_resched();
mdelay(ms);
} else {
msleep(ms);
}
}
Contributors
| Person | Tokens | Prop | Commits | CommitProp |
pierre ossman | pierre ossman | 36 | 97.30% | 2 | 66.67% |
russell king | russell king | 1 | 2.70% | 1 | 33.33% |
| Total | 37 | 100.00% | 3 | 100.00% |
void mmc_rescan(struct work_struct *work);
void mmc_start_host(struct mmc_host *host);
void mmc_stop_host(struct mmc_host *host);
int _mmc_detect_card_removed(struct mmc_host *host);
int mmc_attach_mmc(struct mmc_host *host);
int mmc_attach_sd(struct mmc_host *host);
int mmc_attach_sdio(struct mmc_host *host);
/* Module parameters */
extern bool use_spi_crc;
/* Debugfs information for hosts and cards */
void mmc_add_host_debugfs(struct mmc_host *host);
void mmc_remove_host_debugfs(struct mmc_host *host);
void mmc_add_card_debugfs(struct mmc_card *card);
void mmc_remove_card_debugfs(struct mmc_card *card);
void mmc_init_context_info(struct mmc_host *host);
int mmc_execute_tuning(struct mmc_card *card);
int mmc_hs200_to_hs400(struct mmc_card *card);
int mmc_hs400_to_hs200(struct mmc_card *card);
#ifdef CONFIG_PM_SLEEP
void mmc_register_pm_notifier(struct mmc_host *host);
void mmc_unregister_pm_notifier(struct mmc_host *host);
#else
static inline void mmc_register_pm_notifier(struct mmc_host *host) { }
Contributors
| Person | Tokens | Prop | Commits | CommitProp |
ulf hansson | ulf hansson | 10 | 90.91% | 1 | 50.00% |
arnd bergmann | arnd bergmann | 1 | 9.09% | 1 | 50.00% |
| Total | 11 | 100.00% | 2 | 100.00% |
static inline void mmc_unregister_pm_notifier(struct mmc_host *host) { }
Contributors
| Person | Tokens | Prop | Commits | CommitProp |
ulf hansson | ulf hansson | 10 | 90.91% | 1 | 50.00% |
arnd bergmann | arnd bergmann | 1 | 9.09% | 1 | 50.00% |
| Total | 11 | 100.00% | 2 | 100.00% |
#endif
#endif
Overall Contributors
| Person | Tokens | Prop | Commits | CommitProp |
pierre ossman | pierre ossman | 211 | 34.99% | 5 | 13.16% |
ulf hansson | ulf hansson | 116 | 19.24% | 7 | 18.42% |
adrian hunter | adrian hunter | 96 | 15.92% | 6 | 15.79% |
johan rudholm | johan rudholm | 40 | 6.63% | 4 | 10.53% |
haavard skinnemoen | haavard skinnemoen | 37 | 6.14% | 2 | 5.26% |
adrian bunk | adrian bunk | 27 | 4.48% | 1 | 2.63% |
arindam nath | arindam nath | 25 | 4.15% | 2 | 5.26% |
russell king | russell king | 16 | 2.65% | 2 | 5.26% |
sascha hauer | sascha hauer | 14 | 2.32% | 1 | 2.63% |
konstantin dorfman | konstantin dorfman | 9 | 1.49% | 1 | 2.63% |
david brownell | david brownell | 3 | 0.50% | 1 | 2.63% |
arnd bergmann | arnd bergmann | 2 | 0.33% | 1 | 2.63% |
ohad ben-cohen | ohad ben-cohen | 2 | 0.33% | 1 | 2.63% |
nicolas pitre | nicolas pitre | 2 | 0.33% | 1 | 2.63% |
ben hutchings | ben hutchings | 1 | 0.17% | 1 | 2.63% |
rusty russell | rusty russell | 1 | 0.17% | 1 | 2.63% |
philip rakity | philip rakity | 1 | 0.17% | 1 | 2.63% |
| Total | 603 | 100.00% | 38 | 100.00% |
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.