aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-04-19 21:32:26 -0400
committerDave Airlie <airlied@redhat.com>2015-04-19 23:05:20 -0400
commit2c33ce009ca2389dbf0535d0672214d09738e35e (patch)
tree6186a6458c3c160385d794a23eaf07c786a9e61b /drivers/gpu
parentcec32a47010647e8b0603726ebb75b990a4057a4 (diff)
parent09d51602cf84a1264946711dd4ea0dddbac599a1 (diff)
Merge Linus master into drm-next
The merge is clean, but the arm build fails afterwards, due to API changes in the regulator tree. I've included the patch into the merge to fix the build. Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/drm_crtc.c4
-rw-r--r--drivers/gpu/drm/drm_trace.h1
-rw-r--r--drivers/gpu/drm/i915/i915_drv.c14
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h1
-rw-r--r--drivers/gpu/drm/i915/i915_trace.h1
-rw-r--r--drivers/gpu/drm/i915/intel_drv.h3
-rw-r--r--drivers/gpu/drm/i915/intel_panel.c1
-rw-r--r--drivers/gpu/drm/msm/dsi/dsi_host.c10
-rw-r--r--drivers/gpu/drm/msm/edp/edp_ctrl.c6
-rw-r--r--drivers/gpu/drm/radeon/radeon_trace.h1
10 files changed, 15 insertions, 27 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
index 3403edea9076..3007b44e6bf4 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
@@ -2135,7 +2135,7 @@ int drm_mode_getconnector(struct drm_device *dev, void *data,
2135 connector = drm_connector_find(dev, out_resp->connector_id); 2135 connector = drm_connector_find(dev, out_resp->connector_id);
2136 if (!connector) { 2136 if (!connector) {
2137 ret = -ENOENT; 2137 ret = -ENOENT;
2138 goto out; 2138 goto out_unlock;
2139 } 2139 }
2140 2140
2141 for (i = 0; i < DRM_CONNECTOR_MAX_ENCODER; i++) 2141 for (i = 0; i < DRM_CONNECTOR_MAX_ENCODER; i++)
@@ -2215,6 +2215,8 @@ int drm_mode_getconnector(struct drm_device *dev, void *data,
2215 2215
2216out: 2216out:
2217 drm_modeset_unlock(&dev->mode_config.connection_mutex); 2217 drm_modeset_unlock(&dev->mode_config.connection_mutex);
2218
2219out_unlock:
2218 mutex_unlock(&dev->mode_config.mutex); 2220 mutex_unlock(&dev->mode_config.mutex);
2219 2221
2220 return ret; 2222 return ret;
diff --git a/drivers/gpu/drm/drm_trace.h b/drivers/gpu/drm/drm_trace.h
index 27cc95f36381..ce3c42813fbb 100644
--- a/drivers/gpu/drm/drm_trace.h
+++ b/drivers/gpu/drm/drm_trace.h
@@ -7,7 +7,6 @@
7 7
8#undef TRACE_SYSTEM 8#undef TRACE_SYSTEM
9#define TRACE_SYSTEM drm 9#define TRACE_SYSTEM drm
10#define TRACE_SYSTEM_STRING __stringify(TRACE_SYSTEM)
11#define TRACE_INCLUDE_FILE drm_trace 10#define TRACE_INCLUDE_FILE drm_trace
12 11
13TRACE_EVENT(drm_vblank_event, 12TRACE_EVENT(drm_vblank_event,
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 82f8be4b6745..c24c3f1ff8a3 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -1091,6 +1091,7 @@ static void vlv_save_gunit_s0ix_state(struct drm_i915_private *dev_priv)
1091 /* Gunit-Display CZ domain, 0x182028-0x1821CF */ 1091 /* Gunit-Display CZ domain, 0x182028-0x1821CF */
1092 s->gu_ctl0 = I915_READ(VLV_GU_CTL0); 1092 s->gu_ctl0 = I915_READ(VLV_GU_CTL0);
1093 s->gu_ctl1 = I915_READ(VLV_GU_CTL1); 1093 s->gu_ctl1 = I915_READ(VLV_GU_CTL1);
1094 s->pcbr = I915_READ(VLV_PCBR);
1094 s->clock_gate_dis2 = I915_READ(VLV_GUNIT_CLOCK_GATE2); 1095 s->clock_gate_dis2 = I915_READ(VLV_GUNIT_CLOCK_GATE2);
1095 1096
1096 /* 1097 /*
@@ -1185,6 +1186,7 @@ static void vlv_restore_gunit_s0ix_state(struct drm_i915_private *dev_priv)
1185 /* Gunit-Display CZ domain, 0x182028-0x1821CF */ 1186 /* Gunit-Display CZ domain, 0x182028-0x1821CF */
1186 I915_WRITE(VLV_GU_CTL0, s->gu_ctl0); 1187 I915_WRITE(VLV_GU_CTL0, s->gu_ctl0);
1187 I915_WRITE(VLV_GU_CTL1, s->gu_ctl1); 1188 I915_WRITE(VLV_GU_CTL1, s->gu_ctl1);
1189 I915_WRITE(VLV_PCBR, s->pcbr);
1188 I915_WRITE(VLV_GUNIT_CLOCK_GATE2, s->clock_gate_dis2); 1190 I915_WRITE(VLV_GUNIT_CLOCK_GATE2, s->clock_gate_dis2);
1189} 1191}
1190 1192
@@ -1193,19 +1195,7 @@ int vlv_force_gfx_clock(struct drm_i915_private *dev_priv, bool force_on)
1193 u32 val; 1195 u32 val;
1194 int err; 1196 int err;
1195 1197
1196 val = I915_READ(VLV_GTLC_SURVIVABILITY_REG);
1197 WARN_ON(!!(val & VLV_GFX_CLK_FORCE_ON_BIT) == force_on);
1198
1199#define COND (I915_READ(VLV_GTLC_SURVIVABILITY_REG) & VLV_GFX_CLK_STATUS_BIT) 1198#define COND (I915_READ(VLV_GTLC_SURVIVABILITY_REG) & VLV_GFX_CLK_STATUS_BIT)
1200 /* Wait for a previous force-off to settle */
1201 if (force_on) {
1202 err = wait_for(!COND, 20);
1203 if (err) {
1204 DRM_ERROR("timeout waiting for GFX clock force-off (%08x)\n",
1205 I915_READ(VLV_GTLC_SURVIVABILITY_REG));
1206 return err;
1207 }
1208 }
1209 1199
1210 val = I915_READ(VLV_GTLC_SURVIVABILITY_REG); 1200 val = I915_READ(VLV_GTLC_SURVIVABILITY_REG);
1211 val &= ~VLV_GFX_CLK_FORCE_ON_BIT; 1201 val &= ~VLV_GFX_CLK_FORCE_ON_BIT;
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index e326ac9730cf..8ae6f7f06b3a 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -994,6 +994,7 @@ struct vlv_s0ix_state {
994 /* Display 2 CZ domain */ 994 /* Display 2 CZ domain */
995 u32 gu_ctl0; 995 u32 gu_ctl0;
996 u32 gu_ctl1; 996 u32 gu_ctl1;
997 u32 pcbr;
997 u32 clock_gate_dis2; 998 u32 clock_gate_dis2;
998}; 999};
999 1000
diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
index b3070a4501ab..5fda6c70b423 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -12,7 +12,6 @@
12 12
13#undef TRACE_SYSTEM 13#undef TRACE_SYSTEM
14#define TRACE_SYSTEM i915 14#define TRACE_SYSTEM i915
15#define TRACE_SYSTEM_STRING __stringify(TRACE_SYSTEM)
16#define TRACE_INCLUDE_FILE i915_trace 15#define TRACE_INCLUDE_FILE i915_trace
17 16
18/* pipe updates */ 17/* pipe updates */
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index 744db4d0c68f..897f17db08af 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -37,9 +37,6 @@
37#include <drm/drm_rect.h> 37#include <drm/drm_rect.h>
38#include <drm/drm_atomic.h> 38#include <drm/drm_atomic.h>
39 39
40#define DIV_ROUND_CLOSEST_ULL(ll, d) \
41({ unsigned long long _tmp = (ll)+(d)/2; do_div(_tmp, d); _tmp; })
42
43/** 40/**
44 * _wait_for - magic (register) wait macro 41 * _wait_for - magic (register) wait macro
45 * 42 *
diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c
index d8686ce89160..08532d4ffe0a 100644
--- a/drivers/gpu/drm/i915/intel_panel.c
+++ b/drivers/gpu/drm/i915/intel_panel.c
@@ -30,6 +30,7 @@
30 30
31#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt 31#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
32 32
33#include <linux/kernel.h>
33#include <linux/moduleparam.h> 34#include <linux/moduleparam.h>
34#include "intel_drv.h" 35#include "intel_drv.h"
35 36
diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c b/drivers/gpu/drm/msm/dsi/dsi_host.c
index fdc54e3eff55..956b22492c9a 100644
--- a/drivers/gpu/drm/msm/dsi/dsi_host.c
+++ b/drivers/gpu/drm/msm/dsi/dsi_host.c
@@ -327,8 +327,8 @@ static void dsi_host_regulator_disable(struct msm_dsi_host *msm_host)
327 DBG(""); 327 DBG("");
328 for (i = num - 1; i >= 0; i--) 328 for (i = num - 1; i >= 0; i--)
329 if (regs[i].disable_load >= 0) 329 if (regs[i].disable_load >= 0)
330 regulator_set_optimum_mode(s[i].consumer, 330 regulator_set_load(s[i].consumer,
331 regs[i].disable_load); 331 regs[i].disable_load);
332 332
333 regulator_bulk_disable(num, s); 333 regulator_bulk_disable(num, s);
334} 334}
@@ -343,8 +343,8 @@ static int dsi_host_regulator_enable(struct msm_dsi_host *msm_host)
343 DBG(""); 343 DBG("");
344 for (i = 0; i < num; i++) { 344 for (i = 0; i < num; i++) {
345 if (regs[i].enable_load >= 0) { 345 if (regs[i].enable_load >= 0) {
346 ret = regulator_set_optimum_mode(s[i].consumer, 346 ret = regulator_set_load(s[i].consumer,
347 regs[i].enable_load); 347 regs[i].enable_load);
348 if (ret < 0) { 348 if (ret < 0) {
349 pr_err("regulator %d set op mode failed, %d\n", 349 pr_err("regulator %d set op mode failed, %d\n",
350 i, ret); 350 i, ret);
@@ -363,7 +363,7 @@ static int dsi_host_regulator_enable(struct msm_dsi_host *msm_host)
363 363
364fail: 364fail:
365 for (i--; i >= 0; i--) 365 for (i--; i >= 0; i--)
366 regulator_set_optimum_mode(s[i].consumer, regs[i].disable_load); 366 regulator_set_load(s[i].consumer, regs[i].disable_load);
367 return ret; 367 return ret;
368} 368}
369 369
diff --git a/drivers/gpu/drm/msm/edp/edp_ctrl.c b/drivers/gpu/drm/msm/edp/edp_ctrl.c
index 3e246210c46f..0ec5abdba5c4 100644
--- a/drivers/gpu/drm/msm/edp/edp_ctrl.c
+++ b/drivers/gpu/drm/msm/edp/edp_ctrl.c
@@ -332,7 +332,7 @@ static int edp_regulator_enable(struct edp_ctrl *ctrl)
332 goto vdda_set_fail; 332 goto vdda_set_fail;
333 } 333 }
334 334
335 ret = regulator_set_optimum_mode(ctrl->vdda_vreg, VDDA_UA_ON_LOAD); 335 ret = regulator_set_load(ctrl->vdda_vreg, VDDA_UA_ON_LOAD);
336 if (ret < 0) { 336 if (ret < 0) {
337 pr_err("%s: vdda_vreg set regulator mode failed.\n", __func__); 337 pr_err("%s: vdda_vreg set regulator mode failed.\n", __func__);
338 goto vdda_set_fail; 338 goto vdda_set_fail;
@@ -356,7 +356,7 @@ static int edp_regulator_enable(struct edp_ctrl *ctrl)
356lvl_enable_fail: 356lvl_enable_fail:
357 regulator_disable(ctrl->vdda_vreg); 357 regulator_disable(ctrl->vdda_vreg);
358vdda_enable_fail: 358vdda_enable_fail:
359 regulator_set_optimum_mode(ctrl->vdda_vreg, VDDA_UA_OFF_LOAD); 359 regulator_set_load(ctrl->vdda_vreg, VDDA_UA_OFF_LOAD);
360vdda_set_fail: 360vdda_set_fail:
361 return ret; 361 return ret;
362} 362}
@@ -365,7 +365,7 @@ static void edp_regulator_disable(struct edp_ctrl *ctrl)
365{ 365{
366 regulator_disable(ctrl->lvl_vreg); 366 regulator_disable(ctrl->lvl_vreg);
367 regulator_disable(ctrl->vdda_vreg); 367 regulator_disable(ctrl->vdda_vreg);
368 regulator_set_optimum_mode(ctrl->vdda_vreg, VDDA_UA_OFF_LOAD); 368 regulator_set_load(ctrl->vdda_vreg, VDDA_UA_OFF_LOAD);
369} 369}
370 370
371static int edp_gpio_config(struct edp_ctrl *ctrl) 371static int edp_gpio_config(struct edp_ctrl *ctrl)
diff --git a/drivers/gpu/drm/radeon/radeon_trace.h b/drivers/gpu/drm/radeon/radeon_trace.h
index ce075cb08cb2..fdce4062901f 100644
--- a/drivers/gpu/drm/radeon/radeon_trace.h
+++ b/drivers/gpu/drm/radeon/radeon_trace.h
@@ -9,7 +9,6 @@
9 9
10#undef TRACE_SYSTEM 10#undef TRACE_SYSTEM
11#define TRACE_SYSTEM radeon 11#define TRACE_SYSTEM radeon
12#define TRACE_SYSTEM_STRING __stringify(TRACE_SYSTEM)
13#define TRACE_INCLUDE_FILE radeon_trace 12#define TRACE_INCLUDE_FILE radeon_trace
14 13
15TRACE_EVENT(radeon_bo_create, 14TRACE_EVENT(radeon_bo_create,