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.5 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,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 8ED1FC4332D for ; Thu, 19 Mar 2020 20:24:58 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 65F0820776 for ; Thu, 19 Mar 2020 20:24:58 +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="N3eqadhI" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 65F0820776 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 7EB236EA6A; Thu, 19 Mar 2020 20:24:56 +0000 (UTC) Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) by gabe.freedesktop.org (Postfix) with ESMTPS id 70B046EA6A for ; Thu, 19 Mar 2020 20:24:55 +0000 (UTC) Received: by mail-lf1-x143.google.com with SMTP id z22so2753276lfd.8 for ; Thu, 19 Mar 2020 13:24:55 -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 :mime-version:content-transfer-encoding; bh=kkb6dC7zYFxuu4STQvJSiYgn3PA32r8dUU1DcivblNE=; b=N3eqadhIqyEnhCFpJEAhmO6HMrvg0RQRqcqSib67CpyaVgE0igUXGZTpQFED+7dWtg XW7PB1z0i1BnSFRR0kIl1h2ffUzEEUkpKaFc5cIDbcz582LSUibv3TTtguYxGfPqhN4i KT87B0hYkTs8P4b2opsUptOhgl0xZsXWhszqPWOpodGUUxQlZcNBVm/r1oJ0Us9vUfOC tEg1TFP8JJv3Sxd2WJcDAPx8mFy8aH+3QCXW1I62AmkVf83RXCVGlBzSUk7E6Lusxrwu CwHn5z88QjfYl5vjNdTyjOc7xfxbJsYja+vCi8vq7g0EsMe2IyL5AyXQRzFUcYPH0Hne whdg== 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:mime-version:content-transfer-encoding; bh=kkb6dC7zYFxuu4STQvJSiYgn3PA32r8dUU1DcivblNE=; b=q8ZYnANuwOXfsyR8WMbGdaOGWUBJ9AFVqP/ebuVGUvHgNbrQFNLu0bE7wsw8/vT/HJ Lh0t5FchRTPY31i6VOArFWMxmdTP/bOgHNihRh2iTZiS3J/HqPTvCe8+f7z3pbeBfhQT X62dEW1FoRdzQWvv5Hkh/+cBAf5+FsPszjUXjEa8DiW3yaupAnSWVJ5n+jI1FWuSBXg7 5ucizF1qz+GXfWj2kVOb7wUI6fUmmpcsnSmV+XjNAhmSx4rmRBwmHJh7D67hSsXEAnN+ rLuXqZqzNH+gJ9hJvbh3ZgrN4E3WVSjT8GqfmMCiyR5wBUzs6ANXMqXwKeeRFDAZ0Ppb TWiQ== X-Gm-Message-State: ANhLgQ2frVv2DetuzkoCAN5LWTuNxnp5l23e0D1b7juj01at+8uu3gUS XX+t6BXTaJFTc9fx9H09KMC7oOumOxQ= X-Google-Smtp-Source: ADFU+vv7oGTr+txda0nEAYAVW+2SnipC93WBc4RYqO/FsUCPZgjMsLcR1deoTXYJ1bF0ahYEhnbeVg== X-Received: by 2002:ac2:41c2:: with SMTP id d2mr3176151lfi.164.1584649493037; Thu, 19 Mar 2020 13:24:53 -0700 (PDT) Received: from sroland-t5810.vmware.com (46-126-183-173.dynamic.hispeed.ch. [46.126.183.173]) by smtp.gmail.com with ESMTPSA id v3sm2074372lfp.8.2020.03.19.13.24.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Mar 2020 13:24:52 -0700 (PDT) From: rscheidegger.oss@gmail.com X-Google-Original-From: sroland@vmware.com To: dri-devel@lists.freedesktop.org Subject: [PATCH 04/17] drm/vmwgfx: Use enum to represent graphics context capabilities Date: Thu, 19 Mar 2020 21:24:01 +0100 Message-Id: <20200319202414.9296-5-sroland@vmware.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200319202414.9296-1-sroland@vmware.com> References: <20200319202414.9296-1-sroland@vmware.com> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-graphics-maintainer@vmware.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" RnJvbTogRGVlcGFrIFJhd2F0IDxkcmF3YXQuZmxvc3NAZ21haWwuY29tPgoKSW5zdGVhZCBvZiBo YXZpbmcgZGlmZmVyZW50IGJvb2wgaW4gZGV2aWNlIHByaXZhdGUgdG8gcmVwcmVzZW50CmluY3Jl bWVudGFsIGdyYXBoaWNzIGNvbnRleHQgY2FwYWJpbGl0aWVzLCBhZGQgYSBuZXcgc20gdHlwZSBl bnVtLgoKdjI6IFVzZSBlbnVtIGluc3RlYWQgb2YgYml0IGZsYWcuCgp2MzogSW5jb3Jwb3JhdGVk IHJldmlldyBjb21tZW50cy4KClNpZ25lZC1vZmYtYnk6IERlZXBhayBSYXdhdCA8ZHJhd2F0LmZs b3NzQGdtYWlsLmNvbT4KUmV2aWV3ZWQtYnk6IFRob21hcyBIZWxsc3Ryw7ZtIChWTXdhcmUpIDx0 aG9tYXNfb3NAc2hpcG1haWwub3JnPgpTaWduZWQtb2ZmLWJ5OiBSb2xhbmQgU2NoZWlkZWdnZXIg KFZNd2FyZSkgPHJzY2hlaWRlZ2dlci5vc3NAZ21haWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS92bXdnZngvdm13Z2Z4X2NvbnRleHQuYyB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4 L3Ztd2dmeF9kcnYuYyAgICAgfCAzNCArKysrKysrKysrLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1 L2RybS92bXdnZngvdm13Z2Z4X2Rydi5oICAgICB8IDQwICsrKysrKysrKysrKysrKysrKysrKysr LS0KIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYyB8ICA2ICsrLS0KIGRy aXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2lvY3RsLmMgICB8ICA0ICstLQogZHJpdmVycy9n cHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS92 bXdnZngvdm13Z2Z4X21vYi5jICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Zt d2dmeF9zdXJmYWNlLmMgfCAxMCArKystLS0tCiA4IGZpbGVzIGNoYW5nZWQsIDY5IGluc2VydGlv bnMoKyksIDMxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X2NvbnRleHQuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2NvbnRl eHQuYwppbmRleCBhNTZjOWQ4MDIzODIuLjA0NzdkOWE3NGZlOCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfY29udGV4dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92 bXdnZngvdm13Z2Z4X2NvbnRleHQuYwpAQCAtNzMxLDcgKzczMSw3IEBAIHN0YXRpYyBpbnQgdm13 X2NvbnRleHRfZGVmaW5lKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJfTsK IAlpbnQgcmV0OwogCi0JaWYgKCFkZXZfcHJpdi0+aGFzX2R4ICYmIGR4KSB7CisJaWYgKCFoYXNf c200X2NvbnRleHQoZGV2X3ByaXYpICYmIGR4KSB7CiAJCVZNV19ERUJVR19VU0VSKCJEWCBjb250 ZXh0cyBub3Qgc3VwcG9ydGVkIGJ5IGRldmljZS5cbiIpOwogCQlyZXR1cm4gLUVJTlZBTDsKIAl9 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYyBiL2RyaXZl cnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2Rydi5jCmluZGV4IDBkNWE0NzI1MGQzOC4uZjFjMDA2 OTdhYTc2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYwpAQCAtNDQ5LDcgKzQ0OSw3 IEBAIHN0YXRpYyBpbnQgdm13X3JlcXVlc3RfZGV2aWNlKHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2 X3ByaXYpCiAJZGV2X3ByaXYtPmNtYW4gPSB2bXdfY21kYnVmX21hbl9jcmVhdGUoZGV2X3ByaXYp OwogCWlmIChJU19FUlIoZGV2X3ByaXYtPmNtYW4pKSB7CiAJCWRldl9wcml2LT5jbWFuID0gTlVM TDsKLQkJZGV2X3ByaXYtPmhhc19keCA9IGZhbHNlOworCQlkZXZfcHJpdi0+c21fdHlwZSA9IFZN V19TTV9MRUdBQ1k7CiAJfQogCiAJcmV0ID0gdm13X3JlcXVlc3RfZGV2aWNlX2xhdGUoZGV2X3By aXYpOwpAQCAtODg2LDExICs4ODYsMjIgQEAgc3RhdGljIGludCB2bXdfZHJpdmVyX2xvYWQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgdW5zaWduZWQgbG9uZyBjaGlwc2V0KQogCWlmIChkZXZfcHJp di0+aGFzX21vYiAmJiAoZGV2X3ByaXYtPmNhcGFiaWxpdGllcyAmIFNWR0FfQ0FQX0RYKSkgewog CQlzcGluX2xvY2soJmRldl9wcml2LT5jYXBfbG9jayk7CiAJCXZtd193cml0ZShkZXZfcHJpdiwg U1ZHQV9SRUdfREVWX0NBUCwgU1ZHQTNEX0RFVkNBUF9EWENPTlRFWFQpOwotCQlkZXZfcHJpdi0+ aGFzX2R4ID0gISF2bXdfcmVhZChkZXZfcHJpdiwgU1ZHQV9SRUdfREVWX0NBUCk7CisJCWlmICh2 bXdfcmVhZChkZXZfcHJpdiwgU1ZHQV9SRUdfREVWX0NBUCkpCisJCQlkZXZfcHJpdi0+c21fdHlw ZSA9IFZNV19TTV80OwogCQlzcGluX3VubG9jaygmZGV2X3ByaXYtPmNhcF9sb2NrKTsKIAl9CiAK IAl2bXdfdmFsaWRhdGlvbl9tZW1faW5pdF90dG0oZGV2X3ByaXYsIFZNV0dGWF9WQUxJREFUSU9O X01FTV9HUkFOKTsKKworCS8qIFNWR0FfQ0FQMl9EWDIgKERlZmluZUdCU3VyZmFjZV92MykgaXMg bmVlZGVkIGZvciBTTTRfMSBzdXBwb3J0ICovCisJaWYgKGhhc19zbTRfY29udGV4dChkZXZfcHJp dikgJiYKKwkgICAgKGRldl9wcml2LT5jYXBhYmlsaXRpZXMyICYgU1ZHQV9DQVAyX0RYMikpIHsK KwkJdm13X3dyaXRlKGRldl9wcml2LCBTVkdBX1JFR19ERVZfQ0FQLCBTVkdBM0RfREVWQ0FQX1NN NDEpOworCisJCWlmICh2bXdfcmVhZChkZXZfcHJpdiwgU1ZHQV9SRUdfREVWX0NBUCkpCisJCQlk ZXZfcHJpdi0+c21fdHlwZSA9IFZNV19TTV80XzE7CisJfQorCiAJcmV0ID0gdm13X2ttc19pbml0 KGRldl9wcml2KTsKIAlpZiAodW5saWtlbHkocmV0ICE9IDApKQogCQlnb3RvIG91dF9ub19rbXM7 CkBAIC05MDAsMjMgKzkxMSwxMiBAQCBzdGF0aWMgaW50IHZtd19kcml2ZXJfbG9hZChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCB1bnNpZ25lZCBsb25nIGNoaXBzZXQpCiAJaWYgKHJldCkKIAkJZ290 byBvdXRfbm9fZmlmbzsKIAotCWlmIChkZXZfcHJpdi0+aGFzX2R4KSB7Ci0JCS8qCi0JCSAqIFNW R0FfQ0FQMl9EWDIgKERlZmluZUdCU3VyZmFjZV92MykgaXMgbmVlZGVkIGZvciBTTTRfMQotCQkg KiBzdXBwb3J0Ci0JCSAqLwotCQlpZiAoKGRldl9wcml2LT5jYXBhYmlsaXRpZXMyICYgU1ZHQV9D QVAyX0RYMikgIT0gMCkgewotCQkJdm13X3dyaXRlKGRldl9wcml2LCBTVkdBX1JFR19ERVZfQ0FQ LAotCQkJCQlTVkdBM0RfREVWQ0FQX1NNNDEpOwotCQkJZGV2X3ByaXYtPmhhc19zbTRfMSA9IHZt d19yZWFkKGRldl9wcml2LAotCQkJCQkJCVNWR0FfUkVHX0RFVl9DQVApOwotCQl9Ci0JfQotCi0J RFJNX0lORk8oIkRYOiAlc1xuIiwgZGV2X3ByaXYtPmhhc19keCA/ICJ5ZXMuIiA6ICJuby4iKTsK IAlEUk1fSU5GTygiQXRvbWljOiAlc1xuIiwgKGRldi0+ZHJpdmVyLT5kcml2ZXJfZmVhdHVyZXMg JiBEUklWRVJfQVRPTUlDKQogCQkgPyAieWVzLiIgOiAibm8uIik7Ci0JRFJNX0lORk8oIlNNNF8x OiAlc1xuIiwgZGV2X3ByaXYtPmhhc19zbTRfMSA/ICJ5ZXMuIiA6ICJuby4iKTsKKwlpZiAoZGV2 X3ByaXYtPnNtX3R5cGUgPT0gVk1XX1NNXzRfMSkKKwkJRFJNX0lORk8oIlNNNF8xIHN1cHBvcnQg YXZhaWxhYmxlLlxuIik7CisJaWYgKGRldl9wcml2LT5zbV90eXBlID09IFZNV19TTV80KQorCQlE Uk1fSU5GTygiU000IHN1cHBvcnQgYXZhaWxhYmxlLlxuIik7CiAKIAlzbnByaW50Zihob3N0X2xv Zywgc2l6ZW9mKGhvc3RfbG9nKSwgInZtd2dmeDogJXMtJXMiLAogCQlWTVdHRlhfUkVQTywgVk1X R0ZYX0dJVF9WRVJTSU9OKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13 Z2Z4X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZHJ2LmgKaW5kZXggODZi NjkzOTdkMTY2Li44ZTJjYjAzOTRmNGUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2Rydi5o CkBAIC00NDEsNiArNDQxLDIwIEBAIGVudW0gewogCVZNV19JUlFUSFJFQURfTUFYCiB9OwogCisv KioKKyAqIGVudW0gdm13X3NtX3R5cGUgLSBHcmFwaGljcyBjb250ZXh0IGNhcGFiaWxpdHkgc3Vw cG9ydGVkIGJ5IGRldmljZS4KKyAqIEBWTVdfU01fTEVHQUNZOiBQcmUgRFggY29udGV4dC4KKyAq IEBWTVdfU01fNDogQ29udGV4dCBzdXBwb3J0IHVwdG8gU000LgorICogQFZNV19TTV80XzE6IENv bnRleHQgc3VwcG9ydCB1cHRvIFNNNF8xLgorICogQFZNV19TTV9NQVg6IFNob3VsZCBiZSB0aGUg bGFzdC4KKyAqLworZW51bSB2bXdfc21fdHlwZSB7CisJVk1XX1NNX0xFR0FDWSA9IDAsCisJVk1X X1NNXzQsCisJVk1XX1NNXzRfMSwKKwlWTVdfU01fTUFYCit9OworCiBzdHJ1Y3Qgdm13X3ByaXZh dGUgewogCXN0cnVjdCB0dG1fYm9fZGV2aWNlIGJkZXY7CiAKQEAgLTQ3NSw5ICs0ODksOSBAQCBz dHJ1Y3Qgdm13X3ByaXZhdGUgewogCWJvb2wgaGFzX21vYjsKIAlzcGlubG9ja190IGh3X2xvY2s7 CiAJc3BpbmxvY2tfdCBjYXBfbG9jazsKLQlib29sIGhhc19keDsKIAlib29sIGFzc3VtZV8xNmJw cDsKLQlib29sIGhhc19zbTRfMTsKKworCWVudW0gdm13X3NtX3R5cGUgc21fdHlwZTsKIAogCS8q CiAJICogVkdBIHJlZ2lzdGVycy4KQEAgLTY2MSw2ICs2NzUsMjggQEAgc3RhdGljIGlubGluZSB1 aW50MzJfdCB2bXdfcmVhZChzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LAogCXJldHVybiB2 YWw7CiB9CiAKKy8qKgorICogaGFzX3NtNF9jb250ZXh0IC0gRG9lcyB0aGUgZGV2aWNlIHN1cHBv cnQgU000IGNvbnRleHQuCisgKiBAZGV2X3ByaXY6IERldmljZSBwcml2YXRlLgorICoKKyAqIFJl dHVybjogQm9vbCB2YWx1ZSBpZiBkZXZpY2Ugc3VwcG9ydCBTTTQgY29udGV4dCBvciBub3QuCisg Ki8KK3N0YXRpYyBpbmxpbmUgYm9vbCBoYXNfc200X2NvbnRleHQoY29uc3Qgc3RydWN0IHZtd19w cml2YXRlICpkZXZfcHJpdikKK3sKKwlyZXR1cm4gKGRldl9wcml2LT5zbV90eXBlID49IFZNV19T TV80KTsKK30KKworLyoqCisgKiBoYXNfc200XzFfY29udGV4dCAtIERvZXMgdGhlIGRldmljZSBz dXBwb3J0IFNNNF8xIGNvbnRleHQuCisgKiBAZGV2X3ByaXY6IERldmljZSBwcml2YXRlLgorICoK KyAqIFJldHVybjogQm9vbCB2YWx1ZSBpZiBkZXZpY2Ugc3VwcG9ydCBTTTRfMSBjb250ZXh0IG9y IG5vdC4KKyAqLworc3RhdGljIGlubGluZSBib29sIGhhc19zbTRfMV9jb250ZXh0KGNvbnN0IHN0 cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYpCit7CisJcmV0dXJuIChkZXZfcHJpdi0+c21fdHlw ZSA+PSBWTVdfU01fNF8xKTsKK30KKwogZXh0ZXJuIHZvaWQgdm13X3N2Z2FfZW5hYmxlKHN0cnVj dCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYpOwogZXh0ZXJuIHZvaWQgdm13X3N2Z2FfZGlzYWJsZShz dHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2KTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL3Ztd2dmeC92bXdnZnhfZXhlY2J1Zi5jIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdn ZnhfZXhlY2J1Zi5jCmluZGV4IDc0YTJjN2VjOTE5OC4uNzNmMTlmMGZlYzg4IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9leGVjYnVmLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL3Ztd2dmeC92bXdnZnhfZXhlY2J1Zi5jCkBAIC00NjEsNyArNDYxLDggQEAgc3RhdGlj IGludCB2bXdfcmVzb3VyY2VfY29udGV4dF9yZXNfYWRkKHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2 X3ByaXYsCiAJdTMyIGk7CiAKIAkvKiBBZGQgYWxsIGNvdGFibGVzIHRvIHRoZSB2YWxpZGF0aW9u IGxpc3QuICovCi0JaWYgKGRldl9wcml2LT5oYXNfZHggJiYgdm13X3Jlc190eXBlKGN0eCkgPT0g dm13X3Jlc19keF9jb250ZXh0KSB7CisJaWYgKGhhc19zbTRfY29udGV4dChkZXZfcHJpdikgJiYK KwkgICAgdm13X3Jlc190eXBlKGN0eCkgPT0gdm13X3Jlc19keF9jb250ZXh0KSB7CiAJCWZvciAo aSA9IDA7IGkgPCBTVkdBX0NPVEFCTEVfRFgxMF9NQVg7ICsraSkgewogCQkJcmVzID0gdm13X2Nv bnRleHRfY290YWJsZShjdHgsIGkpOwogCQkJaWYgKElTX0VSUihyZXMpKQpAQCAtNDg5LDcgKzQ5 MCw4IEBAIHN0YXRpYyBpbnQgdm13X3Jlc291cmNlX2NvbnRleHRfcmVzX2FkZChzdHJ1Y3Qgdm13 X3ByaXZhdGUgKmRldl9wcml2LAogCQkJYnJlYWs7CiAJfQogCi0JaWYgKGRldl9wcml2LT5oYXNf ZHggJiYgdm13X3Jlc190eXBlKGN0eCkgPT0gdm13X3Jlc19keF9jb250ZXh0KSB7CisJaWYgKGhh c19zbTRfY29udGV4dChkZXZfcHJpdikgJiYKKwkgICAgdm13X3Jlc190eXBlKGN0eCkgPT0gdm13 X3Jlc19keF9jb250ZXh0KSB7CiAJCXN0cnVjdCB2bXdfYnVmZmVyX29iamVjdCAqZHhfcXVlcnlf bW9iOwogCiAJCWR4X3F1ZXJ5X21vYiA9IHZtd19jb250ZXh0X2dldF9keF9xdWVyeV9tb2IoY3R4 KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2lvY3RsLmMgYi9k cml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9pb2N0bC5jCmluZGV4IDA5YjI1NTQ2NWY5OS4u MGFmNDI4NzViYTRlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9p b2N0bC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2lvY3RsLmMKQEAgLTEx NCwxMCArMTE0LDEwIEBAIGludCB2bXdfZ2V0cGFyYW1faW9jdGwoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwgdm9pZCAqZGF0YSwKIAkJCShkZXZfcHJpdi0+YWN0aXZlX2Rpc3BsYXlfdW5pdCA9PSB2 bXdfZHVfc2NyZWVuX3RhcmdldCk7CiAJCWJyZWFrOwogCWNhc2UgRFJNX1ZNV19QQVJBTV9EWDoK LQkJcGFyYW0tPnZhbHVlID0gZGV2X3ByaXYtPmhhc19keDsKKwkJcGFyYW0tPnZhbHVlID0gaGFz X3NtNF9jb250ZXh0KGRldl9wcml2KTsKIAkJYnJlYWs7CiAJY2FzZSBEUk1fVk1XX1BBUkFNX1NN NF8xOgotCQlwYXJhbS0+dmFsdWUgPSBkZXZfcHJpdi0+aGFzX3NtNF8xOworCQlwYXJhbS0+dmFs dWUgPSBoYXNfc200XzFfY29udGV4dChkZXZfcHJpdik7CiAJCWJyZWFrOwogCWRlZmF1bHQ6CiAJ CXJldHVybiAtRUlOVkFMOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdn Znhfa21zLmMgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYwppbmRleCBmNDdk NTcxMGNjOTUuLjMxM2YwMzQyZWRmZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dm eC92bXdnZnhfa21zLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMK QEAgLTk0MSw3ICs5NDEsNyBAQCBzdGF0aWMgaW50IHZtd19rbXNfbmV3X2ZyYW1lYnVmZmVyX3N1 cmZhY2Uoc3RydWN0IHZtd19wcml2YXRlICpkZXZfcHJpdiwKIAkgKiBGb3IgRFgsIHN1cmZhY2Ug Zm9ybWF0IHZhbGlkYXRpb24gaXMgZG9uZSB3aGVuIHN1cmZhY2UtPnNjYW5vdXQKIAkgKiBpcyBz ZXQuCiAJICovCi0JaWYgKCFkZXZfcHJpdi0+aGFzX2R4ICYmIGZvcm1hdCAhPSBzdXJmYWNlLT5m b3JtYXQpIHsKKwlpZiAoIWhhc19zbTRfY29udGV4dChkZXZfcHJpdikgJiYgZm9ybWF0ICE9IHN1 cmZhY2UtPmZvcm1hdCkgewogCQlEUk1fRVJST1IoIkludmFsaWQgc3VyZmFjZSBmb3JtYXQgZm9y IHJlcXVlc3RlZCBtb2RlLlxuIik7CiAJCXJldHVybiAtRUlOVkFMOwogCX0KZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X21vYi5jIGIvZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfbW9iLmMKaW5kZXggMGE2YmJhYzAwODk2Li5lOGViNDI5MzNjYTIgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X21vYi5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS92bXdnZngvdm13Z2Z4X21vYi5jCkBAIC0zMjAsNyArMzIwLDcgQEAgaW50IHZtd19v dGFibGVzX3NldHVwKHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJc3RydWN0IHZtd19v dGFibGUgKipvdGFibGVzID0gJmRldl9wcml2LT5vdGFibGVfYmF0Y2gub3RhYmxlczsKIAlpbnQg cmV0OwogCi0JaWYgKGRldl9wcml2LT5oYXNfZHgpIHsKKwlpZiAoaGFzX3NtNF9jb250ZXh0KGRl dl9wcml2KSkgewogCQkqb3RhYmxlcyA9IGttZW1kdXAoZHhfdGFibGVzLCBzaXplb2YoZHhfdGFi bGVzKSwgR0ZQX0tFUk5FTCk7CiAJCWlmICghKCpvdGFibGVzKSkKIAkJCXJldHVybiAtRU5PTUVN OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfc3VyZmFjZS5jIGIv ZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfc3VyZmFjZS5jCmluZGV4IDNjZTYzMGFhNGZk ZS4uMmE5MTViZGQ0YjUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dm eF9zdXJmYWNlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfc3VyZmFjZS5j CkBAIC0xMDkyLDEyICsxMDkyLDEyIEBAIHN0YXRpYyBpbnQgdm13X2diX3N1cmZhY2VfY3JlYXRl KHN0cnVjdCB2bXdfcmVzb3VyY2UgKnJlcykKIAkJZ290byBvdXRfbm9fZmlmbzsKIAl9CiAKLQlp ZiAoZGV2X3ByaXYtPmhhc19zbTRfMSAmJiBzcmYtPmFycmF5X3NpemUgPiAwKSB7CisJaWYgKGhh c19zbTRfMV9jb250ZXh0KGRldl9wcml2KSAmJiBzcmYtPmFycmF5X3NpemUgPiAwKSB7CiAJCWNt ZF9pZCA9IFNWR0FfM0RfQ01EX0RFRklORV9HQl9TVVJGQUNFX1YzOwogCQljbWRfbGVuID0gc2l6 ZW9mKGNtZDMtPmJvZHkpOwogCQlzdWJtaXRfbGVuID0gc2l6ZW9mKCpjbWQzKTsKIAl9IGVsc2Ug aWYgKHNyZi0+YXJyYXlfc2l6ZSA+IDApIHsKLQkJLyogaGFzX2R4IGNoZWNrZWQgb24gY3JlYXRp b24gdGltZS4gKi8KKwkJLyogVk1XX1NNXzQgc3VwcG9ydCB2ZXJpZmllZCBhdCBjcmVhdGlvbiB0 aW1lLiAqLwogCQljbWRfaWQgPSBTVkdBXzNEX0NNRF9ERUZJTkVfR0JfU1VSRkFDRV9WMjsKIAkJ Y21kX2xlbiA9IHNpemVvZihjbWQyLT5ib2R5KTsKIAkJc3VibWl0X2xlbiA9IHNpemVvZigqY21k Mik7CkBAIC0xMTE1LDcgKzExMTUsNyBAQCBzdGF0aWMgaW50IHZtd19nYl9zdXJmYWNlX2NyZWF0 ZShzdHJ1Y3Qgdm13X3Jlc291cmNlICpyZXMpCiAJCWdvdG8gb3V0X25vX2ZpZm87CiAJfQogCi0J aWYgKGRldl9wcml2LT5oYXNfc200XzEgJiYgc3JmLT5hcnJheV9zaXplID4gMCkgeworCWlmICho YXNfc200XzFfY29udGV4dChkZXZfcHJpdikgJiYgc3JmLT5hcnJheV9zaXplID4gMCkgewogCQlj bWQzLT5oZWFkZXIuaWQgPSBjbWRfaWQ7CiAJCWNtZDMtPmhlYWRlci5zaXplID0gY21kX2xlbjsK IAkJY21kMy0+Ym9keS5zaWQgPSBzcmYtPnJlcy5pZDsKQEAgLTE0NDMsNyArMTQ0Myw3IEBAIGlu dCB2bXdfc3VyZmFjZV9nYl9wcml2X2RlZmluZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCX0K IAogCS8qIGFycmF5X3NpemUgbXVzdCBiZSBudWxsIGZvciBub24tR0wzIGhvc3QuICovCi0JaWYg KGFycmF5X3NpemUgPiAwICYmICFkZXZfcHJpdi0+aGFzX2R4KSB7CisJaWYgKGFycmF5X3NpemUg PiAwICYmICFoYXNfc200X2NvbnRleHQoZGV2X3ByaXYpKSB7CiAJCVZNV19ERUJVR19VU0VSKCJU cmllZCB0byBjcmVhdGUgRFggc3VyZmFjZSBvbiBub24tRFggaG9zdC5cbiIpOwogCQlyZXR1cm4g LUVJTlZBTDsKIAl9CkBAIC0xNjAxLDcgKzE2MDEsNyBAQCB2bXdfZ2Jfc3VyZmFjZV9kZWZpbmVf aW50ZXJuYWwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJU1ZHQTNEX0ZMQUdTXzY0KHJlcS0+ c3ZnYTNkX2ZsYWdzX3VwcGVyXzMyX2JpdHMsCiAJCQkJcmVxLT5iYXNlLnN2Z2EzZF9mbGFncyk7 CiAKLQlpZiAoIWRldl9wcml2LT5oYXNfc200XzEpIHsKKwlpZiAoIWhhc19zbTRfMV9jb250ZXh0 KGRldl9wcml2KSkgewogCQkvKgogCQkgKiBJZiBTTTRfMSBpcyBub3Qgc3VwcG9ydCB0aGVuIGNh bm5vdCBzZW5kIDY0LWJpdCBmbGFnIHRvCiAJCSAqIGRldmljZS4KLS0gCjIuMTcuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==