* [RESEND PATCH can-next 1/2] can: tcan4x5x: Rename parse_config function
@ 2020-02-27 18:38 ` Dan Murphy
0 siblings, 0 replies; 7+ messages in thread
From: Dan Murphy @ 2020-02-27 18:38 UTC (permalink / raw)
To: mkl, wg; +Cc: linux-can, linux-kernel, Dan Murphy
Rename the tcan4x5x_parse_config function to tcan4x5x_get_gpios since
the function retrieves the gpio configurations from the firmware.
Signed-off-by: Dan Murphy <dmurphy@ti.com>
---
drivers/net/can/m_can/tcan4x5x.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c
index 9821babef55e..37d53ecc560b 100644
--- a/drivers/net/can/m_can/tcan4x5x.c
+++ b/drivers/net/can/m_can/tcan4x5x.c
@@ -381,7 +381,7 @@ static int tcan4x5x_disable_state(struct m_can_classdev *cdev)
TCAN4X5X_DISABLE_INH_MSK, 0x01);
}
-static int tcan4x5x_parse_config(struct m_can_classdev *cdev)
+static int tcan4x5x_get_gpios(struct m_can_classdev *cdev)
{
struct tcan4x5x_priv *tcan4x5x = cdev->device_data;
int ret;
@@ -507,7 +507,7 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
if (ret)
return ret;
- ret = tcan4x5x_parse_config(mcan_class);
+ ret = tcan4x5x_get_gpios(mcan_class);
if (ret)
goto out_power;
--
2.25.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [RESEND PATCH can-next 1/2] can: tcan4x5x: Rename parse_config function
@ 2020-02-27 18:38 ` Dan Murphy
0 siblings, 0 replies; 7+ messages in thread
From: Dan Murphy @ 2020-02-27 18:38 UTC (permalink / raw)
To: mkl, wg; +Cc: linux-can, linux-kernel, Dan Murphy
Rename the tcan4x5x_parse_config function to tcan4x5x_get_gpios since
the function retrieves the gpio configurations from the firmware.
Signed-off-by: Dan Murphy <dmurphy@ti.com>
---
drivers/net/can/m_can/tcan4x5x.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c
index 9821babef55e..37d53ecc560b 100644
--- a/drivers/net/can/m_can/tcan4x5x.c
+++ b/drivers/net/can/m_can/tcan4x5x.c
@@ -381,7 +381,7 @@ static int tcan4x5x_disable_state(struct m_can_classdev *cdev)
TCAN4X5X_DISABLE_INH_MSK, 0x01);
}
-static int tcan4x5x_parse_config(struct m_can_classdev *cdev)
+static int tcan4x5x_get_gpios(struct m_can_classdev *cdev)
{
struct tcan4x5x_priv *tcan4x5x = cdev->device_data;
int ret;
@@ -507,7 +507,7 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
if (ret)
return ret;
- ret = tcan4x5x_parse_config(mcan_class);
+ ret = tcan4x5x_get_gpios(mcan_class);
if (ret)
goto out_power;
--
2.25.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH can-next 2/2] net: m_can: Fix freeing of can device from peripherials
2020-02-27 18:38 ` Dan Murphy
@ 2020-02-27 18:38 ` Dan Murphy
-1 siblings, 0 replies; 7+ messages in thread
From: Dan Murphy @ 2020-02-27 18:38 UTC (permalink / raw)
To: mkl, wg; +Cc: linux-can, linux-kernel, Dan Murphy
Fix leaking netdev device from peripherial devices. The call to
allocate the netdev device is made from and managed by the peripherial.
Create a common function that peripherials can call to free the netdev
device when failures occur.
Fixes: d42f4e1d06d9 ("can: m_can: Create a m_can platform framework")
Reported-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Dan Murphy <dmurphy@ti.com>
---
drivers/net/can/m_can/m_can.c | 9 ++++---
drivers/net/can/m_can/m_can.h | 2 ++
drivers/net/can/m_can/m_can_platform.c | 21 ++++++++++------
drivers/net/can/m_can/tcan4x5x.c | 35 ++++++++++++++++----------
4 files changed, 43 insertions(+), 24 deletions(-)
diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c
index 5794be1ef3ef..b1eca4aa59f8 100644
--- a/drivers/net/can/m_can/m_can.c
+++ b/drivers/net/can/m_can/m_can.c
@@ -1796,6 +1796,12 @@ struct m_can_classdev *m_can_class_allocate_dev(struct device *dev)
}
EXPORT_SYMBOL_GPL(m_can_class_allocate_dev);
+void m_can_class_free_dev(struct net_device *net)
+{
+ free_candev(net);
+}
+EXPORT_SYMBOL_GPL(m_can_class_free_dev);
+
int m_can_class_register(struct m_can_classdev *m_can_dev)
{
int ret;
@@ -1834,7 +1840,6 @@ int m_can_class_register(struct m_can_classdev *m_can_dev)
if (ret) {
if (m_can_dev->pm_clock_support)
pm_runtime_disable(m_can_dev->dev);
- free_candev(m_can_dev->net);
}
return ret;
@@ -1892,8 +1897,6 @@ void m_can_class_unregister(struct m_can_classdev *m_can_dev)
unregister_candev(m_can_dev->net);
m_can_clk_stop(m_can_dev);
-
- free_candev(m_can_dev->net);
}
EXPORT_SYMBOL_GPL(m_can_class_unregister);
diff --git a/drivers/net/can/m_can/m_can.h b/drivers/net/can/m_can/m_can.h
index c20a716b14cc..fa6dba3a893c 100644
--- a/drivers/net/can/m_can/m_can.h
+++ b/drivers/net/can/m_can/m_can.h
@@ -97,6 +97,7 @@ struct m_can_classdev {
};
struct m_can_classdev *m_can_class_allocate_dev(struct device *dev);
+void m_can_class_free_dev(struct net_device *net);
int m_can_class_register(struct m_can_classdev *cdev);
void m_can_class_unregister(struct m_can_classdev *cdev);
void m_can_init_ram(struct m_can_classdev *priv);
@@ -104,4 +105,5 @@ void m_can_config_endisable(struct m_can_classdev *priv, bool enable);
int m_can_class_suspend(struct device *dev);
int m_can_class_resume(struct device *dev);
+
#endif /* _CAN_M_H_ */
diff --git a/drivers/net/can/m_can/m_can_platform.c b/drivers/net/can/m_can/m_can_platform.c
index 8bd459317eba..275f87931529 100644
--- a/drivers/net/can/m_can/m_can_platform.c
+++ b/drivers/net/can/m_can/m_can_platform.c
@@ -86,34 +86,36 @@ static int m_can_plat_probe(struct platform_device *pdev)
return -ENOMEM;
priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
- if (!priv)
- return -ENOMEM;
+ if (!priv) {
+ ret = -ENOMEM;
+ goto probe_fail;
+ }
mcan_class->device_data = priv;
ret = m_can_plat_get_clocks(priv, mcan_class);
if (ret)
- return ret;
+ goto probe_fail;
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "m_can");
addr = devm_ioremap_resource(&pdev->dev, res);
irq = platform_get_irq_byname(pdev, "int0");
if (IS_ERR(addr) || irq < 0) {
ret = -EINVAL;
- goto failed_ret;
+ goto probe_fail;
}
/* message ram could be shared */
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "message_ram");
if (!res) {
ret = -ENODEV;
- goto failed_ret;
+ goto probe_fail;
}
mram_addr = devm_ioremap(&pdev->dev, res->start, resource_size(res));
if (!mram_addr) {
ret = -ENOMEM;
- goto failed_ret;
+ goto probe_fail;
}
priv->base = addr;
@@ -132,9 +134,10 @@ static int m_can_plat_probe(struct platform_device *pdev)
m_can_init_ram(mcan_class);
- ret = m_can_class_register(mcan_class);
+ return m_can_class_register(mcan_class);
-failed_ret:
+probe_fail:
+ m_can_class_free_dev(mcan_class->net);
return ret;
}
@@ -155,6 +158,8 @@ static int m_can_plat_remove(struct platform_device *pdev)
m_can_class_unregister(mcan_class);
+ m_can_class_free_dev(mcan_class->net);
+
platform_set_drvdata(pdev, NULL);
return 0;
diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c
index 37d53ecc560b..0b6acc3caf25 100644
--- a/drivers/net/can/m_can/tcan4x5x.c
+++ b/drivers/net/can/m_can/tcan4x5x.c
@@ -463,20 +463,26 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
return -ENOMEM;
priv = devm_kzalloc(&spi->dev, sizeof(*priv), GFP_KERNEL);
- if (!priv)
- return -ENOMEM;
+ if (!priv) {
+ ret = -ENOMEM;
+ goto probe_fail;
+ }
priv->power = devm_regulator_get_optional(&spi->dev, "vsup");
- if (PTR_ERR(priv->power) == -EPROBE_DEFER)
- return -EPROBE_DEFER;
- else
+ if (PTR_ERR(priv->power) == -EPROBE_DEFER) {
+ ret = -EPROBE_DEFER;
+ goto probe_fail;
+ } else {
priv->power = NULL;
+ }
mcan_class->device_data = priv;
freq = tcan4x5x_get_clock(priv, mcan_class);
- if (freq < 0)
- return freq;
+ if (freq < 0) {
+ ret = -EINVAL;
+ goto probe_fail;
+ }
priv->reg_offset = TCAN4X5X_MCAN_OFFSET;
priv->mram_start = TCAN4X5X_MRAM_START;
@@ -498,32 +504,33 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
spi->bits_per_word = 32;
ret = spi_setup(spi);
if (ret)
- return ret;
+ goto probe_fail;
priv->regmap = devm_regmap_init(&spi->dev, &tcan4x5x_bus,
&spi->dev, &tcan4x5x_regmap);
ret = tcan4x5x_power_enable(priv->power, 1);
if (ret)
- return ret;
+ goto probe_fail;
ret = tcan4x5x_get_gpios(mcan_class);
if (ret)
- goto out_power;
+ goto probe_fail;
ret = tcan4x5x_init(mcan_class);
if (ret)
- goto out_power;
+ goto probe_fail;
ret = m_can_class_register(mcan_class);
if (ret)
- goto out_power;
+ goto probe_fail;
netdev_info(mcan_class->net, "TCAN4X5X successfully initialized.\n");
return 0;
-out_power:
+probe_fail:
tcan4x5x_power_enable(priv->power, 0);
+ m_can_class_free_dev(mcan_class->net);
dev_err(&spi->dev, "Probe failed, err=%d\n", ret);
return ret;
}
@@ -536,6 +543,8 @@ static int tcan4x5x_can_remove(struct spi_device *spi)
m_can_class_unregister(priv->mcan_dev);
+ m_can_class_free_dev(priv->mcan_dev->net);
+
return 0;
}
--
2.25.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH can-next 2/2] net: m_can: Fix freeing of can device from peripherials
@ 2020-02-27 18:38 ` Dan Murphy
0 siblings, 0 replies; 7+ messages in thread
From: Dan Murphy @ 2020-02-27 18:38 UTC (permalink / raw)
To: mkl, wg; +Cc: linux-can, linux-kernel, Dan Murphy
Fix leaking netdev device from peripherial devices. The call to
allocate the netdev device is made from and managed by the peripherial.
Create a common function that peripherials can call to free the netdev
device when failures occur.
Fixes: d42f4e1d06d9 ("can: m_can: Create a m_can platform framework")
Reported-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Dan Murphy <dmurphy@ti.com>
---
drivers/net/can/m_can/m_can.c | 9 ++++---
drivers/net/can/m_can/m_can.h | 2 ++
drivers/net/can/m_can/m_can_platform.c | 21 ++++++++++------
drivers/net/can/m_can/tcan4x5x.c | 35 ++++++++++++++++----------
4 files changed, 43 insertions(+), 24 deletions(-)
diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c
index 5794be1ef3ef..b1eca4aa59f8 100644
--- a/drivers/net/can/m_can/m_can.c
+++ b/drivers/net/can/m_can/m_can.c
@@ -1796,6 +1796,12 @@ struct m_can_classdev *m_can_class_allocate_dev(struct device *dev)
}
EXPORT_SYMBOL_GPL(m_can_class_allocate_dev);
+void m_can_class_free_dev(struct net_device *net)
+{
+ free_candev(net);
+}
+EXPORT_SYMBOL_GPL(m_can_class_free_dev);
+
int m_can_class_register(struct m_can_classdev *m_can_dev)
{
int ret;
@@ -1834,7 +1840,6 @@ int m_can_class_register(struct m_can_classdev *m_can_dev)
if (ret) {
if (m_can_dev->pm_clock_support)
pm_runtime_disable(m_can_dev->dev);
- free_candev(m_can_dev->net);
}
return ret;
@@ -1892,8 +1897,6 @@ void m_can_class_unregister(struct m_can_classdev *m_can_dev)
unregister_candev(m_can_dev->net);
m_can_clk_stop(m_can_dev);
-
- free_candev(m_can_dev->net);
}
EXPORT_SYMBOL_GPL(m_can_class_unregister);
diff --git a/drivers/net/can/m_can/m_can.h b/drivers/net/can/m_can/m_can.h
index c20a716b14cc..fa6dba3a893c 100644
--- a/drivers/net/can/m_can/m_can.h
+++ b/drivers/net/can/m_can/m_can.h
@@ -97,6 +97,7 @@ struct m_can_classdev {
};
struct m_can_classdev *m_can_class_allocate_dev(struct device *dev);
+void m_can_class_free_dev(struct net_device *net);
int m_can_class_register(struct m_can_classdev *cdev);
void m_can_class_unregister(struct m_can_classdev *cdev);
void m_can_init_ram(struct m_can_classdev *priv);
@@ -104,4 +105,5 @@ void m_can_config_endisable(struct m_can_classdev *priv, bool enable);
int m_can_class_suspend(struct device *dev);
int m_can_class_resume(struct device *dev);
+
#endif /* _CAN_M_H_ */
diff --git a/drivers/net/can/m_can/m_can_platform.c b/drivers/net/can/m_can/m_can_platform.c
index 8bd459317eba..275f87931529 100644
--- a/drivers/net/can/m_can/m_can_platform.c
+++ b/drivers/net/can/m_can/m_can_platform.c
@@ -86,34 +86,36 @@ static int m_can_plat_probe(struct platform_device *pdev)
return -ENOMEM;
priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
- if (!priv)
- return -ENOMEM;
+ if (!priv) {
+ ret = -ENOMEM;
+ goto probe_fail;
+ }
mcan_class->device_data = priv;
ret = m_can_plat_get_clocks(priv, mcan_class);
if (ret)
- return ret;
+ goto probe_fail;
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "m_can");
addr = devm_ioremap_resource(&pdev->dev, res);
irq = platform_get_irq_byname(pdev, "int0");
if (IS_ERR(addr) || irq < 0) {
ret = -EINVAL;
- goto failed_ret;
+ goto probe_fail;
}
/* message ram could be shared */
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "message_ram");
if (!res) {
ret = -ENODEV;
- goto failed_ret;
+ goto probe_fail;
}
mram_addr = devm_ioremap(&pdev->dev, res->start, resource_size(res));
if (!mram_addr) {
ret = -ENOMEM;
- goto failed_ret;
+ goto probe_fail;
}
priv->base = addr;
@@ -132,9 +134,10 @@ static int m_can_plat_probe(struct platform_device *pdev)
m_can_init_ram(mcan_class);
- ret = m_can_class_register(mcan_class);
+ return m_can_class_register(mcan_class);
-failed_ret:
+probe_fail:
+ m_can_class_free_dev(mcan_class->net);
return ret;
}
@@ -155,6 +158,8 @@ static int m_can_plat_remove(struct platform_device *pdev)
m_can_class_unregister(mcan_class);
+ m_can_class_free_dev(mcan_class->net);
+
platform_set_drvdata(pdev, NULL);
return 0;
diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c
index 37d53ecc560b..0b6acc3caf25 100644
--- a/drivers/net/can/m_can/tcan4x5x.c
+++ b/drivers/net/can/m_can/tcan4x5x.c
@@ -463,20 +463,26 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
return -ENOMEM;
priv = devm_kzalloc(&spi->dev, sizeof(*priv), GFP_KERNEL);
- if (!priv)
- return -ENOMEM;
+ if (!priv) {
+ ret = -ENOMEM;
+ goto probe_fail;
+ }
priv->power = devm_regulator_get_optional(&spi->dev, "vsup");
- if (PTR_ERR(priv->power) == -EPROBE_DEFER)
- return -EPROBE_DEFER;
- else
+ if (PTR_ERR(priv->power) == -EPROBE_DEFER) {
+ ret = -EPROBE_DEFER;
+ goto probe_fail;
+ } else {
priv->power = NULL;
+ }
mcan_class->device_data = priv;
freq = tcan4x5x_get_clock(priv, mcan_class);
- if (freq < 0)
- return freq;
+ if (freq < 0) {
+ ret = -EINVAL;
+ goto probe_fail;
+ }
priv->reg_offset = TCAN4X5X_MCAN_OFFSET;
priv->mram_start = TCAN4X5X_MRAM_START;
@@ -498,32 +504,33 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
spi->bits_per_word = 32;
ret = spi_setup(spi);
if (ret)
- return ret;
+ goto probe_fail;
priv->regmap = devm_regmap_init(&spi->dev, &tcan4x5x_bus,
&spi->dev, &tcan4x5x_regmap);
ret = tcan4x5x_power_enable(priv->power, 1);
if (ret)
- return ret;
+ goto probe_fail;
ret = tcan4x5x_get_gpios(mcan_class);
if (ret)
- goto out_power;
+ goto probe_fail;
ret = tcan4x5x_init(mcan_class);
if (ret)
- goto out_power;
+ goto probe_fail;
ret = m_can_class_register(mcan_class);
if (ret)
- goto out_power;
+ goto probe_fail;
netdev_info(mcan_class->net, "TCAN4X5X successfully initialized.\n");
return 0;
-out_power:
+probe_fail:
tcan4x5x_power_enable(priv->power, 0);
+ m_can_class_free_dev(mcan_class->net);
dev_err(&spi->dev, "Probe failed, err=%d\n", ret);
return ret;
}
@@ -536,6 +543,8 @@ static int tcan4x5x_can_remove(struct spi_device *spi)
m_can_class_unregister(priv->mcan_dev);
+ m_can_class_free_dev(priv->mcan_dev->net);
+
return 0;
}
--
2.25.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [RESEND PATCH can-next 1/2] can: tcan4x5x: Rename parse_config function
2020-02-27 18:38 ` Dan Murphy
@ 2020-04-28 19:48 ` Dan Murphy
-1 siblings, 0 replies; 7+ messages in thread
From: Dan Murphy @ 2020-04-28 19:48 UTC (permalink / raw)
To: mkl, wg; +Cc: linux-can, linux-kernel
Marc
On 2/27/20 12:38 PM, Dan Murphy wrote:
> Rename the tcan4x5x_parse_config function to tcan4x5x_get_gpios since
> the function retrieves the gpio configurations from the firmware.
>
> Signed-off-by: Dan Murphy <dmurphy@ti.com>
> ---
> drivers/net/can/m_can/tcan4x5x.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c
> index 9821babef55e..37d53ecc560b 100644
> --- a/drivers/net/can/m_can/tcan4x5x.c
> +++ b/drivers/net/can/m_can/tcan4x5x.c
> @@ -381,7 +381,7 @@ static int tcan4x5x_disable_state(struct m_can_classdev *cdev)
> TCAN4X5X_DISABLE_INH_MSK, 0x01);
> }
>
> -static int tcan4x5x_parse_config(struct m_can_classdev *cdev)
> +static int tcan4x5x_get_gpios(struct m_can_classdev *cdev)
> {
> struct tcan4x5x_priv *tcan4x5x = cdev->device_data;
> int ret;
> @@ -507,7 +507,7 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
> if (ret)
> return ret;
>
> - ret = tcan4x5x_parse_config(mcan_class);
> + ret = tcan4x5x_get_gpios(mcan_class);
> if (ret)
> goto out_power;
>
I noticed this series never was reviewed and applied. They are still
applicable and were requested changes.
Dan
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [RESEND PATCH can-next 1/2] can: tcan4x5x: Rename parse_config function
@ 2020-04-28 19:48 ` Dan Murphy
0 siblings, 0 replies; 7+ messages in thread
From: Dan Murphy @ 2020-04-28 19:48 UTC (permalink / raw)
To: mkl, wg; +Cc: linux-can, linux-kernel
Marc
On 2/27/20 12:38 PM, Dan Murphy wrote:
> Rename the tcan4x5x_parse_config function to tcan4x5x_get_gpios since
> the function retrieves the gpio configurations from the firmware.
>
> Signed-off-by: Dan Murphy <dmurphy@ti.com>
> ---
> drivers/net/can/m_can/tcan4x5x.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/can/m_can/tcan4x5x.c b/drivers/net/can/m_can/tcan4x5x.c
> index 9821babef55e..37d53ecc560b 100644
> --- a/drivers/net/can/m_can/tcan4x5x.c
> +++ b/drivers/net/can/m_can/tcan4x5x.c
> @@ -381,7 +381,7 @@ static int tcan4x5x_disable_state(struct m_can_classdev *cdev)
> TCAN4X5X_DISABLE_INH_MSK, 0x01);
> }
>
> -static int tcan4x5x_parse_config(struct m_can_classdev *cdev)
> +static int tcan4x5x_get_gpios(struct m_can_classdev *cdev)
> {
> struct tcan4x5x_priv *tcan4x5x = cdev->device_data;
> int ret;
> @@ -507,7 +507,7 @@ static int tcan4x5x_can_probe(struct spi_device *spi)
> if (ret)
> return ret;
>
> - ret = tcan4x5x_parse_config(mcan_class);
> + ret = tcan4x5x_get_gpios(mcan_class);
> if (ret)
> goto out_power;
>
I noticed this series never was reviewed and applied. They are still
applicable and were requested changes.
Dan
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [RESEND PATCH can-next 1/2] can: tcan4x5x: Rename parse_config function
2020-04-28 19:48 ` Dan Murphy
(?)
@ 2020-09-23 18:06 ` Dan Murphy
-1 siblings, 0 replies; 7+ messages in thread
From: Dan Murphy @ 2020-09-23 18:06 UTC (permalink / raw)
To: mkl, wg; +Cc: linux-can, linux-kernel
Mark and Wolfgang
On 4/28/20 2:48 PM, Dan Murphy wrote:
> Marc
>
> On 2/27/20 12:38 PM, Dan Murphy wrote:
>> Rename the tcan4x5x_parse_config function to tcan4x5x_get_gpios since
>> the function retrieves the gpio configurations from the firmware.
>>
>> Signed-off-by: Dan Murphy <dmurphy@ti.com>
>> ---
>> drivers/net/can/m_can/tcan4x5x.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/net/can/m_can/tcan4x5x.c
>> b/drivers/net/can/m_can/tcan4x5x.c
>> index 9821babef55e..37d53ecc560b 100644
>> --- a/drivers/net/can/m_can/tcan4x5x.c
>> +++ b/drivers/net/can/m_can/tcan4x5x.c
>> @@ -381,7 +381,7 @@ static int tcan4x5x_disable_state(struct
>> m_can_classdev *cdev)
>> TCAN4X5X_DISABLE_INH_MSK, 0x01);
>> }
>> -static int tcan4x5x_parse_config(struct m_can_classdev *cdev)
>> +static int tcan4x5x_get_gpios(struct m_can_classdev *cdev)
>> {
>> struct tcan4x5x_priv *tcan4x5x = cdev->device_data;
>> int ret;
>> @@ -507,7 +507,7 @@ static int tcan4x5x_can_probe(struct spi_device
>> *spi)
>> if (ret)
>> return ret;
>> - ret = tcan4x5x_parse_config(mcan_class);
>> + ret = tcan4x5x_get_gpios(mcan_class);
>> if (ret)
>> goto out_power;
>
> I noticed this series never was reviewed and applied. They are still
> applicable and were requested changes.
>
Did you need me to combine all the patches on a m_can-next branch and
submit a PR after test?
There are quite a few patches out there and they all seem relevant.
Dan
> Dan
>
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-09-23 18:06 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-27 18:38 [RESEND PATCH can-next 1/2] can: tcan4x5x: Rename parse_config function Dan Murphy
2020-02-27 18:38 ` Dan Murphy
2020-02-27 18:38 ` [PATCH can-next 2/2] net: m_can: Fix freeing of can device from peripherials Dan Murphy
2020-02-27 18:38 ` Dan Murphy
2020-04-28 19:48 ` [RESEND PATCH can-next 1/2] can: tcan4x5x: Rename parse_config function Dan Murphy
2020-04-28 19:48 ` Dan Murphy
2020-09-23 18:06 ` Dan Murphy
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.