From nobody Sun Feb 8 13:45:48 2026 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011000.outbound.protection.outlook.com [52.101.65.0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7FE61341062; Fri, 16 Jan 2026 16:18:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.0 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580329; cv=fail; b=SacY9BVlEdMIFpoDM3HLJLJ5aqs0EPX4d8l8HS+1dyVIINIO7ib2KQJfrX2LCuSmdSF0vCTZKsbiGtu5wFIYjLoPld+kTe5PBScZyZiHR35/X1Y7qmSfQiC/nfSP36+fdGSBcsGKzJD8VPZHF1G5Rf9jfELDAcubxwDNuHKXQNc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580329; c=relaxed/simple; bh=rIIGj1pOcYLbPuEP8tSVf6f/1J3pRx8B92aOnfdq/vc=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=pr+9FVEKpniA/NPIIDSB8u33tpq2QtEXtsack230NVARBpWvI1AqgHh9lS/ABrOjrWb41zFBXnIA/9fy9RC5FOAYgZnTn1upNWC4/BfZPLjtuvzlU8ts+puFRnpFWWCldzF9C3vUZg7G8tzv/WXNJgRyYk5cNN5QO3MOMJTImas= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=PsskA0m0; arc=fail smtp.client-ip=52.101.65.0 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="PsskA0m0" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=V1Blz4fY7KsVMAG9k38o8VJXypmyLjX+XMtTBlfM5Ge56SGkeygtkyvRgw3D/ByPOl74Vhg7YUIQocDqdJ3Qvee82qTnGIhZiHdyMgHLECmiwSojR8+eli0gak61DNCFwubXpOg4pywCNOa4anaY6BdEUBwwFN7HSVtCG033j2q+Olxu1NlkJkJ2ThZtiBurMDb/j0ba6Y1/84WSTV9cjZc3EGAQRNi7fT3Tpg6KsXN3EdtoVFEZZlKF9g5LOcT76Sh+uINrftgL6PSe+nAxlQSWuJco1GbUxqlU6hZJYP6tCoMxBlnWAgwX+9kTWjiW/iMLhCs4FRVWhoVpvrgQPw== 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=MwJuK9xH9uZEaFmpscjMDx4HuCXH0qH/UiUYdvbnMig=; b=RakZBSm2SrF2axQXY40LfnA5s1TfM2bEhblwGsGWAKF6Z/+u9K36F5qXVj0R1bQu9U3OnLy6ZOu4BP5GOzf4nHpQB7dx5/B8NryNAg3g16+rmHoQPw/aIqcPQHKpWpJjBNCbGrKUYcQ5pRHjKFw+C167mLlFbBS7ws3m4bnHMmBKDj8wBCJHiKULxesVtyVXYIIee10leExxTkSMYG+Vp8xXXSOYatF2Xikl2//3RqZtGjZyGQ9yRfto2dzQIsad35zMkGJJlW/osM10ZzTA0axcVQf/NJH9UmsNRQ0aWvLniNH5UYwu8yoF24QxISYAnnRA8DJpgwI7pz8AVc4V3A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MwJuK9xH9uZEaFmpscjMDx4HuCXH0qH/UiUYdvbnMig=; b=PsskA0m0heXiaavanGSCGXMeyo7FLD2v7u56st0Hv9PK1G3FwHBiVZaPOz2jSF98PtUK+ben3NWzRDcexSX36LqacqGyBzetr1yJUAE45C1gTqiwBmoHIPJGhGchnsO5ctm22HT2YpkSIdU8PxpWLc3oI6v/kaxbu+6c8FiLYyvsbAOUcN6RAyKGuckjS8JJbhoW0xsnyp/u5PEsTHaGSTvc8Zan8QwFJlH0KDJyJNYm2p8zp+GCun0GHSP3chknMlDeSr5iCdXdCpOUWm5yTyOzEKACxYcEPwp1C/ah/rgWkzy9XxTmTbYBadZd7BwZdRGti0ILMPHpa6lCCqTrGA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) by GVXPR04MB9733.eurprd04.prod.outlook.com (2603:10a6:150:119::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.5; Fri, 16 Jan 2026 16:18:34 +0000 Received: from DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196]) by DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196%4]) with mapi id 15.20.9478.004; Fri, 16 Jan 2026 16:18:34 +0000 From: Frank Li Date: Fri, 16 Jan 2026 11:17:56 -0500 Subject: [PATCH RESEND v2 1/5] media: staging: media: imx6-mipi-csi2: replace spaces with tabs for alignment Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260116-stage-csi2-cleanup-v2-1-a56e9cb25196@nxp.com> References: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> In-Reply-To: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> To: Steve Longerbeam , Philipp Zabel , Mauro Carvalho Chehab , Greg Kroah-Hartman , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: imx@lists.linux.dev, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Frank Li X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1768580309; l=5038; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=rIIGj1pOcYLbPuEP8tSVf6f/1J3pRx8B92aOnfdq/vc=; b=JmX0Z4frr34wxnrIeZa2Gdi338CAuK1vcZehpHcp6EgfsVxvlTlg2cActYg9FvJsx7XrTBZ8D 21kb8prvajOAg6pfKqH3W7FArr+4yrsoa1CSAW82Jm7DuhsjS3S5Nwh X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: SA1P222CA0002.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:22c::9) To DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8951:EE_|GVXPR04MB9733:EE_ X-MS-Office365-Filtering-Correlation-Id: db2c48c8-9d28-479a-a2aa-08de551ae582 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|52116014|366016|7416014|19092799006|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?NmlCM0VLck9lVVNLQmZ5RVBpeHdpUFpFaEJBR0Z6cnBaMEJyaGszUTlnNzEy?= =?utf-8?B?bnFzVXd3UnArYWQ3RFZlVHd5Sy9kVDZnSDI0TDZiU0l1aVFjK3h5aUdnNWVo?= =?utf-8?B?QWdqLzFQSnM3SE1NR0pTMS9iY1VkN0t6T29mcVhoSmVVdjZPS29XSFYyTm1M?= =?utf-8?B?NkJQSDhPNXpMaWVJbDB2VE84WmNKVTkvdVV5VHhsVWF4YUx5WlRuY2F3ZFVm?= =?utf-8?B?bVpFK1dCZTk1TWphd3UxNnY0Yi9GNDZKSDlrcjdxb0xJVHVOVU1UM0tUM09Z?= =?utf-8?B?QlRSeEVncFp0YTdFWGxiS0pMSGpKeFhKMzlDWUhFeTBreDRxNzZxanI2eVZl?= =?utf-8?B?N2tYOFlabk5FbjlibE9hdGEwL0FISVloV1BmRkxoci9odGhGbjN5aXgva2JC?= =?utf-8?B?QVdaVTEvV3l4V3lvSDNBUGt1SE4xVm5TV2RaNGNaeC9SVzN6ME1abGR1Z21J?= =?utf-8?B?UDlkQThZRldBMit2NjZpVnlxU2grdWU4TVVHSFYvWkJ0SDkrQUdMcjRONjB4?= =?utf-8?B?eUhYbEh0UUpEUHM2VHREbGxzZkh1R0psMnpadFZqOXJ0Ty80V29yREgxd2hn?= =?utf-8?B?bzNUbFVITkQ4WmQwVEZBZ0psMlRKVjI3ekRpMnFDWE5vaXE5M3FYUmpUaEZv?= =?utf-8?B?d1dlQjYzNFhCK2Q3Y1JJWmJpeHJnUWQ1eGhDZDNXSmVlaEdaSTFOcDE3aVBa?= =?utf-8?B?Rm5UcmgvaGw3NXJKSU5ZSi81c3R4RE5zRWVtb1RlLzBGRDdqeE9iMkZqQmtE?= =?utf-8?B?aVpJc2tBMGZGWFV5QXUvMm9BeW1WSm5SM3hkOGczcDNLM0hIYktJbGFUU1pn?= =?utf-8?B?cVlkZE5FMW05UWplMmQ1T0hKdkxqOFlkR0VzaTliL09vZVJKdFIyczV5dVcw?= =?utf-8?B?eFplK1duL1A1SFNyTTJNazY3cDRvV0ZmUmxoRnJSOTYxWFgxTVVmcmRVWlYv?= =?utf-8?B?ZEc1bitzZ1pzMjIrdUQrRDhOMWxiL2w4dW44MVlzekxxYUVxUFQ2UDlySXcv?= =?utf-8?B?cTN4UkpGSWtUTDlPNEZiTXlMTXZoMnVDOHZ3M0RpMjQ2ZVNTRkM4eFhxY3Rt?= =?utf-8?B?dHBQaC9HMVA1aW95N3FiZ1dOcU94Wk95c1ZkYkQyYmZUaWUzaWF0WGhhaXpP?= =?utf-8?B?VkNGYUNXZCtzMjhZKzVLVkNpK0NodnBhZDJLZzQ0dERqQ1N3cEUxWDBOSGVi?= =?utf-8?B?TW92TXhVZEpQWmxQaE44NjVmMnU1dmo1bGRmeTNpd2hHcUVlanROMjdvRko0?= =?utf-8?B?Q0llNG5TMXFMbTI3NDVULzhKRDRkc2t5WFd0MkEydS9QSXluNE45b0RsajBV?= =?utf-8?B?YkZaVCtmVmFhVWs0dnAwb1RJZWY2ellpcEhyL1FPTHBDM3lDY05kNVl0cXZ2?= =?utf-8?B?K0pldElpTDkvS0VyV2o0dHNVZTVqL2FTL2ExNzlrL2I5bWpuRzNUNFluaUN2?= =?utf-8?B?ZDBSVmtmdXlEQnI1c2N1STVBdWk0b3c3UXJHQTQrTjlIYVRFM09GZjZYQmJa?= =?utf-8?B?KzFlU0hOSERveFZ1aWtRd1kzZnhJL0hMZncwMlFzeEozeUw2VWVzOW16RlFl?= =?utf-8?B?N3BVSGhKMW1DVnV0OVpFeXE1RXIwZWtTUm1QalFGZVhMNWUzeDRSanUxVmVp?= =?utf-8?B?eGVtU3ZOL09LNzlhZzNTRGFwWWFMTjBRS3BOOUdXa2dPVm5MOGxyczZmTjV1?= =?utf-8?B?ZXpwdFh3a2k1cFhRQ0RnL1pOUWtXYVlGdm02SlE3VytxNUc1NHpCcm15ZjU0?= =?utf-8?B?cG9xS3JYNjNjVWdXajVUZFYwSzd2ZUJETlhWSG1RVks2eVN2R253amlJek9F?= =?utf-8?B?WUhsWXQzS2FhSTdrV21iWjgrK01leENvVzBlMVIxRTVpcURMN296clhYS3Fo?= =?utf-8?B?bUh1ejYxdkNCS2tUUlNsWlpFOGJXQkt4ck1vZ3JiT3g1SVJBa1pLSDlUczNl?= =?utf-8?B?VkhRMXJSTlQ0RlhxdlNjZVhFWEUwQUR6WnhEaWIvWndQUDZwZGpSWGhqbWQv?= =?utf-8?B?YzR3K2F4Unh4Kys1R2E3Qmk4TXpCYng1a2xKNDV0K2Y5Y0JQQkdQWjFtT1ZB?= =?utf-8?B?N3hoRitmL2FiajZDalJ3RVpNUTJXSW84WjI2Y3MrcVpManJWZDFkajB4aFNk?= =?utf-8?B?MTk5SDd2T1F1ZnA2eDBqUXFWc2QySEM2V2JSdnd1WGlEZVI0S0kxN25URk5F?= =?utf-8?Q?IhxCfWsk7mG24vNo5WPQ4xs=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8951.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(52116014)(366016)(7416014)(19092799006)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N05rMXpWQytvNzVEOEl1L1BRRk5KVG1pSm1ZMEJqaDNheSt2KzhOMDQrWVJu?= =?utf-8?B?bGxOZE5xYUtRM1YwdVBCTG1wdmFxMUhPdENDOWlmVUZkUUxwQmluM0diTHNs?= =?utf-8?B?ZWxxSzVXTzNGM3hjQzFYemtaL1E5czNIdnRRK2kvSng3TkpsczVnRWZzWTFJ?= =?utf-8?B?MXViaGo1VFZKUVE0c3J0L1c0QXJjMDMyMmVpUTRheEVnQWtoeDFOMEpITlFr?= =?utf-8?B?WnVDNGw3Z2ZYZzRSQ0hCVk9SR0JUZWpMY0dlaGlJWlpOeTRtN1E5aFA4Ty82?= =?utf-8?B?QlRsaTVQWlhTTjFyeTgweUt6RktjYUZuSFhQNkZRbHlBSlRMcTU4eFpvRGlz?= =?utf-8?B?d3lPQVBqM3owcXIxMjFmOFJmRHpjb2VkdXFySUs0KzRjN3lMTXdmY01OUVFD?= =?utf-8?B?VUl3R0VvRXhVbGRZeG5CMzNaSldMT3NaMlVTTjhnKzZhNXVvS0d0SCtkUmpi?= =?utf-8?B?VjlmQ3hZLzVHTzdyQ0VVSG10aXdxU3hDb043QThOVTRVVmlhOGxxb1pDZUNs?= =?utf-8?B?NytvT3h6NVJvOGtVUEpFZ1poeUpyTmd3TVdZZmlGaGxSSjBLUHhQY3MrclNr?= =?utf-8?B?RmczelJJNlVpRlFJNFhLSHFEbmZMaytZcld6REhMc3V1YVNKeGU1dVNFQzRF?= =?utf-8?B?TnhBaFpwRFd5Y0pkMk0vN080KzZPdjlzeVQ1WXVWNmR0MzJ2enNJMlNSa1dn?= =?utf-8?B?Y3JJOE9YWUxSRnh3Q3JXVlRKSHlqQnVtZ1U3ZVZ1MS94NmpNemNJMkxSb3ZM?= =?utf-8?B?UXhSMU1Oam90azNta2RyaktCamZ0ZTJRc0theVBIUWpRVmszNE0rV2FvSG96?= =?utf-8?B?UTZOcXB4ZXp1ZGJRaHlVcFg2RVdCR3lmSWJHWVNYc1Z2NDkxT3hvY0hMRnNN?= =?utf-8?B?aDZORVNjcFpYTEFJa1BTK2VTZDZEa0FpZWY4c0FWMXdUNldGN0Q4QkdQMXM2?= =?utf-8?B?R3drU080Qy9wb2doRnI0anE3SXhJRkFpbWtqZUExWGptZzZDUmd1YVE4c29C?= =?utf-8?B?TlZUNlRkT0tIdTdNUVprTWhOSWpvS213NDJYOVRMUFV4NVpPYno5QUc2aXl1?= =?utf-8?B?YklEL0x4dC82N2VsRlh6eHlMZEtYZWEzU3Q3bHgrS05ULzI5ekYxQ0Z4eWNn?= =?utf-8?B?SW9HdDhzcTIvQVUyTGxiY0JyeUxoSkNsNEZ2cUJUREx1YVBvRkp5U0kzYUky?= =?utf-8?B?TnZ5eE1XcTlLbFlXVS9PSHZPd3gzczY1SnB4UjgxcDZHMnlYUHpyUTVCUHQr?= =?utf-8?B?QWZnSGttT2xveHp2cUsvSXZQalRKSU9ua3NBdzZ3L1JvY0l1bmxBZEp3NTBj?= =?utf-8?B?QytjbVBraExVRTBxOUVVRVVCazdxb1JJbGJwbGxNTXlLSWFIc09uSFZFeFZ4?= =?utf-8?B?akZNL01jblBiK05JbHNrbnNRMkhqNVgrRWwvZmdubGFINFQ1TitlcllYdy9U?= =?utf-8?B?T3VNcFE5VWlFYTZ0R0RkVFF0aytaSVZFWFUzS1VQRHIzVjBrNDBadlowM0Rl?= =?utf-8?B?UVdpem9lbHlmcVo1WFA2YXJ0ZnlOK29hQ1NSdWNwRXpOWStjeUdySGdHWlJ3?= =?utf-8?B?dUs0N2NJTDBZRmdUR01QUFZ5ZnkyUHl5UDJvcXFIZDFGQ2NWVHpsM3pPNXRD?= =?utf-8?B?OVJBdWE4STBYQnordElxM0pKMHl5NUVqMEZUZ1JMSzZNZllFTGZpQU9rVWo5?= =?utf-8?B?eXZXSWJ0YTBCMXhUTFhBMnJYdWxBMHVwNGRzUmhkM1MvQVFmOE1pY1hJY0Ex?= =?utf-8?B?S3BRMTkyc1VRS0JRMHp2SjlEMTlsSnoxRTIwaVdUR2RHbnhYcFpONG1aVnR1?= =?utf-8?B?Nis2VGJlQTNXbnFoc2I3bXFDaUVRNUQ3ay9jQ2lLb1ZONVVQVEl3WUQyODhL?= =?utf-8?B?VDZwdFYrR0VjeEpuRDdYVUVzMlF6SHl5Rk9Wd3lCakJtZGkxNS9Lc1hHTERo?= =?utf-8?B?bzFFWUZtVnBqc2RxTDlQOGJrcGNOSkZ4MjFVZUoxUUhBUFc2QmVSOEZwUFFY?= =?utf-8?B?M3IvWmxoUWpaczhYaEJsUElyUjZaang4M3g1V25QVW5SaEZBRkpOcnN6bUZ2?= =?utf-8?B?RldRWGxZdXE0VzVnT3Q0UHZFQStEU0lvTUlMQ0lzblZWb3ZjQXlueGVTMlJL?= =?utf-8?B?Ylo0eDBDWHpMU2VFOGk0NVJTbjVOQit2WElGa3JXU2ZqOGJyZ3UydlI5REto?= =?utf-8?B?Q2kwQ0Y0NjZ5bEpQcFpNZ2dHLyt5c09SWVBrbVliTkVFcHZzZXpJVUFpaUlK?= =?utf-8?B?dnRINTJVQWlKSlR4YW4rbkFndGp4SzcwOGdVRW1lcS9yRFU1alRySHdvS2Rl?= =?utf-8?Q?IheUB606ELlukmfeqv?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: db2c48c8-9d28-479a-a2aa-08de551ae582 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8951.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2026 16:18:34.2117 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: F5xRNHA3XD6cw8YyiLouULBHTPGzY8tReSV9YN0p0Kh/6EhNfyGap+zneascwVPlPwrY6zX8wdXpxYEzVul1yw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9733 Replace spaces with tabs to align register value definitions, making it easier to add new entries and maintain consistent formatting. Also use a space between the type and field in struct csi2_dev. No functional change. Signed-off-by: Frank Li Reviewed-by: Laurent Pinchart --- changes in v2 - struct use one space between type and field name. --- drivers/staging/media/imx/imx6-mipi-csi2.c | 84 +++++++++++++++-----------= ---- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/drivers/staging/media/imx/imx6-mipi-csi2.c b/drivers/staging/m= edia/imx/imx6-mipi-csi2.c index dd8c7b3233bccfc34b59e0f0ff813b36752e1526..1113ea2a37f03753423164069b9= 5c049968cc0af 100644 --- a/drivers/staging/media/imx/imx6-mipi-csi2.c +++ b/drivers/staging/media/imx/imx6-mipi-csi2.c @@ -23,65 +23,65 @@ * there must be 5 pads: 1 input pad from sensor, and * the 4 virtual channel output pads */ -#define CSI2_SINK_PAD 0 -#define CSI2_NUM_SINK_PADS 1 -#define CSI2_NUM_SRC_PADS 4 -#define CSI2_NUM_PADS 5 +#define CSI2_SINK_PAD 0 +#define CSI2_NUM_SINK_PADS 1 +#define CSI2_NUM_SRC_PADS 4 +#define CSI2_NUM_PADS 5 =20 /* * The default maximum bit-rate per lane in Mbps, if the * source subdev does not provide V4L2_CID_LINK_FREQ. */ -#define CSI2_DEFAULT_MAX_MBPS 849 +#define CSI2_DEFAULT_MAX_MBPS 849 =20 struct csi2_dev { - struct device *dev; - struct v4l2_subdev sd; + struct device *dev; + struct v4l2_subdev sd; struct v4l2_async_notifier notifier; - struct media_pad pad[CSI2_NUM_PADS]; - struct clk *dphy_clk; - struct clk *pllref_clk; - struct clk *pix_clk; /* what is this? */ - void __iomem *base; + struct media_pad pad[CSI2_NUM_PADS]; + struct clk *dphy_clk; + struct clk *pllref_clk; + struct clk *pix_clk; /* what is this? */ + void __iomem *base; =20 - struct v4l2_subdev *remote; - unsigned int remote_pad; - unsigned short data_lanes; + struct v4l2_subdev *remote; + unsigned int remote_pad; + unsigned short data_lanes; =20 /* lock to protect all members below */ struct mutex lock; =20 struct v4l2_mbus_framefmt format_mbus; =20 - int stream_count; - struct v4l2_subdev *src_sd; - bool sink_linked[CSI2_NUM_SRC_PADS]; + int stream_count; + struct v4l2_subdev *src_sd; + bool sink_linked[CSI2_NUM_SRC_PADS]; }; =20 #define DEVICE_NAME "imx6-mipi-csi2" =20 /* Register offsets */ -#define CSI2_VERSION 0x000 -#define CSI2_N_LANES 0x004 -#define CSI2_PHY_SHUTDOWNZ 0x008 -#define CSI2_DPHY_RSTZ 0x00c -#define CSI2_RESETN 0x010 -#define CSI2_PHY_STATE 0x014 -#define PHY_STOPSTATEDATA_BIT 4 -#define PHY_STOPSTATEDATA(n) BIT(PHY_STOPSTATEDATA_BIT + (n)) -#define PHY_RXCLKACTIVEHS BIT(8) -#define PHY_RXULPSCLKNOT BIT(9) -#define PHY_STOPSTATECLK BIT(10) -#define CSI2_DATA_IDS_1 0x018 -#define CSI2_DATA_IDS_2 0x01c -#define CSI2_ERR1 0x020 -#define CSI2_ERR2 0x024 -#define CSI2_MSK1 0x028 -#define CSI2_MSK2 0x02c -#define CSI2_PHY_TST_CTRL0 0x030 +#define CSI2_VERSION 0x000 +#define CSI2_N_LANES 0x004 +#define CSI2_PHY_SHUTDOWNZ 0x008 +#define CSI2_DPHY_RSTZ 0x00c +#define CSI2_RESETN 0x010 +#define CSI2_PHY_STATE 0x014 +#define PHY_STOPSTATEDATA_BIT 4 +#define PHY_STOPSTATEDATA(n) BIT(PHY_STOPSTATEDATA_BIT + (n)) +#define PHY_RXCLKACTIVEHS BIT(8) +#define PHY_RXULPSCLKNOT BIT(9) +#define PHY_STOPSTATECLK BIT(10) +#define CSI2_DATA_IDS_1 0x018 +#define CSI2_DATA_IDS_2 0x01c +#define CSI2_ERR1 0x020 +#define CSI2_ERR2 0x024 +#define CSI2_MSK1 0x028 +#define CSI2_MSK2 0x02c +#define CSI2_PHY_TST_CTRL0 0x030 #define PHY_TESTCLR BIT(0) #define PHY_TESTCLK BIT(1) -#define CSI2_PHY_TST_CTRL1 0x034 +#define CSI2_PHY_TST_CTRL1 0x034 #define PHY_TESTEN BIT(16) /* * i.MX CSI2IPU Gasket registers follow. The CSI2IPU gasket is @@ -106,13 +106,13 @@ static inline struct csi2_dev *notifier_to_dev(struct= v4l2_async_notifier *n) * reference manual is as follows: * * 1. Deassert presetn signal (global reset). - * It's not clear what this "global reset" signal is (maybe APB - * global reset), but in any case this step would be probably - * be carried out during driver load in csi2_probe(). + * It's not clear what this "global reset" signal is (maybe APB + * global reset), but in any case this step would be probably + * be carried out during driver load in csi2_probe(). * * 2. Configure MIPI Camera Sensor to put all Tx lanes in LP-11 state. - * This must be carried out by the MIPI sensor's s_power(ON) subdev - * op. + * This must be carried out by the MIPI sensor's s_power(ON) subdev + * op. * * 3. D-PHY initialization. * 4. CSI2 Controller programming (Set N_LANES, deassert PHY_SHUTDOWNZ, --=20 2.34.1 From nobody Sun Feb 8 13:45:48 2026 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011000.outbound.protection.outlook.com [52.101.65.0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0471434403E; Fri, 16 Jan 2026 16:18:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.0 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580331; cv=fail; b=nGj3lX1uI+MDaAEqdep1q30ypLVJ7jiU1mghTL7s3wF8e4i200/d8ZKBmCpskESrBZAPOPU5t7tIym3ohGyErQP+0MzfcuH4G6d2SD9AU+rN0vgx5EqfBp/n65mWUVfEBYpzKTQHZp2+Ve0d0DUCsuXg3V1Qfz9i1goyHy+J2Oc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580331; c=relaxed/simple; bh=CGjDzRXz+eQXEoJENI8tLIYhP+g0jZuTr4Gv8ve0irI=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=oqrjj6vQww4Nv0xCRMMBMlauYmKNGiZB9nwlWYyZaCWREq2luV/iCiEMc67rNOwliNDDnR+Xg/Os5b6Wt4FhZGlkLNJxge9nPpcIc14yKOkUe78NJ/Cb/mXVHW3Bt78qjJrJo8rPmDf2kyLY2dKe8TLeaeato0okQQ+En/uF6wk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=lPWPLu1v; arc=fail smtp.client-ip=52.101.65.0 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="lPWPLu1v" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=K2Ego9lnK+di4W0JsiOI/CVhiTL6GLo6vMLxCDkm/oZ7DtEETpvxAzzVbriNfhm8sw/A+Ea10UJkiTU369/boTkqih9qjuhJNJZesw+x2wnNJrP6i/F9Q627ZG67eBRRWe+talX8ssC/+PJCzmUSlpDcig1FSGu/IGmGUkotqIB1AXaXJG6XYFPIbQNT9EeEqXQBdk7zQEelDdoP1UXI3iWnKEJlmvGa1OakjSLQu7fsRenxUDQ1Rs//IQPfVkcRVKqQZF2sR2VT6pXstjL8ciTTVHstocADCWM0xhsMLPZN5gk3QCWsQ48AIHBAqmvKCu4wu+0Y8RJ9oZXtKk2k5Q== 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=4KIAOBMOSnd4359GMBHbIy2cPl2H25yHCjXiRW3frPk=; b=E/NJf+OTPDWbCVpz+ryoqhaXkS3XFh94wwolvict6Rq6LDPqMyph/VY/tS5pcBRTBFku8lAAA37e2IK9It2KFM9Z7Q8DPVSoLTOMkK+so018NDKG4egkkXATYnaZ8RIIyVQHXwVql8zVcqiSMkXIQouKveT8GZgt8VZPQawyyCLuZeIDkimLbUjzpIJSrqOaUsJhYc50IbC4zQDzi1d/7KeNFttAPfM4sDukxmUg8ZrqUAosaa18txXzWRnUxtggb9IV5KZkjTwKPyDhXAJxeBk0H+I6+TJ7L02zCbFkIZWyyZq7TFeyo2NJT19d86pzGqiyjLecRoWptwFygptqiQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4KIAOBMOSnd4359GMBHbIy2cPl2H25yHCjXiRW3frPk=; b=lPWPLu1vR6Gq25ykXVGklmVeb994788pxGJBgvny5BBAUq4y/AVNqFosbKmNn3skx7pwcHfGR4zYJLqd06HiZ4TdL9dVMsLVJfRnLlm72FGhdgGOwyvqbtyn9U0oUzV6ktxBxfdo61Eqa/zMUxxxFfAnazo4fLBJgyyp3BQwsKAzCoL0kVcM8/9tXHYBQ0bjOYijHuk0UgZyhaSTP4fTL0COsCYPS4lLpRXRKPgFkopJrk/TN1wo4V9sDZVgRY+7+3iM/mjmYRcyRSyAej84j57GsGuUet8Iwk6KjOMWYpCKOMHgPntCTanZSwpY76MCK0qHQU6y1/jZtNN6S74JqQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) by GVXPR04MB9733.eurprd04.prod.outlook.com (2603:10a6:150:119::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.5; Fri, 16 Jan 2026 16:18:36 +0000 Received: from DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196]) by DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196%4]) with mapi id 15.20.9478.004; Fri, 16 Jan 2026 16:18:36 +0000 From: Frank Li Date: Fri, 16 Jan 2026 11:17:57 -0500 Subject: [PATCH RESEND v2 2/5] media: staging: media: imx6-mipi-csi2: use devm_mutex_init() to simplify code Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260116-stage-csi2-cleanup-v2-2-a56e9cb25196@nxp.com> References: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> In-Reply-To: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> To: Steve Longerbeam , Philipp Zabel , Mauro Carvalho Chehab , Greg Kroah-Hartman , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: imx@lists.linux.dev, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Frank Li X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1768580309; l=1541; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=CGjDzRXz+eQXEoJENI8tLIYhP+g0jZuTr4Gv8ve0irI=; b=3VHGDEloZZQjLrXxrr43LErU4i48aYzKjB4wHqqPFp3bLWL7Yil1xO2VhjTb30MPuYSCSmvk/ jjAeSScF/YvDEyPfJLotnZIdd61ewMynP0/jwL12yjUrJsr58zSSavg X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: SA1P222CA0002.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:22c::9) To DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8951:EE_|GVXPR04MB9733:EE_ X-MS-Office365-Filtering-Correlation-Id: dc887704-019a-4585-8b23-08de551ae6f5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|52116014|366016|7416014|19092799006|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?V1ovOGt3V3B3V2owRmFrTGJwVWVUV0ZCK0FqbXFreHY5MjZhYjNtbGdJN044?= =?utf-8?B?dU1rY0NaeENDYlloTm9SUXB6V0Jta0wyMm1weGVEU0Y1djI2QUd6RDJHK3Ux?= =?utf-8?B?dythK0Y2VGdlTy92WnV1MjRMRmo4V01lQnZGV1VyYndpVndUMnVaR2MzVHRP?= =?utf-8?B?elNVUWRBQWlraldaUlUrUUNOVUdIQjIrbHNTZS9WeUYveWRySG1yc1JVa01K?= =?utf-8?B?eDRwMDZmZlYyVy9zUlhTcEJYTGpFV24rRy80bE90WjZEeTRFMlpheStaOUJq?= =?utf-8?B?aysxTFYvUEJmVXQ5cG1yZlZtajBCSFRERVlPbERONXBJZXNBenBCOFAyaXJS?= =?utf-8?B?NEltZFoxamVtdEhpblZlVkpEQzM2VzNQSFBJeXZPSCtySWJhWTVDQnloK3ZP?= =?utf-8?B?ZlRlcEYxOXFCMTRuTDFVR01XNkpxbENNNDhUVFVZYXNUMzIvTUxUSXkyOVlR?= =?utf-8?B?WkQyOEdlRE05dXpyOUMxa1A0SjFUclByOXBkTXZkYUhKNXVOeXlYTCtjMUdI?= =?utf-8?B?ZTM4dmtUSWp6QUpXckwranFzamRZWTFjbGU5aVhFcnZPYWh3R0s3RTVCV05r?= =?utf-8?B?dEtURGVBQ0xLSm9KZFdMMUZ0bDltWjdWdlBSWGczQmJLcVZzQzF5WSs5YXBx?= =?utf-8?B?OUdSNWxmODVUNEdHWW5IK2pwa0JHYnJFcEpDczA0OHBGMEhBbTgycWxNZWl5?= =?utf-8?B?MkdiNEdGYnZOTXk2RXpWdnZ2a0RmU3NLU2hHaDJJbDhrWWJNZU1LVlJURWVE?= =?utf-8?B?ZTNjZ2Uzc01NNFdPcHRQdWwrS3Z6TU9EUnBOMTBSQzExbDZPUU41d04vbXFY?= =?utf-8?B?UWczZ0s5WXdjb2dXODVMT2lyK1RFUTAwTHhhTHl0TnlKMGJkY0QyK1JQVU1x?= =?utf-8?B?bUU3MlVUanZpb25PdGFNMVlZYkg1Q3RmQllldWorSElqN0NPVjNpQ1J0Y0cy?= =?utf-8?B?TzFiZTUxc0Uyd2VDZXBPYUlEenl2R1VhT2N2aVduZ1FjS3MxcDJyNUJsc3VN?= =?utf-8?B?TlV3aHdLUFFDOXJTTldKZ3pTS2pKbGxmLzBEM1N0UUd4Qlp2bjE4US9WeFJw?= =?utf-8?B?eC9VczdLSXRzaUFhbDIzODlpWGRSQk9MRXJCSzJOdy8xbjR4V3R4REFnWXlx?= =?utf-8?B?MnJqSGxWdHBkcVZlUDJ4aHMwdXZib1FWb1I5VnhLZUZZZ3BxMkRTdEI5T3V1?= =?utf-8?B?cFBlQkZ0MG1XODFSczVleW5odTJENVY2aGNoakEzZUpKSVZnZGdvdDFNUE4z?= =?utf-8?B?ZEdlNG1JeUNDMU9EYzZ0eHFzT2RnVXdvQ2xXaDdCdEJqL0tBdWxXNGhEQlNl?= =?utf-8?B?WDVSdzhOWXFza1o3UHlQaVZtWjVNNmpRckxWYW4rdzJ2dnhMMGI3VzJ1ODlk?= =?utf-8?B?SWIvZXhDTlJJL20zMG1xbGg5d3NVRVExKzBkU2pHampwdWN4aWR6aG10YnAy?= =?utf-8?B?ZEVYUmplZUE1cFFUUGh1cXNnMHBiem1uNGFLdHdBZmpIVlp0TW9Mam5jaFp6?= =?utf-8?B?ZUJoSDY1L2M0Z1hsTk1MR3h4ZVdmWCsxLzFRYTVqbmdjTDJyRGJNOGxvbVZO?= =?utf-8?B?a3RWblRGaGJUL2YvWWI5VmtFSDdKNVRIUXAwU1RVQmhpVTNmaUxXbHBLaElS?= =?utf-8?B?V3RzdS9TLys3OXRrL0RxUGRaSWdNcVE3cVI1SWl3NG1jZUZvTWJBM0pKTEov?= =?utf-8?B?UGpZcEYzZUdDNXZDTHVDQ1dCSkhuT0ZSWEhQY0N0bkJXaVJVbnkxSkhpZlB2?= =?utf-8?B?TkxyRnREY3p2Q3RocW1lOWpJQ0Q4SDU2SUVQUUdnc3FYY2ZqYW9RckxiVjNY?= =?utf-8?B?cmcwRElITlZnb2cxQlkxYzhyU2krNlBDbmc1T29idGlERXZWTlRNa2NHdUda?= =?utf-8?B?MmRyQTBiZVNzTFBZUk9PeEdyY0tudnN0T0g5ams4TW53SkNLTUUveldIV3BE?= =?utf-8?B?cFZ0Q2VEZFJRcW5SRDRoMTVFWlVRbndiWFRva1JXOEE2dkh4UVJhUlFXSTFu?= =?utf-8?B?YlVrOEFxNnZPN3lyUmIxUE1naFl2RUtpV2xBU3ZxWkYySmo5aENMOUYvb2VH?= =?utf-8?B?eWhDL29pck1NejJUWm1MUzdubU01Sk5mRlVlK1B2azF0NUd4YWQyT1N0SFVm?= =?utf-8?B?NXFNdWlURE9OeXpsUFVoR3Fvbi9hRXV4QnJTT0xUa0pOSzllQU10V0o5MXVX?= =?utf-8?Q?/2eSElqOqAI1urfV9rvkIvI=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8951.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(52116014)(366016)(7416014)(19092799006)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eUhaZTNselFGVDRObEpmVzlkMFJ1VFh2WnJKN0xSZXR3OWlHc2lsckZCMXNV?= =?utf-8?B?a2ZzWjF3Tm9ZYUo5WGtXdHlRQmpyZjRvRE1CWng2WlVsQk1tblJQWG52UXZs?= =?utf-8?B?bDJMR3hpTzhvWFdsbmVDMkgyaGdRWHNkYytPRnF5aENHUUxaajlzNE10WTlH?= =?utf-8?B?dUd0eWo1TFFhK05aVXgrRkJNc29vWnR0a0Jjb013ZFVWNFVIM0ZEbTJNME1P?= =?utf-8?B?VEJwY0JHYWJ2SVNKOFNXR2JVVjNqTGxnUmZackNwY0k1VkJJUmMvaXY5NmR3?= =?utf-8?B?MHZXY3F2SnZqZVIweXRBOWNHYzNxbDAyTHBSY3dRTHdWSThzMXFadjlVc3dl?= =?utf-8?B?L1lyVFRQb0lHQkpoQUEzYjAxd3M1Tk9EZlluN3lpS1lDUXFURlVSeERMUVpD?= =?utf-8?B?UE01bUhCZ29UUXpwbFluTHNQTVNKUi82blRDY29CNlQ2QmpVNGJWSmliajg5?= =?utf-8?B?ZUVEZGZNdHh3NHREbmlaRXYxdUhQTStPaFFDa0oxQ0pzcW15ZlRXT2RtYWtu?= =?utf-8?B?dlcybzBmdExoSUhDaS9TN0tIU1I2RzN3TElWblZhalYwMy9OTUxoaVpxQmhN?= =?utf-8?B?M0R2c2dPSjRQQzhTazQzU3RObkliY2d6QlRVZ2RJbm8yQ1pmTzFmNHFJWTds?= =?utf-8?B?SGhjYW8zZ3hndjk5QkJESE9ScEdJeXJVUlRzZ1RZSGJReFhDQWs4OVhFMis4?= =?utf-8?B?ZGsxYm01bTIrbDMycFRZYm90OXZET05jQXNMQXpuMjdxOXBpeDVVYjkxRDNn?= =?utf-8?B?RTBrRWw1NStnLytQNVBHU0dqejhOK1MzMS81V0hyRmxxMGIrSkN6K0Q1WmNv?= =?utf-8?B?eDJ3TmtzL3NGZ2xvMHR0NkFhbTRLY0hFWmc4dUxBSW83MGoxTUtPdUdNZ08z?= =?utf-8?B?NnJ4bEVnYVU1VVRab2xHR3ZyVHNheXJEaURQeW9zODQ0WkdKYkw2M3dWR2w4?= =?utf-8?B?OWYxTGpleUxuY3poYjhLaytkMExhVTFLNmt3SXlOeTZNZ0ZhQUQ0RVNHdWQ2?= =?utf-8?B?TDNVTTZaa012UzVZZS8wenhCOWRMcWo3N2l5b2hMNGt4MnpLaEhmSkx6S1Zk?= =?utf-8?B?K3UxMDA1dkVic0hvcFh4THV4OEZ2VlBjWkhkT20xU3h3Q1ZPYW5VVUMydDZl?= =?utf-8?B?SGpXd0UzSkY3QjB1eWVHU3FYRVlVSllTMEF1SmFBaWRRVXBPa2pGWDRzZ2NX?= =?utf-8?B?emFBQTQyeHRxSUVFZHBxN0tnU1JaWTBqY2NiQ0FaRjB2ZWNNR2lETXlUcDk0?= =?utf-8?B?ZGdYc0llTTE5MmhEaW1Yc012amFxSnI1ZlR0QW04UFo1QTZzYlZRUHBnOHhY?= =?utf-8?B?dXM3Q3B6ekNLaG9uOCtxWUUvcllUREx1anM2dE1BKzhGSDRPY2FzL3FMVFFh?= =?utf-8?B?clZZTENBdzRmbWc2ZWlxdll1Q2N3K0JpZVR2RmNOS25UY3hGQ0h6bE93a3Vl?= =?utf-8?B?a2pWeDNQUm0vOElERk9rSHVWcUJHK3JXclNTMjJmL1RUMGZLQmVRWXR0WnZo?= =?utf-8?B?UjR0YVUwS3NTdzhCTmF6aTkxZmY4UGFpWTNQeUtQNU9TRmNmdVR3Vi85c2I2?= =?utf-8?B?QTR2bEVHUkkwUUdZT085bGVXYTlsd3lHKzNxQU1VVFFuV29vOGZmTm5ham00?= =?utf-8?B?MFJpZmovb2hYMllTMGdLMmpZTThjTSsvZEZSRzNlQ1lxOGhsRkMzeGw4bThI?= =?utf-8?B?bzdhcVlKaEdKZU4ySDdDUC9yVnpWRWJrRjdpREZtT01od04yMHd1b1RaanRn?= =?utf-8?B?OFRuaERvOTJKc2xXVU9Gd3RqSy96K2RCaWoxcnVxQjM4S0U3YlVKd3ZFUDRL?= =?utf-8?B?WE9icUFRSmhWSmJ4MVRhbGE1ZmV1SzVIcGlDc1kvRnZNcVpsR2JsQ0JyQ1pB?= =?utf-8?B?UFVwUlE0QTEwY29BVUJDRXE4UG1ob00vblczV3FQWk8vcmFsZDFTMUpDQm0r?= =?utf-8?B?cGpBZWd3R1p4Z2F0NXNNL2JLYmNSWGF3My84Snk3SkpDNDZCQjhsR1JuTGlr?= =?utf-8?B?dnd4VkFZenpUUldXT0tNVGZvMmRocW1JYWJ5Y0p0NDZQeTZBYzZuellHa0Z2?= =?utf-8?B?UzFyemhvWVZac2hvMDI5SDBuR2JnMXd5ZWU4NGpIUGJDeVpmVlRYcXcrK0d1?= =?utf-8?B?bjRLN012QTlLVGx2aXNpYnlyK2ltZmdWODdvQjdzallEa04rRmJqQXpWQytu?= =?utf-8?B?clFHd1hBSkFvWDVpTHJybTd0RytiQ2g4Q2VqVmEwODIxSEF5L3pJdDZOWjhN?= =?utf-8?B?UnVpTDcyMURRZjA1RjV3NkR0UGk0MUxlazhGRDJrNWgzMXZMRlc5Ris4aVVi?= =?utf-8?Q?KC+HgPZygDwmWyWRxC?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: dc887704-019a-4585-8b23-08de551ae6f5 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8951.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2026 16:18:36.6681 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SH7AiBHBc6V3Au+haJ17B3n5tUxNAzSahm9uSDsLxhfnX3zusmB7cdRmV3qKRjiGafxAam/hOzmq81a9U3y9cw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9733 Use devm_mutex_init() to simplify the code. No functional change. Reviewed-by: Philipp Zabel Signed-off-by: Frank Li Reviewed-by: Laurent Pinchart --- drivers/staging/media/imx/imx6-mipi-csi2.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/staging/media/imx/imx6-mipi-csi2.c b/drivers/staging/m= edia/imx/imx6-mipi-csi2.c index 1113ea2a37f03753423164069b95c049968cc0af..4f740170d2bbf586ac0a58b5d25= f8f8432e9e6a3 100644 --- a/drivers/staging/media/imx/imx6-mipi-csi2.c +++ b/drivers/staging/media/imx/imx6-mipi-csi2.c @@ -777,12 +777,14 @@ static int csi2_probe(struct platform_device *pdev) if (!csi2->base) return -ENOMEM; =20 - mutex_init(&csi2->lock); + ret =3D devm_mutex_init(&pdev->dev, &csi2->lock); + if (ret) + return ret; =20 ret =3D clk_prepare_enable(csi2->pllref_clk); if (ret) { v4l2_err(&csi2->sd, "failed to enable pllref_clk\n"); - goto rmmutex; + return ret; } =20 ret =3D clk_prepare_enable(csi2->dphy_clk); @@ -805,8 +807,6 @@ static int csi2_probe(struct platform_device *pdev) clk_disable_unprepare(csi2->dphy_clk); pllref_off: clk_disable_unprepare(csi2->pllref_clk); -rmmutex: - mutex_destroy(&csi2->lock); return ret; } =20 @@ -820,7 +820,6 @@ static void csi2_remove(struct platform_device *pdev) v4l2_async_unregister_subdev(sd); clk_disable_unprepare(csi2->dphy_clk); clk_disable_unprepare(csi2->pllref_clk); - mutex_destroy(&csi2->lock); media_entity_cleanup(&sd->entity); } =20 --=20 2.34.1 From nobody Sun Feb 8 13:45:48 2026 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011000.outbound.protection.outlook.com [52.101.65.0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3468D39341A; Fri, 16 Jan 2026 16:18:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.0 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580339; cv=fail; b=sgtvDgs+c85R4U3jRekb+x0leb6r3BtVd4Q3Mr8SeqkCZWZ7Fr5x/pvs4WRibGnVJZzvWhbX0J44+Znkc+kSo+U6tNltL4oOiMCID8/oPFpCJaRfDHHKaFN7iTKzcqhhc7b+8kwFvrmXaLbBqr8O0jaYMwP57ktUQiz/0T2Oxpk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580339; c=relaxed/simple; bh=821JGvweGkZLeCSbUFTn/43wIZ6Bq2oJDylytEPu72k=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=oIJ5c913RdppsAxUNiURWclX/eVXKPK9qXTyynS+s/HUf5fPUB2zF8uzs4QayJqDfSwu6RQXy2H/B9/W7Rl6B/8FL3mNqMxFVwqXWeIuANTB4mLOlbiaDBnDmu+C23jLaRgaAMv/rOf2F5Syr/4LQ5qEoU+4dq2+Gzmw/Gd6PmI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=edNF9PlK; arc=fail smtp.client-ip=52.101.65.0 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="edNF9PlK" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=jvmbKVpBUafFUhIEs0L/v0eFbrzL9Cpq8KFN/GW7+ypbN8uP4/Na/Dp4xeUM5NxvlfeHfhi6WLATkWz/Ml8Gx5inmJZwkASxB5j1wLlzkfr0c0Jtk36OaSfo4pnr3HYjdrofNxVUMq/A5ftKTRiztHppsqFaaGBebdEJp1XSeGdOaX3SkROmrqlJReU1lERRBLn11tT7BxvNN77TFWn6Nm3zXo/pVrt5fb6ixxCKcK50QHQe5wDBUfoEYalCiAi35fasIo/XkM02Sr7kGsf4v2k0m0R87N58ahk161KjJPmLJX0b1DLalek8gyUO6KWPU5IQBsySFWvC8InPhwuWVQ== 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=Ul57GZxBQ5hVeglnhBoJ4mLRK8WpOeZqpkhL4ytFbu8=; b=Jh7wdu1CTTS2QXmERBbwmImd+vIAqGYPxyqWClACZVC5slPCWbL0xqTC2Jht6x15g2Gtd9P/6iBlF7hTirFAJo0ztuLPDfvJ34csVmV8QgbX3TvtDGi0962yzXFF+leYK+wQ4eu5zAlg31uQ0XSZgnTvscjvvi15kUWd+0Sr9AupezLAC40ctoy/u8iq6HWFyxDZ8FqAxaAra5qe00Uad82ds/fyVPmzQy7ZZHv5AKjLvtBLdUypAGX/CRJ/kBIZtfOA8AW0IUt0I0Bl0fUbbzhx1HxjXsG5+awNdycVio5YCTjfpdndcUecKQwUmoSyjGwPTnuEgy23aZimtU1q3Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ul57GZxBQ5hVeglnhBoJ4mLRK8WpOeZqpkhL4ytFbu8=; b=edNF9PlKU0UZ7gNnZAkcdYwdyl2GfItwigB+QAJktLhgoeVHEviQBZfwuoEGtCv84m/Jv55/iPfqhQ99jFCke6n56Eb2bF6pbDuopkBzZ1KkRBr76dGPahmHZNaRaWh8fN0BR3CC0N7JBId/Cw189xNNzSQWFGg176uvK/wnFDqBV2BywPgJIN9kOMl1vlbwo2qiitoeorn96F3G6g6NOe2Go7VogUSpKq4q4Xs+6NFoP+VYae46vJA+QiCKTcVfGOFthwSKkZ5dX6EhZz4vnTtEwclzQqCkwDsxUZIasy/fG3TpdVs1ouHrz0oJI6Zxe+XXXR2QIt+5bW3o1a6adg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) by GVXPR04MB9733.eurprd04.prod.outlook.com (2603:10a6:150:119::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.5; Fri, 16 Jan 2026 16:18:39 +0000 Received: from DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196]) by DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196%4]) with mapi id 15.20.9478.004; Fri, 16 Jan 2026 16:18:39 +0000 From: Frank Li Date: Fri, 16 Jan 2026 11:17:58 -0500 Subject: [PATCH RESEND v2 3/5] media: staging: media: imx6-mipi-csi2: use devm_clk_bulk_get_all() to fetch clocks Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260116-stage-csi2-cleanup-v2-3-a56e9cb25196@nxp.com> References: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> In-Reply-To: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> To: Steve Longerbeam , Philipp Zabel , Mauro Carvalho Chehab , Greg Kroah-Hartman , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: imx@lists.linux.dev, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Frank Li X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1768580309; l=4713; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=821JGvweGkZLeCSbUFTn/43wIZ6Bq2oJDylytEPu72k=; b=svgmcfsSiH8P86qy/hf9551A25CFflsDHwYAcqjdkFRGEEFDIes3ifQPI83zDFTIHmPRJwJiY eqmcHXe+2HQAnm77TXq7MmEF+zASTdzTs97dznzfAJV5iUVJgkXyytF X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: SA1P222CA0002.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:22c::9) To DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8951:EE_|GVXPR04MB9733:EE_ X-MS-Office365-Filtering-Correlation-Id: ab918c99-23a0-4850-db59-08de551ae867 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|52116014|366016|7416014|19092799006|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?aWFpa0lMTXJOTStwZFBMTmJKdUtCMFFJVmV5UkdSQzNnQkdsUjJnQlkwSnlH?= =?utf-8?B?aXd4UjBOMHVLU3Z2bHpsNENYUzRRMUF3bm5HVit3MFpDOW83UVhKK1prb1FZ?= =?utf-8?B?MGs3c1k0SUlUZEtCVW9ZODhjWWZDdDM4QUZmc1FRcFg5VjUvWFdSSGFKT00x?= =?utf-8?B?YktWWUhzYkFoa1phcEQ1MmpuazdLd21ZQTJ6QVBSdDh0RFR4QTBjcllmWDho?= =?utf-8?B?WG1MVmhpanZvRlA3T1ZBTFBhRHIwSUozazZOWVZqeDJKeXpuSmFRS3FTYVQx?= =?utf-8?B?WDZmY1dGbmZ4VmFhQllPWldDWHA0T0M4a2Y4eVlhWitremsxdnpjc0VoWkNS?= =?utf-8?B?WDJTcTg0QWFUMkhnaklJUURGQTExU3hWVWRaWjJzazNLanYzWEhzbWpCRE9t?= =?utf-8?B?Uys4ZC9pUnpxU09nR2VEMUZTbkRhU1diTGdiVkQ4WENKSjRTcFdNeUhIYnVm?= =?utf-8?B?MjhRdXk2Sk9BcGdBL2JFQUlYeWRZcVJzdGJlZVVMbEMwWE1nWGF1ajFZQkpp?= =?utf-8?B?Uk9ETnJpclR4cTIxVGs0ZXJEbmY2VnJ4QzZSR0Eyd1Bnbk1Rc1RoR1JVMGNs?= =?utf-8?B?R3I0Ung4dEhUbG10dkkxOG9LS0FsdEsydmRpd29rS1JOb0RxMkVROFYxL1ha?= =?utf-8?B?bU90TkxTcWRoZ044ZXNVdHh6MnpRaG5XcHRkUldTc3QwQkpRaU41dVdvMnpv?= =?utf-8?B?YlREeXIvYzhlM2JMSjNKQm9XRENIMzEvZGhSTjh6NmNGMTkrSldWQndoL25Y?= =?utf-8?B?U0pJak5RTUpmRktaRG5kNU1OTXRoYXlQRThpMi8wVlMwYTZvV2pwR1VQRnFu?= =?utf-8?B?OE85R1c2Wm1oYjFmSzBqU0ZhUFhSZmtNRVdkVjdqRGQzajllS2t3L1N2SW4w?= =?utf-8?B?eHFaaU14UjlNbU9ScElEZXVQSUlFQ0c1bmdMamJPQXMyWmdVS1czajlsc0xi?= =?utf-8?B?T2ZWVUpiYjBaSnRJbDV0VzNFdGpiOVhxUXc3eE55MEc4cTlBRjBuRlR4WkNy?= =?utf-8?B?VStZTkw2L3JHb2V3bWp0dEdOblVJVlJ6UXlOV2QzQlBteUtvK1IySmlBMExS?= =?utf-8?B?YVVzTzNNencvRGZyek1CRFJjc29aT01jWitSNlpoKzBNcW5BMzBZMjl4U2VR?= =?utf-8?B?TXVtQlRXMWZ2THdhMjBFcmdaU0RNLzR5bmpBODJ1ZGg5SER1a2JaS0RaaVY4?= =?utf-8?B?WmxER2dpWjlod0w2T0YzWFpaVEJFUVR5WDlLVlVCeTBISVYzaWZQNzBTYTZr?= =?utf-8?B?d2dCT28yYTdEcFNjUU5oU0I1UWNjWE01aWV6YStaRTBlcEhiRjFESHR0c1gx?= =?utf-8?B?TVN2VTUrTXFCRmpuVkw4M3VvNmY3TmQvejR3ZFE3ZkxGN0M1YjI5NjlsOEJH?= =?utf-8?B?blRZWVJCZ3h6MGxDSVpGVjJ4TERYRlMrN0NkNkRCNnBPQXU5bm4vb0FrOFFS?= =?utf-8?B?TzA4cm9EbWVQQzRIWXo0LzBUUnJWUTAwR3pieDFEdlAraXhFV2l1U3hLb3N3?= =?utf-8?B?Zm5DNlhhQk56dUphWHY4RHVqK3NCR2toWkZibU4rL2Q0WkNva0lqeGtIS0JN?= =?utf-8?B?ZXRXZ2ZCMzdNZ3IwMUhGbU9lQ1BtcDFkdXhhTzIzZVIrMlkyVDlpcnZEOFRB?= =?utf-8?B?Nkp5YWwwS3BRQlF6V3VBWi9BWHhySnVueXkybTJ2OERKRGwzZjFuejRWdU1p?= =?utf-8?B?eFBWN3g2QXNJTVM4KzdMVmNrbFQvaFp4VTZaWWhkT0pkaEtMNXQyREF3THg2?= =?utf-8?B?ZmE1THE2UjU0ZG9MZ214SmpXR21HUEdQdmZTL0tsaThQRmx3M0VrRTYzN0N5?= =?utf-8?B?Q1c0eEJiTEJpcnYwR0hQWDRzL0tYQXN3U3ZwK3JJUEdjMnlUYzJMODlTbDYw?= =?utf-8?B?NGpKbjRlc0lqelJhTG9oU0xXeW5DYk4vTEIrRzJXN01oSVVmZTdyWFowcHZq?= =?utf-8?B?N0R4WUZLMEhnTnplTEVJOUhzd1RVNW9WR2xPeE9vSHlLcU1tc1lNVjBXMXJ4?= =?utf-8?B?MkRXR0t4QlNNeU16RUYyd3dkT2lZNmVxS3Fza3RGWkJYYW5nZ0tlQ21uM252?= =?utf-8?B?Vzk5Ymp1ZFZqZXBEM0RndC8weUE4dDNvZkIrbUxWTXpFQ3g3djZnS1hRYk13?= =?utf-8?B?U1FUZC9leDBicjlvdjRkZEJsYURCNzRWdmp6Q0pkRUl5L2JGdkJKSm5XaGJH?= =?utf-8?Q?poMP9Kfi5ktvy4Dm99Dln0M=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8951.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(52116014)(366016)(7416014)(19092799006)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Y0ZlczF3elhNWjVCZFVZRXJSRGZRRUNFYVlpZHk4YzFRM3pXWjBtUjE3d3ZV?= =?utf-8?B?L2pEOFcwc2NsZVZTV25HeWlXSUdFNWY2RXlJVk1KN0dkRDR4YkdKWTM5YWtM?= =?utf-8?B?U1c4YWtYbzVhS0RVMHo1QzFINU1EUTlsTVRXNnNab3lBN0RLOEMyZlBpYUdE?= =?utf-8?B?a0Eyb0RyVHpUQlhxaFJVMUg1UlpwczB2YXVkV2RVUVNHWUdUK1lqVTNhK0ZD?= =?utf-8?B?L2NNa3RQT2dvWFlCT1kzUWVxc2ZZbU1YckJFZTZlNWhUdmhFREtIaWpJRkdB?= =?utf-8?B?L2dUamJBNGdzZ0lWSjZsQ0pGOTdOWHJVS0tPQy9UYUtOOFZrTVQ3bnNzWEY0?= =?utf-8?B?K0taVVpLSGxSQjE5amxxajVsWUwzaGJWbmdGQTl0ekdUWEJKTDAycFEyQWVJ?= =?utf-8?B?L0FKeWFyUjR5bHE5cFNrSURCd0NVM0JqS212eVFiMlhXUC9KNlQ5ek1IZ0d0?= =?utf-8?B?bC83Y1Z5TlQxMlhPeUZiWklWOUUxb3prTHFubjdDbWNVQWdrUkJOR0JiNEdr?= =?utf-8?B?eDkvNERYWGY5TTRVVzgzRU80a01xK3laRjVHL1lEYkFCT2Z0K2FIcE5JUjFY?= =?utf-8?B?OG9mM2txZ21UbHR0dTlUYWJHZERUNnRMRWxZWXRBc3dhOFlGYmJ3WkQ5cWNs?= =?utf-8?B?a0MwSjNlVmVSa0xvdFBqZWsxa0pnUVh1ZDh2TlpoUGdHeTYwZlVWMWRqd3Ey?= =?utf-8?B?dzJaL2M5M09PNm5RV29nVkNSYlkxMlFyLzNDbGNwR0xRNkNLMXUvZ3VqSzhu?= =?utf-8?B?ZEJGMmM4UHNibFRUellNUVlmM0QzUlc4dW9VNUkwb3FsVnRKbEJKQ0dyeFZo?= =?utf-8?B?TTk3eWVUcnYyejZmdkpDUHVDSENMRTlYdHNWdlV6VmFQeElNcGIrQmhMTUt1?= =?utf-8?B?QUhiYUVaV2VrNHBCVDJWWkh5VzJrdHZ6OWN2b3VpeCsyd2FBaEc3Slp2cGwr?= =?utf-8?B?amc5Z000RGd1dW0rbFVVWHhsemhYZ2RrN2FUL0xIeWJuazVzV3dYLzR6Ylp5?= =?utf-8?B?VE9XMW5rNlZtZEtScEZ2SVNuWU9KQm5zamhsam1qT05wNURrd3BwWnZ4Z085?= =?utf-8?B?T2x4U0wvZXVxcktzMEpyZ2g2Yno5cWlDSWZyb3RQTkZDZFlBSmNxaXdlMFEv?= =?utf-8?B?cnRFSlE4VWtxeDlWaUoxaDhOZHFuY3NEdmZHQWY3MG9GMmZkMi92ZXk0VXFx?= =?utf-8?B?T2R6ZDYyQnJJRmg3ZmNoeVdPY2ZQcU9DZFZvOW4wSERrdVNLdUI1R0pndm40?= =?utf-8?B?QUZWcDlWOG9YaUpVRkxKRVIxSE5QN2tsemRxMWxRL1Rkdm9oVEI2dzRHT0VR?= =?utf-8?B?MTFMN2dmOU01dFJyKy80emwwMklLQXJxZEZGVHBYdUQyWmpRWTlMdHhGTlVM?= =?utf-8?B?SUM5bTJwOGk5SkNIMmo5cW4rTjVrckxad3N4K2JvaWpoSDdpZmUyc2RlQVZn?= =?utf-8?B?b2VrUGtwMENXTUdUaHQ1bTNkNG5vUy84Z0VNSWM1NjhFV3poMkk3QnRMbDVG?= =?utf-8?B?bndDSzJKaWFXRE5nWnJBUlFHRjR1Tk1yNjRjK29pa1grYmR4cXlZbGx1M09n?= =?utf-8?B?RERqSktCSk54dk5WbTViTWk4RmkxZTd3czA1cUR6dlQwYVB3cWdHSGJHUVp0?= =?utf-8?B?aGI5S0JrMFlEY2gvUytjeHNvTnJ0QmtJYUVjTS9sN2oxS1VtUngxcmVLcVBT?= =?utf-8?B?dlVaS21VenZTUXNnek14enNpdVZYNk1Ed2xxTkM5REJ6eUlnazl1YWdxT0JK?= =?utf-8?B?a3RzaEd6SmJsT2k4cDZ4TFk3Mk1KMXJQbmRTSW5Dem9qOGdMRWRHOGk4RVFT?= =?utf-8?B?ZFN2a0FteGh1VWJ3b3cwdTB2VEdYWmNRSCs5SXNwV2JrZ1FRaTZCOVFBbjhy?= =?utf-8?B?YnhPNGVVZFVYZTh4SE4wYVNQWWNUY2F5VXJLYndBOG5wM09zOXJoMmNQY3J3?= =?utf-8?B?TXpVRmdtZzFaNDBwWEYvY1hlV1NOUWY2UllONmFDSkxFUjcyek5KTDFBTHNR?= =?utf-8?B?bnJIZUlZWXNEMWZvelBXSGI3eVBZNGg3VzM4UzJqZXo5OC9pWGRkcUd1VXBp?= =?utf-8?B?dHB1MVF4YXpyaUhKd3pIbisyeFhWOXYzWm5lK3NySmJ5WWJlVWlES3lxMmto?= =?utf-8?B?UmZYRktiK1Fhekl1Y0RIbGtuUFU0emxORWNVaDFyclZMTWdvZFREdmlCcEw4?= =?utf-8?B?TElGUW96SUROR3NOdk9pYTJIS0hmc0FId21DNnZ6OXgwbGhHeG9NV3RYdGdF?= =?utf-8?B?Z2pBM3RyL0xnNDRaVkcxUFRsNEhzMjVFc0o3UUxWMkxaRWRMcjV0ZnV5UCsr?= =?utf-8?Q?pVXn+tG4e0FO4rCMl/?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab918c99-23a0-4850-db59-08de551ae867 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8951.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2026 16:18:39.1161 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: D9RbEOrp/SxYL7OkynJxmej/AKvXiDJ1XHgjAJu8HPW2b6wpm3SMPTgVZrLcYSojmEXTSwffTwv35ptnM0Na5Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9733 Use devm_clk_bulk_get_all_enabled() helper to simplify clock handling. Defer all clock prepare and enable to csi2_start(), which previous only enable pix clock here. Add clk_enable at log_status(). Do that safely because there are not register access before csi2_start(). Signed-off-by: Frank Li --- changes in v2 - add clk_bulk_prepare_enable() get at csi2_log_status() --- drivers/staging/media/imx/imx6-mipi-csi2.c | 57 +++++++++-----------------= ---- 1 file changed, 16 insertions(+), 41 deletions(-) diff --git a/drivers/staging/media/imx/imx6-mipi-csi2.c b/drivers/staging/m= edia/imx/imx6-mipi-csi2.c index 4f740170d2bbf586ac0a58b5d25f8f8432e9e6a3..e1b4b7fb53131ce9515b9441d8f= c420e85d3e993 100644 --- a/drivers/staging/media/imx/imx6-mipi-csi2.c +++ b/drivers/staging/media/imx/imx6-mipi-csi2.c @@ -39,9 +39,8 @@ struct csi2_dev { struct v4l2_subdev sd; struct v4l2_async_notifier notifier; struct media_pad pad[CSI2_NUM_PADS]; - struct clk *dphy_clk; - struct clk *pllref_clk; - struct clk *pix_clk; /* what is this? */ + struct clk_bulk_data *clks; + int num_clks; void __iomem *base; =20 struct v4l2_subdev *remote; @@ -343,7 +342,7 @@ static int csi2_start(struct csi2_dev *csi2) unsigned int lanes; int ret; =20 - ret =3D clk_prepare_enable(csi2->pix_clk); + ret =3D clk_bulk_prepare_enable(csi2->num_clks, csi2->clks); if (ret) return ret; =20 @@ -390,7 +389,7 @@ static int csi2_start(struct csi2_dev *csi2) err_assert_reset: csi2_enable(csi2, false); err_disable_clk: - clk_disable_unprepare(csi2->pix_clk); + clk_bulk_disable_unprepare(csi2->num_clks, csi2->clks); return ret; } =20 @@ -401,7 +400,7 @@ static void csi2_stop(struct csi2_dev *csi2) v4l2_subdev_call(csi2->src_sd, video, post_streamoff); =20 csi2_enable(csi2, false); - clk_disable_unprepare(csi2->pix_clk); + clk_bulk_disable_unprepare(csi2->num_clks, csi2->clks); } =20 /* @@ -570,6 +569,11 @@ static int csi2_registered(struct v4l2_subdev *sd) static int csi2_log_status(struct v4l2_subdev *sd) { struct csi2_dev *csi2 =3D sd_to_dev(sd); + int ret; + + ret =3D clk_bulk_prepare_enable(csi2->num_clks, csi2->clks); + if (ret) + return ret; =20 v4l2_info(sd, "-----MIPI CSI status-----\n"); v4l2_info(sd, "VERSION: 0x%x\n", @@ -601,6 +605,8 @@ static int csi2_log_status(struct v4l2_subdev *sd) v4l2_info(sd, "PHY_TST_CTRL1: 0x%x\n", readl(csi2->base + CSI2_PHY_TST_CTRL1)); =20 + clk_bulk_disable_unprepare(csi2->num_clks, csi2->clks); + return 0; } =20 @@ -749,24 +755,6 @@ static int csi2_probe(struct platform_device *pdev) if (ret) return ret; =20 - csi2->pllref_clk =3D devm_clk_get(&pdev->dev, "ref"); - if (IS_ERR(csi2->pllref_clk)) { - v4l2_err(&csi2->sd, "failed to get pll reference clock\n"); - return PTR_ERR(csi2->pllref_clk); - } - - csi2->dphy_clk =3D devm_clk_get(&pdev->dev, "dphy"); - if (IS_ERR(csi2->dphy_clk)) { - v4l2_err(&csi2->sd, "failed to get dphy clock\n"); - return PTR_ERR(csi2->dphy_clk); - } - - csi2->pix_clk =3D devm_clk_get(&pdev->dev, "pix"); - if (IS_ERR(csi2->pix_clk)) { - v4l2_err(&csi2->sd, "failed to get pixel clock\n"); - return PTR_ERR(csi2->pix_clk); - } - res =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); if (!res) { v4l2_err(&csi2->sd, "failed to get platform resources\n"); @@ -781,20 +769,12 @@ static int csi2_probe(struct platform_device *pdev) if (ret) return ret; =20 - ret =3D clk_prepare_enable(csi2->pllref_clk); - if (ret) { - v4l2_err(&csi2->sd, "failed to enable pllref_clk\n"); - return ret; - } - - ret =3D clk_prepare_enable(csi2->dphy_clk); - if (ret) { - v4l2_err(&csi2->sd, "failed to enable dphy_clk\n"); - goto pllref_off; - } - platform_set_drvdata(pdev, &csi2->sd); =20 + csi2->num_clks =3D devm_clk_bulk_get_all(&pdev->dev, &csi2->clks); + if (csi2->num_clks < 0) + return dev_err_probe(&pdev->dev, csi2->num_clks, "Failed to get clocks\n= "); + ret =3D csi2_async_register(csi2); if (ret) goto clean_notifier; @@ -804,9 +784,6 @@ static int csi2_probe(struct platform_device *pdev) clean_notifier: v4l2_async_nf_unregister(&csi2->notifier); v4l2_async_nf_cleanup(&csi2->notifier); - clk_disable_unprepare(csi2->dphy_clk); -pllref_off: - clk_disable_unprepare(csi2->pllref_clk); return ret; } =20 @@ -818,8 +795,6 @@ static void csi2_remove(struct platform_device *pdev) v4l2_async_nf_unregister(&csi2->notifier); v4l2_async_nf_cleanup(&csi2->notifier); v4l2_async_unregister_subdev(sd); - clk_disable_unprepare(csi2->dphy_clk); - clk_disable_unprepare(csi2->pllref_clk); media_entity_cleanup(&sd->entity); } =20 --=20 2.34.1 From nobody Sun Feb 8 13:45:48 2026 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011000.outbound.protection.outlook.com [52.101.65.0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D58CF340D86; Fri, 16 Jan 2026 16:18:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.0 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580351; cv=fail; b=pVXOaAg4BEQLQ1OifHRTVmPdAAyWXv4FM5wXbz+IfxDzSPZM6osEAjaJ5ySzAlWRTCGrofxWFu1/ZevntSg7/LuPcxb8U0W31GOcFb6jDj0cK7F6ydw/tA3+nh15gHbK9T6HKbSAuL7hFPYaPn2ci5w1CCfokZARmzXTS96f+to= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580351; c=relaxed/simple; bh=HUtJfZ5UwnVY167yFTUryLb7oW4vhVqma7POuJNTdq8=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=mbAnY+KKLLgbQcSfXovBHIpm+4+T5JkabGTdjjQyW2vU/tufp31v9zVGG8eVl4InpG569dtGx7LKmgs7KW2CtxIroeKqaU2y2kJHpvVnk25HSder6ktI07d/1E6GkjqKSQxRIbvDRVzanlGRFKvItQzJJp0QJ3RI4LGcs/Oun1o= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=Pyw1FBO/; arc=fail smtp.client-ip=52.101.65.0 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="Pyw1FBO/" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yD3rsS2kQg0Yp6xbw0mf9a8TCrLptvjxlCyhGqymshZO4gp+JCmNKay0i/5eZN2R76H84b7IfNV0IBsRcHbD63lbAG/sfSJX2/E/7P0mjaAJOASuMfFkgc7OXPIkQaRPwH6mqrWvwcOdPW25htztCpvexXVXhW6EzE4LrbeDU2Vqs0z+2t3gh3NredlfIv55Q9ADVKeDy9WqZrln9qoDpg+Ue9ePx2KuFJsYvTu955ToJCCtYoThtEjor21dHG1g+Nbw6GO+oVJx4clBgeBFw8p5kqwlTKx0NjAcenwPoPST0rKZutH6tWfgQmcmCrM8pnM9MYijGGt7ZdNVYT8o7A== 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=lXO7m7C7aW85x0I8vOEzC/LeMjS7hFhZOXZcN/YC39I=; b=egfsOr7mOs1s/CqVhRW85pOI4YaN54JGwyIXrBVLOLO/K2eHsgeWWItBIg2QNELAMxuGpero93TztrQmU4yLmWluLSNrcYDUghzMeFr57NDB8MsfqVAnaHEOqZXjK1Qu1Ka/eFIm7FJMNDWzntJybqv0t28CRVOsyun2Z3YeO4dhD8/bmeHXTRrSbShUSIolHk/zOlPAiP76Y4XZe4A2661hO3qjEvB6MHc/oYvXBvuc8ZZCnyTktOJtzI1LtaYZe661XGzFxVaKahKWXYsM/Y0VRbIn/JAgZlX/Bdqjmc4XV6baGVIp1Ewy5HBN892TI/O0H45a7ByaqNe1WMhj9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lXO7m7C7aW85x0I8vOEzC/LeMjS7hFhZOXZcN/YC39I=; b=Pyw1FBO/WG0rfgEZihVZAoiVm2rH7jd1AIhU5GSisI36S9sM8bUZzQaydm7WZmoB9D8yUicTc/FO9vigZZ/200bM99psEfwhzRlU7gD2zde0TT+SX5K2EeNjVFAknRxa6pcn6wr2/iagb011MYT5DVFZPCFaaRshVhw9lTs9MqJIjxCEX2/M/ZQM/TBQWoO/d3o1jUha/geo9yDcViAKJ38dlE8o8SVTrOzGUrMGdJYle+mdYx0ONATbKLjXtYKrMCeanWUezUk5diW+MXw8FbSrlJ0Md4cbbD478kfYP/VejAMo9deGN1nImo8dwysYGaWtoQyNRLMrUho72pPHMA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) by GVXPR04MB9733.eurprd04.prod.outlook.com (2603:10a6:150:119::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.5; Fri, 16 Jan 2026 16:18:41 +0000 Received: from DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196]) by DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196%4]) with mapi id 15.20.9478.004; Fri, 16 Jan 2026 16:18:41 +0000 From: Frank Li Date: Fri, 16 Jan 2026 11:17:59 -0500 Subject: [PATCH RESEND v2 4/5] media: staging: media: imx6-mipi-csi2: use guard() to simplify code Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260116-stage-csi2-cleanup-v2-4-a56e9cb25196@nxp.com> References: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> In-Reply-To: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> To: Steve Longerbeam , Philipp Zabel , Mauro Carvalho Chehab , Greg Kroah-Hartman , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: imx@lists.linux.dev, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Frank Li X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1768580309; l=3875; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=HUtJfZ5UwnVY167yFTUryLb7oW4vhVqma7POuJNTdq8=; b=JKtP1zFIYmQeB/svNOoupMVUgo/Ai3F8LuUy697ESaPkAGxNXyXyeDhskA5/uR+ytsa4Wqd0U F2vaVDGvzDcDROpYaFuT5UQ5+fwJ8VI73jBsD6O0u1hkkP65dwGelvd X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: SA1P222CA0002.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:22c::9) To DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8951:EE_|GVXPR04MB9733:EE_ X-MS-Office365-Filtering-Correlation-Id: 5e1cc83f-6a3e-4cb8-4ba1-08de551ae9d8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|52116014|366016|7416014|19092799006|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?dnJZL3VqUG5uLzR5MGJHbXNYRlJsMEV0Zy9xTjdBWHJYV1A3dkdXOWkyblo1?= =?utf-8?B?K0czYzAvZVhMZlQzN2hYOGE0S05tcEZVOVVtbHB3aTdZRFZ5S3NnZ3ZzY3J5?= =?utf-8?B?MEJvU2IyTkpiZzdzUXpqVE54RHdGT3YyVit6SVo4Zk5ZN3ZFYVl6UzR4UHFV?= =?utf-8?B?VHVlVWtCVWI2aWhNbis4eXBmKzJldFYwaEc3SFVhS3l1VVVGaW1ySkowU1JD?= =?utf-8?B?NWlYdHowdGVEYVFZdXY2MU1oTm0yZERUc3BBRDZBTkFGY3VSTWtBWFZ3Z2Mr?= =?utf-8?B?T0V2V2Q4VkViMzVlUmJORGNxTWQ0bjBBSXdTM2Q3QVFyV0dpVDhiNkhwbXZZ?= =?utf-8?B?TFgzbGpmdnpRb1lodkhzS29YeE03OC9UamxscDJJQnFLM2I2blgwbmdqWHFw?= =?utf-8?B?SlU4SkVJYWM3WXpnYld2OVhSSjZvNVBMbVFpQ0NxRmdSYy9PRFRydm9yWnk4?= =?utf-8?B?aWd5OUMyNEpZY1IyRDVFRUkyT29Ka3kvenk4MVBDZnJTTEVxMXp1WXpPNEVj?= =?utf-8?B?RXNkWFd1TXNUSHBlbC9KWjNjUjRpMkQxK01pV0c0OHRBRTY2QXlNaDE3QSsr?= =?utf-8?B?YmxsTzFzdmJLZlM4YXdHWGJ4OFZPNFhsMzkvM2tlUzJSU0hFUmRjbUJ6STlP?= =?utf-8?B?TEQzOHlmK0xtTDVtUkRFYkZIbm9CNys1ZGJidDRqTVl6Z0gzNXlVQmRjTWhp?= =?utf-8?B?R2FsM0t1QmdmdVh0WGZ0WDlmU0tMbXJ5UHY5cjk3VHE3TEFja2JzMDdSbjlO?= =?utf-8?B?S1A3YUtUWFJuWUhjYkduWm02OS83eEZCZXVtN3Q0ay81QzFsL1phK3g0bGtB?= =?utf-8?B?OGFoY2dUdjNuZkxuTkNabHdPUHZ4d3prSmxNbWRNL2hzYzZMUk5idHJ6TDBr?= =?utf-8?B?R0U4YzUrWHN1UXNialhOdU1renRyQmtsS25KTCttV1hLUWlNSmJUdGsxY2Ns?= =?utf-8?B?YkZoNGZ2Tm9KS0hjRXh5dnZJUVZyYVFVNXZVNG9zWllsaVJ1ZzNud3NrSHI5?= =?utf-8?B?cmtadG9ENVlwaGNPKzZuVU10WXhqMDVQZVY4TGxKN2xOKy9JdzVHeURDd01j?= =?utf-8?B?Uzl2V0dNNW9JbDlwWHpqYWtGYmRIQ2V1RTBmVGlzQXhZTkhScGZmbndBS00y?= =?utf-8?B?NjRuYlRweXFHLzc4S0ZENDZpQjRlaE5vS0VoS1hVZ3Jyc3llcnlRVkdiRUVF?= =?utf-8?B?Y1c3QWgwUXY3S1VZQVVtanBkMHNFWTVMeGtuTnI2S2hRM2dmOTY0L3N1enVx?= =?utf-8?B?enFRaGxlcWUzK0E2ek05dUlDV01jSm1Uai9GZHhuQ3pkbi85ZDM2NzJtYSti?= =?utf-8?B?Z1BZQ0hwdjFXWW9JMVNqMWFwNkRhMytTb1dPZXpmZlRmOUFyeC9VWW96alR3?= =?utf-8?B?bUVwK1lkRHd6L0d1YkxrVWkvd1lMbmFpYUh0ZEcxUEVIQ2VpRGhrRG95QzNi?= =?utf-8?B?WXRQVXpYbGdLM2pQcXZmYjBBUnQ0NnBYN2RrWUJFb2F2OUdhOExuOUlMeXBs?= =?utf-8?B?bURhVk9DTmpjTGE4dnZaQ2ZVY01mS3BnWm1ONHQ3R1psSW5sYzJxWlorVUtR?= =?utf-8?B?WE5BVDdBZkkyM2Jua2h5WURRU3VENXFnU0RVYk5hTDhETkEyQldjMnhPVGVW?= =?utf-8?B?U21Ec0gzS2VVN1ZXQ0E5Njd1elA2SUg1LzczbUJva2UrMndHWEpjQldSTGdU?= =?utf-8?B?UFpBcE5LZ1ArRk5KeDFtTDlYUTAyMVZxY3JqOUVSWkxEdUdPdWpQR1dSQTB0?= =?utf-8?B?bkRNR0hKK2VER2tRbXhvc2VsNXVwNWlWMTZqbDJ0ZC8yRmFwdkZUQk5VT3Jr?= =?utf-8?B?RTNIVHRaUEY1ajZyU2F6QXp3cTZIelU0RG5qMUpZRGJwT00xY1JUSlpmU1Zl?= =?utf-8?B?NEJOS0dUbWRKcnR1UzJhT0Q4OEtJQXYyMjBaUW1SYlJYOUFrelVRM3lld2VX?= =?utf-8?B?MEpucDM4VUZUSGRQYjloS0VCZ1Z0V2txaUI1VUNZUlVUeTA1YkpsVXR4UU9S?= =?utf-8?B?NlpZbVE3a2V6TEpKWGM5V25ZdXlvaVJaTE1wUTR3bWFBbDI3R0FoVFFwWWQv?= =?utf-8?B?M0U3SGxpOXNQTTA3Qm9ZMVU4RVpRalM4eVgwV3VnYkI1eThZQkcxREZHaUpL?= =?utf-8?B?VE5nQlhWNHNYOFh5K255TkFwY2tzczhKSis5TG9jcUt4dTlJV2lNc2JMYmZj?= =?utf-8?Q?QrkpaOL1fzHdNwemoLqKIiA=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8951.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(52116014)(366016)(7416014)(19092799006)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MG9tYUZoNVMwaTVIREVobFU0Y3dUakNEOFpBNFRBc0VZOHdya1JENlc5Zk96?= =?utf-8?B?QlE4RGpFNHp2NU85a0d6eEZtankxNlNTRlBsVS9hRzYxaXZ1VTFFa3Zjek8x?= =?utf-8?B?MDAvMTlJVllLWlQxRlBKRnZkTldrSlp2MGJ5YkdEM1VKRzNic0dhbHEzQ3Ur?= =?utf-8?B?RXY3cjFvQXdNUk9LMnh2MG5UYUZXS0YwOW1xZ1A0czU3SzhyQmx2NHQyVC90?= =?utf-8?B?bmFVcTk3SG5id0Z0SlBwV3JDdm41eE5sWTNpRmhyUGQyUEdjUklZckVHWVN6?= =?utf-8?B?a09lbHNjNUEwYXluSU54Z3c1c2swa0hCRjN2N0xRY3A2dGFqYjhpWjFKUFA5?= =?utf-8?B?L3BFLy9mRWlpaDlISU5FeUhYWFVQZ1JYMFNkMElDR3FtL2wrc1dEZEovMGkw?= =?utf-8?B?MTdLeTFPK1RPbGhlL0dQeFpKdnlMakV1VVNQSXFoUWF6aStCYUwydDFUeFp3?= =?utf-8?B?SnRFeXNGMDMyazJSOC9PWDRwb2FlQlZpaHVsK0ZqT2RKN0FZbXVxY0lOTnVY?= =?utf-8?B?enhvTzN3enFsVDF2TUlrLzF0NzFJT1RYTjdOTHNUM0xNUXppa2Vuc1IrL1hR?= =?utf-8?B?OHVLV2o1a2k5cjRaVDdYZmlwdmRXMy8zdElJQzhuOTJOVjZLdGo5bmhZSE9D?= =?utf-8?B?bGJZRUluTzI0N2hEaEVoRlRvYjEzR0ZpZ2hoSTlOZnduOHZNR2g3Nnd6SDJW?= =?utf-8?B?QTAzdm5Ic1NocVpQaW4zUEgwdU1UU1E0ZlU5Z2R6RGhSZ2N6Mmo0bUJid1d4?= =?utf-8?B?RW9tZjZ6bkxvNGE0cjVNZHVhY1ozVElibEFPUklBV241UUNFZm9pY0puRTlx?= =?utf-8?B?ZEx5ays2endPNkhqbWxXbHR0NTJOdVAxMUlMYkhIUFErbWZ5b0FmcUhnM0Rn?= =?utf-8?B?d0hXcDJWMUxIcWhDZmxWaXhEUFdqazlpM3ZiR25TV2Q3TnBoOVlGbHBGNlc1?= =?utf-8?B?OHQ0ZGw3WHZaWG50dnFTM0lYTGM4aS8xcllOc3B6blZ3Vy9DWGRFNDBxNWdD?= =?utf-8?B?U2psV0FCMjR5MThGRkZSK0xUUXVxNHFUMkpCT1c0UVRyZXJtMytsRkxpMExa?= =?utf-8?B?RHZEblpzNmViRU96ZGM3VnNOejZLNGgzNStsZERCNlM5bUtEcEUrT01VNE9N?= =?utf-8?B?bmFWNGJ6TnB3YXcwWkF5TUJFRzJVNjBKVXJ5dkFPME9zRDJ0UE04Vk9PeXRX?= =?utf-8?B?bVBTbXJhMGpOeDFIbmlSQjVJbjdPbW5PRk5WNEdMdjQwUEVQVmIxRWNUaDk4?= =?utf-8?B?UXhyOG5tS2xhSW5VY2NNa054RllTUW1LZlUxVkRUT2pnOGI3bGl1QU9qZEV4?= =?utf-8?B?elpQbnNzWnZBUHlNUnFYVlBrVEVUdlZ1enA4RVkvaFhKUXRuakhZTkFUQjJE?= =?utf-8?B?bHVZN2NhUnpnallkaWoxcW94VSsrZEMydUxKMWx3eGhaNVJKMkNLRXdta091?= =?utf-8?B?WGlRczlFd3hSWjJMdGI2SzVhNkVJVzVVYkE3ZjlKc3JCWFBqRXQvOFc4ampQ?= =?utf-8?B?YS9DQXVuNDh5bzB2TDBMZjB2SC9wSXJ6Uy9Nb05lU1UvMGRkWnlXYzJwN1Fq?= =?utf-8?B?RjBWUVcxaW12M2pkdUh0aGJtSkVjYngrNGdvalNIaS9jeUhRUEcvUXhhRjJS?= =?utf-8?B?cXVMK3hMU2p2SjFrc1BFKzgzc1VWQ21FR0owUURJUDdRc3h5eXJJamxHTjg1?= =?utf-8?B?b0YvcWdXSzY0cERmT04rRlFLbEVHQ3N3cGsvRWtiNmN6Rk0xV0UyMSsrY1V5?= =?utf-8?B?THpIVER6azlhZUxQeSt1SUdXdXZYMUhYcFNnVGhreS9Ca1RVc09SMkhsRVZD?= =?utf-8?B?ME9GOWhTWmVuR2hCTHdkdlZobjlMUHlUdG9JbzA3L0pRRjZWMjRwU2tkc04y?= =?utf-8?B?djhUVmt1UHpTZHRoMXpMcHJ2K0J0bElMcjJYeUJ0czVVcE8ybk1rY0dzUmFr?= =?utf-8?B?ZGdqaGdHbTVraE9WVGtpK3ZhSldZNVFsTUdYNWVDN1EyVUViQzFhY2N2dEMy?= =?utf-8?B?ejZZcDJSV0c5Y3JQOGl5YzFWazgvWVNDVEEwek1TTFlDcjhGYzQxSXlnT3NC?= =?utf-8?B?d1p4MDNsUDFRb1I5OHhESllweHVTNWZObGlzNzJoY0JNODJIWU9TR0NNRHkz?= =?utf-8?B?cWtwVDNac25tcEVzZFpwc3drU29rdU5FWlE5Yi9qSVcwMEdkZHZ0MlVHS2ND?= =?utf-8?B?Mnk3MXcwbmQzdVBQZmxwMUhLWVAzRHZXcE13UjJCNzlqa3ZldDBYajVObEdw?= =?utf-8?B?Wjh1Y0VXMFpTSkYweVhYSmNHbDJvVVNZMUJrZkowajNUU1VWbTdONWlRYUxH?= =?utf-8?Q?M8xsrQYEyuQBxhwH/X?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5e1cc83f-6a3e-4cb8-4ba1-08de551ae9d8 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8951.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2026 16:18:41.5083 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EVfI1u8ecFz808xi0X38whBtAjG4O1c1rqyL8P0Sx/8vqx93UoTrMFz5jI/i1du7zzLJOLL2BcGstp+/OuefRA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9733 Use guard() to simplify mutex locking. No functional change. Signed-off-by: Frank Li Reviewed-by: Laurent Pinchart --- leave as it without cleanup goto branch because there are two path to update stream_count. And it will be replaced soon at Use new v4l2_subdev_pad_ops.enable_streams(disalbe_stream) replace deprecated s_stream interface. https://lore.kernel.org/imx/20250821-95_cam-v3-18-c9286fbb34b9@nxp.com/ --- drivers/staging/media/imx/imx6-mipi-csi2.c | 54 +++++++++++---------------= ---- 1 file changed, 19 insertions(+), 35 deletions(-) diff --git a/drivers/staging/media/imx/imx6-mipi-csi2.c b/drivers/staging/m= edia/imx/imx6-mipi-csi2.c index e1b4b7fb53131ce9515b9441d8fc420e85d3e993..762f19ffd0858c952027afa8e0f= 36fc87246e1ea 100644 --- a/drivers/staging/media/imx/imx6-mipi-csi2.c +++ b/drivers/staging/media/imx/imx6-mipi-csi2.c @@ -412,21 +412,17 @@ static int csi2_s_stream(struct v4l2_subdev *sd, int = enable) struct csi2_dev *csi2 =3D sd_to_dev(sd); int i, ret =3D 0; =20 - mutex_lock(&csi2->lock); + guard(mutex)(&csi2->lock); =20 - if (!csi2->src_sd) { - ret =3D -EPIPE; - goto out; - } + if (!csi2->src_sd) + return -EPIPE; =20 for (i =3D 0; i < CSI2_NUM_SRC_PADS; i++) { if (csi2->sink_linked[i]) break; } - if (i >=3D CSI2_NUM_SRC_PADS) { - ret =3D -EPIPE; - goto out; - } + if (i >=3D CSI2_NUM_SRC_PADS) + return -EPIPE; =20 /* * enable/disable streaming only if stream_count is @@ -441,14 +437,12 @@ static int csi2_s_stream(struct v4l2_subdev *sd, int = enable) else csi2_stop(csi2); if (ret) - goto out; + return ret; =20 update_count: csi2->stream_count +=3D enable ? 1 : -1; if (csi2->stream_count < 0) csi2->stream_count =3D 0; -out: - mutex_unlock(&csi2->lock); return ret; } =20 @@ -466,32 +460,28 @@ static int csi2_link_setup(struct media_entity *entit= y, =20 remote_sd =3D media_entity_to_v4l2_subdev(remote->entity); =20 - mutex_lock(&csi2->lock); + guard(mutex)(&csi2->lock); =20 if (local->flags & MEDIA_PAD_FL_SOURCE) { if (flags & MEDIA_LNK_FL_ENABLED) { - if (csi2->sink_linked[local->index - 1]) { - ret =3D -EBUSY; - goto out; - } + if (csi2->sink_linked[local->index - 1]) + return -EBUSY; + csi2->sink_linked[local->index - 1] =3D true; } else { csi2->sink_linked[local->index - 1] =3D false; } } else { if (flags & MEDIA_LNK_FL_ENABLED) { - if (csi2->src_sd) { - ret =3D -EBUSY; - goto out; - } + if (csi2->src_sd) + return -EBUSY; + csi2->src_sd =3D remote_sd; } else { csi2->src_sd =3D NULL; } } =20 -out: - mutex_unlock(&csi2->lock); return ret; } =20 @@ -512,14 +502,12 @@ static int csi2_get_fmt(struct v4l2_subdev *sd, struct csi2_dev *csi2 =3D sd_to_dev(sd); struct v4l2_mbus_framefmt *fmt; =20 - mutex_lock(&csi2->lock); + guard(mutex)(&csi2->lock); =20 fmt =3D __csi2_get_fmt(csi2, sd_state, sdformat->pad, sdformat->which); =20 sdformat->format =3D *fmt; =20 - mutex_unlock(&csi2->lock); - return 0; } =20 @@ -529,17 +517,14 @@ static int csi2_set_fmt(struct v4l2_subdev *sd, { struct csi2_dev *csi2 =3D sd_to_dev(sd); struct v4l2_mbus_framefmt *fmt; - int ret =3D 0; =20 if (sdformat->pad >=3D CSI2_NUM_PADS) return -EINVAL; =20 - mutex_lock(&csi2->lock); + guard(mutex)(&csi2->lock); =20 - if (csi2->stream_count > 0) { - ret =3D -EBUSY; - goto out; - } + if (csi2->stream_count > 0) + return -EBUSY; =20 /* Output pads mirror active input pad, no limits on input pads */ if (sdformat->pad !=3D CSI2_SINK_PAD) @@ -548,9 +533,8 @@ static int csi2_set_fmt(struct v4l2_subdev *sd, fmt =3D __csi2_get_fmt(csi2, sd_state, sdformat->pad, sdformat->which); =20 *fmt =3D sdformat->format; -out: - mutex_unlock(&csi2->lock); - return ret; + + return 0; } =20 static int csi2_registered(struct v4l2_subdev *sd) --=20 2.34.1 From nobody Sun Feb 8 13:45:48 2026 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011000.outbound.protection.outlook.com [52.101.65.0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D1A4933B6D4; Fri, 16 Jan 2026 16:19:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.0 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580356; cv=fail; b=Xax5SJJuUMTHqZZHevdCkmYimTxW3quRkqlaAg+Ru4EL+yunwLyZUyoZ6NLl9apPE4c4sX3BYHU26qLrVWhGbxTUONZ8jnVXp1oYNMJeuBIeWa1F7ZQAw++5GiZEuNN9OA2L6z/wK8MSQL+4a26UhKh38G3MyFHC5nJTpBbeZZ4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768580356; c=relaxed/simple; bh=EPx4lzmvmCsye4Te4aDiO3xOTYXdELRvhCxugrYXaNU=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=Jl1SnHH7I6K/o96kDzr1aZ4Y37n0OHhwRoM8SECjHEnt/Tqat8ascloTnfbks5XyQh2ULiEZm4Wd2K8s6dZSMHYchzVeTgUsoq6ECnxYifYbR4InGH3Vj0V2gOOra3xVeHXsNbb1uBdhbtPmM4fJmGb5hs9tU4OZ3kpwHlYNbeg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=HiXbtbAI; arc=fail smtp.client-ip=52.101.65.0 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="HiXbtbAI" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GOGIiOgpj4HD1SSSKixQ9fLrWXPV3TDrV3h9UfvDdqB6bCV0Ve/cEMvIkuSv5Pm0Rpd24tac01zs2r+ZZ9WuWFj14AoQhdn1xpU2GJi4WY/PpZH0t+UZqVlSPswvh0wKS5mM1Hyxn4MQUSatywsuYTHJ81pH6rG4Se25Zi26czghJa5pXktrPe+DHjPoXkIhCBpjDd8Q+XzB/jwNrddoPyPEVLzUjXrjlJUKF8xcBzA90bZE4jlCxVUuE37Ai7wqJncpRqRdFBl6iYKzuR/Jpg3EGFN0dsb/1TNVRTK5yvrxJJT+8chxaT/+Ejgb+IwTRy3vN0/yRCfENYdeVxS9Uw== 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=IdzeSUnntxMRKssrfMEMSBkLMcm7aXbn8sbMuQKG9zE=; b=Lr3tuhEq/s5+J5MlzG2OVcueLig2YldMKPmt9QsVyhbT4uzwYysibW/EtSfg4cuMAQ222Aj4barywhM8+QJPNQMtX2XhgbdopWdXUEtplevUnKqw3qqhekXxrmL7ibICpbUQB+3Yt2zbeUXl2RefT7UiTbEoGBqebuaGdex8ZEH5DWtbDFKO3JUFtVNHvMft8ZUlP/DqD1cjfgoay9nIpIDZe+oB2zNYIit7iq2OciODK68Xt2o1ofm21AuaF57yiItumBrM6Ljl6TQq2vOCPlYEFh5dzwHsvcaBxQDZhaKgWTgc81SfLYoQDP12rl/AnrH7SW2gB3WkAjXBASGzig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IdzeSUnntxMRKssrfMEMSBkLMcm7aXbn8sbMuQKG9zE=; b=HiXbtbAIuidKpwVnU+4K/SIsyEA9S6ubMFGDV3YWR5yu86ANp7/XDlmu6ss7CLQQW0evyaoBF1aISSjCr35sxs/9zbBfrLpjxJsqKH5iQAILM2FX8Awpq90qQUb2N+4C91q1B7nLlP1DZPAH7IkAH5Kh+ordZGLV2mwNzehH2przyYOiSI/qXM1/QGHF2uA6VfhvRyD59ud2lmfe59b7y0mM0x5msIk+1HI6yFqXEdL2WRl305SNKRENgJoMGR6gVHHcV8Pjy6L7XSA9frUz5edb23ZKwpEcXQqPWEg8dMjaTyVB2hE5m3CowVjZNEz39jGNfFaUcix/A37eajHH2g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) by GVXPR04MB9733.eurprd04.prod.outlook.com (2603:10a6:150:119::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.5; Fri, 16 Jan 2026 16:18:44 +0000 Received: from DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196]) by DU2PR04MB8951.eurprd04.prod.outlook.com ([fe80::753c:468d:266:196%4]) with mapi id 15.20.9478.004; Fri, 16 Jan 2026 16:18:44 +0000 From: Frank Li Date: Fri, 16 Jan 2026 11:18:00 -0500 Subject: [PATCH RESEND v2 5/5] media: staging: media: imx6-mipi-csi2: use devm_platform_ioremap_resource() simplify code Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260116-stage-csi2-cleanup-v2-5-a56e9cb25196@nxp.com> References: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> In-Reply-To: <20260116-stage-csi2-cleanup-v2-0-a56e9cb25196@nxp.com> To: Steve Longerbeam , Philipp Zabel , Mauro Carvalho Chehab , Greg Kroah-Hartman , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: imx@lists.linux.dev, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Frank Li , Laurent Pinchart X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1768580309; l=1642; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=EPx4lzmvmCsye4Te4aDiO3xOTYXdELRvhCxugrYXaNU=; b=KPhwIPfwLnrAurDZTVgjGcQTqqmznW+6/bCjWI2/jYK88o3aUMR/cI+jqYlPQ1tBbpn6UW9ev URVrVrMEi3vBmXFaPxDp3akjOu73EAVvuuXZsETIMdnq2hja1W8thdw X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: SA1P222CA0002.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:22c::9) To DU2PR04MB8951.eurprd04.prod.outlook.com (2603:10a6:10:2e2::22) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8951:EE_|GVXPR04MB9733:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b30cc9d-60f9-45b5-9956-08de551aeb5e X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|52116014|366016|7416014|19092799006|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?R0RCZkM5VUFhUmpTZ3JXSmE1TFRkN2l6RnM0ZFNTL0k2UGJSV3NjdTZSTnVQ?= =?utf-8?B?TE9pRlZZeGs2Qzh5dFN6NytPYW9tQXBLNDdGSXRmS0pjS0h4YWhGZWRIZnBU?= =?utf-8?B?SVA1dENtUjlrSVFja2V2MTJBVnowMVFvSVNKU3ZMaU1obDZYZ2psWGFIM2RZ?= =?utf-8?B?Uk1veVVLUzA1V3ZibHVsQW1mSklhVk5vODZ6YUNvcjlYMkM4aGFreS9NdmtY?= =?utf-8?B?bnoyZXAranFQd1kvdmFNS3RBeFdSVWpyTWFUNGs1T3QvYzgydHJiMVdLWjVK?= =?utf-8?B?N1BJcjM4eXlmQ2o1YXhKSnVZTnZYOUJhVmdRU1JMQWZndk16cFJRYzVjSi9i?= =?utf-8?B?K1VmVW1KdFpZYk11VHJjV1lYbFp0VzV0Wm5ha0ozYmVBNkIzUnl0cEZJRldT?= =?utf-8?B?bXg4MXFPZFZoUTJMWXNLSHBmK3ZERm1aRHNlaUR3am9STWZHeXJpTVkwODZU?= =?utf-8?B?RW9vN3ZYNjh4ckFPNTNXVWEyMmN0V3hBZk1iVnNUNlJJRXV1Y2o0YWdMWUxv?= =?utf-8?B?WVNjb0dHS3pkdEVWLzg0VmlFbUZnMTRheXI3Zzl2ZWhXTGdNYmxvaTQwcVgv?= =?utf-8?B?ZDZYOFJwWHRjdHNJSXlRVGhza3RESGZHenhyaW9ObGxRSEJQMW1WTG1FNWFO?= =?utf-8?B?VkpHYWxFT0htMEVPZzhEbFZ2V215T0VTdGpyTUNMaUdtbWFTL2szOG95ZEJm?= =?utf-8?B?cElUVTBuelVyYXNzb3I5b1B3akFvVFJIR3JpdklhL1FGckNGd051M1VJRGVi?= =?utf-8?B?NXMrQW4xTFdEQ2txcXdKbi9PR0tWbm0zVnZnN1ZMeVg5dThIQmEvR01uWHoy?= =?utf-8?B?Mk5LWHdTcStkTUhLUDVUSGhIeEpQcHd2UU0waGpRV0RGQjVIVTVIZFlRVjdJ?= =?utf-8?B?ODZiQUpnV2pLY3pmUnMvd1pZanY1ZldzQnNRL0pjOHFqKzU0UlRpSHowRzll?= =?utf-8?B?NDBOcTBTNjJuQmNDSkxIbjVGeUd0T0VSRVRjdTJIblJlSG9IczMyU0l1Vmty?= =?utf-8?B?cHZOMmpKR2xlamF6VUNyQXV0bHBpNWhxQVBYVGVpZGd6eGZEdjd4U0JzOXlr?= =?utf-8?B?d01ROWJlU3dUejlJZWFHMDQ1K1VzUGtmeEhuRWVZeUdVazF6eGtkTnhGS1la?= =?utf-8?B?Z2lXc2JaWlhMclhGQ2N6VVhvc0c1NVBDMFI1Wmh4TDdWZ0hmdkJnVnpIUUZr?= =?utf-8?B?M1loRHlpbEZFVFlDdk50Y0xrdmxaRXlRZWFUWHVPMTROeFVyMTU0bU5LZW9J?= =?utf-8?B?MVBGb1ZsYnh0aEF0ZXVsNzJYUHR4a0taODJ0QVduemxkNk1QeEZkeXI0bExs?= =?utf-8?B?Y0NkMjJ4ck01VC9jdk9UdlpSL1RhWXpadVZWaTRrOS9xTHo4NGRPOVhTZm1F?= =?utf-8?B?LzNwNm9nb3Z3M3I1c3FjdkIzOUk4NVBTc0NiQVUzSmtKOWQ3TTQ2N2FvRlI2?= =?utf-8?B?dTFpbXJoWG9vUG1McVpyOWpWVTJ2M3U4b2FTRVkzVDgyM2FFckFLcVozTDJo?= =?utf-8?B?aktuQmlralV2Ylc4Nm9iNXBUc2JvWE94Q1Fhb2VtTVUycm9jL0hOT3dLQVli?= =?utf-8?B?MTBNV1VJd2VKQVNsaGlLTDhqTERyK1RXbC96ZWJBRFZMamhFZS9BZ0lVVS9t?= =?utf-8?B?SWpvQm1FV29kaXc4VEczLzlDZHdhbVJFZ2ZVcEFIRE1Cb2ZPMkp3VEE0SU9x?= =?utf-8?B?bWNDQmgxZ1l1aUU2Vm5JSStuaTJEWW5NcnlkZ0lRcW4yYjJvR1JWRjJzclBU?= =?utf-8?B?UW9RY2hQMDloOTBNbDNWZmZ1bGJHZ01zeHRNRU4vZktoQ0ZIWjJabmNxYlZN?= =?utf-8?B?YmxWcXZtdFIxeDZZdng1M2hwVTB1dERXcXZhVStWODhXWEJ0TmtJWUJ2Zy9W?= =?utf-8?B?b25WRENWNmQxTUpUaFdiakdXY0gyb3BZUGNEcVpacVNVazdwdmxaVEI4dEhp?= =?utf-8?B?eW9vNnlydlRXV0diNTNZVEFhR0l2V1drWEFPdGJ1a0NlL3RjcndFajNrNnpu?= =?utf-8?B?NUV5VXFsaG4zakhuNGZLRnIvRjU4VGdYVjZlTCtBdFEwalpwS1VUYzdNVGN5?= =?utf-8?B?Nk4vSWUrK3pVSDdDTHlXSnc0YjNETFdSbXQ1YThEdk1KR3dESnV6TDdrZWov?= =?utf-8?B?eXgxbDBVZGlyNkNMeTh4c1RlS1l1TEcxcW9JN2k0R1ltY1hkSDJqZktEVHY1?= =?utf-8?Q?crJMiA6aQC8zv5o+LrVjn8c=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8951.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(52116014)(366016)(7416014)(19092799006)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RlVOZ05EVmFnQjNicFpXUnpVNkVRS1dTZDZxTXNMUHFFQlRkektDNzVkeUJY?= =?utf-8?B?YWhRNHVUbTJkMFJSemJUcHQvYjJDM2xlUEVBQzFGMXJrR2VubzBwWXNOanNj?= =?utf-8?B?eHROWGp5VlR5SGdnQlNmV3ZmbG80a1haRVdVL3F4WFl0VUduMGc4Uks0VXg3?= =?utf-8?B?RFZwcW1hTnk3ZjZHS0FZdGo1ZUFsa1lEcnVIelNsSmQwRm9uMjU3ZkpLREZC?= =?utf-8?B?eGppWStIUG1YeDYxR29nYzluRXJaNTVsd0g3cTdSaFJIdE05M3ZOVnZHbFRm?= =?utf-8?B?OXlWc0ZCd0haeFlqV0ljYVEyd2FTM1RGSCtqcWV3WU1JclhIanZFZjc1Z3pC?= =?utf-8?B?T084a053MVZGZHFPSnJXR240bm1WRTNSelY1QjRSOFhoV1kxaGoxMHNYb2s1?= =?utf-8?B?REI4Ly9LRzZtanFCQSs4UjZvUHFISFYzTmwzM21zMGxtZkZsSjVyQTh4aHIw?= =?utf-8?B?SENWTVNlZ2EweiswRmFPS084NG0zOHhHaFVreGE1UFVGWXpzeDRiZGhtYnR6?= =?utf-8?B?eGNDZ0krUVY0bnczTk0rU25qTEZXYjhBYThaR0dRckU2aTFZN2lsUWVQdzdO?= =?utf-8?B?TEJtSlhhdU1kWG5qU2JaMkVEcXNkUStYN2N6dDFUaW9oT0s5RXBYdmtoUVZj?= =?utf-8?B?WWxiVzBIUUorWVczcll2SEVLb2tubm9yTStFUzVZeHJKSVFFQlk2ekttMDNQ?= =?utf-8?B?aStZcWhDREJQcnhXS01xQWJndjk4UFNUZzYxWG9xL2hsL0hJd05pNWFFSnZI?= =?utf-8?B?TFIzQnpxQ2RUOWI1VlNqODVJcjVpdXVxdk85SzR4Mi9YbGFzU2tZWlVPMmxW?= =?utf-8?B?SDZlbG5qcVdrZjlzcDhLTG9HWmVWZnlRRUVrZDU0NmUvc1k2QVdVUzVDbGUz?= =?utf-8?B?Wkx5a2lEdjg4aUxQV09GaklQV3ZoUzdWQ0I5NWdHeHhqTktrcnk4ckR4aXJr?= =?utf-8?B?VjFxU3l1QURsMnJMZG5BTlk1YndiU3lQU0s3TndGaFZlUnIya0oyczdjVzdh?= =?utf-8?B?eUxNZkt2MHdCQ1dPeTk4NitRaTlsVjNCOFkvZVo5L3ZnNlVjMmlsbE1DNXNq?= =?utf-8?B?YUZkbXJnYmNtcVVINUtiRjVvZzVmRGRuUkZQSnFjWDJZd2ZqNmNnQmhPTmFu?= =?utf-8?B?RWYvMFF5ODE1WXNWdjkzWEZpK3RBdmViUlhvQVJCQnBsRkMzM29GekpRc3E5?= =?utf-8?B?RlZyWEZPeXBtNVN5UWRXbGIvekE5OURJcFVtZWdWUDZ6elUwN292amdsNnQ4?= =?utf-8?B?WnJqYVhCY29uQ3U5ZFhPbkkrYllsZkdMdGtnSE1oRzlweCtUUkh5elJ3RVZh?= =?utf-8?B?KzRWZTREd1NOdzRhd25qd0d5UWl0SE9FQUVIcFdCUzhlbkdGL21OUVF3dzgr?= =?utf-8?B?azk5QXdRTHpMU0ljN1hjRGFNdG5odWI3VU5UNzZaVzl2b1hpVzRhdHY0MlV1?= =?utf-8?B?YzZjNXdaNHNlaS9mOGM1UXQyVlRWSlp0RGYzQ0JPZFhoOTZSM3dVcVpDVmhW?= =?utf-8?B?YTJWSzJ6RUFnSmFaTnNKdHVmdSthYnFTRFZjL3NCT1VSbkNEL2EwaVRtMjgr?= =?utf-8?B?Z2R3S0VpNXBjNXhCSFV0MDlkbWk1OUdBMk5BOEppNVhZVThFNXNvQy9CUFVF?= =?utf-8?B?TUpjb2lUTWRQcmZubU1xY2FBaUtTU0licmwxOUd5TktucE5sRjdkeFgzd0ll?= =?utf-8?B?UnNpZkZlSjNHeXViR2szbEtDQ28rdXcxR0tQMVNlVTVReWFBaUpIdDlqY3U2?= =?utf-8?B?bXp0MUg1SURqb1czTUI4VjJZamNDUmhjWHMzNXRTY2NZYW84dHZPdUpnUVBL?= =?utf-8?B?aEtrRUdZbXZ1Z1UxQ3BvSkJrT3BjdW9vMDhhVVFpcHZUQWR0eXZNeHVEZnhJ?= =?utf-8?B?ck4yWlp3aExvYmRGYXpkWGRNb0dQOWk4YkN0STQ4MGY0cmwvYVdkWkV4S0Za?= =?utf-8?B?UVRsUjJJSG51c3VoYS91YzUySEJ1dnZ4b2liRjg5bmNEN2YrMXM2MEVFQXhu?= =?utf-8?B?SE9iTXNnSGRhQTRMK2VOU3RBUkxDUmRReDc3b2xmMjduU3hPWkI0S2lZUlVJ?= =?utf-8?B?NG5CZkUyNjJvZGV4T2F6Ni94d2MvQ0Y3K3g1bzNoZWh2QkVMYXdJZlcwR3Qz?= =?utf-8?B?aFA0UFArUktTQlkyUDRveWFNdkREMmlKcVBqZ1hKZTFieklKbEdaY1gvUWRu?= =?utf-8?B?NGVaYzhFdGJxeXN5ZXYvYS9WckJ6eE04WGl5WVNjd1BKcnF4UXJLVklBcW1p?= =?utf-8?B?aEZYQXk0ZnhoRkpXUStLUHgxN1lhV2dtRFV0ZkNjNFNEcGorQkt4em9ZOFZ3?= =?utf-8?Q?SZl7U6Hxog2xpV8evg?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3b30cc9d-60f9-45b5-9956-08de551aeb5e X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8951.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2026 16:18:44.1420 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 5uuzAJWYkP5Kl0PfEz4k82Y35qz++T5isg9hXdRm7Ed2SdYTCymDAEzv+ylNiKBe5OMnL6yhvd1utYupMFTkZA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9733 Use devm_platform_ioremap_resource() simplify code. No functional change. Reviewed-by: Laurent Pinchart Reviewed-by: Philipp Zabel Signed-off-by: Frank Li --- change in v4 (reset verson v2 because split to small serise) - add Laurent Pinchart's review tags - return PTR_ERR(csi2->base) directly. --- drivers/staging/media/imx/imx6-mipi-csi2.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/drivers/staging/media/imx/imx6-mipi-csi2.c b/drivers/staging/m= edia/imx/imx6-mipi-csi2.c index 762f19ffd0858c952027afa8e0f36fc87246e1ea..3d8995dcc9132c1b92c36a65e55= 476e3ca2703ac 100644 --- a/drivers/staging/media/imx/imx6-mipi-csi2.c +++ b/drivers/staging/media/imx/imx6-mipi-csi2.c @@ -709,7 +709,6 @@ static int csi2_async_register(struct csi2_dev *csi2) static int csi2_probe(struct platform_device *pdev) { struct csi2_dev *csi2; - struct resource *res; int i, ret; =20 csi2 =3D devm_kzalloc(&pdev->dev, sizeof(*csi2), GFP_KERNEL); @@ -739,15 +738,9 @@ static int csi2_probe(struct platform_device *pdev) if (ret) return ret; =20 - res =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); - if (!res) { - v4l2_err(&csi2->sd, "failed to get platform resources\n"); - return -ENODEV; - } - - csi2->base =3D devm_ioremap(&pdev->dev, res->start, PAGE_SIZE); - if (!csi2->base) - return -ENOMEM; + csi2->base =3D devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(csi2->base)) + return PTR_ERR(csi2->base); =20 ret =3D devm_mutex_init(&pdev->dev, &csi2->lock); if (ret) --=20 2.34.1