[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1459673574-11440-16-git-send-email-peda@lysator.liu.se>
Date: Sun, 3 Apr 2016 10:52:45 +0200
From: Peter Rosin <peda@...ator.liu.se>
To: linux-kernel@...r.kernel.org
Cc: Peter Rosin <peda@...ntia.se>, Wolfram Sang <wsa@...-dreams.de>,
Jonathan Corbet <corbet@....net>,
Peter Korsgaard <peter.korsgaard@...co.com>,
Guenter Roeck <linux@...ck-us.net>,
Jonathan Cameron <jic23@...nel.org>,
Hartmut Knaack <knaack.h@....de>,
Lars-Peter Clausen <lars@...afoo.de>,
Peter Meerwald <pmeerw@...erw.net>,
Antti Palosaari <crope@....fi>,
Mauro Carvalho Chehab <mchehab@....samsung.com>,
Rob Herring <robh+dt@...nel.org>,
Frank Rowand <frowand.list@...il.com>,
Grant Likely <grant.likely@...aro.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"David S. Miller" <davem@...emloft.net>,
Kalle Valo <kvalo@...eaurora.org>,
Joe Perches <joe@...ches.com>, Jiri Slaby <jslaby@...e.com>,
Daniel Baluta <daniel.baluta@...el.com>,
Adriana Reus <adriana.reus@...el.com>,
Lucas De Marchi <lucas.demarchi@...el.com>,
Matt Ranostay <matt.ranostay@...el.com>,
Krzysztof Kozlowski <k.kozlowski@...sung.com>,
Terry Heo <terryheo@...gle.com>,
Hans Verkuil <hans.verkuil@...co.com>,
Arnd Bergmann <arnd@...db.de>,
Tommi Rantala <tt.rantala@...il.com>,
linux-i2c@...r.kernel.org, linux-doc@...r.kernel.org,
linux-iio@...r.kernel.org, linux-media@...r.kernel.org,
devicetree@...r.kernel.org, Peter Rosin <peda@...ator.liu.se>
Subject: [PATCH v6 15/24] i2c-mux: drop old unused i2c-mux api
From: Peter Rosin <peda@...ntia.se>
All i2c mux users are using an explicit i2c mux core, drop support
for implicit i2c mux cores.
Signed-off-by: Peter Rosin <peda@...ntia.se>
---
drivers/i2c/i2c-mux.c | 59 -------------------------------------------------
include/linux/i2c-mux.h | 15 -------------
2 files changed, 74 deletions(-)
diff --git a/drivers/i2c/i2c-mux.c b/drivers/i2c/i2c-mux.c
index d95eb66e11bf..08d99e776a69 100644
--- a/drivers/i2c/i2c-mux.c
+++ b/drivers/i2c/i2c-mux.c
@@ -28,12 +28,6 @@
#include <linux/slab.h>
/* multiplexer per channel data */
-struct i2c_mux_priv_old {
- void *mux_priv;
- int (*select)(struct i2c_adapter *, void *mux_priv, u32 chan_id);
- int (*deselect)(struct i2c_adapter *, void *mux_priv, u32 chan_id);
-};
-
struct i2c_mux_priv {
struct i2c_adapter adap;
struct i2c_algorithm algo;
@@ -290,48 +284,6 @@ struct i2c_mux_core *i2c_mux_one_adapter(struct i2c_adapter *parent,
}
EXPORT_SYMBOL_GPL(i2c_mux_one_adapter);
-static int i2c_mux_select(struct i2c_mux_core *muxc, u32 chan)
-{
- struct i2c_mux_priv_old *priv = i2c_mux_priv(muxc);
-
- return priv->select(muxc->parent, priv->mux_priv, chan);
-}
-
-static int i2c_mux_deselect(struct i2c_mux_core *muxc, u32 chan)
-{
- struct i2c_mux_priv_old *priv = i2c_mux_priv(muxc);
-
- return priv->deselect(muxc->parent, priv->mux_priv, chan);
-}
-
-struct i2c_adapter *i2c_add_mux_adapter(struct i2c_adapter *parent,
- struct device *mux_dev, void *mux_priv,
- u32 force_nr, u32 chan_id,
- unsigned int class,
- int (*select)(struct i2c_adapter *,
- void *, u32),
- int (*deselect)(struct i2c_adapter *,
- void *, u32))
-{
- struct i2c_mux_core *muxc;
- struct i2c_mux_priv_old *priv;
-
- muxc = i2c_mux_one_adapter(parent, mux_dev, sizeof(*priv), 0,
- force_nr, chan_id, class,
- i2c_mux_select,
- deselect ? i2c_mux_deselect : NULL);
- if (IS_ERR(muxc))
- return NULL;
-
- priv = i2c_mux_priv(muxc);
- priv->select = select;
- priv->deselect = deselect;
- priv->mux_priv = mux_priv;
-
- return muxc->adapter[0];
-}
-EXPORT_SYMBOL_GPL(i2c_add_mux_adapter);
-
void i2c_mux_del_adapters(struct i2c_mux_core *muxc)
{
char symlink_name[20];
@@ -353,17 +305,6 @@ void i2c_mux_del_adapters(struct i2c_mux_core *muxc)
}
EXPORT_SYMBOL_GPL(i2c_mux_del_adapters);
-void i2c_del_mux_adapter(struct i2c_adapter *adap)
-{
- struct i2c_mux_priv *priv = adap->algo_data;
- struct i2c_mux_core *muxc = priv->muxc;
-
- i2c_mux_del_adapters(muxc);
- devm_kfree(muxc->dev, muxc->adapter);
- devm_kfree(muxc->dev, muxc);
-}
-EXPORT_SYMBOL_GPL(i2c_del_mux_adapter);
-
MODULE_AUTHOR("Rodolfo Giometti <giometti@...ux.it>");
MODULE_DESCRIPTION("I2C driver for multiplexed I2C busses");
MODULE_LICENSE("GPL v2");
diff --git a/include/linux/i2c-mux.h b/include/linux/i2c-mux.h
index 0d97d7a3f03c..25c88ccf9c38 100644
--- a/include/linux/i2c-mux.h
+++ b/include/linux/i2c-mux.h
@@ -55,20 +55,6 @@ int i2c_mux_reserve_adapters(struct i2c_mux_core *muxc, int adapters);
/*
* Called to create a i2c bus on a multiplexed bus segment.
- * The mux_dev and chan_id parameters are passed to the select
- * and deselect callback functions to perform hardware-specific
- * mux control.
- */
-struct i2c_adapter *i2c_add_mux_adapter(struct i2c_adapter *parent,
- struct device *mux_dev,
- void *mux_priv, u32 force_nr, u32 chan_id,
- unsigned int class,
- int (*select) (struct i2c_adapter *,
- void *mux_dev, u32 chan_id),
- int (*deselect) (struct i2c_adapter *,
- void *mux_dev, u32 chan_id));
-/*
- * Called to create a i2c bus on a multiplexed bus segment.
* The chan_id parameter is passed to the select and deselect
* callback functions to perform hardware-specific mux control.
*/
@@ -88,7 +74,6 @@ struct i2c_mux_core *i2c_mux_one_adapter(struct i2c_adapter *parent,
int (*deselect)(struct i2c_mux_core *,
u32));
-void i2c_del_mux_adapter(struct i2c_adapter *adap);
void i2c_mux_del_adapters(struct i2c_mux_core *muxc);
#endif /* __KERNEL__ */
--
2.1.4
Powered by blists - more mailing lists