From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: [PATCH v4 3/3] drm/i915/gen9+: Add support for pipe background color (v4) Date: Fri, 28 Dec 2018 15:51:31 -0800 Message-ID: <20181228235131.23465-4-matthew.d.roper@intel.com> References: <20181228235131.23465-1-matthew.d.roper@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181228235131.23465-1-matthew.d.roper@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, dri-devel@lists.freedesktop.org Cc: wei.c.li@intel.com, harish.krupo.kps@intel.com List-Id: dri-devel@lists.freedesktop.org R2VuOSsgcGxhdGZvcm1zIGFsbG93IENSVEMncyB0byBiZSBwcm9ncmFtbWVkIHdpdGggYSBiYWNr Z3JvdW5kL2NhbnZhcwpjb2xvciBiZWxvdyB0aGUgcHJvZ3JhbW1hYmxlIHBsYW5lcy4gIExldCdz IGV4cG9zZSB0aGlzIGZvciB1c2UgYnkKY29tcG9zaXRvcnMuCgp2MjoKIC0gU3BsaXQgb3V0IGJn Y29sb3Igc2FuaXRpemF0aW9uIGFuZCBwcm9ncmFtbWluZyBvZiBjc2MvZ2FtbWEgYml0cyB0byBh CiAgIHNlcGFyYXRlIHBhdGNoIHRoYXQgd2UgY2FuIGxhbmQgYmVmb3JlIHRoZSBBQkkgY2hhbmdl cyBhcmUgcmVhZHkgdG8KICAgZ28gaW4uICAoVmlsbGUpCiAtIENoYW5nZSBhIHRlbXBvcmFyeSB2 YXJpYWJsZSBuYW1lIHRvIGJlIG1vcmUgY29uc2lzdGVudCB3aXRoCiAgIG90aGVyIHNpbWlsYXIg ZnVuY3Rpb25zLiAgKFZpbGxlKQogLSBDaGFuZ2UgcmVnaXN0ZXIgbmFtZSB0byBTS0xfQ0FOVkFT IGZvciBjb25zaXN0ZW5jeSB3aXRoIHRoZQogICBDSFZfQ0FOVkFTIHJlZ2lzdGVyLgoKdjM6CiAt IFN3aXRjaCByZWdpc3RlciBuYW1lIGJhY2sgdG8gU0tMX0JPVFRPTV9DT0xPUi4gIChWaWxsZSkK IC0gVXNlIG5vbi1fRlcgcmVnaXN0ZXIgd3JpdGUuICAoVmlsbGUpCiAtIE1pbm9yIHBhcmFtZXRl ciByZW5hbWUgZm9yIGNvbnNpc3RlbmN5LiAgKFZpbGxlKQoKdjQ6CiAtIFJlbW92ZWQgdXNlIG9m IGJnY29sb3JfY2hhbmdlZCBmbGFnLgoKQ2M6IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKQ2M6IHdlaS5jLmxpQGludGVsLmNvbQpDYzogaGFyaXNoLmtydXBvLmtwc0BpbnRlbC5jb20K Q2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+ClNpZ25l ZC1vZmYtYnk6IE1hdHQgUm9wZXIgPG1hdHRoZXcuZC5yb3BlckBpbnRlbC5jb20+Ci0tLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgIHwgIDkgKysrKysrKwogZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgNDYgKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDExIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKaW5kZXggYjg5YWJiYmE0NjA0 Li41ZDZhOWQxMWVkYjYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVi dWdmcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCkBAIC0zMTIy LDYgKzMxMjIsMTUgQEAgc3RhdGljIGludCBpOTE1X2Rpc3BsYXlfaW5mbyhzdHJ1Y3Qgc2VxX2Zp bGUgKm0sIHZvaWQgKnVudXNlZCkKIAkJCWludGVsX3BsYW5lX2luZm8obSwgY3J0Yyk7CiAJCX0K IAorCQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5ICYmIHBpcGVfY29uZmlnLT5iYXNlLmFj dGl2ZSkgeworCQkJdWludDY0X3QgYmFja2dyb3VuZCA9IHBpcGVfY29uZmlnLT5iYXNlLmJnY29s b3I7CisKKwkJCXNlcV9wcmludGYobSwgIlx0YmFja2dyb3VuZCBjb2xvciAoMTBicGMpOiByPSV4 IGc9JXggYj0leFxuIiwKKwkJCQkgICBEUk1fQVJHQl9SRUQoYmFja2dyb3VuZCwgMTApLAorCQkJ CSAgIERSTV9BUkdCX0dSRUVOKGJhY2tncm91bmQsIDEwKSwKKwkJCQkgICBEUk1fQVJHQl9CTFVF KGJhY2tncm91bmQsIDEwKSk7CisJCX0KKwogCQlzZXFfcHJpbnRmKG0sICJcdHVuZGVycnVuIHJl cG9ydGluZzogY3B1PSVzIHBjaD0lcyBcbiIsCiAJCQkgICB5ZXNubyghY3J0Yy0+Y3B1X2ZpZm9f dW5kZXJydW5fZGlzYWJsZWQpLAogCQkJICAgeWVzbm8oIWNydGMtPnBjaF9maWZvX3VuZGVycnVu X2Rpc2FibGVkKSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggY2MxOWIy NzZmMmMxLi43MDM1MDJkOWU3MWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK QEAgLTM4NjAsNiArMzg2MCwyOCBAQCB2b2lkIGludGVsX2ZpbmlzaF9yZXNldChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJY2xlYXJfYml0KEk5MTVfUkVTRVRfTU9ERVNFVCwg JmRldl9wcml2LT5ncHVfZXJyb3IuZmxhZ3MpOwogfQogCitzdGF0aWMgdm9pZAorc2tsX3VwZGF0 ZV9iYWNrZ3JvdW5kX2NvbG9yKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0 YXRlKQoreworCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0 YXRlLT5iYXNlLmNydGMpOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUoY3J0Yy0+YmFzZS5kZXYpOworCXVpbnQ2NF90IHByb3B2YWwgPSBjcnRjX3N0YXRlLT5i YXNlLmJnY29sb3I7CisJdWludDMyX3QgdG1wOworCisJLyogSGFyZHdhcmUgaXMgcHJvZ3JhbW1l ZCB3aXRoIDEwIGJpdHMgb2YgcHJlY2lzaW9uICovCisJdG1wID0gRFJNX0FSR0JfUkVEKHByb3B2 YWwsIDEwKSA8PCAyMAorCSAgICB8IERSTV9BUkdCX0dSRUVOKHByb3B2YWwsIDEwKSA8PCAxMAor CSAgICB8IERSTV9BUkdCX0JMVUUocHJvcHZhbCwgMTApOworCisJLyoKKwkgKiBTZXQgQ1NDIGFu ZCBnYW1tYSBmb3IgYm90dG9tIGNvbG9yIHRvIGVuc3VyZSBiYWNrZ3JvdW5kIHBpeGVscworCSAq IHJlY2VpdmUgdGhlIHNhbWUgY29sb3IgdHJhbnNmb3JtYXRpb25zIGFzIHBsYW5lIGNvbnRlbnQu CisJICovCisJdG1wIHw9IFNLTF9CT1RUT01fQ09MT1JfQ1NDX0VOQUJMRSB8IFNLTF9CT1RUT01f Q09MT1JfR0FNTUFfRU5BQkxFOworCisJSTkxNV9XUklURShTS0xfQk9UVE9NX0NPTE9SKGNydGMt PnBpcGUpLCB0bXApOworfQorCiBzdGF0aWMgdm9pZCBpbnRlbF91cGRhdGVfcGlwZV9jb25maWco Y29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlLAogCQkJCSAgICAg Y29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm5ld19jcnRjX3N0YXRlKQogewpAQCAtMzg5 NSwxNSArMzkxNyw4IEBAIHN0YXRpYyB2b2lkIGludGVsX3VwZGF0ZV9waXBlX2NvbmZpZyhjb25z dCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhCiAJCQlpcm9ubGFrZV9wZml0 X2Rpc2FibGUob2xkX2NydGNfc3RhdGUpOwogCX0KIAotCS8qCi0JICogV2UgZG9uJ3QgKHlldCkg YWxsb3cgdXNlcnNwYWNlIHRvIGNvbnRyb2wgdGhlIHBpcGUgYmFja2dyb3VuZCBjb2xvciwKLQkg KiBzbyBmb3JjZSBpdCB0byBibGFjaywgYnV0IGFwcGx5IHBpcGUgZ2FtbWEgYW5kIENTQyBzbyB0 aGF0IGl0cwotCSAqIGhhbmRsaW5nIHdpbGwgbWF0Y2ggaG93IHdlIHByb2dyYW0gb3VyIHBsYW5l cy4KLQkgKi8KIAlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5KQotCQlJOTE1X1dSSVRFKFNL TF9CT1RUT01fQ09MT1IoY3J0Yy0+cGlwZSksCi0JCQkgICBTS0xfQk9UVE9NX0NPTE9SX0dBTU1B X0VOQUJMRSB8Ci0JCQkgICBTS0xfQk9UVE9NX0NPTE9SX0NTQ19FTkFCTEUpOworCQlza2xfdXBk YXRlX2JhY2tncm91bmRfY29sb3IobmV3X2NydGNfc3RhdGUpOwogfQogCiBzdGF0aWMgdm9pZCBp bnRlbF9mZGlfbm9ybWFsX3RyYWluKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQpAQCAtMTA5ODYs NiArMTEwMDEsOCBAQCBzdGF0aWMgaW50IGludGVsX2NydGNfYXRvbWljX2NoZWNrKHN0cnVjdCBk cm1fY3J0YyAqY3J0YywKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVs X2NydGMoY3J0Yyk7CiAJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnID0KIAkJ dG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjX3N0YXRlKTsKKwlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUg Km9sZF9jcnRjX3N0YXRlID0KKwkJZHJtX2F0b21pY19nZXRfb2xkX2NydGNfc3RhdGUoY3J0Y19z dGF0ZS0+c3RhdGUsIGNydGMpOwogCWludCByZXQ7CiAJYm9vbCBtb2RlX2NoYW5nZWQgPSBuZWVk c19tb2Rlc2V0KGNydGNfc3RhdGUpOwogCkBAIC0xMTAxMyw2ICsxMTAzMCw5IEBAIHN0YXRpYyBp bnQgaW50ZWxfY3J0Y19hdG9taWNfY2hlY2soc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQljcnRj X3N0YXRlLT5wbGFuZXNfY2hhbmdlZCA9IHRydWU7CiAJfQogCisJaWYgKGNydGNfc3RhdGUtPmJn Y29sb3IgIT0gb2xkX2NydGNfc3RhdGUtPmJnY29sb3IpCisJCXBpcGVfY29uZmlnLT51cGRhdGVf cGlwZSA9IHRydWU7CisKIAlyZXQgPSAwOwogCWlmIChkZXZfcHJpdi0+ZGlzcGxheS5jb21wdXRl X3BpcGVfd20pIHsKIAkJcmV0ID0gZGV2X3ByaXYtPmRpc3BsYXkuY29tcHV0ZV9waXBlX3dtKHBp cGVfY29uZmlnKTsKQEAgLTE0MTYwLDYgKzE0MTgwLDkgQEAgc3RhdGljIGludCBpbnRlbF9jcnRj X2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIHBpcGUgcGlwZSkK IAogCVdBUk5fT04oZHJtX2NydGNfaW5kZXgoJmludGVsX2NydGMtPmJhc2UpICE9IGludGVsX2Ny dGMtPnBpcGUpOwogCisJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gOSkKKwkJZHJtX2NydGNf YWRkX2JnY29sb3JfcHJvcGVydHkoJmludGVsX2NydGMtPmJhc2UpOworCiAJcmV0dXJuIDA7CiAK IGZhaWw6CkBAIC0xNTM4OSw2ICsxNTQxMiw5IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nhbml0aXpl X2NydGMoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUgPSB0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPmJhc2Uuc3RhdGUpOwogCWVu dW0gdHJhbnNjb2RlciBjcHVfdHJhbnNjb2RlciA9IGNydGNfc3RhdGUtPmNwdV90cmFuc2NvZGVy OwogCisJLyogQWx3YXlzIGZvcmNlIGJnY29sb3IgdG8gc29saWQgYmxhY2sgKi8KKwljcnRjX3N0 YXRlLT5iYXNlLmJnY29sb3IgPSBkcm1fYXJnYigxNiwgMHhGRkZGLCAwLCAwLCAwKTsKKwogCS8q IENsZWFyIGFueSBmcmFtZSBzdGFydCBkZWxheXMgdXNlZCBmb3IgZGVidWdnaW5nIGxlZnQgYnkg dGhlIEJJT1MgKi8KIAlpZiAoY3J0Yy0+YWN0aXZlICYmICF0cmFuc2NvZGVyX2lzX2RzaShjcHVf dHJhbnNjb2RlcikpIHsKIAkJaTkxNV9yZWdfdCByZWcgPSBQSVBFQ09ORihjcHVfdHJhbnNjb2Rl cik7CkBAIC0xNTQxNSw5ICsxNTQ0MSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nhbml0aXplX2Ny dGMoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJCSAqIGdhbW1hIGFuZCBDU0MgdG8gbWF0Y2gg aG93IHdlIHByb2dyYW0gb3VyIHBsYW5lcy4KIAkJICovCiAJCWlmIChJTlRFTF9HRU4oZGV2X3By aXYpID49IDkpCi0JCQlJOTE1X1dSSVRFKFNLTF9CT1RUT01fQ09MT1IoY3J0Yy0+cGlwZSksCi0J CQkJICAgU0tMX0JPVFRPTV9DT0xPUl9HQU1NQV9FTkFCTEUgfAotCQkJCSAgIFNLTF9CT1RUT01f Q09MT1JfQ1NDX0VOQUJMRSk7CisJCQlza2xfdXBkYXRlX2JhY2tncm91bmRfY29sb3IoY3J0Y19z dGF0ZSk7CiAJfQogCiAJLyogQWRqdXN0IHRoZSBzdGF0ZSBvZiB0aGUgb3V0cHV0IHBpcGUgYWNj b3JkaW5nIHRvIHdoZXRoZXIgd2UKLS0gCjIuMTQuNQoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==