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

drm/i2c/ch7006: Don't use POWER_LEVEL_FULL_POWER_OFF on early chip versions.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

authored by

Francisco Jerez and committed by
Ben Skeggs
c93ebb40 1849719e

+6 -1
+1
drivers/gpu/drm/i2c/ch7006_drv.c
··· 470 470 priv->hmargin = 50; 471 471 priv->vmargin = 50; 472 472 priv->last_dpms = -1; 473 + priv->chip_version = ch7006_read(client, CH7006_VERSION_ID); 473 474 474 475 if (ch7006_tv_norm) { 475 476 for (i = 0; i < NUM_TV_NORMS; i++) {
+4 -1
drivers/gpu/drm/i2c/ch7006_mode.c
··· 316 316 } 317 317 318 318 } else { 319 - *power |= bitfs(CH7006_POWER_LEVEL, FULL_POWER_OFF); 319 + if (priv->chip_version >= 0x20) 320 + *power |= bitfs(CH7006_POWER_LEVEL, FULL_POWER_OFF); 321 + else 322 + *power |= bitfs(CH7006_POWER_LEVEL, POWER_OFF); 320 323 } 321 324 } 322 325
+1
drivers/gpu/drm/i2c/ch7006_priv.h
··· 95 95 int flicker; 96 96 int scale; 97 97 98 + int chip_version; 98 99 int last_dpms; 99 100 }; 100 101