From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH 7/7] drm/tegra: Add kerneldoc for UAPI Date: Thu, 17 May 2018 17:41:32 +0200 Message-ID: <20180517154132.10058-8-thierry.reding@gmail.com> References: <20180517154132.10058-1-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180517154132.10058-1-thierry.reding@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Thierry Reding Cc: linux-tegra@vger.kernel.org, Dmitry Osipenko , dri-devel@lists.freedesktop.org, Mikko Perttunen List-Id: linux-tegra@vger.kernel.org RnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KCkRvY3VtZW50IHRoZSB1 c2Vyc3BhY2UgQUJJIHdpdGgga2VybmVsZG9jIHRvIHByb3ZpZGUgc29tZSBpbmZvcm1hdGlvbiBv bgpob3cgdG8gdXNlIGl0LgoKU2lnbmVkLW9mZi1ieTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdA bnZpZGlhLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vdGVncmEvZ2VtLmMgIHwgICA0ICstCiBp bmNsdWRlL3VhcGkvZHJtL3RlZ3JhX2RybS5oIHwgNDgwICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystCiAyIGZpbGVzIGNoYW5nZWQsIDQ2OCBpbnNlcnRpb25zKCspLCAxNiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZ2VtLmMgYi9kcml2 ZXJzL2dwdS9kcm0vdGVncmEvZ2VtLmMKaW5kZXggMzg3YmExZGZiZTBkLi5lMjk4N2ExOTU0MWQg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9nZW0uYworKysgYi9kcml2ZXJzL2dw dS9kcm0vdGVncmEvZ2VtLmMKQEAgLTI5MSwxMCArMjkxLDEwIEBAIHN0cnVjdCB0ZWdyYV9ibyAq dGVncmFfYm9fY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sIHNpemVfdCBzaXplLAogCWlm IChlcnIgPCAwKQogCQlnb3RvIHJlbGVhc2U7CiAKLQlpZiAoZmxhZ3MgJiBEUk1fVEVHUkFfR0VN X0NSRUFURV9USUxFRCkKKwlpZiAoZmxhZ3MgJiBEUk1fVEVHUkFfR0VNX1RJTEVEKQogCQliby0+ dGlsaW5nLm1vZGUgPSBURUdSQV9CT19USUxJTkdfTU9ERV9USUxFRDsKIAotCWlmIChmbGFncyAm IERSTV9URUdSQV9HRU1fQ1JFQVRFX0JPVFRPTV9VUCkKKwlpZiAoZmxhZ3MgJiBEUk1fVEVHUkFf R0VNX0JPVFRPTV9VUCkKIAkJYm8tPmZsYWdzIHw9IFRFR1JBX0JPX0JPVFRPTV9VUDsKIAogCXJl dHVybiBibzsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vdGVncmFfZHJtLmggYi9pbmNs dWRlL3VhcGkvZHJtL3RlZ3JhX2RybS5oCmluZGV4IDk5ZTE1ZDgyZDFlOS4uODZhN2IxZTc1NTlk IDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL3RlZ3JhX2RybS5oCisrKyBiL2luY2x1ZGUv dWFwaS9kcm0vdGVncmFfZHJtLmgKQEAgLTI5LDE0NiArMjksNTk4IEBACiBleHRlcm4gIkMiIHsK ICNlbmRpZgogCi0jZGVmaW5lIERSTV9URUdSQV9HRU1fQ1JFQVRFX1RJTEVEICAgICAoMSA8PCAw KQotI2RlZmluZSBEUk1fVEVHUkFfR0VNX0NSRUFURV9CT1RUT01fVVAgKDEgPDwgMSkKKyNkZWZp bmUgRFJNX1RFR1JBX0dFTV9USUxFRAkJKDEgPDwgMCkKKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9C T1RUT01fVVAJCSgxIDw8IDEpCisjZGVmaW5lIERSTV9URUdSQV9HRU1fRkxBR1MJCShEUk1fVEVH UkFfR0VNX1RJTEVEIHwgXAorCQkJCQkgRFJNX1RFR1JBX0dFTV9CT1RUT01fVVApCiAKKy8qKgor ICogc3RydWN0IGRybV90ZWdyYV9nZW1fY3JlYXRlIC0gcGFyYW1ldGVycyBmb3IgdGhlIEdFTSBv YmplY3QgY3JlYXRpb24gSU9DVEwKKyAqLwogc3RydWN0IGRybV90ZWdyYV9nZW1fY3JlYXRlIHsK KwkvKioKKwkgKiBAc2l6ZToKKwkgKgorCSAqIFRoZSBzaXplLCBpbiBieXRlcywgb2YgdGhlIGJ1 ZmZlciBvYmplY3QgdG8gYmUgY3JlYXRlZC4KKwkgKi8KIAlfX3U2NCBzaXplOworCisJLyoqCisJ ICogQGZsYWdzOgorCSAqCisJICogQSBiaXRtYXNrIG9mIGZsYWdzIHRoYXQgaW5mbHVlbmNlIHRo ZSBjcmVhdGlvbiBvZiBHRU0gb2JqZWN0czoKKwkgKgorCSAqIERSTV9URUdSQV9HRU1fVElMRUQK KwkgKiAgIFVzZSB0aGUgMTZ4MTYgdGlsaW5nIGZvcm1hdCBmb3IgdGhpcyBidWZmZXIuCisJICoK KwkgKiBEUk1fVEVHUkFfR0VNX0JPVFRPTV9VUAorCSAqICAgVGhlIGJ1ZmZlciBoYXMgYSBib3R0 b20tdXAgbGF5b3V0LgorCSAqLwogCV9fdTMyIGZsYWdzOworCisJLyoqCisJICogQGhhbmRsZToK KwkgKgorCSAqIFJldHVybiBsb2NhdGlvbiBmb3IgdGhlIGhhbmRsZSBvZiB0aGUgY3JlYXRlZCBH RU0gb2JqZWN0LgorCSAqLwogCV9fdTMyIGhhbmRsZTsKIH07CiAKKy8qKgorICogc3RydWN0IGRy bV90ZWdyYV9nZW1fbW1hcCAtIHBhcmFtZXRlcnMgZm9yIHRoZSBHRU0gbW1hcCBJT0NUTAorICov CiBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9tbWFwIHsKKwkvKioKKwkgKiBAaGFuZGxlOgorCSAqCisJ ICogSGFuZGxlIG9mIHRoZSBHRU0gb2JqZWN0IHRvIG9idGFpbiBhbiBtbWFwIG9mZnNldCBmb3Iu CisJICovCiAJX191MzIgaGFuZGxlOworCisJLyoqCisJICogQHBhZDoKKwkgKgorCSAqIFN0cnVj dHVyZSBwYWRkaW5nIHRoYXQgbWF5IGJlIHVzZWQgaW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgor CSAqLwogCV9fdTMyIHBhZDsKKworCS8qKgorCSAqIEBvZmZzZXQ6CisJICoKKwkgKiBSZXR1cm4g bG9jYXRpb24gZm9yIHRoZSBtbWFwIG9mZnNldCBmb3IgdGhlIGdpdmVuIEdFTSBvYmplY3QuCisJ ICovCiAJX191NjQgb2Zmc2V0OwogfTsKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNw dF9yZWFkIC0gcGFyYW1ldGVycyBmb3IgdGhlIHJlYWQgc3luY3BvaW50IElPQ1RMCisgKi8KIHN0 cnVjdCBkcm1fdGVncmFfc3luY3B0X3JlYWQgeworCS8qKgorCSAqIEBpZDoKKwkgKgorCSAqIElE IG9mIHRoZSBzeW5jcG9pbnQgdG8gcmVhZCB0aGUgY3VycmVudCB2YWx1ZSBmcm9tLgorCSAqLwog CV9fdTMyIGlkOworCisJLyoqCisJICogQHZhbHVlOgorCSAqCisJICogUmV0dXJuIGxvY2F0aW9u IGZvciB0aGUgY3VycmVudCBzeW5jcG9pbnQgdmFsdWUuCisJICovCiAJX191MzIgdmFsdWU7CiB9 OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X2luY3IgLSBwYXJhbWV0ZXJzIGZv ciB0aGUgaW5jcmVtZW50IHN5bmNwb2ludCBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5 bmNwdF9pbmNyIHsKKwkvKioKKwkgKiBAaWQ6CisJICoKKwkgKiBJRCBvZiB0aGUgc3luY3BvaW50 IHRvIHJlYWQgdGhlIGN1cnJlbnQgdmFsdWUgZnJvbS4KKwkgKi8KIAlfX3UzMiBpZDsKKworCS8q KgorCSAqIEBwYWQ6CisJICoKKwkgKiBTdHJ1Y3R1cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2Vk IGluIHRoZSBmdXR1cmUuIE11c3QgYmUgMC4KKwkgKi8KIAlfX3UzMiBwYWQ7CiB9OwogCisvKioK KyAqIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3dhaXQgLSBwYXJhbWV0ZXJzIGZvciB0aGUgd2Fp dCBzeW5jcG9pbnQgSU9DVEwKKyAqLwogc3RydWN0IGRybV90ZWdyYV9zeW5jcHRfd2FpdCB7CisJ LyoqCisJICogQGlkOgorCSAqCisJICogSUQgb2YgdGhlIHN5bmNwb2ludCB0byB3YWl0IG9uLgor CSAqLwogCV9fdTMyIGlkOworCisJLyoqCisJICogQHRocmVzaDoKKwkgKgorCSAqIFRocmVzaG9s ZCB2YWx1ZSBmb3Igd2hpY2ggdG8gd2FpdC4KKwkgKi8KIAlfX3UzMiB0aHJlc2g7CisKKwkvKioK KwkgKiBAdGltZW91dDoKKwkgKgorCSAqIFRpbWVvdXQsIGluIG1pbGxpc2Vjb25kcywgdG8gd2Fp dC4KKwkgKi8KIAlfX3UzMiB0aW1lb3V0OworCisJLyoqCisJICogQHZhbHVlOgorCSAqCisJICog UmV0dXJuIHZhbHVlIGZvciB0aGUgY3VycmVudCBzeW5jcG9pbnQgdmFsdWUuCisJICovCiAJX191 MzIgdmFsdWU7CiB9OwogCiAjZGVmaW5lIERSTV9URUdSQV9OT19USU1FT1VUCSgweGZmZmZmZmZm KQogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfb3Blbl9jaGFubmVsIC0gcGFyYW1ldGVycyBm b3IgdGhlIG9wZW4gY2hhbm5lbCBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX29wZW5fY2hh bm5lbCB7CisJLyoqCisJICogQGNsaWVudDoKKwkgKgorCSAqIFRoZSBjbGllbnQgSUQgZm9yIHRo aXMgY2hhbm5lbC4KKwkgKi8KIAlfX3UzMiBjbGllbnQ7CisKKwkvKioKKwkgKiBAcGFkOgorCSAq CisJICogU3RydWN0dXJlIHBhZGRpbmcgdGhhdCBtYXkgYmUgdXNlZCBpbiB0aGUgZnV0dXJlLiBN dXN0IGJlIDAuCisJICovCiAJX191MzIgcGFkOworCisJLyoqCisJICogQGNvbnRleHQ6CisJICoK KwkgKiBSZXR1cm4gbG9jYXRpb24gZm9yIHRoZSBhcHBsaWNhdGlvbiBjb250ZXh0IG9mIHRoaXMg Y2hhbm5lbC4gVGhpcworCSAqIGNvbnRleHQgbmVlZHMgdG8gYmUgcGFzc2VkIHRvIHRoZSBEUk1f VEVHUkFfQ0hBTk5FTF9DTE9TRSBvciB0aGUKKwkgKiBEUk1fVEVHUkFfU1VCTUlUIElPQ1RMcy4K KwkgKi8KIAlfX3U2NCBjb250ZXh0OwogfTsKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX2Ns b3NlX2NoYW5uZWwgLSBwYXJhbWV0ZXJzIGZvciB0aGUgY2xvc2UgY2hhbm5lbCBJT0NUTAorICov CiBzdHJ1Y3QgZHJtX3RlZ3JhX2Nsb3NlX2NoYW5uZWwgeworCS8qKgorCSAqIEBjb250ZXh0Ogor CSAqCisJICogVGhlIGFwcGxpY2F0aW9uIGNvbnRleHQgb2YgdGhpcyBjaGFubmVsLiBUaGlzIGlz IG9idGFpbmVkIGZyb20gdGhlCisJICogRFJNX1RFR1JBX09QRU5fQ0hBTk5FTCBJT0NUTC4KKwkg Ki8KIAlfX3U2NCBjb250ZXh0OwogfTsKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX2dldF9z eW5jcHQgLSBwYXJhbWV0ZXJzIGZvciB0aGUgZ2V0IHN5bmNwb2ludCBJT0NUTAorICovCiBzdHJ1 Y3QgZHJtX3RlZ3JhX2dldF9zeW5jcHQgeworCS8qKgorCSAqIEBjb250ZXh0OgorCSAqCisJICog VGhlIGFwcGxpY2F0aW9uIGNvbnRleHQgaWRlbnRpZnlpbmcgdGhlIGNoYW5uZWwgZm9yIHdoaWNo IHRvIG9idGFpbgorCSAqIHRoZSBzeW5jcG9pbnQgSUQuCisJICovCiAJX191NjQgY29udGV4dDsK KworCS8qKgorCSAqIEBpbmRleDoKKwkgKgorCSAqIENoYW5uZWwtcmVsYXRpdmUgaW5kZXggb2Yg dGhlIHN5bmNwb2ludCBmb3Igd2hpY2ggdG8gb2J0YWluIHRoZSBJRC4KKwkgKi8KIAlfX3UzMiBp bmRleDsKKworCS8qKgorCSAqIEBpZDoKKwkgKgorCSAqIFJldHVybiBsb2NhdGlvbiBmb3IgdGhl IElEIG9mIHRoZSBnaXZlbiBzeW5jcG9pbnQuCisJICovCiAJX191MzIgaWQ7CiB9OwogCisvKioK KyAqIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdF9iYXNlIC0gcGFyYW1ldGVycyBmb3IgdGhl IGdldCB3YWl0IGJhc2UgSU9DVEwKKyAqLwogc3RydWN0IGRybV90ZWdyYV9nZXRfc3luY3B0X2Jh c2UgeworCS8qKgorCSAqIEBjb250ZXh0OgorCSAqCisJICogVGhlIGFwcGxpY2F0aW9uIGNvbnRl eHQgaWRlbnRpZnlpbmcgZm9yIHdoaWNoIGNoYW5uZWwgdG8gb2J0YWluIHRoZQorCSAqIHdhaXQg YmFzZS4KKwkgKi8KIAlfX3U2NCBjb250ZXh0OworCisJLyoqCisJICogQHN5bmNwdDoKKwkgKgor CSAqIElEIG9mIHRoZSBzeW5jcG9pbnQgZm9yIHdoaWNoIHRvIG9idGFpbiB0aGUgd2FpdCBiYXNl LgorCSAqLwogCV9fdTMyIHN5bmNwdDsKKworCS8qKgorCSAqIEBpZDoKKwkgKgorCSAqIFJldHVy biBsb2NhdGlvbiBmb3IgdGhlIElEIG9mIHRoZSB3YWl0IGJhc2UuCisJICovCiAJX191MzIgaWQ7 CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0IC0gc3luY3BvaW50IGluY3Jl bWVudCBvcGVyYXRpb24KKyAqLwogc3RydWN0IGRybV90ZWdyYV9zeW5jcHQgeworCS8qKgorCSAq IEBpZDoKKwkgKgorCSAqIElEIG9mIHRoZSBzeW5jcG9pbnQgdG8gb3BlcmF0ZSBvbi4KKwkgKi8K IAlfX3UzMiBpZDsKKworCS8qKgorCSAqIEBpbmNyczoKKwkgKgorCSAqIE51bWJlciBvZiBpbmNy ZW1lbnRzIHRvIHBlcmZvcm0gZm9yIHRoZSBzeW5jcG9pbnQuCisJICovCiAJX191MzIgaW5jcnM7 CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfY21kYnVmIC0gc3RydWN0dXJlIGRlc2Ny aWJpbmcgYSBjb21tYW5kIGJ1ZmZlcgorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2NtZGJ1ZiB7CisJ LyoqCisJICogQGhhbmRsZToKKwkgKgorCSAqIEhhbmRsZSB0byBhIEdFTSBvYmplY3QgY29udGFp bmluZyB0aGUgY29tbWFuZCBidWZmZXIuCisJICovCiAJX191MzIgaGFuZGxlOworCisJLyoqCisJ ICogQG9mZnNldDoKKwkgKgorCSAqIE9mZnNldCwgaW4gYnl0ZXMsIGludG8gdGhlIEdFTSBvYmpl Y3QgaWRlbnRpZmllZCBieSBAaGFuZGxlIGF0CisJICogd2hpY2ggdGhlIGNvbW1hbmQgYnVmZmVy IHN0YXJ0cy4KKwkgKi8KIAlfX3UzMiBvZmZzZXQ7CisKKwkvKioKKwkgKiBAd29yZHM6CisJICoK KwkgKiBOdW1iZXIgb2YgMzItYml0IHdvcmRzIGluIHRoaXMgY29tbWFuZCBidWZmZXIuCisJICov CiAJX191MzIgd29yZHM7CisKKwkvKioKKwkgKiBAcGFkOgorCSAqCisJICogU3RydWN0dXJlIHBh ZGRpbmcgdGhhdCBtYXkgYmUgdXNlZCBpbiB0aGUgZnV0dXJlLiBNdXN0IGJlIDAuCisJICovCiAJ X191MzIgcGFkOwogfTsKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX3JlbG9jIC0gR0VNIG9i amVjdCByZWxvY2F0aW9uIHN0cnVjdHVyZQorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX3JlbG9jIHsK IAlzdHJ1Y3QgeworCQkvKioKKwkJICogQGNtZGJ1Zi5oYW5kbGU6CisJCSAqCisJCSAqIEhhbmRs ZSB0byB0aGUgR0VNIG9iamVjdCBjb250YWluaW5nIHRoZSBjb21tYW5kIGJ1ZmZlciBmb3IKKwkJ ICogd2hpY2ggdG8gcGVyZm9ybSB0aGlzIEdFTSBvYmplY3QgcmVsb2NhdGlvbi4KKwkJICovCiAJ CV9fdTMyIGhhbmRsZTsKKworCQkvKioKKwkJICogQGNtZGJ1Zi5vZmZzZXQ6CisJCSAqCisJCSAq IE9mZnNldCBpbnRvIHRoZSBjb21tYW5kIGJ1ZmZlciBhdCB3aGljaCB0byBpbnNlcnQgdGhlIHRo ZQorCQkgKiByZWxvY2F0ZWQgYWRkcmVzcy4KKwkJICovCiAJCV9fdTMyIG9mZnNldDsKIAl9IGNt ZGJ1ZjsKIAlzdHJ1Y3QgeworCQkvKioKKwkJICogQHRhcmdldC5oYW5kbGU6CisJCSAqCisJCSAq IEhhbmRsZSB0byB0aGUgR0VNIG9iamVjdCB0byBiZSByZWxvY2F0ZWQuCisJCSAqLwogCQlfX3Uz MiBoYW5kbGU7CisKKwkJLyoqCisJCSAqIEB0YXJnZXQub2Zmc2V0OgorCQkgKgorCQkgKiBPZmZz ZXQgaW50byB0aGUgdGFyZ2V0IEdFTSBvYmplY3QgYXQgd2hpY2ggdGhlIHJlbG9jYXRlZAorCQkg KiBkYXRhIHN0YXJ0cy4KKwkJICovCiAJCV9fdTMyIG9mZnNldDsKIAl9IHRhcmdldDsKKworCS8q KgorCSAqIEBzaGlmdDoKKwkgKgorCSAqIFRoZSBudW1iZXIgb2YgYml0cyBieSB3aGljaCB0byBz aGlmdCByZWxvY2F0ZWQgYWRkcmVzc2VzLgorCSAqLwogCV9fdTMyIHNoaWZ0OworCisJLyoqCisJ ICogQHBhZDoKKwkgKgorCSAqIFN0cnVjdHVyZSBwYWRkaW5nIHRoYXQgbWF5IGJlIHVzZWQgaW4g dGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgorCSAqLwogCV9fdTMyIHBhZDsKIH07CiAKKy8qKgorICog c3RydWN0IGRybV90ZWdyYV93YWl0Y2hrIC0gd2FpdCBjaGVjayBzdHJ1Y3R1cmUKKyAqLwogc3Ry dWN0IGRybV90ZWdyYV93YWl0Y2hrIHsKKwkvKioKKwkgKiBAaGFuZGxlOgorCSAqCisJICogSGFu ZGxlIHRvIHRoZSBHRU0gb2JqZWN0IGNvbnRhaW5pbmcgYSBjb21tYW5kIHN0cmVhbSBvbiB3aGlj aCB0bworCSAqIHBlcmZvcm0gdGhlIHdhaXQgY2hlY2suCisJICovCiAJX191MzIgaGFuZGxlOwor CisJLyoqCisJICogQG9mZnNldDoKKwkgKgorCSAqIE9mZnNldCwgaW4gYnl0ZXMsIG9mIHRoZSBs b2NhdGlvbiBpbiB0aGUgY29tbWFuZCBzdHJlYW0gdG8gcGVyZm9ybQorCSAqIHRoZSB3YWl0IGNo ZWNrIG9uLgorCSAqLwogCV9fdTMyIG9mZnNldDsKKworCS8qKgorCSAqIEBzeW5jcHQ6CisJICoK KwkgKiBJRCBvZiB0aGUgc3luY3BvaW50IHRvIHdhaXQgY2hlY2suCisJICovCiAJX191MzIgc3lu Y3B0OworCisJLyoqCisJICogQHRocmVzaDoKKwkgKgorCSAqIFRocmVzaG9sZCB2YWx1ZSBmb3Ig d2hpY2ggdG8gY2hlY2suCisJICovCiAJX191MzIgdGhyZXNoOwogfTsKIAorLyoqCisgKiBzdHJ1 Y3QgZHJtX3RlZ3JhX3N1Ym1pdCAtIGpvYiBzdWJtaXNzaW9uIHN0cnVjdHVyZQorICovCiBzdHJ1 Y3QgZHJtX3RlZ3JhX3N1Ym1pdCB7CisJLyoqCisJICogQGNvbnRleHQ6CisJICoKKwkgKiBUaGUg YXBwbGljYXRpb24gY29udGV4dCBpZGVudGlmeWluZyB0aGUgY2hhbm5lbCB0byB1c2UgZm9yIHRo ZQorCSAqIGV4ZWN1dGlvbiBvZiB0aGlzIGpvYi4KKwkgKi8KIAlfX3U2NCBjb250ZXh0OworCisJ LyoqCisJICogQG51bV9zeW5jcHRzOgorCSAqCisJICogVGhlIG51bWJlciBvZiBzeW5jcG9pbnRz IG9wZXJhdGVkIG9uIGJ5IHRoaXMgam9iLgorCSAqLwogCV9fdTMyIG51bV9zeW5jcHRzOworCisJ LyoqCisJICogQG51bV9jbWRidWZzOgorCSAqCisJICogVGhlIG51bWJlciBvZiBjb21tYW5kIGJ1 ZmZlcnMgdG8gZXhlY3V0ZSBhcyBwYXJ0IG9mIHRoaXMgam9iLgorCSAqLwogCV9fdTMyIG51bV9j bWRidWZzOworCisJLyoqCisJICogQG51bV9yZWxvY3M6CisJICoKKwkgKiBUaGUgbnVtYmVyIG9m IHJlbG9jYXRpb25zIHRvIHBlcmZvcm0gYmVmb3JlIGV4ZWN1dGluZyB0aGlzIGpvYi4KKwkgKi8K IAlfX3UzMiBudW1fcmVsb2NzOworCisJLyoqCisJICogQG51bV93YWl0Y2hrczoKKwkgKgorCSAq IFRoZSBudW1iZXIgb2Ygd2FpdCBjaGVja3MgdG8gcGVyZm9ybSBhcyBwYXJ0IG9mIHRoaXMgam9i LgorCSAqLwogCV9fdTMyIG51bV93YWl0Y2hrczsKKworCS8qKgorCSAqIEB3YWl0Y2hrX21hc2s6 CisJICoKKwkgKiBCaXRtYXNrIG9mIHZhbGlkIHdhaXQgY2hlY2tzLgorCSAqLwogCV9fdTMyIHdh aXRjaGtfbWFzazsKKworCS8qKgorCSAqIEB0aW1lb3V0OgorCSAqCisJICogVGltZW91dCwgaW4g bWlsbGlzZWNvbmRzLCBiZWZvcmUgdGhpcyBqb2IgaXMgY2FuY2VsbGVkLgorCSAqLwogCV9fdTMy IHRpbWVvdXQ7CisKKwkvKioKKwkgKiBAc3luY3B0czoKKwkgKgorCSAqIEEgcG9pbnRlciB0byBA bnVtX3N5bmNwdHMgJnN0cnVjdCBkcm1fdGVncmFfc3luY3B0IHN0cnVjdHVyZXMgdGhhdAorCSAq IHNwZWNpZnkgdGhlIHN5bmNwb2ludCBvcGVyYXRpb25zIHBlcmZvcm1lZCBhcyBwYXJ0IG9mIHRo aXMgam9iLgorCSAqLwogCV9fdTY0IHN5bmNwdHM7CisKKwkvKioKKwkgKiBAY21kYnVmczoKKwkg KgorCSAqIEEgcG9pbnRlciB0byBAbnVtX2NtZGJ1ZnMgJnN0cnVjdCBkcm1fdGVncmFfY21kYnVm X2xlZ2FjeQorCSAqIHN0cnVjdHVyZXMgdGhhdCBkZWZpbmUgdGhlIGNvbW1hbmQgYnVmZmVycyB0 byBleGVjdXRlIGFzIHBhcnQgb2YKKwkgKiB0aGlzIGpvYi4KKwkgKi8KIAlfX3U2NCBjbWRidWZz OworCisJLyoqCisJICogQHJlbG9jczoKKwkgKgorCSAqIEEgcG9pbnRlciB0byBAbnVtX3JlbG9j cyAmc3RydWN0IGRybV90ZWdyYV9yZWxvY19sZWdhY3kgc3RydWN0dXJlcworCSAqIHRoYXQgc3Bl Y2lmeSB0aGUgcmVsb2NhdGlvbnMgdGhhdCBuZWVkIHRvIGJlIHBlcmZvcm1lZCBiZWZvcmUKKwkg KiBleGVjdXRpbmcgdGhpcyBqb2IuCisJICovCiAJX191NjQgcmVsb2NzOworCisJLyoqCisJICog QHdhaXRjaGtzOgorCSAqCisJICogQSBwb2ludGVyIHRvIEBudW1fd2FpdGNoa3MgJnN0cnVjdCBk cm1fdGVncmFfd2FpdGNoayBzdHJ1Y3R1cmVzCisJICogdGhhdCBzcGVjaWZ5IHRoZSB3YWl0IGNo ZWNrcyB0byBiZSBwZXJmb3JtZWQgd2hpbGUgZXhlY3V0aW5nIHRoaXMKKwkgKiBqb2IuCisJICov CiAJX191NjQgd2FpdGNoa3M7Ci0JX191MzIgZmVuY2U7CQkvKiBSZXR1cm4gdmFsdWUgKi8KIAot CV9fdTMyIHJlc2VydmVkWzVdOwkvKiBmdXR1cmUgZXhwYW5zaW9uICovCisJLyoqCisJICogQGZl bmNlOgorCSAqCisJICogUmV0dXJuIGxvY2F0aW9uIGZvciB0aGUgdGhyZXNob2xkIG9mIHRoZSBz eW5jcG9pbnQgYXNzb2NpYXRlZCB3aXRoCisJICogdGhpcyBqb2IuIFRoaXMgY2FuIGJlIHVzZWQg d2l0aCB0aGUgRFJNX1RFR1JBX1NZTkNQVF9XQUlUIElPQ1RMIHRvCisJICogd2FpdCBmb3IgdGhp cyBqb2IgdG8gYmUgZmluaXNoZWQuCisJICovCisJX191MzIgZmVuY2U7CisKKwkvKioKKwkgKiBA cmVzZXJ2ZWQ6CisJICoKKwkgKiBUaGlzIGZpZWxkIGlzIHJlc2VydmVkIGZvciBmdXR1cmUgdXNl LiBNdXN0IGJlIDAuCisJICovCisJX191MzIgcmVzZXJ2ZWRbNV07CiB9OwogCiAjZGVmaW5lIERS TV9URUdSQV9HRU1fVElMSU5HX01PREVfUElUQ0ggMAogI2RlZmluZSBEUk1fVEVHUkFfR0VNX1RJ TElOR19NT0RFX1RJTEVEIDEKICNkZWZpbmUgRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9CTE9D SyAyCiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fc2V0X3RpbGluZyAtIHBhcmFtZXRl cnMgZm9yIHRoZSBzZXQgdGlsaW5nIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfZ2VtX3Nl dF90aWxpbmcgewotCS8qIGlucHV0ICovCisJLyoqCisJICogQGhhbmRsZToKKwkgKgorCSAqIEhh bmRsZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8gc2V0IHRoZSB0aWxpbmcgcGFyYW1l dGVycy4KKwkgKi8KIAlfX3UzMiBoYW5kbGU7CisKKwkvKioKKwkgKiBAbW9kZToKKwkgKgorCSAq IFRoZSB0aWxpbmcgbW9kZSB0byBzZXQuIE11c3QgYmUgb25lIG9mOgorCSAqCisJICogRFJNX1RF R1JBX0dFTV9USUxJTkdfTU9ERV9QSVRDSAorCSAqICAgcGl0Y2ggbGluZWFyIGZvcm1hdAorCSAq CisJICogRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9USUxFRAorCSAqICAgMTZ4MTYgdGlsaW5n IGZvcm1hdAorCSAqCisJICogRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9CTE9DSworCSAqICAg MTZCeDIgdGlsaW5nIGZvcm1hdAorCSAqLwogCV9fdTMyIG1vZGU7CisKKwkvKioKKwkgKiBAdmFs dWU6CisJICoKKwkgKiBUaGUgdmFsdWUgdG8gc2V0IGZvciB0aGUgdGlsaW5nIG1vZGUgcGFyYW1l dGVyLgorCSAqLwogCV9fdTMyIHZhbHVlOworCisJLyoqCisJICogQHBhZDoKKwkgKgorCSAqIFN0 cnVjdHVyZSBwYWRkaW5nIHRoYXQgbWF5IGJlIHVzZWQgaW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAw LgorCSAqLwogCV9fdTMyIHBhZDsKIH07CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1f Z2V0X3RpbGluZyAtIHBhcmFtZXRlcnMgZm9yIHRoZSBnZXQgdGlsaW5nIElPQ1RMCisgKi8KIHN0 cnVjdCBkcm1fdGVncmFfZ2VtX2dldF90aWxpbmcgewotCS8qIGlucHV0ICovCisJLyoqCisJICog QGhhbmRsZToKKwkgKgorCSAqIEhhbmRsZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8g cXVlcnkgdGhlIHRpbGluZyBwYXJhbWV0ZXJzLgorCSAqLwogCV9fdTMyIGhhbmRsZTsKLQkvKiBv dXRwdXQgKi8KKworCS8qKgorCSAqIEBtb2RlOgorCSAqCisJICogUmV0dXJuIGxvY2F0aW9uIGZv ciB0aGUgdGlsaW5nIG1vZGUuCisJICovCiAJX191MzIgbW9kZTsKKworCS8qKgorCSAqIEB2YWx1 ZToKKwkgKgorCSAqIFJldHVybiBsb2NhdGlvbiBmb3IgdGhlIHRpbGluZyBtb2RlIHBhcmFtZXRl ci4KKwkgKi8KIAlfX3UzMiB2YWx1ZTsKKworCS8qKgorCSAqIEBwYWQ6CisJICoKKwkgKiBTdHJ1 Y3R1cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2VkIGluIHRoZSBmdXR1cmUuIE11c3QgYmUgMC4K KwkgKi8KIAlfX3UzMiBwYWQ7CiB9OwogCi0jZGVmaW5lIERSTV9URUdSQV9HRU1fQk9UVE9NX1VQ CQkoMSA8PCAwKQotI2RlZmluZSBEUk1fVEVHUkFfR0VNX0ZMQUdTCQkoRFJNX1RFR1JBX0dFTV9C T1RUT01fVVApCi0KKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fc2V0X2ZsYWdzIC0gcGFy YW1ldGVycyBmb3IgdGhlIHNldCBmbGFncyBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2dl bV9zZXRfZmxhZ3MgewotCS8qIGlucHV0ICovCisJLyoqCisJICogQGhhbmRsZToKKwkgKgorCSAq IEhhbmRsZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8gc2V0IHRoZSBmbGFncy4KKwkg Ki8KIAlfX3UzMiBoYW5kbGU7Ci0JLyogb3V0cHV0ICovCisKKwkvKioKKwkgKiBAZmxhZ3M6CisJ ICoKKwkgKiBUaGUgZmxhZ3MgdG8gc2V0IGZvciB0aGUgR0VNIG9iamVjdC4KKwkgKi8KIAlfX3Uz MiBmbGFnczsKIH07CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fZ2V0X2ZsYWdzIC0g cGFyYW1ldGVycyBmb3IgdGhlIGdldCBmbGFncyBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3Jh X2dlbV9nZXRfZmxhZ3MgewotCS8qIGlucHV0ICovCisJLyoqCisJICogQGhhbmRsZToKKwkgKgor CSAqIEhhbmRsZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8gcXVlcnkgdGhlIGZsYWdz LgorCSAqLwogCV9fdTMyIGhhbmRsZTsKLQkvKiBvdXRwdXQgKi8KKworCS8qKgorCSAqIEBmbGFn czoKKwkgKgorCSAqIFJldHVybiBsb2NhdGlvbiBmb3IgdGhlIGZsYWdzIHF1ZXJpZWQgZnJvbSB0 aGUgR0VNIG9iamVjdC4KKwkgKi8KIAlfX3UzMiBmbGFnczsKIH07CiAKLS0gCjIuMTcuMAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==