[<prev] [next>] [day] [month] [year] [list]
Message-id: <23795036.212591374482218972.JavaMail.weblogic@epml23>
Date: Mon, 22 Jul 2013 08:37:02 +0000 (GMT)
From: NAVEEN KRISHNA CHATRADHI <ch.naveen@...sung.com>
To: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Cc: Rob Herring <rob.herring@...xeda.com>,
Grant Likely <grant.likely@...aro.org>,
"linux-omap@...r.kernel.org" <linux-omap@...r.kernel.org>,
"linux-samsung-soc@...r.kernel.org"
<linux-samsung-soc@...r.kernel.org>,
"devicetree-discuss@...ts.ozlabs.org"
<devicetree-discuss@...ts.ozlabs.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Tony Lindgren <tony@...mide.com>,
Doug Anderson <dianders@...omium.org>,
Vivek Gautam <gautam.vivek@...sung.com>,
Kukjin Kim <kgene.kim@...sung.com>,
Kishon Vijay Abraham I <kishon@...com>,
Roger Quadros <rogerq@...com>,
George Cherian <george.cherian@...com>,
Felipe Balbi <balbi@...com>
Subject: Re: Re: [PATCH] of: provide of_platform_unpopulate()
Hello Sebastian,
------- Original Message -------
Sender : Sebastian Andrzej Siewior<bigeasy@...utronix.de>
Date : Jul 22, 2013 13:55 (GMT+05:30)
Title : Re: [PATCH] of: provide of_platform_unpopulate()
On 07/20/2013 07:42 AM, NAVEEN KRISHNA CHATRADHI wrote:
> Hello Sebastian,
Hello Naveen,
>
> I just did one more testing.
>
> In case of iio/adc/exynos_adc.c there is a bug in the remove path.
> If I fix the bug in the driver, with below patch
>
> --- a/drivers/iio/adc/exynos_adc.c
> +++ b/drivers/iio/adc/exynos_adc.c
> @@ -375,14 +375,14 @@ static int exynos_adc_remove(struct platform_device *pdev)
> struct iio_dev *indio_dev = platform_get_drvdata(pdev);
> struct exynos_adc *info = iio_priv(indio_dev);
>
> - device_for_each_child(&pdev->dev, NULL,
> - exynos_adc_remove_devices);
> regulator_disable(info->vdd);
> clk_disable_unprepare(info->clk);
> writel(0, info->enable_reg);
> iio_device_unregister(indio_dev);
> free_irq(info->irq, info);
> iio_device_free(indio_dev);
> + device_for_each_child(&pdev->dev, NULL,
> + exynos_adc_remove_devices);
>
> Even without your fix, I could configure it as a module and the rmmod, insmod are working fine. (no crash)
I have no idea why you moved it. I haven't found any .dts with this
regulator_disable(info->vdd);
has to happen before we free and remove the devices.
The dts part is not upstreamed yet.
binding but from the binding document I would assume that you do not
have any memory resources and therefore you don't see that crash.
Yes, my devices under ADC are 3rd party thermistors and they don't have memory resources.
May be your explanation seems right.
Thanks,
Naveen
> Regards,
> Naveen
Sebastian
Powered by blists - more mailing lists