Re: [PATCH v4 5/8] MFD: ti_am335x_tscadc: Add DT support

2013-04-29 Thread Jan Lübbe
On Wed, 2013-02-06 at 11:17 +, Patil, Rachna wrote:
   Can you share the branch which you have tested?
  
  https://github.com/patilrachna/linux/tree/v3.8_rc3_MFD_TSCADC_DT-v2
 
 Did you get a chance to test this branch?
 And can you also share your branch, on which you observed the issue.

Rachana,

I have not seen a new version of this patch since January. Are you still
working on the TSCADC? If not, where can I find the most recent version?

Regards,
Jan

-- 
Pengutronix e.K.   | |
Industrial Linux Solutions | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0|
Amtsgericht Hildesheim, HRA 2686   | Fax:   +49-5121-206917- |

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v4 5/8] MFD: ti_am335x_tscadc: Add DT support

2013-02-06 Thread Patil, Rachna
Hi Koen,

 SNIP
Since AM335x is DT only, why is there a platform data codepath and why 
is it the first branch it tries? And I guess the next question is 
related to the first: why doesn't it work when used with DT? When I 
copy over the nodes from the evm.dts to my board I get tsc tsc: 
Missing platform data in dmesg.
   
   This IP came up 1st on AM335x, but it is not platform dependent. The 
   driver can be used on other platforms where-in DT is not supported.
   According to the maintainers platform data takes precedence over DT. 
   Hence the order.
   
  
  Rachana,
  
  I see no point adding support for platform_data when you know that none of 
  older platforms are going to use this driver and all future platforms 
  _must_ follow device-tree model.
  
  So I agree that you should remove board file dependency from the driver.
 
 Ok. I will remove support for platform data in the next version of patches.
 
  
  
   I do not see Missing platform data error msg in the latest driver. I am 
   not able to trace from where this got populated.
   
  
  Can you share the branch which you have tested?
 
 https://github.com/patilrachna/linux/tree/v3.8_rc3_MFD_TSCADC_DT-v2

Did you get a chance to test this branch?
And can you also share your branch, on which you observed the issue.

Regards,
Rachna

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v4 5/8] MFD: ti_am335x_tscadc: Add DT support

2013-01-31 Thread Patil, Rachna
Vaibhav,

SNIP

-   if (!pdata) {
+   if (!pdata  !pdev-dev.of_node) {
dev_err(pdev-dev, Could not find platform data\n);
return -EINVAL;
}

-   if (pdata-adc_init)
-   adc_channels = pdata-adc_init-adc_channels;
+   if (pdev-dev.platform_data) {
+   if (pdata-tsc_init)
+   tsc_wires = pdata-tsc_init-wires;
+
+   if (pdata-adc_init)
+   adc_channels = pdata-adc_init-adc_channels;
+   } else {
+   node = of_find_node_by_name(pdev-dev.of_node, tsc);
+   of_property_read_u32(node, ti,wires, tsc_wires);
+
+   node = of_find_node_by_name(pdev-dev.of_node, adc);
+   of_property_read_u32(node, ti,adc-channels, 
adc_channels);
+   }
   
   Since AM335x is DT only, why is there a platform data codepath and why is 
   it the first branch it tries? And I guess the next question is related to 
   the first: why doesn't it work when used with DT? When I copy over the 
   nodes from the evm.dts to my board I get tsc tsc: Missing platform data 
   in dmesg.
  
  This IP came up 1st on AM335x, but it is not platform dependent. The driver 
  can be used on other platforms where-in DT is not supported.
  According to the maintainers platform data takes precedence over DT. Hence 
  the order.
  
 
 Rachana,
 
 I see no point adding support for platform_data when you know that none of 
 older platforms are going to use this driver and all future platforms _must_ 
 follow device-tree model.
 
 So I agree that you should remove board file dependency from the driver.

Ok. I will remove support for platform data in the next version of patches.

 
 
  I do not see Missing platform data error msg in the latest driver. I am 
  not able to trace from where this got populated.
  
 
 Can you share the branch which you have tested?

https://github.com/patilrachna/linux/tree/v3.8_rc3_MFD_TSCADC_DT-v2

Regards,
Rachna


--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v4 5/8] MFD: ti_am335x_tscadc: Add DT support

2013-01-30 Thread Koen Kooi

Op 24 jan. 2013, om 04:45 heeft Patil, Rachna rac...@ti.com het volgende 
geschreven:

 From: Patil, Rachna rac...@ti.com
 
 Make changes to add DT support in the MFD core driver.
 
 Signed-off-by: Patil, Rachna rac...@ti.com
 ---
 Changes in v4:
   Non-standard properties prefixed with vendor name.
 
 drivers/mfd/ti_am335x_tscadc.c |   28 +++-
 1 file changed, 23 insertions(+), 5 deletions(-)
 
 diff --git a/drivers/mfd/ti_am335x_tscadc.c b/drivers/mfd/ti_am335x_tscadc.c
 index e9f3fb5..87b446b 100644
 --- a/drivers/mfd/ti_am335x_tscadc.c
 +++ b/drivers/mfd/ti_am335x_tscadc.c
 @@ -22,6 +22,8 @@
 #include linux/regmap.h
 #include linux/mfd/core.h
 #include linux/pm_runtime.h
 +#include linux/of.h
 +#include linux/of_device.h
 
 #include linux/mfd/ti_am335x_tscadc.h
 #include linux/input/ti_am335x_tsc.h
 @@ -64,20 +66,31 @@ staticint ti_tscadc_probe(struct platform_device 
 *pdev)
   struct resource *res;
   struct clk  *clk;
   struct mfd_tscadc_board *pdata = pdev-dev.platform_data;
 + struct device_node  *node = pdev-dev.of_node;
   struct mfd_cell *cell;
   int err, ctrl;
   int clk_value, clock_rate;
 - int tsc_wires, adc_channels = 0, total_channels;
 + int tsc_wires = 0, adc_channels = 0, total_channels;
 
 - if (!pdata) {
 + if (!pdata  !pdev-dev.of_node) {
   dev_err(pdev-dev, Could not find platform data\n);
   return -EINVAL;
   }
 
 - if (pdata-adc_init)
 - adc_channels = pdata-adc_init-adc_channels;
 + if (pdev-dev.platform_data) {
 + if (pdata-tsc_init)
 + tsc_wires = pdata-tsc_init-wires;
 +
 + if (pdata-adc_init)
 + adc_channels = pdata-adc_init-adc_channels;
 + } else {
 + node = of_find_node_by_name(pdev-dev.of_node, tsc);
 + of_property_read_u32(node, ti,wires, tsc_wires);
 +
 + node = of_find_node_by_name(pdev-dev.of_node, adc);
 + of_property_read_u32(node, ti,adc-channels, adc_channels);
 + }

Since AM335x is DT only, why is there a platform data codepath and why is it 
the first branch it tries? And I guess the next question is related to the 
first: why doesn't it work when used with DT? When I copy over the nodes from 
the evm.dts to my board I get tsc tsc: Missing platform data in dmesg.

What are the chances this driver will work when applied on top of 3.8-rcX? Has 
it even been tested with that? Has it been tested at all?



--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v4 5/8] MFD: ti_am335x_tscadc: Add DT support

2013-01-30 Thread Patil, Rachna
On Wed, Jan 30, 2013 at 16:10:09, Koen Kooi wrote:
 
 Op 24 jan. 2013, om 04:45 heeft Patil, Rachna rac...@ti.com het volgende 
 geschreven:
 
  From: Patil, Rachna rac...@ti.com
  
  Make changes to add DT support in the MFD core driver.
  
  Signed-off-by: Patil, Rachna rac...@ti.com
  ---
  Changes in v4:
  Non-standard properties prefixed with vendor name.
  
  drivers/mfd/ti_am335x_tscadc.c |   28 +++-
  1 file changed, 23 insertions(+), 5 deletions(-)
  
  diff --git a/drivers/mfd/ti_am335x_tscadc.c 
  b/drivers/mfd/ti_am335x_tscadc.c index e9f3fb5..87b446b 100644
  --- a/drivers/mfd/ti_am335x_tscadc.c
  +++ b/drivers/mfd/ti_am335x_tscadc.c
  @@ -22,6 +22,8 @@
  #include linux/regmap.h
  #include linux/mfd/core.h
  #include linux/pm_runtime.h
  +#include linux/of.h
  +#include linux/of_device.h
  
  #include linux/mfd/ti_am335x_tscadc.h #include 
  linux/input/ti_am335x_tsc.h
  @@ -64,20 +66,31 @@ static  int ti_tscadc_probe(struct platform_device 
  *pdev)
  struct resource *res;
  struct clk  *clk;
  struct mfd_tscadc_board *pdata = pdev-dev.platform_data;
  +   struct device_node  *node = pdev-dev.of_node;
  struct mfd_cell *cell;
  int err, ctrl;
  int clk_value, clock_rate;
  -   int tsc_wires, adc_channels = 0, total_channels;
  +   int tsc_wires = 0, adc_channels = 0, total_channels;
  
  -   if (!pdata) {
  +   if (!pdata  !pdev-dev.of_node) {
  dev_err(pdev-dev, Could not find platform data\n);
  return -EINVAL;
  }
  
  -   if (pdata-adc_init)
  -   adc_channels = pdata-adc_init-adc_channels;
  +   if (pdev-dev.platform_data) {
  +   if (pdata-tsc_init)
  +   tsc_wires = pdata-tsc_init-wires;
  +
  +   if (pdata-adc_init)
  +   adc_channels = pdata-adc_init-adc_channels;
  +   } else {
  +   node = of_find_node_by_name(pdev-dev.of_node, tsc);
  +   of_property_read_u32(node, ti,wires, tsc_wires);
  +
  +   node = of_find_node_by_name(pdev-dev.of_node, adc);
  +   of_property_read_u32(node, ti,adc-channels, adc_channels);
  +   }
 
 Since AM335x is DT only, why is there a platform data codepath and why is it 
 the first branch it tries? And I guess the next question is related to the 
 first: why doesn't it work when used with DT? When I copy over the nodes from 
 the evm.dts to my board I get tsc tsc: Missing platform data in dmesg.

This IP came up 1st on AM335x, but it is not platform dependent. The driver can 
be used on other platforms where-in DT is not supported.
According to the maintainers platform data takes precedence over DT. Hence the 
order.

I do not see Missing platform data error msg in the latest driver. I am not 
able to trace from where this got populated.

 
 What are the chances this driver will work when applied on top of 3.8-rcX? 
 Has it even been tested with that? Has it been tested at all?

This driver has been tested on top of v3.8-rc3 on a AM335x EVM.

Regards,
Rachna

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v4 5/8] MFD: ti_am335x_tscadc: Add DT support

2013-01-30 Thread Hiremath, Vaibhav
On Thu, Jan 31, 2013 at 09:41:11, Patil, Rachna wrote:
 On Wed, Jan 30, 2013 at 16:10:09, Koen Kooi wrote:
  
  Op 24 jan. 2013, om 04:45 heeft Patil, Rachna rac...@ti.com het 
  volgende geschreven:
  
   From: Patil, Rachna rac...@ti.com
   
   Make changes to add DT support in the MFD core driver.
   
   Signed-off-by: Patil, Rachna rac...@ti.com
   ---
   Changes in v4:
 Non-standard properties prefixed with vendor name.
   
   drivers/mfd/ti_am335x_tscadc.c |   28 +++-
   1 file changed, 23 insertions(+), 5 deletions(-)
   
   diff --git a/drivers/mfd/ti_am335x_tscadc.c 
   b/drivers/mfd/ti_am335x_tscadc.c index e9f3fb5..87b446b 100644
   --- a/drivers/mfd/ti_am335x_tscadc.c
   +++ b/drivers/mfd/ti_am335x_tscadc.c
   @@ -22,6 +22,8 @@
   #include linux/regmap.h
   #include linux/mfd/core.h
   #include linux/pm_runtime.h
   +#include linux/of.h
   +#include linux/of_device.h
   
   #include linux/mfd/ti_am335x_tscadc.h #include 
   linux/input/ti_am335x_tsc.h
   @@ -64,20 +66,31 @@ staticint ti_tscadc_probe(struct 
   platform_device *pdev)
 struct resource *res;
 struct clk  *clk;
 struct mfd_tscadc_board *pdata = pdev-dev.platform_data;
   + struct device_node  *node = pdev-dev.of_node;
 struct mfd_cell *cell;
 int err, ctrl;
 int clk_value, clock_rate;
   - int tsc_wires, adc_channels = 0, total_channels;
   + int tsc_wires = 0, adc_channels = 0, total_channels;
   
   - if (!pdata) {
   + if (!pdata  !pdev-dev.of_node) {
 dev_err(pdev-dev, Could not find platform data\n);
 return -EINVAL;
 }
   
   - if (pdata-adc_init)
   - adc_channels = pdata-adc_init-adc_channels;
   + if (pdev-dev.platform_data) {
   + if (pdata-tsc_init)
   + tsc_wires = pdata-tsc_init-wires;
   +
   + if (pdata-adc_init)
   + adc_channels = pdata-adc_init-adc_channels;
   + } else {
   + node = of_find_node_by_name(pdev-dev.of_node, tsc);
   + of_property_read_u32(node, ti,wires, tsc_wires);
   +
   + node = of_find_node_by_name(pdev-dev.of_node, adc);
   + of_property_read_u32(node, ti,adc-channels, adc_channels);
   + }
  
  Since AM335x is DT only, why is there a platform data codepath and why is 
  it the first branch it tries? And I guess the next question is related to 
  the first: why doesn't it work when used with DT? When I copy over the 
  nodes from the evm.dts to my board I get tsc tsc: Missing platform data 
  in dmesg.
 
 This IP came up 1st on AM335x, but it is not platform dependent. The driver 
 can be used on other platforms where-in DT is not supported.
 According to the maintainers platform data takes precedence over DT. Hence 
 the order.
 

Rachana,

I see no point adding support for platform_data when you know that none of 
older platforms are going to use this driver and all future platforms _must_ 
follow device-tree model.

So I agree that you should remove board file dependency from the driver.


 I do not see Missing platform data error msg in the latest driver. I am not 
 able to trace from where this got populated.
 

Can you share the branch which you have tested?

Thanks,
Vaibhav

  
  What are the chances this driver will work when applied on top of 3.8-rcX? 
  Has it even been tested with that? Has it been tested at all?
 
 This driver has been tested on top of v3.8-rc3 on a AM335x EVM.
 
 Regards,
 Rachna
 
 ___
 devicetree-discuss mailing list
 devicetree-disc...@lists.ozlabs.org
 https://lists.ozlabs.org/listinfo/devicetree-discuss
 

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html