Re: [rtc-linux] [PATCH-v2] rtc: 88pm80x: add device tree support

2015-07-06 Thread Vaibhav Hiremath



On Thursday 25 June 2015 01:16 PM, Vaibhav Hiremath wrote:



On Saturday 20 June 2015 06:13 AM, Alexandre Belloni wrote:

Hi,



Sorry I missed this email.
Just wanted to send reminder email and saw this :)


On 18/06/2015 at 00:28:06 +0530, Vaibhav Hiremath wrote :

-pdata = dev_get_platdata(&pdev->dev);
-if (pdata == NULL)
-dev_warn(&pdev->dev, "No platform data!\n");
+if (!pdata && !node) {
+dev_err(&pdev->dev,
+"pm80x-rtc requires platform data or of_node\n");
+return -EINVAL;
+}
+
+if (!pdata) {
+pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);


I had troubles to follow the rtc_wakeup initialization cleanup but it
seems OK.


Probably, once we have complete PM support ready then it would be
easier to understand. I think as of now lets have this minimal code for
rtc_wakeup.


However, I'm wondering why you are adding DT support as this
will always be probed from the MFD driver which pass the platform_data
and avoids that allocation.



You are right.

Originally, it was cleanup patch,

  - remove pm80x_pdata
  - Add check for pdata and np
  - and around rtc_wakeup

While doing that I added this nice to have allocation.



Any update/feedback on this?

Thanks,
Vaibhav
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [rtc-linux] [PATCH-v2] rtc: 88pm80x: add device tree support

2015-06-25 Thread Vaibhav Hiremath



On Saturday 20 June 2015 06:13 AM, Alexandre Belloni wrote:

Hi,



Sorry I missed this email.
Just wanted to send reminder email and saw this :)


On 18/06/2015 at 00:28:06 +0530, Vaibhav Hiremath wrote :

-   pdata = dev_get_platdata(&pdev->dev);
-   if (pdata == NULL)
-   dev_warn(&pdev->dev, "No platform data!\n");
+   if (!pdata && !node) {
+   dev_err(&pdev->dev,
+   "pm80x-rtc requires platform data or of_node\n");
+   return -EINVAL;
+   }
+
+   if (!pdata) {
+   pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);


I had troubles to follow the rtc_wakeup initialization cleanup but it
seems OK.


Probably, once we have complete PM support ready then it would be
easier to understand. I think as of now lets have this minimal code for
rtc_wakeup.


However, I'm wondering why you are adding DT support as this
will always be probed from the MFD driver which pass the platform_data
and avoids that allocation.



You are right.

Originally, it was cleanup patch,

 - remove pm80x_pdata
 - Add check for pdata and np
 - and around rtc_wakeup

While doing that I added this nice to have allocation.

Thanks,
Vaibhav
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [rtc-linux] [PATCH-v2] rtc: 88pm80x: add device tree support

2015-06-19 Thread Alexandre Belloni
Hi,

On 18/06/2015 at 00:28:06 +0530, Vaibhav Hiremath wrote :
> - pdata = dev_get_platdata(&pdev->dev);
> - if (pdata == NULL)
> - dev_warn(&pdev->dev, "No platform data!\n");
> + if (!pdata && !node) {
> + dev_err(&pdev->dev,
> + "pm80x-rtc requires platform data or of_node\n");
> + return -EINVAL;
> + }
> +
> + if (!pdata) {
> + pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);

I had troubles to follow the rtc_wakeup initialization cleanup but it
seems OK. However, I'm wondering why you are adding DT support as this
will always be probed from the MFD driver which pass the platform_data
and avoids that allocation.

> + if (!pdata) {
> + dev_err(&pdev->dev, "failed to allocate memory\n");
> + return -ENOMEM;
> + }
> + }
>  
>   info =
>   devm_kzalloc(&pdev->dev, sizeof(struct pm80x_rtc_info), GFP_KERNEL);
> @@ -327,11 +336,8 @@ static int pm80x_rtc_probe(struct platform_device *pdev)
>   regmap_update_bits(info->map, PM800_RTC_CONTROL, PM800_RTC1_USE_XO,
>  PM800_RTC1_USE_XO);
>  
> - if (pm80x_pdata) {
> - pdata = pm80x_pdata->rtc;
> - if (pdata)
> - info->rtc_dev->dev.platform_data = &pdata->rtc_wakeup;
> - }
> + /* remeber whether this power up is caused by PMIC RTC or not */
remember -^


-- 
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at  http://www.tux.org/lkml/