From mboxrd@z Thu Jan 1 00:00:00 1970 From: yu.dai@intel.com Subject: [PATCH 05/18] drm/i915: Add firmware version check Date: Thu, 26 Mar 2015 12:41:12 -0700 Message-ID: <1427398885-31988-6-git-send-email-yu.dai@intel.com> References: <1427398885-31988-1-git-send-email-yu.dai@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 31D1A6EA99 for ; Thu, 26 Mar 2015 12:44:15 -0700 (PDT) In-Reply-To: <1427398885-31988-1-git-send-email-yu.dai@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 RnJvbTogQWxleCBEYWkgPHl1LmRhaUBpbnRlbC5jb20+CgpTZXQgdGhlIGZpcm13YXJlIHZlcnNp b24gdGhhdCByZXF1aXJlZCBieSBIVy4gRHJpdmVyIHNldHMgcmVxdWlyZWQKdmVyc2lvbiBhY2Nv cmRpbmcgdG8gcGxhdGZvcm0uIEFmdGVyIGZpcm13YXJlIGlzIGxvYWRlZCBidXQgYmVmb3JlCnNl bmQgdG8gSFcsIHRoZSBtYWpvci5taW5vciB2ZXJzaW9uIGlzIHJlYWQgZnJvbSBDU1MgaGVhZGVy IGZpZWxkLAp3aGljaCBpcyAxN3RoIERXT1JEIGN1cnJlbnRseS4gVGhlIG1ham9yIHZlcnNpb24g bXVzdCBiZSBzYW1lOyB0aGUKbWlub3IgdmVyc2lvbiBtdXN0IGJlIG5ld2VyIHRoYW4gcmVxdWly ZWQuCgpDdXJyZW50bHkgdGhlIEd1QyBmdyB2ZXJzaW9uIGlzIDEuMC4KCklzc3VlOiBWSVotNDg4 NApTaWduZWQtb2ZmLWJ5OiBBbGV4IERhaSA8eXUuZGFpQGludGVsLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaCAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9ndWNfbG9hZGVyLmMgfCA0MSArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VjX2xvYWRlci5jICB8ICA2ICsrKyst CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91Y19sb2FkZXIuaCAgfCAgNCArKysrCiA0IGZp bGVzIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9ndWMuaAppbmRleCBkOGU3YzAwLi5hMDZhN2IzIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9ndWMuaApAQCAtNTAsNiArNTAsNyBAQCBzdHJ1Y3QgaW50ZWxfZ3VjIHsKIAogI2RlZmluZSBV T1NfUlNBX1NDUkFUQ0hfMAkweGMyMDAKICNkZWZpbmUgICBVT1NfUlNBX1NJR19TSVpFCTB4MTAw CisjZGVmaW5lICAgVU9TX1ZFUlNJT05fT0ZGU0VUCTB4MTEKICNkZWZpbmUgRE1BX0FERFJfMF9M T1cJCTB4YzMwMAogI2RlZmluZSBETUFfQUREUl8wX0hJR0gJCTB4YzMwNAogI2RlZmluZSBETUFf QUREUl8xX0xPVwkJMHhjMzA4CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9ndWNfbG9hZGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9hZGVyLmMK aW5kZXggOTFhZjcxMC4uYjk5MjNiNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZ3VjX2xvYWRlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Y19s b2FkZXIuYwpAQCAtMjQ4LDE2ICsyNDgsNTMgQEAgZmFpbDoKIAlyZXR1cm4gZXJyOwogfQogCisv KgorICogQ2hlY2sgdGhlIGZpcm13YXJlIHRoYXQgd2FzIGZvdW5kOyByZXR1cm4gVFJVRSBpZiBh Y2NlcHRhYmxlLgorICoKKyAqIEZvciB0aGUgR3VDLCB3ZSBqdXN0IGNoZWNrIHRoZSB2ZXJzaW9u IG51bWJlciBlbWJlZGRlZCBhdCBhIHdlbGwta25vd24KKyAqIG9mZnNldCB3aXRoaW4gdGhlIGZp cm13YXJlIGJsb2I7IG5vdGUgdGhhdCBVT1NfUlNBX1NJR19TSVpFIGlzIGdpdmVuCisgKiBpbiAq Ynl0ZXMqLCB3aGVyZWFzIFVPU19WRVJTSU9OX09GRlNFVCBpcyBpbiBEV29yZHMhCisgKi8KK3N0 YXRpYyBib29sIGludGVsX2d1Y191Y29kZV9jaGVjayhzdHJ1Y3QgaW50ZWxfdWNfZncgKmd1Y19m dykKK3sKKwl1aW50MzJfdCAqZGF0YSA9ICh2b2lkICopKGd1Y19mdy0+dWNfZndfYmxvYi0+ZGF0 YSArIFVPU19SU0FfU0lHX1NJWkUpOworCXVpbnQzMl90IHZlcnNpb24sIG1ham9yLCBtaW5vcjsK KworCXZlcnNpb24gPSBkYXRhW1VPU19WRVJTSU9OX09GRlNFVF07CisJbWFqb3IgPSB2ZXJzaW9u ID4+IDE2OworCW1pbm9yID0gdmVyc2lvbiAmIDB4RkZGRjsKKworCWlmIChtYWpvciA9PSBndWNf ZnctPnVjX2Z3X3Zlcl9tYWpvciAmJgorCSAgICBtaW5vciA+PSBndWNfZnctPnVjX2Z3X3Zlcl9t aW5vcikgeworCQlEUk1fREVCVUdfRFJJVkVSKCJmaXJtd2FyZSB2ZXJzaW9uICVkLiVkIE9LICht aW5pbXVtICVkLiVkKVxuIiwKKwkJCSBtYWpvciwgbWlub3IsCisJCQkgZ3VjX2Z3LT51Y19md192 ZXJfbWFqb3IsIGd1Y19mdy0+dWNfZndfdmVyX21pbm9yKTsKKwkJcmV0dXJuIHRydWU7CisJfQor CisJRFJNX0VSUk9SKCJHdUMgZmlybXdhcmUgdmVyc2lvbiAlZC4lZCwgcmVxdWlyZWQgJWQuJWRc biIsCisJCSBtYWpvciwgbWlub3IsCisJCSBndWNfZnctPnVjX2Z3X3Zlcl9tYWpvciwgZ3VjX2Z3 LT51Y19md192ZXJfbWlub3IpOworCXJldHVybiBmYWxzZTsKK30KKwogdm9pZCBpbnRlbF9ndWNf dWNvZGVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogewogCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0IGludGVsX3VjX2Z3 ICpndWNfZncgPSAmZGV2X3ByaXYtPmd1Yy5ndWNfZnc7CiAJY29uc3QgY2hhciAqcGF0aCA9IE5V TEw7CiAKLQlpZiAoSVNfR0VOOChkZXYpKQorCWlmIChJU19HRU44KGRldikpIHsKIAkJcGF0aCA9 IEk5MTVfR1VDX1VDT0RFX0dFTjg7Ci0JZWxzZSBpZiAoSVNfR0VOOShkZXYpKQorCQlndWNfZnct PnVjX2Z3X3Zlcl9tYWpvciA9IDE7CisJCWd1Y19mdy0+dWNfZndfdmVyX21pbm9yID0gMDsKKwkJ Z3VjX2Z3LT51Y19md19jaGVjayA9IGludGVsX2d1Y191Y29kZV9jaGVjazsKKwl9IGVsc2UgaWYg KElTX0dFTjkoZGV2KSkgewogCQlwYXRoID0gSTkxNV9HVUNfVUNPREVfR0VOOTsKKwkJZ3VjX2Z3 LT51Y19md192ZXJfbWFqb3IgPSAxOworCQlndWNfZnctPnVjX2Z3X3Zlcl9taW5vciA9IDA7CisJ CWd1Y19mdy0+dWNfZndfY2hlY2sgPSBpbnRlbF9ndWNfdWNvZGVfY2hlY2s7CisJfQogCiAJaW50 ZWxfdWNfZndfaW5pdChkZXYsIGd1Y19mdywgIkd1QyIsIHBhdGgsIEhBU19HVUNfVUNPREUoZGV2 KSk7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91Y19sb2FkZXIu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VjX2xvYWRlci5jCmluZGV4IDI0OWU1NmUu Ljk4NmRjZjMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VjX2xvYWRl ci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VjX2xvYWRlci5jCkBAIC00OSwx MCArNDksMTIgQEAgc3RhdGljIHZvaWQgdWNfZndfZmluaXNoKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHN0cnVjdCBpbnRlbF91Y19mdyAqdWNfZncpCiAJCXVjX2Z3LT51Y19uYW1lLCB1Y19mdy0+ dWNfZndfZmV0Y2hfc3RhdHVzLCB1Y19mdy0+dWNfZndfYmxvYik7CiAKIAlmdyA9IHVjX2Z3LT51 Y19md19ibG9iOwotCXVjX2Z3LT51Y19md19ibG9iID0gTlVMTDsKIAlpZiAoIWZ3KQogCQlnb3Rv IGZhaWw7CiAKKwlpZiAodWNfZnctPnVjX2Z3X2NoZWNrICYmICF1Y19mdy0+dWNfZndfY2hlY2so dWNfZncpKQorCQlnb3RvIGZhaWw7CisKIAlvYmogPSBpOTE1X2dlbV9hbGxvY19vYmplY3QoZGV2 LCByb3VuZF91cChmdy0+c2l6ZSwgUEFHRV9TSVpFKSk7CiAJaWYgKCFvYmopCiAJCWdvdG8gZmFp bDsKQEAgLTY0LDYgKzY2LDcgQEAgc3RhdGljIHZvaWQgdWNfZndfZmluaXNoKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIHN0cnVjdCBpbnRlbF91Y19mdyAqdWNfZncpCiAJdWNfZnctPnVjX2Z3X29i aiA9IG9iajsKIAl1Y19mdy0+dWNfZndfc2l6ZSA9IGZ3LT5zaXplOwogCXVjX2Z3LT51Y19md19m ZXRjaF9zdGF0dXMgPSBJTlRFTF9VQ19GSVJNV0FSRV9TVUNDRVNTOworCXVjX2Z3LT51Y19md19i bG9iID0gTlVMTDsKIAlyZWxlYXNlX2Zpcm13YXJlKGZ3KTsKIAlyZXR1cm47CiAKQEAgLTc3LDYg KzgwLDcgQEAgZmFpbDoKIAkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7 CiAKIAl1Y19mdy0+dWNfZndfZmV0Y2hfc3RhdHVzID0gSU5URUxfVUNfRklSTVdBUkVfRkFJTDsK Kwl1Y19mdy0+dWNfZndfYmxvYiA9IE5VTEw7CiAJcmVsZWFzZV9maXJtd2FyZShmdyk7CQkvKiBP SyBldmVuIGlmIGZ3IGlzIE5VTEwgKi8KIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfdWNfbG9hZGVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91Y19s b2FkZXIuaAppbmRleCA2NjFkNDZhLi4zMWJmNjVjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF91Y19sb2FkZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF91Y19sb2FkZXIuaApAQCAtNjgsMTEgKzY4LDE1IEBAIHN0cnVjdCBpbnRlbF91Y19mdyB7CiAJ c3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgl1Y19md19vYmo7CiAJZW51bSBpbnRlbF91Y19m d19zdGF0dXMJCXVjX2Z3X2ZldGNoX3N0YXR1czsKIAllbnVtIGludGVsX3VjX2Z3X3N0YXR1cwkJ dWNfZndfbG9hZF9zdGF0dXM7CisJdWludDMyX3QJCQl1Y19md192ZXJfbWFqb3I7CisJdWludDMy X3QJCQl1Y19md192ZXJfbWlub3I7CisJYm9vbAkJCQkoKnVjX2Z3X2NoZWNrKShzdHJ1Y3QgaW50 ZWxfdWNfZncgKik7CiB9OwogCiB2b2lkIGludGVsX3VjX2Z3X2luaXQoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgc3RydWN0IGludGVsX3VjX2Z3ICp1Y19mdywKIAljb25zdCBjaGFyICp1Y19uYW1l LCBjb25zdCBjaGFyICpmd19wYXRoLCBib29sIGhhc191Y29kZSk7CiBpbnQgaW50ZWxfdWNfZndf Y2hlY2soc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGludGVsX3VjX2Z3ICp1Y19mdyk7 CiB2b2lkIGludGVsX3VjX2Z3X2Zpbmkoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGlu dGVsX3VjX2Z3ICp1Y19mdyk7Citib29sIGludGVsX3VjX2Z3X3ZlcnNpb25fY2hlY2soc3RydWN0 IGludGVsX3VjX2Z3ICpmdywgY29uc3QgY2hhciAqZGF0YSk7CiAKICNlbmRpZgotLSAKMS45LjEK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==