Searched refs:pwrseq (Results 1 - 25 of 25) sorted by relevance
/linux-4.4.14/drivers/mmc/core/ |
H A D | pwrseq_simple.c | 20 #include "pwrseq.h" 23 struct mmc_pwrseq pwrseq; member in struct:mmc_pwrseq_simple 29 static void mmc_pwrseq_simple_set_gpios_value(struct mmc_pwrseq_simple *pwrseq, mmc_pwrseq_simple_set_gpios_value() argument 33 struct gpio_descs *reset_gpios = pwrseq->reset_gpios; mmc_pwrseq_simple_set_gpios_value() 45 struct mmc_pwrseq_simple *pwrseq = container_of(host->pwrseq, mmc_pwrseq_simple_pre_power_on() local 46 struct mmc_pwrseq_simple, pwrseq); mmc_pwrseq_simple_pre_power_on() 48 if (!IS_ERR(pwrseq->ext_clk) && !pwrseq->clk_enabled) { mmc_pwrseq_simple_pre_power_on() 49 clk_prepare_enable(pwrseq->ext_clk); mmc_pwrseq_simple_pre_power_on() 50 pwrseq->clk_enabled = true; mmc_pwrseq_simple_pre_power_on() 53 mmc_pwrseq_simple_set_gpios_value(pwrseq, 1); mmc_pwrseq_simple_pre_power_on() 58 struct mmc_pwrseq_simple *pwrseq = container_of(host->pwrseq, mmc_pwrseq_simple_post_power_on() local 59 struct mmc_pwrseq_simple, pwrseq); mmc_pwrseq_simple_post_power_on() 61 mmc_pwrseq_simple_set_gpios_value(pwrseq, 0); mmc_pwrseq_simple_post_power_on() 66 struct mmc_pwrseq_simple *pwrseq = container_of(host->pwrseq, mmc_pwrseq_simple_power_off() local 67 struct mmc_pwrseq_simple, pwrseq); mmc_pwrseq_simple_power_off() 69 mmc_pwrseq_simple_set_gpios_value(pwrseq, 1); mmc_pwrseq_simple_power_off() 71 if (!IS_ERR(pwrseq->ext_clk) && pwrseq->clk_enabled) { mmc_pwrseq_simple_power_off() 72 clk_disable_unprepare(pwrseq->ext_clk); mmc_pwrseq_simple_power_off() 73 pwrseq->clk_enabled = false; mmc_pwrseq_simple_power_off() 79 struct mmc_pwrseq_simple *pwrseq = container_of(host->pwrseq, mmc_pwrseq_simple_free() local 80 struct mmc_pwrseq_simple, pwrseq); mmc_pwrseq_simple_free() 82 gpiod_put_array(pwrseq->reset_gpios); mmc_pwrseq_simple_free() 84 if (!IS_ERR(pwrseq->ext_clk)) mmc_pwrseq_simple_free() 85 clk_put(pwrseq->ext_clk); mmc_pwrseq_simple_free() 87 kfree(pwrseq); mmc_pwrseq_simple_free() 100 struct mmc_pwrseq_simple *pwrseq; mmc_pwrseq_simple_alloc() local 103 pwrseq = kzalloc(sizeof(*pwrseq), GFP_KERNEL); mmc_pwrseq_simple_alloc() 104 if (!pwrseq) mmc_pwrseq_simple_alloc() 107 pwrseq->ext_clk = clk_get(dev, "ext_clock"); mmc_pwrseq_simple_alloc() 108 if (IS_ERR(pwrseq->ext_clk) && mmc_pwrseq_simple_alloc() 109 PTR_ERR(pwrseq->ext_clk) != -ENOENT) { mmc_pwrseq_simple_alloc() 110 ret = PTR_ERR(pwrseq->ext_clk); mmc_pwrseq_simple_alloc() 114 pwrseq->reset_gpios = gpiod_get_array(dev, "reset", GPIOD_OUT_HIGH); mmc_pwrseq_simple_alloc() 115 if (IS_ERR(pwrseq->reset_gpios)) { mmc_pwrseq_simple_alloc() 116 ret = PTR_ERR(pwrseq->reset_gpios); mmc_pwrseq_simple_alloc() 120 pwrseq->pwrseq.ops = &mmc_pwrseq_simple_ops; mmc_pwrseq_simple_alloc() 122 return &pwrseq->pwrseq; mmc_pwrseq_simple_alloc() 124 if (!IS_ERR(pwrseq->ext_clk)) mmc_pwrseq_simple_alloc() 125 clk_put(pwrseq->ext_clk); mmc_pwrseq_simple_alloc() 127 kfree(pwrseq); mmc_pwrseq_simple_alloc()
|
H A D | pwrseq_emmc.c | 20 #include "pwrseq.h" 23 struct mmc_pwrseq pwrseq; member in struct:mmc_pwrseq_emmc 28 static void __mmc_pwrseq_emmc_reset(struct mmc_pwrseq_emmc *pwrseq) __mmc_pwrseq_emmc_reset() argument 30 gpiod_set_value(pwrseq->reset_gpio, 1); __mmc_pwrseq_emmc_reset() 32 gpiod_set_value(pwrseq->reset_gpio, 0); __mmc_pwrseq_emmc_reset() 38 struct mmc_pwrseq_emmc *pwrseq = container_of(host->pwrseq, mmc_pwrseq_emmc_reset() local 39 struct mmc_pwrseq_emmc, pwrseq); mmc_pwrseq_emmc_reset() 41 __mmc_pwrseq_emmc_reset(pwrseq); mmc_pwrseq_emmc_reset() 46 struct mmc_pwrseq_emmc *pwrseq = container_of(host->pwrseq, mmc_pwrseq_emmc_free() local 47 struct mmc_pwrseq_emmc, pwrseq); mmc_pwrseq_emmc_free() 49 unregister_restart_handler(&pwrseq->reset_nb); mmc_pwrseq_emmc_free() 50 gpiod_put(pwrseq->reset_gpio); mmc_pwrseq_emmc_free() 51 kfree(pwrseq); mmc_pwrseq_emmc_free() 62 struct mmc_pwrseq_emmc *pwrseq = container_of(this, mmc_pwrseq_emmc_reset_nb() local 65 __mmc_pwrseq_emmc_reset(pwrseq); mmc_pwrseq_emmc_reset_nb() 72 struct mmc_pwrseq_emmc *pwrseq; mmc_pwrseq_emmc_alloc() local 75 pwrseq = kzalloc(sizeof(struct mmc_pwrseq_emmc), GFP_KERNEL); mmc_pwrseq_emmc_alloc() 76 if (!pwrseq) mmc_pwrseq_emmc_alloc() 79 pwrseq->reset_gpio = gpiod_get(dev, "reset", GPIOD_OUT_LOW); mmc_pwrseq_emmc_alloc() 80 if (IS_ERR(pwrseq->reset_gpio)) { mmc_pwrseq_emmc_alloc() 81 ret = PTR_ERR(pwrseq->reset_gpio); mmc_pwrseq_emmc_alloc() 90 pwrseq->reset_nb.notifier_call = mmc_pwrseq_emmc_reset_nb; mmc_pwrseq_emmc_alloc() 91 pwrseq->reset_nb.priority = 255; mmc_pwrseq_emmc_alloc() 92 register_restart_handler(&pwrseq->reset_nb); mmc_pwrseq_emmc_alloc() 94 pwrseq->pwrseq.ops = &mmc_pwrseq_emmc_ops; mmc_pwrseq_emmc_alloc() 96 return &pwrseq->pwrseq; mmc_pwrseq_emmc_alloc() 98 kfree(pwrseq); mmc_pwrseq_emmc_alloc()
|
H A D | pwrseq.c | 18 #include "pwrseq.h" 27 .compatible = "mmc-pwrseq-simple", 30 .compatible = "mmc-pwrseq-emmc", 55 struct mmc_pwrseq *pwrseq; mmc_pwrseq_alloc() local 58 np = of_parse_phandle(host->parent->of_node, "mmc-pwrseq", 0); mmc_pwrseq_alloc() 74 pwrseq = match->alloc(host, &pdev->dev); mmc_pwrseq_alloc() 75 if (IS_ERR(pwrseq)) { mmc_pwrseq_alloc() 76 ret = PTR_ERR(pwrseq); mmc_pwrseq_alloc() 80 host->pwrseq = pwrseq; mmc_pwrseq_alloc() 81 dev_info(host->parent, "allocated mmc-pwrseq\n"); mmc_pwrseq_alloc() 90 struct mmc_pwrseq *pwrseq = host->pwrseq; mmc_pwrseq_pre_power_on() local 92 if (pwrseq && pwrseq->ops && pwrseq->ops->pre_power_on) mmc_pwrseq_pre_power_on() 93 pwrseq->ops->pre_power_on(host); mmc_pwrseq_pre_power_on() 98 struct mmc_pwrseq *pwrseq = host->pwrseq; mmc_pwrseq_post_power_on() local 100 if (pwrseq && pwrseq->ops && pwrseq->ops->post_power_on) mmc_pwrseq_post_power_on() 101 pwrseq->ops->post_power_on(host); mmc_pwrseq_post_power_on() 106 struct mmc_pwrseq *pwrseq = host->pwrseq; mmc_pwrseq_power_off() local 108 if (pwrseq && pwrseq->ops && pwrseq->ops->power_off) mmc_pwrseq_power_off() 109 pwrseq->ops->power_off(host); mmc_pwrseq_power_off() 114 struct mmc_pwrseq *pwrseq = host->pwrseq; mmc_pwrseq_free() local 116 if (pwrseq && pwrseq->ops && pwrseq->ops->free) mmc_pwrseq_free() 117 pwrseq->ops->free(host); mmc_pwrseq_free() 119 host->pwrseq = NULL; mmc_pwrseq_free()
|
H A D | Makefile | 11 mmc_core-$(CONFIG_OF) += pwrseq.o pwrseq_simple.o pwrseq_emmc.o
|
H A D | host.c | 33 #include "pwrseq.h"
|
H A D | core.c | 43 #include "pwrseq.h"
|
/linux-4.4.14/drivers/net/wireless/realtek/rtlwifi/rtl8192ee/ |
H A D | Makefile | 7 pwrseq.o \
|
H A D | pwrseq.c | 26 #include "pwrseq.h"
|
H A D | hw.c | 41 #include "pwrseq.h"
|
/linux-4.4.14/drivers/net/wireless/realtek/rtlwifi/rtl8723ae/ |
H A D | Makefile | 9 pwrseq.o \
|
H A D | pwrseq.c | 27 #include "pwrseq.h"
|
H A D | hw.c | 44 #include "pwrseq.h"
|
/linux-4.4.14/drivers/net/wireless/realtek/rtlwifi/rtl8723be/ |
H A D | Makefile | 7 pwrseq.o \
|
H A D | pwrseq.c | 27 #include "pwrseq.h"
|
H A D | hw.c | 44 #include "pwrseq.h"
|
/linux-4.4.14/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/ |
H A D | Makefile | 7 pwrseq.o \
|
H A D | pwrseq.c | 27 #include "pwrseq.h"
|
H A D | hw.c | 41 #include "pwrseq.h"
|
/linux-4.4.14/drivers/net/wireless/realtek/rtlwifi/rtl8188ee/ |
H A D | Makefile | 7 pwrseq.o \
|
H A D | pwrseq.c | 27 #include "pwrseq.h"
|
H A D | hw.c | 41 #include "pwrseq.h"
|
/linux-4.4.14/drivers/staging/rtl8188eu/ |
H A D | Makefile | 25 hal/pwrseq.o \
|
/linux-4.4.14/drivers/staging/rtl8188eu/hal/ |
H A D | pwrseq.c | 21 #include "pwrseq.h"
|
/linux-4.4.14/drivers/staging/rtl8188eu/include/ |
H A D | rtl8188e_hal.h | 32 #include "pwrseq.h"
|
/linux-4.4.14/include/linux/mmc/ |
H A D | host.h | 207 struct mmc_pwrseq *pwrseq; member in struct:mmc_host
|
Completed in 566 milliseconds