can: tcan4x5x: Turn on the power before parsing the config

Message ID 20191209212351.27518-1-dmurphy@ti.com
State New
Headers show
Series
  • can: tcan4x5x: Turn on the power before parsing the config
Related show

Commit Message

Dan Murphy Dec. 9, 2019, 9:23 p.m.
The parse config function now performs action on the device either
reading or writing and a reset.  If the regulator is managed it needs
to be turned on.  So turn on the regulator if available if the parsing
fails then turn off the regulator.

Fixes: a5235f3c7c23 ("can: tcan45x: Make wake-up GPIO an optional GPIO")
Signed-off-by: Dan Murphy <dmurphy@ti.com>

---
 drivers/net/can/m_can/tcan4x5x.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

-- 
2.23.0

Comments

Marc Kleine-Budde Dec. 9, 2019, 9:38 p.m. | #1
On 12/9/19 10:23 PM, Dan Murphy wrote:
> The parse config function now performs action on the device either

> reading or writing and a reset.  If the regulator is managed it needs

> to be turned on.  So turn on the regulator if available if the parsing

> fails then turn off the regulator.

> 

> Fixes: a5235f3c7c23 ("can: tcan45x: Make wake-up GPIO an optional GPIO")

> Signed-off-by: Dan Murphy <dmurphy@ti.com>

> ---

>  drivers/net/can/m_can/tcan4x5x.c | 6 +++---

>  1 file changed, 3 insertions(+), 3 deletions(-)

> 

> diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c

> index 4e1789ea2bc3..515486fcb150 100644

> --- a/drivers/net/can/m_can/tcan4x5x.c

> +++ b/drivers/net/can/m_can/tcan4x5x.c

> @@ -451,11 +451,11 @@ static int tcan4x5x_can_probe(struct spi_device *spi)

>  	priv->regmap = devm_regmap_init(&spi->dev, &tcan4x5x_bus,

>  					&spi->dev, &tcan4x5x_regmap);

>  

> +	tcan4x5x_power_enable(priv->power, 1);


please add error handling

Marc

-- 
Pengutronix e.K.                 | Marc Kleine-Budde           |
Embedded Linux                   | https://www.pengutronix.de  |
Vertretung West/Dortmund         | Phone: +49-231-2826-924     |
Amtsgericht Hildesheim, HRA 2686 | Fax:   +49-5121-206917-5555 |
Dan Murphy Dec. 9, 2019, 9:44 p.m. | #2
Marc

On 12/9/19 3:38 PM, Marc Kleine-Budde wrote:
> On 12/9/19 10:23 PM, Dan Murphy wrote:

>> The parse config function now performs action on the device either

>> reading or writing and a reset.  If the regulator is managed it needs

>> to be turned on.  So turn on the regulator if available if the parsing

>> fails then turn off the regulator.

>>

>> Fixes: a5235f3c7c23 ("can: tcan45x: Make wake-up GPIO an optional GPIO")

>> Signed-off-by: Dan Murphy <dmurphy@ti.com>

>> ---

>>   drivers/net/can/m_can/tcan4x5x.c | 6 +++---

>>   1 file changed, 3 insertions(+), 3 deletions(-)

>>

>> diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c

>> index 4e1789ea2bc3..515486fcb150 100644

>> --- a/drivers/net/can/m_can/tcan4x5x.c

>> +++ b/drivers/net/can/m_can/tcan4x5x.c

>> @@ -451,11 +451,11 @@ static int tcan4x5x_can_probe(struct spi_device *spi)

>>   	priv->regmap = devm_regmap_init(&spi->dev, &tcan4x5x_bus,

>>   					&spi->dev, &tcan4x5x_regmap);

>>   

>> +	tcan4x5x_power_enable(priv->power, 1);

> please add error handling


Ack


> Marc

>

Patch

diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c
index 4e1789ea2bc3..515486fcb150 100644
--- a/drivers/net/can/m_can/tcan4x5x.c
+++ b/drivers/net/can/m_can/tcan4x5x.c
@@ -451,11 +451,11 @@  static int tcan4x5x_can_probe(struct spi_device *spi)
 	priv->regmap = devm_regmap_init(&spi->dev, &tcan4x5x_bus,
 					&spi->dev, &tcan4x5x_regmap);
 
+	tcan4x5x_power_enable(priv->power, 1);
+
 	ret = tcan4x5x_parse_config(mcan_class);
 	if (ret)
-		goto out_clk;
-
-	tcan4x5x_power_enable(priv->power, 1);
+		goto out_power;
 
 	ret = m_can_class_register(mcan_class);
 	if (ret)