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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 14870FF885A for ; Tue, 5 May 2026 07:16:22 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 6AE2F10E9A0; Tue, 5 May 2026 07:16:21 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (1024-bit key; unprotected) header.d=amd.com header.i=@amd.com header.b="TZ1NF+hf"; dkim-atps=neutral Received: from CH4PR04CU002.outbound.protection.outlook.com (mail-northcentralusazon11013023.outbound.protection.outlook.com [40.107.201.23]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8437110E99F; Tue, 5 May 2026 07:16:19 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=zTmX+CPJN0YngDrHYIQFAcDNWxz1McFJ5uAyrWjb7N3WUONNBdb4n2pruR/qgxYSK60xpiYxn56CS04OtJA3vQsbGlOjcgiPPpXIsHxr0fidRHLnlitY9ledlPJ/k10JGMXY8kwLPY1kv5pHbBawL0eftllKvs0Axt/zJq7cNvRYgo9jJt4ZT3nCSArobYkC3Xv8AWSdjToeJEnZ/4M6jacLGOG250bVJKxinMzv+inYzwHT0S8A0BrC0LCtgRkgk2ee2D4MRh4pERIOjPW5+vnSBWH7w9itzd4g6KTfwYv0GqMRROHoIbd1qs1tr/MBm8n9DAspB45+Q2TJx0woRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=TuAmBIYqaRtYnso/XwApHvKhytbXmjgoAfNVO7hIfH0=; b=mBopQ2zSWCCT1qswFlr9ychE524L+pkuhlQWITJeI5WkTpTfYwE3w4SLcCzL2QHIYovizNsO+oWmMPnhlFNquRU2trAnSUN05aOymqbP4mCtyFOY8W/GeyOHlWLCIER+tjiLH+A8Wmm9Jt9gDA71pHTnKY9Ur5WcrrLSRV/GeVy7zCV88Pkt6uy0V4M3gx00L5EGyShZnIzk4nXfsjQQAPw4yGiMyfWlhJap996Ezjwo07O0Qt7872Xx+s9a+pRrSKQPQ20/wQgTk+6v7qMYNSPLZ/lS2+RJx1qKN6qDAeOa9pdBiI4i9YBXSvULKDaBDsu3Fn0LZ6NXIueXJ4MNOA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TuAmBIYqaRtYnso/XwApHvKhytbXmjgoAfNVO7hIfH0=; b=TZ1NF+hfpck1e4YJidGJsl76enO2tvBwwMhyDosPQmQjA863lYKQ4yFHtjSm4TyY8luOQCkwg/WSkoRp5oVKnLNJ7rOMHG3OkpvKztdQXrkVUZJrmMn1lkeZ/w9RUpJt0soslljC6IQl655/Zg68T0S9kCTS9WFe+JGapech19c= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from PH7PR12MB5685.namprd12.prod.outlook.com (2603:10b6:510:13c::22) by DS7PR12MB8083.namprd12.prod.outlook.com (2603:10b6:8:e4::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9870.27; Tue, 5 May 2026 07:16:13 +0000 Received: from PH7PR12MB5685.namprd12.prod.outlook.com ([fe80::ce69:cfae:774d:a65c]) by PH7PR12MB5685.namprd12.prod.outlook.com ([fe80::ce69:cfae:774d:a65c%5]) with mapi id 15.20.9870.023; Tue, 5 May 2026 07:16:13 +0000 Message-ID: Date: Tue, 5 May 2026 09:16:08 +0200 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] drm/amd/amdgpu: remove duplicated code in gfx_v11 and gfx_v12 To: Ulisses Paixao , alexander.deucher@amd.com, airlied@gmail.com, simona@ffwll.ch Cc: Felipe Sousa , amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org References: <20260505021417.32520-1-ulissespaixao@usp.br> Content-Language: en-US From: =?UTF-8?Q?Christian_K=C3=B6nig?= In-Reply-To: <20260505021417.32520-1-ulissespaixao@usp.br> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-ClientProxiedBy: FR4P281CA0139.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b8::19) To PH7PR12MB5685.namprd12.prod.outlook.com (2603:10b6:510:13c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH7PR12MB5685:EE_|DS7PR12MB8083:EE_ X-MS-Office365-Filtering-Correlation-Id: 701c571f-04b4-4d6d-65ba-08deaa76304b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: a9Ht4IWpRvtV/N3FOft3yIpRJDqAS6S+mENAbmcjPRgn+IzEwVLFBusmW2I3oJTIX+9K0bEk4AXTQMHtoiaertOGGpfYmZqRxVdNTqpskLsO0ggI1EnzESmIOpO03Rc07+YcS5FKwfvJbI794rlkhhxBhIpWLp0t+aDGlxhoCN1fvrK2X24Fy7jevCB9TeoIm+XiEI7w/9jedGV9UoGcW+6HLmnIHLCVhc0VrXtxz+IkdRhw1AlrMNhxaJSjbog6YjDeOho3kdlgxRtdi6s9RnaOUc9KE34U4bR+DkBBKKHCavUaOjMoKNW2R+1LrZYLapG1ASKF4t65fZVzqFi51DuEdiTQGkMgyfPN7yCa0mYRhaxoQAO+KD6XemtPr/RVzomd/6aDC2gVPukUlEEMhV2hPdygFgwDPmxoNAGiZLOgMsB/GgrvulrmgQNszSphb50rfkKhC9dP+irIbUPA7dCOJUCwun81jRlZPKcu8Xks266PA4IEduvHfyTJBHF4u+4x1Ne6Dsu/7WfAHFMuBV5P2zR0kYAUA8BIxGnxhdKEMCDypumtLfE+osc1UNk5qKEoIuypqPydksoj9rFd+DjfpaFCzxsCLRvbYHZvdfMNUOIlTkN9mjXymRHy7ba5fy5wcxA+e7n4T9DMoZUwJSGVlvoUZ+qYyNrH9jaPJSqMJMKh5CIVuVGKUcLSdYbC X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH7PR12MB5685.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(18002099003)(22082099003)(56012099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L0dyLzVHUnE0Mmoza3owZGpxOGJIY2c1bkNiZnpFbTJBVVhxeUVLYmVtdmlo?= =?utf-8?B?cTEwZkxyYkNrNSt5MWgzVWVpc0tQSllhcy9UVjdkbDUwM2hjTWZuQkZlQ002?= =?utf-8?B?MjBLb0llK05UN3dEVzdjL1ozWTd0cjVobWp0Q3R1WWsrcERGRzMzNFRDUVhw?= =?utf-8?B?UmIzRURKQlZCTERZcXB2NXpCaVc3UnZGZUlobHNTRUMxR2NvZ05WcWVhWUNX?= =?utf-8?B?OHlrQXhDRWV4eDRrSEQrS1V5eitWUUxJa0VQblBJbm1hbksvQ1ExRjd2cFdw?= =?utf-8?B?anpRYjV3TUNlZmQxeVRMUDB1TlJwTU5BaEJsTEZlSk1ZNno3SXBPUis1eS9o?= =?utf-8?B?RWN3dDV6ZTh4Q3BIS2J6V2dGRUZvWFk0eExDZmp4NmgxdVN0YkdZYmIvdTJz?= =?utf-8?B?cUo2QUZFNUYzeEY2UmZYbUZkOTNkVkpBRHViMVc0NmZzWkk4bHFGL29YY25I?= =?utf-8?B?Q2NXUXNuNStnNXBRZ09VOXdGbVR4Q2FuV0FLaGpFUjFybytrNWJxajZJUGxC?= =?utf-8?B?dm9iNUNCQ2pOaHdWWE5qN1NJN3lmRi9Sb3c1ZHRabjBldDlUNUJHdExHSGZ1?= =?utf-8?B?YkFWSkpRemI2UEtqNE9TLzZ4WmFvcGcvQUtaUXlSUHFRcTFTV0pXcXRYRlUx?= =?utf-8?B?RlJvN2swaTJxVnlDSXBaNWVuZkZQbHRLaGxHeTRrRnJqWG00aEE5WVF5aUV6?= =?utf-8?B?TitvbjBVbU5jY3ZzNm51eXJLczVjTTFUK2FrY3Z1aTBuT0VrRTJWNm9VUHhK?= =?utf-8?B?SUMxVStsbkZGYVVqTUVhWFVqMk1aNVJhbGpidXBkNllzN3NabTQzWmJ2UEFE?= =?utf-8?B?TlBTSE9lOGczRWJGWkpaZC96Rm1qa1ZnODB1MUVtcHhLak9aLzBWWFFNT200?= =?utf-8?B?cTFsWnRBOElGZytuQ0Vxc21kU2hGRjZ5OXZ5Zy9XZllqaG9LTGZ6Sy94L0xy?= =?utf-8?B?djhMY1JxMzA4WmlWY2tYTjlobGl6T01ERVpmdGZSMTVWQzlQR2lSN0FPYmdQ?= =?utf-8?B?cnRuSHk5alFFL05ZZzFCZDBwaEhvazdkVE9BSi9PZXBQOER4RFpQTm04bytt?= =?utf-8?B?dmhjTkpWQzNKYy9GWkIzSGlzdTNhZGI1c08yYnk1RFhPMjMxK3poMVdaVUlG?= =?utf-8?B?eC94NnhBcnNLM3FUTGRPeG1iRjJubUJQSlJsZzljdjNTdjAvd1ZoalRab2xo?= =?utf-8?B?Q2Fva0ltakowdFYxSXh6bkRFTlRra2phZC9ZQ3E1bGpLQi9yK1R5aUthdGdn?= =?utf-8?B?V1NsTUJ5cnYvZ3d2YzZ3bDVYUUJxMk1rditSb1ZRMlpiV3dEczFyMml6MGRq?= =?utf-8?B?T0VOcVVmRkJIaHphd1Fha3o1aW5kdjh0TUlFdi83TU5TSzEzUjJteTd2c1VS?= =?utf-8?B?di9EdVpoY2d1VWQrQklOaU91MWZSTHdtZkx3TUtKcUtQK1c0STNWR0U2K2dZ?= =?utf-8?B?bVpOckRnaG5DMGRhT000bFNybCtBNUdPMXQ2RDVNVUd4TXpNdDI2WnNmcUQw?= =?utf-8?B?dVJkZmtGS1FIbmNXOFV0aG1xSXNaQ2dBMWlUeGZpd2dNSGlLNkdHZXl3OWV4?= =?utf-8?B?MFRXM1BManJvMFR3MmxiQWI1VWNDTG5GSTFpUnZoTXVUY3B6c1dsT2lXZFhJ?= =?utf-8?B?RzJJSkhCNFBqUTRHQXRoZ2RndFJFUkxjZlZNaFJwK0RlS01KN1NjL3VlbStI?= =?utf-8?B?d1owV1dUM2J4Q2lCaEZjTk9yT3NqOFpzWlZFZHlrUDZSZElGNkpLMThEVkFw?= =?utf-8?B?T1VQLyszWE41cGlsTzZlVjUvSEJCWXI5OEs4dU0yVFdMdWRFdHpMQ1JDUkkw?= =?utf-8?B?bU8wd1JvTjZGd2QxQ3VlL0NSS0FXNWpPaTlja1FNQjhSU3pEZkNJWmRqWTNk?= =?utf-8?B?cDJXdnNBUlAxUEphUkN6YjYxbDg5bXppa2l6cmlOTjhjRFErZWpqRENMb0J1?= =?utf-8?B?Uk5NTVBTVXBzMDJpUU1hTTRKcW1SVndiUnV5TjVuZzhrWTdTQmVPSFcrTkUy?= =?utf-8?B?ZWF0Ujl6a0g2Tks0R1JCSm00MTd1c2hJd2F4U3cyc1lvY0Jza2hySlNpVHc2?= =?utf-8?B?QTlIZGw3TGJiTXRlbHQ5Zm5Wa2d5OFljZExCTXNZakZYZUpIaS9jZWZLMnZt?= =?utf-8?B?Y3ZhVlFmZHJlRkdiUzMrSG5MQUcrekE5cHVFcnQrcmdKTStVVUs2MGk2RnMz?= =?utf-8?B?MVlxaVVLTlZwWm90aXlZTFZtRmVvR1pGVXU0bmc0aDcwVTlzK3BGL1diK04r?= =?utf-8?B?cjYweTZKZUhsNVlTTDh4b2FZVDR1U2R0bFJSemUvbkVPY2xxRTJFY0RCSHFC?= =?utf-8?Q?QgVMicgvQ0J6bE8jWU?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 701c571f-04b4-4d6d-65ba-08deaa76304b X-MS-Exchange-CrossTenant-AuthSource: PH7PR12MB5685.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 May 2026 07:16:13.0531 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: J5PLn54T9s5n90hsHOkZVLy55jRaYSuiGpEcnd+2RZmNbqYI1N7/R5Uudvmj4nXQ X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB8083 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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gNS81LzI2IDA0OjE0LCBVbGlzc2VzIFBhaXhhbyB3cm90ZToKPiBUaGUgZnVuY3Rpb25zIGdm eF92MTFfMF9oYW5kbGVfcHJpdl9mYXVsdCBhbmQKPiBnZnhfdjEyXzBfaGFuZGxlX3ByaXZfZmF1 bHQgc2hhcmUgdGhlIHNhbWUgbG9naWMgZm9yIHNlYXJjaGluZyBhbmQKPiB0cmlnZ2VyaW5nIGEg c2NoZWR1bGVyIGZhdWx0IG9uIGEgcmluZy4gVGhpcyBwYXRjaCBtb3ZlcyB0aGUgc2hhcmVkCj4g cmluZy1zZWFyY2hpbmcgbG9naWMgdG8gYSBjb21tb24gZnVuY3Rpb24sIGFtZGdwdV9nZnhfaGFu ZGxlX3ByaXZfZmF1bHQsCj4gaW4gYW1kZ3B1X2dmeC5jLiBUaGUgaGFyZHdhcmUtc3BlY2lmaWMg ZGVjb2Rpbmcgb2YgcmluZyBJRHMgcmVtYWlucyBpbgo+IHRoZSB2ZXJzaW9uLXNwZWNpZmljIGZp bGVzIHRvIG1haW50YWluIHByb3BlciBhcmNoaXRlY3R1cmFsIHNlcGFyYXRpb24uCj4gCj4gU2ln bmVkLW9mZi1ieTogVWxpc3NlcyBQYWl4YW8gPHVsaXNzZXNwYWl4YW9AdXNwLmJyPgo+IENvLWRl dmVsb3BlZC1ieTogRmVsaXBlIFNvdXNhIDxmZWxpcGVzb3VzYUB1c3AuYnI+Cj4gU2lnbmVkLW9m Zi1ieTogRmVsaXBlIFNvdXNhIDxmZWxpcGVzb3VzYUB1c3AuYnI+CgpSZXZpZXdlZC1ieTogQ2hy aXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgoKPiAKPiAtLS0KPiAKPiB2 MjoKPiBLZWVwIHRoZSBIVy1zcGVjaWZpYyBkZWNvZGluZyBpbiBnZnhfdjExXzAuYyBhbmQgZ2Z4 X3YxMl8wLmMuCj4gUmVtb3ZlIHRoZSByZWR1bmRhbnQgY2hlY2sgZm9yIGFkZXYtPmdmeC5kaXNh YmxlX2txLgo+IFNpbXBsaWZ5IHRoZSBzZWFyY2ggbG9vcCBpbiBhbWRncHVfZ2Z4X2hhbmRsZV9w cml2X2ZhdWx0IHRvIGl0ZXJhdGUgb3Zlcgo+IGFsbCBnZnggYW5kIGNvbXB1dGUgcmluZ3Mgd2l0 aG91dCBhIHN3aXRjaCBzdGF0ZW1lbnQuCj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9nZnguYyB8IDMyICsrKysrKysrKysrKysrKysrKysrKysrKysKPiAgZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dmeC5oIHwgIDIgKysKPiAgZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvZ2Z4X3YxMV8wLmMgIHwgMjcgKy0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92MTJfMC5jICB8IDI3ICstLS0tLS0tLS0t LS0tLS0tLS0tLQo+ICA0IGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDUyIGRlbGV0 aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfZ2Z4LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZ2Z4LmMKPiBpbmRl eCBiOGNhODc2NjkuLjY3YTI5MTc4MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfZ2Z4LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfZ2Z4LmMKPiBAQCAtODMwLDYgKzgzMCwzOCBAQCBpbnQgYW1kZ3B1X2dmeF9lbmFibGVf a2dxKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBpbnQgeGNjX2lkKQo+ICAgICAgICAgcmV0 dXJuIHI7Cj4gIH0KPiAKPiArLyoqCj4gKyAqIGFtZGdwdV9nZnhfaGFuZGxlX3ByaXZfZmF1bHQg LSBIYW5kbGUgcHJpdmlsZWdlZCBpbnN0cnVjdGlvbiBmYXVsdAo+ICsgKgo+ICsgKiBAYWRldjog YW1kZ3B1X2RldmljZSBwb2ludGVyCj4gKyAqIEBtZV9pZDogbWljcm8tZW5naW5lIElEIG9mIHRo ZSBmYXVsdHkgcmluZwo+ICsgKiBAcGlwZV9pZDogcGlwZSBJRCBvZiB0aGUgZmF1bHR5IHJpbmcK PiArICogQHF1ZXVlX2lkOiBxdWV1ZSBJRCBvZiB0aGUgZmF1bHR5IHJpbmcKPiArICoKPiArICog VGhpcyBmdW5jdGlvbiBoYW5kbGVzIHByaXZpbGVnZWQgaW5zdHJ1Y3Rpb24gZmF1bHRzIGJ5IGlk ZW50aWZ5aW5nCj4gKyAqIHRoZSBmYXVsdHkgcmluZyAoZ2Z4IG9yIGNvbXB1dGUpIGFuZCB0cmln Z2VyaW5nIGEgc2NoZWR1bGVyIGZhdWx0Lgo+ICsgKi8KPiArdm9pZCBhbWRncHVfZ2Z4X2hhbmRs ZV9wcml2X2ZhdWx0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAo+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB1OCBtZV9pZCwgdTggcGlwZV9pZCwgdTggcXVldWVf aWQpCj4gK3sKPiArICAgICAgIHN0cnVjdCBhbWRncHVfcmluZyAqcmluZzsKPiArICAgICAgIGlu dCBpOwo+ICsKPiArICAgICAgIGZvciAoaSA9IDA7IGkgPCBhZGV2LT5nZngubnVtX2dmeF9yaW5n czsgaSsrKSB7Cj4gKyAgICAgICAgICAgICAgIHJpbmcgPSAmYWRldi0+Z2Z4LmdmeF9yaW5nW2ld Owo+ICsgICAgICAgICAgICAgICBpZiAocmluZy0+bWUgPT0gbWVfaWQgJiYgcmluZy0+cGlwZSA9 PSBwaXBlX2lkICYmCj4gKyAgICAgICAgICAgICAgICAgICByaW5nLT5xdWV1ZSA9PSBxdWV1ZV9p ZCkKPiArICAgICAgICAgICAgICAgICAgICAgICBkcm1fc2NoZWRfZmF1bHQoJnJpbmctPnNjaGVk KTsKPiArICAgICAgIH0KPiArCj4gKyAgICAgICBmb3IgKGkgPSAwOyBpIDwgYWRldi0+Z2Z4Lm51 bV9jb21wdXRlX3JpbmdzOyBpKyspIHsKPiArICAgICAgICAgICAgICAgcmluZyA9ICZhZGV2LT5n ZnguY29tcHV0ZV9yaW5nW2ldOwo+ICsgICAgICAgICAgICAgICBpZiAocmluZy0+bWUgPT0gbWVf aWQgJiYgcmluZy0+cGlwZSA9PSBwaXBlX2lkICYmCj4gKyAgICAgICAgICAgICAgICAgICByaW5n LT5xdWV1ZSA9PSBxdWV1ZV9pZCkKPiArICAgICAgICAgICAgICAgICAgICAgICBkcm1fc2NoZWRf ZmF1bHQoJnJpbmctPnNjaGVkKTsKPiArICAgICAgIH0KPiArfQo+ICsKPiAgc3RhdGljIHZvaWQg YW1kZ3B1X2dmeF9kb19vZmZfY3RybChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgYm9vbCBl bmFibGUsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIG5vX2RlbGF5 KQo+ICB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9n ZnguaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9nZnguaAo+IGluZGV4IGEw Y2YwYTNiNC4uMGIyZjZjZTg1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9nZnguaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV9nZnguaAo+IEBAIC02MTEsNiArNjExLDggQEAgYm9vbCBhbWRncHVfZ2Z4X2lzX2hpZ2hfcHJp b3JpdHlfZ3JhcGhpY3NfcXVldWUoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGFtZGdwdV9y aW5nICpyaW5nKTsKPiAgYm9vbCBhbWRncHVfZ2Z4X2lzX21lX3F1ZXVlX2VuYWJsZWQoc3RydWN0 IGFtZGdwdV9kZXZpY2UgKmFkZXYsIGludCBtZSwKPiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgcGlwZSwgaW50IHF1ZXVlKTsKPiArdm9pZCBhbWRncHVfZ2Z4X2hhbmRs ZV9wcml2X2ZhdWx0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAo+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB1OCBtZV9pZCwgdTggcGlwZV9pZCwgdTggcXVldWVf aWQpOwo+ICB2b2lkIGFtZGdwdV9nZnhfb2ZmX2N0cmwoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFk ZXYsIGJvb2wgZW5hYmxlKTsKPiAgdm9pZCBhbWRncHVfZ2Z4X29mZl9jdHJsX2ltbWVkaWF0ZShz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgYm9vbCBlbmFibGUpOwo+ICBpbnQgYW1kZ3B1X2dl dF9nZnhfb2ZmX3N0YXR1cyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdWludDMyX3QgKnZh bHVlKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3YxMV8w LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjExXzAuYwo+IGluZGV4IDJjNmYx ZTI1Yy4uODg4YzlmM2M0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2dmeF92MTFfMC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3YxMV8w LmMKPiBAQCAtNjY4OCwzNyArNjY4OCwxMiBAQCBzdGF0aWMgdm9pZCBnZnhfdjExXzBfaGFuZGxl X3ByaXZfZmF1bHQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCj4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBhbWRncHVfaXZfZW50cnkgKmVudHJ5KQo+ ICB7Cj4gICAgICAgICB1OCBtZV9pZCwgcGlwZV9pZCwgcXVldWVfaWQ7Cj4gLSAgICAgICBzdHJ1 Y3QgYW1kZ3B1X3JpbmcgKnJpbmc7Cj4gLSAgICAgICBpbnQgaTsKPiAKPiAgICAgICAgIG1lX2lk ID0gKGVudHJ5LT5yaW5nX2lkICYgMHgwYykgPj4gMjsKPiAgICAgICAgIHBpcGVfaWQgPSAoZW50 cnktPnJpbmdfaWQgJiAweDAzKSA+PiAwOwo+ICAgICAgICAgcXVldWVfaWQgPSAoZW50cnktPnJp bmdfaWQgJiAweDcwKSA+PiA0Owo+IAo+IC0gICAgICAgaWYgKCFhZGV2LT5nZnguZGlzYWJsZV9r cSkgewo+IC0gICAgICAgICAgICAgICBzd2l0Y2ggKG1lX2lkKSB7Cj4gLSAgICAgICAgICAgICAg IGNhc2UgMDoKPiAtICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgYWRldi0+ Z2Z4Lm51bV9nZnhfcmluZ3M7IGkrKykgewo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcmluZyA9ICZhZGV2LT5nZnguZ2Z4X3JpbmdbaV07Cj4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpZiAocmluZy0+bWUgPT0gbWVfaWQgJiYgcmluZy0+cGlwZSA9PSBwaXBlX2lk ICYmCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmluZy0+cXVldWUgPT0g cXVldWVfaWQpCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRybV9z Y2hlZF9mYXVsdCgmcmluZy0+c2NoZWQpOwo+IC0gICAgICAgICAgICAgICAgICAgICAgIH0KPiAt ICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKPiAtICAgICAgICAgICAgICAgY2FzZSAxOgo+ IC0gICAgICAgICAgICAgICBjYXNlIDI6Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgZm9yIChp ID0gMDsgaSA8IGFkZXYtPmdmeC5udW1fY29tcHV0ZV9yaW5nczsgaSsrKSB7Cj4gLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICByaW5nID0gJmFkZXYtPmdmeC5jb21wdXRlX3JpbmdbaV07 Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmluZy0+bWUgPT0gbWVfaWQg JiYgcmluZy0+cGlwZSA9PSBwaXBlX2lkICYmCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcmluZy0+cXVldWUgPT0gcXVldWVfaWQpCj4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGRybV9zY2hlZF9mYXVsdCgmcmluZy0+c2NoZWQpOwo+IC0gICAg ICAgICAgICAgICAgICAgICAgIH0KPiAtICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKPiAt ICAgICAgICAgICAgICAgZGVmYXVsdDoKPiAtICAgICAgICAgICAgICAgICAgICAgICBCVUcoKTsK PiAtICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKPiAtICAgICAgICAgICAgICAgfQo+IC0g ICAgICAgfQo+ICsgICAgICAgYW1kZ3B1X2dmeF9oYW5kbGVfcHJpdl9mYXVsdChhZGV2LCBtZV9p ZCwgcGlwZV9pZCwgcXVldWVfaWQpOwo+ICB9Cj4gCj4gIHN0YXRpYyBpbnQgZ2Z4X3YxMV8wX3By aXZfcmVnX2lycShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3YxMl8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9nZnhfdjEyXzAuYwo+IGluZGV4IDZiYWFjNTMzYS4uM2YwZDI5MzcyIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92MTJfMC5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3YxMl8wLmMKPiBAQCAtNTAxOSwzNyArNTAxOSwx MiBAQCBzdGF0aWMgdm9pZCBnZnhfdjEyXzBfaGFuZGxlX3ByaXZfZmF1bHQoc3RydWN0IGFtZGdw dV9kZXZpY2UgKmFkZXYsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN0cnVjdCBhbWRncHVfaXZfZW50cnkgKmVudHJ5KQo+ICB7Cj4gICAgICAgICB1OCBtZV9pZCwg cGlwZV9pZCwgcXVldWVfaWQ7Cj4gLSAgICAgICBzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmc7Cj4g LSAgICAgICBpbnQgaTsKPiAKPiAgICAgICAgIG1lX2lkID0gKGVudHJ5LT5yaW5nX2lkICYgMHgw YykgPj4gMjsKPiAgICAgICAgIHBpcGVfaWQgPSAoZW50cnktPnJpbmdfaWQgJiAweDAzKSA+PiAw Owo+ICAgICAgICAgcXVldWVfaWQgPSAoZW50cnktPnJpbmdfaWQgJiAweDcwKSA+PiA0Owo+IAo+ IC0gICAgICAgaWYgKCFhZGV2LT5nZnguZGlzYWJsZV9rcSkgewo+IC0gICAgICAgICAgICAgICBz d2l0Y2ggKG1lX2lkKSB7Cj4gLSAgICAgICAgICAgICAgIGNhc2UgMDoKPiAtICAgICAgICAgICAg ICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgYWRldi0+Z2Z4Lm51bV9nZnhfcmluZ3M7IGkrKykg ewo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmluZyA9ICZhZGV2LT5nZnguZ2Z4 X3JpbmdbaV07Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmluZy0+bWUg PT0gbWVfaWQgJiYgcmluZy0+cGlwZSA9PSBwaXBlX2lkICYmCj4gLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgcmluZy0+cXVldWUgPT0gcXVldWVfaWQpCj4gLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRybV9zY2hlZF9mYXVsdCgmcmluZy0+c2NoZWQp Owo+IC0gICAgICAgICAgICAgICAgICAgICAgIH0KPiAtICAgICAgICAgICAgICAgICAgICAgICBi cmVhazsKPiAtICAgICAgICAgICAgICAgY2FzZSAxOgo+IC0gICAgICAgICAgICAgICBjYXNlIDI6 Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGFkZXYtPmdmeC5udW1f Y29tcHV0ZV9yaW5nczsgaSsrKSB7Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy aW5nID0gJmFkZXYtPmdmeC5jb21wdXRlX3JpbmdbaV07Cj4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpZiAocmluZy0+bWUgPT0gbWVfaWQgJiYgcmluZy0+cGlwZSA9PSBwaXBlX2lk ICYmCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmluZy0+cXVldWUgPT0g cXVldWVfaWQpCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRybV9z Y2hlZF9mYXVsdCgmcmluZy0+c2NoZWQpOwo+IC0gICAgICAgICAgICAgICAgICAgICAgIH0KPiAt ICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKPiAtICAgICAgICAgICAgICAgZGVmYXVsdDoK PiAtICAgICAgICAgICAgICAgICAgICAgICBCVUcoKTsKPiAtICAgICAgICAgICAgICAgICAgICAg ICBicmVhazsKPiAtICAgICAgICAgICAgICAgfQo+IC0gICAgICAgfQo+ICsgICAgICAgYW1kZ3B1 X2dmeF9oYW5kbGVfcHJpdl9mYXVsdChhZGV2LCBtZV9pZCwgcGlwZV9pZCwgcXVldWVfaWQpOwo+ ICB9Cj4gCj4gIHN0YXRpYyBpbnQgZ2Z4X3YxMl8wX3ByaXZfcmVnX2lycShzdHJ1Y3QgYW1kZ3B1 X2RldmljZSAqYWRldiwKPiAtLQo+IDIuMzQuMQo+IAoK