Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1452995

[PATCH v2 4/6] extcon: Rename the extcon_set/get_state() to maintain the function naming pattern

From Chanwoo Choi <cw00.choi@samsung.com>
Newsgroups linux.kernel
Subject [PATCH v2 4/6] extcon: Rename the extcon_set/get_state() to maintain the function naming pattern
Date 2016-08-01 08:00 +0200
Message-ID <s1eqB-2fi-7@gated-at.bofh.it> (permalink)
References <s1eqB-2fi-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


This patch just renames the existing extcon_get/set_cable_state_()
as following because of maintaining the function naming pattern
like as extcon APIs for property.
- extcon_set_cable_state_() -> extcon_set_state()
- extcon_get_cable_state_() -> extcon_get_state()

But, this patch remains the old extcon_set/get_cable_state_() functions
to prevent the build break. After altering new APIs, remove the old APIs.

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Tested-by: Chris Zhong <zyw@rock-chips.com>
---
 drivers/extcon/extcon.c | 28 +++++++++++++---------------
 include/linux/extcon.h  | 25 ++++++++++++++++++-------
 2 files changed, 31 insertions(+), 22 deletions(-)

diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c
index 10b201b161ac..207143347fb7 100644
--- a/drivers/extcon/extcon.c
+++ b/drivers/extcon/extcon.c
@@ -398,8 +398,7 @@ static ssize_t cable_state_show(struct device *dev,
 	int i = cable->cable_index;
 
 	return sprintf(buf, "%d\n",
-		       extcon_get_cable_state_(cable->edev,
-					       cable->edev->supported_cable[i]));
+		extcon_get_state(cable->edev, cable->edev->supported_cable[i]));
 }
 
 /**
@@ -495,13 +494,14 @@ static int extcon_update_state(struct extcon_dev *edev, u32 mask, u32 state)
 }
 
 /**
- * extcon_get_cable_state_() - Get the status of a specific cable.
+ * extcon_get_state() - Get the state of a external connector.
  * @edev:	the extcon device that has the cable.
  * @id:		the unique id of each external connector in extcon enumeration.
  */
-int extcon_get_cable_state_(struct extcon_dev *edev, const unsigned int id)
+int extcon_get_state(struct extcon_dev *edev, const unsigned int id)
 {
-	int index;
+	int index, state;
+	unsigned long flags;
 
 	if (!edev)
 		return -EINVAL;
@@ -510,22 +510,23 @@ int extcon_get_cable_state_(struct extcon_dev *edev, const unsigned int id)
 	if (index < 0)
 		return index;
 
-	if (edev->max_supported && edev->max_supported <= index)
-		return -EINVAL;
+	spin_lock_irqsave(&edev->lock, flags);
+	state = is_extcon_attached(edev, index);
+	spin_unlock_irqrestore(&edev->lock, flags);
 
-	return (int)(is_extcon_attached(edev, index));
+	return state;
 }
-EXPORT_SYMBOL_GPL(extcon_get_cable_state_);
+EXPORT_SYMBOL_GPL(extcon_get_state);
 
 /**
- * extcon_set_cable_state_() - Set the status of a specific cable.
+ * extcon_set_state() - Set the state of a external connector.
  * @edev:		the extcon device that has the cable.
  * @id:			the unique id of each external connector
  *			in extcon enumeration.
  * @state:		the new cable status. The default semantics is
  *			true: attached / false: detached.
  */
-int extcon_set_cable_state_(struct extcon_dev *edev, unsigned int id,
+int extcon_set_state(struct extcon_dev *edev, unsigned int id,
 				bool cable_state)
 {
 	u32 state;
@@ -538,9 +539,6 @@ int extcon_set_cable_state_(struct extcon_dev *edev, unsigned int id,
 	if (index < 0)
 		return index;
 
-	if (edev->max_supported && edev->max_supported <= index)
-		return -EINVAL;
-
 	/*
 	 * Initialize the value of extcon property before setting
 	 * the detached state for an external connector.
@@ -551,7 +549,7 @@ int extcon_set_cable_state_(struct extcon_dev *edev, unsigned int id,
 	state = cable_state ? (1 << index) : 0;
 	return extcon_update_state(edev, 1 << index, state);
 }
-EXPORT_SYMBOL_GPL(extcon_set_cable_state_);
+EXPORT_SYMBOL_GPL(extcon_set_state);
 
 /**
  * extcon_get_property() - Get the property value of a specific cable.
diff --git a/include/linux/extcon.h b/include/linux/extcon.h
index 80b740d81b1f..a38a42418195 100644
--- a/include/linux/extcon.h
+++ b/include/linux/extcon.h
@@ -221,11 +221,11 @@ extern struct extcon_dev *devm_extcon_dev_allocate(struct device *dev,
 extern void devm_extcon_dev_free(struct device *dev, struct extcon_dev *edev);
 
 /*
- * get/set_cable_state access each bit of the 32b encoded state value.
+ * get/set_state access each bit of the 32b encoded state value.
  * They are used to access the status of each cable based on the cable id.
  */
-extern int extcon_get_cable_state_(struct extcon_dev *edev, unsigned int id);
-extern int extcon_set_cable_state_(struct extcon_dev *edev, unsigned int id,
+extern int extcon_get_state(struct extcon_dev *edev, unsigned int id);
+extern int extcon_set_state(struct extcon_dev *edev, unsigned int id,
 				   bool cable_state);
 
 /*
@@ -310,14 +310,14 @@ static inline struct extcon_dev *devm_extcon_dev_allocate(struct device *dev,
 
 static inline void devm_extcon_dev_free(struct extcon_dev *edev) { }
 
-static inline int extcon_get_cable_state_(struct extcon_dev *edev,
-					  unsigned int id)
+
+static inline int extcon_get_state(struct extcon_dev *edev, unsigned int id)
 {
 	return 0;
 }
 
-static inline int extcon_set_cable_state_(struct extcon_dev *edev,
-					  unsigned int id, bool cable_state)
+static inline int extcon_set_state(struct extcon_dev *edev, unsigned int id,
+				bool cable_state)
 {
 	return 0;
 }
@@ -407,4 +407,15 @@ static inline int extcon_unregister_interest(struct extcon_specific_cable_nb
 {
 	return -EINVAL;
 }
+
+static inline int extcon_get_cable_state_(struct extcon_dev *edev, unsigned int id)
+{
+	return extcon_get_state(edev, id);
+}
+
+static inline int extcon_set_cable_state_(struct extcon_dev *edev, unsigned int id,
+				   bool cable_state)
+{
+	return extcon_set_state(edev, id, cable_state);
+}
 #endif /* __LINUX_EXTCON_H__ */
-- 
1.9.1

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 0/6] extcon: Add the support for extcon type and property Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-01 08:00 +0200
  [PATCH v2 4/6] extcon: Rename the extcon_set/get_state() to maintain  the function naming pattern Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-01 08:00 +0200
    Re: [PATCH v2 4/6] extcon: Rename the extcon_set/get_state() to  maintain the function naming pattern Guenter Roeck <groeck@google.com> - 2016-08-01 22:00 +0200
  [PATCH v2 2/6] extcon: Add the support for extcon property according  to extcon type Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-01 08:00 +0200
    Re: [PATCH v2 2/6] extcon: Add the support for extcon property  according to extcon type Guenter Roeck <groeck@google.com> - 2016-08-01 21:50 +0200
      Re: [PATCH v2 2/6] extcon: Add the support for extcon property  according to extcon type Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-02 11:50 +0200
  [PATCH v2 3/6] extcon: Add the support for the capability of each  property Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-01 08:00 +0200
  [PATCH v2 5/6] extcon: Add the synchronization extcon APIs to support  the notification Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-01 08:00 +0200
    Re: [PATCH v2 5/6] extcon: Add the synchronization extcon APIs to  support the notification Guenter Roeck <groeck@google.com> - 2016-08-01 22:00 +0200
      Re: [PATCH v2 5/6] extcon: Add the synchronization extcon APIs to  support the notification Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-02 04:00 +0200
  [PATCH v2 1/6] extcon: Add the extcon_type to gather each connector  into five category Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-01 08:00 +0200
    Re: [PATCH v2 1/6] extcon: Add the extcon_type to gather each  connector into five category Guenter Roeck <groeck@google.com> - 2016-08-01 21:50 +0200
  Re: [PATCH v2 0/6] extcon: Add the support for extcon type and property Guenter Roeck <groeck@google.com> - 2016-08-01 20:30 +0200
    Re: [PATCH v2 0/6] extcon: Add the support for extcon type and property Chanwoo Choi <cw00.choi@samsung.com> - 2016-08-02 05:10 +0200
      Re: [PATCH v2 0/6] extcon: Add the support for extcon type and property Guenter Roeck <groeck@google.com> - 2016-08-02 07:20 +0200

csiph-web