From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm/i915/bios: iterate over child devices to initialize ddi_port_info Date: Mon, 25 Mar 2019 15:30:54 +0200 Message-ID: <87zhpjqdwx.fsf@intel.com> References: <20190322121008.4456-1-jani.nikula@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id D89C86E6A6 for ; Mon, 25 Mar 2019 13:28:17 +0000 (UTC) In-Reply-To: <20190322121008.4456-1-jani.nikula@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAyMiBNYXIgMjAxOSwgSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4g d3JvdGU6Cj4gSXRlcmF0ZSBvdmVyIGNoaWxkIGRldmljZXMgaW5zdGVhZCBvZiBwb3J0cyBpbiBw YXJzZV9kZGlfcG9ydHMoKSB0bwo+IGluaXRpYWxpemUgZHJpX3BvcnRfaW5mby4gV2UnbGwgZXZl bnR1YWxseSBuZWVkIHRvIGRlY2lkZSBzb21lIHN0dWZmCj4gYmFzZWQgb24gdGhlIGNoaWxkIGRl dmljZSBvcmRlciwgd2hpY2ggbWF5IGJlIGRpZmZlcmVudCBmcm9tIHRoZSBwb3J0Cj4gb3JkZXIu Cj4KPiBBcyBhIGJvbnVzLCB0aGlzIGFsbG93cyBiZXR0ZXIgYWJzdHJhY3Rpb25zIGZvciBlLmcu IGR2byBwb3J0IG1hcHBpbmcuCj4KPiBUaGVyZSdzIGEgc3VidGxlIGNoYW5nZSBpbiB0aGUgRERD IHBpbiBhbmQgQVVYIGNoYW5uZWwgc2FuaXRpemF0aW9uIGFzCj4gd2UgY2hhbmdlIHRoZSBvcmRl ci4gT3RoZXJ3aXNlLCB0aGlzIHNob3VsZCBub3QgY2hhbmdlIGJlaGF2aW91ci4KPgo+IFJldmll d2VkLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ IFNpZ25lZC1vZmYtYnk6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+CgpQdXNo ZWQgdG8gZGlucSwgdGhhbmtzIGZvciB0aGUgcmV2aWV3LgoKQlIsCkphbmkuCgo+IC0tLQo+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgfCAgIDEgKwo+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9iaW9zLmMgfCAxMDQgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t Cj4gIDIgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9ucygrKSwgNDYgZGVsZXRpb25zKC0pCj4K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBpbmRleCBmZWZjYjM5YWVmYzQuLmQ4MmQ2M2RmYTVh MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBAIC05NTQsNiArOTU0LDcgQEAgc3Ry dWN0IGRkaV92YnRfcG9ydF9pbmZvIHsKPiAgI2RlZmluZSBIRE1JX0xFVkVMX1NISUZUX1VOS05P V04JMHhmZgo+ICAJdTggaGRtaV9sZXZlbF9zaGlmdDsKPiAgCj4gKwl1OCBwcmVzZW50OjE7Cj4g IAl1OCBzdXBwb3J0c19kdmk6MTsKPiAgCXU4IHN1cHBvcnRzX2hkbWk6MTsKPiAgCXU4IHN1cHBv cnRzX2RwOjE7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3Mu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo+IGluZGV4IDY0ZjIwMTc1YTZk Yy4uMWRjOGQwM2ZmMTI3IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Jpb3MuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo+IEBAIC0x MjQ3LDEwICsxMjQ3LDExIEBAIHN0YXRpYyB2b2lkIHNhbml0aXplX2RkY19waW4oc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJaWYgKCFpbmZvLT5hbHRlcm5hdGVfZGRjX3Bp bikKPiAgCQlyZXR1cm47Cj4gIAo+IC0JZm9yX2VhY2hfcG9ydF9tYXNrZWQocCwgKDEgPDwgcG9y dCkgLSAxKSB7Cj4gKwlmb3IgKHAgPSBQT1JUX0E7IHAgPCBJOTE1X01BWF9QT1JUUzsgcCsrKSB7 Cj4gIAkJc3RydWN0IGRkaV92YnRfcG9ydF9pbmZvICppID0gJmRldl9wcml2LT52YnQuZGRpX3Bv cnRfaW5mb1twXTsKPiAgCj4gLQkJaWYgKGluZm8tPmFsdGVybmF0ZV9kZGNfcGluICE9IGktPmFs dGVybmF0ZV9kZGNfcGluKQo+ICsJCWlmIChwID09IHBvcnQgfHwgIWktPnByZXNlbnQgfHwKPiAr CQkgICAgaW5mby0+YWx0ZXJuYXRlX2RkY19waW4gIT0gaS0+YWx0ZXJuYXRlX2RkY19waW4pCj4g IAkJCWNvbnRpbnVlOwo+ICAKPiAgCQlEUk1fREVCVUdfS01TKCJwb3J0ICVjIHRyeWluZyB0byB1 c2UgdGhlIHNhbWUgRERDIHBpbiAoMHgleCkgYXMgcG9ydCAlYywgIgo+IEBAIC0xMjY0LDggKzEy NjUsOCBAQCBzdGF0aWMgdm9pZCBzYW5pdGl6ZV9kZGNfcGluKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKPiAgCQkgKiBwb3J0LiBPdGhlcndpc2UgdGhleSBzaGFyZSB0aGUgc2Ft ZSBkZGMgYmluIGFuZAo+ICAJCSAqIHN5c3RlbSBjb3VsZG4ndCBjb21tdW5pY2F0ZSB3aXRoIHRo ZW0gc2VwYXJhdGVseS4KPiAgCQkgKgo+IC0JCSAqIER1ZSB0byBwYXJzaW5nIHRoZSBwb3J0cyBp biBhbHBoYWJldGljYWwgb3JkZXIsCj4gLQkJICogYSBoaWdoZXIgcG9ydCB3aWxsIGFsd2F5cyBj bG9iYmVyIGEgbG93ZXIgb25lLgo+ICsJCSAqIER1ZSB0byBwYXJzaW5nIHRoZSBwb3J0cyBpbiBj aGlsZCBkZXZpY2Ugb3JkZXIsCj4gKwkJICogYSBsYXRlciBkZXZpY2Ugd2lsbCBhbHdheXMgY2xv YmJlciBhbiBlYXJsaWVyIG9uZS4KPiAgCQkgKi8KPiAgCQlpLT5zdXBwb3J0c19kdmkgPSBmYWxz ZTsKPiAgCQlpLT5zdXBwb3J0c19oZG1pID0gZmFsc2U7Cj4gQEAgLTEyODMsMTAgKzEyODQsMTEg QEAgc3RhdGljIHZvaWQgc2FuaXRpemVfYXV4X2NoKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiwKPiAgCWlmICghaW5mby0+YWx0ZXJuYXRlX2F1eF9jaGFubmVsKQo+ICAJCXJldHVy bjsKPiAgCj4gLQlmb3JfZWFjaF9wb3J0X21hc2tlZChwLCAoMSA8PCBwb3J0KSAtIDEpIHsKPiAr CWZvciAocCA9IFBPUlRfQTsgcCA8IEk5MTVfTUFYX1BPUlRTOyBwKyspIHsKPiAgCQlzdHJ1Y3Qg ZGRpX3ZidF9wb3J0X2luZm8gKmkgPSAmZGV2X3ByaXYtPnZidC5kZGlfcG9ydF9pbmZvW3BdOwo+ ICAKPiAtCQlpZiAoaW5mby0+YWx0ZXJuYXRlX2F1eF9jaGFubmVsICE9IGktPmFsdGVybmF0ZV9h dXhfY2hhbm5lbCkKPiArCQlpZiAocCA9PSBwb3J0IHx8ICFpLT5wcmVzZW50IHx8Cj4gKwkJICAg IGluZm8tPmFsdGVybmF0ZV9hdXhfY2hhbm5lbCAhPSBpLT5hbHRlcm5hdGVfYXV4X2NoYW5uZWwp Cj4gIAkJCWNvbnRpbnVlOwo+ICAKPiAgCQlEUk1fREVCVUdfS01TKCJwb3J0ICVjIHRyeWluZyB0 byB1c2UgdGhlIHNhbWUgQVVYIENIICgweCV4KSBhcyBwb3J0ICVjLCAiCj4gQEAgLTEzMDAsOCAr MTMwMiw4IEBAIHN0YXRpYyB2b2lkIHNhbml0aXplX2F1eF9jaChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCj4gIAkJICogcG9ydC4gT3RoZXJ3aXNlIHRoZXkgc2hhcmUgdGhlIHNh bWUgYXV4IGNoYW5uZWwKPiAgCQkgKiBhbmQgc3lzdGVtIGNvdWxkbid0IGNvbW11bmljYXRlIHdp dGggdGhlbSBzZXBhcmF0ZWx5Lgo+ICAJCSAqCj4gLQkJICogRHVlIHRvIHBhcnNpbmcgdGhlIHBv cnRzIGluIGFscGhhYmV0aWNhbCBvcmRlciwKPiAtCQkgKiBhIGhpZ2hlciBwb3J0IHdpbGwgYWx3 YXlzIGNsb2JiZXIgYSBsb3dlciBvbmUuCj4gKwkJICogRHVlIHRvIHBhcnNpbmcgdGhlIHBvcnRz IGluIGNoaWxkIGRldmljZSBvcmRlciwKPiArCQkgKiBhIGxhdGVyIGRldmljZSB3aWxsIGFsd2F5 cyBjbG9iYmVyIGFuIGVhcmxpZXIgb25lLgo+ICAJCSAqLwo+ICAJCWktPnN1cHBvcnRzX2RwID0g ZmFsc2U7Cj4gIAkJaS0+YWx0ZXJuYXRlX2F1eF9jaGFubmVsID0gMDsKPiBAQCAtMTM0OSw0OSAr MTM1MSw1OCBAQCBzdGF0aWMgdTggbWFwX2RkY19waW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LCB1OCB2YnRfcGluKQo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2 b2lkIHBhcnNlX2RkaV9wb3J0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51 bSBwb3J0IHBvcnQsCj4gLQkJCSAgIHU4IGJkYl92ZXJzaW9uKQo+ICtzdGF0aWMgZW51bSBwb3J0 IGR2b19wb3J0X3RvX3BvcnQodTggZHZvX3BvcnQpCj4gIHsKPiAtCXN0cnVjdCBjaGlsZF9kZXZp Y2VfY29uZmlnICppdCwgKmNoaWxkID0gTlVMTDsKPiAtCXN0cnVjdCBkZGlfdmJ0X3BvcnRfaW5m byAqaW5mbyA9ICZkZXZfcHJpdi0+dmJ0LmRkaV9wb3J0X2luZm9bcG9ydF07Cj4gLQlpbnQgaSwg ajsKPiAtCWJvb2wgaXNfZHZpLCBpc19oZG1pLCBpc19kcCwgaXNfZWRwLCBpc19jcnQ7Cj4gLQkv KiBFYWNoIERESSBwb3J0IGNhbiBoYXZlIG1vcmUgdGhhbiBvbmUgdmFsdWUgb24gdGhlICJEVk8g UG9ydCIgZmllbGQsCj4gKwkvKgo+ICsJICogRWFjaCBEREkgcG9ydCBjYW4gaGF2ZSBtb3JlIHRo YW4gb25lIHZhbHVlIG9uIHRoZSAiRFZPIFBvcnQiIGZpZWxkLAo+ICAJICogc28gbG9vayBmb3Ig YWxsIHRoZSBwb3NzaWJsZSB2YWx1ZXMgZm9yIGVhY2ggcG9ydC4KPiAgCSAqLwo+IC0JaW50IGR2 b19wb3J0c1tdWzNdID0gewo+IC0JCXtEVk9fUE9SVF9IRE1JQSwgRFZPX1BPUlRfRFBBLCAtMX0s Cj4gLQkJe0RWT19QT1JUX0hETUlCLCBEVk9fUE9SVF9EUEIsIC0xfSwKPiAtCQl7RFZPX1BPUlRf SERNSUMsIERWT19QT1JUX0RQQywgLTF9LAo+IC0JCXtEVk9fUE9SVF9IRE1JRCwgRFZPX1BPUlRf RFBELCAtMX0sCj4gLQkJe0RWT19QT1JUX0NSVCwgRFZPX1BPUlRfSERNSUUsIERWT19QT1JUX0RQ RX0sCj4gLQkJe0RWT19QT1JUX0hETUlGLCBEVk9fUE9SVF9EUEYsIC0xfSwKPiArCXN0YXRpYyBj b25zdCBpbnQgZHZvX3BvcnRzW11bM10gPSB7Cj4gKwkJW1BPUlRfQV0gPSB7IERWT19QT1JUX0hE TUlBLCBEVk9fUE9SVF9EUEEsIC0xfSwKPiArCQlbUE9SVF9CXSA9IHsgRFZPX1BPUlRfSERNSUIs IERWT19QT1JUX0RQQiwgLTF9LAo+ICsJCVtQT1JUX0NdID0geyBEVk9fUE9SVF9IRE1JQywgRFZP X1BPUlRfRFBDLCAtMX0sCj4gKwkJW1BPUlRfRF0gPSB7IERWT19QT1JUX0hETUlELCBEVk9fUE9S VF9EUEQsIC0xfSwKPiArCQlbUE9SVF9FXSA9IHsgRFZPX1BPUlRfQ1JULCBEVk9fUE9SVF9IRE1J RSwgRFZPX1BPUlRfRFBFfSwKPiArCQlbUE9SVF9GXSA9IHsgRFZPX1BPUlRfSERNSUYsIERWT19Q T1JUX0RQRiwgLTF9LAo+ICAJfTsKPiArCWVudW0gcG9ydCBwb3J0Owo+ICsJaW50IGk7Cj4gIAo+ IC0JLyoKPiAtCSAqIEZpbmQgdGhlIGZpcnN0IGNoaWxkIGRldmljZSB0byByZWZlcmVuY2UgdGhl IHBvcnQsIHJlcG9ydCBpZiBtb3JlCj4gLQkgKiB0aGFuIG9uZSBmb3VuZC4KPiAtCSAqLwo+IC0J Zm9yIChpID0gMDsgaSA8IGRldl9wcml2LT52YnQuY2hpbGRfZGV2X251bTsgaSsrKSB7Cj4gLQkJ aXQgPSBkZXZfcHJpdi0+dmJ0LmNoaWxkX2RldiArIGk7Cj4gLQo+IC0JCWZvciAoaiA9IDA7IGog PCAzOyBqKyspIHsKPiAtCQkJaWYgKGR2b19wb3J0c1twb3J0XVtqXSA9PSAtMSkKPiArCWZvciAo cG9ydCA9IFBPUlRfQTsgcG9ydCA8IEFSUkFZX1NJWkUoZHZvX3BvcnRzKTsgcG9ydCsrKSB7Cj4g KwkJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZHZvX3BvcnRzW3BvcnRdKTsgaSsrKSB7Cj4g KwkJCWlmIChkdm9fcG9ydHNbcG9ydF1baV0gPT0gLTEpCj4gIAkJCQlicmVhazsKPiAgCj4gLQkJ CWlmIChpdC0+ZHZvX3BvcnQgPT0gZHZvX3BvcnRzW3BvcnRdW2pdKSB7Cj4gLQkJCQlpZiAoY2hp bGQpIHsKPiAtCQkJCQlEUk1fREVCVUdfS01TKCJNb3JlIHRoYW4gb25lIGNoaWxkIGRldmljZSBm b3IgcG9ydCAlYyBpbiBWQlQsIHVzaW5nIHRoZSBmaXJzdC5cbiIsCj4gLQkJCQkJCSAgICAgIHBv cnRfbmFtZShwb3J0KSk7Cj4gLQkJCQl9IGVsc2Ugewo+IC0JCQkJCWNoaWxkID0gaXQ7Cj4gLQkJ CQl9Cj4gLQkJCX0KPiArCQkJaWYgKGR2b19wb3J0ID09IGR2b19wb3J0c1twb3J0XVtpXSkKPiAr CQkJCXJldHVybiBwb3J0Owo+ICAJCX0KPiAgCX0KPiAtCWlmICghY2hpbGQpCj4gKwo+ICsJcmV0 dXJuIFBPUlRfTk9ORTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgcGFyc2VfZGRpX3BvcnQoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICsJCQkgICBjb25zdCBzdHJ1Y3QgY2hp bGRfZGV2aWNlX2NvbmZpZyAqY2hpbGQsCj4gKwkJCSAgIHU4IGJkYl92ZXJzaW9uKQo+ICt7Cj4g KwlzdHJ1Y3QgZGRpX3ZidF9wb3J0X2luZm8gKmluZm87Cj4gKwlib29sIGlzX2R2aSwgaXNfaGRt aSwgaXNfZHAsIGlzX2VkcCwgaXNfY3J0Owo+ICsJZW51bSBwb3J0IHBvcnQ7Cj4gKwo+ICsJcG9y dCA9IGR2b19wb3J0X3RvX3BvcnQoY2hpbGQtPmR2b19wb3J0KTsKPiArCWlmIChwb3J0ID09IFBP UlRfTk9ORSkKPiAgCQlyZXR1cm47Cj4gIAo+ICsJaW5mbyA9ICZkZXZfcHJpdi0+dmJ0LmRkaV9w b3J0X2luZm9bcG9ydF07Cj4gKwo+ICsJaWYgKGluZm8tPnByZXNlbnQpIHsKPiArCQlEUk1fREVC VUdfS01TKCJNb3JlIHRoYW4gb25lIGNoaWxkIGRldmljZSBmb3IgcG9ydCAlYyBpbiBWQlQsIHVz aW5nIHRoZSBmaXJzdC5cbiIsCj4gKwkJCSAgICAgIHBvcnRfbmFtZShwb3J0KSk7Cj4gKwkJcmV0 dXJuOwo+ICsJfQo+ICsKPiArCWluZm8tPnByZXNlbnQgPSB0cnVlOwo+ICsKPiAgCWlzX2R2aSA9 IGNoaWxkLT5kZXZpY2VfdHlwZSAmIERFVklDRV9UWVBFX1RNRFNfRFZJX1NJR05BTElORzsKPiAg CWlzX2RwID0gY2hpbGQtPmRldmljZV90eXBlICYgREVWSUNFX1RZUEVfRElTUExBWVBPUlRfT1VU UFVUOwo+ICAJaXNfY3J0ID0gY2hpbGQtPmRldmljZV90eXBlICYgREVWSUNFX1RZUEVfQU5BTE9H X09VVFBVVDsKPiBAQCAtMTUyMywxOSArMTUzNCwyMCBAQCBzdGF0aWMgdm9pZCBwYXJzZV9kZGlf cG9ydChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcG9ydCBwb3J0LAo+ ICAKPiAgc3RhdGljIHZvaWQgcGFyc2VfZGRpX3BvcnRzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwgdTggYmRiX3ZlcnNpb24pCj4gIHsKPiAtCWVudW0gcG9ydCBwb3J0Owo+ICsJ Y29uc3Qgc3RydWN0IGNoaWxkX2RldmljZV9jb25maWcgKmNoaWxkOwo+ICsJaW50IGk7Cj4gIAo+ ICAJaWYgKCFIQVNfRERJKGRldl9wcml2KSAmJiAhSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpCj4g IAkJcmV0dXJuOwo+ICAKPiAtCWlmICghZGV2X3ByaXYtPnZidC5jaGlsZF9kZXZfbnVtKQo+IC0J CXJldHVybjsKPiAtCj4gIAlpZiAoYmRiX3ZlcnNpb24gPCAxNTUpCj4gIAkJcmV0dXJuOwo+ICAK PiAtCWZvciAocG9ydCA9IFBPUlRfQTsgcG9ydCA8IEk5MTVfTUFYX1BPUlRTOyBwb3J0KyspCj4g LQkJcGFyc2VfZGRpX3BvcnQoZGV2X3ByaXYsIHBvcnQsIGJkYl92ZXJzaW9uKTsKPiArCWZvciAo aSA9IDA7IGkgPCBkZXZfcHJpdi0+dmJ0LmNoaWxkX2Rldl9udW07IGkrKykgewo+ICsJCWNoaWxk ID0gZGV2X3ByaXYtPnZidC5jaGlsZF9kZXYgKyBpOwo+ICsKPiArCQlwYXJzZV9kZGlfcG9ydChk ZXZfcHJpdiwgY2hpbGQsIGJkYl92ZXJzaW9uKTsKPiArCX0KPiAgfQo+ICAKPiAgc3RhdGljIHZv aWQKCi0tIApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgR3JhcGhpY3MgQ2VudGVyCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==