#include <linux/device.h>
#include <linux/err.h>
#include <linux/export.h>
#include <linux/slab.h>
#include <linux/pm_runtime.h>
#include <linux/pm_domain.h>
#include <linux/acpi.h>
#include <linux/sysfs.h>
#include <linux/mmc/card.h>
#include <linux/mmc/host.h>
#include <linux/mmc/sdio_func.h>
#include <linux/of.h>
#include "core.h"
#include "card.h"
#include "sdio_cis.h"
#include "sdio_bus.h"
#define to_sdio_driver(d) …
#define sdio_config_attr(field, format_string, args...) …
sdio_config_attr(…);
sdio_config_attr(…);
sdio_config_attr(…);
sdio_config_attr(…);
sdio_config_attr(…);
#define sdio_info_attr(num) …
sdio_info_attr(…);
sdio_info_attr(…);
sdio_info_attr(…);
sdio_info_attr(…);
static struct attribute *sdio_dev_attrs[] = …;
ATTRIBUTE_GROUPS(…);
static const struct sdio_device_id *sdio_match_one(struct sdio_func *func,
const struct sdio_device_id *id)
{ … }
static const struct sdio_device_id *sdio_match_device(struct sdio_func *func,
const struct sdio_driver *sdrv)
{ … }
static int sdio_bus_match(struct device *dev, const struct device_driver *drv)
{ … }
static int
sdio_bus_uevent(const struct device *dev, struct kobj_uevent_env *env)
{ … }
static int sdio_bus_probe(struct device *dev)
{ … }
static void sdio_bus_remove(struct device *dev)
{ … }
static const struct dev_pm_ops sdio_bus_pm_ops = …;
static const struct bus_type sdio_bus_type = …;
int sdio_register_bus(void)
{ … }
void sdio_unregister_bus(void)
{ … }
int __sdio_register_driver(struct sdio_driver *drv, struct module *owner)
{ … }
EXPORT_SYMBOL_GPL(…);
void sdio_unregister_driver(struct sdio_driver *drv)
{ … }
EXPORT_SYMBOL_GPL(…);
static void sdio_release_func(struct device *dev)
{ … }
struct sdio_func *sdio_alloc_func(struct mmc_card *card)
{ … }
#ifdef CONFIG_ACPI
static void sdio_acpi_set_handle(struct sdio_func *func)
{ … }
#else
static inline void sdio_acpi_set_handle(struct sdio_func *func) {}
#endif
static void sdio_set_of_node(struct sdio_func *func)
{ … }
int sdio_add_func(struct sdio_func *func)
{ … }
void sdio_remove_func(struct sdio_func *func)
{ … }