From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brian Welty Subject: [RFC PATCH 4/9] drmcg: Add skeleton seq_show and write for drmcg files Date: Tue, 26 Jan 2021 13:46:21 -0800 Message-ID: <20210126214626.16260-5-brian.welty@intel.com> References: <20210126214626.16260-1-brian.welty@intel.com> Mime-Version: 1.0 Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20210126214626.16260-1-brian.welty@intel.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Content-Type: text/plain; charset="iso-8859-1" To: Brian Welty , cgroups@vger.kernel.org, Tejun Heo , dri-devel@lists.freedesktop.org, David Airlie , Daniel Vetter , =?UTF-8?q?Christian=20K=C3=B6nig?= , Kenny Ho , amd-gfx@lists.freedesktop.org, Chris Wilson , Tvrtko Ursulin , intel-gfx@lists.freedesktop.org, Joonas Lahtinen , Eero Tamminen QWRkIGJhc2ljIC5zZXFfc2hvdyBhbmQgLndyaXRlIGZ1bmN0aW9ucyBmb3IgdXNlIHdpdGggRFJN IGNncm91cCBjb250cm9sCmZpbGVzLiAgVGhpcyBpcyBiYXNlZCBvbiBvcmlnaW5hbCB3b3JrIGZy b20gS2VubnkgSG8gYW5kIGV4dHJhY3RlZCBmcm9tCnBhdGNoZXMgWzFdIGFuZCBbMl0uICBIYXMg YmVlbiBzaW1wbGlmaWVkIHRvIHJlbW92ZSBoYXZpbmcgZGlmZmVyZW50IGZpbGUKdHlwZXMgYW5k IGZ1bmN0aW9ucyBmb3IgZWFjaC4KClsxXSBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9h cmNoaXZlcy9kcmktZGV2ZWwvMjAyMC1GZWJydWFyeS8yNTQ5ODYuaHRtbApbMl0gaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvYXJjaGl2ZXMvZHJpLWRldmVsLzIwMjAtRmVicnVhcnkvMjU0 OTkwLmh0bWwKCkNvLWRldmVsb3BlZC1ieTogS2VubnkgSG8gPEtlbm55LkhvQGFtZC5jb20+ClNp Z25lZC1vZmYtYnk6IEJyaWFuIFdlbHR5IDxicmlhbi53ZWx0eUBpbnRlbC5jb20+Ci0tLQogaW5j bHVkZS9kcm0vZHJtX2Nncm91cC5oIHwgICA1ICsrCiBrZXJuZWwvY2dyb3VwL2RybS5jICAgICAg fCAxMDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAyIGZpbGVzIGNo YW5nZWQsIDEwNyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2Nn cm91cC5oIGIvaW5jbHVkZS9kcm0vZHJtX2Nncm91cC5oCmluZGV4IDQzY2FmMWI2YTBkZS4uMTI1 MjZkZWY5ZmJmIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fY2dyb3VwLmgKKysrIGIvaW5j bHVkZS9kcm0vZHJtX2Nncm91cC5oCkBAIC0xLDUgKzEsNiBAQAogLyogU1BEWC1MaWNlbnNlLUlk ZW50aWZpZXI6IE1JVAogICogQ29weXJpZ2h0IDIwMTkgQWR2YW5jZWQgTWljcm8gRGV2aWNlcywg SW5jLgorICogQ29weXJpZ2h0IMKpIDIwMjEgSW50ZWwgQ29ycG9yYXRpb24KICAqLwogI2lmbmRl ZiBfX0RSTV9DR1JPVVBfSF9fCiAjZGVmaW5lIF9fRFJNX0NHUk9VUF9IX18KQEAgLTE1LDYgKzE2 LDEwIEBAIHN0cnVjdCBkcm1fZGV2aWNlOwogc3RydWN0IGRybWNnX3Byb3BzIHsKIH07CiAKK2Vu dW0gZHJtY2dfcmVzX3R5cGUgeworCV9fRFJNQ0dfVFlQRV9MQVNULAorfTsKKwogI2lmZGVmIENP TkZJR19DR1JPVVBfRFJNCiAKIHZvaWQgZHJtY2dfYmluZChzdHJ1Y3QgZHJtX21pbm9yICgqKCph Y3FfZG0pKHVuc2lnbmVkIGludCBtaW5vcl9pZCkpLApkaWZmIC0tZ2l0IGEva2VybmVsL2Nncm91 cC9kcm0uYyBiL2tlcm5lbC9jZ3JvdXAvZHJtLmMKaW5kZXggODM2OTI5YzI3ZGU4Li5hZWNlMTFm YWEwYmMgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9jZ3JvdXAvZHJtLmMKKysrIGIva2VybmVsL2Nncm91 cC9kcm0uYwpAQCAtNSw2ICs1LDcgQEAKICAqLwogI2luY2x1ZGUgPGxpbnV4L2JpdG1hcC5oPgog I2luY2x1ZGUgPGxpbnV4L211dGV4Lmg+CisjaW5jbHVkZSA8bGludXgvc2VxX2ZpbGUuaD4KICNp bmNsdWRlIDxsaW51eC9zbGFiLmg+CiAjaW5jbHVkZSA8bGludXgvY2dyb3VwLmg+CiAjaW5jbHVk ZSA8bGludXgvY2dyb3VwX2RybS5oPgpAQCAtMTIsNiArMTMsNyBAQAogI2luY2x1ZGUgPGRybS9k cm1fZHJ2Lmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9kZXZpY2UuaD4KICNpbmNsdWRlIDxkcm0vZHJt X2Nncm91cC5oPgorI2luY2x1ZGUgPGRybS9kcm1faW9jdGwuaD4KIAogc3RhdGljIHN0cnVjdCBk cm1jZyAqcm9vdF9kcm1jZyBfX3JlYWRfbW9zdGx5OwogCkBAIC0yMjIsNiArMjI0LDEwNiBAQCBk cm1jZ19jc3NfYWxsb2Moc3RydWN0IGNncm91cF9zdWJzeXNfc3RhdGUgKnBhcmVudF9jc3MpCiAJ cmV0dXJuICZkcm1jZy0+Y3NzOwogfQogCitzdGF0aWMgaW50IGRybWNnX2FwcGx5X3ZhbHVlKHN0 cnVjdCBkcm1jZ19kZXZpY2VfcmVzb3VyY2UgKmRkciwKKwkJCSAgICAgZW51bSBkcm1jZ19yZXNf dHlwZSB0eXBlLCBjaGFyICpidWYpCit7CisJaW50IHJldCA9IDA7CisJdW5zaWduZWQgbG9uZyB2 YWw7CisKKwlzd2l0Y2ggKHR5cGUpIHsKKwlkZWZhdWx0OgorCQlicmVhazsKKwl9CisKKwlyZXR1 cm4gcmV0OworfQorCitzdGF0aWMgaW50IGRybWNnX3NlcV9zaG93X2ZuKGludCBpZCwgdm9pZCAq cHRyLCB2b2lkICpkYXRhKQoreworCXN0cnVjdCBkcm1fbWlub3IgKm1pbm9yID0gcHRyOworCXN0 cnVjdCBzZXFfZmlsZSAqc2YgPSBkYXRhOworCXN0cnVjdCBkcm1jZyAqZHJtY2cgPSBjc3NfdG9f ZHJtY2coc2VxX2NzcyhzZikpOworCWVudW0gZHJtY2dfcmVzX3R5cGUgdHlwZSA9IHNlcV9jZnQo c2YpLT5wcml2YXRlOworCXN0cnVjdCBkcm1jZ19kZXZpY2VfcmVzb3VyY2UgKmRkcjsKKworCWlm IChtaW5vci0+dHlwZSAhPSBEUk1fTUlOT1JfUFJJTUFSWSkKKwkJcmV0dXJuIDA7CisKKwlkZHIg PSBkcm1jZy0+ZGV2X3Jlc291cmNlc1ttaW5vci0+aW5kZXhdOworCWlmIChkZHIgPT0gTlVMTCkK KwkJcmV0dXJuIDA7CisKKwlzZXFfcHJpbnRmKHNmLCAiJWQ6JWQgIiwgRFJNX01BSk9SLCBtaW5v ci0+aW5kZXgpOworCXN3aXRjaCAodHlwZSkgeworCWRlZmF1bHQ6CisJCXNlcV9wdXRzKHNmLCAi XG4iKTsKKwkJYnJlYWs7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZHJtY2df c2VxX3Nob3coc3RydWN0IHNlcV9maWxlICpzZiwgdm9pZCAqdikKK3sKKwlyZXR1cm4gZHJtX21p bm9yX2Zvcl9lYWNoKCZkcm1jZ19zZXFfc2hvd19mbiwgc2YpOworfQorCitzdGF0aWMgc3NpemVf dCBkcm1jZ193cml0ZShzdHJ1Y3Qga2VybmZzX29wZW5fZmlsZSAqb2YsIGNoYXIgKmJ1ZiwKKwkJ CSAgIHNpemVfdCBuYnl0ZXMsIGxvZmZfdCBvZmYpCit7CisJc3RydWN0IGRybWNnICpkcm1jZyA9 IGNzc190b19kcm1jZyhvZl9jc3Mob2YpKTsKKwllbnVtIGRybWNnX3Jlc190eXBlIHR5cGUgPSBv Zl9jZnQob2YpLT5wcml2YXRlOworCWNoYXIgKmNmdF9uYW1lID0gb2ZfY2Z0KG9mKS0+bmFtZTsK KwljaGFyICpsaW1pdHMgPSBzdHJzdHJpcChidWYpOworCXN0cnVjdCBkcm1jZ19kZXZpY2VfcmVz b3VyY2UgKmRkcjsKKwlzdHJ1Y3QgZHJtX21pbm9yICpkbTsKKwljaGFyICpsaW5lOworCWNoYXIg c2F0dHJbMjU2XTsKKwlpbnQgbWlub3IsIHJldCA9IDA7CisKKwl3aGlsZSAoIXJldCAmJiBsaW1p dHMgIT0gTlVMTCkgeworCQlsaW5lID0gIHN0cnNlcCgmbGltaXRzLCAiXG4iKTsKKworCQlpZiAo c3NjYW5mKGxpbmUsCisJCQlfX3N0cmluZ2lmeShEUk1fTUFKT1IpIjoldSAlMjU1W15cdFxuXSIs CisJCQkJCQkJJm1pbm9yLCBzYXR0cikgIT0gMikgeworCQkJcHJfZXJyKCJkcm1jZzogZXJyb3Ig cGFyc2luZyAlcyAiLCBjZnRfbmFtZSk7CisJCQlwcl9jb250X2Nncm91cF9uYW1lKGRybWNnLT5j c3MuY2dyb3VwKTsKKwkJCXByX2NvbnQoIlxuIik7CisKKwkJCWNvbnRpbnVlOworCQl9CisKKwkJ bXV0ZXhfbG9jaygmZHJtY2dfbXV0ZXgpOworCQlpZiAoYWNxdWlyZV9kcm1fbWlub3IpCisJCQlk bSA9IGFjcXVpcmVfZHJtX21pbm9yKG1pbm9yKTsKKwkJZWxzZQorCQkJZG0gPSBOVUxMOworCQlt dXRleF91bmxvY2soJmRybWNnX211dGV4KTsKKworCQlpZiAoSVNfRVJSX09SX05VTEwoZG0pKSB7 CisJCQlwcl9lcnIoImRybWNnOiBpbnZhbGlkIG1pbm9yICVkIGZvciAlcyAiLAorCQkJCQltaW5v ciwgY2Z0X25hbWUpOworCQkJcHJfY29udF9jZ3JvdXBfbmFtZShkcm1jZy0+Y3NzLmNncm91cCk7 CisJCQlwcl9jb250KCJcbiIpOworCisJCQljb250aW51ZTsKKwkJfQorCisJCW11dGV4X2xvY2so JmRtLT5kZXYtPmRybWNnX211dGV4KTsKKwkJZGRyID0gZHJtY2ctPmRldl9yZXNvdXJjZXNbbWlu b3JdOworCQlyZXQgPSBkcm1jZ19hcHBseV92YWx1ZShkZHIsIHR5cGUsIHNhdHRyKTsKKwkJbXV0 ZXhfdW5sb2NrKCZkbS0+ZGV2LT5kcm1jZ19tdXRleCk7CisKKwkJbXV0ZXhfbG9jaygmZHJtY2df bXV0ZXgpOworCQlpZiAocHV0X2RybV9kZXYpCisJCQlwdXRfZHJtX2RldihkbS0+ZGV2KTsgLyog cmVsZWFzZSBmcm9tIGFjcXVpcmVfZHJtX21pbm9yICovCisJCW11dGV4X3VubG9jaygmZHJtY2df bXV0ZXgpOworCX0KKworCXJldHVybiByZXQgPzogbmJ5dGVzOworfQorCiBzdHJ1Y3QgY2Z0eXBl IGZpbGVzW10gPSB7CiAJeyB9CS8qIHRlcm1pbmF0ZSAqLwogfTsKLS0gCjIuMjAuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==