[PATCH 2/2] extcon: Move OF helper function to extcon core and change function name

2014-03-18 Thread Chanwoo Choi
This patch move simply OF helper function to extcon core and change function
name as following:
- of_extcon_get_extcon_dev() - extcon_get_edev_by_phandle()

Signed-off-by: Chanwoo Choi cw00.c...@samsung.com
---
 drivers/extcon/Kconfig   |  4 ---
 drivers/extcon/Makefile  |  2 --
 drivers/extcon/extcon-class.c| 43 ++
 drivers/extcon/of_extcon.c   | 56 
 drivers/usb/dwc3/dwc3-omap.c |  3 +--
 include/linux/extcon.h   | 12 +
 include/linux/extcon/of_extcon.h | 31 --
 7 files changed, 56 insertions(+), 95 deletions(-)
 delete mode 100644 drivers/extcon/of_extcon.c
 delete mode 100644 include/linux/extcon/of_extcon.h

diff --git a/drivers/extcon/Kconfig b/drivers/extcon/Kconfig
index bdb5a00..be56e8a 100644
--- a/drivers/extcon/Kconfig
+++ b/drivers/extcon/Kconfig
@@ -14,10 +14,6 @@ if EXTCON
 
 comment Extcon Device Drivers
 
-config OF_EXTCON
-   def_tristate y
-   depends on OF
-
 config EXTCON_GPIO
tristate GPIO extcon support
depends on GPIOLIB
diff --git a/drivers/extcon/Makefile b/drivers/extcon/Makefile
index 43eccc0..bf7861e 100644
--- a/drivers/extcon/Makefile
+++ b/drivers/extcon/Makefile
@@ -2,8 +2,6 @@
 # Makefile for external connector class (extcon) devices
 #
 
-obj-$(CONFIG_OF_EXTCON)+= of_extcon.o
-
 obj-$(CONFIG_EXTCON)   += extcon-class.o
 obj-$(CONFIG_EXTCON_GPIO)  += extcon-gpio.o
 obj-$(CONFIG_EXTCON_ADC_JACK)  += extcon-adc-jack.o
diff --git a/drivers/extcon/extcon-class.c b/drivers/extcon/extcon-class.c
index 7632233..bc4c789 100644
--- a/drivers/extcon/extcon-class.c
+++ b/drivers/extcon/extcon-class.c
@@ -31,6 +31,7 @@
 #include linux/extcon.h
 #include linux/slab.h
 #include linux/sysfs.h
+#include linux/of.h
 
 /*
  * extcon_cable_name suggests the standard cable names for commonly used
@@ -818,6 +819,48 @@ void extcon_dev_unregister(struct extcon_dev *edev)
 }
 EXPORT_SYMBOL_GPL(extcon_dev_unregister);
 
+#ifdef CONFIG_OF
+/*
+ * extcon_get_edev_by_phandle - Get the extcon device from devicetree
+ * @dev - instance to the given device
+ * @index - index into list of extcon_dev
+ *
+ * return the instance of extcon device
+ */
+struct extcon_dev *extcon_get_edev_by_phandle(struct device *dev, int index)
+{
+   struct device_node *node;
+   struct extcon_dev *edev;
+
+   if (!dev-of_node) {
+   dev_err(dev, device does not have a device node entry\n);
+   return ERR_PTR(-EINVAL);
+   }
+
+   node = of_parse_phandle(dev-of_node, extcon, index);
+   if (!node) {
+   dev_err(dev, failed to get phandle in %s node\n,
+   dev-of_node-full_name);
+   return ERR_PTR(-ENODEV);
+   }
+
+   edev = extcon_get_extcon_dev(node-name);
+   if (!edev) {
+   dev_err(dev, unable to get extcon device : %s\n, node-name);
+   return ERR_PTR(-ENODEV);
+   }
+
+   return edev;
+}
+#else
+static inline struct extcon_dev *extcon_get_edev_by_phandle(struct device *dev,
+   int index)
+{
+   return ERR_PTR(-ENOSYS);
+}
+#endif /* CONFIG_OF */
+EXPORT_SYMBOL_GPL(extcon_get_edev_by_phandle);
+
 static int __init extcon_class_init(void)
 {
return create_extcon_class();
diff --git a/drivers/extcon/of_extcon.c b/drivers/extcon/of_extcon.c
deleted file mode 100644
index 0a29f82..000
--- a/drivers/extcon/of_extcon.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * OF helpers for External connector (extcon) framework
- *
- * Copyright (C) 2013 Texas Instruments, Inc.
- * Kishon Vijay Abraham I kis...@ti.com
- *
- * Copyright (C) 2013 Samsung Electronics
- * Chanwoo Choi cw00.c...@samsung.com
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- */
-
-#include linux/module.h
-#include linux/slab.h
-#include linux/err.h
-#include linux/extcon.h
-#include linux/of.h
-#include linux/of_platform.h
-#include linux/extcon/of_extcon.h
-
-/*
- * of_extcon_get_extcon_dev - Get the name of extcon device from devicetree
- * @dev - instance to the given device
- * @index - index into list of extcon_dev
- *
- * return the instance of extcon device
- */
-struct extcon_dev *of_extcon_get_extcon_dev(struct device *dev, int index)
-{
-   struct device_node *node;
-   struct extcon_dev *edev;
-
-   if (!dev-of_node) {
-   dev_dbg(dev, device does not have a device node entry\n);
-   return ERR_PTR(-EINVAL);
-   }
-
-   node = of_parse_phandle(dev-of_node, extcon, index);
-   if (!node) {
-   dev_dbg(dev, failed to get phandle in %s node\n,
-   dev-of_node-full_name);
-

Re: [PATCH 2/2] extcon: Move OF helper function to extcon core and change function name

2014-03-18 Thread Felipe Balbi
Hi,

On Tue, Mar 18, 2014 at 09:04:40PM +0900, Chanwoo Choi wrote:
 This patch move simply OF helper function to extcon core and change function
 name as following:
 - of_extcon_get_extcon_dev() - extcon_get_edev_by_phandle()
 
 Signed-off-by: Chanwoo Choi cw00.c...@samsung.com
 ---
  drivers/extcon/Kconfig   |  4 ---
  drivers/extcon/Makefile  |  2 --
  drivers/extcon/extcon-class.c| 43 ++
  drivers/extcon/of_extcon.c   | 56 
 
  drivers/usb/dwc3/dwc3-omap.c |  3 +--

for dwc3:

Acked-by: Felipe Balbi ba...@ti.com

  include/linux/extcon.h   | 12 +
  include/linux/extcon/of_extcon.h | 31 --
  7 files changed, 56 insertions(+), 95 deletions(-)
  delete mode 100644 drivers/extcon/of_extcon.c
  delete mode 100644 include/linux/extcon/of_extcon.h
 
 diff --git a/drivers/extcon/Kconfig b/drivers/extcon/Kconfig
 index bdb5a00..be56e8a 100644
 --- a/drivers/extcon/Kconfig
 +++ b/drivers/extcon/Kconfig
 @@ -14,10 +14,6 @@ if EXTCON
  
  comment Extcon Device Drivers
  
 -config OF_EXTCON
 - def_tristate y
 - depends on OF
 -
  config EXTCON_GPIO
   tristate GPIO extcon support
   depends on GPIOLIB
 diff --git a/drivers/extcon/Makefile b/drivers/extcon/Makefile
 index 43eccc0..bf7861e 100644
 --- a/drivers/extcon/Makefile
 +++ b/drivers/extcon/Makefile
 @@ -2,8 +2,6 @@
  # Makefile for external connector class (extcon) devices
  #
  
 -obj-$(CONFIG_OF_EXTCON)  += of_extcon.o
 -
  obj-$(CONFIG_EXTCON) += extcon-class.o
  obj-$(CONFIG_EXTCON_GPIO)+= extcon-gpio.o
  obj-$(CONFIG_EXTCON_ADC_JACK)+= extcon-adc-jack.o
 diff --git a/drivers/extcon/extcon-class.c b/drivers/extcon/extcon-class.c
 index 7632233..bc4c789 100644
 --- a/drivers/extcon/extcon-class.c
 +++ b/drivers/extcon/extcon-class.c
 @@ -31,6 +31,7 @@
  #include linux/extcon.h
  #include linux/slab.h
  #include linux/sysfs.h
 +#include linux/of.h
  
  /*
   * extcon_cable_name suggests the standard cable names for commonly used
 @@ -818,6 +819,48 @@ void extcon_dev_unregister(struct extcon_dev *edev)
  }
  EXPORT_SYMBOL_GPL(extcon_dev_unregister);
  
 +#ifdef CONFIG_OF
 +/*
 + * extcon_get_edev_by_phandle - Get the extcon device from devicetree
 + * @dev - instance to the given device
 + * @index - index into list of extcon_dev
 + *
 + * return the instance of extcon device
 + */
 +struct extcon_dev *extcon_get_edev_by_phandle(struct device *dev, int index)
 +{
 + struct device_node *node;
 + struct extcon_dev *edev;
 +
 + if (!dev-of_node) {
 + dev_err(dev, device does not have a device node entry\n);
 + return ERR_PTR(-EINVAL);
 + }
 +
 + node = of_parse_phandle(dev-of_node, extcon, index);
 + if (!node) {
 + dev_err(dev, failed to get phandle in %s node\n,
 + dev-of_node-full_name);
 + return ERR_PTR(-ENODEV);
 + }
 +
 + edev = extcon_get_extcon_dev(node-name);
 + if (!edev) {
 + dev_err(dev, unable to get extcon device : %s\n, node-name);
 + return ERR_PTR(-ENODEV);
 + }
 +
 + return edev;
 +}
 +#else
 +static inline struct extcon_dev *extcon_get_edev_by_phandle(struct device 
 *dev,
 + int index)
 +{
 + return ERR_PTR(-ENOSYS);
 +}
 +#endif /* CONFIG_OF */
 +EXPORT_SYMBOL_GPL(extcon_get_edev_by_phandle);
 +
  static int __init extcon_class_init(void)
  {
   return create_extcon_class();
 diff --git a/drivers/extcon/of_extcon.c b/drivers/extcon/of_extcon.c
 deleted file mode 100644
 index 0a29f82..000
 --- a/drivers/extcon/of_extcon.c
 +++ /dev/null
 @@ -1,56 +0,0 @@
 -/*
 - * OF helpers for External connector (extcon) framework
 - *
 - * Copyright (C) 2013 Texas Instruments, Inc.
 - * Kishon Vijay Abraham I kis...@ti.com
 - *
 - * Copyright (C) 2013 Samsung Electronics
 - * Chanwoo Choi cw00.c...@samsung.com
 - *
 - * This program is free software; you can redistribute it and/or modify
 - * it under the terms of the GNU General Public License as published by
 - * the Free Software Foundation; either version 2 of the License, or
 - * (at your option) any later version.
 - */
 -
 -#include linux/module.h
 -#include linux/slab.h
 -#include linux/err.h
 -#include linux/extcon.h
 -#include linux/of.h
 -#include linux/of_platform.h
 -#include linux/extcon/of_extcon.h
 -
 -/*
 - * of_extcon_get_extcon_dev - Get the name of extcon device from devicetree
 - * @dev - instance to the given device
 - * @index - index into list of extcon_dev
 - *
 - * return the instance of extcon device
 - */
 -struct extcon_dev *of_extcon_get_extcon_dev(struct device *dev, int index)
 -{
 - struct device_node *node;
 - struct extcon_dev *edev;
 -
 - if (!dev-of_node) {
 - dev_dbg(dev, device does not have a device node entry\n);
 - return ERR_PTR(-EINVAL);
 - }