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=-5.7 required=3.0 tests=DKIM_ADSP_ALL,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS 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 50328C2D0C2 for ; Fri, 3 Jan 2020 09:24:53 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (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 19CD921D7D for ; Fri, 3 Jan 2020 09:24:51 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=alsa-project.org header.i=@alsa-project.org header.b="oKldFm3Q"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=rere.qmqm.pl header.i=@rere.qmqm.pl header.b="npFi5Pf1" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 19CD921D7D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rere.qmqm.pl Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id C9E7C1750; Fri, 3 Jan 2020 10:23:59 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz C9E7C1750 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1578043489; bh=+fdvS+ODV85coheWvO6/ORot+t+LB8gIJJfOw8vlsoE=; h=Date:From:To:Cc:Subject:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From; b=oKldFm3QLxpoO7pTMUONSOBpCbVesLZ/pdDBgWbRLSmNbBXwSaNmpYzdH6n5YLeIN tt+jVJWIpPX+8LWNlxZg/4WRn+hZBKvBwhg1fyYtG+hyq0UjpFAVWVt03tIKSZPTI1 OlfEhyo8YOWFBUy98PakcLpfl0K3LIqGfLyEDDjg= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 61A35F80100; Fri, 3 Jan 2020 10:23:59 +0100 (CET) Received: by alsa1.perex.cz (Postfix, from userid 50401) id 20ABBF8015D; Fri, 3 Jan 2020 10:23:57 +0100 (CET) Received: from rere.qmqm.pl (rere.qmqm.pl [91.227.64.183]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 85AD5F80100 for ; Fri, 3 Jan 2020 10:23:52 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 85AD5F80100 Authentication-Results: alsa1.perex.cz; dkim=pass (2048-bit key) header.d=rere.qmqm.pl header.i=@rere.qmqm.pl header.b="npFi5Pf1" Received: from remote.user (localhost [127.0.0.1]) by rere.qmqm.pl (Postfix) with ESMTPSA id 47pzx352xQz9d; Fri, 3 Jan 2020 10:23:51 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=rere.qmqm.pl; s=1; t=1578043432; bh=hAcHx2yMK1FsKNOtlGAhlHhl3AGXKLU2bOKPIXuXgTw=; h=Date:From:Subject:To:Cc:From; b=npFi5Pf1nAYA+JBslUFXciCtd2mLLGZK+Q2Rz5tHJnPtvuBgTXLCtXqVW42Oju9fd xNu9nkU9PzGgyjNonc6jwFiKkuuiwcdofA3vmFRQblDhJYVzOKjbCQNLu0SWhiSID6 R4ssF4chWB74X+q0nyDWN8vuZMsGPjLASk5I2y8cbIueDxQH8iK5MRzkRiL+LS4gXL WtYWcmtoP/QmEymrusEJLO/nU1PSIH3Drw7fdng0deAWU8vL9yFpfjllX8aVfyPHO2 Bqd1/UsA63QRgf2+4ipPcBmPYY3PMQl9H2XD8UKdNkZEQvJqzTWCmgFsXEoq72solM d6e8plYqzPPmg== X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.101.4 at mail Date: Fri, 03 Jan 2020 10:23:48 +0100 Message-Id: <5150c94101c9534f4c8e987324f6912c16d459f6.1578043216.git.mirq-linux@rere.qmqm.pl> From: =?UTF-8?q?Micha=C5=82=20Miros=C5=82aw?= MIME-Version: 1.0 To: Jaroslav Kysela , Takashi Iwai Cc: alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: [alsa-devel] [PATCH] ALSA: hda - constify and cleanup static NodeID tables X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" TWFrZSBoZGFfbmlkX3QgdGFibGVzIHN0YXRpYyBjb25zdCwgYXMgdGhleSBhcmUgbm90IGludGVu ZGVkIHRvIGJlCm1vZGlmaWVkIGJ5IGNhbGxlZXMuCgotLS0KKiBwYXRjaCBhZ2FpbnN0IHRpd2Fp L3NvdW5kL3RvcGljL2NvbnN0aWZpY2F0aW9uIGJyYW5jaAoKU2lnbmVkLW9mZi1ieTogTWljaGHF giBNaXJvc8WCYXcgPG1pcnEtbGludXhAcmVyZS5xbXFtLnBsPgotLS0KIHNvdW5kL3BjaS9oZGEv aGRhX2dlbmVyaWMuYyAgICB8ICA0ICstLQogc291bmQvcGNpL2hkYS9wYXRjaF9hbmFsb2cuYyAg IHwgIDYgKystLQogc291bmQvcGNpL2hkYS9wYXRjaF9jYTAxMzIuYyAgIHwgMTIgKysrLS0tLQog c291bmQvcGNpL2hkYS9wYXRjaF9jb25leGFudC5jIHwgIDYgKystLQogc291bmQvcGNpL2hkYS9w YXRjaF9yZWFsdGVrLmMgIHwgNjIgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQog c291bmQvcGNpL2hkYS9wYXRjaF9zaWdtYXRlbC5jIHwgIDQgKy0tCiBzb3VuZC9wY2kvaGRhL3Bh dGNoX3ZpYS5jICAgICAgfCAgNCArLS0KIDcgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygr KSwgNDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc291bmQvcGNpL2hkYS9oZGFfZ2VuZXJp Yy5jIGIvc291bmQvcGNpL2hkYS9oZGFfZ2VuZXJpYy5jCmluZGV4IDEwZDUwMjMyOGI3Ni4uZmMw MDFjNjRlZjIwIDEwMDY0NAotLS0gYS9zb3VuZC9wY2kvaGRhL2hkYV9nZW5lcmljLmMKKysrIGIv c291bmQvcGNpL2hkYS9oZGFfZ2VuZXJpYy5jCkBAIC00NDAxLDcgKzQ0MDEsNyBAQCBFWFBPUlRf U1lNQk9MX0dQTChzbmRfaGRhX2dlbl9maXhfcGluX3Bvd2VyKTsKICAqLwogCiAvKiBjaGVjayBl YWNoIHBpbiBpbiB0aGUgZ2l2ZW4gYXJyYXk7IHJldHVybnMgdHJ1ZSBpZiBhbnkgb2YgdGhlbSBp cyBwbHVnZ2VkICovCi1zdGF0aWMgYm9vbCBkZXRlY3RfamFja3Moc3RydWN0IGhkYV9jb2RlYyAq Y29kZWMsIGludCBudW1fcGlucywgaGRhX25pZF90ICpwaW5zKQorc3RhdGljIGJvb2wgZGV0ZWN0 X2phY2tzKHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjLCBpbnQgbnVtX3BpbnMsIGNvbnN0IGhkYV9u aWRfdCAqcGlucykKIHsKIAlpbnQgaTsKIAlib29sIHByZXNlbnQgPSBmYWxzZTsKQEAgLTQ0MjAs NyArNDQyMCw3IEBAIHN0YXRpYyBib29sIGRldGVjdF9qYWNrcyhzdHJ1Y3QgaGRhX2NvZGVjICpj b2RlYywgaW50IG51bV9waW5zLCBoZGFfbmlkX3QgKnBpbnMpCiB9CiAKIC8qIHN0YW5kYXJkIEhQ L2xpbmUtb3V0IGF1dG8tbXV0ZSBoZWxwZXIgKi8KLXN0YXRpYyB2b2lkIGRvX2F1dG9tdXRlKHN0 cnVjdCBoZGFfY29kZWMgKmNvZGVjLCBpbnQgbnVtX3BpbnMsIGhkYV9uaWRfdCAqcGlucywKK3N0 YXRpYyB2b2lkIGRvX2F1dG9tdXRlKHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjLCBpbnQgbnVtX3Bp bnMsIGNvbnN0IGhkYV9uaWRfdCAqcGlucywKIAkJCWludCAqcGF0aHMsIGJvb2wgbXV0ZSkKIHsK IAlzdHJ1Y3QgaGRhX2dlbl9zcGVjICpzcGVjID0gY29kZWMtPnNwZWM7CmRpZmYgLS1naXQgYS9z b3VuZC9wY2kvaGRhL3BhdGNoX2FuYWxvZy5jIGIvc291bmQvcGNpL2hkYS9wYXRjaF9hbmFsb2cu YwppbmRleCBiYzlkZDhlNmZkODYuLmM2NDg5NWY5OTI5OSAxMDA2NDQKLS0tIGEvc291bmQvcGNp L2hkYS9wYXRjaF9hbmFsb2cuYworKysgYi9zb3VuZC9wY2kvaGRhL3BhdGNoX2FuYWxvZy5jCkBA IC0zODksNyArMzg5LDcgQEAgc3RhdGljIGludCBwYXRjaF9hZDE5ODZhKHN0cnVjdCBoZGFfY29k ZWMgKmNvZGVjKQogewogCWludCBlcnI7CiAJc3RydWN0IGFkMTk4eF9zcGVjICpzcGVjOwotCXN0 YXRpYyBoZGFfbmlkX3QgcHJlZmVycmVkX3BhaXJzW10gPSB7CisJc3RhdGljIGNvbnN0IGhkYV9u aWRfdCBwcmVmZXJyZWRfcGFpcnNbXSA9IHsKIAkJMHgxYSwgMHgwMywKIAkJMHgxYiwgMHgwMywK IAkJMHgxYywgMHgwNCwKQEAgLTUxOSw5ICs1MTksOSBAQCBzdGF0aWMgaW50IGFkMTk4M19hZGRf c3BkaWZfbXV4X2N0bChzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYykKIAogc3RhdGljIGludCBwYXRj aF9hZDE5ODMoc3RydWN0IGhkYV9jb2RlYyAqY29kZWMpCiB7CisJc3RhdGljIGNvbnN0IGhkYV9u aWRfdCBjb25uXzBjW10gPSB7IDB4MDggfTsKKwlzdGF0aWMgY29uc3QgaGRhX25pZF90IGNvbm5f MGRbXSA9IHsgMHgwOSB9OwogCXN0cnVjdCBhZDE5OHhfc3BlYyAqc3BlYzsKLQlzdGF0aWMgaGRh X25pZF90IGNvbm5fMGNbXSA9IHsgMHgwOCB9OwotCXN0YXRpYyBoZGFfbmlkX3QgY29ubl8wZFtd ID0geyAweDA5IH07CiAJaW50IGVycjsKIAogCWVyciA9IGFsbG9jX2FkX3NwZWMoY29kZWMpOwpk aWZmIC0tZ2l0IGEvc291bmQvcGNpL2hkYS9wYXRjaF9jYTAxMzIuYyBiL3NvdW5kL3BjaS9oZGEv cGF0Y2hfY2EwMTMyLmMKaW5kZXggMzJlZDQ2NDY0YWY3Li4yNTA1MzRmOTBjZTAgMTAwNjQ0Ci0t LSBhL3NvdW5kL3BjaS9oZGEvcGF0Y2hfY2EwMTMyLmMKKysrIGIvc291bmQvcGNpL2hkYS9wYXRj aF9jYTAxMzIuYwpAQCAtNzgwMiwyMyArNzgwMiwyMyBAQCBzdGF0aWMgdm9pZCBzYnpfcmVnaW9u Ml9leGl0KHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjKQogCiBzdGF0aWMgdm9pZCBzYnpfc2V0X3Bp bl9jdGxfZGVmYXVsdChzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYykKIHsKLQloZGFfbmlkX3QgcGlu c1s1XSA9IHsweDBCLCAweDBDLCAweDBFLCAweDEyLCAweDEzfTsKKwlzdGF0aWMgY29uc3QgaGRh X25pZF90IHBpbnNbXSA9IHsweDBCLCAweDBDLCAweDBFLCAweDEyLCAweDEzfTsKIAl1bnNpZ25l ZCBpbnQgaTsKIAogCXNuZF9oZGFfY29kZWNfd3JpdGUoY29kZWMsIDB4MTEsIDAsCiAJCQlBQ19W RVJCX1NFVF9QSU5fV0lER0VUX0NPTlRST0wsIDB4NDApOwogCi0JZm9yIChpID0gMDsgaSA8IDU7 IGkrKykKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShwaW5zKTsgaSsrKQogCQlzbmRfaGRh X2NvZGVjX3dyaXRlKGNvZGVjLCBwaW5zW2ldLCAwLAogCQkJCUFDX1ZFUkJfU0VUX1BJTl9XSURH RVRfQ09OVFJPTCwgMHgwMCk7CiB9CiAKIHN0YXRpYyB2b2lkIGNhMDEzMl9jbGVhcl91bnNvbGlj aXRlZChzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYykKIHsKLQloZGFfbmlkX3QgcGluc1s3XSA9IHsw eDBCLCAweDBFLCAweDBGLCAweDEwLCAweDExLCAweDEyLCAweDEzfTsKKwlzdGF0aWMgY29uc3Qg aGRhX25pZF90IHBpbnNbXSA9IHsweDBCLCAweDBFLCAweDBGLCAweDEwLCAweDExLCAweDEyLCAw eDEzfTsKIAl1bnNpZ25lZCBpbnQgaTsKIAotCWZvciAoaSA9IDA7IGkgPCA3OyBpKyspIHsKKwlm b3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShwaW5zKTsgaSsrKSB7CiAJCXNuZF9oZGFfY29kZWNf d3JpdGUoY29kZWMsIHBpbnNbaV0sIDAsCiAJCQkJQUNfVkVSQl9TRVRfVU5TT0xJQ0lURURfRU5B QkxFLCAweDAwKTsKIAl9CkBAIC03ODQyLDEwICs3ODQyLDEwIEBAIHN0YXRpYyB2b2lkIHNiel9n cGlvX3NodXRkb3duX2NvbW1hbmRzKHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjLCBpbnQgZGlyLAog CiBzdGF0aWMgdm9pZCB6eHJfZGJwcm9fcG93ZXJfc3RhdGVfc2h1dGRvd24oc3RydWN0IGhkYV9j b2RlYyAqY29kZWMpCiB7Ci0JaGRhX25pZF90IHBpbnNbN10gPSB7MHgwNSwgMHgwYywgMHgwOSwg MHgwZSwgMHgwOCwgMHgxMSwgMHgwMX07CisJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBwaW5zW10g PSB7MHgwNSwgMHgwYywgMHgwOSwgMHgwZSwgMHgwOCwgMHgxMSwgMHgwMX07CiAJdW5zaWduZWQg aW50IGk7CiAKLQlmb3IgKGkgPSAwOyBpIDwgNzsgaSsrKQorCWZvciAoaSA9IDA7IGkgPCBBUlJB WV9TSVpFKHBpbnMpOyBpKyspCiAJCXNuZF9oZGFfY29kZWNfd3JpdGUoY29kZWMsIHBpbnNbaV0s IDAsCiAJCQkJQUNfVkVSQl9TRVRfUE9XRVJfU1RBVEUsIDB4MDMpOwogfQpkaWZmIC0tZ2l0IGEv c291bmQvcGNpL2hkYS9wYXRjaF9jb25leGFudC5jIGIvc291bmQvcGNpL2hkYS9wYXRjaF9jb25l eGFudC5jCmluZGV4IDkwYWEwZjQwMGE1Ny4uOTg1M2UwMGEwODE2IDEwMDY0NAotLS0gYS9zb3Vu ZC9wY2kvaGRhL3BhdGNoX2NvbmV4YW50LmMKKysrIGIvc291bmQvcGNpL2hkYS9wYXRjaF9jb25l eGFudC5jCkBAIC0xMTYsNyArMTE2LDcgQEAgc3RhdGljIHZvaWQgY3hfYXV0b19wYXJzZV9lYXBk KHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjKQogfQogCiBzdGF0aWMgdm9pZCBjeF9hdXRvX3R1cm5f ZWFwZChzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywgaW50IG51bV9waW5zLAotCQkJICAgICAgaGRh X25pZF90ICpwaW5zLCBib29sIG9uKQorCQkJICAgICAgY29uc3QgaGRhX25pZF90ICpwaW5zLCBi b29sIG9uKQogewogCWludCBpOwogCWZvciAoaSA9IDA7IGkgPCBudW1fcGluczsgaSsrKSB7CkBA IC05NTksMTAgKzk1OSwxMCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGhkYV9tb2RlbF9maXh1cCBj eHQ1MDY2X2ZpeHVwX21vZGVsc1tdID0gewogc3RhdGljIHZvaWQgYWRkX2N4NTA1MV9mYWtlX211 dGVzKHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjKQogewogCXN0cnVjdCBjb25leGFudF9zcGVjICpz cGVjID0gY29kZWMtPnNwZWM7Ci0Jc3RhdGljIGhkYV9uaWRfdCBvdXRfbmlkc1tdID0geworCXN0 YXRpYyBjb25zdCBoZGFfbmlkX3Qgb3V0X25pZHNbXSA9IHsKIAkJMHgxMCwgMHgxMSwgMAogCX07 Ci0JaGRhX25pZF90ICpwOworCWNvbnN0IGhkYV9uaWRfdCAqcDsKIAogCWZvciAocCA9IG91dF9u aWRzOyAqcDsgcCsrKQogCQlzbmRfaGRhX292ZXJyaWRlX2FtcF9jYXBzKGNvZGVjLCAqcCwgSERB X09VVFBVVCwKZGlmZiAtLWdpdCBhL3NvdW5kL3BjaS9oZGEvcGF0Y2hfcmVhbHRlay5jIGIvc291 bmQvcGNpL2hkYS9wYXRjaF9yZWFsdGVrLmMKaW5kZXggZGJmYWZlZTk3OTMxLi41YmIxOTU5ZGFl MGYgMTAwNjQ0Ci0tLSBhL3NvdW5kL3BjaS9oZGEvcGF0Y2hfcmVhbHRlay5jCisrKyBiL3NvdW5k L3BjaS9oZGEvcGF0Y2hfcmVhbHRlay5jCkBAIC00NjQsMTAgKzQ2NCwxMCBAQCBzdGF0aWMgdm9p ZCBzZXRfZWFwZChzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywgaGRhX25pZF90IG5pZCwgaW50IG9u KQogc3RhdGljIHZvaWQgYWxjX2F1dG9fc2V0dXBfZWFwZChzdHJ1Y3QgaGRhX2NvZGVjICpjb2Rl YywgYm9vbCBvbikKIHsKIAkvKiBXZSBjdXJyZW50bHkgb25seSBoYW5kbGUgZnJvbnQsIEhQICov Ci0Jc3RhdGljIGhkYV9uaWRfdCBwaW5zW10gPSB7CisJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBw aW5zW10gPSB7CiAJCTB4MGYsIDB4MTAsIDB4MTQsIDB4MTUsIDB4MTcsIDAKIAl9OwotCWhkYV9u aWRfdCAqcDsKKwljb25zdCBoZGFfbmlkX3QgKnA7CiAJZm9yIChwID0gcGluczsgKnA7IHArKykK IAkJc2V0X2VhcGQoY29kZWMsICpwLCBvbik7CiB9CkBAIC0xOTM1LDE5ICsxOTM1LDE5IEBAIHN0 YXRpYyB2b2lkIGFsYzg4OV9maXh1cF9kYWNfcm91dGUoc3RydWN0IGhkYV9jb2RlYyAqY29kZWMs CiB7CiAJaWYgKGFjdGlvbiA9PSBIREFfRklYVVBfQUNUX1BSRV9QUk9CRSkgewogCQkvKiBmYWtl IHRoZSBjb25uZWN0aW9ucyBkdXJpbmcgcGFyc2luZyB0aGUgdHJlZSAqLwotCQloZGFfbmlkX3Qg Y29ubjFbMl0gPSB7IDB4MGMsIDB4MGQgfTsKLQkJaGRhX25pZF90IGNvbm4yWzJdID0geyAweDBl LCAweDBmIH07Ci0JCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE0LCAyLCBj b25uMSk7Ci0JCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE1LCAyLCBjb25u MSk7Ci0JCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE4LCAyLCBjb25uMik7 Ci0JCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDFhLCAyLCBjb25uMik7CisJ CXN0YXRpYyBjb25zdCBoZGFfbmlkX3QgY29ubjFbXSA9IHsgMHgwYywgMHgwZCB9OworCQlzdGF0 aWMgY29uc3QgaGRhX25pZF90IGNvbm4yW10gPSB7IDB4MGUsIDB4MGYgfTsKKwkJc25kX2hkYV9v dmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4MTQsIEFSUkFZX1NJWkUoY29ubjEpLCBjb25uMSk7 CisJCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE1LCBBUlJBWV9TSVpFKGNv bm4xKSwgY29ubjEpOworCQlzbmRfaGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2RlYywgMHgxOCwg QVJSQVlfU0laRShjb25uMiksIGNvbm4yKTsKKwkJc25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3Qo Y29kZWMsIDB4MWEsIEFSUkFZX1NJWkUoY29ubjIpLCBjb25uMik7CiAJfSBlbHNlIGlmIChhY3Rp b24gPT0gSERBX0ZJWFVQX0FDVF9QUk9CRSkgewogCQkvKiByZXN0b3JlIHRoZSBjb25uZWN0aW9u cyAqLwotCQloZGFfbmlkX3QgY29ubls1XSA9IHsgMHgwYywgMHgwZCwgMHgwZSwgMHgwZiwgMHgy NiB9OwotCQlzbmRfaGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2RlYywgMHgxNCwgNSwgY29ubik7 Ci0JCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE1LCA1LCBjb25uKTsKLQkJ c25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4MTgsIDUsIGNvbm4pOwotCQlzbmRf aGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2RlYywgMHgxYSwgNSwgY29ubik7CisJCXN0YXRpYyBj b25zdCBoZGFfbmlkX3QgY29ubltdID0geyAweDBjLCAweDBkLCAweDBlLCAweDBmLCAweDI2IH07 CisJCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE0LCBBUlJBWV9TSVpFKGNv bm4pLCBjb25uKTsKKwkJc25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4MTUsIEFS UkFZX1NJWkUoY29ubiksIGNvbm4pOworCQlzbmRfaGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2Rl YywgMHgxOCwgQVJSQVlfU0laRShjb25uKSwgY29ubik7CisJCXNuZF9oZGFfb3ZlcnJpZGVfY29u bl9saXN0KGNvZGVjLCAweDFhLCBBUlJBWV9TSVpFKGNvbm4pLCBjb25uKTsKIAl9CiB9CiAKQEAg LTE5NTUsOCArMTk1NSw4IEBAIHN0YXRpYyB2b2lkIGFsYzg4OV9maXh1cF9kYWNfcm91dGUoc3Ry dWN0IGhkYV9jb2RlYyAqY29kZWMsCiBzdGF0aWMgdm9pZCBhbGM4ODlfZml4dXBfbWJwX3ZyZWYo c3RydWN0IGhkYV9jb2RlYyAqY29kZWMsCiAJCQkJICBjb25zdCBzdHJ1Y3QgaGRhX2ZpeHVwICpm aXgsIGludCBhY3Rpb24pCiB7CisJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBuaWRzW10gPSB7IDB4 MTQsIDB4MTUsIDB4MTkgfTsKIAlzdHJ1Y3QgYWxjX3NwZWMgKnNwZWMgPSBjb2RlYy0+c3BlYzsK LQlzdGF0aWMgaGRhX25pZF90IG5pZHNbM10gPSB7IDB4MTQsIDB4MTUsIDB4MTkgfTsKIAlpbnQg aTsKIAogCWlmIChhY3Rpb24gIT0gSERBX0ZJWFVQX0FDVF9JTklUKQpAQCAtMTk5Miw3ICsxOTky LDcgQEAgc3RhdGljIHZvaWQgYWxjODg5X2ZpeHVwX21hY19waW5zKHN0cnVjdCBoZGFfY29kZWMg KmNvZGVjLAogc3RhdGljIHZvaWQgYWxjODg5X2ZpeHVwX2ltYWM5MV92cmVmKHN0cnVjdCBoZGFf Y29kZWMgKmNvZGVjLAogCQkJCSAgICAgY29uc3Qgc3RydWN0IGhkYV9maXh1cCAqZml4LCBpbnQg YWN0aW9uKQogewotCXN0YXRpYyBoZGFfbmlkX3Qgbmlkc1syXSA9IHsgMHgxOCwgMHgxYSB9Owor CXN0YXRpYyBjb25zdCBoZGFfbmlkX3Qgbmlkc1tdID0geyAweDE4LCAweDFhIH07CiAKIAlpZiAo YWN0aW9uID09IEhEQV9GSVhVUF9BQ1RfSU5JVCkKIAkJYWxjODg5X2ZpeHVwX21hY19waW5zKGNv ZGVjLCBuaWRzLCBBUlJBWV9TSVpFKG5pZHMpKTsKQEAgLTIwMDIsNyArMjAwMiw3IEBAIHN0YXRp YyB2b2lkIGFsYzg4OV9maXh1cF9pbWFjOTFfdnJlZihzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywK IHN0YXRpYyB2b2lkIGFsYzg4OV9maXh1cF9tYmExMV92cmVmKHN0cnVjdCBoZGFfY29kZWMgKmNv ZGVjLAogCQkJCSAgICBjb25zdCBzdHJ1Y3QgaGRhX2ZpeHVwICpmaXgsIGludCBhY3Rpb24pCiB7 Ci0Jc3RhdGljIGhkYV9uaWRfdCBuaWRzWzFdID0geyAweDE4IH07CisJc3RhdGljIGNvbnN0IGhk YV9uaWRfdCBuaWRzW10gPSB7IDB4MTggfTsKIAogCWlmIChhY3Rpb24gPT0gSERBX0ZJWFVQX0FD VF9JTklUKQogCQlhbGM4ODlfZml4dXBfbWFjX3BpbnMoY29kZWMsIG5pZHMsIEFSUkFZX1NJWkUo bmlkcykpOwpAQCAtMjAxMiw3ICsyMDEyLDcgQEAgc3RhdGljIHZvaWQgYWxjODg5X2ZpeHVwX21i YTExX3ZyZWYoc3RydWN0IGhkYV9jb2RlYyAqY29kZWMsCiBzdGF0aWMgdm9pZCBhbGM4ODlfZml4 dXBfbWJhMjFfdnJlZihzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywKIAkJCQkgICAgY29uc3Qgc3Ry dWN0IGhkYV9maXh1cCAqZml4LCBpbnQgYWN0aW9uKQogewotCXN0YXRpYyBoZGFfbmlkX3Qgbmlk c1syXSA9IHsgMHgxOCwgMHgxOSB9OworCXN0YXRpYyBjb25zdCBoZGFfbmlkX3Qgbmlkc1tdID0g eyAweDE4LCAweDE5IH07CiAKIAlpZiAoYWN0aW9uID09IEhEQV9GSVhVUF9BQ1RfSU5JVCkKIAkJ YWxjODg5X2ZpeHVwX21hY19waW5zKGNvZGVjLCBuaWRzLCBBUlJBWV9TSVpFKG5pZHMpKTsKQEAg LTIwOTQsNyArMjA5NCw3IEBAIHN0YXRpYyB2b2lkIGFsYzEyMjBfZml4dXBfY2xldm9fcDk1MChz dHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywKIAkJCQkgICAgIGNvbnN0IHN0cnVjdCBoZGFfZml4dXAg KmZpeCwKIAkJCQkgICAgIGludCBhY3Rpb24pCiB7Ci0JaGRhX25pZF90IGNvbm4xWzFdID0geyAw eDBjIH07CisJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBjb25uMVtdID0geyAweDBjIH07CiAKIAlp ZiAoYWN0aW9uICE9IEhEQV9GSVhVUF9BQ1RfUFJFX1BST0JFKQogCQlyZXR1cm47CkBAIC0yMTAz LDggKzIxMDMsOCBAQCBzdGF0aWMgdm9pZCBhbGMxMjIwX2ZpeHVwX2NsZXZvX3A5NTAoc3RydWN0 IGhkYV9jb2RlYyAqY29kZWMsCiAJLyogV2UgdGhlcmVmb3JlIHdhbnQgdG8gbWFrZSBzdXJlIDB4 MTQgKGZyb250IGhlYWRwaG9uZSkgYW5kCiAJICogMHgxYiAoc3BlYWtlcnMpIHVzZSB0aGUgc3Rl cmVvIERBQyAweDAyCiAJICovCi0Jc25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4 MTQsIDEsIGNvbm4xKTsKLQlzbmRfaGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2RlYywgMHgxYiwg MSwgY29ubjEpOworCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE0LCBBUlJB WV9TSVpFKGNvbm4xKSwgY29ubjEpOworCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVj LCAweDFiLCBBUlJBWV9TSVpFKGNvbm4xKSwgY29ubjEpOwogfQogCiBzdGF0aWMgdm9pZCBhbGNf Zml4dXBfaGVhZHNldF9tb2RlX25vX2hwX21pYyhzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywKQEAg LTUyNDMsNyArNTI0Myw3IEBAIHN0YXRpYyB2b2lkIGFsY19maXh1cF90cHQ0NzBfZG9jayhzdHJ1 Y3QgaGRhX2NvZGVjICpjb2RlYywKIAkgKiB0aGUgc3BlYWtlciBvdXRwdXQgYmVjb21lcyB0b28g bG93IGJ5IHNvbWUgcmVhc29uIG9uIFRoaW5rcGFkcyB3aXRoCiAJICogQUxDMjk4IGNvZGVjCiAJ ICovCi0Jc3RhdGljIGhkYV9uaWRfdCBwcmVmZXJyZWRfcGFpcnNbXSA9IHsKKwlzdGF0aWMgY29u c3QgaGRhX25pZF90IHByZWZlcnJlZF9wYWlyc1tdID0gewogCQkweDE0LCAweDAzLCAweDE3LCAw eDAyLCAweDIxLCAweDAyLAogCQkwCiAJfTsKQEAgLTU1MTUsOSArNTUxNSw5IEBAIHN0YXRpYyB2 b2lkIGFsYzI5MF9maXh1cF9tb25vX3NwZWFrZXJzKHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjLAog CQkvKiBEQUMgbm9kZSAweDAzIGlzIGdpdmluZyBtb25vIG91dHB1dC4gV2UgdGhlcmVmb3JlIHdh bnQgdG8KIAkJICAgbWFrZSBzdXJlIDB4MTQgKGZyb250IHNwZWFrZXIpIGFuZCAweDE1IChoZWFk cGhvbmVzKSB1c2UgdGhlCiAJCSAgIHN0ZXJlbyBEQUMsIHdoaWxlIGxlYXZpbmcgMHgxNyAoYmFz cyBzcGVha2VyKSBmb3Igbm9kZSAweDAzLiAqLwotCQloZGFfbmlkX3QgY29ubjFbMl0gPSB7IDB4 MGMgfTsKLQkJc25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4MTQsIDEsIGNvbm4x KTsKLQkJc25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4MTUsIDEsIGNvbm4xKTsK KwkJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBjb25uMVtdID0geyAweDBjIH07CisJCXNuZF9oZGFf b3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE0LCBBUlJBWV9TSVpFKGNvbm4xKSwgY29ubjEp OworCQlzbmRfaGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2RlYywgMHgxNSwgQVJSQVlfU0laRShj b25uMSksIGNvbm4xKTsKIAl9CiB9CiAKQEAgLTU1MzIsOCArNTUzMiw4IEBAIHN0YXRpYyB2b2lk IGFsYzI5OF9maXh1cF9zcGVha2VyX3ZvbHVtZShzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywKIAkJ ICAgUGluIENvbXBsZXgpLCBzaW5jZSBOb2RlIDB4MDIgaGFzIEFtcC1vdXQgY2Fwcywgd2UgY2Fu IGFkanVzdAogCQkgICBzcGVha2VyJ3Mgdm9sdW1lIG5vdy4gKi8KIAotCQloZGFfbmlkX3QgY29u bjFbMV0gPSB7IDB4MGMgfTsKLQkJc25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4 MTcsIDEsIGNvbm4xKTsKKwkJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBjb25uMVtdID0geyAweDBj IH07CisJCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE3LCBBUlJBWV9TSVpF KGNvbm4xKSwgY29ubjEpOwogCX0KIH0KIApAQCAtNTU0Miw4ICs1NTQyLDggQEAgc3RhdGljIHZv aWQgYWxjMjk1X2ZpeHVwX2Rpc2FibGVfZGFjMyhzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywKIAkJ CQkgICAgICBjb25zdCBzdHJ1Y3QgaGRhX2ZpeHVwICpmaXgsIGludCBhY3Rpb24pCiB7CiAJaWYg KGFjdGlvbiA9PSBIREFfRklYVVBfQUNUX1BSRV9QUk9CRSkgewotCQloZGFfbmlkX3QgY29ublsy XSA9IHsgMHgwMiwgMHgwMyB9OwotCQlzbmRfaGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2RlYywg MHgxNywgMiwgY29ubik7CisJCXN0YXRpYyBjb25zdCBoZGFfbmlkX3QgY29ubltdID0geyAweDAy LCAweDAzIH07CisJCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAweDE3LCBBUlJB WV9TSVpFKGNvbm4pLCBjb25uKTsKIAl9CiB9CiAKQEAgLTU1NTIsOCArNTU1Miw4IEBAIHN0YXRp YyB2b2lkIGFsYzI4NV9maXh1cF9zcGVha2VyMl90b19kYWMxKHN0cnVjdCBoZGFfY29kZWMgKmNv ZGVjLAogCQkJCQkgIGNvbnN0IHN0cnVjdCBoZGFfZml4dXAgKmZpeCwgaW50IGFjdGlvbikKIHsK IAlpZiAoYWN0aW9uID09IEhEQV9GSVhVUF9BQ1RfUFJFX1BST0JFKSB7Ci0JCWhkYV9uaWRfdCBj b25uWzFdID0geyAweDAyIH07Ci0JCXNuZF9oZGFfb3ZlcnJpZGVfY29ubl9saXN0KGNvZGVjLCAw eDE3LCAxLCBjb25uKTsKKwkJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBjb25uW10gPSB7IDB4MDIg fTsKKwkJc25kX2hkYV9vdmVycmlkZV9jb25uX2xpc3QoY29kZWMsIDB4MTcsIEFSUkFZX1NJWkUo Y29ubiksIGNvbm4pOwogCX0KIH0KIApAQCAtNTYzMSw3ICs1NjMxLDcgQEAgc3RhdGljIHZvaWQg YWxjMjc0X2ZpeHVwX2JpbmRfZGFjcyhzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywKIAkJCQkgICAg Y29uc3Qgc3RydWN0IGhkYV9maXh1cCAqZml4LCBpbnQgYWN0aW9uKQogewogCXN0cnVjdCBhbGNf c3BlYyAqc3BlYyA9IGNvZGVjLT5zcGVjOwotCXN0YXRpYyBoZGFfbmlkX3QgcHJlZmVycmVkX3Bh aXJzW10gPSB7CisJc3RhdGljIGNvbnN0IGhkYV9uaWRfdCBwcmVmZXJyZWRfcGFpcnNbXSA9IHsK IAkJMHgyMSwgMHgwMywgMHgxYiwgMHgwMywgMHgxNiwgMHgwMiwKIAkJMAogCX07CmRpZmYgLS1n aXQgYS9zb3VuZC9wY2kvaGRhL3BhdGNoX3NpZ21hdGVsLmMgYi9zb3VuZC9wY2kvaGRhL3BhdGNo X3NpZ21hdGVsLmMKaW5kZXggOWI4MTZiMzc3NTQ3Li5hNjA4ZDA0ODZhZTQgMTAwNjQ0Ci0tLSBh L3NvdW5kL3BjaS9oZGEvcGF0Y2hfc2lnbWF0ZWwuYworKysgYi9zb3VuZC9wY2kvaGRhL3BhdGNo X3NpZ21hdGVsLmMKQEAgLTc5NSw3ICs3OTUsNyBAQCBzdGF0aWMgaW50IGZpbmRfbXV0ZV9sZWRf Y2ZnKHN0cnVjdCBoZGFfY29kZWMgKmNvZGVjLCBpbnQgZGVmYXVsdF9wb2xhcml0eSkKIHN0YXRp YyBib29sIGhhc19idWlsdGluX3NwZWFrZXIoc3RydWN0IGhkYV9jb2RlYyAqY29kZWMpCiB7CiAJ c3RydWN0IHNpZ21hdGVsX3NwZWMgKnNwZWMgPSBjb2RlYy0+c3BlYzsKLQloZGFfbmlkX3QgKm5p ZF9waW47CisJY29uc3QgaGRhX25pZF90ICpuaWRfcGluOwogCWludCBuaWRzLCBpOwogCiAJaWYg KHNwZWMtPmdlbi5hdXRvY2ZnLmxpbmVfb3V0X3R5cGUgPT0gQVVUT19QSU5fU1BFQUtFUl9PVVQp IHsKQEAgLTIxODIsNyArMjE4Miw3IEBAIHN0YXRpYyB2b2lkIGhwX2VudnlfdHNfZml4dXBfZGFj X2JpbmQoc3RydWN0IGhkYV9jb2RlYyAqY29kZWMsCiAJCQkJCSAgICBpbnQgYWN0aW9uKQogewog CXN0cnVjdCBzaWdtYXRlbF9zcGVjICpzcGVjID0gY29kZWMtPnNwZWM7Ci0Jc3RhdGljIGhkYV9u aWRfdCBwcmVmZXJyZWRfcGFpcnNbXSA9IHsKKwlzdGF0aWMgY29uc3QgaGRhX25pZF90IHByZWZl cnJlZF9wYWlyc1tdID0gewogCQkweGQsIDB4MTMsCiAJCTAKIAl9OwpkaWZmIC0tZ2l0IGEvc291 bmQvcGNpL2hkYS9wYXRjaF92aWEuYyBiL3NvdW5kL3BjaS9oZGEvcGF0Y2hfdmlhLmMKaW5kZXgg MjlkY2RiOGIzNmRiLi5iNDBkMDFlMDE4MzIgMTAwNjQ0Ci0tLSBhL3NvdW5kL3BjaS9oZGEvcGF0 Y2hfdmlhLmMKKysrIGIvc291bmQvcGNpL2hkYS9wYXRjaF92aWEuYwpAQCAtMTAzOCw4ICsxMDM4 LDggQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBzbmRfcGNpX3F1aXJrIHZ0MjAwMnBfZml4dXBzW10g PSB7CiAgKi8KIHN0YXRpYyB2b2lkIGZpeF92dDE4MDJfY29ubmVjdGlvbnMoc3RydWN0IGhkYV9j b2RlYyAqY29kZWMpCiB7Ci0Jc3RhdGljIGhkYV9uaWRfdCBjb25uXzI0W10gPSB7IDB4MTQsIDB4 MWMgfTsKLQlzdGF0aWMgaGRhX25pZF90IGNvbm5fMzNbXSA9IHsgMHgxYyB9OworCXN0YXRpYyBj b25zdCBoZGFfbmlkX3QgY29ubl8yNFtdID0geyAweDE0LCAweDFjIH07CisJc3RhdGljIGNvbnN0 IGhkYV9uaWRfdCBjb25uXzMzW10gPSB7IDB4MWMgfTsKIAogCXNuZF9oZGFfb3ZlcnJpZGVfY29u bl9saXN0KGNvZGVjLCAweDI0LCBBUlJBWV9TSVpFKGNvbm5fMjQpLCBjb25uXzI0KTsKIAlzbmRf aGRhX292ZXJyaWRlX2Nvbm5fbGlzdChjb2RlYywgMHgzMywgQVJSQVlfU0laRShjb25uXzMzKSwg Y29ubl8zMyk7Ci0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkFsc2EtZGV2ZWwgbWFpbGluZyBsaXN0CkFsc2EtZGV2ZWxAYWxzYS1wcm9q ZWN0Lm9yZwpodHRwczovL21haWxtYW4uYWxzYS1wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv L2Fsc2EtZGV2ZWwK