Commit f7ec9437 authored by Felipe Balbi's avatar Felipe Balbi

usb: musb: pass platform_ops via platform_data

... then we don't need to export any symbols
from glue layer to musb_core.
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent a023c631
...@@ -530,7 +530,7 @@ void musb_read_fifo(struct musb_hw_ep *hw_ep, u16 len, u8 *dst) ...@@ -530,7 +530,7 @@ void musb_read_fifo(struct musb_hw_ep *hw_ep, u16 len, u8 *dst)
} }
} }
const struct musb_platform_ops musb_ops = { static const struct musb_platform_ops am35x_ops = {
.init = am35x_musb_init, .init = am35x_musb_init,
.exit = am35x_musb_exit, .exit = am35x_musb_exit,
...@@ -572,6 +572,8 @@ static int __init am35x_probe(struct platform_device *pdev) ...@@ -572,6 +572,8 @@ static int __init am35x_probe(struct platform_device *pdev)
glue->dev = &pdev->dev; glue->dev = &pdev->dev;
glue->musb = musb; glue->musb = musb;
pdata->platform_ops = &am35x_ops;
platform_set_drvdata(pdev, glue); platform_set_drvdata(pdev, glue);
ret = platform_device_add_resources(musb, pdev->resource, ret = platform_device_add_resources(musb, pdev->resource,
......
...@@ -436,7 +436,7 @@ static int bfin_musb_exit(struct musb *musb) ...@@ -436,7 +436,7 @@ static int bfin_musb_exit(struct musb *musb)
return 0; return 0;
} }
const struct musb_platform_ops musb_ops = { static const struct musb_platform_ops bfin_ops = {
.init = bfin_musb_init, .init = bfin_musb_init,
.exit = bfin_musb_exit, .exit = bfin_musb_exit,
...@@ -479,6 +479,8 @@ static int __init bfin_probe(struct platform_device *pdev) ...@@ -479,6 +479,8 @@ static int __init bfin_probe(struct platform_device *pdev)
glue->dev = &pdev->dev; glue->dev = &pdev->dev;
glue->musb = musb; glue->musb = musb;
pdata->platform_ops = &bfin_ops;
platform_set_drvdata(pdev, glue); platform_set_drvdata(pdev, glue);
ret = platform_device_add_resources(musb, pdev->resource, ret = platform_device_add_resources(musb, pdev->resource,
......
...@@ -475,7 +475,7 @@ static int da8xx_musb_exit(struct musb *musb) ...@@ -475,7 +475,7 @@ static int da8xx_musb_exit(struct musb *musb)
return 0; return 0;
} }
const struct musb_platform_ops musb_ops = { static const struct musb_platform_ops da8xx_ops = {
.init = da8xx_musb_init, .init = da8xx_musb_init,
.exit = da8xx_musb_exit, .exit = da8xx_musb_exit,
...@@ -517,6 +517,8 @@ static int __init da8xx_probe(struct platform_device *pdev) ...@@ -517,6 +517,8 @@ static int __init da8xx_probe(struct platform_device *pdev)
glue->dev = &pdev->dev; glue->dev = &pdev->dev;
glue->musb = musb; glue->musb = musb;
pdata->platform_ops = &da8xx_ops;
platform_set_drvdata(pdev, glue); platform_set_drvdata(pdev, glue);
ret = platform_device_add_resources(musb, pdev->resource, ret = platform_device_add_resources(musb, pdev->resource,
......
...@@ -510,7 +510,7 @@ static int davinci_musb_exit(struct musb *musb) ...@@ -510,7 +510,7 @@ static int davinci_musb_exit(struct musb *musb)
return 0; return 0;
} }
const struct musb_platform_ops musb_ops = { static const struct musb_platform_ops davinci_ops = {
.init = davinci_musb_init, .init = davinci_musb_init,
.exit = davinci_musb_exit, .exit = davinci_musb_exit,
...@@ -551,6 +551,8 @@ static int __init davinci_probe(struct platform_device *pdev) ...@@ -551,6 +551,8 @@ static int __init davinci_probe(struct platform_device *pdev)
glue->dev = &pdev->dev; glue->dev = &pdev->dev;
glue->musb = musb; glue->musb = musb;
pdata->platform_ops = &davinci_ops;
platform_set_drvdata(pdev, glue); platform_set_drvdata(pdev, glue);
ret = platform_device_add_resources(musb, pdev->resource, ret = platform_device_add_resources(musb, pdev->resource,
......
...@@ -1897,7 +1897,6 @@ allocate_instance(struct device *dev, ...@@ -1897,7 +1897,6 @@ allocate_instance(struct device *dev,
} }
musb->controller = dev; musb->controller = dev;
musb->ops = &musb_ops;
return musb; return musb;
} }
...@@ -1997,6 +1996,7 @@ musb_init_controller(struct device *dev, int nIrq, void __iomem *ctrl) ...@@ -1997,6 +1996,7 @@ musb_init_controller(struct device *dev, int nIrq, void __iomem *ctrl)
musb->board_set_power = plat->set_power; musb->board_set_power = plat->set_power;
musb->set_clock = plat->set_clock; musb->set_clock = plat->set_clock;
musb->min_power = plat->min_power; musb->min_power = plat->min_power;
musb->ops = plat->platform_ops;
/* Clock usage is chip-specific ... functional clock (DaVinci, /* Clock usage is chip-specific ... functional clock (DaVinci,
* OMAP2430), or PHY ref (some TUSB6010 boards). All this core * OMAP2430), or PHY ref (some TUSB6010 boards). All this core
......
...@@ -281,8 +281,6 @@ struct musb_platform_ops { ...@@ -281,8 +281,6 @@ struct musb_platform_ops {
void (*set_vbus)(struct musb *musb, int on); void (*set_vbus)(struct musb *musb, int on);
}; };
extern const struct musb_platform_ops musb_ops;
/* /*
* struct musb_hw_ep - endpoint hardware (bidirectional) * struct musb_hw_ep - endpoint hardware (bidirectional)
* *
......
...@@ -333,7 +333,7 @@ static int omap2430_musb_exit(struct musb *musb) ...@@ -333,7 +333,7 @@ static int omap2430_musb_exit(struct musb *musb)
return 0; return 0;
} }
const struct musb_platform_ops musb_ops = { static const struct musb_platform_ops omap2430_ops = {
.init = omap2430_musb_init, .init = omap2430_musb_init,
.exit = omap2430_musb_exit, .exit = omap2430_musb_exit,
...@@ -378,6 +378,8 @@ static int __init omap2430_probe(struct platform_device *pdev) ...@@ -378,6 +378,8 @@ static int __init omap2430_probe(struct platform_device *pdev)
glue->dev = &pdev->dev; glue->dev = &pdev->dev;
glue->musb = musb; glue->musb = musb;
pdata->platform_ops = &omap2430_ops;
platform_set_drvdata(pdev, glue); platform_set_drvdata(pdev, glue);
ret = platform_device_add_resources(musb, pdev->resource, ret = platform_device_add_resources(musb, pdev->resource,
......
...@@ -1178,7 +1178,7 @@ static int tusb_musb_exit(struct musb *musb) ...@@ -1178,7 +1178,7 @@ static int tusb_musb_exit(struct musb *musb)
return 0; return 0;
} }
const struct musb_platform_ops musb_ops = { static const struct musb_platform_ops tusb_ops = {
.init = tusb_musb_init, .init = tusb_musb_init,
.exit = tusb_musb_exit, .exit = tusb_musb_exit,
...@@ -1221,6 +1221,8 @@ static int __init tusb_probe(struct platform_device *pdev) ...@@ -1221,6 +1221,8 @@ static int __init tusb_probe(struct platform_device *pdev)
glue->dev = &pdev->dev; glue->dev = &pdev->dev;
glue->musb = musb; glue->musb = musb;
pdata->platform_ops = &tusb_ops;
platform_set_drvdata(pdev, glue); platform_set_drvdata(pdev, glue);
ret = platform_device_add_resources(musb, pdev->resource, ret = platform_device_add_resources(musb, pdev->resource,
......
...@@ -126,6 +126,9 @@ struct musb_hdrc_platform_data { ...@@ -126,6 +126,9 @@ struct musb_hdrc_platform_data {
/* Architecture specific board data */ /* Architecture specific board data */
void *board_data; void *board_data;
/* Platform specific struct musb_ops pointer */
const void *platform_ops;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment