From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan de Oliveira Subject: [PATCH 16/20] drm/i915: Check lane sharing between pipes B & C using atomic state Date: Fri, 20 Mar 2015 16:18:16 +0200 Message-ID: <1426861099-28445-17-git-send-email-ander.conselvan.de.oliveira@intel.com> References: <1426861099-28445-1-git-send-email-ander.conselvan.de.oliveira@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id C61ED6EC40 for ; Fri, 20 Mar 2015 07:19:52 -0700 (PDT) In-Reply-To: <1426861099-28445-1-git-send-email-ander.conselvan.de.oliveira@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: Ander Conselvan de Oliveira List-Id: intel-gfx@lists.freedesktop.org TWFrZXMgdGhhdCBjb2RlIGF0b21pYyByZWFkeS4KClNpZ25lZC1vZmYtYnk6IEFuZGVyIENvbnNl bHZhbiBkZSBPbGl2ZWlyYSA8YW5kZXIuY29uc2VsdmFuLmRlLm9saXZlaXJhQGludGVsLmNvbT4K LS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA0OSArKysrKysrKysr KysrKysrKysrKysrKysrKysrKystLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0MiBpbnNlcnRpb25z KCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRl eCAxOWU4OTI4Li5hYmZiN2E5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBA IC01NTM2LDEzICs1NTM2LDIwIEBAIGJvb2wgaW50ZWxfY29ubmVjdG9yX2dldF9od19zdGF0ZShz dHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJcmV0dXJuIGVuY29kZXItPmdldF9o d19zdGF0ZShlbmNvZGVyLCAmcGlwZSk7CiB9CiAKLXN0YXRpYyBpbnQgcGlwZV9yZXF1aXJlZF9m ZGlfbGFuZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUpCitzdGF0aWMg aW50IHBpcGVfcmVxdWlyZWRfZmRpX2xhbmVzKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0 ZSwKKwkJCQkgICBlbnVtIHBpcGUgcGlwZSkKIHsKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9 Ci0JCXRvX2ludGVsX2NydGMoaW50ZWxfZ2V0X2NydGNfZm9yX3BpcGUoZGV2LCBwaXBlKSk7CisJ CXRvX2ludGVsX2NydGMoaW50ZWxfZ2V0X2NydGNfZm9yX3BpcGUoc3RhdGUtPmRldiwgcGlwZSkp OworCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOworCisJY3J0Y19zdGF0ZSA9 IGludGVsX2F0b21pY19nZXRfY3J0Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7CisJaWYgKFdBUk5fT04o SVNfRVJSKGNydGNfc3RhdGUpKSkgeworCQkvKiBDYXVzZSBtb2Rlc2V0IHRvIGZhaWwgZHVlIHRv IGV4Y2VzcyBsYW5lcy4gKi8KKwkJcmV0dXJuIDU7CisJfQogCi0JaWYgKGNydGMtPmJhc2Uuc3Rh dGUtPmVuYWJsZSAmJgotCSAgICBjcnRjLT5jb25maWctPmhhc19wY2hfZW5jb2RlcikKKwlpZiAo Y3J0Y19zdGF0ZS0+YmFzZS5lbmFibGUgJiYgY3J0Y19zdGF0ZS0+aGFzX3BjaF9lbmNvZGVyKQog CQlyZXR1cm4gY3J0Yy0+Y29uZmlnLT5mZGlfbGFuZXM7CiAKIAlyZXR1cm4gMDsKQEAgLTU1NTEs NiArNTU1OCw4IEBAIHN0YXRpYyBpbnQgcGlwZV9yZXF1aXJlZF9mZGlfbGFuZXMoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUpCiBzdGF0aWMgYm9vbCBpcm9ubGFrZV9jaGVj a19mZGlfbGFuZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUsCiAJCQkJ ICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCiB7CisJc3RydWN0IGRy bV9hdG9taWNfc3RhdGUgKnN0YXRlID0gcGlwZV9jb25maWctPmJhc2Uuc3RhdGU7CisKIAlEUk1f REVCVUdfS01TKCJjaGVja2luZyBmZGkgY29uZmlnIG9uIHBpcGUgJWMsIGxhbmVzICVpXG4iLAog CQkgICAgICBwaXBlX25hbWUocGlwZSksIHBpcGVfY29uZmlnLT5mZGlfbGFuZXMpOwogCWlmIChw aXBlX2NvbmZpZy0+ZmRpX2xhbmVzID4gNCkgewpAQCAtNTU3OCw3ICs1NTg3LDcgQEAgc3RhdGlj IGJvb2wgaXJvbmxha2VfY2hlY2tfZmRpX2xhbmVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVu dW0gcGlwZSBwaXBlLAogCQlyZXR1cm4gdHJ1ZTsKIAljYXNlIFBJUEVfQjoKIAkJaWYgKHBpcGVf Y29uZmlnLT5mZGlfbGFuZXMgPiAyICYmCi0JCSAgICBwaXBlX3JlcXVpcmVkX2ZkaV9sYW5lcyhk ZXYsIFBJUEVfQykgPiAwKSB7CisJCSAgICBwaXBlX3JlcXVpcmVkX2ZkaV9sYW5lcyhzdGF0ZSwg UElQRV9DKSA+IDApIHsKIAkJCURSTV9ERUJVR19LTVMoImludmFsaWQgc2hhcmVkIGZkaSBsYW5l IGNvbmZpZyBvbiBwaXBlICVjOiAlaSBsYW5lc1xuIiwKIAkJCQkgICAgICBwaXBlX25hbWUocGlw ZSksIHBpcGVfY29uZmlnLT5mZGlfbGFuZXMpOwogCQkJcmV0dXJuIGZhbHNlOwpAQCAtNTU5MCw3 ICs1NTk5LDcgQEAgc3RhdGljIGJvb2wgaXJvbmxha2VfY2hlY2tfZmRpX2xhbmVzKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIGVudW0gcGlwZSBwaXBlLAogCQkJCSAgICAgIHBpcGVfbmFtZShwaXBl KSwgcGlwZV9jb25maWctPmZkaV9sYW5lcyk7CiAJCQlyZXR1cm4gZmFsc2U7CiAJCX0KLQkJaWYg KHBpcGVfcmVxdWlyZWRfZmRpX2xhbmVzKGRldiwgUElQRV9CKSA+IDIpIHsKKwkJaWYgKHBpcGVf cmVxdWlyZWRfZmRpX2xhbmVzKHN0YXRlLCBQSVBFX0IpID4gMikgewogCQkJRFJNX0RFQlVHX0tN UygiZmRpIGxpbmsgQiB1c2VzIHRvbyBtYW55IGxhbmVzIHRvIGVuYWJsZSBsaW5rIENcbiIpOwog CQkJcmV0dXJuIGZhbHNlOwogCQl9CkBAIC01NjAwLDE1ICs1NjA5LDQxIEBAIHN0YXRpYyBib29s IGlyb25sYWtlX2NoZWNrX2ZkaV9sYW5lcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBlbnVtIHBp cGUgcGlwZSwKIAl9CiB9CiAKK3N0YXRpYyBpbnQgYWRkX3BpcGVfYl9jX3RvX3N0YXRlKHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKK3sKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqcGlwZV9C ID0KKwkJdG9faW50ZWxfY3J0YyhpbnRlbF9nZXRfY3J0Y19mb3JfcGlwZShzdGF0ZS0+ZGV2LCBQ SVBFX0IpKTsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqcGlwZV9DID0KKwkJdG9faW50ZWxfY3J0Yyhp bnRlbF9nZXRfY3J0Y19mb3JfcGlwZShzdGF0ZS0+ZGV2LCBQSVBFX0MpKTsKKwlzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKKworCWNydGNfc3RhdGUgPSBpbnRlbF9hdG9taWNf Z2V0X2NydGNfc3RhdGUoc3RhdGUsIHBpcGVfQik7CisJaWYgKElTX0VSUihjcnRjX3N0YXRlKSkK KwkJcmV0dXJuIFBUUl9FUlIoY3J0Y19zdGF0ZSk7CisKKwljcnRjX3N0YXRlID0gaW50ZWxfYXRv bWljX2dldF9jcnRjX3N0YXRlKHN0YXRlLCBwaXBlX0MpOworCWlmIChJU19FUlIoY3J0Y19zdGF0 ZSkpCisJCXJldHVybiBQVFJfRVJSKGNydGNfc3RhdGUpOworCisJcmV0dXJuIDA7Cit9CisKICNk ZWZpbmUgUkVUUlkgMQogc3RhdGljIGludCBpcm9ubGFrZV9mZGlfY29tcHV0ZV9jb25maWcoc3Ry dWN0IGludGVsX2NydGMgKmludGVsX2NydGMsCiAJCQkJICAgICAgIHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpwaXBlX2NvbmZpZykKIHsKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxf Y3J0Yy0+YmFzZS5kZXY7CiAJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUg PSAmcGlwZV9jb25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZTsKLQlpbnQgbGFuZSwgbGlua19idywg ZmRpX2RvdGNsb2NrOworCWludCBsYW5lLCBsaW5rX2J3LCBmZGlfZG90Y2xvY2ssIHJldDsKIAli b29sIHNldHVwX29rLCBuZWVkc19yZWNvbXB1dGUgPSBmYWxzZTsKIAorCWlmIChJU19JVllCUklE R0UoZGV2KSAmJgorCSAgICAoaW50ZWxfY3J0Yy0+cGlwZSA9PSBQSVBFX0IgfHwgaW50ZWxfY3J0 Yy0+cGlwZSA9PSBQSVBFX0MpKSB7CisJCXJldCA9IGFkZF9waXBlX2JfY190b19zdGF0ZShwaXBl X2NvbmZpZy0+YmFzZS5zdGF0ZSk7CisJCWlmIChyZXQgPCAwKQorCQkJcmV0dXJuIHJldDsKKwl9 CisKIHJldHJ5OgogCS8qIEZESSBpcyBhIGJpbmFyeSBzaWduYWwgcnVubmluZyBhdCB+Mi43R0h6 LCBlbmNvZGluZwogCSAqIGVhY2ggb3V0cHV0IG9jdGV0IGFzIDEwIGJpdHMuIFRoZSBhY3R1YWwg ZnJlcXVlbmN5Ci0tIAoyLjEuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngK