Code Review
/
kvmfornfv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git]
/
kernel
/
drivers
/
video
/
fbdev
/
omap2
/
dss
/
sdi.c
diff --git
a/kernel/drivers/video/fbdev/omap2/dss/sdi.c
b/kernel/drivers/video/fbdev/omap2/dss/sdi.c
index
5c2ccab
..
5843580
100644
(file)
--- a/
kernel/drivers/video/fbdev/omap2/dss/sdi.c
+++ b/
kernel/drivers/video/fbdev/omap2/dss/sdi.c
@@
-27,6
+27,7
@@
#include <linux/platform_device.h>
#include <linux/string.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/string.h>
#include <linux/of.h>
+#include <linux/component.h>
#include <video/omapdss.h>
#include "dss.h"
#include <video/omapdss.h>
#include "dss.h"
@@
-350,15
+351,17
@@
static void sdi_init_output(struct platform_device *pdev)
omapdss_register_output(out);
}
omapdss_register_output(out);
}
-static void
__exit
sdi_uninit_output(struct platform_device *pdev)
+static void sdi_uninit_output(struct platform_device *pdev)
{
struct omap_dss_device *out = &sdi.output;
omapdss_unregister_output(out);
}
{
struct omap_dss_device *out = &sdi.output;
omapdss_unregister_output(out);
}
-static int
omap_sdi_probe(struct platform_device *pdev
)
+static int
sdi_bind(struct device *dev, struct device *master, void *data
)
{
{
+ struct platform_device *pdev = to_platform_device(dev);
+
sdi.pdev = pdev;
sdi_init_output(pdev);
sdi.pdev = pdev;
sdi_init_output(pdev);
@@
-366,16
+369,32
@@
static int omap_sdi_probe(struct platform_device *pdev)
return 0;
}
return 0;
}
-static
int __exit omap_sdi_remove(struct platform_device *pdev
)
+static
void sdi_unbind(struct device *dev, struct device *master, void *data
)
{
{
+ struct platform_device *pdev = to_platform_device(dev);
+
sdi_uninit_output(pdev);
sdi_uninit_output(pdev);
+}
+
+static const struct component_ops sdi_component_ops = {
+ .bind = sdi_bind,
+ .unbind = sdi_unbind,
+};
+static int sdi_probe(struct platform_device *pdev)
+{
+ return component_add(&pdev->dev, &sdi_component_ops);
+}
+
+static int sdi_remove(struct platform_device *pdev)
+{
+ component_del(&pdev->dev, &sdi_component_ops);
return 0;
}
static struct platform_driver omap_sdi_driver = {
return 0;
}
static struct platform_driver omap_sdi_driver = {
- .probe =
omap_
sdi_probe,
- .remove =
__exit_p(omap_sdi_remove)
,
+ .probe = sdi_probe,
+ .remove =
sdi_remove
,
.driver = {
.name = "omapdss_sdi",
.suppress_bind_attrs = true,
.driver = {
.name = "omapdss_sdi",
.suppress_bind_attrs = true,
@@
-387,12
+406,12
@@
int __init sdi_init_platform_driver(void)
return platform_driver_register(&omap_sdi_driver);
}
return platform_driver_register(&omap_sdi_driver);
}
-void
__exit
sdi_uninit_platform_driver(void)
+void sdi_uninit_platform_driver(void)
{
platform_driver_unregister(&omap_sdi_driver);
}
{
platform_driver_unregister(&omap_sdi_driver);
}
-int
__init
sdi_init_port(struct platform_device *pdev, struct device_node *port)
+int sdi_init_port(struct platform_device *pdev, struct device_node *port)
{
struct device_node *ep;
u32 datapairs;
{
struct device_node *ep;
u32 datapairs;
@@
-426,7
+445,7
@@
err_datapairs:
return r;
}
return r;
}
-void
__exit
sdi_uninit_port(struct device_node *port)
+void sdi_uninit_port(struct device_node *port)
{
if (!sdi.port_initialized)
return;
{
if (!sdi.port_initialized)
return;