From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: [PATCH 1/3] drm/amd/amdgpu: Convert ring debugfs entries to binary Date: Thu, 2 Jun 2016 10:25:15 -0400 Message-ID: <1464877517-28337-1-git-send-email-alexander.deucher@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qk0-x243.google.com (mail-qk0-x243.google.com [IPv6:2607:f8b0:400d:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id B385C6EBB0 for ; Thu, 2 Jun 2016 14:25:23 +0000 (UTC) Received: by mail-qk0-x243.google.com with SMTP id i187so107320qkd.1 for ; Thu, 02 Jun 2016 07:25:23 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Tom St Denis , Alex Deucher List-Id: dri-devel@lists.freedesktop.org RnJvbTogVG9tIFN0IERlbmlzIDx0b20uc3RkZW5pc0BhbWQuY29tPgoKVGhleSBub3cgZW1pdCBy aW5nIGRhdGEgaW4gYmluYXJ5IHdoaWNoIHdpbGwgYmUgcmVhZC93cml0dGVuIGJ5CnRoZSB1c2Vy c3BhY2UgdG9vbCB1bXIgc2hvcnRseS4KClNpZ25lZC1vZmYtYnk6IFRvbSBTdCBEZW5pcyA8dG9t LnN0ZGVuaXNAYW1kLmNvbT4KUmV2aWV3ZWQtYnk6IENocmlzdGlhbiBLw7ZuaWcgPGNocmlzdGlh bi5rb2VuaWdAYW1kLmNvbT4KU2lnbmVkLW9mZi1ieTogQWxleCBEZXVjaGVyIDxhbGV4YW5kZXIu ZGV1Y2hlckBhbWQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9y aW5nLmMgfCAxMjcgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDYyIGluc2VydGlvbnMoKyksIDY1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9yaW5nLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfcmluZy5jCmluZGV4IDNiMDIyNzIuLjdlMWJjNzMgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9yaW5nLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3JpbmcuYwpAQCAtMjgsNiArMjgsNyBAQAogICovCiAj aW5jbHVkZSA8bGludXgvc2VxX2ZpbGUuaD4KICNpbmNsdWRlIDxsaW51eC9zbGFiLmg+CisjaW5j bHVkZSA8bGludXgvZGVidWdmcy5oPgogI2luY2x1ZGUgPGRybS9kcm1QLmg+CiAjaW5jbHVkZSA8 ZHJtL2FtZGdwdV9kcm0uaD4KICNpbmNsdWRlICJhbWRncHUuaCIKQEAgLTM2NCw1NyArMzY1LDYy IEBAIHZvaWQgYW1kZ3B1X3JpbmdfZmluaShzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcpCiAgKi8K ICNpZiBkZWZpbmVkKENPTkZJR19ERUJVR19GUykKIAotc3RhdGljIGludCBhbWRncHVfZGVidWdm c19yaW5nX2luZm8oc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpkYXRhKQorLyogTGF5b3V0IG9m IGZpbGUgaXMgMTIgYnl0ZXMgY29uc2lzdGluZyBvZgorICogLSBycHRyCisgKiAtIHdwdHIKKyAq IC0gZHJpdmVyJ3MgY29weSBvZiB3cHRyCisgKgorICogZm9sbG93ZWQgYnkgbi13b3JkcyBvZiBy aW5nIGRhdGEKKyAqLworc3RhdGljIHNzaXplX3QgYW1kZ3B1X2RlYnVnZnNfcmluZ19yZWFkKHN0 cnVjdCBmaWxlICpmLCBjaGFyIF9fdXNlciAqYnVmLAorCQkJCQlzaXplX3Qgc2l6ZSwgbG9mZl90 ICpwb3MpCiB7Ci0Jc3RydWN0IGRybV9pbmZvX25vZGUgKm5vZGUgPSAoc3RydWN0IGRybV9pbmZv X25vZGUgKikgbS0+cHJpdmF0ZTsKLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gbm9kZS0+bWlu b3ItPmRldjsKLQlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IGRldi0+ZGV2X3ByaXZhdGU7 Ci0JaW50IHJvZmZzZXQgPSAodW5zaWduZWQgbG9uZylub2RlLT5pbmZvX2VudC0+ZGF0YTsKLQlz dHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcgPSAodm9pZCAqKSgoKHVpbnQ4X3QqKWFkZXYpICsgcm9m ZnNldCk7Ci0JdWludDMyX3QgcnB0ciwgd3B0ciwgcnB0cl9uZXh0OwotCXVuc2lnbmVkIGk7Ci0K LQl3cHRyID0gYW1kZ3B1X3JpbmdfZ2V0X3dwdHIocmluZyk7Ci0Jc2VxX3ByaW50ZihtLCAid3B0 cjogMHglMDh4IFslNWRdXG4iLCB3cHRyLCB3cHRyKTsKLQotCXJwdHIgPSBhbWRncHVfcmluZ19n ZXRfcnB0cihyaW5nKTsKLQlycHRyX25leHQgPSBsZTMyX3RvX2NwdSgqcmluZy0+bmV4dF9ycHRy X2NwdV9hZGRyKTsKLQotCXNlcV9wcmludGYobSwgInJwdHI6IDB4JTA4eCBbJTVkXVxuIiwgcnB0 ciwgcnB0cik7Ci0KLQlzZXFfcHJpbnRmKG0sICJkcml2ZXIncyBjb3B5IG9mIHRoZSB3cHRyOiAw eCUwOHggWyU1ZF1cbiIsCi0JCSAgIHJpbmctPndwdHIsIHJpbmctPndwdHIpOwotCi0JaWYgKCFy aW5nLT5yZWFkeSkKLQkJcmV0dXJuIDA7Ci0KLQkvKiBwcmludCA4IGR3IGJlZm9yZSBjdXJyZW50 IHJwdHIgYXMgb2Z0ZW4gaXQncyB0aGUgbGFzdCBleGVjdXRlZAotCSAqIHBhY2tldCB0aGF0IGlz IHRoZSByb290IGlzc3VlCi0JICovCi0JaSA9IChycHRyICsgcmluZy0+cHRyX21hc2sgKyAxIC0g MzIpICYgcmluZy0+cHRyX21hc2s7Ci0Jd2hpbGUgKGkgIT0gcnB0cikgewotCQlzZXFfcHJpbnRm KG0sICJyWyU1ZF09MHglMDh4IiwgaSwgcmluZy0+cmluZ1tpXSk7Ci0JCWlmIChpID09IHJwdHIp Ci0JCQlzZXFfcHV0cyhtLCAiICoiKTsKLQkJaWYgKGkgPT0gcnB0cl9uZXh0KQotCQkJc2VxX3B1 dHMobSwgIiAjIik7Ci0JCXNlcV9wdXRzKG0sICJcbiIpOwotCQlpID0gKGkgKyAxKSAmIHJpbmct PnB0cl9tYXNrOworCXN0cnVjdCBhbWRncHVfcmluZyAqcmluZyA9IChzdHJ1Y3QgYW1kZ3B1X3Jp bmcqKWYtPmZfaW5vZGUtPmlfcHJpdmF0ZTsKKwlpbnQgciwgaTsKKwl1aW50MzJfdCB2YWx1ZSwg cmVzdWx0LCBlYXJseVszXTsKKworCWlmICgqcG9zICYgMykKKwkJcmV0dXJuIC1FSU5WQUw7CisK KwlyZXN1bHQgPSAwOworCisJaWYgKCpwb3MgPCAxMikgeworCQllYXJseVswXSA9IGFtZGdwdV9y aW5nX2dldF9ycHRyKHJpbmcpOworCQllYXJseVsxXSA9IGFtZGdwdV9yaW5nX2dldF93cHRyKHJp bmcpOworCQllYXJseVsyXSA9IHJpbmctPndwdHI7CisJCWZvciAoaSA9ICpwb3MgLyA0OyBpIDwg MyAmJiBzaXplOyBpKyspIHsKKwkJCXIgPSBwdXRfdXNlcihlYXJseVtpXSwgKHVpbnQzMl90ICop YnVmKTsKKwkJCWlmIChyKQorCQkJCXJldHVybiByOworCQkJYnVmICs9IDQ7CisJCQlyZXN1bHQg Kz0gNDsKKwkJCXNpemUgLT0gNDsKKwkJCSpwb3MgKz0gNDsKKwkJfQogCX0KLQl3aGlsZSAoaSAh PSB3cHRyKSB7Ci0JCXNlcV9wcmludGYobSwgInJbJTVkXT0weCUwOHgiLCBpLCByaW5nLT5yaW5n W2ldKTsKLQkJaWYgKGkgPT0gcnB0cikKLQkJCXNlcV9wdXRzKG0sICIgKiIpOwotCQlpZiAoaSA9 PSBycHRyX25leHQpCi0JCQlzZXFfcHV0cyhtLCAiICMiKTsKLQkJc2VxX3B1dHMobSwgIlxuIik7 Ci0JCWkgPSAoaSArIDEpICYgcmluZy0+cHRyX21hc2s7CisKKwl3aGlsZSAoc2l6ZSkgeworCQlp ZiAoKnBvcyA+PSAocmluZy0+cmluZ19zaXplICsgMTIpKQorCQkJcmV0dXJuIHJlc3VsdDsKKwkJ CQorCQl2YWx1ZSA9IHJpbmctPnJpbmdbKCpwb3MgLSAxMikvNF07CisJCXIgPSBwdXRfdXNlcih2 YWx1ZSwgKHVpbnQzMl90KilidWYpOworCQlpZiAocikKKwkJCXJldHVybiByOworCQlidWYgKz0g NDsKKwkJcmVzdWx0ICs9IDQ7CisJCXNpemUgLT0gNDsKKwkJKnBvcyArPSA0OwogCX0KLQlyZXR1 cm4gMDsKKworCXJldHVybiByZXN1bHQ7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgZHJtX2luZm9fbGlz dCBhbWRncHVfZGVidWdmc19yaW5nX2luZm9fbGlzdFtBTURHUFVfTUFYX1JJTkdTXTsKLXN0YXRp YyBjaGFyIGFtZGdwdV9kZWJ1Z2ZzX3JpbmdfbmFtZXNbQU1ER1BVX01BWF9SSU5HU11bMzJdOwor c3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgYW1kZ3B1X2RlYnVnZnNfcmluZ19m b3BzID0geworCS5vd25lciA9IFRISVNfTU9EVUxFLAorCS5yZWFkID0gYW1kZ3B1X2RlYnVnZnNf cmluZ19yZWFkLAorCS5sbHNlZWsgPSBkZWZhdWx0X2xsc2VlaworfTsKIAogI2VuZGlmCiAKQEAg LTQyMiwyOCArNDI4LDE5IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2RlYnVnZnNfcmluZ19pbml0KHN0 cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAogCQkJCSAgICBzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJp bmcpCiB7CiAjaWYgZGVmaW5lZChDT05GSUdfREVCVUdfRlMpCi0JdW5zaWduZWQgb2Zmc2V0ID0g KHVpbnQ4X3QqKXJpbmcgLSAodWludDhfdCopYWRldjsKLQl1bnNpZ25lZCBpOwotCXN0cnVjdCBk cm1faW5mb19saXN0ICppbmZvOwotCWNoYXIgKm5hbWU7Ci0KLQlmb3IgKGkgPSAwOyBpIDwgQVJS QVlfU0laRShhbWRncHVfZGVidWdmc19yaW5nX2luZm9fbGlzdCk7ICsraSkgewotCQlpbmZvID0g JmFtZGdwdV9kZWJ1Z2ZzX3JpbmdfaW5mb19saXN0W2ldOwotCQlpZiAoIWluZm8tPmRhdGEpCi0J CQlicmVhazsKLQl9CisJc3RydWN0IGRybV9taW5vciAqbWlub3IgPSBhZGV2LT5kZGV2LT5wcmlt YXJ5OworCXN0cnVjdCBkZW50cnkgKmVudCwgKnJvb3QgPSBtaW5vci0+ZGVidWdmc19yb290Owor CWNoYXIgbmFtZVszMl07CiAKLQlpZiAoaSA9PSBBUlJBWV9TSVpFKGFtZGdwdV9kZWJ1Z2ZzX3Jp bmdfaW5mb19saXN0KSkKLQkJcmV0dXJuIC1FTk9TUEM7Ci0KLQluYW1lID0gJmFtZGdwdV9kZWJ1 Z2ZzX3JpbmdfbmFtZXNbaV1bMF07CiAJc3ByaW50ZihuYW1lLCAiYW1kZ3B1X3JpbmdfJXMiLCBy aW5nLT5uYW1lKTsKLQlpbmZvLT5uYW1lID0gbmFtZTsKLQlpbmZvLT5zaG93ID0gYW1kZ3B1X2Rl YnVnZnNfcmluZ19pbmZvOwotCWluZm8tPmRyaXZlcl9mZWF0dXJlcyA9IDA7Ci0JaW5mby0+ZGF0 YSA9ICh2b2lkKikodWludHB0cl90KW9mZnNldDsKIAotCXJldHVybiBhbWRncHVfZGVidWdmc19h ZGRfZmlsZXMoYWRldiwgaW5mbywgMSk7CisJZW50ID0gZGVidWdmc19jcmVhdGVfZmlsZShuYW1l LAorCQkJCSAgU19JRlJFRyB8IFNfSVJVR08sIHJvb3QsCisJCQkJICByaW5nLCAmYW1kZ3B1X2Rl YnVnZnNfcmluZ19mb3BzKTsKKwlpZiAoSVNfRVJSKGVudCkpCisJCXJldHVybiBQVFJfRVJSKGVu dCk7CisKKwlpX3NpemVfd3JpdGUoZW50LT5kX2lub2RlLCByaW5nLT5yaW5nX3NpemUgKyAxMik7 CiAjZW5kaWYKIAlyZXR1cm4gMDsKIH0KLS0gCjIuNS41CgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZl bEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9kcmktZGV2ZWwK