From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: [PATCH v2 2/6] drm/i915: move VBT based LVDS presence check to intel_bios.c Date: Tue, 9 Feb 2016 17:29:49 +0200 Message-ID: <1455031793-25240-2-git-send-email-jani.nikula@intel.com> References: <1455031793-25240-1-git-send-email-jani.nikula@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 139126E5A8 for ; Tue, 9 Feb 2016 07:29:57 -0800 (PST) In-Reply-To: <1455031793-25240-1-git-send-email-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 Cc: jani.nikula@intel.com List-Id: intel-gfx@lists.freedesktop.org SGlkZSBrbm93bGVkZ2UgYWJvdXQgVkJUIGNoaWxkIGRldmljZXMgaW4gaW50ZWxfYmlvcy5jLgoK U2lnbmVkLW9mZi1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9iaW9zLmMgfCA1MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2x2ZHMuYyB8IDUzICstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25z KCspLCA1MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCBjZjNlZjAz ODU2ZGIuLjI0YmY3NzA5MDdhZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0zMzk0LDYg KzMzOTQsNyBAQCBleHRlcm4gdm9pZCBpbnRlbF9pMmNfcmVzZXQoc3RydWN0IGRybV9kZXZpY2Ug KmRldik7CiBpbnQgaW50ZWxfYmlvc19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdik7CiBib29sIGludGVsX2Jpb3NfaXNfdmFsaWRfdmJ0KGNvbnN0IHZvaWQgKmJ1Ziwgc2l6 ZV90IHNpemUpOwogYm9vbCBpbnRlbF9iaW9zX2lzX3R2X3ByZXNlbnQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KTsKK2Jvb2wgaW50ZWxfYmlvc19pc19sdmRzX3ByZXNlbnQoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1OCAqaTJjX3Bpbik7CiAKIC8qIGludGVs X29wcmVnaW9uLmMgKi8KICNpZmRlZiBDT05GSUdfQUNQSQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlv cy5jCmluZGV4IGQ1ZTZkYTAxYWRhYS4uNGY3ZWJhMzZhODQ5IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9iaW9zLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfYmlvcy5jCkBAIC0xNDcyLDMgKzE0NzIsNTMgQEAgYm9vbCBpbnRlbF9iaW9zX2lzX3R2X3By ZXNlbnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCiAJcmV0dXJuIGZhbHNl OwogfQorCisvKioKKyAqIGludGVsX2Jpb3NfaXNfbHZkc19wcmVzZW50IC0gaXMgTFZEUyBwcmVz ZW50IGluIFZCVAorICogQGRldl9wcml2OglpOTE1IGRldmljZSBpbnN0YW5jZQorICogQGkyY19w aW46CWkyYyBwaW4gZm9yIExWRFMgaWYgcHJlc2VudAorICoKKyAqIFJldHVybiB0cnVlIGlmIExW RFMgaXMgcHJlc2VudC4gSWYgbm8gY2hpbGQgZGV2aWNlcyB3ZXJlIHBhcnNlZCBmcm9tIFZCVCwK KyAqIGFzc3VtZSBMVkRTIGlzIHByZXNlbnQuCisgKi8KK2Jvb2wgaW50ZWxfYmlvc19pc19sdmRz X3ByZXNlbnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1OCAqaTJjX3BpbikK K3sKKwlpbnQgaTsKKworCWlmICghZGV2X3ByaXYtPnZidC5jaGlsZF9kZXZfbnVtKQorCQlyZXR1 cm4gdHJ1ZTsKKworCWZvciAoaSA9IDA7IGkgPCBkZXZfcHJpdi0+dmJ0LmNoaWxkX2Rldl9udW07 IGkrKykgeworCQl1bmlvbiBjaGlsZF9kZXZpY2VfY29uZmlnICp1Y2hpbGQgPSBkZXZfcHJpdi0+ dmJ0LmNoaWxkX2RldiArIGk7CisJCXN0cnVjdCBvbGRfY2hpbGRfZGV2X2NvbmZpZyAqY2hpbGQg PSAmdWNoaWxkLT5vbGQ7CisKKwkJLyogSWYgdGhlIGRldmljZSB0eXBlIGlzIG5vdCBMRlAsIGNv bnRpbnVlLgorCQkgKiBXZSBoYXZlIHRvIGNoZWNrIGJvdGggdGhlIG5ldyBpZGVudGlmaWVycyBh cyB3ZWxsIGFzIHRoZQorCQkgKiBvbGQgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBzb21lIEJJT1Nl cy4KKwkJICovCisJCWlmIChjaGlsZC0+ZGV2aWNlX3R5cGUgIT0gREVWSUNFX1RZUEVfSU5UX0xG UCAmJgorCQkgICAgY2hpbGQtPmRldmljZV90eXBlICE9IERFVklDRV9UWVBFX0xGUCkKKwkJCWNv bnRpbnVlOworCisJCWlmIChpbnRlbF9nbWJ1c19pc192YWxpZF9waW4oZGV2X3ByaXYsIGNoaWxk LT5pMmNfcGluKSkKKwkJCSppMmNfcGluID0gY2hpbGQtPmkyY19waW47CisKKwkJLyogSG93ZXZl ciwgd2UgY2Fubm90IHRydXN0IHRoZSBCSU9TIHdyaXRlcnMgdG8gcG9wdWxhdGUKKwkJICogdGhl IFZCVCBjb3JyZWN0bHkuICBTaW5jZSBMVkRTIHJlcXVpcmVzIGFkZGl0aW9uYWwKKwkJICogaW5m b3JtYXRpb24gZnJvbSBBSU0gYmxvY2tzLCBhIG5vbi16ZXJvIGFkZGluIG9mZnNldCBpcworCQkg KiBhIGdvb2QgaW5kaWNhdG9yIHRoYXQgdGhlIExWRFMgaXMgYWN0dWFsbHkgcHJlc2VudC4KKwkJ ICovCisJCWlmIChjaGlsZC0+YWRkaW5fb2Zmc2V0KQorCQkJcmV0dXJuIHRydWU7CisKKwkJLyog QnV0IGV2ZW4gdGhlbiBzb21lIEJJT1Mgd3JpdGVycyBwZXJmb3JtIHNvbWUgYmxhY2sgbWFnaWMK KwkJICogYW5kIGluc3RhbnRpYXRlIHRoZSBkZXZpY2Ugd2l0aG91dCByZWZlcmVuY2UgdG8gYW55 CisJCSAqIGFkZGl0aW9uYWwgZGF0YS4gIFRydXN0IHRoYXQgaWYgdGhlIFZCVCB3YXMgd3JpdHRl biBpbnRvCisJCSAqIHRoZSBPcFJlZ2lvbiB0aGVuIHRoZXkgaGF2ZSB2YWxpZGF0ZWQgdGhlIExW RFMncyBleGlzdGVuY2UuCisJCSAqLworCQlpZiAoZGV2X3ByaXYtPm9wcmVnaW9uLnZidCkKKwkJ CXJldHVybiB0cnVlOworCX0KKworCXJldHVybiBmYWxzZTsKK30KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2x2ZHMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2x2ZHMuYwppbmRleCA4MTFkZGY3Nzk5ZjAuLjMyNWFjZmJjMDJmMyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHZkcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2x2ZHMuYwpAQCAtNzczLDU3ICs3NzMsNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRt aV9zeXN0ZW1faWQgaW50ZWxfbm9fbHZkc1tdID0gewogCXsgfQkvKiB0ZXJtaW5hdGluZyBlbnRy eSAqLwogfTsKIAotLyoKLSAqIEVudW1lcmF0ZSB0aGUgY2hpbGQgZGV2IGFycmF5IHBhcnNlZCBm cm9tIFZCVCB0byBjaGVjayB3aGV0aGVyCi0gKiB0aGUgTFZEUyBpcyBwcmVzZW50LgotICogSWYg aXQgaXMgcHJlc2VudCwgcmV0dXJuIDEuCi0gKiBJZiBpdCBpcyBub3QgcHJlc2VudCwgcmV0dXJu IGZhbHNlLgotICogSWYgbm8gY2hpbGQgZGV2IGlzIHBhcnNlZCBmcm9tIFZCVCwgaXQgYXNzdW1l cyB0aGF0IHRoZSBMVkRTIGlzIHByZXNlbnQuCi0gKi8KLXN0YXRpYyBib29sIGx2ZHNfaXNfcHJl c2VudF9pbl92YnQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKLQkJCQkgICB1OCAqaTJjX3BpbikK LXsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRl OwotCWludCBpOwotCi0JaWYgKCFkZXZfcHJpdi0+dmJ0LmNoaWxkX2Rldl9udW0pCi0JCXJldHVy biB0cnVlOwotCi0JZm9yIChpID0gMDsgaSA8IGRldl9wcml2LT52YnQuY2hpbGRfZGV2X251bTsg aSsrKSB7Ci0JCXVuaW9uIGNoaWxkX2RldmljZV9jb25maWcgKnVjaGlsZCA9IGRldl9wcml2LT52 YnQuY2hpbGRfZGV2ICsgaTsKLQkJc3RydWN0IG9sZF9jaGlsZF9kZXZfY29uZmlnICpjaGlsZCA9 ICZ1Y2hpbGQtPm9sZDsKLQotCQkvKiBJZiB0aGUgZGV2aWNlIHR5cGUgaXMgbm90IExGUCwgY29u dGludWUuCi0JCSAqIFdlIGhhdmUgdG8gY2hlY2sgYm90aCB0aGUgbmV3IGlkZW50aWZpZXJzIGFz IHdlbGwgYXMgdGhlCi0JCSAqIG9sZCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIHNvbWUgQklPU2Vz LgotCQkgKi8KLQkJaWYgKGNoaWxkLT5kZXZpY2VfdHlwZSAhPSBERVZJQ0VfVFlQRV9JTlRfTEZQ ICYmCi0JCSAgICBjaGlsZC0+ZGV2aWNlX3R5cGUgIT0gREVWSUNFX1RZUEVfTEZQKQotCQkJY29u dGludWU7Ci0KLQkJaWYgKGludGVsX2dtYnVzX2lzX3ZhbGlkX3BpbihkZXZfcHJpdiwgY2hpbGQt PmkyY19waW4pKQotCQkJKmkyY19waW4gPSBjaGlsZC0+aTJjX3BpbjsKLQotCQkvKiBIb3dldmVy LCB3ZSBjYW5ub3QgdHJ1c3QgdGhlIEJJT1Mgd3JpdGVycyB0byBwb3B1bGF0ZQotCQkgKiB0aGUg VkJUIGNvcnJlY3RseS4gIFNpbmNlIExWRFMgcmVxdWlyZXMgYWRkaXRpb25hbAotCQkgKiBpbmZv cm1hdGlvbiBmcm9tIEFJTSBibG9ja3MsIGEgbm9uLXplcm8gYWRkaW4gb2Zmc2V0IGlzCi0JCSAq IGEgZ29vZCBpbmRpY2F0b3IgdGhhdCB0aGUgTFZEUyBpcyBhY3R1YWxseSBwcmVzZW50LgotCQkg Ki8KLQkJaWYgKGNoaWxkLT5hZGRpbl9vZmZzZXQpCi0JCQlyZXR1cm4gdHJ1ZTsKLQotCQkvKiBC dXQgZXZlbiB0aGVuIHNvbWUgQklPUyB3cml0ZXJzIHBlcmZvcm0gc29tZSBibGFjayBtYWdpYwot CQkgKiBhbmQgaW5zdGFudGlhdGUgdGhlIGRldmljZSB3aXRob3V0IHJlZmVyZW5jZSB0byBhbnkK LQkJICogYWRkaXRpb25hbCBkYXRhLiAgVHJ1c3QgdGhhdCBpZiB0aGUgVkJUIHdhcyB3cml0dGVu IGludG8KLQkJICogdGhlIE9wUmVnaW9uIHRoZW4gdGhleSBoYXZlIHZhbGlkYXRlZCB0aGUgTFZE UydzIGV4aXN0ZW5jZS4KLQkJICovCi0JCWlmIChkZXZfcHJpdi0+b3ByZWdpb24udmJ0KQotCQkJ cmV0dXJuIHRydWU7Ci0JfQotCi0JcmV0dXJuIGZhbHNlOwotfQotCiBzdGF0aWMgaW50IGludGVs X2R1YWxfbGlua19sdmRzX2NhbGxiYWNrKGNvbnN0IHN0cnVjdCBkbWlfc3lzdGVtX2lkICppZCkK IHsKIAlEUk1fSU5GTygiRm9yY2luZyBsdmRzIHRvIGR1YWwgbGluayBtb2RlIG9uICVzXG4iLCBp ZC0+aWRlbnQpOwpAQCAtOTgwLDcgKzkyOSw3IEBAIHZvaWQgaW50ZWxfbHZkc19pbml0KHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpCiAJfQogCiAJcGluID0gR01CVVNfUElOX1BBTkVMOwotCWlmICgh bHZkc19pc19wcmVzZW50X2luX3ZidChkZXYsICZwaW4pKSB7CisJaWYgKCFpbnRlbF9iaW9zX2lz X2x2ZHNfcHJlc2VudChkZXZfcHJpdiwgJnBpbikpIHsKIAkJaWYgKChsdmRzICYgTFZEU19QT1JU X0VOKSA9PSAwKSB7CiAJCQlEUk1fREVCVUdfS01TKCJMVkRTIGlzIG5vdCBwcmVzZW50IGluIFZC VFxuIik7CiAJCQlyZXR1cm47Ci0tIAoyLjEuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==