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

drm/i915/bxt: Don't set OCL2_LDOFUSE_PWR_DIS bit in phy init sequence

Hardware engineers confirmed that writing to it has no effect, as implied
by the FIXME comment.

v2: Also remove comment from bxt_ddi_phy_verify_state(). (Imre)
Cc: Imre Deak <imre.deak@intel.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Reviewed-by: Imre Deak <imre.deak@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1478069096-11209-1-git-send-email-ander.conselvan.de.oliveira@intel.com

-21
-21
drivers/gpu/drm/i915/intel_dpio_phy.c
··· 365 365 I915_WRITE(BXT_PORT_CL2CM_DW6(phy), val); 366 366 } 367 367 368 - val = I915_READ(BXT_PORT_CL1CM_DW30(phy)); 369 - val &= ~OCL2_LDOFUSE_PWR_DIS; 370 - /* 371 - * On PHY1 disable power on the second channel, since no port is 372 - * connected there. On PHY0 both channels have a port, so leave it 373 - * enabled. 374 - * TODO: port C is only connected on BXT-P, so on BXT0/1 we should 375 - * power down the second channel on PHY0 as well. 376 - * 377 - * FIXME: Clarify programming of the following, the register is 378 - * read-only with bit 6 fixed at 0 at least in stepping A. 379 - */ 380 - if (!phy_info->dual_channel) 381 - val |= OCL2_LDOFUSE_PWR_DIS; 382 - I915_WRITE(BXT_PORT_CL1CM_DW30(phy), val); 383 - 384 368 if (phy_info->rcomp_phy != -1) { 385 369 uint32_t grc_code; 386 370 /* ··· 491 507 ok &= _CHK(BXT_PORT_CL2CM_DW6(phy), 492 508 DW6_OLDO_DYN_PWR_DOWN_EN, DW6_OLDO_DYN_PWR_DOWN_EN, 493 509 "BXT_PORT_CL2CM_DW6(%d)", phy); 494 - 495 - /* 496 - * TODO: Verify BXT_PORT_CL1CM_DW30 bit OCL2_LDOFUSE_PWR_DIS, 497 - * at least on stepping A this bit is read-only and fixed at 0. 498 - */ 499 510 500 511 if (phy_info->rcomp_phy != -1) { 501 512 u32 grc_code = dev_priv->bxt_phy_grc;