On Thu, 2 Sep 2021 23:51:14 +0200 Miquel Raynal <miquel.raynal@xxxxxxxxxxx> 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@xxxxxxxxxxx> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > --- > 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");