aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Ortiz <sameo@linux.intel.com>2011-04-06 07:21:01 -0400
committerSamuel Ortiz <sameo@linux.intel.com>2011-05-26 13:45:06 -0400
commit9abd768a8d470d58071e30c57d1fa4a7090518bc (patch)
tree5c449234f2c7a958af3660432eb6be5d9fcc2c87
parent3271d382c3ffe61ef3d059ef47e635dbe031030e (diff)
mfd: Use mfd cell platform_data for rdc321x 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: Grant Likely <grant.likely@secretlab.ca> Cc: Wim Van Sebroeck <wim@iguana.be> Cc: Florian Fainelli <florian@openwrt.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
-rw-r--r--drivers/gpio/rdc321x-gpio.c3
-rw-r--r--drivers/mfd/rdc321x-southbridge.c6
-rw-r--r--drivers/watchdog/rdc321x_wdt.c3
3 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpio/rdc321x-gpio.c b/drivers/gpio/rdc321x-gpio.c
index a9bda881935a..2762698e0204 100644
--- a/drivers/gpio/rdc321x-gpio.c
+++ b/drivers/gpio/rdc321x-gpio.c
@@ -27,7 +27,6 @@
27#include <linux/pci.h> 27#include <linux/pci.h>
28#include <linux/gpio.h> 28#include <linux/gpio.h>
29#include <linux/mfd/rdc321x.h> 29#include <linux/mfd/rdc321x.h>
30#include <linux/mfd/core.h>
31#include <linux/slab.h> 30#include <linux/slab.h>
32 31
33struct rdc321x_gpio { 32struct rdc321x_gpio {
@@ -136,7 +135,7 @@ static int __devinit rdc321x_gpio_probe(struct platform_device *pdev)
136 struct rdc321x_gpio *rdc321x_gpio_dev; 135 struct rdc321x_gpio *rdc321x_gpio_dev;
137 struct rdc321x_gpio_pdata *pdata; 136 struct rdc321x_gpio_pdata *pdata;
138 137
139 pdata = mfd_get_data(pdev); 138 pdata = pdev->dev.platform_data;
140 if (!pdata) { 139 if (!pdata) {
141 dev_err(&pdev->dev, "no platform data supplied\n"); 140 dev_err(&pdev->dev, "no platform data supplied\n");
142 return -ENODEV; 141 return -ENODEV;
diff --git a/drivers/mfd/rdc321x-southbridge.c b/drivers/mfd/rdc321x-southbridge.c
index 10dbe6374a89..809bd4a61089 100644
--- a/drivers/mfd/rdc321x-southbridge.c
+++ b/drivers/mfd/rdc321x-southbridge.c
@@ -61,12 +61,14 @@ static struct mfd_cell rdc321x_sb_cells[] = {
61 .name = "rdc321x-wdt", 61 .name = "rdc321x-wdt",
62 .resources = rdc321x_wdt_resource, 62 .resources = rdc321x_wdt_resource,
63 .num_resources = ARRAY_SIZE(rdc321x_wdt_resource), 63 .num_resources = ARRAY_SIZE(rdc321x_wdt_resource),
64 .mfd_data = &rdc321x_wdt_pdata, 64 .platform_data = &rdc321x_wdt_pdata,
65 .pdata_size = sizeof(rdc321x_wdt_pdata),
65 }, { 66 }, {
66 .name = "rdc321x-gpio", 67 .name = "rdc321x-gpio",
67 .resources = rdc321x_gpio_resources, 68 .resources = rdc321x_gpio_resources,
68 .num_resources = ARRAY_SIZE(rdc321x_gpio_resources), 69 .num_resources = ARRAY_SIZE(rdc321x_gpio_resources),
69 .mfd_data = &rdc321x_gpio_pdata, 70 .platform_data = &rdc321x_gpio_pdata,
71 .pdata_size = sizeof(rdc321x_gpio_pdata),
70 }, 72 },
71}; 73};
72 74
diff --git a/drivers/watchdog/rdc321x_wdt.c b/drivers/watchdog/rdc321x_wdt.c
index d8e725082fdc..428f8a1583e8 100644
--- a/drivers/watchdog/rdc321x_wdt.c
+++ b/drivers/watchdog/rdc321x_wdt.c
@@ -37,7 +37,6 @@
37#include <linux/io.h> 37#include <linux/io.h>
38#include <linux/uaccess.h> 38#include <linux/uaccess.h>
39#include <linux/mfd/rdc321x.h> 39#include <linux/mfd/rdc321x.h>
40#include <linux/mfd/core.h>
41 40
42#define RDC_WDT_MASK 0x80000000 /* Mask */ 41#define RDC_WDT_MASK 0x80000000 /* Mask */
43#define RDC_WDT_EN 0x00800000 /* Enable bit */ 42#define RDC_WDT_EN 0x00800000 /* Enable bit */
@@ -232,7 +231,7 @@ static int __devinit rdc321x_wdt_probe(struct platform_device *pdev)
232 struct resource *r; 231 struct resource *r;
233 struct rdc321x_wdt_pdata *pdata; 232 struct rdc321x_wdt_pdata *pdata;
234 233
235 pdata = mfd_get_data(pdev); 234 pdata = pdev->dev.platform_data;
236 if (!pdata) { 235 if (!pdata) {
237 dev_err(&pdev->dev, "no platform data supplied\n"); 236 dev_err(&pdev->dev, "no platform data supplied\n");
238 return -ENODEV; 237 return -ENODEV;