diff mbox

[RFC,01/28] component: remove old add_components method

Message ID 1450875402-20740-2-git-send-email-andrew@lunn.ch
State RFC, archived
Delegated to: David Miller
Headers show

Commit Message

Andrew Lunn Dec. 23, 2015, 12:56 p.m. UTC
From: Russell King <rmk+kernel@arm.linux.org.uk>

Now that drivers create an array of component matches at probe time, we
can retire the old methods.  This involves removing the add_components
master method, and removing component_master_add_child() from public
view.  We also remove component_add_master() as that interface is no
longer useful.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
---
 drivers/base/component.c  | 31 +++++--------------------------
 include/linux/component.h |  5 -----
 2 files changed, 5 insertions(+), 31 deletions(-)

Comments

Russell King - ARM Linux Dec. 23, 2015, 1:21 p.m. UTC | #1
Why are you sending this?  I'm confused.

On Wed, Dec 23, 2015 at 01:56:15PM +0100, Andrew Lunn wrote:
> From: Russell King <rmk+kernel@arm.linux.org.uk>
> 
> Now that drivers create an array of component matches at probe time, we
> can retire the old methods.  This involves removing the add_components
> master method, and removing component_master_add_child() from public
> view.  We also remove component_add_master() as that interface is no
> longer useful.
> 
> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
> ---
>  drivers/base/component.c  | 31 +++++--------------------------
>  include/linux/component.h |  5 -----
>  2 files changed, 5 insertions(+), 31 deletions(-)
> 
> diff --git a/drivers/base/component.c b/drivers/base/component.c
> index f748430bb654..2ca22738ae92 100644
> --- a/drivers/base/component.c
> +++ b/drivers/base/component.c
> @@ -84,7 +84,7 @@ static void component_detach_master(struct master *master, struct component *c)
>   * function and compare data.  This is safe to call for duplicate matches
>   * and will not result in the same component being added multiple times.
>   */
> -int component_master_add_child(struct master *master,
> +static int component_master_add_child(struct master *master,
>  	int (*compare)(struct device *, void *), void *compare_data)
>  {
>  	struct component *c;
> @@ -104,7 +104,6 @@ int component_master_add_child(struct master *master,
>  
>  	return ret;
>  }
> -EXPORT_SYMBOL_GPL(component_master_add_child);
>  
>  static int find_components(struct master *master)
>  {
> @@ -112,14 +111,6 @@ static int find_components(struct master *master)
>  	size_t i;
>  	int ret = 0;
>  
> -	if (!match) {
> -		/*
> -		 * Search the list of components, looking for components that
> -		 * belong to this master, and attach them to the master.
> -		 */
> -		return master->ops->add_components(master->dev, master);
> -	}
> -
>  	/*
>  	 * Scan the array of match functions and attach
>  	 * any components which are found to this master.
> @@ -290,15 +281,10 @@ int component_master_add_with_match(struct device *dev,
>  	struct master *master;
>  	int ret;
>  
> -	if (ops->add_components && match)
> -		return -EINVAL;
> -
> -	if (match) {
> -		/* Reallocate the match array for its true size */
> -		match = component_match_realloc(dev, match, match->num);
> -		if (IS_ERR(match))
> -			return PTR_ERR(match);
> -	}
> +	/* Reallocate the match array for its true size */
> +	match = component_match_realloc(dev, match, match->num);
> +	if (IS_ERR(match))
> +		return PTR_ERR(match);
>  
>  	master = kzalloc(sizeof(*master), GFP_KERNEL);
>  	if (!master)
> @@ -326,13 +312,6 @@ int component_master_add_with_match(struct device *dev,
>  }
>  EXPORT_SYMBOL_GPL(component_master_add_with_match);
>  
> -int component_master_add(struct device *dev,
> -	const struct component_master_ops *ops)
> -{
> -	return component_master_add_with_match(dev, ops, NULL);
> -}
> -EXPORT_SYMBOL_GPL(component_master_add);
> -
>  void component_master_del(struct device *dev,
>  	const struct component_master_ops *ops)
>  {
> diff --git a/include/linux/component.h b/include/linux/component.h
> index c00dcc302611..71c434a6a5ee 100644
> --- a/include/linux/component.h
> +++ b/include/linux/component.h
> @@ -17,18 +17,13 @@ void component_unbind_all(struct device *, void *);
>  struct master;
>  
>  struct component_master_ops {
> -	int (*add_components)(struct device *, struct master *);
>  	int (*bind)(struct device *);
>  	void (*unbind)(struct device *);
>  };
>  
> -int component_master_add(struct device *, const struct component_master_ops *);
>  void component_master_del(struct device *,
>  	const struct component_master_ops *);
>  
> -int component_master_add_child(struct master *master,
> -	int (*compare)(struct device *, void *), void *compare_data);
> -
>  struct component_match;
>  
>  int component_master_add_with_match(struct device *,
> -- 
> 2.6.3
>
Andrew Lunn Dec. 23, 2015, 3:57 p.m. UTC | #2
On Wed, Dec 23, 2015 at 01:21:24PM +0000, Russell King - ARM Linux wrote:
> Why are you sending this?  I'm confused.

Hi Russell

It is part of a bigger series, which i just sent as RFC. I need the
functionality of your patch, but it not yet available upstream. By the
time my patch series leaves RFC and is ready for acceptance, i expect
your patch will be upstream, and i will drop it.

     Andrew
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/base/component.c b/drivers/base/component.c
index f748430bb654..2ca22738ae92 100644
--- a/drivers/base/component.c
+++ b/drivers/base/component.c
@@ -84,7 +84,7 @@  static void component_detach_master(struct master *master, struct component *c)
  * function and compare data.  This is safe to call for duplicate matches
  * and will not result in the same component being added multiple times.
  */
-int component_master_add_child(struct master *master,
+static int component_master_add_child(struct master *master,
 	int (*compare)(struct device *, void *), void *compare_data)
 {
 	struct component *c;
@@ -104,7 +104,6 @@  int component_master_add_child(struct master *master,
 
 	return ret;
 }
-EXPORT_SYMBOL_GPL(component_master_add_child);
 
 static int find_components(struct master *master)
 {
@@ -112,14 +111,6 @@  static int find_components(struct master *master)
 	size_t i;
 	int ret = 0;
 
-	if (!match) {
-		/*
-		 * Search the list of components, looking for components that
-		 * belong to this master, and attach them to the master.
-		 */
-		return master->ops->add_components(master->dev, master);
-	}
-
 	/*
 	 * Scan the array of match functions and attach
 	 * any components which are found to this master.
@@ -290,15 +281,10 @@  int component_master_add_with_match(struct device *dev,
 	struct master *master;
 	int ret;
 
-	if (ops->add_components && match)
-		return -EINVAL;
-
-	if (match) {
-		/* Reallocate the match array for its true size */
-		match = component_match_realloc(dev, match, match->num);
-		if (IS_ERR(match))
-			return PTR_ERR(match);
-	}
+	/* Reallocate the match array for its true size */
+	match = component_match_realloc(dev, match, match->num);
+	if (IS_ERR(match))
+		return PTR_ERR(match);
 
 	master = kzalloc(sizeof(*master), GFP_KERNEL);
 	if (!master)
@@ -326,13 +312,6 @@  int component_master_add_with_match(struct device *dev,
 }
 EXPORT_SYMBOL_GPL(component_master_add_with_match);
 
-int component_master_add(struct device *dev,
-	const struct component_master_ops *ops)
-{
-	return component_master_add_with_match(dev, ops, NULL);
-}
-EXPORT_SYMBOL_GPL(component_master_add);
-
 void component_master_del(struct device *dev,
 	const struct component_master_ops *ops)
 {
diff --git a/include/linux/component.h b/include/linux/component.h
index c00dcc302611..71c434a6a5ee 100644
--- a/include/linux/component.h
+++ b/include/linux/component.h
@@ -17,18 +17,13 @@  void component_unbind_all(struct device *, void *);
 struct master;
 
 struct component_master_ops {
-	int (*add_components)(struct device *, struct master *);
 	int (*bind)(struct device *);
 	void (*unbind)(struct device *);
 };
 
-int component_master_add(struct device *, const struct component_master_ops *);
 void component_master_del(struct device *,
 	const struct component_master_ops *);
 
-int component_master_add_child(struct master *master,
-	int (*compare)(struct device *, void *), void *compare_data);
-
 struct component_match;
 
 int component_master_add_with_match(struct device *,