Backmerge tag 'v4.14-rc7' into drm-next
Linux 4.14-rc7 Requested by Ben Skeggs for nouveau to avoid major conflicts, and things were getting a bit conflicty already, esp around amdgpu reverts.
This commit is contained in:
@@ -248,7 +248,7 @@ disable_clks:
|
||||
clk_disable_unprepare(ahb_clk);
|
||||
disable_gdsc:
|
||||
regulator_disable(gdsc_reg);
|
||||
pm_runtime_put_autosuspend(dev);
|
||||
pm_runtime_put_sync(dev);
|
||||
put_clk:
|
||||
clk_put(ahb_clk);
|
||||
put_gdsc:
|
||||
|
@@ -83,6 +83,8 @@ const struct mdp5_cfg_hw msm8x74v1_config = {
|
||||
.caps = MDP_LM_CAP_WB },
|
||||
},
|
||||
.nb_stages = 5,
|
||||
.max_width = 2048,
|
||||
.max_height = 0xFFFF,
|
||||
},
|
||||
.dspp = {
|
||||
.count = 3,
|
||||
|
@@ -873,8 +873,6 @@ static int mdp5_crtc_cursor_set(struct drm_crtc *crtc,
|
||||
|
||||
spin_unlock_irqrestore(&mdp5_crtc->cursor.lock, flags);
|
||||
|
||||
pm_runtime_put_autosuspend(&pdev->dev);
|
||||
|
||||
set_cursor:
|
||||
ret = mdp5_ctl_set_cursor(ctl, pipeline, 0, cursor_enable);
|
||||
if (ret) {
|
||||
|
@@ -1052,10 +1052,10 @@ static void *_msm_gem_kernel_new(struct drm_device *dev, uint32_t size,
|
||||
}
|
||||
|
||||
vaddr = msm_gem_get_vaddr(obj);
|
||||
if (!vaddr) {
|
||||
if (IS_ERR(vaddr)) {
|
||||
msm_gem_put_iova(obj, aspace);
|
||||
drm_gem_object_unreference(obj);
|
||||
return ERR_PTR(-ENOMEM);
|
||||
return ERR_CAST(vaddr);
|
||||
}
|
||||
|
||||
if (bo)
|
||||
|
@@ -117,10 +117,14 @@ static void rd_write(struct msm_rd_state *rd, const void *buf, int sz)
|
||||
|
||||
wait_event(rd->fifo_event, circ_space(&rd->fifo) > 0);
|
||||
|
||||
/* Note that smp_load_acquire() is not strictly required
|
||||
* as CIRC_SPACE_TO_END() does not access the tail more
|
||||
* than once.
|
||||
*/
|
||||
n = min(sz, circ_space_to_end(&rd->fifo));
|
||||
memcpy(fptr, ptr, n);
|
||||
|
||||
fifo->head = (fifo->head + n) & (BUF_SZ - 1);
|
||||
smp_store_release(&fifo->head, (fifo->head + n) & (BUF_SZ - 1));
|
||||
sz -= n;
|
||||
ptr += n;
|
||||
|
||||
@@ -151,13 +155,17 @@ static ssize_t rd_read(struct file *file, char __user *buf,
|
||||
if (ret)
|
||||
goto out;
|
||||
|
||||
/* Note that smp_load_acquire() is not strictly required
|
||||
* as CIRC_CNT_TO_END() does not access the head more than
|
||||
* once.
|
||||
*/
|
||||
n = min_t(int, sz, circ_count_to_end(&rd->fifo));
|
||||
if (copy_to_user(buf, fptr, n)) {
|
||||
ret = -EFAULT;
|
||||
goto out;
|
||||
}
|
||||
|
||||
fifo->tail = (fifo->tail + n) & (BUF_SZ - 1);
|
||||
smp_store_release(&fifo->tail, (fifo->tail + n) & (BUF_SZ - 1));
|
||||
*ppos += n;
|
||||
|
||||
wake_up_all(&rd->fifo_event);
|
||||
|
Reference in New Issue
Block a user