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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 3DEE8C43334 for ; Tue, 21 Jun 2022 19:57:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:From:References:Cc:To: Subject:Date:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=BmrRrhSqrwIWhesaQbvECgBxYRhsTz2H+HOWpiulP7U=; b=VL3dfL/njl1pAyWmZgaUlstjWQ w7rizYUHpsm+N7CD9CdKmAtBLsUgB9XuGAZJgJoJ/kI+bq58gYGV6TA98JLpgPyx4xP8c93GdYLG3 xEE+os55nqz1ZyTMS023jnftFq4o49Pajry5aMA1N60cv7AwW33bCnt4lT1TnHsDVpX71NckEJXUl L3wZY02niHW9XIbgx3CXz2X5sdzPib3rvofe44YmUexmNmPlG3cEFT6jtlfyxPbq3S+m1w61EYFkw fwLXyx8rwvbP0tjSW1YcsZmVG4d5go185dP+cVk2Bo1jrn9z0rNDyeQnbHk4WVuIdNoqKo3f6kh2C k9SjBnoQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1o3k09-007095-Ul; Tue, 21 Jun 2022 19:57:29 +0000 Received: from mail-bn7nam10on2054.outbound.protection.outlook.com ([40.107.92.54] helo=NAM10-BN7-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1o3k06-00708K-2f; Tue, 21 Jun 2022 19:57:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dBC+BcGMgsdN0lqFIZJvehIvYKkWlvizKufKGS199wFi7f+sSPQ/TQ6bd3FDqjaGmwGtK5N5rfnlSVIneE+aCa61tY2JN3aVrKFSCU6PHFoxs69p9YFiZo4YS1+4whO4YgVyy9zTeOXhdK+hC2/MU0sWBvfdafalS3jqokk/z3hCdB9vnq758eQ9e5n0ln8k09nrQ1Np8PFCqNKqeZegIuNFchsKno694cXwgdCyTzLgl2veMzpv1UGq3e2rzF0vJ8GyM5xUoby5wswnJqmB80PD4lpqtimEP4AUsOvyF/uD7UeWL0oPKLwVZE9qka1brHJi3e1LAugSZwTn8iVIqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3oZRoTt05MQ7arT2D81+PWOby02esOSL11Vk3uorcGI=; b=fExceUOIoXNc4dyKAm5p02z4GqLOtvcTOVmbDbknVyNDdp0i0hP7rLluDQC+gdQko+DKj73ytpi11rQDQw6mQrVkddPT0AYRTByNbNLCVskHy0Sq/ZIE2qqcShSkMa9hJBswap2scepxrNPs6QmQIIKLgZHDR5Nka9dPxTaquM17dydZFmKxSRrd8YDQeJx0muhQlxESa3vSX28mFO8a/j2gWMq4MIZOQA56DgNsPr6zQsVV4tLQR/135uwczqbmjVBntHem+CTbFGSr7uKl3224h1GWl31Tb+D1Tl+OanNVrOt76DLlH/hhutACRYNSt1qs8Sr2zxrxArJMRtYSMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3oZRoTt05MQ7arT2D81+PWOby02esOSL11Vk3uorcGI=; b=gSBC0N1jWkrMpGPv9zWDTakYuy554zWXWfn++i79T9xMfQnWKqg7EDVrwBgH6iGNwn9PhnjiQKARLYiULhP1wvG+FY1xn5oHLvhysKwCylGMaWdAhFqy8H5WmrmMXFjleD2jEyvSJan7IntHgtmvZLLIpfJRFJz2eLbA1WgxiV3mc8AabuSGdBjVeYtd15ZGt4rdX6TROryTAgJ7WwjFr+v5fmzH53wMk7B+NPg0wrOv7J9gzLFWJT63G0kTIU6VUjPY3R6xX9OqIgIl/U8WjBx0Cv8E5K2nbjwDFJKPpMwUD9CBn5EToWZApuOHhinrAsjd5TnULHaAKs1mT4tYew== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from CO6PR12MB5444.namprd12.prod.outlook.com (2603:10b6:5:35e::8) by MW4PR12MB5667.namprd12.prod.outlook.com (2603:10b6:303:18a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5353.17; Tue, 21 Jun 2022 19:57:21 +0000 Received: from CO6PR12MB5444.namprd12.prod.outlook.com ([fe80::f954:6840:ce82:c54f]) by CO6PR12MB5444.namprd12.prod.outlook.com ([fe80::f954:6840:ce82:c54f%4]) with mapi id 15.20.5353.022; Tue, 21 Jun 2022 19:57:21 +0000 Message-ID: Date: Tue, 21 Jun 2022 20:57:00 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1 Subject: Re: [PATCH v8 01/16] clk: generalize devm_clk_get() a bit Content-Language: en-US To: =?UTF-8?Q?Uwe_Kleine-K=c3=b6nig?= , Michael Turquette , Stephen Boyd , Russell King , =?UTF-8?Q?Nuno_S=c3=a1?= , Jean Delvare , Guenter Roeck , Lars Povlsen , Steen Hegelund , UNGLinuxDriver@microchip.com, linux-hwmon@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Lars-Peter Clausen , Michael Hennerich , Jonathan Cameron , Matt Mackall , Herbert Xu , Greg Kroah-Hartman , Linus Walleij , Bartosz Golaszewski , Neil Armstrong , David Airlie , Daniel Vetter , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Paul Cercueil , Alessandro Zummo , Alexandre Belloni , Wim Van Sebroeck , Claudiu Beznea , Thierry Reding , Lee Jones , Nicolas Ferre , Oleksij Rempel , Shawn Guo , Fabio Estevam , NXP Linux Team , Mark Brown , Vinod Koul Cc: linux-clk@vger.kernel.org, kernel@pengutronix.de, Vladimir Zapolskiy , Heiko Stuebner , Tomislav Denis , Anand Ashok Dumbre , Michal Simek , =?UTF-8?Q?Andr=c3=a9_Gustavo_Nakagomi_Lopez?= , Cai Huoqing , linux-iio@vger.kernel.org, linux-crypto@vger.kernel.org, linux-amlogic@lists.infradead.org, linux-gpio@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-mips@vger.kernel.org, linux-rtc@vger.kernel.org, Keguang Zhang , Andy Gross , Bjorn Andersson , Patrice Chotard , Maxime Coquelin , Alexandre Torgue , Nobuhiro Iwamatsu , linux-watchdog@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-pwm@vger.kernel.org, linux-i2c@vger.kernel.org, linux-spi@vger.kernel.org, Amireddy Mallikarjuna reddy , dmaengine@vger.kernel.org, Jonathan Cameron , Alexandru Ardelean , "linux-tegra@vger.kernel.org" References: <20220314141643.22184-1-u.kleine-koenig@pengutronix.de> <20220314141643.22184-2-u.kleine-koenig@pengutronix.de> From: Jon Hunter In-Reply-To: <20220314141643.22184-2-u.kleine-koenig@pengutronix.de> X-ClientProxiedBy: AS9PR06CA0072.eurprd06.prod.outlook.com (2603:10a6:20b:464::10) To CO6PR12MB5444.namprd12.prod.outlook.com (2603:10b6:5:35e::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f4df4ac9-468f-461f-45c7-08da53c0406b X-MS-TrafficTypeDiagnostic: MW4PR12MB5667:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: G+oxFppXKRifZMTYz4pwUVZ5DDZFz5JZmSOVislurHy2hCr0H0J2ApxS9ZyOykzZJIMORhX55V1zJRKjxutbESQE65b3KKSVd5Od5mHFbJoebjSL71KG2acWpgL9HAH1jM9f7SD99cA2VZD6A7VGEXTvadLsqP1qYxjjPlvweJB4O1dHJ7cH5h1gQhhbyoMOO/EubjJfwBcLdAdYLsHul9BjAy58+g/t+/VcSjb5FPm4HkLxnNM6j2PA7wAE1WMjZv/3Toi20k2sl7X527zuITbEsKIHWA+A872H3A69ui9Mgn5fqtS/7ASnW4NCzBbsOeiiZ4Q6EEsWHGpVJZp6rOvtoWJMTDKvxEzBcHl2viYiZcv+fYSLuCT3NPYf2JWH9WXMh49KeYi8QOJCJAcIQdQA0iRptAa/mfIjfZpL0RCc0oHmCBJHYVt5H8gSZLyDcArgyu4R6ym0hCpmz8cFe39Y/VQpuySGtfrbcYWMzZHhTC7gZpnggHUkFTPZuC7OAA4/5w8CKSCO6Sk1l6xhOddSPvZlfz2A5OPG56YXZ246BvQDwOtqQpgFplSYWRV2pCMOLNqP3L99Lun24wmXwRFLffA4jy3xy2stPE5d3JvG7Ror75yZBBwiOpGKGve4E0w/YdvqYL9yTlzovtJyJNCk+kKAlL7iBRVrT+fR9wFutosj5fs2fCqk4lQASbT2vF8WBGo4avdxPjdONtt4qQ4v71nP7MSQwy+yu5wVAps0gn36uHwoKwbAlKni4WGr X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR12MB5444.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(396003)(39860400002)(376002)(346002)(136003)(366004)(26005)(6486002)(36756003)(6512007)(31686004)(7416002)(41300700001)(7406005)(8936002)(86362001)(5660300002)(478600001)(8676002)(66946007)(4326008)(31696002)(7366002)(186003)(6506007)(316002)(2906002)(6666004)(921005)(45080400002)(83380400001)(66556008)(66476007)(54906003)(38100700002)(110136005)(55236004)(2616005)(53546011)(66574015)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Sm5mbnVZV1NqTFBWV3hoNW41WVpoU3g4K3AvN2JWbnY4L1loWkxOaFp3RDZ6?= =?utf-8?B?R2h1OU0rcU5lc2hiT3lXR2l0UDR6QWFMMk1RVXV4TU9JZHJHMmJ1SmVETnht?= =?utf-8?B?cXRyNzEraFhNSmxYZVoraytRTllKM1RiYU9TMFlpelcwQW9NQk9HdkdQUEpO?= =?utf-8?B?ZzU4R1RDOS8zOEVJUmFTSzZiVGliVlFJQXJwSzQrV09PUGgrMVVjRDJkZlNl?= =?utf-8?B?cWVnR3VXNUYxOTQ2cyswT0JXcE1WQVFCY1FFZFdKbTlVcDhIYVFPTU12c1lI?= =?utf-8?B?dGNhem12YVF3RXN3NjQzQ1FOZXlxc2tTTktISUJ3SllSNDhvSXE1L0Zxc1VU?= =?utf-8?B?UVNnRGY0dUpMR3o1eGo5Yy9sdHRnM0daMmhZMUpOVUp1NW03N0NRTVpjN2x1?= =?utf-8?B?V1F1ZjlKY2xIOVFLOXlXNGh2WnlFK0dlTDBCc1hpa2p2Z2pQc1k0TFo5N0xV?= =?utf-8?B?MC9BZjYzT3BBeW1DVkNURldncDJ3bGZSbUQrRnE0Y3lCZlA0cHF4WWhFUWQx?= =?utf-8?B?SXhBMTBHWURLWjBUVHR0WTQya2paZGRFb1ZrUTNMVHl2bVFnaWZqZzA3Nkp2?= =?utf-8?B?MHZDUjNxWEZhS2k2dnhQU0pFb0JBVHNsSnI0eC9WUTBCbjRYMnNmYjRkSUdQ?= =?utf-8?B?a1dnM3dEWmUxSm5mSDBJaUJqL1oxbzF1Mml4UE5iSVBHbzQzajdIcGdYMHNH?= =?utf-8?B?VkNZR0NnbmQ4TkhEQ2FnZjM1b1ZaL0YrUXZEQlVzcjNZYnhYVTBlZUplNk5K?= =?utf-8?B?anpORjBwbDVIa0JCcU03bUxYeTN2WUFNZWswYXYrankyZkVMeWgxalprUU5m?= =?utf-8?B?T1lsckFaTEV1UVFlRnU0WWVNcVp4dm1CV01GSzdZL1RVSzUxVW9wZkR2LzAw?= =?utf-8?B?Rys4dVBYTUQ4VEZHZGVCaWhta3pxYi84MGptMXErQU9uZmp1elBMQnRyWnZy?= =?utf-8?B?dzZMMmo5QXhhNVdwUEtMNmpsMHVMUkRTRmxvcHNBd0JVSGFFUERMSXBNcTB1?= =?utf-8?B?MDI2dGdySkxqZUhoOFNjYTJLZ3lYejBkeGxETUZpekU4cFJQeG80bmlUc0pR?= =?utf-8?B?MVM5K2dvZm5BK05QWTJlcVZkTU4vT3pSTzRhbUhiV1VXRjNFYURzNGxDWUV4?= =?utf-8?B?cHdweFhheEQ3NEhPME00SHBXZjg1T0JvdTlDRDJpRmtaNndUT2N5SGFYREJT?= =?utf-8?B?UVNpWUttOU9xQXdjZUJCMUlvdEJlN2JIelZ3RG9Jb3g1ZWxuZlB0WTUyZzgw?= =?utf-8?B?eE9jQlZaTEQvREh4NnNSSGhOSHFpakQ0MHZER29nNWgwaHdnSGFlbFpuMzBZ?= =?utf-8?B?R3N6SEJKclZiWFBwbjMzUlg4dmpwanB3SWI2R3ZoS2w4TFFTK2p0dnZveURT?= =?utf-8?B?UHBwd3VSa213dEJGZDVCRGw2aVJVUnFJYW5Eb3NHTlA5cS9wRFFwZTErVCtL?= =?utf-8?B?S1hPWTRKMHU4R1A2UHpGdlFIUldHMVhzLzJaKzFlVHRweWRudk5BWERqVWUy?= =?utf-8?B?NDkwR0htMzY3QUU5QkVMcHArcEFtakhrYzQ5LytMbk43MWhUM0EySmkrRHhH?= =?utf-8?B?aXVzbFZSY0tTRTBJN2oxZjdRL28zYU1PWktSTWFxRlhSMHR0eTNMMGdBVXoz?= =?utf-8?B?UUVncVY1a3BENlROODdCZWVKZjRHR1BBbldjMWJ0WlpVck5TTzRheWlqaE5G?= =?utf-8?B?ZVc4V01YZldQRFo3eFlqU0FLaGhhazd5NHhXSktwbysvR29HcHdGVERFUmUw?= =?utf-8?B?MkZNbFgzTFEyZk5mK2pINHJVemZuSVgzVHBwazJYRFVMSUczdTZaY3V3Wmlx?= =?utf-8?B?MmJEVlh0NCtxYytmNkxjd3NLb212bFNMd1BpdzlUMU1mZ1Ztc2x6N2wraXNl?= =?utf-8?B?MlIwV0p2YytsRXUvZW9FdG9JY01xU2FMNFBRMWozRDdUWXVHajdxbkNiZTVj?= =?utf-8?B?U1RZUzFDam9iVFpTM0dvdXozdVM5c2tKZVJYWU41NmF5Vm9jY2hON1B6Qmd4?= =?utf-8?B?Z1diM1RkSzBLNGROL2hWZHNDVEx1OUFyMXFaaVd5UU1EQ2hwenJNTm9QNkU3?= =?utf-8?B?a3hvTUJzbStNWGNDYlI2S3lPNktDZGlhbEw1Rlk2ZDVCVENUdEEyMTRaWFdM?= =?utf-8?B?cHRuNUgweTAvdGd4MmR6cisrams2ZVdGN2sxeGtLMC8xb0pmbXdtdzRDY1dt?= =?utf-8?B?a2wxeW15am8xdkZySVFnWkF2c1NqTHhnbE9YT3V2bFFQRVl4K1BGQ0NJbklW?= =?utf-8?B?bXdYblJRMnJaMUlWbFA5OUwxa01mRlN4NXorMU5KcmhCNmExQU9wbVZBc0U0?= =?utf-8?B?cDNhQVAvL1BtbUdCSXY0N1RSMjdGZ1N6aDluQUp5M3pzOHR5Z3p3R3AybnVo?= =?utf-8?Q?99Y0w/HU52o/zH2o=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f4df4ac9-468f-461f-45c7-08da53c0406b X-MS-Exchange-CrossTenant-AuthSource: CO6PR12MB5444.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2022 19:57:20.8615 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vXs+bOjH+4fOcuUWH70+RIveqnT0/Pq+8iyEigO8EvDRqJuyQL3UfJlXcd7Jw3A0Y26l6aYWfs6KfHQHmotPlQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB5667 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220621_125726_441735_7EAAFB69 X-CRM114-Status: GOOD ( 25.74 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org SGkgVXdlLAoKT24gMTQvMDMvMjAyMiAxNDoxNiwgVXdlIEtsZWluZS1Lw7ZuaWcgd3JvdGU6Cj4g QWxsb3cgdG8gYWRkIGFuIGV4aXQgaG9vayB0byBkZXZtIG1hbmFnZWQgY2xvY2tzLiBBbHNvIHVz ZQo+IGNsa19nZXRfb3B0aW9uYWwoKSBpbiBkZXZtX2Nsa19nZXRfb3B0aW9uYWwgaW5zdGVhZCBv ZiBvcGVuIGNvZGluZyBpdC4KPiBUaGUgZ2VuZXJhbGlzYXRpb24gd2lsbCBiZSB1c2VkIGluIHRo ZSBuZXh0IGNvbW1pdCB0byBhZGQgc29tZSBtb3JlCj4gZGV2bV9jbGsgaGVscGVycy4KPiAKPiBS ZXZpZXdlZC1ieTogSm9uYXRoYW4gQ2FtZXJvbiA8Sm9uYXRoYW4uQ2FtZXJvbkBodWF3ZWkuY29t Pgo+IFJldmlld2VkLWJ5OiBBbGV4YW5kcnUgQXJkZWxlYW4gPGFhcmRlbGVhbkBkZXZpcW9uLmNv bT4KPiBTaWduZWQtb2ZmLWJ5OiBVd2UgS2xlaW5lLUvDtm5pZyA8dS5rbGVpbmUta29lbmlnQHBl bmd1dHJvbml4LmRlPgo+IC0tLQo+ICAgZHJpdmVycy9jbGsvY2xrLWRldnJlcy5jIHwgNjcgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQo+ICAgMSBmaWxlIGNoYW5nZWQs IDUwIGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2Nsay9jbGstZGV2cmVzLmMgYi9kcml2ZXJzL2Nsay9jbGstZGV2cmVzLmMKPiBpbmRleCBm OWQ1YjczMzQzNDEuLmZiNzc2MTg4OGIzMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2Nsay9jbGst ZGV2cmVzLmMKPiArKysgYi9kcml2ZXJzL2Nsay9jbGstZGV2cmVzLmMKPiBAQCAtNCwzOSArNCw3 MiBAQAo+ICAgI2luY2x1ZGUgPGxpbnV4L2V4cG9ydC5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L2dm cC5oPgo+ICAgCj4gK3N0cnVjdCBkZXZtX2Nsa19zdGF0ZSB7Cj4gKwlzdHJ1Y3QgY2xrICpjbGs7 Cj4gKwl2b2lkICgqZXhpdCkoc3RydWN0IGNsayAqY2xrKTsKPiArfTsKPiArCj4gICBzdGF0aWMg dm9pZCBkZXZtX2Nsa19yZWxlYXNlKHN0cnVjdCBkZXZpY2UgKmRldiwgdm9pZCAqcmVzKQo+ICAg ewo+IC0JY2xrX3B1dCgqKHN0cnVjdCBjbGsgKiopcmVzKTsKPiArCXN0cnVjdCBkZXZtX2Nsa19z dGF0ZSAqc3RhdGUgPSAqKHN0cnVjdCBkZXZtX2Nsa19zdGF0ZSAqKilyZXM7Cj4gKwo+ICsJaWYg KHN0YXRlLT5leGl0KQo+ICsJCXN0YXRlLT5leGl0KHN0YXRlLT5jbGspOwo+ICsKPiArCWNsa19w dXQoc3RhdGUtPmNsayk7Cj4gICB9Cj4gICAKPiAtc3RydWN0IGNsayAqZGV2bV9jbGtfZ2V0KHN0 cnVjdCBkZXZpY2UgKmRldiwgY29uc3QgY2hhciAqaWQpCj4gK3N0YXRpYyBzdHJ1Y3QgY2xrICpf X2Rldm1fY2xrX2dldChzdHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IGNoYXIgKmlkLAo+ICsJCQkJ ICBzdHJ1Y3QgY2xrICooKmdldCkoc3RydWN0IGRldmljZSAqZGV2LCBjb25zdCBjaGFyICppZCks Cj4gKwkJCQkgIGludCAoKmluaXQpKHN0cnVjdCBjbGsgKmNsayksCj4gKwkJCQkgIHZvaWQgKCpl eGl0KShzdHJ1Y3QgY2xrICpjbGspKQo+ICAgewo+IC0Jc3RydWN0IGNsayAqKnB0ciwgKmNsazsK PiArCXN0cnVjdCBkZXZtX2Nsa19zdGF0ZSAqc3RhdGU7Cj4gKwlzdHJ1Y3QgY2xrICpjbGs7Cj4g KwlpbnQgcmV0Owo+ICAgCj4gLQlwdHIgPSBkZXZyZXNfYWxsb2MoZGV2bV9jbGtfcmVsZWFzZSwg c2l6ZW9mKCpwdHIpLCBHRlBfS0VSTkVMKTsKPiAtCWlmICghcHRyKQo+ICsJc3RhdGUgPSBkZXZy ZXNfYWxsb2MoZGV2bV9jbGtfcmVsZWFzZSwgc2l6ZW9mKCpzdGF0ZSksIEdGUF9LRVJORUwpOwo+ ICsJaWYgKCFzdGF0ZSkKPiAgIAkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7Cj4gICAKPiAtCWNs ayA9IGNsa19nZXQoZGV2LCBpZCk7Cj4gLQlpZiAoIUlTX0VSUihjbGspKSB7Cj4gLQkJKnB0ciA9 IGNsazsKPiAtCQlkZXZyZXNfYWRkKGRldiwgcHRyKTsKPiAtCX0gZWxzZSB7Cj4gLQkJZGV2cmVz X2ZyZWUocHRyKTsKPiArCWNsayA9IGdldChkZXYsIGlkKTsKPiArCWlmIChJU19FUlIoY2xrKSkg ewo+ICsJCXJldCA9IFBUUl9FUlIoY2xrKTsKPiArCQlnb3RvIGVycl9jbGtfZ2V0Owo+ICAgCX0K PiAgIAo+ICsJaWYgKGluaXQpIHsKPiArCQlyZXQgPSBpbml0KGNsayk7Cj4gKwkJaWYgKHJldCkK PiArCQkJZ290byBlcnJfY2xrX2luaXQ7Cj4gKwl9Cj4gKwo+ICsJc3RhdGUtPmNsayA9IGNsazsK PiArCXN0YXRlLT5leGl0ID0gZXhpdDsKPiArCj4gKwlkZXZyZXNfYWRkKGRldiwgc3RhdGUpOwo+ ICsKPiAgIAlyZXR1cm4gY2xrOwo+ICsKPiArZXJyX2Nsa19pbml0Ogo+ICsKPiArCWNsa19wdXQo Y2xrKTsKPiArZXJyX2Nsa19nZXQ6Cj4gKwo+ICsJZGV2cmVzX2ZyZWUoc3RhdGUpOwo+ICsJcmV0 dXJuIEVSUl9QVFIocmV0KTsKPiAgIH0KPiAtRVhQT1JUX1NZTUJPTChkZXZtX2Nsa19nZXQpOwo+ ICAgCj4gLXN0cnVjdCBjbGsgKmRldm1fY2xrX2dldF9vcHRpb25hbChzdHJ1Y3QgZGV2aWNlICpk ZXYsIGNvbnN0IGNoYXIgKmlkKQo+ICtzdHJ1Y3QgY2xrICpkZXZtX2Nsa19nZXQoc3RydWN0IGRl dmljZSAqZGV2LCBjb25zdCBjaGFyICppZCkKPiAgIHsKPiAtCXN0cnVjdCBjbGsgKmNsayA9IGRl dm1fY2xrX2dldChkZXYsIGlkKTsKPiArCXJldHVybiBfX2Rldm1fY2xrX2dldChkZXYsIGlkLCBj bGtfZ2V0LCBOVUxMLCBOVUxMKTsKPiAgIAo+IC0JaWYgKGNsayA9PSBFUlJfUFRSKC1FTk9FTlQp KQo+IC0JCXJldHVybiBOVUxMOwo+ICt9Cj4gK0VYUE9SVF9TWU1CT0woZGV2bV9jbGtfZ2V0KTsK PiAgIAo+IC0JcmV0dXJuIGNsazsKPiArc3RydWN0IGNsayAqZGV2bV9jbGtfZ2V0X29wdGlvbmFs KHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3QgY2hhciAqaWQpCj4gK3sKPiArCXJldHVybiBfX2Rl dm1fY2xrX2dldChkZXYsIGlkLCBjbGtfZ2V0X29wdGlvbmFsLCBOVUxMLCBOVUxMKTsKPiAgIH0K PiAgIEVYUE9SVF9TWU1CT0woZGV2bV9jbGtfZ2V0X29wdGlvbmFsKTsKPiAgIAoKClNvbWUgb2Yg b3VyIFRlZ3JhIGJvYXJkcyBhcmUgbm90IGJvb3Rpbmcgd2l0aCB0aGUgY3VycmVudCAtbmV4dCBh bmQKYmlzZWN0IGlzIHBvaW50aW5nIHRvIHRoaXMgY29tbWl0LiBMb29raW5nIGF0IHRoZSBib290 IGxvZyBJIGFtCnNlZWluZyB0aGUgZm9sbG93aW5nIHBhbmljIC4uLgoKWyAgICAyLjA5NzA0OF0g ODwtLS0gY3V0IGhlcmUgLS0tClsgICAgMi4wOTcwNTNdIFVuYWJsZSB0byBoYW5kbGUga2VybmVs IHBhZ2luZyByZXF1ZXN0IGF0IHZpcnR1YWwgYWRkcmVzcyBjMjE2YzgxMApbICAgIDIuMDk3MDYw XSBbYzIxNmM4MTBdICpwZ2Q9MDIwMTE0MWUoYmFkKQpbICAgIDIuMDk3MDc5XSBJbnRlcm5hbCBl cnJvcjogT29wczogODAwMDAwMGQgWyMxXSBTTVAgQVJNClsgICAgMi4wOTcwODhdIE1vZHVsZXMg bGlua2VkIGluOgpbICAgIDIuMDk3MDk3XSBDUFU6IDEgUElEOiAxIENvbW06IHN3YXBwZXIvMCBO b3QgdGFpbnRlZCA1LjE5LjAtcmMzLW5leHQtMjAyMjA2MjEtZzM0ZDFkMzYwNzNlYSAjMQpbICAg IDIuMDk3MTA3XSBIYXJkd2FyZSBuYW1lOiBOVklESUEgVGVncmEgU29DIChGbGF0dGVuZWQgRGV2 aWNlIFRyZWUpClsgICAgMi4wOTcxMTNdIFBDIGlzIGF0IDB4YzIxNmM4MTAKWyAgICAyLjA5NzEy M10gTFIgaXMgYXQgZGV2bV9jbGtfcmVsZWFzZSsweDE4LzB4MjQKWyAgICAyLjA5NzE1MF0gcGMg OiBbPGMyMTZjODEwPl0gICAgbHIgOiBbPGMwODhjYjA0Pl0gICAgcHNyOiBhMDAwMDAxMwpbICAg IDIuMDk3MTU1XSBzcCA6IGYwODBkZGU4ICBpcCA6IDAwMDAwNmNmICBmcCA6IGMxOGQ0ODU0Clsg ICAgMi4wOTcxNjFdIHIxMDogYzE1MDE4NTAgIHI5IDogYzFhMDRkMTAgIHI4IDogYzFjNGVmYTAK WyAgICAyLjA5NzE2Nl0gcjcgOiBjMjE2YzgxMCAgcjYgOiBmMDgwZGUxYyAgcjUgOiBjMjczNzY4 MCAgcjQgOiBjMjZhOTY4MApbICAgIDIuMDk3MTcyXSByMyA6IGMyMTZjODEwICByMiA6IDAwMDAw MDAwICByMSA6IGMyNzM3ODQwICByMCA6IGMyMDgyODQwClsgICAgMi4wOTcxNzldIEZsYWdzOiBO ekN2ICBJUlFzIG9uICBGSVFzIG9uICBNb2RlIFNWQ18zMiAgSVNBIEFSTSAgU2VnbWVudCBub25l ClsgICAgMi4wOTcxODddIENvbnRyb2w6IDEwYzUzODdkICBUYWJsZTogMDAyMDQwNGEgIERBQzog MDAwMDAwNTEKWyAgICAyLjA5NzE5MV0gUmVnaXN0ZXIgcjAgaW5mb3JtYXRpb246IHNsYWIga21h bGxvYy0xOTIgc3RhcnQgYzIwODI4NDAgcG9pbnRlciBvZmZzZXQgMCBzaXplIDE5MgpbICAgIDIu MDk3MjE2XSBSZWdpc3RlciByMSBpbmZvcm1hdGlvbjogc2xhYiBrbWFsbG9jLTEyOCBzdGFydCBj MjczNzgwMCBwb2ludGVyIG9mZnNldCA2NCBzaXplIDEyOApbICAgIDIuMDk3MjM2XSBSZWdpc3Rl ciByMiBpbmZvcm1hdGlvbjogTlVMTCBwb2ludGVyClsgICAgMi4wOTcyNDRdIFJlZ2lzdGVyIHIz IGluZm9ybWF0aW9uOiBzbGFiIGttYWxsb2MtMWsgc3RhcnQgYzIxNmM4MDAgcG9pbnRlciBvZmZz ZXQgMTYgc2l6ZSAxMDI0ClsgICAgMi4wOTcyNjNdIFJlZ2lzdGVyIHI0IGluZm9ybWF0aW9uOiBz bGFiIGttYWxsb2MtNjQgc3RhcnQgYzI2YTk2ODAgcG9pbnRlciBvZmZzZXQgMCBzaXplIDY0Clsg ICAgMi4wOTcyODJdIFJlZ2lzdGVyIHI1IGluZm9ybWF0aW9uOiBzbGFiIGttYWxsb2MtMTI4IHN0 YXJ0IGMyNzM3NjgwIHBvaW50ZXIgb2Zmc2V0IDAgc2l6ZSAxMjgKWyAgICAyLjA5NzMwMV0gUmVn aXN0ZXIgcjYgaW5mb3JtYXRpb246IDItcGFnZSB2bWFsbG9jIHJlZ2lvbiBzdGFydGluZyBhdCAw eGYwODBjMDAwIGFsbG9jYXRlZCBhdCBrZXJuZWxfY2xvbmUrMHhiNC8weDNlOApbICAgIDIuMDk3 MzIxXSBSZWdpc3RlciByNyBpbmZvcm1hdGlvbjogc2xhYiBrbWFsbG9jLTFrIHN0YXJ0IGMyMTZj ODAwIHBvaW50ZXIgb2Zmc2V0IDE2IHNpemUgMTAyNApbICAgIDIuMDk3MzQxXSBSZWdpc3RlciBy OCBpbmZvcm1hdGlvbjogbm9uLXNsYWIvdm1hbGxvYyBtZW1vcnkKWyAgICAyLjA5NzM0OF0gUmVn aXN0ZXIgcjkgaW5mb3JtYXRpb246IG5vbi1zbGFiL3ZtYWxsb2MgbWVtb3J5ClsgICAgMi4wOTcz NTVdIFJlZ2lzdGVyIHIxMCBpbmZvcm1hdGlvbjogbm9uLXNsYWIvdm1hbGxvYyBtZW1vcnkKWyAg ICAyLjA5NzM2Ml0gUmVnaXN0ZXIgcjExIGluZm9ybWF0aW9uOiBub24tc2xhYi92bWFsbG9jIG1l bW9yeQpbICAgIDIuMDk3MzY5XSBSZWdpc3RlciByMTIgaW5mb3JtYXRpb246IG5vbi1wYWdlZCBt ZW1vcnkKWyAgICAyLjA5NzM3NV0gUHJvY2VzcyBzd2FwcGVyLzAgKHBpZDogMSwgc3RhY2sgbGlt aXQgPSAweChwdHJ2YWwpKQpbICAgIDIuMDk3Mzg0XSBTdGFjazogKDB4ZjA4MGRkZTggdG8gMHhm MDgwZTAwMCkKWyAgICAyLjA5NzM5NF0gZGRlMDogICAgICAgICAgICAgICAgICAgYzI3Mzc4MDAg YzBhNzJkMzggYzE4ZDQ4NTQgYzA1MzA0OTAgYzIxNmM4MTAgZjA4MGRlMWMKWyAgICAyLjA5NzQw NF0gZGUwMDogYzIxMjAwMDAgMDAwMDAwMDUgYzIxNmM5YzAgODAwMDAwMTMgMDAwMDAxN2UgYzBh NzNkNjggMDAwMDAwMDggYzI2MjllMDAKWyAgICAyLjA5NzQxM10gZGUyMDogYzI3Mzc4ODAgNTY0 MGUxNDEgYzIxNmM4MTAgYzIxNmM4MTAgMDAwMDAyMDUgYzFjMDlkZDQgMDAwMDAwMDAgYzI3Mzc1 YjgKWyAgICAyLjA5NzQyMl0gZGU0MDogYzIwOTE3MDAgYzBhNmU5YTAgYzIxNmM4MTAgYzBhNmYy ODggYzIxNmM4MTAgYzFjMDlkZDQgYzIxNmM4MTAgMDAwMDAwMDAKWyAgICAyLjA5NzQzMF0gZGU2 MDogYzI3Mzc1YjggYzBhNmYzYzAgYzFjYWE4ZTAgYzIxNmM4MTAgYzIxNmM4MTAgYzBhNmY0NTAg MDAwMDAwMDAgYzIxNmM4MTAKWyAgICAyLjA5NzQzOV0gZGU4MDogYzFjMDlkZDQgYzIxMjAwMDAg YzI3Mzc1YjggYzBhNmY4NTAgMDAwMDAwMDAgYzFjMDlkZDQgYzBhNmY3YzQgYzBhNmQ0YzAKWyAg ICAyLjA5NzQ0N10gZGVhMDogMDAwMDAwMDAgYzIwOTE0NTggYzIyODY0MzQgNTY0MGUxNDEgYzFi ZTdmMDggYzFjMDlkZDQgYzI3Mzc1ODAgYzFiZTdmMDgKWyAgICAyLjA5NzQ1NV0gZGVjMDogMDAw MDAwMDAgYzBhNmU0ODQgYzE2MTU3MTQgYzFiZTdjNTAgYzFjMDlkZDQgYzIxMjAwMDAgYzE4OWE5 OWMgMDAwMDAwMDAKWyAgICAyLjA5NzQ2NF0gZGVlMDogYzIxMjAwMDAgYzBhNzAxYTAgYzFjNDk0 ZTAgYzIxMjAwMDAgYzE4OWE5OWMgYzAzMDIxNDQgMDAwMDAxN2QgYzAzNjQ0MzgKWyAgICAyLjA5 NzQ3Ml0gZGYwMDogYzE2ZGE4YmMgYzE2MjY3MDAgMDAwMDAwMDAgMDAwMDAwMDYgMDAwMDAwMDYg YzE2NTU0YzggMDAwMDAwMDAgYzIxMjAwMDAKWyAgICAyLjA5NzQ4MF0gZGYyMDogYzE1MTA1YmMg YzE0Zjk3NzggYzIwOTE3MDAgYzIwOTE3ZDkgMDAwMDAwMDAgNTY0MGUxNDEgYzFhODg5MzAgYzE2 ZGE4YmMKWyAgICAyLjA5NzQ4OF0gZGY0MDogYzFjNTkwMDAgNTY0MGUxNDEgYzE2ZGE4YmMgYzFj NTkwMDAgYzE5NTNiNGMgYzE4ZDQ4MzQgMDAwMDAwMDcgYzE4MDEzNDAKWyAgICAyLjA5NzQ5N10g ZGY2MDogMDAwMDAwMDYgMDAwMDAwMDYgMDAwMDAwMDAgYzE4MDA0ZGMgYzIxMjAwMDAgYzE4MDA0 ZGMgZjA4MGRmNzQgYzFhMDRjYzAKWyAgICAyLjA5NzUwNV0gZGY4MDogYzEwNmJiZjAgMDAwMDAw MDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgYzEwNmJjMDgK WyAgICAyLjA5NzUxM10gZGZhMDogMDAwMDAwMDAgYzEwNmJiZjAgMDAwMDAwMDAgYzAzMDAxYTgg MDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAKWyAgICAyLjA5NzUyMF0gZGZjMDog MDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAw MDAwMDAgMDAwMDAwMDAKWyAgICAyLjA5NzUyOF0gZGZlMDogMDAwMDAwMDAgMDAwMDAwMDAgMDAw MDAwMDAgMDAwMDAwMDAgMDAwMDAwMTMgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAKWyAgICAy LjA5NzU0Ml0gIGRldm1fY2xrX3JlbGVhc2UgZnJvbSByZWxlYXNlX25vZGVzKzB4NTgvMHhjMApb ICAgIDIuMDk3NTc1XSAgcmVsZWFzZV9ub2RlcyBmcm9tIGRldnJlc19yZWxlYXNlX2FsbCsweDdj LzB4YzAKWyAgICAyLjA5NzU5Nl0gIGRldnJlc19yZWxlYXNlX2FsbCBmcm9tIGRldmljZV91bmJp bmRfY2xlYW51cCsweGMvMHg2MApbICAgIDIuMDk3NjI2XSAgZGV2aWNlX3VuYmluZF9jbGVhbnVw IGZyb20gcmVhbGx5X3Byb2JlKzB4MWY0LzB4MmE4ClsgICAgMi4wOTc2NTBdICByZWFsbHlfcHJv YmUgZnJvbSBfX2RyaXZlcl9wcm9iZV9kZXZpY2UrMHg4NC8weGU0ClsgICAgMi4wOTc2NzNdICBf X2RyaXZlcl9wcm9iZV9kZXZpY2UgZnJvbSBkcml2ZXJfcHJvYmVfZGV2aWNlKzB4MzAvMHhkMApb ICAgIDIuMDk3Njk2XSAgZHJpdmVyX3Byb2JlX2RldmljZSBmcm9tIF9fZHJpdmVyX2F0dGFjaCsw eDhjLzB4ZjAKWyAgICAyLjA5NzcxM10gIF9fZHJpdmVyX2F0dGFjaCBmcm9tIGJ1c19mb3JfZWFj aF9kZXYrMHg3MC8weGIwClsgICAgMi4wOTc3MjldICBidXNfZm9yX2VhY2hfZGV2IGZyb20gYnVz X2FkZF9kcml2ZXIrMHgxNjgvMHgxZjQKWyAgICAyLjA5Nzc0OV0gIGJ1c19hZGRfZHJpdmVyIGZy b20gZHJpdmVyX3JlZ2lzdGVyKzB4N2MvMHgxMTgKWyAgICAyLjA5Nzc2Nl0gIGRyaXZlcl9yZWdp c3RlciBmcm9tIGRvX29uZV9pbml0Y2FsbCsweDQ0LzB4MWVjClsgICAgMi4wOTc3ODRdICBkb19v bmVfaW5pdGNhbGwgZnJvbSBrZXJuZWxfaW5pdF9mcmVlYWJsZSsweDFkNC8weDIyNApbICAgIDIu MDk3ODAzXSAga2VybmVsX2luaXRfZnJlZWFibGUgZnJvbSBrZXJuZWxfaW5pdCsweDE4LzB4MTJj ClsgICAgMi4wOTc4MjBdICBrZXJuZWxfaW5pdCBmcm9tIHJldF9mcm9tX2ZvcmsrMHgxNC8weDJj ClsgICAgMi4wOTc4MzFdIEV4Y2VwdGlvbiBzdGFjaygweGYwODBkZmIwIHRvIDB4ZjA4MGRmZjgp ClsgICAgMi4wOTc4MzldIGRmYTA6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwClsgICAgMi4wOTc4NDddIGRmYzA6 IDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAw MDAwMDAwIDAwMDAwMDAwClsgICAgMi4wOTc4NTRdIGRmZTA6IDAwMDAwMDAwIDAwMDAwMDAwIDAw MDAwMDAwIDAwMDAwMDAwIDAwMDAwMDEzIDAwMDAwMDAwClsgICAgMi4wOTc4NjJdIENvZGU6IGMy Mjg4NjgwIGZmZmZmZmZmIDAwMDAwMDAwIDAwMDAwMDAwIChjMjI4ODY4MCkKWyAgICAyLjA5Nzg3 Ml0gLS0tWyBlbmQgdHJhY2UgMDAwMDAwMDAwMDAwMDAwMCBdLS0tCgoKTGV0IG1lIGtub3cgaWYg eW91IGhhdmUgYW55IHRob3VnaHRzLgoKQ2hlZXJzCkpvbgoKLS0gCm52cHVibGljCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hbWxvZ2ljIG1h aWxpbmcgbGlzdApsaW51eC1hbWxvZ2ljQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3Rz LmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hbWxvZ2ljCg==