From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH v2] drm/tegra: Add kerneldoc for UAPI Date: Fri, 18 May 2018 22:33:37 +0200 Message-ID: <20180518203337.26476-1-thierry.reding@gmail.com> References: <20180517154132.10058-8-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-8-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 bgpob3cgdG8gdXNlIGl0LgoKdjI6Ci0ga2VlcCBHRU0gb2JqZWN0IGNyZWF0aW9uIGZsYWdzIGZv ciBBQkkgY29tcGF0aWJpbGl0eQotIGZpeCB0eXBvIGluIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0 X2luY3Iga2VybmVsZG9jCi0gZml4IHR5cG9zIGluIHN0cnVjdCBkcm1fdGVncmFfc3VibWl0IGtl cm5lbGRvYwotIHJld29yZGVkIHNvbWUgZGVzY3JpcHRpb25zIGFzIHN1Z2dlc3RlZAoKU2lnbmVk LW9mZi1ieTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KLS0tCiBpbmNsdWRl L3VhcGkvZHJtL3RlZ3JhX2RybS5oIHwgNDgwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystCiAxIGZpbGUgY2hhbmdlZCwgNDcxIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2RybS90ZWdyYV9kcm0uaCBiL2luY2x1ZGUvdWFw aS9kcm0vdGVncmFfZHJtLmgKaW5kZXggOTllMTVkODJkMWU5Li43ZTEyMWM2OWNkOWEgMTAwNjQ0 Ci0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vdGVncmFfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2Ry bS90ZWdyYV9kcm0uaApAQCAtMzIsMTQzICszMiw2MDUgQEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5l IERSTV9URUdSQV9HRU1fQ1JFQVRFX1RJTEVEICAgICAoMSA8PCAwKQogI2RlZmluZSBEUk1fVEVH UkFfR0VNX0NSRUFURV9CT1RUT01fVVAgKDEgPDwgMSkKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3Rl Z3JhX2dlbV9jcmVhdGUgLSBwYXJhbWV0ZXJzIGZvciB0aGUgR0VNIG9iamVjdCBjcmVhdGlvbiBJ T0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9jcmVhdGUgeworCS8qKgorCSAqIEBzaXpl OgorCSAqCisJICogVGhlIHNpemUsIGluIGJ5dGVzLCBvZiB0aGUgYnVmZmVyIG9iamVjdCB0byBi ZSBjcmVhdGVkLgorCSAqLwogCV9fdTY0IHNpemU7CisKKwkvKioKKwkgKiBAZmxhZ3M6CisJICoK KwkgKiBBIGJpdG1hc2sgb2YgZmxhZ3MgdGhhdCBpbmZsdWVuY2UgdGhlIGNyZWF0aW9uIG9mIEdF TSBvYmplY3RzOgorCSAqCisJICogRFJNX1RFR1JBX0dFTV9DUkVBVEVfVElMRUQKKwkgKiAgIFVz ZSB0aGUgMTZ4MTYgdGlsaW5nIGZvcm1hdCBmb3IgdGhpcyBidWZmZXIuCisJICoKKwkgKiBEUk1f VEVHUkFfR0VNX0NSRUFURV9CT1RUT01fVVAKKwkgKiAgIFRoZSBidWZmZXIgaGFzIGEgYm90dG9t LXVwIGxheW91dC4KKwkgKi8KIAlfX3UzMiBmbGFnczsKKworCS8qKgorCSAqIEBoYW5kbGU6CisJ ICoKKwkgKiBUaGUgaGFuZGxlIG9mIHRoZSBjcmVhdGVkIEdFTSBvYmplY3QuIFNldCBieSB0aGUg a2VybmVsIHVwb24KKwkgKiBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgdGhlIElPQ1RMLgorCSAq LwogCV9fdTMyIGhhbmRsZTsKIH07CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fbW1h cCAtIHBhcmFtZXRlcnMgZm9yIHRoZSBHRU0gbW1hcCBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3Rl Z3JhX2dlbV9tbWFwIHsKKwkvKioKKwkgKiBAaGFuZGxlOgorCSAqCisJICogSGFuZGxlIG9mIHRo ZSBHRU0gb2JqZWN0IHRvIG9idGFpbiBhbiBtbWFwIG9mZnNldCBmb3IuCisJICovCiAJX191MzIg aGFuZGxlOworCisJLyoqCisJICogQHBhZDoKKwkgKgorCSAqIFN0cnVjdHVyZSBwYWRkaW5nIHRo YXQgbWF5IGJlIHVzZWQgaW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgorCSAqLwogCV9fdTMyIHBh ZDsKKworCS8qKgorCSAqIEBvZmZzZXQ6CisJICoKKwkgKiBUaGUgbW1hcCBvZmZzZXQgZm9yIHRo ZSBnaXZlbiBHRU0gb2JqZWN0LiBTZXQgYnkgdGhlIGtlcm5lbCB1cG9uCisJICogc3VjY2Vzc2Z1 bCBjb21wbGV0aW9uIG9mIHRoZSBJT0NUTC4KKwkgKi8KIAlfX3U2NCBvZmZzZXQ7CiB9OwogCisv KioKKyAqIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3JlYWQgLSBwYXJhbWV0ZXJzIGZvciB0aGUg cmVhZCBzeW5jcG9pbnQgSU9DVEwKKyAqLwogc3RydWN0IGRybV90ZWdyYV9zeW5jcHRfcmVhZCB7 CisJLyoqCisJICogQGlkOgorCSAqCisJICogSUQgb2YgdGhlIHN5bmNwb2ludCB0byByZWFkIHRo ZSBjdXJyZW50IHZhbHVlIGZyb20uCisJICovCiAJX191MzIgaWQ7CisKKwkvKioKKwkgKiBAdmFs dWU6CisJICoKKwkgKiBUaGUgY3VycmVudCBzeW5jcG9pbnQgdmFsdWUuIFNldCBieSB0aGUga2Vy bmVsIHVwb24gc3VjY2Vzc2Z1bAorCSAqIGNvbXBsZXRpb24gb2YgdGhlIElPQ1RMLgorCSAqLwog CV9fdTMyIHZhbHVlOwogfTsKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdF9pbmNy IC0gcGFyYW1ldGVycyBmb3IgdGhlIGluY3JlbWVudCBzeW5jcG9pbnQgSU9DVEwKKyAqLwogc3Ry dWN0IGRybV90ZWdyYV9zeW5jcHRfaW5jciB7CisJLyoqCisJICogQGlkOgorCSAqCisJICogSUQg b2YgdGhlIHN5bmNwb2ludCB0byBpbmNyZW1lbnQuCisJICovCiAJX191MzIgaWQ7CisKKwkvKioK KwkgKiBAcGFkOgorCSAqCisJICogU3RydWN0dXJlIHBhZGRpbmcgdGhhdCBtYXkgYmUgdXNlZCBp biB0aGUgZnV0dXJlLiBNdXN0IGJlIDAuCisJICovCiAJX191MzIgcGFkOwogfTsKIAorLyoqCisg KiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdF93YWl0IC0gcGFyYW1ldGVycyBmb3IgdGhlIHdhaXQg c3luY3BvaW50IElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3dhaXQgeworCS8q KgorCSAqIEBpZDoKKwkgKgorCSAqIElEIG9mIHRoZSBzeW5jcG9pbnQgdG8gd2FpdCBvbi4KKwkg Ki8KIAlfX3UzMiBpZDsKKworCS8qKgorCSAqIEB0aHJlc2g6CisJICoKKwkgKiBUaHJlc2hvbGQg dmFsdWUgZm9yIHdoaWNoIHRvIHdhaXQuCisJICovCiAJX191MzIgdGhyZXNoOworCisJLyoqCisJ ICogQHRpbWVvdXQ6CisJICoKKwkgKiBUaW1lb3V0LCBpbiBtaWxsaXNlY29uZHMsIHRvIHdhaXQu CisJICovCiAJX191MzIgdGltZW91dDsKKworCS8qKgorCSAqIEB2YWx1ZToKKwkgKgorCSAqIFRo ZSBuZXcgc3luY3BvaW50IHZhbHVlIGFmdGVyIHRoZSB3YWl0LiBTZXQgYnkgdGhlIGtlcm5lbCB1 cG9uCisJICogc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIHRoZSBJT0NUTC4KKwkgKi8KIAlfX3Uz MiB2YWx1ZTsKIH07CiAKICNkZWZpbmUgRFJNX1RFR1JBX05PX1RJTUVPVVQJKDB4ZmZmZmZmZmYp CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9vcGVuX2NoYW5uZWwgLSBwYXJhbWV0ZXJzIGZv ciB0aGUgb3BlbiBjaGFubmVsIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfb3Blbl9jaGFu bmVsIHsKKwkvKioKKwkgKiBAY2xpZW50OgorCSAqCisJICogVGhlIGNsaWVudCBJRCBmb3IgdGhp cyBjaGFubmVsLgorCSAqLwogCV9fdTMyIGNsaWVudDsKKworCS8qKgorCSAqIEBwYWQ6CisJICoK KwkgKiBTdHJ1Y3R1cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2VkIGluIHRoZSBmdXR1cmUuIE11 c3QgYmUgMC4KKwkgKi8KIAlfX3UzMiBwYWQ7CisKKwkvKioKKwkgKiBAY29udGV4dDoKKwkgKgor CSAqIFRoZSBhcHBsaWNhdGlvbiBjb250ZXh0IG9mIHRoaXMgY2hhbm5lbC4gU2V0IGJ5IHRoZSBr ZXJuZWwgdXBvbgorCSAqIHN1Y2Nlc3NmdWwgY29tcGxldGlvbiBvZiB0aGUgSU9DVEwuIFRoaXMg Y29udGV4dCBuZWVkcyB0byBiZSBwYXNzZWQKKwkgKiB0byB0aGUgRFJNX1RFR1JBX0NIQU5ORUxf Q0xPU0Ugb3IgdGhlIERSTV9URUdSQV9TVUJNSVQgSU9DVExzLgorCSAqLwogCV9fdTY0IGNvbnRl eHQ7CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfY2xvc2VfY2hhbm5lbCAtIHBhcmFt ZXRlcnMgZm9yIHRoZSBjbG9zZSBjaGFubmVsIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFf Y2xvc2VfY2hhbm5lbCB7CisJLyoqCisJICogQGNvbnRleHQ6CisJICoKKwkgKiBUaGUgYXBwbGlj YXRpb24gY29udGV4dCBvZiB0aGlzIGNoYW5uZWwuIFRoaXMgaXMgb2J0YWluZWQgZnJvbSB0aGUK KwkgKiBEUk1fVEVHUkFfT1BFTl9DSEFOTkVMIElPQ1RMLgorCSAqLwogCV9fdTY0IGNvbnRleHQ7 CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdCAtIHBhcmFtZXRlcnMg Zm9yIHRoZSBnZXQgc3luY3BvaW50IElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5 bmNwdCB7CisJLyoqCisJICogQGNvbnRleHQ6CisJICoKKwkgKiBUaGUgYXBwbGljYXRpb24gY29u dGV4dCBpZGVudGlmeWluZyB0aGUgY2hhbm5lbCBmb3Igd2hpY2ggdG8gb2J0YWluCisJICogdGhl IHN5bmNwb2ludCBJRC4KKwkgKi8KIAlfX3U2NCBjb250ZXh0OworCisJLyoqCisJICogQGluZGV4 OgorCSAqCisJICogSW5kZXggb2YgdGhlIGNsaWVudCBzeW5jcG9pbnQgZm9yIHdoaWNoIHRvIG9i dGFpbiB0aGUgSUQuCisJICovCiAJX191MzIgaW5kZXg7CisKKwkvKioKKwkgKiBAaWQ6CisJICoK KwkgKiBUaGUgSUQgb2YgdGhlIGdpdmVuIHN5bmNwb2ludC4gU2V0IGJ5IHRoZSBrZXJuZWwgdXBv biBzdWNjZXNzZnVsCisJICogY29tcGxldGlvbiBvZiB0aGUgSU9DVEwuCisJICovCiAJX191MzIg aWQ7CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdF9iYXNlIC0gcGFy YW1ldGVycyBmb3IgdGhlIGdldCB3YWl0IGJhc2UgSU9DVEwKKyAqLwogc3RydWN0IGRybV90ZWdy YV9nZXRfc3luY3B0X2Jhc2UgeworCS8qKgorCSAqIEBjb250ZXh0OgorCSAqCisJICogVGhlIGFw cGxpY2F0aW9uIGNvbnRleHQgaWRlbnRpZnlpbmcgZm9yIHdoaWNoIGNoYW5uZWwgdG8gb2J0YWlu IHRoZQorCSAqIHdhaXQgYmFzZS4KKwkgKi8KIAlfX3U2NCBjb250ZXh0OworCisJLyoqCisJICog QHN5bmNwdDoKKwkgKgorCSAqIElEIG9mIHRoZSBzeW5jcG9pbnQgZm9yIHdoaWNoIHRvIG9idGFp biB0aGUgd2FpdCBiYXNlLgorCSAqLwogCV9fdTMyIHN5bmNwdDsKKworCS8qKgorCSAqIEBpZDoK KwkgKgorCSAqIFRoZSBJRCBvZiB0aGUgd2FpdCBiYXNlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGNs aWVudCBzeW5jcG9pbnQuIFNldAorCSAqIGJ5IHRoZSBrZXJuZWwgdXBvbiBzdWNjZXNzZnVsIGNv bXBsZXRpb24gb2YgdGhlIElPQ1RMLgorCSAqLwogCV9fdTMyIGlkOwogfTsKIAorLyoqCisgKiBz dHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdCAtIHN5bmNwb2ludCBpbmNyZW1lbnQgb3BlcmF0aW9uCisg Ki8KIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0IHsKKwkvKioKKwkgKiBAaWQ6CisJICoKKwkgKiBJ RCBvZiB0aGUgc3luY3BvaW50IHRvIG9wZXJhdGUgb24uCisJICovCiAJX191MzIgaWQ7CisKKwkv KioKKwkgKiBAaW5jcnM6CisJICoKKwkgKiBOdW1iZXIgb2YgaW5jcmVtZW50cyB0byBwZXJmb3Jt IGZvciB0aGUgc3luY3BvaW50LgorCSAqLwogCV9fdTMyIGluY3JzOwogfTsKIAorLyoqCisgKiBz dHJ1Y3QgZHJtX3RlZ3JhX2NtZGJ1ZiAtIHN0cnVjdHVyZSBkZXNjcmliaW5nIGEgY29tbWFuZCBi dWZmZXIKKyAqLwogc3RydWN0IGRybV90ZWdyYV9jbWRidWYgeworCS8qKgorCSAqIEBoYW5kbGU6 CisJICoKKwkgKiBIYW5kbGUgdG8gYSBHRU0gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbW1hbmQg YnVmZmVyLgorCSAqLwogCV9fdTMyIGhhbmRsZTsKKworCS8qKgorCSAqIEBvZmZzZXQ6CisJICoK KwkgKiBPZmZzZXQsIGluIGJ5dGVzLCBpbnRvIHRoZSBHRU0gb2JqZWN0IGlkZW50aWZpZWQgYnkg QGhhbmRsZSBhdAorCSAqIHdoaWNoIHRoZSBjb21tYW5kIGJ1ZmZlciBzdGFydHMuCisJICovCiAJ X191MzIgb2Zmc2V0OworCisJLyoqCisJICogQHdvcmRzOgorCSAqCisJICogTnVtYmVyIG9mIDMy LWJpdCB3b3JkcyBpbiB0aGlzIGNvbW1hbmQgYnVmZmVyLgorCSAqLwogCV9fdTMyIHdvcmRzOwor CisJLyoqCisJICogQHBhZDoKKwkgKgorCSAqIFN0cnVjdHVyZSBwYWRkaW5nIHRoYXQgbWF5IGJl IHVzZWQgaW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgorCSAqLwogCV9fdTMyIHBhZDsKIH07CiAK Ky8qKgorICogc3RydWN0IGRybV90ZWdyYV9yZWxvYyAtIEdFTSBvYmplY3QgcmVsb2NhdGlvbiBz dHJ1Y3R1cmUKKyAqLwogc3RydWN0IGRybV90ZWdyYV9yZWxvYyB7CiAJc3RydWN0IHsKKwkJLyoq CisJCSAqIEBjbWRidWYuaGFuZGxlOgorCQkgKgorCQkgKiBIYW5kbGUgdG8gdGhlIEdFTSBvYmpl Y3QgY29udGFpbmluZyB0aGUgY29tbWFuZCBidWZmZXIgZm9yCisJCSAqIHdoaWNoIHRvIHBlcmZv cm0gdGhpcyBHRU0gb2JqZWN0IHJlbG9jYXRpb24uCisJCSAqLwogCQlfX3UzMiBoYW5kbGU7CisK KwkJLyoqCisJCSAqIEBjbWRidWYub2Zmc2V0OgorCQkgKgorCQkgKiBPZmZzZXQsIGluIGJ5dGVz LCBpbnRvIHRoZSBjb21tYW5kIGJ1ZmZlciBhdCB3aGljaCB0bworCQkgKiBpbnNlcnQgdGhlIHJl bG9jYXRlZCBhZGRyZXNzLgorCQkgKi8KIAkJX191MzIgb2Zmc2V0OwogCX0gY21kYnVmOwogCXN0 cnVjdCB7CisJCS8qKgorCQkgKiBAdGFyZ2V0LmhhbmRsZToKKwkJICoKKwkJICogSGFuZGxlIHRv IHRoZSBHRU0gb2JqZWN0IHRvIGJlIHJlbG9jYXRlZC4KKwkJICovCiAJCV9fdTMyIGhhbmRsZTsK KworCQkvKioKKwkJICogQHRhcmdldC5vZmZzZXQ6CisJCSAqCisJCSAqIE9mZnNldCwgaW4gYnl0 ZXMsIGludG8gdGhlIHRhcmdldCBHRU0gb2JqZWN0IGF0IHdoaWNoIHRoZQorCQkgKiByZWxvY2F0 ZWQgZGF0YSBzdGFydHMuCisJCSAqLwogCQlfX3UzMiBvZmZzZXQ7CiAJfSB0YXJnZXQ7CisKKwkv KioKKwkgKiBAc2hpZnQ6CisJICoKKwkgKiBUaGUgbnVtYmVyIG9mIGJpdHMgYnkgd2hpY2ggdG8g c2hpZnQgcmVsb2NhdGVkIGFkZHJlc3Nlcy4KKwkgKi8KIAlfX3UzMiBzaGlmdDsKKworCS8qKgor CSAqIEBwYWQ6CisJICoKKwkgKiBTdHJ1Y3R1cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2VkIGlu IHRoZSBmdXR1cmUuIE11c3QgYmUgMC4KKwkgKi8KIAlfX3UzMiBwYWQ7CiB9OwogCisvKioKKyAq IHN0cnVjdCBkcm1fdGVncmFfd2FpdGNoayAtIHdhaXQgY2hlY2sgc3RydWN0dXJlCisgKi8KIHN0 cnVjdCBkcm1fdGVncmFfd2FpdGNoayB7CisJLyoqCisJICogQGhhbmRsZToKKwkgKgorCSAqIEhh bmRsZSB0byB0aGUgR0VNIG9iamVjdCBjb250YWluaW5nIGEgY29tbWFuZCBzdHJlYW0gb24gd2hp Y2ggdG8KKwkgKiBwZXJmb3JtIHRoZSB3YWl0IGNoZWNrLgorCSAqLwogCV9fdTMyIGhhbmRsZTsK KworCS8qKgorCSAqIEBvZmZzZXQ6CisJICoKKwkgKiBPZmZzZXQsIGluIGJ5dGVzLCBvZiB0aGUg bG9jYXRpb24gaW4gdGhlIGNvbW1hbmQgc3RyZWFtIHRvIHBlcmZvcm0KKwkgKiB0aGUgd2FpdCBj aGVjayBvbi4KKwkgKi8KIAlfX3UzMiBvZmZzZXQ7CisKKwkvKioKKwkgKiBAc3luY3B0OgorCSAq CisJICogSUQgb2YgdGhlIHN5bmNwb2ludCB0byB3YWl0IGNoZWNrLgorCSAqLwogCV9fdTMyIHN5 bmNwdDsKKworCS8qKgorCSAqIEB0aHJlc2g6CisJICoKKwkgKiBUaHJlc2hvbGQgdmFsdWUgZm9y IHdoaWNoIHRvIGNoZWNrLgorCSAqLwogCV9fdTMyIHRocmVzaDsKIH07CiAKKy8qKgorICogc3Ry dWN0IGRybV90ZWdyYV9zdWJtaXQgLSBqb2Igc3VibWlzc2lvbiBzdHJ1Y3R1cmUKKyAqLwogc3Ry dWN0IGRybV90ZWdyYV9zdWJtaXQgeworCS8qKgorCSAqIEBjb250ZXh0OgorCSAqCisJICogVGhl IGFwcGxpY2F0aW9uIGNvbnRleHQgaWRlbnRpZnlpbmcgdGhlIGNoYW5uZWwgdG8gdXNlIGZvciB0 aGUKKwkgKiBleGVjdXRpb24gb2YgdGhpcyBqb2IuCisJICovCiAJX191NjQgY29udGV4dDsKKwor CS8qKgorCSAqIEBudW1fc3luY3B0czoKKwkgKgorCSAqIFRoZSBudW1iZXIgb2Ygc3luY3BvaW50 cyBvcGVyYXRlZCBvbiBieSB0aGlzIGpvYi4KKwkgKi8KIAlfX3UzMiBudW1fc3luY3B0czsKKwor CS8qKgorCSAqIEBudW1fY21kYnVmczoKKwkgKgorCSAqIFRoZSBudW1iZXIgb2YgY29tbWFuZCBi dWZmZXJzIHRvIGV4ZWN1dGUgYXMgcGFydCBvZiB0aGlzIGpvYi4KKwkgKi8KIAlfX3UzMiBudW1f Y21kYnVmczsKKworCS8qKgorCSAqIEBudW1fcmVsb2NzOgorCSAqCisJICogVGhlIG51bWJlciBv ZiByZWxvY2F0aW9ucyB0byBwZXJmb3JtIGJlZm9yZSBleGVjdXRpbmcgdGhpcyBqb2IuCisJICov CiAJX191MzIgbnVtX3JlbG9jczsKKworCS8qKgorCSAqIEBudW1fd2FpdGNoa3M6CisJICoKKwkg KiBUaGUgbnVtYmVyIG9mIHdhaXQgY2hlY2tzIHRvIHBlcmZvcm0gYXMgcGFydCBvZiB0aGlzIGpv Yi4KKwkgKi8KIAlfX3UzMiBudW1fd2FpdGNoa3M7CisKKwkvKioKKwkgKiBAd2FpdGNoa19tYXNr OgorCSAqCisJICogQml0bWFzayBvZiB2YWxpZCB3YWl0IGNoZWNrcy4KKwkgKi8KIAlfX3UzMiB3 YWl0Y2hrX21hc2s7CisKKwkvKioKKwkgKiBAdGltZW91dDoKKwkgKgorCSAqIFRpbWVvdXQsIGlu IG1pbGxpc2Vjb25kcywgYmVmb3JlIHRoaXMgam9iIGlzIGNhbmNlbGxlZC4KKwkgKi8KIAlfX3Uz MiB0aW1lb3V0OworCisJLyoqCisJICogQHN5bmNwdHM6CisJICoKKwkgKiBBIHBvaW50ZXIgdG8g QG51bV9zeW5jcHRzICZzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdCBzdHJ1Y3R1cmVzIHRoYXQKKwkg KiBzcGVjaWZ5IHRoZSBzeW5jcG9pbnQgb3BlcmF0aW9ucyBwZXJmb3JtZWQgYXMgcGFydCBvZiB0 aGlzIGpvYi4KKwkgKi8KIAlfX3U2NCBzeW5jcHRzOworCisJLyoqCisJICogQGNtZGJ1ZnM6CisJ ICoKKwkgKiBBIHBvaW50ZXIgdG8gQG51bV9jbWRidWZzICZzdHJ1Y3QgZHJtX3RlZ3JhX2NtZGJ1 ZiBzdHJ1Y3R1cmVzIHRoYXQKKwkgKiBkZWZpbmUgdGhlIGNvbW1hbmQgYnVmZmVycyB0byBleGVj dXRlIGFzIHBhcnQgb2YgdGhpcyBqb2IuCisJICovCiAJX191NjQgY21kYnVmczsKKworCS8qKgor CSAqIEByZWxvY3M6CisJICoKKwkgKiBBIHBvaW50ZXIgdG8gQG51bV9yZWxvY3MgJnN0cnVjdCBk cm1fdGVncmFfcmVsb2Mgc3RydWN0dXJlcyB0aGF0CisJICogc3BlY2lmeSB0aGUgcmVsb2NhdGlv bnMgdGhhdCBuZWVkIHRvIGJlIHBlcmZvcm1lZCBiZWZvcmUgZXhlY3V0aW5nCisJICogdGhpcyBq b2IuCisJICovCiAJX191NjQgcmVsb2NzOworCisJLyoqCisJICogQHdhaXRjaGtzOgorCSAqCisJ ICogQSBwb2ludGVyIHRvIEBudW1fd2FpdGNoa3MgJnN0cnVjdCBkcm1fdGVncmFfd2FpdGNoayBz dHJ1Y3R1cmVzCisJICogdGhhdCBzcGVjaWZ5IHRoZSB3YWl0IGNoZWNrcyB0byBiZSBwZXJmb3Jt ZWQgd2hpbGUgZXhlY3V0aW5nIHRoaXMKKwkgKiBqb2IuCisJICovCiAJX191NjQgd2FpdGNoa3M7 Ci0JX191MzIgZmVuY2U7CQkvKiBSZXR1cm4gdmFsdWUgKi8KIAotCV9fdTMyIHJlc2VydmVkWzVd OwkvKiBmdXR1cmUgZXhwYW5zaW9uICovCisJLyoqCisJICogQGZlbmNlOgorCSAqCisJICogVGhl IHRocmVzaG9sZCBvZiB0aGUgc3luY3BvaW50IGFzc29jaWF0ZWQgd2l0aCB0aGlzIGpvYiBhZnRl ciBpdAorCSAqIGhhcyBiZWVuIGNvbXBsZXRlZC4gU2V0IGJ5IHRoZSBrZXJuZWwgdXBvbiBzdWNj ZXNzZnVsIGNvbXBsZXRpb24gb2YKKwkgKiB0aGUgSU9DVEwuIFRoaXMgY2FuIGJlIHVzZWQgd2l0 aCB0aGUgRFJNX1RFR1JBX1NZTkNQVF9XQUlUIElPQ1RMIHRvCisJICogd2FpdCBmb3IgdGhpcyBq b2IgdG8gYmUgZmluaXNoZWQuCisJICovCisJX191MzIgZmVuY2U7CisKKwkvKioKKwkgKiBAcmVz ZXJ2ZWQ6CisJICoKKwkgKiBUaGlzIGZpZWxkIGlzIHJlc2VydmVkIGZvciBmdXR1cmUgdXNlLiBN dXN0IGJlIDAuCisJICovCisJX191MzIgcmVzZXJ2ZWRbNV07CiB9OwogCiAjZGVmaW5lIERSTV9U RUdSQV9HRU1fVElMSU5HX01PREVfUElUQ0ggMAogI2RlZmluZSBEUk1fVEVHUkFfR0VNX1RJTElO R19NT0RFX1RJTEVEIDEKICNkZWZpbmUgRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9CTE9DSyAy CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fc2V0X3RpbGluZyAtIHBhcmFtZXRlcnMg Zm9yIHRoZSBzZXQgdGlsaW5nIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfZ2VtX3NldF90 aWxpbmcgewotCS8qIGlucHV0ICovCisJLyoqCisJICogQGhhbmRsZToKKwkgKgorCSAqIEhhbmRs ZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8gc2V0IHRoZSB0aWxpbmcgcGFyYW1ldGVy cy4KKwkgKi8KIAlfX3UzMiBoYW5kbGU7CisKKwkvKioKKwkgKiBAbW9kZToKKwkgKgorCSAqIFRo ZSB0aWxpbmcgbW9kZSB0byBzZXQuIE11c3QgYmUgb25lIG9mOgorCSAqCisJICogRFJNX1RFR1JB X0dFTV9USUxJTkdfTU9ERV9QSVRDSAorCSAqICAgcGl0Y2ggbGluZWFyIGZvcm1hdAorCSAqCisJ ICogRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9USUxFRAorCSAqICAgMTZ4MTYgdGlsaW5nIGZv cm1hdAorCSAqCisJICogRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9CTE9DSworCSAqICAgMTZC eDIgdGlsaW5nIGZvcm1hdAorCSAqLwogCV9fdTMyIG1vZGU7CisKKwkvKioKKwkgKiBAdmFsdWU6 CisJICoKKwkgKiBUaGUgdmFsdWUgdG8gc2V0IGZvciB0aGUgdGlsaW5nIG1vZGUgcGFyYW1ldGVy LgorCSAqLwogCV9fdTMyIHZhbHVlOworCisJLyoqCisJICogQHBhZDoKKwkgKgorCSAqIFN0cnVj dHVyZSBwYWRkaW5nIHRoYXQgbWF5IGJlIHVzZWQgaW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgor CSAqLwogCV9fdTMyIHBhZDsKIH07CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fZ2V0 X3RpbGluZyAtIHBhcmFtZXRlcnMgZm9yIHRoZSBnZXQgdGlsaW5nIElPQ1RMCisgKi8KIHN0cnVj dCBkcm1fdGVncmFfZ2VtX2dldF90aWxpbmcgewotCS8qIGlucHV0ICovCisJLyoqCisJICogQGhh bmRsZToKKwkgKgorCSAqIEhhbmRsZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8gcXVl cnkgdGhlIHRpbGluZyBwYXJhbWV0ZXJzLgorCSAqLwogCV9fdTMyIGhhbmRsZTsKLQkvKiBvdXRw dXQgKi8KKworCS8qKgorCSAqIEBtb2RlOgorCSAqCisJICogVGhlIHRpbGluZyBtb2RlIGN1cnJl bnRseSBhc3NvY2lhdGVkIHdpdGggdGhlIEdFTSBvYmplY3QuIFNldCBieQorCSAqIHRoZSBrZXJu ZWwgdXBvbiBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgdGhlIElPQ1RMLgorCSAqLwogCV9fdTMy IG1vZGU7CisKKwkvKioKKwkgKiBAdmFsdWU6CisJICoKKwkgKiBUaGUgdGlsaW5nIG1vZGUgcGFy YW1ldGVyIGN1cnJlbnRseSBhc3NvY2lhdGVkIHdpdGggdGhlIEdFTSBvYmplY3QuCisJICogU2V0 IGJ5IHRoZSBrZXJuZWwgdXBvbiBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgdGhlIElPQ1RMLgor CSAqLwogCV9fdTMyIHZhbHVlOworCisJLyoqCisJICogQHBhZDoKKwkgKgorCSAqIFN0cnVjdHVy ZSBwYWRkaW5nIHRoYXQgbWF5IGJlIHVzZWQgaW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgorCSAq LwogCV9fdTMyIHBhZDsKIH07CiAKICNkZWZpbmUgRFJNX1RFR1JBX0dFTV9CT1RUT01fVVAJCSgx IDw8IDApCiAjZGVmaW5lIERSTV9URUdSQV9HRU1fRkxBR1MJCShEUk1fVEVHUkFfR0VNX0JPVFRP TV9VUCkKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9zZXRfZmxhZ3MgLSBwYXJhbWV0 ZXJzIGZvciB0aGUgc2V0IGZsYWdzIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfZ2VtX3Nl dF9mbGFncyB7Ci0JLyogaW5wdXQgKi8KKwkvKioKKwkgKiBAaGFuZGxlOgorCSAqCisJICogSGFu ZGxlIHRvIHRoZSBHRU0gb2JqZWN0IGZvciB3aGljaCB0byBzZXQgdGhlIGZsYWdzLgorCSAqLwog CV9fdTMyIGhhbmRsZTsKLQkvKiBvdXRwdXQgKi8KKworCS8qKgorCSAqIEBmbGFnczoKKwkgKgor CSAqIFRoZSBmbGFncyB0byBzZXQgZm9yIHRoZSBHRU0gb2JqZWN0LgorCSAqLwogCV9fdTMyIGZs YWdzOwogfTsKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9nZXRfZmxhZ3MgLSBwYXJh bWV0ZXJzIGZvciB0aGUgZ2V0IGZsYWdzIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfZ2Vt X2dldF9mbGFncyB7Ci0JLyogaW5wdXQgKi8KKwkvKioKKwkgKiBAaGFuZGxlOgorCSAqCisJICog SGFuZGxlIHRvIHRoZSBHRU0gb2JqZWN0IGZvciB3aGljaCB0byBxdWVyeSB0aGUgZmxhZ3MuCisJ ICovCiAJX191MzIgaGFuZGxlOwotCS8qIG91dHB1dCAqLworCisJLyoqCisJICogQGZsYWdzOgor CSAqCisJICogVGhlIGZsYWdzIGN1cnJlbnRseSBhc3NvY2lhdGVkIHdpdGggdGhlIEdFTSBvYmpl Y3QuIFNldCBieSB0aGUKKwkgKiBrZXJuZWwgdXBvbiBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2Yg dGhlIElPQ1RMLgorCSAqLwogCV9fdTMyIGZsYWdzOwogfTsKIAotLSAKMi4xNy4wCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGlu ZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK