Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 686c953e authored by David S. Miller's avatar David S. Miller
Browse files

Merge tag 'linux-can-fixes-for-4.2-20150716' of...

Merge tag 'linux-can-fixes-for-4.2-20150716' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can



Marc Kleine-Budde says:

====================
pull-request: can 2015-07-16

this is a pull request of 2 patches by Stefan Agner. He fixes the resume
operation in the mcp251x driver.
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents fdbf5b09 69da3f2a
Loading
Loading
Loading
Loading
+8 −9
Original line number Diff line number Diff line
@@ -1086,8 +1086,8 @@ static int mcp251x_can_probe(struct spi_device *spi)
	if (ret)
		goto out_clk;

	priv->power = devm_regulator_get(&spi->dev, "vdd");
	priv->transceiver = devm_regulator_get(&spi->dev, "xceiver");
	priv->power = devm_regulator_get_optional(&spi->dev, "vdd");
	priv->transceiver = devm_regulator_get_optional(&spi->dev, "xceiver");
	if ((PTR_ERR(priv->power) == -EPROBE_DEFER) ||
	    (PTR_ERR(priv->transceiver) == -EPROBE_DEFER)) {
		ret = -EPROBE_DEFER;
@@ -1222,17 +1222,16 @@ static int __maybe_unused mcp251x_can_resume(struct device *dev)
	struct spi_device *spi = to_spi_device(dev);
	struct mcp251x_priv *priv = spi_get_drvdata(spi);

	if (priv->after_suspend & AFTER_SUSPEND_POWER) {
	if (priv->after_suspend & AFTER_SUSPEND_POWER)
		mcp251x_power_enable(priv->power, 1);
		queue_work(priv->wq, &priv->restart_work);
	} else {

	if (priv->after_suspend & AFTER_SUSPEND_UP) {
		mcp251x_power_enable(priv->transceiver, 1);
		queue_work(priv->wq, &priv->restart_work);
	} else {
		priv->after_suspend = 0;
	}
	}

	priv->force_quit = 0;
	enable_irq(spi->irq);
	return 0;