From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH] drm: parse hf-vsdb Date: Tue, 29 Nov 2016 20:24:39 +0530 Message-ID: <1480431279-20856-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Cc: airlied@redhat.com, daniel.vetter@intel.com List-Id: dri-devel@lists.freedesktop.org SERNSSAyLjAgLyBDRUEtODYxLUYgc3BlY3MgZGVmaW5lIGEgbmV3IENFQSBleHRlbnNpb24gZGF0 YSBibG9jaywKY2FsbGVkIGhkbWktZm9ydW0gdmVuZG9yIHNwZWNpZmljIGRhdGEgYmxvY2sgKEhG LVZTREIpLiBUaGlzIGJsb2NrCmNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHNpbmsncyBzdXBw b3J0IGZvciBIRE1JIDIuMCBjb21wbGlhbnQKZmVhdHVyZXMuIFRoZXNlIGZlYXR1cmVzIGFyZToK ICAgIC0gRGVlcCBjb2xvciBZVVYgNDIwIHN1cHBvcnQgYW5kIEJQQwogICAgLSAzRCBmbGFncyBm b3IKICAgICAgICAtIE9TRCBEaXNwbGFyaXR5CiAgICAgICAgLSBEdWFsIHZpZXcgc2lnbmFsaW5n CiAgICAgICAgLSBpbmRlcGVuZGVudCB2aWV3IHNpZ25hbGluZwogICAgLSBTQ0RDIHN1cHBvcnQK ICAgIC0gTWF4IFRNRFMgY2hhciByYXRlCiAgICAtIFNjcmFtYmxpbmcgc3VwcG9ydAoKVGhpcyBw YXRjaCBhZGRzIGEgcGFyc2VyIGZ1bmN0aW9uIGZvciB0aGlzIGJsb2NrLCBhbmQgYWRkIGZsYWdz IHRvCmluZGljYXRlIHN1cHBvcnQgZm9yIG5ldyBmZWF0dXJlcywgaW4gZHJtX2Rpc3BsYXlfaW5m byBzdHJ1Y3R1cmUuCgpTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNo YXJtYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgIHwgNzMgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2RybS9k cm1fY29ubmVjdG9yLmggfCA0OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVk ZS9kcm0vZHJtX2VkaWQuaCAgICAgIHwgIDUgKysrKwogaW5jbHVkZS9saW51eC9oZG1pLmggICAg ICAgIHwgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCAxMjcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlk LmMKaW5kZXggMzM2YmUzMS4uYjE4YmZlMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2Ry bV9lZGlkLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKQEAgLTMyMjMsNiArMzIy MywyNyBAQCBzdGF0aWMgaW50IGFkZF8zZF9zdHJ1Y3RfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwgdTE2IHN0cnVjdHVyZSwKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGJv b2wgY2VhX2RiX2lzX2hmX3ZzZGIoY29uc3QgdTggKmRiKQoreworCXU4IGxlbjsKKwlpbnQgaGZ2 c2RiX2lkOworCisJaWYgKGNlYV9kYl90YWcoZGIpICE9IFZFTkRPUl9CTE9DSykKKwkJcmV0dXJu IGZhbHNlOworCisJbGVuID0gY2VhX2RiX3BheWxvYWRfbGVuKGRiKTsKKwlpZiAobGVuIDwgNyB8 fCBsZW4gPiAzMSkKKwkJcmV0dXJuIGZhbHNlOworCisJLyogdmVyc2lvbiBzaG91bGQgYmUgMSAq LworCWlmIChkYls0XSAgIT0gMSkKKwkJcmV0dXJuIGZhbHNlOworCisJaGZ2c2RiX2lkID0gZGJb MV0gfCAoZGJbMl0gPDwgOCkgfCAoZGJbM10gPDwgMTYpOworCisJcmV0dXJuIGhmdnNkYl9pZCA9 PSBIRE1JX0lFRUVfT1VJX0hGVlNEQjsKK30KKwogc3RhdGljIGJvb2wgY2VhX2RiX2lzX2hkbWlf dnNkYihjb25zdCB1OCAqZGIpCiB7CiAJaW50IGhkbWlfaWQ7CkBAIC0zNzY3LDYgKzM3ODgsNTYg QEAgYm9vbCBkcm1fcmdiX3F1YW50X3JhbmdlX3NlbGVjdGFibGUoc3RydWN0IGVkaWQgKmVkaWQp CiB9CiBFWFBPUlRfU1lNQk9MKGRybV9yZ2JfcXVhbnRfcmFuZ2Vfc2VsZWN0YWJsZSk7CiAKK3N0 YXRpYyB2b2lkIGRybV9wYXJzZV95dXY0MjBfZGVlcF9jb2xvcl9pbmZvKHN0cnVjdCBkcm1fY29u bmVjdG9yICpjb25uZWN0b3IsCisJCQkJCQljb25zdCB1OCAqZGIpCit7CisJc3RydWN0IGRybV9k aXNwbGF5X2luZm8gKmluZm8gPSAmY29ubmVjdG9yLT5kaXNwbGF5X2luZm87CisKKwlpZiAoZGJb N10gJiBEUk1fRURJRF9ZVVY0MjBfRENfNDgpCisJCWluZm8tPmVkaWRfeXV2NDIwX2RjX21vZGVz IHw9IERSTV9FRElEX1lVVjQyMF9EQ180ODsKKwlpZiAoZGJbN10gJiBEUk1fRURJRF9ZVVY0MjBf RENfMzYpCisJCWluZm8tPmVkaWRfeXV2NDIwX2RjX21vZGVzIHw9IERSTV9FRElEX1lVVjQyMF9E Q18zNjsKKwlpZiAoZGJbN10gJiBEUk1fRURJRF9ZVVY0MjBfRENfMzApCisJCWluZm8tPmVkaWRf eXV2NDIwX2RjX21vZGVzIHw9IERSTV9FRElEX1lVVjQyMF9EQ18zMDsKKworCWlmICghaW5mby0+ ZWRpZF95dXY0MjBfZGNfbW9kZXMpIHsKKwkJRFJNX0RFQlVHKCIlczogTm8gWVVWIDQyMCBkZWVw IGNvbG9yIHN1cHBvcnQgaW4gc2luay5cbiIsCisJCQkgIGNvbm5lY3Rvci0+bmFtZSk7CisJCXJl dHVybjsKKwl9Cit9CisKK3N0YXRpYyB2b2lkCitkcm1fcGFyc2VfaGZfdnNkYihzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLCBjb25zdCB1OCAqZGIpCit7CisJc3RydWN0IGRybV9kaXNw bGF5X2luZm8gKmluZm8gPSAmY29ubmVjdG9yLT5kaXNwbGF5X2luZm87CisKKwlpZiAoZGJbNV0p IHsKKwkJLyoKKwkJICogSWYgdGhlIHNpbmsgc3VwcGxpZXMgbWF4IHRtZHMgY2hhciByYXRlIGlu IGRiLAorCQkgKiB0aGUgYWN0dWFsIG1heCB0bWRzIHJhdGUgPSBkYls1XSAqIDVNaHouCisJCSAq LworCQlpbmZvLT5tYXhfdG1kc19jbG9jayA9IGRiWzVdICogNTAwMDsKKwkJRFJNX0RFQlVHX0tN UygiSEYtVlNEQjogbWF4IFRNRFMgY2xvY2sgJWQga0h6XG4iLAorCQlpbmZvLT5tYXhfdG1kc19j bG9jayk7CisJfQorCisJaWYgKGRiWzZdICYgRFJNX0hGVlNEQl9TQ0RDX1NVUFBPUlQpCisJCWlu Zm8tPnNjZGNfc3VwcG9ydGVkID0gdHJ1ZTsKKwlpZiAoZGJbNl0gJiBEUk1fSEZWU0RCX1NDRENf UlJfQ0FQKQorCQlpbmZvLT5zY2RjX3JyX2NhcCA9IHRydWU7CisJaWYgKGRiWzZdICYgRFJNX0hG VlNEQl9TQ1JBTUJMSU5HKQorCQlpbmZvLT5zY3JhbWJsaW5nID0gdHJ1ZTsKKwlpZiAoZGJbNl0g JiBEUk1fSEZWU0RCX0lOREVQRU5ERU5UX1ZJRVcpCisJCWluZm8tPmluZGVwZW5kZW50X3ZpZXdf M2QgPSB0cnVlOworCWlmIChkYls2XSAmIERSTV9IRlZTREJfRFVBTF9WSUVXKQorCQlpbmZvLT5k dWFsX3ZpZXdfM2QgPSB0cnVlOworCWlmIChkYls2XSAmIERSTV9IRlZTREJfM0RfT1NEKQorCQlp bmZvLT5vc2RfZGlzcGFyaXR5XzNkID0gdHJ1ZTsKKworCWRybV9wYXJzZV95dXY0MjBfZGVlcF9j b2xvcl9pbmZvKGNvbm5lY3RvciwgZGIpOworfQorCiBzdGF0aWMgdm9pZCBkcm1fcGFyc2VfaGRt aV9kZWVwX2NvbG9yX2luZm8oc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAkJCQkJ ICAgY29uc3QgdTggKmhkbWkpCiB7CkBAIC0zODgxLDYgKzM5NTIsOCBAQCBzdGF0aWMgdm9pZCBk cm1fcGFyc2VfY2VhX2V4dChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCiAJCWlm IChjZWFfZGJfaXNfaGRtaV92c2RiKGRiKSkKIAkJCWRybV9wYXJzZV9oZG1pX3ZzZGJfdmlkZW8o Y29ubmVjdG9yLCBkYik7CisJCWlmIChjZWFfZGJfaXNfaGZfdnNkYihkYikpCisJCQlkcm1fcGFy c2VfaGZfdnNkYihjb25uZWN0b3IsIGRiKTsKIAl9CiB9CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUv ZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAppbmRleCAz NGY5NzQxLi5kMDExZGQ1IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgK KysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCkBAIC0xNjcsNiArMTY3LDQ2IEBAIHN0 cnVjdCBkcm1fZGlzcGxheV9pbmZvIHsKIAkgKi8KIAl1MzIgYnVzX2ZsYWdzOwogCisjZGVmaW5l IERSTV9IRlZTREJfU0NEQ19TVVBQT1JUCSgxPDw3KQorI2RlZmluZSBEUk1fSEZWU0RCX1NDRENf UlJfQ0FQCQkoMTw8NikKKyNkZWZpbmUgRFJNX0hGVlNEQl9TQ1JBTUJMSU5HCQkoMTw8MykKKyNk ZWZpbmUgRFJNX0hGVlNEQl9JTkRFUEVOREVOVF9WSUVXCSgxPDwyKQorI2RlZmluZSBEUk1fSEZW U0RCX0RVQUxfVklFVwkJKDE8PDEpCisjZGVmaW5lIERSTV9IRlZTREJfM0RfT1NECQkoMTw8MCkK KworCS8qKgorCSAqIEBzY2RjX3N1cHBvcnRlZDogU2luayBzdXBwb3J0cyBTQ0RDIGZ1bmN0aW9u YWxpdHkuCisJICovCisJYm9vbCBzY2RjX3N1cHBvcnRlZDsKKworCS8qKgorCSAqIEBzY2RjX3Jy X2NhcDogU2luayBoYXMgU0NEQyByZWFkIHJlcXVlc3QgY2FwYWJpbGl0eS4KKwkgKi8KKwlib29s IHNjZGNfcnJfY2FwOworCisJLyoqCisJICogQHNjcmFtYmxpbmc6IFN5bmMgc3VwcG9ydHMgc2Ny YW1ibGluZyBmb3IgPD0zNDAgTWNzYyBUTURTCisJICogY2hhciByYXRlcy4gQWJvdmUgMzQwIE1j c2MgcmF0ZXMsIHNjcmFtYmxpbmcgaXMgYWx3YXlzIHJlcWQuCisJICovCisJYm9vbCBzY3JhbWJs aW5nOworCisJLyoqCisJICogQGluZGVwZW5kZW50X3ZpZXdfM2Q6IFNpbmsgc3VwcG9ydHMgM2Qg aW5kZXBlbmRlbnQgdmlldyBzaWduYWxpbmcKKwkgKiBpbiBIRi1WU0lGLgorCSAqLworCWJvb2wg aW5kZXBlbmRlbnRfdmlld18zZDsKKworCS8qKgorCSAqIEBkdWFsX3ZpZXdfM2Q6IFNpbmsgc3Vw cG9ydHMgM2QgZHVhbCB2aWV3IHNpZ25hbGluZyBpbiBIRi1WU0lGLgorCSAqLworCWJvb2wgZHVh bF92aWV3XzNkOworCisJLyoqCisJICogQG9zZF9kaXNwYXJpdHlfM2Q6IFNpbmsgc3VwcG9ydHMg M2Qgb3NkIGRpc3Bhcml0eSBpbmRpY2F0aW9uCisJICogaW4gSEYtVlNJRi4KKwkgKi8KKwlib29s IG9zZF9kaXNwYXJpdHlfM2Q7CisKIAkvKioKIAkgKiBAbWF4X3RtZHNfY2xvY2s6IE1heGltdW0g VE1EUyBjbG9jayByYXRlIHN1cHBvcnRlZCBieSB0aGUKIAkgKiBzaW5rIGluIGtIei4gMCBtZWFu cyB1bmRlZmluZWQuCkBAIC0xODUsNiArMjI1LDE0IEBAIHN0cnVjdCBkcm1fZGlzcGxheV9pbmZv IHsKIAl1OCBlZGlkX2hkbWlfZGNfbW9kZXM7CiAKIAkvKioKKwkgKiBAZWRpZF95dXY0MjBfZGNf bW9kZXM6IGJwYyBmb3IgZGVlcCBjb2xvciB5dXY0MjAgZW5jb2RpbmcuCisJICogdmFyaW91cyBz aW5rcyBjYW4gc3VwcG9ydCAxMC8xMi8xNiBiaXQgcGVyIGNoYW5uZWwgZGVlcAorCSAqIGNvbG9y IGVuY29kaW5nLiBlZGlkX3l1djQyMF9kY19tb2RlcyA9IDAgbWVhbnMgc2luayBkb2Vzbid0CisJ ICogc3VwcG9ydCBkZWVwIGNvbG9yIHl1djQyMCBlbmNvZGluZy4KKwkgKi8KKwl1OCBlZGlkX3l1 djQyMF9kY19tb2RlczsKKworCS8qKgogCSAqIEBjZWFfcmV2OiBDRUEgcmV2aXNpb24gb2YgdGhl IEhETUkgc2luay4KIAkgKi8KIAl1OCBjZWFfcmV2OwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0v ZHJtX2VkaWQuaCBiL2luY2x1ZGUvZHJtL2RybV9lZGlkLmgKaW5kZXggMzhlYWJmNi4uNWRmOGI5 YyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaAorKysgYi9pbmNsdWRlL2RybS9k cm1fZWRpZC5oCkBAIC0yMTIsNiArMjEyLDExIEBAIHN0cnVjdCBkZXRhaWxlZF90aW1pbmcgewog I2RlZmluZSBEUk1fRURJRF9IRE1JX0RDXzMwICAgICAgICAgICAgICAgKDEgPDwgNCkKICNkZWZp bmUgRFJNX0VESURfSERNSV9EQ19ZNDQ0ICAgICAgICAgICAgICgxIDw8IDMpCiAKKy8qIFlVViA0 MjAgZGVlcCBjb2xvciBtb2RlcyAqLworI2RlZmluZSBEUk1fRURJRF9ZVVY0MjBfRENfNDgJCSAg KDEgPDwgNikKKyNkZWZpbmUgRFJNX0VESURfWVVWNDIwX0RDXzM2CQkgICgxIDw8IDUpCisjZGVm aW5lIERSTV9FRElEX1lVVjQyMF9EQ18zMAkJICAoMSA8PCA1KQorCiAvKiBFTEQgSGVhZGVyIEJs b2NrICovCiAjZGVmaW5lIERSTV9FTERfSEVBREVSX0JMT0NLX1NJWkUJNAogCmRpZmYgLS1naXQg YS9pbmNsdWRlL2xpbnV4L2hkbWkuaCBiL2luY2x1ZGUvbGludXgvaGRtaS5oCmluZGV4IGVkYmI0 ZmMuLjJkNGU5ZWYgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbGludXgvaGRtaS5oCisrKyBiL2luY2x1 ZGUvbGludXgvaGRtaS5oCkBAIC0zNSw2ICszNSw3IEBAIGVudW0gaGRtaV9pbmZvZnJhbWVfdHlw ZSB7CiB9OwogCiAjZGVmaW5lIEhETUlfSUVFRV9PVUkgMHgwMDBjMDMKKyNkZWZpbmUgSERNSV9J RUVFX09VSV9IRlZTREIgMHhDNDVERDgKICNkZWZpbmUgSERNSV9JTkZPRlJBTUVfSEVBREVSX1NJ WkUgIDQKICNkZWZpbmUgSERNSV9BVklfSU5GT0ZSQU1FX1NJWkUgICAgMTMKICNkZWZpbmUgSERN SV9TUERfSU5GT0ZSQU1FX1NJWkUgICAgMjUKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK