diff mbox series

[v2,16/46] mfd: ti_am335x_tscadc: Move the driver structure allocation earlier

Message ID 20210902215144.507243-17-miquel.raynal@bootlin.com
State Superseded
Headers show
Series TI AM437X ADC1 | expand

Commit Message

Miquel Raynal Sept. 2, 2021, 9:51 p.m. UTC
Allocating the driver structure should be done earlier in the probe so
that we can used its members from the beginning.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
---
 drivers/mfd/ti_am335x_tscadc.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

Comments

Jonathan Cameron Sept. 5, 2021, 12:09 p.m. UTC | #1
On Thu,  2 Sep 2021 23:51:14 +0200
Miquel Raynal <miquel.raynal@bootlin.com> wrote:

> Allocating the driver structure should be done earlier in the probe so

> that we can used its members from the beginning.

> 

> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>


> ---

>  drivers/mfd/ti_am335x_tscadc.c | 14 +++++++-------

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

> 

> diff --git a/drivers/mfd/ti_am335x_tscadc.c b/drivers/mfd/ti_am335x_tscadc.c

> index fca58e78abb2..ea52d8523524 100644

> --- a/drivers/mfd/ti_am335x_tscadc.c

> +++ b/drivers/mfd/ti_am335x_tscadc.c

> @@ -125,6 +125,13 @@ static	int ti_tscadc_probe(struct platform_device *pdev)

>  	int tsc_wires = 0, adc_channels = 0, total_channels;

>  	int readouts = 0;

>  

> +	/* Allocate memory for device */

> +	tscadc = devm_kzalloc(&pdev->dev, sizeof(*tscadc), GFP_KERNEL);

> +	if (!tscadc)

> +		return -ENOMEM;

> +

> +	tscadc->dev = &pdev->dev;

> +

>  	if (!pdev->dev.of_node) {

>  		dev_err(&pdev->dev, "Could not find valid DT data.\n");

>  		return -EINVAL;

> @@ -164,13 +171,6 @@ static	int ti_tscadc_probe(struct platform_device *pdev)

>  		return -EINVAL;

>  	}

>  

> -	/* Allocate memory for device */

> -	tscadc = devm_kzalloc(&pdev->dev, sizeof(*tscadc), GFP_KERNEL);

> -	if (!tscadc)

> -		return -ENOMEM;

> -

> -	tscadc->dev = &pdev->dev;

> -

>  	err = platform_get_irq(pdev, 0);

>  	if (err < 0) {

>  		dev_err(&pdev->dev, "no irq ID is specified.\n");
diff mbox series

Patch

diff --git a/drivers/mfd/ti_am335x_tscadc.c b/drivers/mfd/ti_am335x_tscadc.c
index fca58e78abb2..ea52d8523524 100644
--- a/drivers/mfd/ti_am335x_tscadc.c
+++ b/drivers/mfd/ti_am335x_tscadc.c
@@ -125,6 +125,13 @@  static	int ti_tscadc_probe(struct platform_device *pdev)
 	int tsc_wires = 0, adc_channels = 0, total_channels;
 	int readouts = 0;
 
+	/* Allocate memory for device */
+	tscadc = devm_kzalloc(&pdev->dev, sizeof(*tscadc), GFP_KERNEL);
+	if (!tscadc)
+		return -ENOMEM;
+
+	tscadc->dev = &pdev->dev;
+
 	if (!pdev->dev.of_node) {
 		dev_err(&pdev->dev, "Could not find valid DT data.\n");
 		return -EINVAL;
@@ -164,13 +171,6 @@  static	int ti_tscadc_probe(struct platform_device *pdev)
 		return -EINVAL;
 	}
 
-	/* Allocate memory for device */
-	tscadc = devm_kzalloc(&pdev->dev, sizeof(*tscadc), GFP_KERNEL);
-	if (!tscadc)
-		return -ENOMEM;
-
-	tscadc->dev = &pdev->dev;
-
 	err = platform_get_irq(pdev, 0);
 	if (err < 0) {
 		dev_err(&pdev->dev, "no irq ID is specified.\n");