From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH 6/9] drm/ast: Add primary plane Date: Mon, 28 Oct 2019 16:49:25 +0100 Message-ID: <20191028154928.4058-7-tzimmermann@suse.de> References: <20191028154928.4058-1-tzimmermann@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7CE6E6E95C for ; Mon, 28 Oct 2019 15:49:34 +0000 (UTC) In-Reply-To: <20191028154928.4058-1-tzimmermann@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: airlied@redhat.com, daniel@ffwll.ch, kraxel@redhat.com, sam@ravnborg.org, chen@aspeedtech.com Cc: Thomas Zimmermann , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org TGlrZSB0aGUgb3JpZ2luYWwgbW9kZS1zZXR0aW5nIGNvZGUsIHRoZSBwcmltYXJ5IHBsYW5lIHN1 cHBvcnRzIFhSR0I4ODgsClJHQjU2NSBhbmQgQzguIFRoZSBwbGFuZSBpdHNlbGYgb25seSBwaW5z IEJPcyBhbmQgc2V0cyB0aGUgYmFzZSBhZGRyZXNzCmFuZCBzY2FubGluZSBvZmZzZXQuIFRoZSBt b2RlLXNldHRpbmcgY29kZSB3aWxsIGJlIGxvY2F0ZWQgaW4gdGhlIENSVEMncwphdG9taWMgaGVs cGVycy4KClNpZ25lZC1vZmYtYnk6IFRob21hcyBaaW1tZXJtYW5uIDx0emltbWVybWFubkBzdXNl LmRlPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X2Rydi5oICB8ICAyICsKIGRyaXZlcnMv Z3B1L2RybS9hc3QvYXN0X21vZGUuYyB8IDk2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0KIDIgZmlsZXMgY2hhbmdlZCwgOTYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9kcnYuaCBiL2RyaXZlcnMvZ3B1 L2RybS9hc3QvYXN0X2Rydi5oCmluZGV4IGY0NDE1MGZmNTQ4My4uMTM1NjA2MjJmMjJhIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vYXN0L2FzdF9kcnYuaApAQCAtMTIxLDYgKzEyMSw4IEBAIHN0cnVjdCBhc3RfcHJpdmF0ZSB7 CiAJCXVuc2lnbmVkIGludCBuZXh0X2luZGV4OwogCX0gY3Vyc29yOwogCisJc3RydWN0IGRybV9w bGFuZSBwcmltYXJ5X3BsYW5lOworCiAJYm9vbCBzdXBwb3J0X3dpZGVfc2NyZWVuOwogCWVudW0g ewogCQlhc3RfdXNlX3AyYSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X21v ZGUuYyBiL2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYwppbmRleCBjNGM5ZmNhMGYwMGMu LmRiYmZjNGQ0NGNiNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FzdC9hc3RfbW9kZS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYwpAQCAtMzEsNiArMzEsOCBAQAog I2luY2x1ZGUgPGxpbnV4L2V4cG9ydC5oPgogI2luY2x1ZGUgPGxpbnV4L3BjaS5oPgogCisjaW5j bHVkZSA8ZHJtL2RybV9hdG9taWNfaGVscGVyLmg+CisjaW5jbHVkZSA8ZHJtL2RybV9hdG9taWNf c3RhdGVfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9jcnRjLmg+CiAjaW5jbHVkZSA8ZHJt L2RybV9jcnRjX2hlbHBlci5oPgogI2luY2x1ZGUgPGRybS9kcm1fZm91cmNjLmg+CkBAIC01MSw2 ICs1Myw3IEBAIHN0YXRpYyBpbnQgYXN0X2N1cnNvcl9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRj LAogc3RhdGljIGludCBhc3RfY3Vyc29yX21vdmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQkJ ICAgaW50IHgsIGludCB5KTsKIAorCiBzdGF0aWMgaW5saW5lIHZvaWQgYXN0X2xvYWRfcGFsZXR0 ZV9pbmRleChzdHJ1Y3QgYXN0X3ByaXZhdGUgKmFzdCwKIAkJCQkgICAgIHU4IGluZGV4LCB1OCBy ZWQsIHU4IGdyZWVuLAogCQkJCSAgICAgdTggYmx1ZSkKQEAgLTUzOCw2ICs1NDEsNjMgQEAgc3Rh dGljIHZvaWQgYXN0X3NldF9zdGFydF9hZGRyZXNzX2NydDEoc3RydWN0IGRybV9jcnRjICpjcnRj LCB1bnNpZ25lZCBvZmZzZXQpCiAKIH0KIAorLyoKKyAqIFByaW1hcnkgcGxhbmUKKyAqLworCitp bnQgYXN0X3ByaW1hcnlfcGxhbmVfaGVscGVyX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5l ICpwbGFuZSwKKwkJCQkJICBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSkKK3sKKwlyZXR1 cm4gMDsKK30KKwordm9pZCBhc3RfcHJpbWFyeV9wbGFuZV9oZWxwZXJfYXRvbWljX3VwZGF0ZShz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKKwkJCQkJICAgIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUg Km9sZF9zdGF0ZSkKK3sKKwlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSA9IHBsYW5lLT5z dGF0ZTsKKwlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBzdGF0ZS0+Y3J0YzsKKwlzdHJ1Y3QgZHJt X2dlbV92cmFtX29iamVjdCAqZ2JvOworCXM2NCBncHVfYWRkcjsKKworCWlmICghY3J0YyB8fCAh c3RhdGUtPmZiKQorCQlyZXR1cm47CisKKwlnYm8gPSBkcm1fZ2VtX3ZyYW1fb2ZfZ2VtKHN0YXRl LT5mYi0+b2JqWzBdKTsKKwlncHVfYWRkciA9IGRybV9nZW1fdnJhbV9vZmZzZXQoZ2JvKTsKKwlp ZiAoV0FSTl9PTl9PTkNFKGdwdV9hZGRyIDwgMCkpCisJCXJldHVybjsgLyogQnVnOiB3ZSBkaWRu J3QgcGluIHRoZSBCTyB0byBWUkFNIGluIHByZXBhcmVfZmIuICovCisKKwlhc3Rfc2V0X29mZnNl dF9yZWcoY3J0Yyk7CisJYXN0X3NldF9zdGFydF9hZGRyZXNzX2NydDEoY3J0YywgKHUzMilncHVf YWRkcik7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2hlbHBlcl9mdW5jcyBh c3RfcHJpbWFyeV9wbGFuZV9oZWxwZXJfZnVuY3MgPSB7CisJLnByZXBhcmVfZmIgPSBkcm1fZ2Vt X3ZyYW1fcGxhbmVfaGVscGVyX3ByZXBhcmVfZmIsCisJLmNsZWFudXBfZmIgPSBkcm1fZ2VtX3Zy YW1fcGxhbmVfaGVscGVyX2NsZWFudXBfZmIsCisJLmF0b21pY19jaGVjayA9IGFzdF9wcmltYXJ5 X3BsYW5lX2hlbHBlcl9hdG9taWNfY2hlY2ssCisJLmF0b21pY191cGRhdGUgPSBhc3RfcHJpbWFy eV9wbGFuZV9oZWxwZXJfYXRvbWljX3VwZGF0ZSwKK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg ZHJtX3BsYW5lX2Z1bmNzIGFzdF9wcmltYXJ5X3BsYW5lX2Z1bmNzID0geworCS51cGRhdGVfcGxh bmUgPSBkcm1fYXRvbWljX2hlbHBlcl91cGRhdGVfcGxhbmUsCisJLmRpc2FibGVfcGxhbmUgPSBk cm1fYXRvbWljX2hlbHBlcl9kaXNhYmxlX3BsYW5lLAorCS5kZXN0cm95ID0gZHJtX3BsYW5lX2Ns ZWFudXAsCisJLnJlc2V0ID0gZHJtX2F0b21pY19oZWxwZXJfcGxhbmVfcmVzZXQsCisJLnNldF9w cm9wZXJ0eSA9IE5VTEwsCisJLmF0b21pY19kdXBsaWNhdGVfc3RhdGUgPSBkcm1fYXRvbWljX2hl bHBlcl9wbGFuZV9kdXBsaWNhdGVfc3RhdGUsCisJLmF0b21pY19kZXN0cm95X3N0YXRlID0gZHJt X2F0b21pY19oZWxwZXJfcGxhbmVfZGVzdHJveV9zdGF0ZSwKKwkuYXRvbWljX3NldF9wcm9wZXJ0 eSA9IE5VTEwsCisJLmF0b21pY19nZXRfcHJvcGVydHkgPSBOVUxMLAorCS5sYXRlX3JlZ2lzdGVy ID0gTlVMTCwKKwkuZWFybHlfdW5yZWdpc3RlciA9IE5VTEwsCisJLmF0b21pY19wcmludF9zdGF0 ZSA9IE5VTEwsCisJLmZvcm1hdF9tb2Rfc3VwcG9ydGVkID0gTlVMTCwKK307CisKKy8qCisgKiBD UlRDCisgKi8KKwogc3RhdGljIHZvaWQgYXN0X2NydGNfZHBtcyhzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsIGludCBtb2RlKQogewogCXN0cnVjdCBhc3RfcHJpdmF0ZSAqYXN0ID0gY3J0Yy0+ZGV2LT5k ZXZfcHJpdmF0ZTsKQEAgLTcxMSwxNiArNzcxLDI2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJt X2NydGNfZnVuY3MgYXN0X2NydGNfZnVuY3MgPSB7CiAKIHN0YXRpYyBpbnQgYXN0X2NydGNfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogeworCXN0cnVjdCBhc3RfcHJpdmF0ZSAqYXN0ID0g ZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1Y3QgYXN0X2NydGMgKmNydGM7CisJaW50IHJldDsKIAog CWNydGMgPSBremFsbG9jKHNpemVvZihzdHJ1Y3QgYXN0X2NydGMpLCBHRlBfS0VSTkVMKTsKIAlp ZiAoIWNydGMpCiAJCXJldHVybiAtRU5PTUVNOwogCi0JZHJtX2NydGNfaW5pdChkZXYsICZjcnRj LT5iYXNlLCAmYXN0X2NydGNfZnVuY3MpOworCXJldCA9IGRybV9jcnRjX2luaXRfd2l0aF9wbGFu ZXMoZGV2LCAmY3J0Yy0+YmFzZSwgJmFzdC0+cHJpbWFyeV9wbGFuZSwKKwkJCQkJTlVMTCwgJmFz dF9jcnRjX2Z1bmNzLCBOVUxMKTsKKwlpZiAocmV0KQorCQlnb3RvIGVycl9rZnJlZTsKKwogCWRy bV9tb2RlX2NydGNfc2V0X2dhbW1hX3NpemUoJmNydGMtPmJhc2UsIDI1Nik7CiAJZHJtX2NydGNf aGVscGVyX2FkZCgmY3J0Yy0+YmFzZSwgJmFzdF9jcnRjX2hlbHBlcl9mdW5jcyk7CiAJcmV0dXJu IDA7CisKK2Vycl9rZnJlZToKKwlrZnJlZShjcnRjKTsKKwlyZXR1cm4gcmV0OwogfQogCiBzdGF0 aWMgdm9pZCBhc3RfZW5jb2Rlcl9kZXN0cm95KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikK QEAgLTc1NCw3ICs4MjQsNiBAQCBzdGF0aWMgdm9pZCBhc3RfZW5jb2Rlcl9jb21taXQoc3RydWN0 IGRybV9lbmNvZGVyICplbmNvZGVyKQogCiB9CiAKLQogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1f ZW5jb2Rlcl9oZWxwZXJfZnVuY3MgYXN0X2VuY19oZWxwZXJfZnVuY3MgPSB7CiAJLmRwbXMgPSBh c3RfZW5jb2Rlcl9kcG1zLAogCS5wcmVwYXJlID0gYXN0X2VuY29kZXJfcHJlcGFyZSwKQEAgLTk3 NiwxMCArMTA0NSwzMyBAQCBzdGF0aWMgdm9pZCBhc3RfY3Vyc29yX2Zpbmkoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKIAogaW50IGFzdF9tb2RlX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikK IHsKKwlzdGF0aWMgY29uc3QgdWludDMyX3QgcHJpbWFyeV9wbGFuZV9mb3JtYXRzW10gPSB7CisJ CURSTV9GT1JNQVRfWFJHQjg4ODgsCisJCURSTV9GT1JNQVRfUkdCNTY1LAorCQlEUk1fRk9STUFU X0M4LAorCX07CisKKwlzdHJ1Y3QgYXN0X3ByaXZhdGUgKmFzdCA9IGRldi0+ZGV2X3ByaXZhdGU7 CisJaW50IHJldDsKKworCW1lbXNldCgmYXN0LT5wcmltYXJ5X3BsYW5lLCAwLCBzaXplb2YoYXN0 LT5wcmltYXJ5X3BsYW5lKSk7CisJcmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRldiwg JmFzdC0+cHJpbWFyeV9wbGFuZSwgMHgwMSwKKwkJCQkgICAgICAgJmFzdF9wcmltYXJ5X3BsYW5l X2Z1bmNzLAorCQkJCSAgICAgICBwcmltYXJ5X3BsYW5lX2Zvcm1hdHMsCisJCQkJICAgICAgIEFS UkFZX1NJWkUocHJpbWFyeV9wbGFuZV9mb3JtYXRzKSwKKwkJCQkgICAgICAgTlVMTCwgRFJNX1BM QU5FX1RZUEVfUFJJTUFSWSwgTlVMTCk7CisJaWYgKHJldCkgeworCQlEUk1fRVJST1IoImFzdDog ZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KCkgZmFpbGVkOiAlZFxuIiwgcmV0KTsKKwkJcmV0dXJu IHJldDsKKwl9CisJZHJtX3BsYW5lX2hlbHBlcl9hZGQoJmFzdC0+cHJpbWFyeV9wbGFuZSwKKwkJ CSAgICAgJmFzdF9wcmltYXJ5X3BsYW5lX2hlbHBlcl9mdW5jcyk7CisKIAlhc3RfY3Vyc29yX2lu aXQoZGV2KTsKIAlhc3RfY3J0Y19pbml0KGRldik7CiAJYXN0X2VuY29kZXJfaW5pdChkZXYpOwog CWFzdF9jb25uZWN0b3JfaW5pdChkZXYpOworCiAJcmV0dXJuIDA7CiB9CiAKLS0gCjIuMjMuMAoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs