From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mahesh Kumar Subject: [PATCH v5 05/10] drm/rcar-du/crc: Implement verify_crc_source callback Date: Mon, 23 Jul 2018 16:08:24 +0530 Message-ID: <20180723103824.21734-1-mahesh1.kumar@intel.com> References: <1880807.NPALksyAMY@avalon> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1880807.NPALksyAMY@avalon> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org Cc: Mahesh Kumar , Laurent Pinchart , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBpbXBsZW1lbnRzICJ2ZXJpZnlfY3JjX3NvdXJjZSIgY2FsbGJhY2sgZnVuY3Rp b24gZm9yCnJjYXIgZHJtIGRyaXZlci4KCkNoYW5nZXMgU2luY2UgVjE6CiAtIGF2b2lkIGR1cGxp Y2F0aW9uIG9mIGNvZGUKQ2hhbmdlcyBTaW5jZSBWMjoKIC0gZnVydGhlciBvcHRpbWl6ZSB0aGUg Y29kZQpDaGFuZ2VzIFNpbmNlIFYzOgogLSBBZG9wdCB0byBkcml2ZXIgc3R5bGUKIC0gQWRkcmVz cyByZXZpZXcgY29tbWVudHMgZnJvbSBMYXVyZW50IFBpbmNoYXJ0CgpTaWduZWQtb2ZmLWJ5OiBN YWhlc2ggS3VtYXIgPG1haGVzaDEua3VtYXJAaW50ZWwuY29tPgpDYzogZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpDYzogTGF1cmVudCBQaW5jaGFydCA8bGF1cmVudC5waW5jaGFydEBp ZGVhc29uYm9hcmQuY29tPgpSZXZpZXdlZC1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4u bGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IExhdXJlbnQgUGluY2hhcnQg PGxhdXJlbnQucGluY2hhcnRAaWRlYXNvbmJvYXJkLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v cmNhci1kdS9yY2FyX2R1X2NydGMuYyB8IDY5ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMuYyBiL2Ry aXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5jCmluZGV4IDE1ZGM5Y2FhMTI4Yi4u ODAyMjZjYWM4OGUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1 X2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMuYwpAQCAt NzU2LDE3ICs3NTYsMTEgQEAgc3RhdGljIHZvaWQgcmNhcl9kdV9jcnRjX2Rpc2FibGVfdmJsYW5r KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAlyY3J0Yy0+dmJsYW5rX2VuYWJsZSA9IGZhbHNlOwog fQogCi1zdGF0aWMgaW50IHJjYXJfZHVfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMsCi0JCQkJICAgICAgIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAotCQkJCSAgICAg ICBzaXplX3QgKnZhbHVlc19jbnQpCitzdGF0aWMgaW50IHJjYXJfZHVfY3J0Y19wYXJzZV9jcmNf c291cmNlKHN0cnVjdCByY2FyX2R1X2NydGMgKnJjcnRjLAorCQkJCQkgY29uc3QgY2hhciAqc291 cmNlX25hbWUsCisJCQkJCSBlbnVtIHZzcDFfZHVfY3JjX3NvdXJjZSAqc291cmNlKQogewotCXN0 cnVjdCByY2FyX2R1X2NydGMgKnJjcnRjID0gdG9fcmNhcl9jcnRjKGNydGMpOwotCXN0cnVjdCBk cm1fbW9kZXNldF9hY3F1aXJlX2N0eCBjdHg7Ci0Jc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRj X3N0YXRlOwotCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKLQllbnVtIHZzcDFfZHVf Y3JjX3NvdXJjZSBzb3VyY2U7Ci0JdW5zaWduZWQgaW50IGluZGV4ID0gMDsKLQl1bnNpZ25lZCBp bnQgaTsKKwl1bnNpZ25lZCBpbnQgaW5kZXg7CiAJaW50IHJldDsKIAogCS8qCkBAIC03NzQsMzAg Kzc2OCw2NCBAQCBzdGF0aWMgaW50IHJjYXJfZHVfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCiAJICogQ1JDIG9uIGFuIGlucHV0IHBsYW5lICgldSBpcyB0aGUgcGxh bmUgSUQpLCBhbmQgImF1dG8iIHRvIGNvbXB1dGUgdGhlCiAJICogQ1JDIG9uIHRoZSBjb21wb3Nl ciAoVlNQKSBvdXRwdXQuCiAJICovCisKIAlpZiAoIXNvdXJjZV9uYW1lKSB7Ci0JCXNvdXJjZSA9 IFZTUDFfRFVfQ1JDX05PTkU7CisJCSpzb3VyY2UgPSBWU1AxX0RVX0NSQ19OT05FOworCQlyZXR1 cm4gMDsKIAl9IGVsc2UgaWYgKCFzdHJjbXAoc291cmNlX25hbWUsICJhdXRvIikpIHsKLQkJc291 cmNlID0gVlNQMV9EVV9DUkNfT1VUUFVUOworCQkqc291cmNlID0gVlNQMV9EVV9DUkNfT1VUUFVU OworCQlyZXR1cm4gMDsKIAl9IGVsc2UgaWYgKHN0cnN0YXJ0cyhzb3VyY2VfbmFtZSwgInBsYW5l IikpIHsKLQkJc291cmNlID0gVlNQMV9EVV9DUkNfUExBTkU7CisJCXVuc2lnbmVkIGludCBpOwor CisJCSpzb3VyY2UgPSBWU1AxX0RVX0NSQ19QTEFORTsKIAogCQlyZXQgPSBrc3RydG91aW50KHNv dXJjZV9uYW1lICsgc3RybGVuKCJwbGFuZSIpLCAxMCwgJmluZGV4KTsKIAkJaWYgKHJldCA8IDAp CiAJCQlyZXR1cm4gcmV0OwogCiAJCWZvciAoaSA9IDA7IGkgPCByY3J0Yy0+dnNwLT5udW1fcGxh bmVzOyArK2kpIHsKLQkJCWlmIChpbmRleCA9PSByY3J0Yy0+dnNwLT5wbGFuZXNbaV0ucGxhbmUu YmFzZS5pZCkgewotCQkJCWluZGV4ID0gaTsKLQkJCQlicmVhazsKLQkJCX0KKwkJCWlmIChpbmRl eCA9PSByY3J0Yy0+dnNwLT5wbGFuZXNbaV0ucGxhbmUuYmFzZS5pZCkKKwkJCQlyZXR1cm4gaTsK IAkJfQorCX0KIAotCQlpZiAoaSA+PSByY3J0Yy0+dnNwLT5udW1fcGxhbmVzKQotCQkJcmV0dXJu IC1FSU5WQUw7Ci0JfSBlbHNlIHsKKwlyZXR1cm4gLUVJTlZBTDsKK30KKworc3RhdGljIGludCBy Y2FyX2R1X2NydGNfdmVyaWZ5X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJ CQkgIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAorCQkJCQkgIHNpemVfdCAqdmFsdWVzX2NudCkK K3sKKwlzdHJ1Y3QgcmNhcl9kdV9jcnRjICpyY3J0YyA9IHRvX3JjYXJfY3J0YyhjcnRjKTsKKwll bnVtIHZzcDFfZHVfY3JjX3NvdXJjZSBzb3VyY2U7CisKKwlpZiAocmNhcl9kdV9jcnRjX3BhcnNl X2NyY19zb3VyY2UocmNydGMsIHNvdXJjZV9uYW1lLCAmc291cmNlKSA8IDApIHsKKwkJRFJNX0RF QlVHX0RSSVZFUigidW5rbm93biBzb3VyY2UgJXNcbiIsIHNvdXJjZV9uYW1lKTsKIAkJcmV0dXJu IC1FSU5WQUw7CiAJfQogCisJKnZhbHVlc19jbnQgPSAxOworCXJldHVybiAwOworfQorCitzdGF0 aWMgaW50IHJjYXJfZHVfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMs CisJCQkJICAgICAgIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAorCQkJCSAgICAgICBzaXplX3Qg KnZhbHVlc19jbnQpCit7CisJc3RydWN0IHJjYXJfZHVfY3J0YyAqcmNydGMgPSB0b19yY2FyX2Ny dGMoY3J0Yyk7CisJc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4IGN0eDsKKwlzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGU7CisJc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0 YXRlOworCWVudW0gdnNwMV9kdV9jcmNfc291cmNlIHNvdXJjZTsKKwl1bnNpZ25lZCBpbnQgaW5k ZXg7CisJaW50IHJldDsKKworCXJldCA9IHJjYXJfZHVfY3J0Y19wYXJzZV9jcmNfc291cmNlKHJj cnRjLCBzb3VyY2VfbmFtZSwgJnNvdXJjZSk7CisJaWYgKHJldCA8IDApCisJCXJldHVybiByZXQ7 CisKKwlpbmRleCA9IHJldDsKIAkqdmFsdWVzX2NudCA9IDE7CiAKIAkvKiBQZXJmb3JtIGFuIGF0 b21pYyBjb21taXQgdG8gc2V0IHRoZSBDUkMgc291cmNlLiAqLwpAQCAtODYxLDYgKzg4OSw3IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfZnVuY3MgY3J0Y19mdW5jc19nZW4zID0gewog CS5lbmFibGVfdmJsYW5rID0gcmNhcl9kdV9jcnRjX2VuYWJsZV92YmxhbmssCiAJLmRpc2FibGVf dmJsYW5rID0gcmNhcl9kdV9jcnRjX2Rpc2FibGVfdmJsYW5rLAogCS5zZXRfY3JjX3NvdXJjZSA9 IHJjYXJfZHVfY3J0Y19zZXRfY3JjX3NvdXJjZSwKKwkudmVyaWZ5X2NyY19zb3VyY2UgPSByY2Fy X2R1X2NydGNfdmVyaWZ5X2NyY19zb3VyY2UsCiB9OwogCiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQotLSAKMi4xNi4yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwK