Commit 27410ee7 authored by Guennadi Liakhovetski's avatar Guennadi Liakhovetski Committed by Chris Ball

mmc: core: use a more generic name for slot function types and fields

struct mmc_host::hotplug is becoming a generic hook for slot functions.
Rename it accordingly.
Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: default avatarChris Ball <cjb@laptop.org>
parent 7d17baa0
...@@ -327,6 +327,8 @@ struct mmc_host *mmc_alloc_host(int extra, struct device *dev) ...@@ -327,6 +327,8 @@ struct mmc_host *mmc_alloc_host(int extra, struct device *dev)
mmc_host_clk_init(host); mmc_host_clk_init(host);
host->slot.cd_irq = -EINVAL;
spin_lock_init(&host->lock); spin_lock_init(&host->lock);
init_waitqueue_head(&host->wq); init_waitqueue_head(&host->wq);
INIT_DELAYED_WORK(&host->detect, mmc_rescan); INIT_DELAYED_WORK(&host->detect, mmc_rescan);
......
...@@ -56,8 +56,8 @@ int mmc_gpio_request_cd(struct mmc_host *host, unsigned int gpio) ...@@ -56,8 +56,8 @@ int mmc_gpio_request_cd(struct mmc_host *host, unsigned int gpio)
goto eirqreq; goto eirqreq;
ctx->cd_gpio = gpio; ctx->cd_gpio = gpio;
host->hotplug.irq = irq; host->slot.cd_irq = irq;
host->hotplug.handler_priv = ctx; host->slot.handler_priv = ctx;
return 0; return 0;
...@@ -71,12 +71,12 @@ EXPORT_SYMBOL(mmc_gpio_request_cd); ...@@ -71,12 +71,12 @@ EXPORT_SYMBOL(mmc_gpio_request_cd);
void mmc_gpio_free_cd(struct mmc_host *host) void mmc_gpio_free_cd(struct mmc_host *host)
{ {
struct mmc_gpio *ctx = host->hotplug.handler_priv; struct mmc_gpio *ctx = host->slot.handler_priv;
if (!ctx) if (!ctx)
return; return;
free_irq(host->hotplug.irq, host); free_irq(host->slot.cd_irq, host);
gpio_free(ctx->cd_gpio); gpio_free(ctx->cd_gpio);
kfree(ctx); kfree(ctx);
} }
......
...@@ -150,8 +150,19 @@ struct mmc_async_req { ...@@ -150,8 +150,19 @@ struct mmc_async_req {
int (*err_check) (struct mmc_card *, struct mmc_async_req *); int (*err_check) (struct mmc_card *, struct mmc_async_req *);
}; };
struct mmc_hotplug { /**
unsigned int irq; * struct mmc_slot - MMC slot functions
*
* @cd_irq: MMC/SD-card slot hotplug detection IRQ or -EINVAL
* @handler_priv: MMC/SD-card slot context
*
* Some MMC/SD host controllers implement slot-functions like card and
* write-protect detection natively. However, a large number of controllers
* leave these functions to the CPU. This struct provides a hook to attach
* such slot-function drivers.
*/
struct mmc_slot {
int cd_irq;
void *handler_priv; void *handler_priv;
}; };
...@@ -297,7 +308,7 @@ struct mmc_host { ...@@ -297,7 +308,7 @@ struct mmc_host {
struct delayed_work detect; struct delayed_work detect;
int detect_change; /* card detect flag */ int detect_change; /* card detect flag */
struct mmc_hotplug hotplug; struct mmc_slot slot;
const struct mmc_bus_ops *bus_ops; /* current bus driver */ const struct mmc_bus_ops *bus_ops; /* current bus driver */
unsigned int bus_refs; /* reference counter */ unsigned int bus_refs; /* reference counter */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment