From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v2 3/6] drm/i915/lvds: Restore initial HW state during encoder enabling Date: Tue, 9 Aug 2016 20:46:54 +0300 Message-ID: <20160809174654.GB4329@intel.com> References: <1470742452-5240-4-git-send-email-imre.deak@intel.com> <1470763294-7183-2-git-send-email-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id ECB5D6E61C for ; Tue, 9 Aug 2016 17:46:57 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1470763294-7183-2-git-send-email-imre.deak@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Imre Deak Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBBdWcgMDksIDIwMTYgYXQgMDg6MjE6MzJQTSArMDMwMCwgSW1yZSBEZWFrIHdyb3Rl Ogo+IEF0bSB0aGUgTFZEUyBlbmNvZGVyIGRlcGVuZHMgb24gdGhlIFBQUyBIVyBjb250ZXh0IGJl aW5nIHNhdmVkL3Jlc3RvcmVkCj4gZnJvbSBnZW5lcmljIHN1c3BlbmQvcmVzdW1lIGNvZGUuIFNp bmNlIHRoZSBQUFMgaXMgc3BlY2lmaWMgdG8gdGhlIExWRFMKPiBhbmQgZURQIGVuY29kZXJzIGEg Y2xlYW5lciB3YXkgaXMgdG8gcmVpbml0aWFsaXplIGl0IGR1cmluZyBlbmNvZGVyCj4gZW5hYmxp bmcsIHNvIGRvIHRoaXMgaGVyZSBmb3IgTFZEUy4gRm9sbG93LXVwIHBhdGNoZXMgd2lsbCBpbml0 IHRoZSBQUFMKPiBmb3IgdGhlIGVEUCBlbmNvZGVyIHNpbWlsYXJseSBhbmQgcmVtb3ZlIHRoZSBz dXNwZW5kL3Jlc3VtZSB0aW1lIHNhdmUgLwo+IHJlc3RvcmUuCj4gCj4gdjI6Cj4gLSBBcHBseSBC U3BlYyArMSBvZmZzZXQgYW5kIHVzZSBESVZfUk9VTkRfVVAoKSB3aGVuIHByb2dyYW1taW5nIHRo ZQo+IHBvd2VyIGN5Y2xlIGRlbGF5LiAoVmlsbGUpCj4gCj4gU2lnbmVkLW9mZi1ieTogSW1yZSBE ZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3JlZy5oICAgfCAgIDEgKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9sdmRzLmMg fCAxMTMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KPiAgMiBmaWxlcyBj aGFuZ2VkLCAxMDEgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3JlZy5oCj4gaW5kZXggODg5NTA4Zi4uZGE4Mjc0NCAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZWcuaAo+IEBAIC0zNzEwLDYgKzM3MTAsNyBAQCBlbnVtIHsKPiAgCj4gICNkZWZpbmUg X1BQX09OX0RFTEFZUwkJCTB4NjEyMDgKPiAgI2RlZmluZSBQUF9PTl9ERUxBWVMocHBzX2lkeCkJ CV9NTUlPX1BQUyhwcHNfaWR4LCBfUFBfT05fREVMQVlTKQo+ICsjZGVmaW5lICBQQU5FTF9QT1JU X1NFTEVDVF9TSElGVAkzMAo+ICAjZGVmaW5lICBQQU5FTF9QT1JUX1NFTEVDVF9NQVNLCQkoMyA8 PCAzMCkKPiAgI2RlZmluZSAgUEFORUxfUE9SVF9TRUxFQ1RfTFZEUwkJKDAgPDwgMzApCj4gICNk ZWZpbmUgIFBBTkVMX1BPUlRfU0VMRUNUX0RQQQkJKDEgPDwgMzApCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2x2ZHMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2x2ZHMuYwo+IGluZGV4IGM1NzM5ZmMuLjkzOWY1MWYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfbHZkcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfbHZkcy5jCj4gQEAgLTQ4LDYgKzQ4LDIwIEBAIHN0cnVjdCBpbnRlbF9sdmRzX2Nvbm5l Y3RvciB7Cj4gIAlzdHJ1Y3Qgbm90aWZpZXJfYmxvY2sgbGlkX25vdGlmaWVyOwo+ICB9Owo+ICAK PiArc3RydWN0IGludGVsX2x2ZHNfcHBzIHsKPiArCS8qIDEwMHVzIHVuaXRzICovCj4gKwlpbnQg dDFfdDI7Cj4gKwlpbnQgdDM7Cj4gKwlpbnQgdDQ7Cj4gKwlpbnQgdDU7Cj4gKwlpbnQgdHg7Cj4g Kwo+ICsJaW50IGRpdmlkZXI7Cj4gKwo+ICsJaW50IHBvcnQ7Cj4gKwlib29sIHJlc2V0X29uX3Bv d2VyZG93bjsKCnBvd2VyZG93bl9vbl9yZXNldD8KCj4gK307Cj4gKwo+ICBzdHJ1Y3QgaW50ZWxf bHZkc19lbmNvZGVyIHsKPiAgCXN0cnVjdCBpbnRlbF9lbmNvZGVyIGJhc2U7Cj4gIAo+IEBAIC01 NSw2ICs2OSw5IEBAIHN0cnVjdCBpbnRlbF9sdmRzX2VuY29kZXIgewo+ICAJaTkxNV9yZWdfdCBy ZWc7Cj4gIAl1MzIgYTNfcG93ZXI7Cj4gIAo+ICsJc3RydWN0IGludGVsX2x2ZHNfcHBzIGluaXRf cHBzOwo+ICsJdTMyIGluaXRfbHZkc192YWw7Cj4gKwo+ICAJc3RydWN0IGludGVsX2x2ZHNfY29u bmVjdG9yICphdHRhY2hlZF9jb25uZWN0b3I7Cj4gIH07Cj4gIAo+IEBAIC0xMzYsNiArMTUzLDgy IEBAIHN0YXRpYyB2b2lkIGludGVsX2x2ZHNfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlciwKPiAgCXBpcGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y19jbG9j ayA9IHBpcGVfY29uZmlnLT5wb3J0X2Nsb2NrOwo+ICB9Cj4gIAo+ICtzdGF0aWMgdm9pZCBpbnRl bF9sdmRzX3Bwc19nZXRfaHdfc3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAo+ICsJCQkJCXN0cnVjdCBpbnRlbF9sdmRzX3BwcyAqcHBzKQo+ICt7Cj4gKwl1MzIgdmFsOwo+ ICsKPiArCXBwcy0+cmVzZXRfb25fcG93ZXJkb3duID0gSTkxNV9SRUFEKFBQX0NPTlRST0woMCkp ICYgUEFORUxfUE9XRVJfUkVTRVQ7Cj4gKwo+ICsJdmFsID0gSTkxNV9SRUFEKFBQX09OX0RFTEFZ UygwKSk7Cj4gKwlwcHMtPnBvcnQgPSAodmFsICYgUEFORUxfUE9SVF9TRUxFQ1RfTUFTSykgPj4K PiArCQkgICAgUEFORUxfUE9SVF9TRUxFQ1RfU0hJRlQ7Cj4gKwlwcHMtPnQxX3QyID0gKHZhbCAm IFBBTkVMX1BPV0VSX1VQX0RFTEFZX01BU0spID4+Cj4gKwkJICAgICBQQU5FTF9QT1dFUl9VUF9E RUxBWV9TSElGVDsKPiArCXBwcy0+dDUgPSAodmFsICYgUEFORUxfTElHSFRfT05fREVMQVlfTUFT SykgPj4KPiArCQkgIFBBTkVMX0xJR0hUX09OX0RFTEFZX1NISUZUOwo+ICsKPiArCXZhbCA9IEk5 MTVfUkVBRChQUF9PRkZfREVMQVlTKDApKTsKPiArCXBwcy0+dDMgPSAodmFsICYgUEFORUxfUE9X RVJfRE9XTl9ERUxBWV9NQVNLKSA+Pgo+ICsJCSAgUEFORUxfUE9XRVJfRE9XTl9ERUxBWV9TSElG VDsKPiArCXBwcy0+dHggPSAodmFsICYgUEFORUxfTElHSFRfT0ZGX0RFTEFZX01BU0spID4+Cj4g KwkJICBQQU5FTF9MSUdIVF9PRkZfREVMQVlfU0hJRlQ7Cj4gKwo+ICsJdmFsID0gSTkxNV9SRUFE KFBQX0RJVklTT1IoMCkpOwo+ICsJcHBzLT5kaXZpZGVyID0gKHZhbCAmIFBQX1JFRkVSRU5DRV9E SVZJREVSX01BU0spID4+Cj4gKwkJICAgICAgIFBQX1JFRkVSRU5DRV9ESVZJREVSX1NISUZUOwo+ ICsJdmFsID0gKHZhbCAmIFBBTkVMX1BPV0VSX0NZQ0xFX0RFTEFZX01BU0spID4+Cj4gKwkgICAg ICBQQU5FTF9QT1dFUl9DWUNMRV9ERUxBWV9TSElGVDsKPiArCS8qCj4gKwkgKiBSZW1vdmUgdGhl IEJTcGVjIHNwZWNpZmllZCArMSAoMTAwbXMpIG9mZnNldCB0aGF0IGFjY291bnRzIGZvciBhCj4g KwkgKiB0b28gc2hvcnQgcG93ZXItY3ljbGUgZGVsYXkgZHVlIHRvIHRoZSBhc3luY2hyb25vdXMg cHJvZ3JhbW1pbmcgb2YKPiArCSAqIHRoZSByZWdpc3Rlci4KPiArCSAqLwo+ICsJaWYgKHZhbCkK PiArCQl2YWwtLTsKPiArCS8qIENvbnZlcnQgZnJvbSAxMDBtcyB0byAxMDB1cyB1bml0cyAqLwo+ ICsJcHBzLT50NCA9IHZhbCAqIDEwMDA7Cj4gKwo+ICsJaWYgKElOVEVMX0lORk8oZGV2X3ByaXYp LT5nZW4gPD0gNCAmJgo+ICsJICAgIHBwcy0+dDFfdDIgPT0gMCAmJiBwcHMtPnQ1ID09IDAgJiYg cHBzLT50MyA9PSAwICYmIHBwcy0+dHggPT0gMCkgewo+ICsJCURSTV9ERUJVR19LTVMoIlBhbmVs IHBvd2VyIHRpbWluZ3MgdW5pbml0aWFsaXplZCwgIgo+ICsJCQkgICAgICAic2V0dGluZyBkZWZh dWx0c1xuIik7Cj4gKwkJLyogU2V0IFQyIHRvIDQwbXMgYW5kIFQ1IHRvIDIwMG1zIGluIDEwMCB1 c2VjIHVuaXRzICovCj4gKwkJcHBzLT50MV90MiA9IDQwICogMTA7Cj4gKwkJcHBzLT50NSA9IDIw MCAqIDEwOwo+ICsJCS8qIFNldCBUMyB0byAzNW1zIGFuZCBUeCB0byAyMDBtcyBpbiAxMDAgdXNl YyB1bml0cyAqLwo+ICsJCXBwcy0+dDMgPSAzNSAqIDEwOwo+ICsJCXBwcy0+dHggPSAyMDAgKiAx MDsKPiArCX0KPiArCj4gKwlEUk1fREVCVUdfRFJJVkVSKCJMVkRTIFBQUzp0MSt0MiAlZCB0MyAl ZCB0NCAlZCB0NSAlZCB0eCAlZCAiCj4gKwkJCSAiZGl2aWRlciAlZCBwb3J0ICVkIHJlc2V0X29u X3Bvd2VyZG93biAlZFxuIiwKPiArCQkJIHBwcy0+dDFfdDIsIHBwcy0+dDMsIHBwcy0+dDQsIHBw cy0+dDUsIHBwcy0+dHgsCj4gKwkJCSBwcHMtPmRpdmlkZXIsIHBwcy0+cG9ydCwgcHBzLT5yZXNl dF9vbl9wb3dlcmRvd24pOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBpbnRlbF9sdmRzX3Bwc19p bml0X2h3KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiArCQkJCSAgIHN0cnVj dCBpbnRlbF9sdmRzX3BwcyAqcHBzKQo+ICt7Cj4gKwl1MzIgdmFsOwo+ICsKPiArCXZhbCA9IEk5 MTVfUkVBRChQUF9DT05UUk9MKDApKTsKPiArCVdBUk5fT04oKHZhbCAmIFBBTkVMX1VOTE9DS19N QVNLKSAhPSBQQU5FTF9VTkxPQ0tfUkVHUyk7Cj4gKwlpZiAocHBzLT5yZXNldF9vbl9wb3dlcmRv d24pCj4gKwkJdmFsIHw9IFBBTkVMX1BPV0VSX1JFU0VUOwo+ICsJSTkxNV9XUklURShQUF9DT05U Uk9MKDApLCB2YWwpOwo+ICsKPiArCUk5MTVfV1JJVEUoUFBfT05fREVMQVlTKDApLCAocHBzLT5w b3J0IDw8IFBBTkVMX1BPUlRfU0VMRUNUX1NISUZUKSB8Cj4gKwkJCQkgICAgKHBwcy0+dDFfdDIg PDwgUEFORUxfUE9XRVJfVVBfREVMQVlfU0hJRlQpIHwKPiArCQkJCSAgICAocHBzLT50NSA8PCBQ QU5FTF9MSUdIVF9PTl9ERUxBWV9TSElGVCkpOwo+ICsJSTkxNV9XUklURShQUF9PRkZfREVMQVlT KDApLCAocHBzLT50MyA8PCBQQU5FTF9QT1dFUl9ET1dOX0RFTEFZX1NISUZUKSB8Cj4gKwkJCQkg ICAgIChwcHMtPnR4IDw8IFBBTkVMX0xJR0hUX09GRl9ERUxBWV9TSElGVCkpOwo+ICsKPiArCXZh bCA9IHBwcy0+ZGl2aWRlciA8PCBQUF9SRUZFUkVOQ0VfRElWSURFUl9TSElGVDsKPiArCXZhbCB8 PSBESVZfUk9VTkRfVVAocHBzLT50NCArIDEsIDEwMDApIDw8IFBBTkVMX1BPV0VSX0NZQ0xFX0RF TEFZX1NISUZUOwoKKzEgdnMuIGRpdiBpbiB0aGUgd3Jvbmcgb3JkZXIKCldpdGggdGhhdCBmaXhl ZApSZXZpZXdlZC1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVs LmNvbT4KCj4gKwlJOTE1X1dSSVRFKFBQX0RJVklTT1IoMCksIHZhbCk7Cj4gK30KPiArCj4gIHN0 YXRpYyB2b2lkIGludGVsX3ByZV9lbmFibGVfbHZkcyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlcikKPiAgewo+ICAJc3RydWN0IGludGVsX2x2ZHNfZW5jb2RlciAqbHZkc19lbmNvZGVyID0g dG9fbHZkc19lbmNvZGVyKCZlbmNvZGVyLT5iYXNlKTsKPiBAQCAtMTU0LDcgKzI0Nyw5IEBAIHN0 YXRpYyB2b2lkIGludGVsX3ByZV9lbmFibGVfbHZkcyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlcikKPiAgCQlhc3NlcnRfcGxsX2Rpc2FibGVkKGRldl9wcml2LCBwaXBlKTsKPiAgCX0KPiAg Cj4gLQl0ZW1wID0gSTkxNV9SRUFEKGx2ZHNfZW5jb2Rlci0+cmVnKTsKPiArCWludGVsX2x2ZHNf cHBzX2luaXRfaHcoZGV2X3ByaXYsICZsdmRzX2VuY29kZXItPmluaXRfcHBzKTsKPiArCj4gKwl0 ZW1wID0gbHZkc19lbmNvZGVyLT5pbml0X2x2ZHNfdmFsOwo+ICAJdGVtcCB8PSBMVkRTX1BPUlRf RU4gfCBMVkRTX0EwQTJfQ0xLQV9QT1dFUl9VUDsKPiAgCj4gIAlpZiAoSEFTX1BDSF9DUFQoZGV2 KSkgewo+IEBAIC05MjIsMTggKzEwMTcsNiBAQCB2b2lkIGludGVsX2x2ZHNfaW5pdChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQo+ICAJCURSTV9ERUJVR19LTVMoIkxWRFMgaXMgbm90IHByZXNlbnQg aW4gVkJULCBidXQgZW5hYmxlZCBhbnl3YXlcbiIpOwo+ICAJfQo+ICAKPiAtCSAvKiBTZXQgdGhl IFBhbmVsIFBvd2VyIE9uL09mZiB0aW1pbmdzIGlmIHVuaW5pdGlhbGl6ZWQuICovCj4gLQlpZiAo SU5URUxfSU5GTyhkZXZfcHJpdiktPmdlbiA8IDUgJiYKPiAtCSAgICBJOTE1X1JFQUQoUFBfT05f REVMQVlTKDApKSA9PSAwICYmIEk5MTVfUkVBRChQUF9PRkZfREVMQVlTKDApKSA9PSAwKSB7Cj4g LQkJLyogU2V0IFQyIHRvIDQwbXMgYW5kIFQ1IHRvIDIwMG1zICovCj4gLQkJSTkxNV9XUklURShQ UF9PTl9ERUxBWVMoMCksIDB4MDE5MDA3ZDApOwo+IC0KPiAtCQkvKiBTZXQgVDMgdG8gMzVtcyBh bmQgVHggdG8gMjAwbXMgKi8KPiAtCQlJOTE1X1dSSVRFKFBQX09GRl9ERUxBWVMoMCksIDB4MDE1 ZTA3ZDApOwo+IC0KPiAtCQlEUk1fREVCVUdfS01TKCJQYW5lbCBwb3dlciB0aW1pbmdzIHVuaW5p dGlhbGl6ZWQsIHNldHRpbmcgZGVmYXVsdHNcbiIpOwo+IC0JfQo+IC0KPiAgCWx2ZHNfZW5jb2Rl ciA9IGt6YWxsb2Moc2l6ZW9mKCpsdmRzX2VuY29kZXIpLCBHRlBfS0VSTkVMKTsKPiAgCWlmICgh bHZkc19lbmNvZGVyKQo+ICAJCXJldHVybjsKPiBAQCAtOTk5LDYgKzEwODIsMTAgQEAgdm9pZCBp bnRlbF9sdmRzX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQkJCSAgICAgIGRldi0+ bW9kZV9jb25maWcuc2NhbGluZ19tb2RlX3Byb3BlcnR5LAo+ICAJCQkJICAgICAgRFJNX01PREVf U0NBTEVfQVNQRUNUKTsKPiAgCWludGVsX2Nvbm5lY3Rvci0+cGFuZWwuZml0dGluZ19tb2RlID0g RFJNX01PREVfU0NBTEVfQVNQRUNUOwo+ICsKPiArCWludGVsX2x2ZHNfcHBzX2dldF9od19zdGF0 ZShkZXZfcHJpdiwgJmx2ZHNfZW5jb2Rlci0+aW5pdF9wcHMpOwo+ICsJbHZkc19lbmNvZGVyLT5p bml0X2x2ZHNfdmFsID0gbHZkczsKPiArCj4gIAkvKgo+ICAJICogTFZEUyBkaXNjb3Zlcnk6Cj4g IAkgKiAxKSBjaGVjayBmb3IgRURJRCBvbiBEREMKPiAtLSAKPiAyLjUuMAoKLS0gClZpbGxlIFN5 cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==