Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Revert "drm: tegra: protect DC register access with mutex"

This reverts commit 83c0bcb694be31dcd6c04bdd935b96a95a0af548.

Lucas pointed out this was a mistake, and I missed the discussion,
so just revert it out to save a rebase.

Signed-off-by: Dave Airlie <airlied@redhat.com>

-14
-13
drivers/gpu/drm/tegra/dc.c
··· 171 171 return err; 172 172 } 173 173 174 - mutex_lock(&dc->regs_mutex); 175 - 176 174 /* program display mode */ 177 175 tegra_dc_set_timings(dc, mode); 178 176 ··· 268 270 tegra_dc_writel(dc, 0xff00, DC_WIN_BLEND_NOKEY); 269 271 tegra_dc_writel(dc, 0xff00, DC_WIN_BLEND_1WIN); 270 272 271 - mutex_unlock(&dc->regs_mutex); 272 - 273 273 return 0; 274 274 } 275 275 ··· 285 289 syncpt = SYNCPT_VBLANK1; 286 290 else 287 291 syncpt = SYNCPT_VBLANK0; 288 - 289 - mutex_lock(&dc->regs_mutex); 290 292 291 293 /* initialize display controller */ 292 294 tegra_dc_writel(dc, 0x00000100, DC_CMD_GENERAL_INCR_SYNCPT_CNTRL); ··· 319 325 320 326 value = VBLANK_INT | WIN_A_UF_INT | WIN_B_UF_INT | WIN_C_UF_INT; 321 327 tegra_dc_writel(dc, value, DC_CMD_INT_ENABLE); 322 - 323 - mutex_unlock(&dc->regs_mutex); 324 328 } 325 329 326 330 static void tegra_crtc_commit(struct drm_crtc *crtc) ··· 328 336 unsigned long value; 329 337 330 338 update_mask = GENERAL_ACT_REQ | WIN_A_ACT_REQ; 331 - 332 - mutex_lock(&dc->regs_mutex); 333 339 334 340 tegra_dc_writel(dc, update_mask << 8, DC_CMD_STATE_CONTROL); 335 341 ··· 340 350 tegra_dc_writel(dc, value, DC_CMD_INT_MASK); 341 351 342 352 tegra_dc_writel(dc, update_mask, DC_CMD_STATE_CONTROL); 343 - 344 - mutex_unlock(&dc->regs_mutex); 345 353 } 346 354 347 355 static void tegra_crtc_load_lut(struct drm_crtc *crtc) ··· 746 758 return -ENOMEM; 747 759 748 760 INIT_LIST_HEAD(&dc->list); 749 - mutex_init(&dc->regs_mutex); 750 761 dc->dev = &pdev->dev; 751 762 752 763 dc->clk = devm_clk_get(&pdev->dev, NULL);
-1
drivers/gpu/drm/tegra/drm.h
··· 84 84 85 85 struct clk *clk; 86 86 87 - struct mutex regs_mutex; 88 87 void __iomem *regs; 89 88 int irq; 90 89