From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.6 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7D55AC32750 for ; Fri, 2 Aug 2019 16:40:20 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4362A2087E for ; Fri, 2 Aug 2019 16:40:20 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="oUJGHIsr" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4362A2087E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1htab7-0004CB-Lf; Fri, 02 Aug 2019 16:40:05 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1htab6-00045X-JV for xen-devel@lists.xenproject.org; Fri, 02 Aug 2019 16:40:04 +0000 X-Inumbo-ID: 2c5f3edf-b544-11e9-8980-bc764e045a96 Received: from mail-lj1-x241.google.com (unknown [2a00:1450:4864:20::241]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id 2c5f3edf-b544-11e9-8980-bc764e045a96; Fri, 02 Aug 2019 16:40:02 +0000 (UTC) Received: by mail-lj1-x241.google.com with SMTP id h10so1991972ljg.0 for ; Fri, 02 Aug 2019 09:40:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=NwFO0JUoJVO1HNR1vM9cd7WLDQQW3WhdzeYYsj8V4JE=; b=oUJGHIsrM2oUNer+vweAYjHDxMewjF/WWi95Sbsvivg3oelzehvcPYEwvKBMypJuJn +QH7yldXLsTQ3bcoNV38+35dPcoCPm49DLvjcheckHVtfvWRTA8n4RgliRpHQLQKucXK 3F1rPV+ZkEIeMyAUhx4vq8kkU8h87CvDJ6IkpsRdPqx4dNVp0A1mLe+U4Xn26yyH0Kra fztfcDeMioD9yuT+ItKoclZxAoA8AEAVmmaTclHJgWb7JtgE14PcjXW3qpf4T83/ABuV Se7x84ahH8TfgdBsslpKxR1Ztz4fhIdPv+QhvqWtoYLfCN1fsfEFrwOisMhObc6CeHkd lD+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=NwFO0JUoJVO1HNR1vM9cd7WLDQQW3WhdzeYYsj8V4JE=; b=YHmXLbIY3uTEndmP/C/S2+p1YWWBsb44MkRSCSqz7q97PUsA5feyeRWChbIjc34nqt GI1jfj8/98hVhV6XpAW5coj1BYA5gPotnDOWdDCjv/SbNNvzx6HZ8lWZ2c5KRAvjo9jY C18CWSUyVGFppHc1XHS8dqE7xPeL2Q21pUbbg7xKBUQqLIJ8KIcBR1ueG72Aw0FYn0P1 b16enHkmKegnv17Wd25a2CdFwcgR+6BQtTsRRxoVPVdUDWjhvU6Mm+Ffg5DdXCdqK3sV htRHomfQRmLEIXzdiIQX4VZG/VQt84LsYAzEWph6dLYR6Va+DYpTQzPpHkvYLV1u8RBx DjUQ== X-Gm-Message-State: APjAAAXBENj+zKam1rE1fSSX5L8MWCFMc8i8huPxt++rqId7cJoo7Njb XJBcyZw8t496eOozRv0sma1HtQIJeDY= X-Google-Smtp-Source: APXvYqwLtf6T942/1TBvC/LrxsPIOY6a6JDAtge32hzILLYWefQUYUP56UmjKKjBXzUrsJgrkCPKzA== X-Received: by 2002:a2e:9643:: with SMTP id z3mr73065183ljh.43.1564764001224; Fri, 02 Aug 2019 09:40:01 -0700 (PDT) Received: from otyshchenko.kyiv.epam.com (ll-22.209.223.85.sovam.net.ua. [85.223.209.22]) by smtp.gmail.com with ESMTPSA id q6sm15378998lji.70.2019.08.02.09.40.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 02 Aug 2019 09:40:00 -0700 (PDT) From: Oleksandr Tyshchenko To: xen-devel@lists.xenproject.org Date: Fri, 2 Aug 2019 19:39:43 +0300 Message-Id: <1564763985-20312-5-git-send-email-olekstysh@gmail.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1564763985-20312-1-git-send-email-olekstysh@gmail.com> References: <1564763985-20312-1-git-send-email-olekstysh@gmail.com> Subject: [Xen-devel] [PATCH V2 4/6] iommu/arm: Add lightweight iommu_fwspec support X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Oleksandr Tyshchenko , julien.grall@arm.com, sstabellini@kernel.org MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" RnJvbTogT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29t PgoKV2UgbmVlZCB0byBoYXZlIHNvbWUgYWJzdHJhY3Qgd2F5IHRvIGFkZCBuZXcgZGV2aWNlIHRv IHRoZSBJT01NVQpiYXNlZCBvbiB0aGUgZ2VuZXJpYyBJT01NVSBEVCBiaW5kaW5nIFsxXSB3aGlj aCBjYW4gYmUgdXNlZCBmb3IKYm90aCBEVCAocmlnaHQgbm93KSBhbmQgQUNQSSAoaW4gZnV0dXJl KS4KCkZvciB0aGF0IHJlYXNvbiB3ZSBjYW4gYm9ycm93IHRoZSBpZGVhIHVzZWQgaW4gTGludXgg dGhlc2UgZGF5cwpjYWxsZWQgImlvbW11X2Z3c3BlYyIuIEhhdmluZyB0aGlzIGluLCBpdCB3aWxs IGJlIHBvc3NpYmxlCnRvIGNvbmZpZ3VyZSBJT01NVSBtYXN0ZXIgaW50ZXJmYWNlcyBvZiB0aGUg ZGV2aWNlIChkZXZpY2UgSURzKQpmcm9tIGEgc2luZ2xlIGNvbW1vbiBwbGFjZSBhbmQgYXZvaWQg a2VlcGluZyBhbG1vc3QgaWRlbnRpZmljYWwgbG9vay11cAppbXBsZW1lbnRhdGlvbnMgaW4gZWFj aCBJT01NVSBkcml2ZXIuCgpUaGVyZSBpcyBubyBuZWVkIHRvIHBvcnQgdGhlIHdob2xlIGltcGxl bWVudGF0aW9uIG9mICJpb21tdV9md3NwZWMiCnRvIFhlbiwgd2UgY291bGQsIHByb2JhYmx5LCBl bmQgdXAgd2l0aCBhIG11Y2ggc2ltcGxlciBzb2x1dGlvbiwKc29tZSAic3RyaXBwZWQgZG93biIg dmVyc2lvbiB3aGljaCBmaXRzIG91ciByZXF1aXJtZW50cy4KClNvLCB0aGlzIHBhdGNoIGFkZHMg dGhlIGZvbGxvd2luZzoKMS4gQSBjb21tb24gc3RydWN0dXJlICJpb21tdV9md3NwZWMiIHRvIGhv bGQgdGhlIHRoZSBwZXItZGV2aWNlCiAgIGZpcm13YXJlIGRhdGEKMi4gTmV3IG1lbWJlciAiaW9t bXVfZndzcGVjIiBvZiBzdHJ1Y3QgZGV2aWNlCjMuIEZ1bmN0aW9ucy9oZWxwZXJzIHRvIGRlYWwg d2l0aCAiZGV2LT5pb21tdV9md3NwZWMiCgpJdCBzaG91bGQgYmUgbm90ZWQgdGhhdCBpbiBjb21w YXJpbmcgd2l0aCBvcmlnaW5hbCAiaW9tbXVfZndzcGVjIgpYZW4ncyB2YXJpYW50IGRvZXNuJ3Qg Y29udGFpbiBzb21lIGZpZWxkcywgd2hpY2ggYXJlIG5vdCByZWFsbHkKbmVlZGVkIGF0IHRoZSBt b21lbnQgKG9wcywgZmxhZykgYW5kICJpb21tdV9md25vZGUiIGZpZWxkIHdhcyByZXBsYWNlZApi eSAiaW9tbXVfZGV2IiB0byBhdm9pZCBwb3J0aW5nIGEgbG90IG9mIGNvZGUgKHRvIHN1cHBvcnQg ImZ3bm9kZV9oYW5kbGUiKQp3aXRoIGxpdHRsZSBiZW5lZml0LgoKTmV4dCBwYXRjaCBpbiB0aGlz IHNlcmllcyB3aWxsIG1ha2UgdXNlIG9mIHRoYXQgc3VwcG9ydC4KClsxXSBodHRwczovL3d3dy5r ZXJuZWwub3JnL2RvYy9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvaW9tbXUvaW9t bXUudHh0CgpTaWduZWQtb2ZmLWJ5OiBPbGVrc2FuZHIgVHlzaGNoZW5rbyA8b2xla3NhbmRyX3R5 c2hjaGVua29AZXBhbS5jb20+Ci0tLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL01ha2Vm aWxlICAgICAgIHwgIDIgKy0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9pb21tdV9md3Nw ZWMuYyB8IDkxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2luY2x1ZGUvYXNt LWFybS9kZXZpY2UuaCAgICAgICAgICAgICAgIHwgIDEgKwogeGVuL2luY2x1ZGUvYXNtLWFybS9p b21tdS5oICAgICAgICAgICAgICAgIHwgIDIgKwogeGVuL2luY2x1ZGUvYXNtLWFybS9pb21tdV9m d3NwZWMuaCAgICAgICAgIHwgNjUgKysrKysrKysrKysrKysrKysrKysrCiA1IGZpbGVzIGNoYW5n ZWQsIDE2MCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL2lvbW11X2Z3c3BlYy5jCiBjcmVhdGUgbW9kZSAx MDA2NDQgeGVuL2luY2x1ZGUvYXNtLWFybS9pb21tdV9md3NwZWMuaAoKZGlmZiAtLWdpdCBhL3hl bi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9NYWtlZmlsZSBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJv dWdoL2FybS9NYWtlZmlsZQppbmRleCA0YWJiODdhLi41ZmJhZDQ1IDEwMDY0NAotLS0gYS94ZW4v ZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vTWFrZWZpbGUKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Ro cm91Z2gvYXJtL01ha2VmaWxlCkBAIC0xLDIgKzEsMiBAQAotb2JqLXkgKz0gaW9tbXUubyBpb21t dV9oZWxwZXJzLm8KK29iai15ICs9IGlvbW11Lm8gaW9tbXVfaGVscGVycy5vIGlvbW11X2Z3c3Bl Yy5vCiBvYmotJChDT05GSUdfQVJNX1NNTVUpICs9IHNtbXUubwpkaWZmIC0tZ2l0IGEveGVuL2Ry aXZlcnMvcGFzc3Rocm91Z2gvYXJtL2lvbW11X2Z3c3BlYy5jIGIveGVuL2RyaXZlcnMvcGFzc3Ro cm91Z2gvYXJtL2lvbW11X2Z3c3BlYy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAuLjM0NzQxOTIKLS0tIC9kZXYvbnVsbAorKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9h cm0vaW9tbXVfZndzcGVjLmMKQEAgLTAsMCArMSw5MSBAQAorLyoKKyAqIHhlbi9kcml2ZXJzL3Bh c3N0aHJvdWdoL2FybS9pb21tdV9md3NwZWMuYworICoKKyAqIENvbnRhaW5zIGZ1bmN0aW9ucyB0 byBtYWludGFpbiBwZXItZGV2aWNlIGZpcm13YXJlIGRhdGEKKyAqCisgKiBCYXNlZCBvbiBMaW51 eCdzIGlvbW11X2Z3c3BlYyBzdXBwb3J0IHlvdSBjYW4gZmluZCBhdDoKKyAqICAgIGRyaXZlcnMv aW9tbXUvaW9tbXUuYworICoKKyAqIENvcHlyaWdodCAoQykgMjAxOSBFUEFNIFN5c3RlbXMgSW5j LgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp YnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlv bnMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSwgdmVyc2lvbiAyLCBhcyBw dWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KKyAqCisgKiBUaGlzIHBy b2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK KyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS IFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9y ZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsg SWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNs dWRlIDx4ZW4vbGliLmg+CisjaW5jbHVkZSA8eGVuL2lvbW11Lmg+CisjaW5jbHVkZSA8YXNtL2Rl dmljZS5oPgorI2luY2x1ZGUgPGFzbS9pb21tdV9md3NwZWMuaD4KKworaW50IGlvbW11X2Z3c3Bl Y19pbml0KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqaW9tbXVfZGV2KQorewor ICAgIHN0cnVjdCBpb21tdV9md3NwZWMgKmZ3c3BlYyA9IGRldl9pb21tdV9md3NwZWNfZ2V0KGRl dik7CisKKyAgICBpZiAoIGZ3c3BlYyApCisgICAgICAgIHJldHVybiAwOworCisgICAgZndzcGVj ID0geHphbGxvYyhzdHJ1Y3QgaW9tbXVfZndzcGVjKTsKKyAgICBpZiAoICFmd3NwZWMgKQorICAg ICAgICByZXR1cm4gLUVOT01FTTsKKworICAgIGZ3c3BlYy0+aW9tbXVfZGV2ID0gaW9tbXVfZGV2 OworICAgIGRldl9pb21tdV9md3NwZWNfc2V0KGRldiwgZndzcGVjKTsKKworICAgIHJldHVybiAw OworfQorCit2b2lkIGlvbW11X2Z3c3BlY19mcmVlKHN0cnVjdCBkZXZpY2UgKmRldikKK3sKKyAg ICBzdHJ1Y3QgaW9tbXVfZndzcGVjICpmd3NwZWMgPSBkZXZfaW9tbXVfZndzcGVjX2dldChkZXYp OworCisgICAgaWYgKCBmd3NwZWMgKQorICAgIHsKKyAgICAgICAgeGZyZWUoZndzcGVjKTsKKyAg ICAgICAgZGV2X2lvbW11X2Z3c3BlY19zZXQoZGV2LCBOVUxMKTsKKyAgICB9Cit9CisKK2ludCBp b21tdV9md3NwZWNfYWRkX2lkcyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHVpbnQzMl90ICppZHMsIGlu dCBudW1faWRzKQoreworICAgIHN0cnVjdCBpb21tdV9md3NwZWMgKmZ3c3BlYyA9IGRldl9pb21t dV9md3NwZWNfZ2V0KGRldik7CisgICAgc2l6ZV90IHNpemU7CisgICAgaW50IGk7CisKKyAgICBp ZiAoICFmd3NwZWMgKQorICAgICAgICByZXR1cm4gLUVJTlZBTDsKKworICAgIHNpemUgPSBvZmZz ZXRvZihzdHJ1Y3QgaW9tbXVfZndzcGVjLCBpZHNbZndzcGVjLT5udW1faWRzICsgbnVtX2lkc10p OworICAgIGlmICggc2l6ZSA+IHNpemVvZigqZndzcGVjKSApCisgICAgeworICAgICAgICBmd3Nw ZWMgPSBfeHJlYWxsb2MoZndzcGVjLCBzaXplLCBzaXplb2Yodm9pZCAqKSk7CisgICAgICAgIGlm ICggIWZ3c3BlYyApCisgICAgICAgICAgICByZXR1cm4gLUVOT01FTTsKKworICAgICAgICBkZXZf aW9tbXVfZndzcGVjX3NldChkZXYsIGZ3c3BlYyk7CisgICAgfQorCisgICAgZm9yICggaSA9IDA7 IGkgPCBudW1faWRzOyBpKysgKQorICAgICAgICBmd3NwZWMtPmlkc1tmd3NwZWMtPm51bV9pZHMg KyBpXSA9IGlkc1tpXTsKKworICAgIGZ3c3BlYy0+bnVtX2lkcyArPSBudW1faWRzOworCisgICAg cmV0dXJuIDA7Cit9CisKKy8qCisgKiBMb2NhbCB2YXJpYWJsZXM6CisgKiBtb2RlOiBDCisgKiBj LWZpbGUtc3R5bGU6ICJCU0QiCisgKiBjLWJhc2ljLW9mZnNldDogNAorICogaW5kZW50LXRhYnMt bW9kZTogbmlsCisgKiBFbmQ6CisgKi8KZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS1hcm0v ZGV2aWNlLmggYi94ZW4vaW5jbHVkZS9hc20tYXJtL2RldmljZS5oCmluZGV4IGVlMWMzYmMuLmVl N2NmZjIgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vZGV2aWNlLmgKKysrIGIveGVu L2luY2x1ZGUvYXNtLWFybS9kZXZpY2UuaApAQCAtMTgsNiArMTgsNyBAQCBzdHJ1Y3QgZGV2aWNl CiAgICAgc3RydWN0IGR0X2RldmljZV9ub2RlICpvZl9ub2RlOyAvKiBVc2VkIGJ5IGRyaXZlcnMg aW1wb3J0ZWQgZnJvbSBMaW51eCAqLwogI2VuZGlmCiAgICAgc3RydWN0IGRldl9hcmNoZGF0YSBh cmNoZGF0YTsKKyAgICBzdHJ1Y3QgaW9tbXVfZndzcGVjICppb21tdV9md3NwZWM7IC8qIHBlci1k ZXZpY2UgSU9NTVUgaW5zdGFuY2UgZGF0YSAqLwogfTsKIAogdHlwZWRlZiBzdHJ1Y3QgZGV2aWNl IGRldmljZV90OwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLWFybS9pb21tdS5oIGIveGVu L2luY2x1ZGUvYXNtLWFybS9pb21tdS5oCmluZGV4IDIwZDg2NWUuLjE4NTNiZDkgMTAwNjQ0Ci0t LSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vaW9tbXUuaAorKysgYi94ZW4vaW5jbHVkZS9hc20tYXJt L2lvbW11LmgKQEAgLTE0LDYgKzE0LDggQEAKICNpZm5kZWYgX19BUkNIX0FSTV9JT01NVV9IX18K ICNkZWZpbmUgX19BUkNIX0FSTV9JT01NVV9IX18KIAorI2luY2x1ZGUgPGFzbS9pb21tdV9md3Nw ZWMuaD4KKwogc3RydWN0IGFyY2hfaW9tbXUKIHsKICAgICAvKiBQcml2YXRlIGluZm9ybWF0aW9u IGZvciB0aGUgSU9NTVUgZHJpdmVycyAqLwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLWFy bS9pb21tdV9md3NwZWMuaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vaW9tbXVfZndzcGVjLmgKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDY3NjI4NQotLS0gL2Rldi9udWxsCisr KyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vaW9tbXVfZndzcGVjLmgKQEAgLTAsMCArMSw2NSBAQAor LyoKKyAqIHhlbi9pbmNsdWRlL2FzbS1hcm0vaW9tbXVfZndzcGVjLmgKKyAqCisgKiBDb250YWlu cyBhIGNvbW1vbiBzdHJ1Y3R1cmUgdG8gaG9sZCB0aGUgcGVyLWRldmljZSBmaXJtd2FyZSBkYXRh IGFuZAorICogZGVjbGFyYXRpb24gb2YgZnVuY3Rpb25zIHVzZWQgdG8gbWFpbnRhaW4gdGhhdCBk YXRhCisgKgorICogQmFzZWQgb24gTGludXgncyBpb21tdV9md3NwZWMgc3VwcG9ydCB5b3UgY2Fu IGZpbmQgYXQ6CisgKiAgICBpbmNsdWRlL2xpbnV4L2lvbW11LmgKKyAqCisgKiBDb3B5cmlnaHQg KEMpIDIwMTkgRVBBTSBTeXN0ZW1zIEluYy4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBz b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5k ZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKKyAq IExpY2Vuc2UsIHZlcnNpb24gMiwgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9y IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhh dmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2Ug YWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcv bGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIF9fQVJDSF9BUk1fSU9NTVVfRldTUEVDX0hfXwor I2RlZmluZSBfX0FSQ0hfQVJNX0lPTU1VX0ZXU1BFQ19IX18KKworLyogcGVyLWRldmljZSBJT01N VSBpbnN0YW5jZSBkYXRhICovCitzdHJ1Y3QgaW9tbXVfZndzcGVjIHsKKyAgICAvKiBkZXZpY2Ug d2hpY2ggcmVwcmVzZW50cyB0aGlzIElPTU1VIEgvVyAqLworICAgIHN0cnVjdCBkZXZpY2UgKmlv bW11X2RldjsKKyAgICAvKiBJT01NVSBkcml2ZXIgcHJpdmF0ZSBkYXRhIGZvciB0aGlzIGRldmlj ZSAqLworICAgIHZvaWQgKmlvbW11X3ByaXY7CisgICAgLyogbnVtYmVyIG9mIGFzc29jaWF0ZWQg ZGV2aWNlIElEcyAqLworICAgIHVuc2lnbmVkIGludCBudW1faWRzOworICAgIC8qIElEcyB3aGlj aCB0aGlzIGRldmljZSBtYXkgcHJlc2VudCB0byB0aGUgSU9NTVUgKi8KKyAgICB1aW50MzJfdCBp ZHNbMV07Cit9OworCitpbnQgaW9tbXVfZndzcGVjX2luaXQoc3RydWN0IGRldmljZSAqZGV2LCBz dHJ1Y3QgZGV2aWNlICppb21tdV9kZXYpOwordm9pZCBpb21tdV9md3NwZWNfZnJlZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpOworaW50IGlvbW11X2Z3c3BlY19hZGRfaWRzKHN0cnVjdCBkZXZpY2UgKmRl diwgdWludDMyX3QgKmlkcywgaW50IG51bV9pZHMpOworCitzdGF0aWMgaW5saW5lIHN0cnVjdCBp b21tdV9md3NwZWMgKmRldl9pb21tdV9md3NwZWNfZ2V0KHN0cnVjdCBkZXZpY2UgKmRldikKK3sK KyAgICByZXR1cm4gZGV2LT5pb21tdV9md3NwZWM7Cit9CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBk ZXZfaW9tbXVfZndzcGVjX3NldChzdHJ1Y3QgZGV2aWNlICpkZXYsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGlvbW11X2Z3c3BlYyAqZndzcGVjKQorewor ICAgIGRldi0+aW9tbXVfZndzcGVjID0gZndzcGVjOworfQorCisjZW5kaWYgLyogX19BUkNIX0FS TV9JT01NVV9GV1NQRUNfSF9fICovCisKKy8qCisgKiBMb2NhbCB2YXJpYWJsZXM6CisgKiBtb2Rl OiBDCisgKiBjLWZpbGUtc3R5bGU6ICJCU0QiCisgKiBjLWJhc2ljLW9mZnNldDogNAorICogdGFi LXdpZHRoOiA0CisgKiBpbmRlbnQtdGFicy1tb2RlOiBuaWwKKyAqIEVuZDoKKyAqLwotLSAKMi43 LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4t ZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczov L2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs