[PATCH V3 4/4] mmc: pwrseq_simple: Add support for a reset GPIO pin
Tomeu Vizoso
tomeu.vizoso at collabora.com
Fri Jan 16 03:34:41 PST 2015
On 16 January 2015 at 11:47, Ulf Hansson <ulf.hansson at linaro.org> wrote:
>
> int mmc_pwrseq_simple_alloc(struct mmc_host *host, struct device *dev)
> {
> struct mmc_pwrseq_simple *pwrseq;
> + int ret = 0;
>
> pwrseq = kzalloc(sizeof(struct mmc_pwrseq_simple), GFP_KERNEL);
> if (!pwrseq)
> return -ENOMEM;
>
> + pwrseq->reset_gpio = gpiod_get_index(dev, "reset", 0, GPIOD_OUT_HIGH);
> + if (IS_ERR(pwrseq->reset_gpio) &&
> + PTR_ERR(pwrseq->reset_gpio) != -ENOENT &&
> + PTR_ERR(pwrseq->reset_gpio) != -ENOSYS) {
> + ret = PTR_ERR(pwrseq->reset_gpio);
> + goto free;
> + }
> +
> pwrseq->pwrseq.ops = &mmc_pwrseq_simple_ops;
> host->pwrseq = &pwrseq->pwrseq;
>
> return 0;
> +free:
> + kfree(&pwrseq);
Hi Ulf,
this kfree looks a bit fishy (there's one more instance of it in
mmc_pwrseq_simple_free).
Cheers,
Tomeu
More information about the linux-arm-kernel
mailing list