From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH v12 7/8] drm/i915: Write AVI infoframes for Parade LSPCON Date: Fri, 12 Oct 2018 11:53:13 +0530 Message-ID: <1539325394-20788-7-git-send-email-shashank.sharma@intel.com> References: <1539325394-20788-1-git-send-email-shashank.sharma@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 ESMTPS id 2A5256E443 for ; Fri, 12 Oct 2018 06:16:26 +0000 (UTC) In-Reply-To: <1539325394-20788-1-git-send-email-shashank.sharma@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 List-Id: intel-gfx@lists.freedesktop.org RGlmZmVyZW50IExTUENPTiB2ZW5kb3JzIHNwZWNpZnkgdGhlaXIgY3VzdG9tIG1ldGhvZHMgdG8g cGFzcwpBVkkgaW5mb2ZyYW1lcyB0byB0aGUgTFNQQ09OIGNoaXAsIHNvIGRvZXMgUGFyYWRlIHRl Y2guCgpUaGlzIHBhdGNoIGFkZHMgZnVuY3Rpb25zIHRvIGFycmFuZ2UgYW5kIHdyaXRlIEFWSSBp bmZvZnJhbWVzCmludG8gUGFyYWRlIExTUENPTiBjaGlwcy4KClYyOiByZWJhc2UKVjM6IEFkZGVk IHItYiBmcm9tIE1hYXJ0ZW4KVjQ6IHJlYmFzZQpWNTogcmViYXNlClY2OiByZWJhc2UKVjc6IEZp eGVkIGNoZWNrcGF0Y2ggd2FybmluZ3MgZm9yIGFsaWdubWVudApWODogUmViYXNlClY5OiBSZWJh c2UKVjEwOiBSZWJhc2UKCkNjOiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+CkNjOiBW aWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpDYzogTWFhcnRl biBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQt Ynk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+ CgpTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRlbC5j b20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHNwY29uLmMgfCAxMTcgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiAxIGZpbGUgY2hhbmdlZCwgMTE2IGluc2Vy dGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9sc3Bjb24uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xzcGNvbi5jCmlu ZGV4IGI4MDY4MDMuLjgyOWM0MGEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2xzcGNvbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xzcGNvbi5jCkBA IC0zNyw2ICszNywxMiBAQAogI2RlZmluZSAgTFNQQ09OX01DQV9BVklfSUZfS0lDS09GRiAoMSA8 PCAwKQogI2RlZmluZSAgTFNQQ09OX01DQV9BVklfSUZfSEFORExFRCAoMSA8PCAxKQogCisvKiBB VVggYWRkcmVzc2VzIHRvIHdyaXRlIFBhcmFkZSBBVkkgSUYgKi8KKyNkZWZpbmUgTFNQQ09OX1BB UkFERV9BVklfSUZfV1JJVEVfT0ZGU0VUIDB4NTE2CisjZGVmaW5lIExTUENPTl9QQVJBREVfQVZJ X0lGX0NUUkwgMHg1MUUKKyNkZWZpbmUgIExTUENPTl9QQVJBREVfQVZJX0lGX0tJQ0tPRkYgKDEg PDwgNykKKyNkZWZpbmUgTFNQQ09OX1BBUkFERV9BVklfSUZfREFUQV9TSVpFIDMyCisKIHN0YXRp YyBzdHJ1Y3QgaW50ZWxfZHAgKmxzcGNvbl90b19pbnRlbF9kcChzdHJ1Y3QgaW50ZWxfbHNwY29u ICpsc3Bjb24pCiB7CiAJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQgPQpAQCAt MjQwLDYgKzI0NiwxMTEgQEAgc3RhdGljIHZvaWQgbHNwY29uX3Jlc3VtZV9pbl9wY29uX3dhKHN0 cnVjdCBpbnRlbF9sc3Bjb24gKmxzcGNvbikKIAlEUk1fREVCVUdfS01TKCJMU1BDT04gRFAgZGVz Y3JpcHRvciBtaXNtYXRjaCBhZnRlciByZXN1bWVcbiIpOwogfQogCitzdGF0aWMgYm9vbCBsc3Bj b25fcGFyYWRlX2Z3X3JlYWR5KHN0cnVjdCBkcm1fZHBfYXV4ICphdXgpCit7CisJdTggYXZpX2lm X2N0cmw7CisJdTggcmV0cnk7CisJc3NpemVfdCByZXQ7CisKKwkvKiBDaGVjayBpZiBMU1BDT04g RlcgaXMgcmVhZHkgZm9yIGRhdGEgKi8KKwlmb3IgKHJldHJ5ID0gMDsgcmV0cnkgPCA1OyByZXRy eSsrKSB7CisJCWlmIChyZXRyeSkKKwkJCXVzbGVlcF9yYW5nZSgyMDAsIDMwMCk7CisKKwkJcmV0 ID0gZHJtX2RwX2RwY2RfcmVhZChhdXgsIExTUENPTl9QQVJBREVfQVZJX0lGX0NUUkwsCisJCQkJ ICAgICAgICZhdmlfaWZfY3RybCwgMSk7CisJCWlmIChyZXQgPCAwKSB7CisJCQlEUk1fRVJST1Io IkZhaWxlZCB0byByZWFkIEFWSSBJRiBjb250cm9sXG4iKTsKKwkJCXJldHVybiBmYWxzZTsKKwkJ fQorCisJCWlmICgoYXZpX2lmX2N0cmwgJiBMU1BDT05fUEFSQURFX0FWSV9JRl9LSUNLT0ZGKSA9 PSAwKQorCQkJcmV0dXJuIHRydWU7CisJfQorCisJRFJNX0VSUk9SKCJQYXJhZGUgRlcgbm90IHJl YWR5IHRvIGFjY2VwdCBBVkkgSUZcbiIpOworCXJldHVybiBmYWxzZTsKK30KKworc3RhdGljIGJv b2wgX2xzcGNvbl9wYXJhZGVfd3JpdGVfaW5mb2ZyYW1lX2Jsb2NrcyhzdHJ1Y3QgZHJtX2RwX2F1 eCAqYXV4LAorCQkJCQkJICB1aW50OF90ICphdmlfYnVmKQoreworCXU4IGF2aV9pZl9jdHJsOwor CXU4IGJsb2NrX2NvdW50ID0gMDsKKwl1OCAqZGF0YTsKKwl1aW50MTZfdCByZWc7CisJc3NpemVf dCByZXQ7CisKKwl3aGlsZSAoYmxvY2tfY291bnQgPCA0KSB7CisJCWlmICghbHNwY29uX3BhcmFk ZV9md19yZWFkeShhdXgpKSB7CisJCQlEUk1fREVCVUdfS01TKCJMU1BDT04gRlcgbm90IHJlYWR5 LCBibG9jayAlZFxuIiwKKwkJCQkgICAgICBibG9ja19jb3VudCk7CisJCQlyZXR1cm4gZmFsc2U7 CisJCX0KKworCQlyZWcgPSBMU1BDT05fUEFSQURFX0FWSV9JRl9XUklURV9PRkZTRVQ7CisJCWRh dGEgPSBhdmlfYnVmICsgYmxvY2tfY291bnQgKiA4OworCQlyZXQgPSBkcm1fZHBfZHBjZF93cml0 ZShhdXgsIHJlZywgZGF0YSwgOCk7CisJCWlmIChyZXQgPCAwKSB7CisJCQlEUk1fRVJST1IoIkZh aWxlZCB0byB3cml0ZSBBVkkgSUYgYmxvY2sgJWRcbiIsCisJCQkJICBibG9ja19jb3VudCk7CisJ CQlyZXR1cm4gZmFsc2U7CisJCX0KKworCQkvKgorCQkgKiBPbmNlIGEgYmxvY2sgb2YgZGF0YSBp cyB3cml0dGVuLCB3ZSBoYXZlIHRvIGluZm9ybSB0aGUgRlcKKwkJICogYWJvdXQgdGhpcyBieSB3 cml0aW5nIGludG8gYXZpIGluZm9mcmFtZSBjb250cm9sIHJlZ2lzdGVyOgorCQkgKiAtIHNldCB0 aGUga2lja29mZiBiaXRbN10gdG8gMQorCQkgKiAtIHdyaXRlIHRoZSBibG9jayBuby4gdG8gYml0 c1sxOjBdCisJCSAqLworCQlyZWcgPSBMU1BDT05fUEFSQURFX0FWSV9JRl9DVFJMOworCQlhdmlf aWZfY3RybCA9IExTUENPTl9QQVJBREVfQVZJX0lGX0tJQ0tPRkYgfCBibG9ja19jb3VudDsKKwkJ cmV0ID0gZHJtX2RwX2RwY2Rfd3JpdGUoYXV4LCByZWcsICZhdmlfaWZfY3RybCwgMSk7CisJCWlm IChyZXQgPCAwKSB7CisJCQlEUk1fRVJST1IoIkZhaWxlZCB0byB1cGRhdGUgKDB4JXgpLCBibG9j ayAlZFxuIiwKKwkJCQkgIHJlZywgYmxvY2tfY291bnQpOworCQkJcmV0dXJuIGZhbHNlOworCQl9 CisKKwkJYmxvY2tfY291bnQrKzsKKwl9CisKKwlEUk1fREVCVUdfS01TKCJXcm90ZSBBVkkgSUYg YmxvY2tzIHN1Y2Nlc3NmdWxseVxuIik7CisJcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBib29s IF9sc3Bjb25fd3JpdGVfYXZpX2luZm9mcmFtZV9wYXJhZGUoc3RydWN0IGRybV9kcF9hdXggKmF1 eCwKKwkJCQkJICAgICAgIGNvbnN0IHVpbnQ4X3QgKmZyYW1lLAorCQkJCQkgICAgICAgc3NpemVf dCBsZW4pCit7CisJdWludDhfdCBhdmlfaWZbTFNQQ09OX1BBUkFERV9BVklfSUZfREFUQV9TSVpF XSA9IHsxLCB9OworCisJLyoKKwkgKiBQYXJhZGUncyBmcmFtZXMgY29udGFpbnMgMzIgYnl0ZXMg b2YgZGF0YSwgZGl2aWRlZAorCSAqIGludG8gNCBmcmFtZXM6CisJICoJVG9rZW4gYnl0ZSAoZmly c3QgYnl0ZSBvZiBmaXJzdCBmcmFtZSwgbXVzdCBiZSBub24temVybykKKwkgKglIQjAgdG8gSEIy CSBmcm9tIEFWSSBJRiAoMyBieXRlcyBoZWFkZXIpCisJICoJUEIwIHRvIFBCMjcgZnJvbSBBVkkg SUYgKDI4IGJ5dGVzIGRhdGEpCisJICogU28gaXQgc2hvdWxkIGxvb2sgbGlrZSB0aGlzCisJICoJ Zmlyc3QgYmxvY2s6IHwgPHRva2VuPiA8SEIwLUhCMj4gPERCMC1EQjM+IHwKKwkgKgluZXh0IDMg YmxvY2tzOiB8PERCNC1EQjExPnw8REIxMi1EQjE5Pnw8REIyMC1EQjI4PnwKKwkgKi8KKworCWlm IChsZW4gPiBMU1BDT05fUEFSQURFX0FWSV9JRl9EQVRBX1NJWkUgLSAxKSB7CisJCURSTV9FUlJP UigiSW52YWxpZCBsZW5ndGggb2YgaW5mb2ZyYW1lc1xuIik7CisJCXJldHVybiBmYWxzZTsKKwl9 CisKKwltZW1jcHkoJmF2aV9pZlsxXSwgZnJhbWUsIGxlbik7CisKKwlpZiAoIV9sc3Bjb25fcGFy YWRlX3dyaXRlX2luZm9mcmFtZV9ibG9ja3MoYXV4LCBhdmlfaWYpKSB7CisJCURSTV9ERUJVR19L TVMoIkZhaWxlZCB0byB3cml0ZSBpbmZvZnJhbWUgYmxvY2tzXG4iKTsKKwkJcmV0dXJuIGZhbHNl OworCX0KKworCXJldHVybiB0cnVlOworfQorCiBzdGF0aWMgYm9vbCBfbHNwY29uX3dyaXRlX2F2 aV9pbmZvZnJhbWVfbWNhKHN0cnVjdCBkcm1fZHBfYXV4ICphdXgsCiAJCQkJCSAgICBjb25zdCB1 aW50OF90ICpidWZmZXIsIHNzaXplX3QgbGVuKQogewpAQCAtMzAzLDcgKzQxNCw3IEBAIHZvaWQg bHNwY29uX3dyaXRlX2luZm9mcmFtZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIAkJ CSAgICB1bnNpZ25lZCBpbnQgdHlwZSwKIAkJCSAgICBjb25zdCB2b2lkICpmcmFtZSwgc3NpemVf dCBsZW4pCiB7Ci0JYm9vbCByZXQgPSB0cnVlOworCWJvb2wgcmV0OwogCXN0cnVjdCBpbnRlbF9k cCAqaW50ZWxfZHAgPSBlbmNfdG9faW50ZWxfZHAoJmVuY29kZXItPmJhc2UpOwogCXN0cnVjdCBp bnRlbF9sc3Bjb24gKmxzcGNvbiA9IGVuY190b19pbnRlbF9sc3Bjb24oJmVuY29kZXItPmJhc2Up OwogCkBAIC0zMTQsNiArNDI1LDEwIEBAIHZvaWQgbHNwY29uX3dyaXRlX2luZm9mcmFtZShzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIAlpZiAobHNwY29uLT52ZW5kb3IgPT0gTFNQQ09O X1ZFTkRPUl9NQ0EpCiAJCXJldCA9IF9sc3Bjb25fd3JpdGVfYXZpX2luZm9mcmFtZV9tY2EoJmlu dGVsX2RwLT5hdXgsCiAJCQkJCQkgICAgICBmcmFtZSwgbGVuKTsKKwllbHNlCisJCXJldCA9IF9s c3Bjb25fd3JpdGVfYXZpX2luZm9mcmFtZV9wYXJhZGUoJmludGVsX2RwLT5hdXgsCisJCQkJCQkJ IGZyYW1lLCBsZW4pOworCiAJaWYgKCFyZXQpIHsKIAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gd3Jp dGUgQVZJIGluZm9mcmFtZXNcbiIpOwogCQlyZXR1cm47Ci0tIAoyLjcuNAoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==