From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 3/4] drm/dp: start a DPCD based DP sink/branch device quirk database Date: Thu, 18 May 2017 13:32:59 +0300 Message-ID: <87y3tujvz8.fsf@intel.com> References: <4c8c3a2742dd7cb7dbd359dc68eb4ce50f3e31da.1495030890.git.jani.nikula@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Clint Taylor , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: dhinakaran.pandiyan@intel.com List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCAxNyBNYXkgMjAxNywgQ2xpbnQgVGF5bG9yIDxjbGludG9uLmEudGF5bG9yQGludGVs LmNvbT4gd3JvdGU6Cj4gT24gMDUvMTcvMjAxNyAwNzoyNSBBTSwgSmFuaSBOaWt1bGEgd3JvdGU6 Cj4+IEZhY2UgdGhlIGZhY3QsIHRoZXJlIGFyZSBEaXNwbGF5IFBvcnQgc2luayBhbmQgYnJhbmNo IGRldmljZXMgb3V0IHRoZXJlCj4+IGluIHRoZSB3aWxkIHRoYXQgZG9uJ3QgZm9sbG93IHRoZSBE aXNwbGF5IFBvcnQgc3BlY2lmaWNhdGlvbnMsIG9yIHRoZXkKPj4gaGF2ZSBidWdzLCBvciBqdXN0 IG90aGVyd2lzZSByZXF1aXJlIHNwZWNpYWwgdHJlYXRtZW50LiBTdGFydCBhIGNvbW1vbgo+PiBx dWlyayBkYXRhYmFzZSB0aGUgZHJpdmVycyBjYW4gcXVlcnkgYmFzZWQgb24gdGhlIERQIGRldmlj ZQo+PiBpZGVudGlmaWNhdGlvbi4gQXQgbGVhc3QgZm9yIG5vdywgd2UgbGVhdmUgdGhlIHdvcmth cm91bmRzIGZvciB0aGUKPj4gZHJpdmVycyB0byBpbXBsZW1lbnQgYXMgdGhleSBzZWUgZml0Lgo+ Pgo+PiBGb3Igc3RhcnRlcnMsIGFkZCBhIGJyYW5jaCBkZXZpY2UgdGhhdCBjYW4ndCBoYW5kbGUg ZnVsbCAyNC1iaXQgbWFpbgo+PiBsaW5rIE0gYW5kIE4gYXR0cmlidXRlcyBwcm9wZXJseS4gTmF0 dXJhbGx5LCB0aGUgd29ya2Fyb3VuZCBvZiByZWR1Y2luZwo+PiBtYWluIGxpbmsgYXR0cmlidXRl cyBmb3IgYWxsIGRldmljZXMgZW5kZWQgdXAgaW4gcmVncmVzc2lvbnMgZm9yIG90aGVyCj4+IGRl dmljZXMuIFNvIGhlcmUgd2UgYXJlLgo+Pgo+PiB2MjogUmViYXNlIG9uIERSTSBEUCBkZXNjIHJl YWQgaGVscGVycwo+Pgo+PiBDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4 LmludGVsLmNvbT4KPj4gQ2M6IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRoaW5ha2FyYW4ucGFuZGl5 YW5AaW50ZWwuY29tPgo+PiBDYzogQ2xpbnQgVGF5bG9yIDxjbGludG9uLmEudGF5bG9yQGludGVs LmNvbT4KPj4gQ2M6IEFkYW0gSmFja3NvbiA8YWpheEByZWRoYXQuY29tPgo+PiBDYzogSGFycnkg V2VudGxhbmQgPGhhcnJ5LndlbnRsYW5kQGFtZC5jb20+Cj4+IFNpZ25lZC1vZmYtYnk6IEphbmkg TmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+Cj4+IC0tLQo+PiAgIGRyaXZlcnMvZ3B1L2Ry bS9kcm1fZHBfaGVscGVyLmMgfCA1MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystLQo+PiAgIGluY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIuaCAgICAgfCAzMiArKysrKysr KysrKysrKysrKysrKysrKysrCj4+ICAgMiBmaWxlcyBjaGFuZ2VkLCA4MiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9k cF9oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfaGVscGVyLmMKPj4gaW5kZXggNTJl MGNhOWE1YmIxLi44YzM3OTcyODNjM2IgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9k cm1fZHBfaGVscGVyLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYwo+ PiBAQCAtMTIwOSw2ICsxMjA5LDUxIEBAIGludCBkcm1fZHBfc3RvcF9jcmMoc3RydWN0IGRybV9k cF9hdXggKmF1eCkKPj4gICB9Cj4+ICAgRVhQT1JUX1NZTUJPTChkcm1fZHBfc3RvcF9jcmMpOwo+ PiAgIAo+PiArc3RydWN0IGRwY2RfcXVpcmsgewo+PiArCXU4IG91aVszXTsKPj4gKwlib29sIGlz X2JyYW5jaDsKPj4gKwl1MzIgcXVpcmtzOwo+PiArfTsKPj4gKwo+PiArI2RlZmluZSBPVUkoZmly c3QsIHNlY29uZCwgdGhpcmQpIHsgKGZpcnN0KSwgKHNlY29uZCksICh0aGlyZCkgfQo+PiArCj4+ ICtzdGF0aWMgY29uc3Qgc3RydWN0IGRwY2RfcXVpcmsgZHBjZF9xdWlya19saXN0W10gPSB7Cj4+ ICsJLyogQW5hbG9naXggNzczNyBuZWVkcyByZWR1Y2VkIE0gYW5kIE4gYXQgSEJSMiBsaW5rIHJh dGVzICovCj4+ICsJeyBPVUkoMHgwMCwgMHgyMiwgMHhiOSksIHRydWUsIEJJVChEUF9EUENEX1FV SVJLX0xJTUlURURfTV9OKSB9LAo+PiArfTsKPj4gKwo+PiArI3VuZGVmIE9VSQo+PiArCj4+ICsv Kgo+PiArICogR2V0IGEgYml0IG1hc2sgb2YgRFBDRCBxdWlya3MgZm9yIHRoZSBzaW5rL2JyYW5j aCBkZXZpY2UgaWRlbnRpZmllZCBieQo+PiArICogaWRlbnQuIFRoZSBxdWlyayBkYXRhIGlzIHNo YXJlZCBidXQgaXQncyB1cCB0byB0aGUgZHJpdmVycyB0byBhY3Qgb24gdGhlCj4+ICsgKiBkYXRh Lgo+PiArICoKPj4gKyAqIEZvciBub3csIG9ubHkgdGhlIE9VSSAoZmlyc3QgdGhyZWUgYnl0ZXMp IGlzIHVzZWQsIGJ1dCB0aGlzIG1heSBiZSBleHRlbmRlZAo+PiArICogdG8gZGV2aWNlIGlkZW50 aWZpY2F0aW9uIHN0cmluZyBhbmQgaGFyZHdhcmUvZmlybXdhcmUgcmV2aXNpb25zIGxhdGVyLgo+ PiArICovCj4+ICtzdGF0aWMgdTMyCj4+ICtkcm1fZHBfZ2V0X3F1aXJrcyhjb25zdCBzdHJ1Y3Qg ZHJtX2RwX2RwY2RfaWRlbnQgKmlkZW50LCBib29sIGlzX2JyYW5jaCkKPj4gK3sKPj4gKwljb25z dCBzdHJ1Y3QgZHBjZF9xdWlyayAqcXVpcms7Cj4+ICsJdTMyIHF1aXJrcyA9IDA7Cj4+ICsJaW50 IGk7Cj4+ICsKPj4gKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShkcGNkX3F1aXJrX2xpc3Qp OyBpKyspIHsKPj4gKwkJcXVpcmsgPSAmZHBjZF9xdWlya19saXN0W2ldOwo+PiArCj4+ICsJCWlm IChxdWlyay0+aXNfYnJhbmNoICE9IGlzX2JyYW5jaCkKPj4gKwkJCWNvbnRpbnVlOwo+PiArCj4+ ICsJCWlmIChtZW1jbXAocXVpcmstPm91aSwgaWRlbnQtPm91aSwgc2l6ZW9mKGlkZW50LT5vdWkp ICE9IDApKQo+PiArCQkJY29udGludWU7Cj4KPiBPb3BzLCBBbGwgYnJhbmNoIGRldmljZXMgYXBw ZWFyIHRvIGhhdmUgdGhlIHF1aXJrIGFwcGxpZWQuIFRoZSBtZW1jbXAgCj4gc2hvdWxkIGJlIGNs b3NlZCBiZWZvcmUgdGhlICE9MAoKTm93IHRoYXQncyBlbWJhcnJhc3NpbmcuIFRoYW5rcyBmb3Ig Y2F0Y2hpbmcgdGhpcy4KCkJSLApKYW5pLgoKCj4KPiBpZiAobWVtY21wKHF1aXJrLT5vdWksIGlk ZW50LT5vdWksIHNpemVvZihpZGVudC0+b3VpKSkgIT0gMCkKPgo+Cj4gWyAgNjU5LjQ5Njg2MV0g W2RybTpkcm1fZHBfcmVhZF9kZXNjXSBEUCBicmFuY2g6IE9VSSAwMC0xYy1mOCBkZXYtSUQgCj4g MTc1SUIwIEhXLXJldiAxLjAgU1ctcmV2IDcuMzIgcXVpcmtzIDB4MDAwMQo+IFsgIDY1OS41NDkw MTddIFtkcm06ZHJtX2RwX3JlYWRfZGVzY10gRFAgYnJhbmNoOiBPVUkgMDAtMjItYjkgZGV2LUlE IAo+IDc3MzcgSFctcmV2IDEwLjEyIFNXLXJldiA2LjQgcXVpcmtzIDB4MDAwMQo+IFsgIDY1OS42 MzA0NDldIFtkcm06ZHJtX2RwX3JlYWRfZGVzY10gRFAgc2luazogT1VJIGVlLWZmLWMwIGRldi1J RCBcMDAxIAo+IEhXLXJldiAwLjAgU1ctcmV2IDAuMCBxdWlya3MgMHgwMDAwCj4KPiBUaGlzIHdh cyBhY3R1YWxseSBnb29kIHRvIGZpbmQgb3V0IHRoYXQgTFNQQ09OIGRpZG4ndCBsaWtlIHRoZSBy ZWR1Y2VkIE0gCj4gYW5kIE4gZnJvbSB0aGUgcXVpcmsgYXQgSEJSMi4KPgo+IC1DbGludAo+Cj4+ ICsKPj4gKwkJcXVpcmtzIHw9IHF1aXJrLT5xdWlya3M7Cj4+ICsJfQo+PiArCj4+ICsJcmV0dXJu IHF1aXJrczsKPj4gK30KPj4gKwo+PiAgIC8qKgo+PiAgICAqIGRybV9kcF9yZWFkX2Rlc2MgLSBy ZWFkIHNpbmsvYnJhbmNoIGRlc2NyaXB0b3IgZnJvbSBEUENECj4+ICAgICogQGF1eDogRGlzcGxh eVBvcnQgQVVYIGNoYW5uZWwKPj4gQEAgLTEyMzEsMTQgKzEyNzYsMTcgQEAgaW50IGRybV9kcF9y ZWFkX2Rlc2Moc3RydWN0IGRybV9kcF9hdXggKmF1eCwgc3RydWN0IGRybV9kcF9kZXNjICpkZXNj LAo+PiAgIAlpZiAocmV0IDwgMCkKPj4gICAJCXJldHVybiByZXQ7Cj4+ICAgCj4+ICsJZGVzYy0+ cXVpcmtzID0gZHJtX2RwX2dldF9xdWlya3MoaWRlbnQsIGlzX2JyYW5jaCk7Cj4+ICsKPj4gICAJ ZGV2X2lkX2xlbiA9IHN0cm5sZW4oaWRlbnQtPmRldmljZV9pZCwgc2l6ZW9mKGlkZW50LT5kZXZp Y2VfaWQpKTsKPj4gICAKPj4gLQlEUk1fREVCVUdfS01TKCJEUCAlczogT1VJICUqcGhEIGRldi1J RCAlKnBFIEhXLXJldiAlZC4lZCBTVy1yZXYgJWQuJWRcbiIsCj4+ICsJRFJNX0RFQlVHX0tNUygi RFAgJXM6IE9VSSAlKnBoRCBkZXYtSUQgJSpwRSBIVy1yZXYgJWQuJWQgU1ctcmV2ICVkLiVkIHF1 aXJrcyAweCUwNHhcbiIsCj4+ICAgCQkgICAgICBpc19icmFuY2ggPyAiYnJhbmNoIiA6ICJzaW5r IiwKPj4gICAJCSAgICAgIChpbnQpc2l6ZW9mKGlkZW50LT5vdWkpLCBpZGVudC0+b3VpLAo+PiAg IAkJICAgICAgZGV2X2lkX2xlbiwgaWRlbnQtPmRldmljZV9pZCwKPj4gICAJCSAgICAgIGlkZW50 LT5od19yZXYgPj4gNCwgaWRlbnQtPmh3X3JldiAmIDB4ZiwKPj4gLQkJICAgICAgaWRlbnQtPnN3 X21ham9yX3JldiwgaWRlbnQtPnN3X21pbm9yX3Jldik7Cj4+ICsJCSAgICAgIGlkZW50LT5zd19t YWpvcl9yZXYsIGlkZW50LT5zd19taW5vcl9yZXYsCj4+ICsJCSAgICAgIGRlc2MtPnF1aXJrcyk7 Cj4+ICAgCj4+ICAgCXJldHVybiAwOwo+PiAgIH0KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJt L2RybV9kcF9oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIuaAo+PiBpbmRleCBh ZWU1Yjk2YjUxZDcuLjcxN2NiODQ5NjcyNSAxMDA2NDQKPj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJt X2RwX2hlbHBlci5oCj4+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIuaAo+PiBAQCAt MTA5MCwxMiArMTA5MCw0NCBAQCBzdHJ1Y3QgZHJtX2RwX2RwY2RfaWRlbnQgewo+PiAgIC8qKgo+ PiAgICAqIHN0cnVjdCBkcm1fZHBfZGVzYyAtIERQIGJyYW5jaC9zaW5rIGRldmljZSBkZXNjcmlw dG9yCj4+ICAgICogQGlkZW50OiBEUCBkZXZpY2UgaWRlbnRpZmljYXRpb24gZnJvbSBEUENEIDB4 NDAwIChzaW5rKSBvciAweDUwMCAoYnJhbmNoKS4KPj4gKyAqIEBxdWlya3M6IFF1aXJrczsgdXNl IGRybV9kcF9oYXNfcXVpcmsoKSB0byBxdWVyeSBmb3IgdGhlIHF1aXJrcy4KPj4gICAgKi8KPj4g ICBzdHJ1Y3QgZHJtX2RwX2Rlc2Mgewo+PiAgIAlzdHJ1Y3QgZHJtX2RwX2RwY2RfaWRlbnQgaWRl bnQ7Cj4+ICsJdTMyIHF1aXJrczsKPj4gICB9Owo+PiAgIAo+PiAgIGludCBkcm1fZHBfcmVhZF9k ZXNjKHN0cnVjdCBkcm1fZHBfYXV4ICphdXgsIHN0cnVjdCBkcm1fZHBfZGVzYyAqZGVzYywKPj4g ICAJCSAgICAgYm9vbCBpc19icmFuY2gpOwo+PiAgIAo+PiArLyoqCj4+ICsgKiBlbnVtIGRybV9k cF9xdWlyayAtIERpc3BsYXkgUG9ydCBzaW5rL2JyYW5jaCBkZXZpY2Ugc3BlY2lmaWMgcXVpcmtz Cj4+ICsgKgo+PiArICogRGlzcGxheSBQb3J0IHNpbmsgYW5kIGJyYW5jaCBkZXZpY2VzIGluIHRo ZSB3aWxkIGhhdmUgYSB2YXJpZXR5IG9mIGJ1Z3MsIHRyeQo+PiArICogdG8gY29sbGVjdCB0aGVt IGhlcmUuIFRoZSBxdWlya3MgYXJlIHNoYXJlZCwgYnV0IGl0J3MgdXAgdG8gdGhlIGRyaXZlcnMg dG8KPj4gKyAqIGltcGxlbWVudCB3b3JrYXJvdW5kcyBmb3IgdGhlbS4KPj4gKyAqLwo+PiArZW51 bSBkcm1fZHBfcXVpcmsgewo+PiArCS8qKgo+PiArCSAqIEBEUF9EUENEX1FVSVJLX0xJTUlURURf TV9OOgo+PiArCSAqCj4+ICsJICogVGhlIGRldmljZSByZXF1aXJlcyBtYWluIGxpbmsgYXR0cmli dXRlcyBNZGl2IGFuZCBOZGl2IHRvIGJlIGxpbWl0ZWQKPj4gKwkgKiB0byAxNiBiaXRzLgo+PiAr CSAqLwo+PiArCURQX0RQQ0RfUVVJUktfTElNSVRFRF9NX04sCj4+ICt9Owo+PiArCj4+ICsvKioK Pj4gKyAqIGRybV9kcF9oYXNfcXVpcmsoKSAtIGRvZXMgdGhlIERQIGRldmljZSBoYXZlIGEgc3Bl Y2lmaWMgcXVpcmsKPj4gKyAqIEBkZXNjOiBEZXZpY2UgZGVjcmlwdG9yIGZpbGxlZCBieSBkcm1f ZHBfcmVhZF9kZXNjKCkKPj4gKyAqIEBxdWlyazogUXVpcmsgdG8gcXVlcnkgZm9yCj4+ICsgKgo+ PiArICogUmV0dXJuIHRydWUgaWYgRFAgZGV2aWNlIGlkZW50aWZpZWQgYnkgQGRlc2MgaGFzIEBx dWlyay4KPj4gKyAqLwo+PiArc3RhdGljIGlubGluZSBib29sCj4+ICtkcm1fZHBfaGFzX3F1aXJr KGNvbnN0IHN0cnVjdCBkcm1fZHBfZGVzYyAqZGVzYywgZW51bSBkcm1fZHBfcXVpcmsgcXVpcmsp Cj4+ICt7Cj4+ICsJcmV0dXJuIGRlc2MtPnF1aXJrcyAmIEJJVChxdWlyayk7Cj4+ICt9Cj4+ICsK Pj4gICAjZW5kaWYgLyogX0RSTV9EUF9IRUxQRVJfSF8gKi8KPgoKLS0gCkphbmkgTmlrdWxhLCBJ bnRlbCBPcGVuIFNvdXJjZSBUZWNobm9sb2d5IENlbnRlcgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZl bEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9kcmktZGV2ZWwK