From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 1/1] drm/i915: Allow parsing of variable size child device entries from VBT Date: Fri, 21 Aug 2015 17:24:28 +0300 Message-ID: <20150821142428.GD5176@intel.com> References: <1c02cc0db18863120520926f45db4c6e320a21b8.1440165040.git.jani.nikula@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 0A99F6E68A for ; Fri, 21 Aug 2015 07:24:46 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1c02cc0db18863120520926f45db4c6e320a21b8.1440165040.git.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: Jani Nikula Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBBdWcgMjEsIDIwMTUgYXQgMDQ6NTI6MDFQTSArMDMwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gRnJvbTogRGF2aWQgV2VpbmVoYWxsIDxkYXZpZC53ZWluZWhhbGxAbGludXguaW50ZWwu Y29tPgo+IAo+IFZCVCB2ZXJzaW9uIDE5NiBpbmNyZWFzZWQgdGhlIHNpemUgb2YgY29tbW9uX2No aWxkX2Rldl9jb25maWcuIFRoZQo+IHBhcnNlciBjb2RlIGFzc3VtZWQgdGhhdCB0aGUgc2l6ZSBv ZiB0aGlzIHN0cnVjdHVyZSB3b3VsZCBub3QgY2hhbmdlLgo+IAo+IFRoZSBtb2RpZmllZCBjb2Rl IG5vdyBjb3BpZXMgdGhlIGFtb3VudCBuZWVkZWQgYmFzZWQgb24gdGhlIFZCVCB2ZXJzaW9uLAo+ IGFuZCBlbWl0cyBhIGRlYnVnIG1lc3NhZ2UgaWYgdGhlIFZCVCB2ZXJzaW9uIGlzIHVua25vd24g KHRvbyBuZXcpOyBzaW5jZQo+IHRoZSBzdHJ1Y3QgY29uZmlnIGJsb2NrIHdvbid0IHNocmluayBp biBuZXdlciB2ZXJzaW9ucyBpdCBzaG91bGQgYmUKPiBoYXJtbGVzcyB0byBjb3B5IHRoZSBtYXhp bXVtIGtub3duIHNpemUgaW4gc3VjaCBjYXNlcywgc28gdGhhdCdzIHdoYXQgd2UKPiBkbywgYnV0 IGVtaXR0aW5nIHRoZSB3YXJuaW5nIGlzIHByb2JhYmx5IHNlbnNpYmxlIGFueXdheS4KPiAKPiBJ biB0aGUgbG9uZ2VyIHJ1biBpdCBtaWdodCBtYWtlIHNlbnNlIHRvIG1vZGlmeSB0aGUgcGFyc2Vy IGNvZGUgdG8gdXNlIGEKPiB2ZXJzaW9uL2ZlYXR1cmUgbWFwcGluZywgcmF0aGVyIHRoYW4gaGFy ZGNvZGluZyB0aGluZ3MgbGlrZSB0aGlzLCBidXQKPiBmb3Igbm93IHRoZSB2YXJpYW50cyBhcmUg ZmFpcmx5IG1hbmFnYWJsZS4KPiAKPiBUaGlzIGZpeGVzIGEgcmVncmVzc2lvbiBpbnRyb2R1Y2Vk IGluCj4gCj4gY29tbWl0IDc1MDY3ZGRlY2YyMTI3MTYzMWJjMDE4ZDJmYjIzZGRkMDliNjZhYWUK PiBBdXRob3I6IEFudHRpIEtvc2tpcGFhIDxhbnR0aS5rb3NraXBhYUBsaW51eC5pbnRlbC5jb20+ Cj4gRGF0ZTogICBGcmkgSnVsIDEwIDE0OjEwOjU1IDIwMTUgKzAzMDAKPiAKPiAgICAgZHJtL2k5 MTU6IFBlci1EREkgSV9ib29zdCBvdmVycmlkZQo+IAo+IHNpbmNlIHRoYXQgY29tbWl0IGNoYW5n ZWQgdGhlIGNoaWxkIGRldmljZSBjb25maWcgc2l6ZSB3aXRob3V0IHVwZGF0aW5nCj4gdGhlIGNo ZWNrcyBhbmQgbWVtY3B5Lgo+IAo+IHYyOiBTdHJpY3RlciBzaXplIGNoZWNrcwo+IAo+IHYzIGJ5 IEphbmk6Cj4gLSBLZWVwIHRoZSBjaGVja3Mgc3RyaWN0LCBhbmQgd2FybmlnbnMgdmVyYm9zZSwg YnV0IGtlZXAgZ29pbmcgYW55d2F5Lgo+IC0gVGFrZSBjYXJlIHRvIGNvcHkgdGhlIG1heCBhbW91 bnQgb2YgY2hpbGQgZGV2aWNlIGNvbmZpZyB3ZSBjYW4uCj4gLSBGaXggdGhlIG1lc3NhZ2VzLgo+ IAo+IFNpZ25lZC1vZmYtYnk6IERhdmlkIFdlaW5laGFsbCA8ZGF2aWQud2VpbmVoYWxsQGxpbnV4 LmludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50 ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9iaW9zLmMgfCAzNyAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Jpb3MuaCB8ICA2ICsrKystLQo+ICAyIGZpbGVzIGNoYW5nZWQsIDM3IGluc2Vy dGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Jpb3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo+ IGluZGV4IDY0ZTViMTVhZTBiNi4uYmU4M2I3N2FhMDE4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Jpb3MuYwo+IEBAIC0xMDUxLDE3ICsxMDUxLDM5IEBAIHBhcnNlX2RldmljZV9tYXBwaW5n KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCWNvbnN0IHVuaW9uIGNoaWxk X2RldmljZV9jb25maWcgKnBfY2hpbGQ7Cj4gIAl1bmlvbiBjaGlsZF9kZXZpY2VfY29uZmlnICpj aGlsZF9kZXZfcHRyOwo+ICAJaW50IGksIGNoaWxkX2RldmljZV9udW0sIGNvdW50Owo+IC0JdTE2 CWJsb2NrX3NpemU7Cj4gKwl1OCBleHBlY3RlZF9zaXplOwo+ICsJdTE2IGJsb2NrX3NpemU7Cj4g IAo+ICAJcF9kZWZzID0gZmluZF9zZWN0aW9uKGJkYiwgQkRCX0dFTkVSQUxfREVGSU5JVElPTlMp Owo+ICAJaWYgKCFwX2RlZnMpIHsKPiAgCQlEUk1fREVCVUdfS01TKCJObyBnZW5lcmFsIGRlZmlu aXRpb24gYmxvY2sgaXMgZm91bmQsIG5vIGRldmljZXMgZGVmaW5lZC5cbiIpOwo+ICAJCXJldHVy bjsKPiAgCX0KPiAtCWlmIChwX2RlZnMtPmNoaWxkX2Rldl9zaXplIDwgc2l6ZW9mKCpwX2NoaWxk KSkgewo+IC0JCURSTV9FUlJPUigiR2VuZXJhbCBkZWZpbml0b24gYmxvY2sgY2hpbGQgZGV2aWNl IHNpemUgaXMgdG9vIHNtYWxsLlxuIik7Cj4gKwlpZiAoYmRiLT52ZXJzaW9uIDwgMTk1KSB7Cj4g KwkJZXhwZWN0ZWRfc2l6ZSA9IHNpemVvZihzdHJ1Y3Qgb2xkX2NoaWxkX2Rldl9jb25maWcpOwo+ ICsJfSBlbHNlIGlmIChiZGItPnZlcnNpb24gPT0gMTk1KSB7Cj4gKwkJZXhwZWN0ZWRfc2l6ZSA9 IDM3Owo+ICsJfSBlbHNlIGlmIChiZGItPnZlcnNpb24gPD0gMTk3KSB7Cj4gKwkJZXhwZWN0ZWRf c2l6ZSA9IDM4Owo+ICsJfSBlbHNlIHsKPiArCQlleHBlY3RlZF9zaXplID0gMzg7Cj4gKwkJQlVJ TERfQlVHX09OKHNpemVvZigqcF9jaGlsZCkgPCAzOCk7Cj4gKwkJRFJNX0RFQlVHX0RSSVZFUigi RXhwZWN0ZWQgY2hpbGQgZGV2aWNlIGNvbmZpZyBzaXplIGZvciBWQlQgdmVyc2lvbiAldSBub3Qg a25vd247IGFzc3VtaW5nICV1XG4iLAo+ICsJCQkJIGJkYi0+dmVyc2lvbiwgZXhwZWN0ZWRfc2l6 ZSk7Cj4gKwl9Cj4gKwo+ICsJLyogVGhlIGxlZ2FjeSBzaXplZCBjaGlsZCBkZXZpY2UgY29uZmln IGlzIHRoZSBtaW5pbXVtIHdlIG5lZWQuICovCj4gKwlpZiAocF9kZWZzLT5jaGlsZF9kZXZfc2l6 ZSA8IHNpemVvZihzdHJ1Y3Qgb2xkX2NoaWxkX2Rldl9jb25maWcpKSB7Cj4gKwkJRFJNX0VSUk9S KCJDaGlsZCBkZXZpY2UgY29uZmlnIHNpemUgJXUgaXMgdG9vIHNtYWxsLlxuIiwKPiArCQkJICBw X2RlZnMtPmNoaWxkX2Rldl9zaXplKTsKPiAgCQlyZXR1cm47Cj4gIAl9Cj4gKwo+ICsJLyogRmxh ZyBhbiBlcnJvciBmb3IgdW5leHBlY3RlZCBzaXplLCBidXQgY29udGludWUgYW55d2F5LiAqLwo+ ICsJaWYgKHBfZGVmcy0+Y2hpbGRfZGV2X3NpemUgIT0gZXhwZWN0ZWRfc2l6ZSkKPiArCQlEUk1f RVJST1IoIlVuZXhwZWN0ZWQgY2hpbGQgZGV2aWNlIGNvbmZpZyBzaXplICV1IChleHBlY3RlZCAl dSBmb3IgVkJUIHZlcnNpb24gJXUpXG4iLAo+ICsJCQkgIHBfZGVmcy0+Y2hpbGRfZGV2X3NpemUs IGV4cGVjdGVkX3NpemUsIGJkYi0+dmVyc2lvbik7Cj4gKwo+ICAJLyogZ2V0IHRoZSBibG9jayBz aXplIG9mIGdlbmVyYWwgZGVmaW5pdGlvbnMgKi8KPiAgCWJsb2NrX3NpemUgPSBnZXRfYmxvY2tz aXplKHBfZGVmcyk7Cj4gIAkvKiBnZXQgdGhlIG51bWJlciBvZiBjaGlsZCBkZXZpY2UgKi8KPiBA QCAtMTEwNiw3ICsxMTI4LDE0IEBAIHBhcnNlX2RldmljZV9tYXBwaW5nKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCj4gIAkJY2hpbGRfZGV2X3B0ciA9IGRldl9wcml2LT52 YnQuY2hpbGRfZGV2ICsgY291bnQ7Cj4gIAkJY291bnQrKzsKPiAtCQltZW1jcHkoY2hpbGRfZGV2 X3B0ciwgcF9jaGlsZCwgc2l6ZW9mKCpwX2NoaWxkKSk7Cj4gKwo+ICsJCS8qCj4gKwkJICogQ29w eSBhcyBtdWNoIGFzIHdlIGtub3cgKHNpemVvZikgYW5kIGlzIGF2YWlsYWJsZQo+ICsJCSAqIChj aGlsZF9kZXZfc2l6ZSkgb2YgdGhlIGNoaWxkIGRldmljZS4gQWNjZXNzaW5nIHRoZSBkYXRhIG11 c3QKPiArCQkgKiBkZXBlbmQgb24gVkJUIHZlcnNpb24uCj4gKwkJICovCj4gKwkJbWVtY3B5KGNo aWxkX2Rldl9wdHIsIHBfY2hpbGQsCj4gKwkJICAgICAgIG1pbl90KHNpemVfdCwgcF9kZWZzLT5j aGlsZF9kZXZfc2l6ZSwgc2l6ZW9mKCpwX2NoaWxkKSkpOwoKTG9va3MgZ29vZC4gQ291bGQgbWF5 YmUgdXNlIGEKQlVJTERfQlVHX09OKHNpemVvZihzdHJ1Y3Qgb2xkX2NoaWxkX2Rldl9jb25maWcp ICE9IDMzKQpzb21ld2hlcmUgdG8gbWFrZSBzdXJlIHBlb3BsZSBkb24ndCBtYWtlIGEgbWVzcyBv ZiB0aGluZ3MuCgpSZXZpZXdlZC1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxp bnV4LmludGVsLmNvbT4KCj4gIAl9Cj4gIAlyZXR1cm47Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfYmlvcy5oCj4gaW5kZXggNmQ5MDllZmJmNDNmLi4wNmQwZGJkZTJiZTYgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfYmlvcy5oCj4gQEAgLTIwMyw5ICsyMDMsMTEgQEAgc3RydWN0IGJkYl9n ZW5lcmFsX2ZlYXR1cmVzIHsKPiAgI2RlZmluZSBERVZJQ0VfUE9SVF9EVk9CCTB4MDEKPiAgI2Rl ZmluZSBERVZJQ0VfUE9SVF9EVk9DCTB4MDIKPiAgCj4gLS8qIFdlIHVzZWQgdG8ga2VlcCB0aGlz IHN0cnVjdCBidXQgd2l0aG91dCBhbnkgdmVyc2lvbiBjb250cm9sLiBXZSBzaG91bGQgYXZvaWQK PiArLyoKPiArICogV2UgdXNlZCB0byBrZWVwIHRoaXMgc3RydWN0IGJ1dCB3aXRob3V0IGFueSB2 ZXJzaW9uIGNvbnRyb2wuIFdlIHNob3VsZCBhdm9pZAo+ICAgKiB1c2luZyBpdCBpbiB0aGUgZnV0 dXJlLCBidXQgaXQgc2hvdWxkIGJlIHNhZmUgdG8ga2VlcCB1c2luZyBpdCBpbiB0aGUgb2xkCj4g LSAqIGNvZGUuICovCj4gKyAqIGNvZGUuIERvIG5vdCBjaGFuZ2U7IHdlIHJlbHkgb24gaXRzIHNp emUuCj4gKyAqLwo+ICBzdHJ1Y3Qgb2xkX2NoaWxkX2Rldl9jb25maWcgewo+ICAJdTE2IGhhbmRs ZTsKPiAgCXUxNiBkZXZpY2VfdHlwZTsKPiAtLSAKPiAyLjEuNAoKLS0gClZpbGxlIFN5cmrDpGzD pApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK