aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/connector-dvi.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/connector-hdmi.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/encoder-opa362.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-dpi.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c4
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c4
-rw-r--r--drivers/gpu/drm/omapdrm/dss/base.c27
-rw-r--r--drivers/gpu/drm/omapdrm/dss/display.c24
-rw-r--r--drivers/gpu/drm/omapdrm/dss/omapdss.h5
-rw-r--r--drivers/gpu/drm/omapdrm/dss/output.c2
-rw-r--r--drivers/gpu/drm/omapdrm/omap_connector.c4
-rw-r--r--drivers/gpu/drm/omapdrm/omap_crtc.c2
-rw-r--r--drivers/gpu/drm/omapdrm/omap_drv.c8
21 files changed, 62 insertions, 66 deletions
diff --git a/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c b/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
index 49720117da15..0eacd2dc302d 100644
--- a/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
+++ b/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
@@ -55,7 +55,7 @@ static int tvc_connect(struct omap_dss_device *dssdev)
55 55
56 r = omapdss_device_connect(src, dssdev); 56 r = omapdss_device_connect(src, dssdev);
57 if (r) { 57 if (r) {
58 omap_dss_put_device(src); 58 omapdss_device_put(src);
59 return r; 59 return r;
60 } 60 }
61 61
@@ -68,7 +68,7 @@ static void tvc_disconnect(struct omap_dss_device *dssdev)
68 68
69 omapdss_device_disconnect(src, dssdev); 69 omapdss_device_disconnect(src, dssdev);
70 70
71 omap_dss_put_device(src); 71 omapdss_device_put(src);
72} 72}
73 73
74static int tvc_enable(struct omap_dss_device *dssdev) 74static int tvc_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/connector-dvi.c b/drivers/gpu/drm/omapdrm/displays/connector-dvi.c
index 7876e61bf63e..754f15bc0115 100644
--- a/drivers/gpu/drm/omapdrm/displays/connector-dvi.c
+++ b/drivers/gpu/drm/omapdrm/displays/connector-dvi.c
@@ -69,7 +69,7 @@ static int dvic_connect(struct omap_dss_device *dssdev)
69 69
70 r = omapdss_device_connect(src, dssdev); 70 r = omapdss_device_connect(src, dssdev);
71 if (r) { 71 if (r) {
72 omap_dss_put_device(src); 72 omapdss_device_put(src);
73 return r; 73 return r;
74 } 74 }
75 75
@@ -82,7 +82,7 @@ static void dvic_disconnect(struct omap_dss_device *dssdev)
82 82
83 omapdss_device_disconnect(src, dssdev); 83 omapdss_device_disconnect(src, dssdev);
84 84
85 omap_dss_put_device(src); 85 omapdss_device_put(src);
86} 86}
87 87
88static int dvic_enable(struct omap_dss_device *dssdev) 88static int dvic_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/connector-hdmi.c b/drivers/gpu/drm/omapdrm/displays/connector-hdmi.c
index 5e07a8479cfc..e05f2964f8e1 100644
--- a/drivers/gpu/drm/omapdrm/displays/connector-hdmi.c
+++ b/drivers/gpu/drm/omapdrm/displays/connector-hdmi.c
@@ -65,7 +65,7 @@ static int hdmic_connect(struct omap_dss_device *dssdev)
65 65
66 r = omapdss_device_connect(src, dssdev); 66 r = omapdss_device_connect(src, dssdev);
67 if (r) { 67 if (r) {
68 omap_dss_put_device(src); 68 omapdss_device_put(src);
69 return r; 69 return r;
70 } 70 }
71 71
@@ -78,7 +78,7 @@ static void hdmic_disconnect(struct omap_dss_device *dssdev)
78 78
79 omapdss_device_disconnect(src, dssdev); 79 omapdss_device_disconnect(src, dssdev);
80 80
81 omap_dss_put_device(src); 81 omapdss_device_put(src);
82} 82}
83 83
84static int hdmic_enable(struct omap_dss_device *dssdev) 84static int hdmic_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c b/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c
index 52ceaae14647..f665f2caea22 100644
--- a/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c
+++ b/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c
@@ -45,7 +45,7 @@ static int opa362_connect(struct omap_dss_device *dssdev,
45 45
46 r = omapdss_device_connect(src, dssdev); 46 r = omapdss_device_connect(src, dssdev);
47 if (r) { 47 if (r) {
48 omap_dss_put_device(src); 48 omapdss_device_put(src);
49 return r; 49 return r;
50 } 50 }
51 51
@@ -60,7 +60,7 @@ static void opa362_disconnect(struct omap_dss_device *dssdev,
60 60
61 omapdss_device_disconnect(src, &ddata->dssdev); 61 omapdss_device_disconnect(src, &ddata->dssdev);
62 62
63 omap_dss_put_device(src); 63 omapdss_device_put(src);
64} 64}
65 65
66static int opa362_enable(struct omap_dss_device *dssdev) 66static int opa362_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c b/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c
index f4223cf7f03f..11c123ca7916 100644
--- a/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c
+++ b/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c
@@ -41,7 +41,7 @@ static int tfp410_connect(struct omap_dss_device *dssdev,
41 41
42 r = omapdss_device_connect(src, dssdev); 42 r = omapdss_device_connect(src, dssdev);
43 if (r) { 43 if (r) {
44 omap_dss_put_device(src); 44 omapdss_device_put(src);
45 return r; 45 return r;
46 } 46 }
47 47
@@ -56,7 +56,7 @@ static void tfp410_disconnect(struct omap_dss_device *dssdev,
56 56
57 omapdss_device_disconnect(src, &ddata->dssdev); 57 omapdss_device_disconnect(src, &ddata->dssdev);
58 58
59 omap_dss_put_device(src); 59 omapdss_device_put(src);
60} 60}
61 61
62static int tfp410_enable(struct omap_dss_device *dssdev) 62static int tfp410_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.c b/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.c
index 90e07036fb48..eb2d5af34a35 100644
--- a/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.c
+++ b/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.c
@@ -50,7 +50,7 @@ static int tpd_connect(struct omap_dss_device *dssdev,
50 50
51 r = omapdss_device_connect(src, dssdev); 51 r = omapdss_device_connect(src, dssdev);
52 if (r) { 52 if (r) {
53 omap_dss_put_device(src); 53 omapdss_device_put(src);
54 return r; 54 return r;
55 } 55 }
56 56
@@ -74,7 +74,7 @@ static void tpd_disconnect(struct omap_dss_device *dssdev,
74 74
75 omapdss_device_disconnect(src, &ddata->dssdev); 75 omapdss_device_disconnect(src, &ddata->dssdev);
76 76
77 omap_dss_put_device(src); 77 omapdss_device_put(src);
78} 78}
79 79
80static int tpd_enable(struct omap_dss_device *dssdev) 80static int tpd_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dpi.c b/drivers/gpu/drm/omapdrm/displays/panel-dpi.c
index 3e2bca737de0..64eab64e5f0d 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-dpi.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-dpi.c
@@ -47,7 +47,7 @@ static int panel_dpi_connect(struct omap_dss_device *dssdev)
47 47
48 r = omapdss_device_connect(src, dssdev); 48 r = omapdss_device_connect(src, dssdev);
49 if (r) { 49 if (r) {
50 omap_dss_put_device(src); 50 omapdss_device_put(src);
51 return r; 51 return r;
52 } 52 }
53 53
@@ -60,7 +60,7 @@ static void panel_dpi_disconnect(struct omap_dss_device *dssdev)
60 60
61 omapdss_device_disconnect(src, dssdev); 61 omapdss_device_disconnect(src, dssdev);
62 62
63 omap_dss_put_device(src); 63 omapdss_device_put(src);
64} 64}
65 65
66static int panel_dpi_enable(struct omap_dss_device *dssdev) 66static int panel_dpi_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
index 0614db1c7366..bd9401c1c11e 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
@@ -794,7 +794,7 @@ err_vc_id:
794err_req_vc: 794err_req_vc:
795 omapdss_device_disconnect(src, dssdev); 795 omapdss_device_disconnect(src, dssdev);
796err_connect: 796err_connect:
797 omap_dss_put_device(src); 797 omapdss_device_put(src);
798 return r; 798 return r;
799} 799}
800 800
@@ -806,7 +806,7 @@ static void dsicm_disconnect(struct omap_dss_device *dssdev)
806 src->ops->dsi.release_vc(src, ddata->channel); 806 src->ops->dsi.release_vc(src, ddata->channel);
807 omapdss_device_disconnect(src, dssdev); 807 omapdss_device_disconnect(src, dssdev);
808 808
809 omap_dss_put_device(src); 809 omapdss_device_put(src);
810} 810}
811 811
812static int dsicm_enable(struct omap_dss_device *dssdev) 812static int dsicm_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c b/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c
index 0698b64e5bdc..9f9caeadf5dd 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c
@@ -129,7 +129,7 @@ static int lb035q02_connect(struct omap_dss_device *dssdev)
129 129
130 r = omapdss_device_connect(src, dssdev); 130 r = omapdss_device_connect(src, dssdev);
131 if (r) { 131 if (r) {
132 omap_dss_put_device(src); 132 omapdss_device_put(src);
133 return r; 133 return r;
134 } 134 }
135 135
@@ -144,7 +144,7 @@ static void lb035q02_disconnect(struct omap_dss_device *dssdev)
144 144
145 omapdss_device_disconnect(src, dssdev); 145 omapdss_device_disconnect(src, dssdev);
146 146
147 omap_dss_put_device(src); 147 omapdss_device_put(src);
148} 148}
149 149
150static int lb035q02_enable(struct omap_dss_device *dssdev) 150static int lb035q02_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c b/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c
index da34c35009dd..d07c955ea06f 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c
@@ -124,7 +124,7 @@ static int nec_8048_connect(struct omap_dss_device *dssdev)
124 124
125 r = omapdss_device_connect(src, dssdev); 125 r = omapdss_device_connect(src, dssdev);
126 if (r) { 126 if (r) {
127 omap_dss_put_device(src); 127 omapdss_device_put(src);
128 return r; 128 return r;
129 } 129 }
130 130
@@ -137,7 +137,7 @@ static void nec_8048_disconnect(struct omap_dss_device *dssdev)
137 137
138 omapdss_device_disconnect(src, dssdev); 138 omapdss_device_disconnect(src, dssdev);
139 139
140 omap_dss_put_device(src); 140 omapdss_device_put(src);
141} 141}
142 142
143static int nec_8048_enable(struct omap_dss_device *dssdev) 143static int nec_8048_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c b/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c
index d92ee6f1ae7f..d02f22a858e2 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c
@@ -70,7 +70,7 @@ static int sharp_ls_connect(struct omap_dss_device *dssdev)
70 70
71 r = omapdss_device_connect(src, dssdev); 71 r = omapdss_device_connect(src, dssdev);
72 if (r) { 72 if (r) {
73 omap_dss_put_device(src); 73 omapdss_device_put(src);
74 return r; 74 return r;
75 } 75 }
76 76
@@ -83,7 +83,7 @@ static void sharp_ls_disconnect(struct omap_dss_device *dssdev)
83 83
84 omapdss_device_disconnect(src, dssdev); 84 omapdss_device_disconnect(src, dssdev);
85 85
86 omap_dss_put_device(src); 86 omapdss_device_put(src);
87} 87}
88 88
89static int sharp_ls_enable(struct omap_dss_device *dssdev) 89static int sharp_ls_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c b/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
index 4602f7cd1b53..a98c1181887a 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
@@ -519,7 +519,7 @@ static int acx565akm_connect(struct omap_dss_device *dssdev)
519 519
520 r = omapdss_device_connect(src, dssdev); 520 r = omapdss_device_connect(src, dssdev);
521 if (r) { 521 if (r) {
522 omap_dss_put_device(src); 522 omapdss_device_put(src);
523 return r; 523 return r;
524 } 524 }
525 525
@@ -532,7 +532,7 @@ static void acx565akm_disconnect(struct omap_dss_device *dssdev)
532 532
533 omapdss_device_disconnect(src, dssdev); 533 omapdss_device_disconnect(src, dssdev);
534 534
535 omap_dss_put_device(src); 535 omapdss_device_put(src);
536} 536}
537 537
538static int acx565akm_panel_power_on(struct omap_dss_device *dssdev) 538static int acx565akm_panel_power_on(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
index b7c95b903d03..07c3f8143e4c 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
@@ -178,7 +178,7 @@ static int td028ttec1_panel_connect(struct omap_dss_device *dssdev)
178 178
179 r = omapdss_device_connect(src, dssdev); 179 r = omapdss_device_connect(src, dssdev);
180 if (r) { 180 if (r) {
181 omap_dss_put_device(src); 181 omapdss_device_put(src);
182 return r; 182 return r;
183 } 183 }
184 184
@@ -191,7 +191,7 @@ static void td028ttec1_panel_disconnect(struct omap_dss_device *dssdev)
191 191
192 omapdss_device_disconnect(src, dssdev); 192 omapdss_device_disconnect(src, dssdev);
193 193
194 omap_dss_put_device(src); 194 omapdss_device_put(src);
195} 195}
196 196
197static int td028ttec1_panel_enable(struct omap_dss_device *dssdev) 197static int td028ttec1_panel_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c
index e6b2381b971c..c32ab872e9f9 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c
@@ -349,7 +349,7 @@ static int tpo_td043_connect(struct omap_dss_device *dssdev)
349 349
350 r = omapdss_device_connect(src, dssdev); 350 r = omapdss_device_connect(src, dssdev);
351 if (r) { 351 if (r) {
352 omap_dss_put_device(src); 352 omapdss_device_put(src);
353 return r; 353 return r;
354 } 354 }
355 355
@@ -362,7 +362,7 @@ static void tpo_td043_disconnect(struct omap_dss_device *dssdev)
362 362
363 omapdss_device_disconnect(src, dssdev); 363 omapdss_device_disconnect(src, dssdev);
364 364
365 omap_dss_put_device(src); 365 omapdss_device_put(src);
366} 366}
367 367
368static int tpo_td043_enable(struct omap_dss_device *dssdev) 368static int tpo_td043_enable(struct omap_dss_device *dssdev)
diff --git a/drivers/gpu/drm/omapdrm/dss/base.c b/drivers/gpu/drm/omapdrm/dss/base.c
index 9f01a4f28145..08846eea5a53 100644
--- a/drivers/gpu/drm/omapdrm/dss/base.c
+++ b/drivers/gpu/drm/omapdrm/dss/base.c
@@ -91,6 +91,27 @@ static bool omapdss_device_is_registered(struct device_node *node)
91 return found; 91 return found;
92} 92}
93 93
94struct omap_dss_device *omapdss_device_get(struct omap_dss_device *dssdev)
95{
96 if (!try_module_get(dssdev->owner))
97 return NULL;
98
99 if (get_device(dssdev->dev) == NULL) {
100 module_put(dssdev->owner);
101 return NULL;
102 }
103
104 return dssdev;
105}
106EXPORT_SYMBOL(omapdss_device_get);
107
108void omapdss_device_put(struct omap_dss_device *dssdev)
109{
110 put_device(dssdev->dev);
111 module_put(dssdev->owner);
112}
113EXPORT_SYMBOL(omapdss_device_put);
114
94struct omap_dss_device *omapdss_find_device_by_port(struct device_node *src, 115struct omap_dss_device *omapdss_find_device_by_port(struct device_node *src,
95 unsigned int port) 116 unsigned int port)
96{ 117{
@@ -98,7 +119,7 @@ struct omap_dss_device *omapdss_find_device_by_port(struct device_node *src,
98 119
99 list_for_each_entry(dssdev, &omapdss_devices_list, list) { 120 list_for_each_entry(dssdev, &omapdss_devices_list, list) {
100 if (dssdev->dev->of_node == src && dssdev->port_num == port) 121 if (dssdev->dev->of_node == src && dssdev->port_num == port)
101 return omap_dss_get_device(dssdev); 122 return omapdss_device_get(dssdev);
102 } 123 }
103 124
104 return NULL; 125 return NULL;
@@ -147,9 +168,9 @@ struct omap_dss_device *omapdss_device_get_next(struct omap_dss_device *from,
147 168
148done: 169done:
149 if (from) 170 if (from)
150 omap_dss_put_device(from); 171 omapdss_device_put(from);
151 if (dssdev) 172 if (dssdev)
152 omap_dss_get_device(dssdev); 173 omapdss_device_get(dssdev);
153 174
154 mutex_unlock(&omapdss_devices_lock); 175 mutex_unlock(&omapdss_devices_lock);
155 return dssdev; 176 return dssdev;
diff --git a/drivers/gpu/drm/omapdrm/dss/display.c b/drivers/gpu/drm/omapdrm/dss/display.c
index 178d88841e0c..53cb46f6503d 100644
--- a/drivers/gpu/drm/omapdrm/dss/display.c
+++ b/drivers/gpu/drm/omapdrm/dss/display.c
@@ -21,9 +21,6 @@
21#define DSS_SUBSYS_NAME "DISPLAY" 21#define DSS_SUBSYS_NAME "DISPLAY"
22 22
23#include <linux/kernel.h> 23#include <linux/kernel.h>
24#include <linux/module.h>
25#include <linux/jiffies.h>
26#include <linux/platform_device.h>
27#include <linux/of.h> 24#include <linux/of.h>
28 25
29#include "omapdss.h" 26#include "omapdss.h"
@@ -52,24 +49,3 @@ void omapdss_display_init(struct omap_dss_device *dssdev)
52 "display%u", id); 49 "display%u", id);
53} 50}
54EXPORT_SYMBOL_GPL(omapdss_display_init); 51EXPORT_SYMBOL_GPL(omapdss_display_init);
55
56struct omap_dss_device *omap_dss_get_device(struct omap_dss_device *dssdev)
57{
58 if (!try_module_get(dssdev->owner))
59 return NULL;
60
61 if (get_device(dssdev->dev) == NULL) {
62 module_put(dssdev->owner);
63 return NULL;
64 }
65
66 return dssdev;
67}
68EXPORT_SYMBOL(omap_dss_get_device);
69
70void omap_dss_put_device(struct omap_dss_device *dssdev)
71{
72 put_device(dssdev->dev);
73 module_put(dssdev->owner);
74}
75EXPORT_SYMBOL(omap_dss_put_device);
diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h b/drivers/gpu/drm/omapdrm/dss/omapdss.h
index 5f71f6885991..96011e42da05 100644
--- a/drivers/gpu/drm/omapdrm/dss/omapdss.h
+++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h
@@ -492,6 +492,8 @@ void omapdss_display_init(struct omap_dss_device *dssdev);
492 492
493void omapdss_device_register(struct omap_dss_device *dssdev); 493void omapdss_device_register(struct omap_dss_device *dssdev);
494void omapdss_device_unregister(struct omap_dss_device *dssdev); 494void omapdss_device_unregister(struct omap_dss_device *dssdev);
495struct omap_dss_device *omapdss_device_get(struct omap_dss_device *dssdev);
496void omapdss_device_put(struct omap_dss_device *dssdev);
495struct omap_dss_device *omapdss_find_device_by_port(struct device_node *src, 497struct omap_dss_device *omapdss_find_device_by_port(struct device_node *src,
496 unsigned int port); 498 unsigned int port);
497struct omap_dss_device *omapdss_device_get_next(struct omap_dss_device *from, 499struct omap_dss_device *omapdss_device_get_next(struct omap_dss_device *from,
@@ -501,9 +503,6 @@ int omapdss_device_connect(struct omap_dss_device *src,
501void omapdss_device_disconnect(struct omap_dss_device *src, 503void omapdss_device_disconnect(struct omap_dss_device *src,
502 struct omap_dss_device *dst); 504 struct omap_dss_device *dst);
503 505
504struct omap_dss_device *omap_dss_get_device(struct omap_dss_device *dssdev);
505void omap_dss_put_device(struct omap_dss_device *dssdev);
506
507int omap_dss_get_num_overlay_managers(void); 506int omap_dss_get_num_overlay_managers(void);
508 507
509int omap_dss_get_num_overlays(void); 508int omap_dss_get_num_overlays(void);
diff --git a/drivers/gpu/drm/omapdrm/dss/output.c b/drivers/gpu/drm/omapdrm/dss/output.c
index e62da96f83af..b5bf7a5e35d9 100644
--- a/drivers/gpu/drm/omapdrm/dss/output.c
+++ b/drivers/gpu/drm/omapdrm/dss/output.c
@@ -93,7 +93,7 @@ struct omap_dss_device *omapdss_find_output_from_display(struct omap_dss_device
93 dssdev = dssdev->src; 93 dssdev = dssdev->src;
94 94
95 if (dssdev->id != 0) 95 if (dssdev->id != 0)
96 return omap_dss_get_device(dssdev); 96 return omapdss_device_get(dssdev);
97 97
98 return NULL; 98 return NULL;
99} 99}
diff --git a/drivers/gpu/drm/omapdrm/omap_connector.c b/drivers/gpu/drm/omapdrm/omap_connector.c
index 3b60086f2938..69ebb0fa1df5 100644
--- a/drivers/gpu/drm/omapdrm/omap_connector.c
+++ b/drivers/gpu/drm/omapdrm/omap_connector.c
@@ -98,7 +98,7 @@ static void omap_connector_destroy(struct drm_connector *connector)
98 drm_connector_cleanup(connector); 98 drm_connector_cleanup(connector);
99 kfree(omap_connector); 99 kfree(omap_connector);
100 100
101 omap_dss_put_device(dssdev); 101 omapdss_device_put(dssdev);
102} 102}
103 103
104#define MAX_EDID 512 104#define MAX_EDID 512
@@ -254,7 +254,7 @@ struct drm_connector *omap_connector_init(struct drm_device *dev,
254 254
255 DBG("%s", dssdev->name); 255 DBG("%s", dssdev->name);
256 256
257 omap_dss_get_device(dssdev); 257 omapdss_device_get(dssdev);
258 258
259 omap_connector = kzalloc(sizeof(*omap_connector), GFP_KERNEL); 259 omap_connector = kzalloc(sizeof(*omap_connector), GFP_KERNEL);
260 if (!omap_connector) 260 if (!omap_connector)
diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c b/drivers/gpu/drm/omapdrm/omap_crtc.c
index 6c4d40b824e4..e18ca6cdc0d6 100644
--- a/drivers/gpu/drm/omapdrm/omap_crtc.c
+++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
@@ -704,7 +704,7 @@ struct drm_crtc *omap_crtc_init(struct drm_device *dev,
704 704
705 out = omapdss_find_output_from_display(dssdev); 705 out = omapdss_find_output_from_display(dssdev);
706 channel = out->dispc_channel; 706 channel = out->dispc_channel;
707 omap_dss_put_device(out); 707 omapdss_device_put(out);
708 708
709 DBG("%s", channel_names[channel]); 709 DBG("%s", channel_names[channel]);
710 710
diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c
index 4f402eb8088d..a3b7dbf1b92b 100644
--- a/drivers/gpu/drm/omapdrm/omap_drv.c
+++ b/drivers/gpu/drm/omapdrm/omap_drv.c
@@ -161,7 +161,7 @@ static void omap_disconnect_dssdevs(struct drm_device *ddev)
161 161
162 omapdss_device_disconnect(dssdev, NULL); 162 omapdss_device_disconnect(dssdev, NULL);
163 priv->dssdevs[i] = NULL; 163 priv->dssdevs[i] = NULL;
164 omap_dss_put_device(dssdev); 164 omapdss_device_put(dssdev);
165 } 165 }
166 166
167 priv->num_dssdevs = 0; 167 priv->num_dssdevs = 0;
@@ -191,17 +191,17 @@ static int omap_connect_dssdevs(struct drm_device *ddev)
191 for_each_dss_display(dssdev) { 191 for_each_dss_display(dssdev) {
192 r = omapdss_device_connect(dssdev, NULL); 192 r = omapdss_device_connect(dssdev, NULL);
193 if (r == -EPROBE_DEFER) { 193 if (r == -EPROBE_DEFER) {
194 omap_dss_put_device(dssdev); 194 omapdss_device_put(dssdev);
195 goto cleanup; 195 goto cleanup;
196 } else if (r) { 196 } else if (r) {
197 dev_warn(dssdev->dev, "could not connect display: %s\n", 197 dev_warn(dssdev->dev, "could not connect display: %s\n",
198 dssdev->name); 198 dssdev->name);
199 } else { 199 } else {
200 omap_dss_get_device(dssdev); 200 omapdss_device_get(dssdev);
201 priv->dssdevs[priv->num_dssdevs++] = dssdev; 201 priv->dssdevs[priv->num_dssdevs++] = dssdev;
202 if (priv->num_dssdevs == ARRAY_SIZE(priv->dssdevs)) { 202 if (priv->num_dssdevs == ARRAY_SIZE(priv->dssdevs)) {
203 /* To balance the 'for_each_dss_display' loop */ 203 /* To balance the 'for_each_dss_display' loop */
204 omap_dss_put_device(dssdev); 204 omapdss_device_put(dssdev);
205 break; 205 break;
206 } 206 }
207 } 207 }