Skip to content

Commit

Permalink
mfd: mfd_cell is now implicitly available to tc6393xb drivers
Browse files Browse the repository at this point in the history
No need to explicitly set the cell's platform_data/data_size.

Modify clients to use mfd_get_cell helper function instead of
accessing platform_data directly.

Signed-off-by: Andres Salomon <dilinger@queued.net>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
  • Loading branch information
Andres Salomon authored and Samuel Ortiz committed Mar 23, 2011
1 parent 410b091 commit 7d76ac1
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 34 deletions.
19 changes: 0 additions & 19 deletions drivers/mfd/tc6393xb.c
Original file line number Diff line number Diff line change
Expand Up @@ -694,26 +694,7 @@ static int __devinit tc6393xb_probe(struct platform_device *dev)
}

tc6393xb_cells[TC6393XB_CELL_NAND].driver_data = tcpd->nand_data;
tc6393xb_cells[TC6393XB_CELL_NAND].platform_data =
&tc6393xb_cells[TC6393XB_CELL_NAND];
tc6393xb_cells[TC6393XB_CELL_NAND].data_size =
sizeof(tc6393xb_cells[TC6393XB_CELL_NAND]);

tc6393xb_cells[TC6393XB_CELL_MMC].platform_data =
&tc6393xb_cells[TC6393XB_CELL_MMC];
tc6393xb_cells[TC6393XB_CELL_MMC].data_size =
sizeof(tc6393xb_cells[TC6393XB_CELL_MMC]);

tc6393xb_cells[TC6393XB_CELL_OHCI].platform_data =
&tc6393xb_cells[TC6393XB_CELL_OHCI];
tc6393xb_cells[TC6393XB_CELL_OHCI].data_size =
sizeof(tc6393xb_cells[TC6393XB_CELL_OHCI]);

tc6393xb_cells[TC6393XB_CELL_FB].driver_data = tcpd->fb_data;
tc6393xb_cells[TC6393XB_CELL_FB].platform_data =
&tc6393xb_cells[TC6393XB_CELL_FB];
tc6393xb_cells[TC6393XB_CELL_FB].data_size =
sizeof(tc6393xb_cells[TC6393XB_CELL_FB]);

ret = mfd_add_devices(&dev->dev, dev->id,
tc6393xb_cells, ARRAY_SIZE(tc6393xb_cells),
Expand Down
8 changes: 4 additions & 4 deletions drivers/usb/host/ohci-tmio.c
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ static struct platform_driver ohci_hcd_tmio_driver;

static int __devinit ohci_hcd_tmio_drv_probe(struct platform_device *dev)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct resource *regs = platform_get_resource(dev, IORESOURCE_MEM, 0);
struct resource *config = platform_get_resource(dev, IORESOURCE_MEM, 1);
struct resource *sram = platform_get_resource(dev, IORESOURCE_MEM, 2);
Expand Down Expand Up @@ -274,7 +274,7 @@ static int __devexit ohci_hcd_tmio_drv_remove(struct platform_device *dev)
{
struct usb_hcd *hcd = platform_get_drvdata(dev);
struct tmio_hcd *tmio = hcd_to_tmio(hcd);
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);

usb_remove_hcd(hcd);
tmio_stop_hc(dev);
Expand All @@ -293,7 +293,7 @@ static int __devexit ohci_hcd_tmio_drv_remove(struct platform_device *dev)
#ifdef CONFIG_PM
static int ohci_hcd_tmio_drv_suspend(struct platform_device *dev, pm_message_t state)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct usb_hcd *hcd = platform_get_drvdata(dev);
struct ohci_hcd *ohci = hcd_to_ohci(hcd);
struct tmio_hcd *tmio = hcd_to_tmio(hcd);
Expand Down Expand Up @@ -326,7 +326,7 @@ static int ohci_hcd_tmio_drv_suspend(struct platform_device *dev, pm_message_t s

static int ohci_hcd_tmio_drv_resume(struct platform_device *dev)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct usb_hcd *hcd = platform_get_drvdata(dev);
struct ohci_hcd *ohci = hcd_to_ohci(hcd);
struct tmio_hcd *tmio = hcd_to_tmio(hcd);
Expand Down
20 changes: 9 additions & 11 deletions drivers/video/tmiofb.c
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ static irqreturn_t tmiofb_irq(int irq, void *__info)
*/
static int tmiofb_hw_stop(struct platform_device *dev)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct tmio_fb_data *data = cell->driver_data;
struct fb_info *info = platform_get_drvdata(dev);
struct tmiofb_par *par = info->par;
Expand All @@ -268,7 +268,7 @@ static int tmiofb_hw_stop(struct platform_device *dev)
*/
static int tmiofb_hw_init(struct platform_device *dev)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct fb_info *info = platform_get_drvdata(dev);
struct tmiofb_par *par = info->par;
const struct resource *nlcr = &cell->resources[0];
Expand Down Expand Up @@ -312,7 +312,7 @@ static int tmiofb_hw_init(struct platform_device *dev)
*/
static void tmiofb_hw_mode(struct platform_device *dev)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct tmio_fb_data *data = cell->driver_data;
struct fb_info *info = platform_get_drvdata(dev);
struct fb_videomode *mode = info->mode;
Expand Down Expand Up @@ -559,8 +559,7 @@ static int tmiofb_ioctl(struct fb_info *fbi,
static struct fb_videomode *
tmiofb_find_mode(struct fb_info *info, struct fb_var_screeninfo *var)
{
struct mfd_cell *cell =
info->device->platform_data;
struct mfd_cell *cell = mfd_get_cell(to_platform_device(info->device));
struct tmio_fb_data *data = cell->driver_data;
struct fb_videomode *best = NULL;
int i;
Expand All @@ -581,8 +580,7 @@ static int tmiofb_check_var(struct fb_var_screeninfo *var, struct fb_info *info)
{

struct fb_videomode *mode;
struct mfd_cell *cell =
info->device->platform_data;
struct mfd_cell *cell = mfd_get_cell(to_platform_device(info->device));
struct tmio_fb_data *data = cell->driver_data;

mode = tmiofb_find_mode(info, var);
Expand Down Expand Up @@ -683,7 +681,7 @@ static struct fb_ops tmiofb_ops = {

static int __devinit tmiofb_probe(struct platform_device *dev)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct tmio_fb_data *data = cell->driver_data;
struct resource *ccr = platform_get_resource(dev, IORESOURCE_MEM, 1);
struct resource *lcr = platform_get_resource(dev, IORESOURCE_MEM, 0);
Expand Down Expand Up @@ -811,7 +809,7 @@ static int __devinit tmiofb_probe(struct platform_device *dev)

static int __devexit tmiofb_remove(struct platform_device *dev)
{
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
struct fb_info *info = platform_get_drvdata(dev);
int irq = platform_get_irq(dev, 0);
struct tmiofb_par *par;
Expand Down Expand Up @@ -941,7 +939,7 @@ static int tmiofb_suspend(struct platform_device *dev, pm_message_t state)
#ifdef CONFIG_FB_TMIO_ACCELL
struct tmiofb_par *par = info->par;
#endif
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
int retval = 0;

console_lock();
Expand Down Expand Up @@ -973,7 +971,7 @@ static int tmiofb_suspend(struct platform_device *dev, pm_message_t state)
static int tmiofb_resume(struct platform_device *dev)
{
struct fb_info *info = platform_get_drvdata(dev);
struct mfd_cell *cell = dev->dev.platform_data;
struct mfd_cell *cell = mfd_get_cell(dev);
int retval = 0;

console_lock();
Expand Down

0 comments on commit 7d76ac1

Please sign in to comment.