diff options
author | Samuel Ortiz <sameo@linux.intel.com> | 2011-04-06 11:56:04 +0200 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2011-05-26 19:45:02 +0200 |
commit | 9e554696c03e04c51d095c1c451e26a8cb6a84fa (patch) | |
tree | a2298d7aa5db6c7391346a097caeea99e8c9d8ad | |
parent | 8ac93beaab97d56b6e702cc625438f533e361ea5 (diff) | |
download | lwn-9e554696c03e04c51d095c1c451e26a8cb6a84fa.tar.gz lwn-9e554696c03e04c51d095c1c451e26a8cb6a84fa.zip |
mfd: Use mfd cell platform_data for wl1273 cells platform bits
With the addition of a platform device mfd_cell pointer, MFD drivers
can go back to passing platform data back to their sub drivers.
This allows for an mfd_cell->mfd_data removal and thus keep the
sub drivers MFD agnostic. This is mostly needed for non MFD aware
sub drivers.
Cc: Matti Aaltonen <matti.j.aaltonen@nokia.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
-rw-r--r-- | drivers/media/radio/radio-wl1273.c | 2 | ||||
-rw-r--r-- | drivers/mfd/wl1273-core.c | 6 | ||||
-rw-r--r-- | sound/soc/codecs/wl1273.c | 3 |
3 files changed, 6 insertions, 5 deletions
diff --git a/drivers/media/radio/radio-wl1273.c b/drivers/media/radio/radio-wl1273.c index e2550dc2944f..46cacf845049 100644 --- a/drivers/media/radio/radio-wl1273.c +++ b/drivers/media/radio/radio-wl1273.c @@ -1990,7 +1990,7 @@ static int wl1273_fm_radio_remove(struct platform_device *pdev) static int __devinit wl1273_fm_radio_probe(struct platform_device *pdev) { - struct wl1273_core **core = mfd_get_data(pdev); + struct wl1273_core **core = pdev->dev.platform_data; struct wl1273_device *radio; struct v4l2_ctrl *ctrl; int r = 0; diff --git a/drivers/mfd/wl1273-core.c b/drivers/mfd/wl1273-core.c index 04914f2836c0..63d250d9a366 100644 --- a/drivers/mfd/wl1273-core.c +++ b/drivers/mfd/wl1273-core.c @@ -217,7 +217,8 @@ static int __devinit wl1273_core_probe(struct i2c_client *client, cell = &core->cells[children]; cell->name = "wl1273_fm_radio"; - cell->mfd_data = &core; + cell->platform_data = &core; + cell->pdata_size = sizeof(core); children++; core->read = wl1273_fm_read_reg; @@ -231,7 +232,8 @@ static int __devinit wl1273_core_probe(struct i2c_client *client, dev_dbg(&client->dev, "%s: Have codec.\n", __func__); cell->name = "wl1273-codec"; - cell->mfd_data = &core; + cell->platform_data = &core; + cell->pdata_size = sizeof(core); children++; } diff --git a/sound/soc/codecs/wl1273.c b/sound/soc/codecs/wl1273.c index c8a874d0d4ca..5836201834d9 100644 --- a/sound/soc/codecs/wl1273.c +++ b/sound/soc/codecs/wl1273.c @@ -441,8 +441,7 @@ EXPORT_SYMBOL_GPL(wl1273_get_format); static int wl1273_probe(struct snd_soc_codec *codec) { - struct wl1273_core **core = - mfd_get_data(to_platform_device(codec->dev)); + struct wl1273_core **core = codec->dev->platform_data; struct wl1273_priv *wl1273; int r; |