From nobody Sun Feb 8 22:51:05 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022140.outbound.protection.outlook.com [52.101.66.140]) (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 A4670244665; Fri, 30 Jan 2026 09:17:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.140 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764640; cv=fail; b=ZNzpYArY2jAT32DGjh5MQyo3kQsZTquf5MH9dTM7MIlcGHQ3wJ7vP7h6vk1Uno74FwCxcOyO1WobU4IlccX9/I8bqf5u1mZsKHMJEKdOhizwDKk5xUTN4vVfyvhHFIVAYzcKl79uD7uQBGsSYwacdMVZUos1bNMl4nPWltZxPf8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764640; c=relaxed/simple; bh=SPkN7H3a9ZHTAE0q7IcH9nWpwP97HAx65XLcHquk/CM=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=gQrmO/tcHqfduKstgjviL4O0FN20pHlwMV1vngooBoJUK0g5d21HOGPmozcShxjQ04qppcABm2KDZzAxNn3MLQhBcqbK6uHznUL78DEU+XyFks044kxi6uTaaTsqO1n+YmPiDAupwoCvaU5dhh3esIy4PWJ8bC26XoGf+e3EOpQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com; spf=pass smtp.mailfrom=vaisala.com; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b=MPPTVkTv; arc=fail smtp.client-ip=52.101.66.140 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=vaisala.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b="MPPTVkTv" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=u5cTI9vNRLKuTQ37piya81Bl8wYdaL63L+CO1r0xBmdTPhQVkAzC4yiWuIlf1PePxhul1EFxDSbW1iHoeS9xz8pPqsewOWrTRunQQKqcXN+yoP6ud4ukQBx9OQ6ACsdkzxaJisiKqijF4zm+NW4QvYzLZxv+3fu+FgEs3yGHKGGVQzbZOgSOL/H0Fqf7nJHuhgMAaVyhez2lozJhZdNpWYHE+g3LuqzbOzKrEOBSQp67phPM7ipIFBWBXJhYNhRdhEEW/IPRjRi/C2howtnKB8EI2whWfcM425Ja1Wo8UFmimZeNyvS3lxjJkZHRUxrMybJbn2g7cyVjP/TIHU590A== 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=19D6br8c+RE7F3IfLWPhBuYiYO9nEAysr93AFg34610=; b=hg7kmJMrVMxId/Ytq5Wvtm2yErWi6mV3CoVec1prVcHQs70GowUmwlfXrW2avQ78ZH1kYfkHffH+a058LmBeq0Mb/8uQHviuvQT5XE65ka17h3m5lJVpRwNySMmdHK6WaV7JEGccj2Ar2NP2JhzapAJziEGPjasX8gBHbxfLZUBOgVCr5FoApN/Zv0KD9oDI3kYBQziWBlR7F59GxMSwkvLioX+z4ljAl5aOfCLagrln03we9fxtDXvdBPytptmGlmOv1Y5TN2M3NoXwXU0MIKGC6EzRfs9g1FQPYKkhWOOZ6zUfITyUBUzB/RAPoG2f/1uiCpgs7vWCAQcmRxkvXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vaisala.com; dmarc=pass action=none header.from=vaisala.com; dkim=pass header.d=vaisala.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vaisala.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=19D6br8c+RE7F3IfLWPhBuYiYO9nEAysr93AFg34610=; b=MPPTVkTvlMzH/Mrv5BpWMf6SKPcBwyViJnFiL5NniYUV/Orbvax0XLEUYbRsDq3NfadJOuMTj6NTxrnRO8ljGSanVvvH3tYN3i/frSu10/OVzR4BwEb98/tF29SsnPOVLVZ44d0NxsOOUfII06hyVh57cEJSi+vp+Tfj94c1Lx284yYkBFYw/sfm7xuah2BKcut43VvAUiYiD8rQv7MGuKPk4nmZnZT7Mw2vjHxirM+8NOIwKGkMeo74ULvlyGOi1wZn9OhrwhC7JYJEsByZACbstlgNTpdsOJKfmEMrjM3prMyravAkKmjDwIzUhYJ7EqrTZRE4ZMW8X0bdDNIm1w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=vaisala.com; Received: from AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) by AM8PR06MB7361.eurprd06.prod.outlook.com (2603:10a6:20b:367::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.11; Fri, 30 Jan 2026 09:17:10 +0000 Received: from AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049]) by AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049%6]) with mapi id 15.20.9564.010; Fri, 30 Jan 2026 09:17:10 +0000 From: Tomas Melin Date: Fri, 30 Jan 2026 09:16:59 +0000 Subject: [PATCH v5 1/4] iio: industrialio-backend: support backend capabilities Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260130-b4-ad9467-optional-backend-v5-1-7da803ba7326@vaisala.com> References: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> In-Reply-To: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> To: Michael Hennerich , Nuno Sa , Lars-Peter Clausen , Jonathan Cameron , David Lechner , Andy Shevchenko , Olivier Moysan Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Tomas Melin X-Mailer: b4 0.15-dev-91501 X-Developer-Signature: v=1; a=ed25519-sha256; t=1769764629; l=4230; i=tomas.melin@vaisala.com; s=20251125; h=from:subject:message-id; bh=SPkN7H3a9ZHTAE0q7IcH9nWpwP97HAx65XLcHquk/CM=; b=XB8OpUkc5YEwhUjSXaeelTDslkBtM40Tth/opy77DyUn4nCJyZ7izOof6Y3hl923xUQi5Dl7Y KltDfIVLZmWCePt/UMAHQ3E+U3Fjo7YEdmBS3XglnZGJ/osdZebWkxW X-Developer-Key: i=tomas.melin@vaisala.com; a=ed25519; pk=6lMiecjZ+OeyZuxYsDm/ADy9D1JKvYrKdsYv58PMepU= X-ClientProxiedBy: GV3PEPF000167F6.SWEP280.PROD.OUTLOOK.COM (2603:10a6:158:401::667) To AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) 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: AMBPR06MB10365:EE_|AM8PR06MB7361:EE_ X-MS-Office365-Filtering-Correlation-Id: d99a4993-34ee-423c-1d97-08de5fe058fd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?cVc2emxjU01oNkpqMUNCS01mbkRaZ0JXQmdKV1JnUnpuNUlrYU0yZEN6MHZj?= =?utf-8?B?TG1MejdSeEdRemdacTNrZTVSeDFSOXJOVzlHaGNIODk5SCtFb212Qy93Z2g3?= =?utf-8?B?MFM4bEV0OTdqM01CUzZVVUk4UHlKN0tCU0xOL05iS1g3dXpXTGgyUE14UFJt?= =?utf-8?B?TFZqdUNrNEJKVXdMd2l2RHRmVGJEOXVYcU9TUFlOK1dDbnVSTDJPbGJTYTl2?= =?utf-8?B?YmJiWDhtbkRFOTNwc2VMSkloVmxOeHFhb0ZXRFBsSDYvZWszYjhBSW1JL0FC?= =?utf-8?B?anFlV21sMGw1cFRoZkpibDhEVVJsMUoxcWpqa05rVTJoNHRFNTZmM2ViRzd2?= =?utf-8?B?TzM0Wm5FYzNyUk9uTWUvb2F3UHM2dDU0ek5pTVBvQ3lQajN0c0R5Qzk1MFdL?= =?utf-8?B?SDBnN0IwV2tOMlNjbjRnRUpQaHVjZ01JUUhZMUUxbkFyTks0ZXJ3ZzRaUzNJ?= =?utf-8?B?YnZpM1RjeXRCVmpTYmlxK2V3UkhhanJQNVRnMUdMcUZCOERmSVN6anVhZUp5?= =?utf-8?B?YmdiU3RFSXN3dFpXbWZZdmQyOHlJbE93WVpmd0IrTG9IZURDcnBRR0tRL2ph?= =?utf-8?B?TVdmdTQ5eXUvQzB4c09lQkthWEM3RzNyK2RQeFNJdzRiSDZucituWTZtaDJF?= =?utf-8?B?ZmJtSVhwV29SY1F0MUpZUXducFpqV3dsYUZyODdCR0ZWZ2NSVXFSQjd3RndV?= =?utf-8?B?RnJZZkZ2K3BPVEptQXBHL0xXK3pWTlhmYkpkY3N3TXgrZWtQMDlVZUVuQ3pE?= =?utf-8?B?cW1jeHZEeENEUStlVGdlNklDMFFhaWhCeXZEdW9USDJ6N0hYS0JaYi9HRnVY?= =?utf-8?B?R0VJcVFmUmVYUTRwNHpUb1lWYkxKRTIzUnB4MUtkUDRTdmxYcFVlUVRKQXlp?= =?utf-8?B?aXJGbXoxeEI3TUtuRU12QXhlU3MwY1JMRnRBa3VuVnhQbzFSeEFmcktINHlU?= =?utf-8?B?a245eTc1UnE4RDlKV2FJRVkra251VXhTMWRqeWJTMWdURisvUTZ1SC9CL1Rm?= =?utf-8?B?eEIxeVFYcUp2dDhvMitOSWFuMkQzRGNrOXAxMUM0VVFLVmFSNEdicnBuN05U?= =?utf-8?B?WlRUdlJCZUVvbVIraXpFVUlWYWpLM0h5RDdtb1RnUVJYclhkMnhRT1hkUG1x?= =?utf-8?B?NjBRamdnMmhGbFZISDFZYzNUTXJQcWtlNTl3UjhRRm5IVHRYdytlM0J3dlBu?= =?utf-8?B?cXhXSlBTMVBjelRPeXhORnhqdkZOeEwwRUVjR25aeFR5RmNOOUdVUnB2QThF?= =?utf-8?B?L0h3OTMzbjBxdE9wQzMzRGlxYlN2Z1E4dkdsRlE4MnZwQisxS1RueWlSdk5u?= =?utf-8?B?czhnNjFmclkxb21HclBoNnFBKzhHVzM0ajRtM0FOVG81NHljQlhVUU1UT25n?= =?utf-8?B?dzMrOUgyMXNyS3JtTk0ydWEzekVkcktrN29xblcwelB2NUhpTDVaYXJzMnpa?= =?utf-8?B?RnlpWTNidmRwcXNtQ0Ywc1V2MVdqN2R2UDJWL3YyY01iSUpMUWVMbVdQZFNP?= =?utf-8?B?TUp5NTRsZVNEQU5uSktCeS9PWldFK2pUSkpINUUzcDJmVElYY3ZYQmo2RTdY?= =?utf-8?B?VkZVR21GakNtUEVONDhFcHJTM3FPcFZsTlVSQVpNekZmbmwyVUJIaWdzM3ZP?= =?utf-8?B?dTd1Qlc0WFV3YzZwWDN2VFpkV3RZbTBaMTZwNGZkZ3Y5MmZqcGpmZ3ZrOXdK?= =?utf-8?B?NEFYaDRES2tSamFONlVubGEwc1ZDK0tkQUhCdFlLQ1h6WCt0bDNyRUFSdjFm?= =?utf-8?B?bUFqWnNVRGQyMnRWVzZibFdvVXQ3YUo2Y2tlaWZYSE1ETzJXUEdHQzR4Q20w?= =?utf-8?B?MmlEZGNPQmYxUFNpNTFtTkF5aStlamwvdGtrY2lQcGFuSjBYL09XdnRNclZn?= =?utf-8?B?SFVTK2NzajkzRUw3MUF6S2NqRjdldk1YMW5IWEl2OVBLdkdMcDhqd21vRkVk?= =?utf-8?B?Ym50VTB6V29QcGR5bXJOTWxEL3JBRFBOVVlZaFZzdytKeE0wWDI5SVdLYUc2?= =?utf-8?B?ZG5wUFlmSExPZG80b3lNUnVpMXlwQW5aU3NyZmtqcDVscW05Sk9IVUhUTExr?= =?utf-8?B?UzJSM3pxTnRtY240WHpnVG1wdlhoWURjczQ5TmcyUW0rM3N0VlpTRCsyQVB2?= =?utf-8?Q?/VqQ=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AMBPR06MB10365.eurprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VmNrZkxESmlUV2RMcTFqSDhIVGp3TWtheUJuN1k5bGI2K2h4NmtIY1FJNTFG?= =?utf-8?B?L2hDMmd3RDlHMXdkMEhPWFVSanhOdS94VE83QStGSlhNTDBDaDZ4YVA3WVFZ?= =?utf-8?B?NHNlSFZESXVuTllwTEtaaXRRcmVXbjRVb3IxUHhoL3AyV2JncVFPTFVWTENw?= =?utf-8?B?WWJnSjk3VTY2S0E4K05EcFpDaW8zemNQL1l1emphdjlFMjEwYThQUUF6L0hw?= =?utf-8?B?SUUvUFlwcGpraUVMQlVXT3dHdjN5dy9RUHBNc0lMZGF0MHRTSHVyRVMrZjJS?= =?utf-8?B?WDdmM05LZDg3aHRCVWdzSWVaaFA4VjNUZWtVVHB1ajU4N2J3NkhaN3pJYmQx?= =?utf-8?B?eG9JUDBlZXdMSC85MkQrZm13SnM2UW92S0FSeWNPc0I0Z2R2eDhXd3Z1cjFE?= =?utf-8?B?MUxJYmJndFJad0dtQVBDTWlQNXhQTGYzYUJMOURkMTZJM3U5VStBdmE2clVw?= =?utf-8?B?bnBKemlLRkJxNys3OWJNZFNGZytES3pHaVJsS0N3RUpTekU5T3hLT2psdWo0?= =?utf-8?B?aW03TlhuVGh5SldrSDRsci9OYUZSTFlrYmdETU9BMFc2UTlIc2g3K3FIWU1G?= =?utf-8?B?aHY3RUMrWFQ1MTJVM292OXlKWGcyUy9uQmpHMmduZndVcll0em9YdXlzS29I?= =?utf-8?B?djdFUlVvVURjMS9GaHZMRmlNemlTR3BuYjhoZE42djBXRnovYnFtTk0yQk9P?= =?utf-8?B?dzU3dTBpOGpxME43dVhNL1pVK1RUSXI5SE1XNCttZ0RGY0xxRnBYZ21mc01M?= =?utf-8?B?M2RZOXpnQTB6dlRubFNEMmJQREZMaGgvaUlVU05hcXgxTGtJVzN2aDZlWEd0?= =?utf-8?B?bGpxOGdDLytuSlVtOFB3TzM4ZGdWdjJXcFJ3Q25lOGdlRUlTRDlHelZ5RVdr?= =?utf-8?B?V3pPQ0RHdk8zdklPeXhicmducSswWTA3MUdkZVE2cFdRRkxyMitPL1VSM0tG?= =?utf-8?B?a1BRNlBUQlRIZmhiQTdvNVNUT1Z6SFYzc0Ird095NDdSZHRIdCt0RlliMTIw?= =?utf-8?B?aDdYcDBqT3lKcVpLMHl2MGJYakxLY3J5M0l3NlV6ZVlnOVVtYmFZNXZjUjZQ?= =?utf-8?B?Mk1mTkpCRys3TVV1WDQzR2FrVmVER004Q2hHc0ZWWlBsdlRoaDkzdGQ2bWZZ?= =?utf-8?B?WWgraFFuSTZqYlVNaHpLMXNKdzlqTW55MHBoVHFwVGpCbkFlZy9xNTdsL1ZR?= =?utf-8?B?aW1xSmhuTUE0RWFkR1BrUGpiUCtONEZXYTlrLzg2T1I1SU4rZ0ZQbVl5WWxM?= =?utf-8?B?VjhWamptbUZVTWxiakMxQXd6dWxqblFZT0FUZEUzeHpFUnJqa2pCM25IOFBP?= =?utf-8?B?Rk04ZjNidTVLR0xiNTY2RWVRY2lKbXkxUVVJeGFLVjgwMnBjaThnakEyRE1H?= =?utf-8?B?ZnUyOEZIRHJwZGw1NHA2U01YV0w5Z2F3UzVsQWYxaTNkN3JTaDFXSmJYSTZD?= =?utf-8?B?aDVIU1lKK1VpVkt2ejkrTW9QUENkOVo3ZWhQVC83SmhWaGJOUktra1I3Njkx?= =?utf-8?B?TW1jWGttd2w1WDJ6Qko3RFZqYmZJM3J6bk9kTkVwdTNwMUgwSWpRNVpkNUp6?= =?utf-8?B?SjliVFVYRTJVSDlqSFcwN3VQTFVvTnlpUUdwKzM5bFJVMlA2SmxkTU5UazZO?= =?utf-8?B?ZlhhL3MrYlZqdFZITS9qR3JYSmx0amI4QkpMdmh4N094am1sQ20vekYvdHdW?= =?utf-8?B?RUpFczlFdnEwWlhUeXR4b0FVdEFGbExVVFZEMUxqZ1ZUNTB1aHBGZzg3cE9y?= =?utf-8?B?NDJ5ckluSFNCdkUxbjA4Vit2OG8rMFArUFZyeVdnYkx2OTNJaVpTLzFhOS9s?= =?utf-8?B?a2JjL0lXU2dUTEtsYWhLRTNPMitXOXY0dTYycHNPZmU2c2xYV2hSUFBrTkk4?= =?utf-8?B?NHZsTWorSHZjc2k3d2pUc2QvTVYyYTF3cFhRa0o1UlpUMEJ6bnpQMlF1TXJQ?= =?utf-8?B?dSsrYnVvSDZpNzgvYTRKU04wQ0d1QmJpdTVSSUZOM3ZORHFSL1VFc2dleVhj?= =?utf-8?B?SklpVnFSL0NCbFB0SnE5OGlGSnl4YWVDM0pzLzZXc3RvL2UyZzhscjRkY2FK?= =?utf-8?B?ZnovelB4UUJpQzJyZWVtd0N2cDhNeGt6VitBYThXZnk1bGVWYTRtNUp2Tlpl?= =?utf-8?B?NGl5VDJ4MG5YUHNHOXU1VVNqNHNkS3ZsUGsrNEd0Smd1WTFlNFZTTXNSYmpS?= =?utf-8?B?czFrb3ZtQmE5V0NmdGpUS2FNY3piSFJvREZrckg2bnZoZUhZajdqS1docmp2?= =?utf-8?B?VzZsNjFNZFdIdjRNRVpTYVdpY1NhT0hLWGlzbFhOWnNZYTlKMnBGbHV5TE9S?= =?utf-8?B?bXRkU1FMK0xrQm9WR3p0RDdLT2t2NExkbW5QQ2ZkTGdSeU96cXhZR0dicWt0?= =?utf-8?Q?Kd7LtARh65XiC0JY=3D?= X-OriginatorOrg: vaisala.com X-MS-Exchange-CrossTenant-Network-Message-Id: d99a4993-34ee-423c-1d97-08de5fe058fd X-MS-Exchange-CrossTenant-AuthSource: AMBPR06MB10365.eurprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jan 2026 09:17:10.4382 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 6d7393e0-41f5-4c2e-9b12-4c2be5da5c57 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 57QHnWUn3UvSqnuZl5SLhYY6Axt8tTrGpfnibklslgiqDLfTDcKHmK9xyFxxb3m8jYgRmqz/g2UX6FFdVSDBWw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR06MB7361 Not all backends support the full set of capabilities provided by the industrialio-backend framework. Capability bits can be used in frontends and backends for checking for a certain feature set, or if using related functions can be expected to fail. Capability bits should be set by a compatible backend and provided when registering the backend. Signed-off-by: Tomas Melin --- drivers/iio/industrialio-backend.c | 16 ++++++++++++++++ include/linux/iio/backend.h | 25 +++++++++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/drivers/iio/industrialio-backend.c b/drivers/iio/industrialio-= backend.c index 447b694d6d5f..1afd00763da9 100644 --- a/drivers/iio/industrialio-backend.c +++ b/drivers/iio/industrialio-backend.c @@ -56,6 +56,7 @@ struct iio_backend { void *priv; const char *name; unsigned int cached_reg_addr; + u32 caps; /* * This index is relative to the frontend. Meaning that for * frontends with multiple backends, this will be the index of this @@ -774,6 +775,20 @@ int iio_backend_extend_chan_spec(struct iio_backend *b= ack, } EXPORT_SYMBOL_NS_GPL(iio_backend_extend_chan_spec, "IIO_BACKEND"); =20 +/** + * iio_backend_has_caps - Check if backend has specific capabilities + * @back: Backend device + * @caps: Capabilities to check + * + * RETURNS: + * True if backend has all the requested capabilities, false otherwise. + */ +bool iio_backend_has_caps(struct iio_backend *back, u32 caps) +{ + return (back->caps & caps) =3D=3D caps; +} +EXPORT_SYMBOL_NS_GPL(iio_backend_has_caps, "IIO_BACKEND"); + static void iio_backend_release(void *arg) { struct iio_backend *back =3D arg; @@ -1114,6 +1129,7 @@ int devm_iio_backend_register(struct device *dev, =20 back->ops =3D info->ops; back->name =3D info->name; + back->caps =3D info->caps; back->owner =3D dev->driver->owner; back->dev =3D dev; back->priv =3D priv; diff --git a/include/linux/iio/backend.h b/include/linux/iio/backend.h index 7f815f3fed6a..ac80abb71bbc 100644 --- a/include/linux/iio/backend.h +++ b/include/linux/iio/backend.h @@ -84,6 +84,28 @@ enum iio_backend_filter_type { IIO_BACKEND_FILTER_TYPE_MAX }; =20 +/** + * enum iio_backend_capabilities - Backend capabilities + * Backend capabilities can be used by frontends to check if a given + * functionality is supported by the backend. This is useful for frontend + * devices which are expected to work with alternative backend + * implementations. Capabilities are loosely coupled with operations, + * meaning that a capability requires certain operations to be implemented + * by the backend. A capability might be mapped to a single operation or + * multiple operations. + * + * @IIO_BACKEND_CAP_CALIBRATION: Backend supports digital interface + * calibration. Calibration procedure is device specific. + * @IIO_BACKEND_CAP_BUFFERING: Backend supports buffering. + * @IIO_BACKEND_CAP_ALWAYS_ON: Backend does not need to be explicitly + * enabled/disabled. It is always on. + */ +enum iio_backend_capabilities { + IIO_BACKEND_CAP_CALIBRATION =3D BIT(0), + IIO_BACKEND_CAP_BUFFERING =3D BIT(1), + IIO_BACKEND_CAP_ALWAYS_ON =3D BIT(2), +}; + /** * struct iio_backend_ops - operations structure for an iio_backend * @enable: Enable backend. @@ -179,10 +201,12 @@ struct iio_backend_ops { * struct iio_backend_info - info structure for an iio_backend * @name: Backend name. * @ops: Backend operations. + * @caps: Backend capabilities. @see iio_backend_capabilities */ struct iio_backend_info { const char *name; const struct iio_backend_ops *ops; + u32 caps; }; =20 int iio_backend_chan_enable(struct iio_backend *back, unsigned int chan); @@ -235,6 +259,7 @@ int iio_backend_read_raw(struct iio_backend *back, long mask); int iio_backend_extend_chan_spec(struct iio_backend *back, struct iio_chan_spec *chan); +bool iio_backend_has_caps(struct iio_backend *back, u32 caps); void *iio_backend_get_priv(const struct iio_backend *conv); struct iio_backend *devm_iio_backend_get(struct device *dev, const char *n= ame); struct iio_backend *devm_iio_backend_fwnode_get(struct device *dev, --=20 2.47.3 From nobody Sun Feb 8 22:51:05 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022140.outbound.protection.outlook.com [52.101.66.140]) (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 451E6329C74; Fri, 30 Jan 2026 09:17:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.140 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764649; cv=fail; b=olk7nuCo0dbFBoAAM0x44nTwFSDiak+Gq9yoC5mrwanQlCJ00Q4CBv3n7/uRaPX2Q81cSCkiPki89Xffe8OdE+rUKWIyq6tTgsWTGVaJ2GYvUn7EMLryXQpVTdTONbiZIfVx5ErfCMlOV1YSkoMDzA80D9P73BJ03M5UfrqGBq8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764649; c=relaxed/simple; bh=qcsgnhM9x/2IeyYKal09yn9X4/vVSN1Ui/T+M0AFryc=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=CnXUF1IycF0ule3ono5C2Yss4Ma4Z4/x8qC3XRBtuW+5bITXSB2Okm2j9S5u/HArUwqqySN3DlsD3dTz3UTIm9Z4xEDMQKYSKZwWhHTZh+Z8PQZGXG0gRtNSdF0hhKs/F1SCJelj2n3edvt6HKLllwIzg6RXe4bdTDOnK90EVQ0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com; spf=pass smtp.mailfrom=vaisala.com; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b=Uk9L+m+M; arc=fail smtp.client-ip=52.101.66.140 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=vaisala.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b="Uk9L+m+M" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=E6OdiZhN8XLam22hn1R3uuVJUp3ILr7arS+tzuxXPXb+rZ6EVj0bW+qSs0kF/BsxPo8q3JxiSN+Nv33x7z3LPEsub5GS3qb4wbhPwmpTqwMIHiZJsOAboXmGv+UMOqpE/m3usZtu3bevMRUnwf6tfMdk5XgMMuDV1UXh0hlNhWOLbQO8H3XZK3mmArvw5GKmEioLB2tMReFg21FgwBFF4JIgeUrlTAmWdQrld7ypyL0irOSU7JrFu577V2B17V4uTKrmTEFWx+PszFI51R45c7h0TvE8lfyZU+Fkxx6N/UWjIYEbPq3eANetPWgwrZqcDG4n3c6ET8SA5YYdBAGQ9g== 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=rRwpBj9Q3XqAgrmtR4XGa8GL01Z9u2ahR5hQNJBUQZM=; b=qENWe0ypWHQn+0/ftQbqCXFT6XizwriZk7JmAbiWSMCgzXjTzM42EIYiEmiX2Jy0yqwtCys1kN8cIPxGSj9dsVgygDDOVW645KBLcZtm/h+2UJugDXOjKPgYwWuAsiqfhf2fbTFt97yql5qAFJRG5jB/nFncLp65JKg9DZ49v988eqyWBYPddhXj07aPVqCAbh+sbG5R5fA/mBBl7QbtIEzbiFrZo8gPxb2rXoURDK/GewfeQFQXaMxxngUTVafXSOxnCTCqEYvCFYGHMDRr2K9E3WEYjgkGyCENRCseEaxjWPJ56d6B35rOwm0Q39WCVViPfi1gks/F6BaOoGyEVg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vaisala.com; dmarc=pass action=none header.from=vaisala.com; dkim=pass header.d=vaisala.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vaisala.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rRwpBj9Q3XqAgrmtR4XGa8GL01Z9u2ahR5hQNJBUQZM=; b=Uk9L+m+Mnj2rVtiGRadG1yj2OAOzThz8MgulOFcrs+BMekO65ddtxaoDDCLeyY4rHewdAaVyTAsgbdeZgS8RwtlVoM/dfI2AVAFSCxGsc1OfRqZcvhACFoRJ9YJzxze0Z1Ygg1hVI17MEVAoWNzBgGxbH1KFkV58H9/yGEG96H8i0U4MIkl904NwW+8wS74wOrvjfn2PYZ1ZbiAcQELiPO59s34ZrlRxd1QwdsRr9mzS0FZbG05gjU7Ig14BBGgu00hEHzd6xw2qxnoOGwGkr0thIitqzILUhd8ua9JT9upqR46LIeLsLZvVq5ruaOTyrmJI4kn6dx9o7amCFCPkrw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=vaisala.com; Received: from AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) by AM8PR06MB7361.eurprd06.prod.outlook.com (2603:10a6:20b:367::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.11; Fri, 30 Jan 2026 09:17:11 +0000 Received: from AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049]) by AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049%6]) with mapi id 15.20.9564.010; Fri, 30 Jan 2026 09:17:11 +0000 From: Tomas Melin Date: Fri, 30 Jan 2026 09:17:00 +0000 Subject: [PATCH v5 2/4] iio: adc: adi-axi-adc: define supported iio-backend capabilities Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260130-b4-ad9467-optional-backend-v5-2-7da803ba7326@vaisala.com> References: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> In-Reply-To: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> To: Michael Hennerich , Nuno Sa , Lars-Peter Clausen , Jonathan Cameron , David Lechner , Andy Shevchenko , Olivier Moysan Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Tomas Melin X-Mailer: b4 0.15-dev-91501 X-Developer-Signature: v=1; a=ed25519-sha256; t=1769764629; l=1391; i=tomas.melin@vaisala.com; s=20251125; h=from:subject:message-id; bh=qcsgnhM9x/2IeyYKal09yn9X4/vVSN1Ui/T+M0AFryc=; b=PKo1d7+F9OsdG6jtf/va25YXkejjecCijqZORxtiKL3N0aq1w+ud662ROF6VV7fXJDIrADqKC yoT++zU167ICtJytfUfoxUivS+ItEJ4ErkiTs/Hky2fLK+sbBlVHYuc X-Developer-Key: i=tomas.melin@vaisala.com; a=ed25519; pk=6lMiecjZ+OeyZuxYsDm/ADy9D1JKvYrKdsYv58PMepU= X-ClientProxiedBy: GV3PEPF000167F6.SWEP280.PROD.OUTLOOK.COM (2603:10a6:158:401::667) To AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) 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: AMBPR06MB10365:EE_|AM8PR06MB7361:EE_ X-MS-Office365-Filtering-Correlation-Id: e7780a30-7acc-4b40-7c34-08de5fe0595c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?TFhwdTNsVGFtaXNtWHFvQzIvTktmTk5mVlRYTmo0ZFh4cHJkUHJwUXlHUllM?= =?utf-8?B?T1VTTm5rS3JGSGxPMEFoamlGYnJKb2x3aHRtMEwxdnozQ1VyNzAxQjgxZUdZ?= =?utf-8?B?UFlUYkl3Y1RMT0UxTmtiaVNxU1NxS28rZ0hqK1h0UVA2cHlrVVhvR2dKRHZS?= =?utf-8?B?enZjcGp5bGFKSlJXdjRUcWNpcUZvWlhwUHBCZGdkb3ozMk5FQm42SGlGSmJX?= =?utf-8?B?emc0MkxaMEQySzY0VDRTbmpFVGlSeUVmYy9UNFRxT3pRdHc3ajBDWTdiV2dW?= =?utf-8?B?NnVjYWdEVWJHVDFFcEFaR0FwRmI2Z2hWQ3RreTdLL0hXc2xkQ3lFZ01hbTJt?= =?utf-8?B?YTBUZ2JRTHpXblI5emw4RWcxeFdaUENQZWtwSTUzN01MNENHeE50N1NlNkx2?= =?utf-8?B?aDJ5UHg1YjVtM0dWcEMzelVDaG8zQ1poNzR1QzduVTA1MVk5Q3lQbmlrUS9m?= =?utf-8?B?QVNEZWdHTXJXcUllNU9sSVlibEJpVnJmS0oybHVxbW15aVNMVFMyMjQza0N0?= =?utf-8?B?Z1NkWGJPM2krZjVGRnpwY1R0MlBnS0d1NmJCYmxtOVZyKzlQQkJGdXpsMjYw?= =?utf-8?B?UFQ2MlM5d3kzdlJCT1lQUVRJR1k4TnBxK29lRzFjaUFlTnk5Q01Kay9NSGdm?= =?utf-8?B?aDZuRWNwWVZBekdZb3VxT0wxeDErRXR2Ri9GMWJNZFVwNzYrZ1FsTGJ5Qi9M?= =?utf-8?B?R3lpR0RsUEJFMDdYd0Y3aEVVbDBmY2ZsUThOVFR1dFc1YnVVajRidmMxdnpT?= =?utf-8?B?RUVHdEVLMkxwWVJ3TXNXRXJOSERiOTlnUjBHNWJuQ3JreWE3NWgxdkhrRkUr?= =?utf-8?B?UE9KQ1MvRzA1T0ZzcTU1ZXIyeVY0aXo5UktWbnYxWmZBR2I5cVhmbWMybDlJ?= =?utf-8?B?ZjEvMkovN2ZaUDJ6dmJsQkhaMzZqaFMrcnBhN05zUFo5RlhaWmxrS1JkNUx4?= =?utf-8?B?b3Iza2hrUFFXODJUMWZRV3V5SXV0NE9OSDJYY3BoZForWFFsR0pmZW1qaEJO?= =?utf-8?B?MXlvbllOb1U0bFIyUFhLUnAzVEQ3NmFwOFhIZXVLME1ocG9UOURCbk9FbGVW?= =?utf-8?B?MHlJTUw2M2ZrV1NzaWlqeGIveGlUdHJBdDJXS2dhNjdyK2Iyc0RHZDFNMmhI?= =?utf-8?B?a2trSFlpZGtvRnBlR2RkU3pCODN2dXlRQklOUjN3b3I4bkZKNVkzVEFUaHFW?= =?utf-8?B?WHNQV3hUdDVDa0xpbk5IRXRKcmYxNCt5ZVQweklRbTNPR0RFZUdaTk9FT3RF?= =?utf-8?B?anFSZWhGTTBUWVJZS3p2SzVrdlZna29GNVZQUW5teEVSemJvUUN4TTdhS2py?= =?utf-8?B?NW92UWJ2ZG5VcTFTRUhoNHp4WTUwOFVHTC83ZFdkTFZnVkNja1FCclRYbnVK?= =?utf-8?B?THgyTTRoNnplWWRlUWJsVjNxL1R2VXNTdHI2NnRQWHlqUWlMREVJSHh2aEZD?= =?utf-8?B?d3dYR0F2LzVQRGs5bW9td3VoZ1BWRHFsMWFKRjJJenRTRytMVEJzc3RoS1U2?= =?utf-8?B?TVdBckpPTXJycG50VWpvQm9BdWJHOW1VNmFrc2lOelJ0SW5IODZWTFJDTDRm?= =?utf-8?B?K05iZU5HOU1odkxFQnFNaEdTYTIwYnZ5NE02Z1RSNEZzTTZlVzdBU3I1NE5W?= =?utf-8?B?VTQxZU1VbElZcDl6RWpFb1BqRUNucDZBdmNob3NqY2ZNMWJBcVMvV29XdHJG?= =?utf-8?B?R3VBZGJCdEh4ek5VanFEbGZzNVhxY0tIUEszSU9xNFQ5ZXJlNXRPbWZFMitx?= =?utf-8?B?aytISndtelFhelk4dmxkcHNOZ0t0Q3FDM09FaGl6TTFmUGxBeVFuYWdXR1U3?= =?utf-8?B?TGlMbU5yZERWM3ZCemRLT0s5cTZYM2lkSE9QcmtveG45MFBRdStjRzFQcEE4?= =?utf-8?B?QjhHcDRQeGpDRXVYcWZlcXozczVmVlV4OUJVNUs2RGJzWUdyVXV6SGFOV1RM?= =?utf-8?B?dm15ZndWaEdDTnExQWtwcTV1TVlxL1JGRVFndE8yanVJS3RjTnBJdUo1ekpj?= =?utf-8?B?M0lYUlQ1aGNLZDFRNFgwSGxsMVRtZjlSRXZoZmYwaXVOY0QyVTQ3TVp4WWd1?= =?utf-8?B?RTBmWDJEV21oTmM3RUd5eVN3TlFZS2xpY29QM21rWkE4S09sMEw2UkVlK2hl?= =?utf-8?Q?3JbA=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AMBPR06MB10365.eurprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SldGVnMveVY0Q3BXeTlEMXpHUkhUcDdDOW54bWNyKyt4ZHZJVnlzNDFyTXpX?= =?utf-8?B?MG9WblA1OGY0aHI5NWlXaVlSNE5JeWxVL25PRE8rRksrWC96V0hqWkw4TURa?= =?utf-8?B?YXpPeEFHRFpseE5tZmQzbjZrYldDb21pQ1ZHUmx5dXdQQ2pKcnpXdkpDVkov?= =?utf-8?B?L3RIdXRwdEtHMlVJVHU0TzB3bzlNOWZQSERrQlRPUVVVdEdvNEVXOFFhWWcx?= =?utf-8?B?aHpkaHJ0Z0ZJZ3duS3gzWG9PMzlzTy96Yk9ScFFJUC9pWERVZStUOVd5a1Qv?= =?utf-8?B?WXA1eVk4eVFFc2gzWlBhb3loaVc4RVVwVE5hUGhpZUVOdVViU0Frc1JiS0Nj?= =?utf-8?B?YWhJTUptM2FVeUhOMExBK25mZzV6MFNhaDk4YXlXYk9nZnd6cWxFcHIrZWxI?= =?utf-8?B?QTNzdjBSK08yY25HTzBZOTBZaG9IMXdXWXF5TUtpVE82bXVHYzRDdFlmem8y?= =?utf-8?B?NTRUVndhM2wvRHI1MDNaeFJZWGZ3cHIwNzlqNEJmQkJ3SzVLSG5paXF2QXFu?= =?utf-8?B?WEw5bnhTUHFyK0VQajAyM08vWU9qZEJhWitBeTRGcG9zRHNjQnQ2Z2FlYllw?= =?utf-8?B?WDluMDVnbGFqb2JiRzRMN3N1V1VRQy9hcUxDV3FKM2dHWFRzOVFHYjhndkg1?= =?utf-8?B?REc0QXVrQWJldWlYUlFlbEFUMVRJVXdDU1RqcjRMQVAwUjg3NVZROFAxUUJG?= =?utf-8?B?S1hxQmVRb0dYZjlMK1VWYUdjT3g4aTN2ZFNKc2c5bWY2VE12UGdia204emJN?= =?utf-8?B?K2xrdWxibkpDbFk0dnVwNFUxUldwaXFJRzBndUNVWkxIU1J4blV2aXFUc3Uy?= =?utf-8?B?cTZpUkVFeHcrd0ZpazNvMmdIS1VNRHJ1clRGVWFPOFE3NTdsSWVacXJQTTBn?= =?utf-8?B?QmJuNmQzRkFuTFNhK3ozRnE3U3d6VDBrQ3RJN1JBWjBvRXJVbjgzYlpmbjlJ?= =?utf-8?B?bVVkYkEzdmdjNDRqYXNvVnNNUWRoMEozL3JyMTlxakFhVnNwRk9qVU9TajhL?= =?utf-8?B?WCs2bVBTQXhiM2xmNG45S1VIcGtnSFR1dlVOeGs1RUVVeEJPOG9tbVpjNGlQ?= =?utf-8?B?TGsrQmd3d0puUVJXWnZtSjg0Y05HTUlhUzlkRHFuMk9WT0hnMVNNRExwazF6?= =?utf-8?B?dzhBMWNzMFM5czRrcHU3TGxmb0htN3FmY1gxZmovVHpSWmROcUNHVzRSUFVa?= =?utf-8?B?c29CVlFuNUZ3NC93eENDSGlDd0Y5T29HV0oxZm5YVnFvc3JMY2VPdGZNS2Vm?= =?utf-8?B?eE5RVjVaaXk4dzJVQnJGbFJIMWdUYkhVbHE4MnFqUC9TTlBaSzdJWUNSa1FD?= =?utf-8?B?VlhZQTF4SmNqVDY1Rno5QTJ1RXgvMitsTFhWams2Q0JMNVRHckFkSitlQUNL?= =?utf-8?B?cWlaMjU1bmgrbldqQUJiVjVrdCtXRG52NFFwZUFKYmVkWnFkMlM2VmtoVndr?= =?utf-8?B?L0lpaXRJdDZ2YjJqdjFXQmdNanBjRmxkK2w3MmxPWnltVTNlSnU1dnh3aUh4?= =?utf-8?B?c0RQY0tQaXFzYUM2ZmNkd3dnZEs2TXUyUEZwd29GT1djYkoyQkVJQjJXOTY4?= =?utf-8?B?RkZhZGJicjJtSVNrcVBiWDRXUUF6K1dXT1ZRZXQ0RHd2Z0lHTUZkTmw2NGdQ?= =?utf-8?B?WmZxSHFEVkt0SkRmR0pKdHp4aWdSY29NOFowNytFcVhGbGhTeTJNSjRNL0Vp?= =?utf-8?B?cGY5R2w1dXJSeW1uNmRySEFobGJBbGFXYU9TTXVyQTVXYlpZRWRCVUtBazF1?= =?utf-8?B?eS9PREY0TTJZRjNFT3pPZXBOOVZrVU8xWnBZbU9BeVZrdHhwa1c1Y01rdEJm?= =?utf-8?B?QkZIWlFPNXM5cTFwakdabEhzSVJaUmpSQnVMZEhaUklWbUdreGhXLzAzWXVT?= =?utf-8?B?b3ZkOWlzSngzRWg3Mmc5bTBlTFRhZTF2L3FrWjZ6aERvUzlQUXFxK3dzRzZk?= =?utf-8?B?M200TzNWTDc3UVJUQVk2NGxtc2YrVHZUdUxwRGZLcm5hWG1vTklVUDVWTXVo?= =?utf-8?B?NW41TVp2UytMVTJOd0toYWtwTUduUDNoTFRHTlBYSHVKT21aNm10Z21ybC9u?= =?utf-8?B?dGJLRHUwSWx5U2ZzVVVkdmsxQkR0WlNKMmRjbGltMGV0YjU1b2tnV2Ewak0r?= =?utf-8?B?T2p3NllDUjYwa0JyOHN1VDVSODdVWVBsaGU2NldLZHZ5WnlxQzVHYlpsYmlS?= =?utf-8?B?MEhueVdDSXpobEVnK2lKeEVIU2M2WHRwNTJLOVhFcmljOVFiQnY3WmRLdnls?= =?utf-8?B?NWJLQ2pJa0h6aGxYeUxSSW40N3ZVTDA4TUV0RWhzTktUbGFzNHpScHNsUG50?= =?utf-8?B?Nmo0cWM3ZWFuNGV3eGNIU29iNTNIWEFSSUJtZjY1TU9HbGdtZnhESmswdW1B?= =?utf-8?Q?+Ma5f6I20RhTtX6w=3D?= X-OriginatorOrg: vaisala.com X-MS-Exchange-CrossTenant-Network-Message-Id: e7780a30-7acc-4b40-7c34-08de5fe0595c X-MS-Exchange-CrossTenant-AuthSource: AMBPR06MB10365.eurprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jan 2026 09:17:11.0424 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 6d7393e0-41f5-4c2e-9b12-4c2be5da5c57 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yqVpwsucIeKn+f+wjofbG52ViFUYfiUfTqE1DqdLN+m3zWyBJaKPJM6flBuraTBfGF9UWChZJ5x1kJX5SUSAig== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR06MB7361 axi-adc and axi-ad485x backend variants provide calibration support, whereas the axi-ad408x does not. Set accordingly. Signed-off-by: Tomas Melin Reviewed-by: Nuno S=C3=A1 --- drivers/iio/adc/adi-axi-adc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/iio/adc/adi-axi-adc.c b/drivers/iio/adc/adi-axi-adc.c index 14fa4238c2b9..133aa6f43a38 100644 --- a/drivers/iio/adc/adi-axi-adc.c +++ b/drivers/iio/adc/adi-axi-adc.c @@ -626,6 +626,7 @@ static const struct iio_backend_ops adi_axi_adc_ops =3D= { static const struct iio_backend_info adi_axi_adc_generic =3D { .name =3D "axi-adc", .ops =3D &adi_axi_adc_ops, + .caps =3D IIO_BACKEND_CAP_CALIBRATION | IIO_BACKEND_CAP_BUFFERING, }; =20 static const struct iio_backend_ops adi_ad485x_ops =3D { @@ -650,6 +651,7 @@ static const struct iio_backend_ops adi_ad485x_ops =3D { static const struct iio_backend_info axi_ad485x =3D { .name =3D "axi-ad485x", .ops =3D &adi_ad485x_ops, + .caps =3D IIO_BACKEND_CAP_CALIBRATION | IIO_BACKEND_CAP_BUFFERING, }; =20 static const struct iio_backend_ops adi_ad408x_ops =3D { @@ -670,6 +672,7 @@ static const struct iio_backend_ops adi_ad408x_ops =3D { static const struct iio_backend_info axi_ad408x =3D { .name =3D "axi-ad408x", .ops =3D &adi_ad408x_ops, + .caps =3D IIO_BACKEND_CAP_BUFFERING, }; =20 static int adi_axi_adc_probe(struct platform_device *pdev) --=20 2.47.3 From nobody Sun Feb 8 22:51:05 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022140.outbound.protection.outlook.com [52.101.66.140]) (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 73A0232B9A9; Fri, 30 Jan 2026 09:17:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.140 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764653; cv=fail; b=skuBVA/RkiyddTjDP7lGZElqqy6TUKbi0RRJEfJK8u0YTUHdHrFO7nDQ/IiK3FumpU6L/C7DGtJ3HbPDGcHE33xyT2chsh2+jCoz+Hor739jbCFMlzm27xMdm9Uz49Mc7zt13bFfVAKDvoChPcn06vh3uQJMSwYMbdNxDCzjIGo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764653; c=relaxed/simple; bh=nWZad9bRDfAFN5+rUhPh41XhX3+44rOVXyT/izsHyxc=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=r9FjS+w4eZAVOrC6KpNldG0Am9kPkD5usboQsRYf7/FGMbJ3FbjyJvH8PI+eHVr5z39VttS5dklDTc3tOzmcS8rFK2/7HERZa0SoOuCvttQvNaDyPVk4/FPEL6/ysWIqZDDUJJlSu7wqT0FcfsZWeYVsKs2zm8+OEZWqG3bqBtA= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com; spf=pass smtp.mailfrom=vaisala.com; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b=yQwGr6gD; arc=fail smtp.client-ip=52.101.66.140 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=vaisala.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b="yQwGr6gD" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Inz+F1zXM1BiSbiFrjiiCRrgHbcj9NYicBjXDaePptpxIqOAyBXNeFXzW93lE0fezwp8LuXpn2P9cbE52i03C74gsmbb8UhlI56S78xerPk9K+LojiKRHtVSJZEQqNlG34TP7Yu4FEX/FQi3cY7f7tiJ6UbKZY+7lm2eGoQL/HTTWGgUsX4QKJJsPS59Gnq++PeFVO1uaXipTKxJgnZrUFs8u+fyLri3w9BQMJPRJWo6BnQWzy3zN5dCBwazNS+1yyqXp9Be3L5qugxWFxUd3QS+CuExFhWtEG/7kyeKl8yseMBouPMTU8D7+eRxaXi+/Wwtoa4gGC1ADP8d4Msuqg== 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=oizW4RZHbbDiRd1blSFokETgQJnOQi6d/UCSkzhP/As=; b=F79Bh2vKrFdQ1vgGvKRuCr3T48b5V+PBz1l3mkUmSSy7ZZ7w65E5iutH4ax+yV0IDu1itRqP9SXjuyxcmL+dggg83ISGsP4wJWNmnHNthyvxrPHLIspHeEwW/5dDhSM7+0DFOp5i6V7EDYrnEHAbh0GoWir6LuCkUCTTjtjyaBcURf1DftVDXSlbR56VPyTgpmt4+cF8I0rwTs6ZTGBCzTPMchsv9JJmFqe2kRQLBmFhctwL8D2/Rhybpqdy6yeS401keha4A5TXIvPhTfSitNVcKGMhsijpqE3UmtEtidIVl+hm0wZMBZwxCP/XNyNyq4J72BSk4VX/gNShfWi3Fw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vaisala.com; dmarc=pass action=none header.from=vaisala.com; dkim=pass header.d=vaisala.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vaisala.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oizW4RZHbbDiRd1blSFokETgQJnOQi6d/UCSkzhP/As=; b=yQwGr6gDx8+0f/UKv6XCccB5ngvl+0UJZ5gb1iOazOhLtJUygYnDM2eYzRXiCBFPfj6lg1aDu+Cu77qzHbp3P2JLpduKkEN4HCwNbfRy6mqt4eZv9K9JgHRJ35OikbrTU06As4YG7HIUqtJmS/SmQUjqVDP4d3FbG4xg5rVZECL3eR8erEl7qoAMk5JvVd5qrXlFr+EmNgrSNsPD8VIEAlyoM5aeC7tQ4tm54V0uysVR1+A7EhNIRe0C4uDM0mSbVty7rM5EmITepVN7Rwtd4HjoLCiSnycHRNNeqJQKdtchaat6PWfvvbUdceyDqv2XA5/zw7FFuyqRvyMHvwdT5g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=vaisala.com; Received: from AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) by AM8PR06MB7361.eurprd06.prod.outlook.com (2603:10a6:20b:367::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.11; Fri, 30 Jan 2026 09:17:12 +0000 Received: from AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049]) by AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049%6]) with mapi id 15.20.9564.010; Fri, 30 Jan 2026 09:17:12 +0000 From: Tomas Melin Date: Fri, 30 Jan 2026 09:17:01 +0000 Subject: [PATCH v5 3/4] iio: dac: adi-axi-dac: define supported iio-backend capabilities Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260130-b4-ad9467-optional-backend-v5-3-7da803ba7326@vaisala.com> References: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> In-Reply-To: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> To: Michael Hennerich , Nuno Sa , Lars-Peter Clausen , Jonathan Cameron , David Lechner , Andy Shevchenko , Olivier Moysan Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Tomas Melin X-Mailer: b4 0.15-dev-91501 X-Developer-Signature: v=1; a=ed25519-sha256; t=1769764629; l=911; i=tomas.melin@vaisala.com; s=20251125; h=from:subject:message-id; bh=nWZad9bRDfAFN5+rUhPh41XhX3+44rOVXyT/izsHyxc=; b=pX+NbXCLz9Vl06U3OtqHdAUcYny9lxW2h0t/uLir9LUrNHAmK9mqd3crRNsOJf1BnhWcMcOhE UCrCqiiVpCjCCGbsWJg+SJ5POLX6aJ88WCFbrj/JOOUmVJd5jNBzcpc X-Developer-Key: i=tomas.melin@vaisala.com; a=ed25519; pk=6lMiecjZ+OeyZuxYsDm/ADy9D1JKvYrKdsYv58PMepU= X-ClientProxiedBy: GV3PEPF000167F6.SWEP280.PROD.OUTLOOK.COM (2603:10a6:158:401::667) To AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) 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: AMBPR06MB10365:EE_|AM8PR06MB7361:EE_ X-MS-Office365-Filtering-Correlation-Id: f5977d39-9935-4139-0cdd-08de5fe059b7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?Q3NyZVVaVHR0WCt0d1dwM0tUTUdFeVo5RzQ5YUtneEppWGtBMFpyb2oxNEx0?= =?utf-8?B?NngwRTFhOENZZmt1a1FSNU0ydmkrR3FyaEg2WHIzQm1YQ2o1eHJHZzZsMzlm?= =?utf-8?B?QU85WFpDUmhZd2gxSWFIUlRWOEFJemFuRjM5bmxkVk9jMERhTks3YlFxTTFm?= =?utf-8?B?WDJ6MU9nS0tCWnl6T1ZhSTFHMXg3aDFtendMdGpVU2xRUlpTOVFucDVqdERQ?= =?utf-8?B?S0NObHNxdGJaQzhHb1FHNnFod0lodDl1dzRoREVsVmR1L3VHR0pLRDdLK1l3?= =?utf-8?B?YWZTczI3My83Y1NGaXdNZlk4R3ZmdmVndW1wUFQ0MURMZ0FRYld0VkhYY0tj?= =?utf-8?B?QmY1bTF2Y0xtUU03RzV4WUhPTUpDTzdqdk5tYXdMM0REOVRKUFM5QldkbDdX?= =?utf-8?B?WW5uNWthWnE1NHJ6eE11eWhLT0czMVd4YzVjRnRZVnpPWVhuV0h6bzZBUFJS?= =?utf-8?B?NFdhQWZIZlJsdDRSNFFSa2MvaGRQMnYyVDNud2FwOFQzOEFUR1JuYWZZaERT?= =?utf-8?B?MmFTVUwvQTRkM2tvVUlWeG5JZVA4VmxYTHhndHM3TnN5Ym1EeU9Hd3c1ZS9u?= =?utf-8?B?OFdJZ0VNZXFmKzBsZEFWUzhxcFNFcXNwRjlkeVVyazBqb21VSTRON3VlRWNJ?= =?utf-8?B?azg1K1k2eXpMQW0rVDFpVG8yQ2czeHRpblU3WGZFQ1F5VjVyOS9QV2RNcnox?= =?utf-8?B?Z3V5Tzg2TFd0TkFCNmdvTFVhK3BjanBxY2FCZ2FqWjZaTmZXWWc3QWFjVHJ5?= =?utf-8?B?K09NcmdVTHh4MjNyc2dBeWduem5zcm5qUFNvK1YycHU0YU0xVXl3eEhNcm1w?= =?utf-8?B?ZXpjL0FsUGJ0a3NBQ2t1eE9ZRHgvT3pNVnpKVTB5cnBWRDNMSG9NUy9QZnRa?= =?utf-8?B?c1EwRENuZCtDZ0VJTTJDem5aOWdBejhTa0xUVmJVcVJ5ZTVJZXRJQVQ1b3h1?= =?utf-8?B?WFZSSWozRGVIK1BBMWxyaDdMNTVMbkEwQjVhS1RxaWsvekFoMW54WXhmOHBE?= =?utf-8?B?anpRZE5JUUJ3Tk9YWWxHaUExY0VNVU42azFiMk9HWWs2L0NHMGNNTkRKQ01k?= =?utf-8?B?dDZJYnNMVEpjM25zU0UwSm03ZkViS3VoaE5QZUY0NHcxL29UUzl2V1JUeWVZ?= =?utf-8?B?MjluZVpTQmpGb2c2eUxETXBIclRrbTJyYkRsZThzNWxYQlF3MXBHTEhVS2Jm?= =?utf-8?B?ZzRSd3hkL3FpeXJ1RDNlaUZ3M2orMmRLc09PV25lczlERkN6Mk4zMDJXMkQz?= =?utf-8?B?aEZhTFBGK2Ywb05rUEhzQmNUS0UvOEFhZStkQ0RIdEV0UUZyVDVYVFNIM1N6?= =?utf-8?B?a2VMRTJLeWJ4dlZqcEhRUkhhN1RVejltSURKbjVIZlVTd1NtTUMzVGhVTUpk?= =?utf-8?B?NFljMVJTSE83dnRIWER0WXlKOUl6eENleTRUQnUyK0VkbmUzTXlRby9LV29V?= =?utf-8?B?WDVLNm1wWG5Gd2dManUvcksyek8vWmVGQkNpaFd0UE9MUmM4ZmZkSjF3NTVF?= =?utf-8?B?NS9ickROUWg2MW5zWXNkQ3pmbnJtMDZtSFVXZ2JVaHJDMEFFSkF0TlQ2SkxP?= =?utf-8?B?K09uSlU5UThBb0tKTXJoMjVoanZHRWlWNUZ6WjA1NDB6NmIvUzRGTjQvOHBk?= =?utf-8?B?UTQvMFFiTFBSNHlrbjQ4N0svNlZENllEVTlXNzVQbHFmNUFQdHlqYzR1MTdi?= =?utf-8?B?d3ZJblZGMmIzN1hMNFd4YUd6NkVwV3BsYm1HMUFMenNldnJianExM1VlOWp5?= =?utf-8?B?eUsrWUdDaEdna3VaWXlIcEVuWk9BS20xTC9qMExSMzQzQjU2clhNZ2srTTNy?= =?utf-8?B?WjRZL05SbDB6bGw5Z2gwdmFPRzdGV0pxelJPUnhnZmRWNEQwa2FmN1duaFlv?= =?utf-8?B?cU44aVY0TVI4eFlXdlc5S1MwWXhraDJQejgyQnJmWXptajJpRm9KZnVMWHBE?= =?utf-8?B?VzlwbDhsSU0rMVJza0l6VlBtMUl1NncxcTFieS9nUFpCSG5YYWJBSmxERWNv?= =?utf-8?B?d3c3ZlU3T3ZZQUpWUTlRbWJuNW9aOUZ3cWphN2tGN3NySUU2RHJwNTZlaExz?= =?utf-8?B?a28xVmlBcTArNTlCRmVFRUxBTDhXZHdTSEFWOVNTWTNSQ0NZVEgyeFlCUlNS?= =?utf-8?Q?S3NM=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AMBPR06MB10365.eurprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NHhSREljdnlQQVJ4T0ZuYUxvOEJaZG9RNWVOK3k2N3h1N2dpYUE1M2g3VE9J?= =?utf-8?B?MS9RNjhqandwOUJTYy96U0xiL0lGN0d6L2s2T3U2VkUxRUlMTkVRdmpCTUpn?= =?utf-8?B?bTVWQmJXQWt3K2UxYXNORVNMblpmVENWUGw5TnNOOUdWbmVoWTFXVkRacWdG?= =?utf-8?B?aWd1VitrSjc3YjhpN05XRmw3Uk5zT001WlBRaklmZ0tlODQ3dzRZOGxqcDlZ?= =?utf-8?B?d05FaW42amhUdnF5Q1FiWDNVVmFBZDNlYWx1NFdhQnkzdDExdnFBamV6ODVL?= =?utf-8?B?RDdUeUIzN0NyRCs5SE5BRDRvZ1NIODJvd1hpSjE3QXZxNTRwdW5KeUorQ2E0?= =?utf-8?B?Nm5qWlkza0lua00zaHgwSkMxWHpyME8yRGhFNThmeHY3WWxyYXd1NzlaaVpz?= =?utf-8?B?eHc1T1lteXl3ajQ2K2ZCVVhxMXFGRDdFSG1vejlleFkzckZ1WmhwOFJCVVVT?= =?utf-8?B?NDY0aFM4SXhrSUFpaHBnRzdkVCt4OStPOGs0ck9NaUpMVDA5VU8wK0puVUJs?= =?utf-8?B?QVZ5cnM4MTI2MHlOZHgwRW52QUxjeUFEQkw4SURnT1Y2OHhXdkRoOGtCM1Zo?= =?utf-8?B?MG1MWmpiUlJhU3lHdFJTKzExSlJHdytNM3FUWVRNa0lveTQrdk5yd1I5L1RU?= =?utf-8?B?eU9ud3kzYlhuZ2cvdUNQL05PQzRySlV2b2pQcjlKKzB1SW1KUXlCSWtMczQ3?= =?utf-8?B?Skt0UjhwNi9teFU0OTBJbzJjYUp2MjFudG9xbVNpaTRXTExtdENyWEVWODda?= =?utf-8?B?Nkt1MmtjSEVZcGFVS1hZc1RnMmNGQlRuOXpVdFlUMWRycC9iSnVPM2NTWFZv?= =?utf-8?B?R2NYMXp4VFpyTXIwM1NkT2Zjcm9rdGRKRWpJZVhJVXExMHVrZ2JvWHIrTEU0?= =?utf-8?B?VTRNU3JXZEZ3LzRNZThBVlhIRC9GZjVTN0lZK2ZqUUtxMU9GaVo3NTJjMjdZ?= =?utf-8?B?S29XYnpnMGZSNXF1S2x5cmNLOXhWQm56MDR0aDFKNXVZK3F5TnRsRXR2eDBx?= =?utf-8?B?QmUxbGQxVTdQYTRYRUt6NldESTZ3aTZOclU1cWVhRGRwem9Mem5SZFZzNk5n?= =?utf-8?B?R1dGUGV1TXFvVUMrV3p5SWR2SC9Hd3paN3UzUm9kTmpXZ0k3VXQwVDBRQ2ZN?= =?utf-8?B?bENCS3ROT3N6bit6WTV0UjljVEt3U2FNSDBpNGdORUpNTHAyN3JObFJvWjZO?= =?utf-8?B?TVdHSkdBMWhsVEtTdlJ0NG5VaU5RYmY1L3RqZTNKZ09NR2dlODVqUGRNNUZ5?= =?utf-8?B?ZXJsdkIyMUczN1UydElQYUt2Mk13NWdhZWh6ak1weXYxT1NLUElTQ3RHQ29s?= =?utf-8?B?RjEvREYycitxUWUvSTg1MHMzNkZtcWZodStOY2l5SmZPMG45dUxqV1NLdHR4?= =?utf-8?B?UTBNaVorSG5QaFlxRVRQeUFOTU9lZCtPOE12ZXh0N29mL294aHNaZkZ5c0wz?= =?utf-8?B?SjlicnpsUisyNFdMZy9jdWFZN3dZdkVWU0Q2bytXNnBYaFJSTG1ZVjJNZFhV?= =?utf-8?B?U2ZQZU02QWp3ampJQmJsYVc4KzlDZlVkU0dVcC93d2tKK0JJQlZqRkNENmxP?= =?utf-8?B?SFdHLzNkclZiRW5Zbk4vRjVBbGRGZ3dFRzI2dnl2SnZLeFMva1hhQWRCN2hF?= =?utf-8?B?ZjVqMDhrYjZSaStMTk91aXloeW5aajZvR3E3cWY3YjhIUFNFY3VmNFBMZzJh?= =?utf-8?B?UEdlMlNHdG0rbUhvR21RRWdLcHRzWHJUUWE1OFRIRjBsOWZVMTNlTCs0ZXZt?= =?utf-8?B?SXpKVlNMb2FjT0Q5dnhOcmtIdnFweFQwZWZoV1ZDeEgrNjZFa25RampqSzBj?= =?utf-8?B?aEtsSUM1Y2RTa3RPR0ZWeTlRQi91Rnc0dGxwTWwrelRlV0w0Z0tpNGhXL1Jn?= =?utf-8?B?ckhIMXFsck9KKzhHYVpzT2lHd1ZPRWcwdWw4OVIrVHZrb3lQSzlERDhsL1Ax?= =?utf-8?B?UXBjc1NCa3F6d0FTT2RQN09BMW4rS2dmRVZiY0c5clpXazBCcU1LQk9MU1Rv?= =?utf-8?B?L2xQZU54MkNWOHprVHJRVTZwaFhkcFpkZTN2L2lBMjhJNFIvc0Z6dXBOcXZj?= =?utf-8?B?YWVPSG0rZzlwVWR0dHNBMW1uMm9jMzd0dmFmNmdGcWRYcjJYZlFQd2xBQ3Fh?= =?utf-8?B?ZHFSRXlnYnF1dDJUOVdLaDVSdjQxTE9kb2tKT0srUkVnSHdJQ1lDWnZTcGRp?= =?utf-8?B?KzMvbjVIdWxjQ3Y2RnB3eVRaZHcwUUFaT1FRNk02Y3ovdXRpWW5ZVXR3MTZz?= =?utf-8?B?OU5JODdUZHBjOUo1YTNwMDFMbzlkaWJZVXZtNXlEaHBJZytoNXdjVGI3aXZj?= =?utf-8?B?OFpyM0t0K1kyZyszcXZmdFhaTE9iODRBRXM1bG00azlXdndZWUNYS3psaHRs?= =?utf-8?Q?J2porHJAMHsJh01U=3D?= X-OriginatorOrg: vaisala.com X-MS-Exchange-CrossTenant-Network-Message-Id: f5977d39-9935-4139-0cdd-08de5fe059b7 X-MS-Exchange-CrossTenant-AuthSource: AMBPR06MB10365.eurprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jan 2026 09:17:11.6549 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 6d7393e0-41f5-4c2e-9b12-4c2be5da5c57 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZyHViXchLDMxk+6qP8X6SOVQmYpyCHlVnIdZrJEjC0UUUQD4sPEloFeQqMO2mf2FGrI4El2ZfR6BfLdxaGeH/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR06MB7361 Backends support buffering capability so advertise it while registering in case a frontend makes checks for it. Signed-off-by: Tomas Melin Reviewed-by: Nuno S=C3=A1 --- drivers/iio/dac/adi-axi-dac.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/iio/dac/adi-axi-dac.c b/drivers/iio/dac/adi-axi-dac.c index 0d525272a8a8..cd06cd4587af 100644 --- a/drivers/iio/dac/adi-axi-dac.c +++ b/drivers/iio/dac/adi-axi-dac.c @@ -869,11 +869,13 @@ static const struct iio_backend_ops axi_ad3552r_ops = =3D { static const struct iio_backend_info axi_dac_generic =3D { .name =3D "axi-dac", .ops =3D &axi_dac_generic_ops, + .caps =3D IIO_BACKEND_CAP_BUFFERING, }; =20 static const struct iio_backend_info axi_ad3552r =3D { .name =3D "axi-ad3552r", .ops =3D &axi_ad3552r_ops, + .caps =3D IIO_BACKEND_CAP_BUFFERING, }; =20 static const struct regmap_config axi_dac_regmap_config =3D { --=20 2.47.3 From nobody Sun Feb 8 22:51:05 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022140.outbound.protection.outlook.com [52.101.66.140]) (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 7B36E350D7D; Fri, 30 Jan 2026 09:17:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.140 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764657; cv=fail; b=r30u1KOxgjpUJgRlmJjc3ByAHIx1nCJYxqRrqc+d8vunknJDY+tKWQSyGb8H4dUXugUSbhLDcYywXBMUscJC2rFbKbB8LEnE0Cerl5l+2p2FwLBz9DPH9+67OxH6TKFitPoIpG6+xGl7Y2LizX236/hCtPz4ZEb3W1N9zxkFQaU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769764657; c=relaxed/simple; bh=AyH6UAL5LifplHS2h9DVQ90bgQ7V3na5tfsJ0zfRtCY=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=BsZXLmJpHAscM4kIK6MClUXcjBQ+4OGHWTtv0qOZK3rBxCWcJi9ORjcYo65cl2rLmAF/5BnEPKp7sVMxpNftd42/qV52rfi3NdkKe0jiiEW5SeVOAJjRZ6VNN36gGvQy6ZG396vpK773oJfC7BCn5SIEKj9wNgV2rwFfYrPT3gs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com; spf=pass smtp.mailfrom=vaisala.com; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b=C5DK/SiE; arc=fail smtp.client-ip=52.101.66.140 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=vaisala.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=vaisala.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=vaisala.com header.i=@vaisala.com header.b="C5DK/SiE" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=snRO5EOZuBsVhMT2Ods+rnwaR6zObrVsdd6xbWFojmBTAPuEeHsFVRs4aCUcBn/Ns9O40ssz//7wHB6YGu6k9fqrsNilGbDIAqjUY4pjh2DltxGZnfzVH8+rGuWgXgcifOl9DlL/O+6DHhU71fbcRop4RgWaSZbqNEdMDKTRHL0RC5REEGdOCN9F36lsvxoTVC7fcHcvv+UB6sKRcXSs2DWV2RSdlwBaAHyq7f6LBKSIp1pr3lThoUQUuTqAObbxLWqUCxkld5FnsDqBA7TnRWfMpVo3mLToQvsJKep5QLmz97DaOrI72dgBrAWK2NzEg2+Kuq/eTllm1jOwlkQ1bg== 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=s0mDtG1mjxPmADAaLW16nDzrEJfZnaRoFrQCKBl6rVI=; b=KS3anGUKxFmwjDG3VDqj3097RlNR/AsihLQ5qp9tmRvL6qXhh+xNXUD2nanEb9hs2AiQiGVOtjtoiFP5+FtHahuip6skLPebZ7mDSMOR2xOwvoEQx7RS3N9VM+GeXdXeMp45aZAJACplCTii4z2q5RxFAogXyoLCklDR0S/za1py0Lc4n/gNgiqx9cwMIBFvBUsYL5QRTLOqs2BXaMH/vD2FDoxB080rHZSV6rpBLWnx+//21KfttoUfFguBmVV9RrlIJ//Alg6TyxlqPLSDF0XlwbqyeSEBjXhdJQUIMKkto2BXx+OVcUGVgz20c/G/M4soIJtJ0mRMU3NdIDzdAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vaisala.com; dmarc=pass action=none header.from=vaisala.com; dkim=pass header.d=vaisala.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vaisala.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s0mDtG1mjxPmADAaLW16nDzrEJfZnaRoFrQCKBl6rVI=; b=C5DK/SiEidGXvCZ/5WfU8Fj5uJlXvg1ONExkqL10IP8GP/MirmkazIihVyezzNLofRFTnkWAbHo7wABhnIRRZpdLhPXSmGdI/4gkaxMMrZOqHpVj7Z0ldShkkjePXg4/PzNZTO/QXz2n9A+Ma9iz1EzOYFXf2Z6QyhgikYypBVg5u/tlx4FpU+M8RGqE8pr2DJedBKLjkHVAW3c1cW3DVVTOjHI8EppLZnbeKmDN4k0HqQAnyE3h9MT2WaTAk42NZD2DamuwNLUQ/ZCJEFjbSZqNMhp6wSJfX3REprdZohncAbTSBGtO6zJAOhQ/c1VdxgxOWTsh5AF7b58fPq8A7A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=vaisala.com; Received: from AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) by AM8PR06MB7361.eurprd06.prod.outlook.com (2603:10a6:20b:367::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.11; Fri, 30 Jan 2026 09:17:13 +0000 Received: from AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049]) by AMBPR06MB10365.eurprd06.prod.outlook.com ([fe80::addd:5e9b:7273:8049%6]) with mapi id 15.20.9564.010; Fri, 30 Jan 2026 09:17:13 +0000 From: Tomas Melin Date: Fri, 30 Jan 2026 09:17:02 +0000 Subject: [PATCH v5 4/4] iio: adc: ad9467: check for backend capabilities Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260130-b4-ad9467-optional-backend-v5-4-7da803ba7326@vaisala.com> References: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> In-Reply-To: <20260130-b4-ad9467-optional-backend-v5-0-7da803ba7326@vaisala.com> To: Michael Hennerich , Nuno Sa , Lars-Peter Clausen , Jonathan Cameron , David Lechner , Andy Shevchenko , Olivier Moysan Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Tomas Melin X-Mailer: b4 0.15-dev-91501 X-Developer-Signature: v=1; a=ed25519-sha256; t=1769764629; l=4059; i=tomas.melin@vaisala.com; s=20251125; h=from:subject:message-id; bh=AyH6UAL5LifplHS2h9DVQ90bgQ7V3na5tfsJ0zfRtCY=; b=4x1sUVVVYPBfA/uuIfY9FHBCXKyby9svN4f1UKhT/cHJNXUYrb8eYC42kICb4XCJ87FPueHNZ t4FB3HH70w4B25l9I6S+YtLigWs+rhKPl05zM9BMXhmGO+DOCcI75Ik X-Developer-Key: i=tomas.melin@vaisala.com; a=ed25519; pk=6lMiecjZ+OeyZuxYsDm/ADy9D1JKvYrKdsYv58PMepU= X-ClientProxiedBy: GV3PEPF000167F6.SWEP280.PROD.OUTLOOK.COM (2603:10a6:158:401::667) To AMBPR06MB10365.eurprd06.prod.outlook.com (2603:10a6:20b:6f0::7) 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: AMBPR06MB10365:EE_|AM8PR06MB7361:EE_ X-MS-Office365-Filtering-Correlation-Id: 7ea4f5a5-9827-41bb-01ff-08de5fe05a17 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?RENFMXVkZDVFU0VESXpuQWNMTDk1TmpVdDByU3R2VGdFUXh1bWpFdWdiTVpU?= =?utf-8?B?L2F6TlltZlZ0V2RReEFRdnBlNEdiWHlHZ3lDQXpvdGt2a3RiMlJXSzRESUov?= =?utf-8?B?ZnFaSjdTVU8zMHY1SWZFaWo1WGhlSDhITmxjMUhVMVQ2eHBGWXlyV3RUdytz?= =?utf-8?B?MmJUdjI2T0h2VGFiRmx5U0hMSDNxV3ZqWU1lWmRZcWhUdi9ISmpZRmFEbmZT?= =?utf-8?B?ajlRcmF3N3loU1Yxei92OW5WSXdmM2J1cWpGNHhaNG5JTlpNcUtJUW8xS2tv?= =?utf-8?B?SnphL3kySHF5YXRiR1Q0WUdoWDE0ZHdhMEJZd3JyL2hSbW9wZTd0V280OUVv?= =?utf-8?B?NGhWR2FodVVPZzd6aEVXYnQxWkVudVdZZkMvYWh5Yk1GZ2c4S0h0Mm9DeVp5?= =?utf-8?B?ejVaU2xjdVJSUjNoNDVZM3Q5K3k4YnExcnIvVEFrNXVsT1lIdlhkbnBmejBE?= =?utf-8?B?M2lqSThINTFKNDB0dFpDQTc0TE15RUZ6cGtQdXpBL0JSRTUrYnoxZHFBU3gy?= =?utf-8?B?aEtYclZ3emQ1SWQvejd6VEloMjRaL2ZhWnFtb0o2U1JkV3NIMm91NGFlNlo3?= =?utf-8?B?WmlocWtOcHBUdFZsQjcwdjlNWVFWeUo2NmxQZlNnWC8weC91Z0h4anZKQklX?= =?utf-8?B?QTdGcnhnamNNcm1wem9kSEhpTnB4UXBpWFdoenE3T25uK2dLQnZoK3NQY21k?= =?utf-8?B?SFVXU1JSSzdFRVkzSFFlU21ETnhIclVCN1RucVRORnFrSWN2U21VdU1XQ0FY?= =?utf-8?B?dDc1MDJTNm91RDU1MTdDaFZ0eW1lTUI3QUhjK3VpcWRSMWhnYWNBbDh2OHFl?= =?utf-8?B?clNoMjZVSEdwVUtkeXZwbGROeGF0QmJFR0dpWDVxTE5tWGxUcXlrTFJCYS9q?= =?utf-8?B?N1B2Tm91bUFtMU8rcnJSMHdhVmRBek9BOEFyeVdOdE56TDNJcHMxMlZhZjdG?= =?utf-8?B?QVZGcENERVBjS3pib0R2dEpDNDFRZVJmcTBkQXpSWVFZeU5qZnBxK3cwTWla?= =?utf-8?B?SFJKWDMvakUxV1E5Y09abisyM3hEVWtjRTVHM1F0R200cGUvWldJZTh3cXJk?= =?utf-8?B?M0c5SEpJWWhYOTd6R0ZzK0JNVXVHMVdtQzNkRTM4SFF3OUxKUFlFNTd2OGtw?= =?utf-8?B?TXNTUGJmS3F6VlhqRXRYT2xBbGtvcWNEVlF5UVJ6QVRhc2dUTElTVEN2WVQ1?= =?utf-8?B?MG5PQUNoaUM2Rit1MkdOekFwWkZiamZTMG8wUlVGZGtxZHFDdWhHc3UwanFN?= =?utf-8?B?elZNNzcvM01xU012OEozQ0J3amdqSzdqWVQxMnErZDlUVlo4SW43bi9jeWZZ?= =?utf-8?B?N3Q1Z0pIRXFjMmxTTmM1Mlp4NUIwWlYxM0cvT1dBdFhnYTdNRkt6aUJLOSta?= =?utf-8?B?a2VxK3lrMDNpUzhRQ0dPdEM1Rjc4RXNrejQ2Q291YWNmTzlNZ09GUkFsMlhJ?= =?utf-8?B?VEtPY0NYR2JKME50TlI2OHhaRDNjZFh2Y29ENzhQUXZ3VytXaW9jOXBTVWVZ?= =?utf-8?B?azMzMTZqWFFCRGRScEFxWWFWSXJ2Yi9uUEFpek4vbEpvNXl4bGc5TWwrcDJm?= =?utf-8?B?SVphUjhYUUw5Yzd3MGtjMm56bGVScm02SERDdlJDU1FRZ1pXUGI1YnQ2U0d3?= =?utf-8?B?SHJqVTFib0FWdzJ3TThLSE44VGtES083M3pLQUZMR0NTQ0lFcFNFMHM5aTEv?= =?utf-8?B?TXMzcEZRcmdNZHovamVnaStWUFQwYTRXNGFGYy91ZFVzSHVOdU9GdS9tVlZs?= =?utf-8?B?UEZJSm11WFdtdUlSVUFYMkVVOUpKL0svK1NiQWZDNlMwR1lYUE9wSU90Mmh2?= =?utf-8?B?ZkhFRFo4SzBDQndBblJJS2xKbS81ZXJMNVpPemorTEJzaDQwMmpaV0hwU3Na?= =?utf-8?B?aXE5VmtYZCtLNlUzZzhRampvd2JBRU1nSWJKdXVNRmNCOTFuZzVMWHh6amdz?= =?utf-8?B?V3BFTWJNRXBFRVhXNThUcCtQK0NFUjN6UGkwamt6YjV4dWMyRDlyR3VTYUEy?= =?utf-8?B?MlVoWWtWVmxIMU9PWFFDOGxJT0dTbWVWSyt5bHg5eHdGQ3ZOdmk0Y0tyMkxT?= =?utf-8?B?RjZpaTZSd0lnUXpKU3d3VkJ2VEoxYzkxTUttejNOcTNaVC8rVG56TDM2MDF2?= =?utf-8?Q?c45E=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AMBPR06MB10365.eurprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WnZNNG1LWVg4R2VBbWtobkFlbm1KQWZXdTBRdnpKcml2a20zRloyRm1OK3Jh?= =?utf-8?B?K1VCUDdoYUNCSGRLUWlpRE9VbnVmOE5Cb0pNY2Z1MFB2RDhDcHJEeDU5SUps?= =?utf-8?B?WjVhaEZLemNWczhQVmZweEVHeXJkZDd4M1FJUUtKdXdQZTFqSTA2b3N5UEFo?= =?utf-8?B?b0hnQmdpYzRBbzF0eUFJY1M4TWFVK3NtSERIWXlEVUhjU2tmMXY0aDVoRnV4?= =?utf-8?B?cDZ5aGxXSTNtUXlxYVZFL3N6U2xJakx4cDgvSGZCWkRyMUY2RVpzWEFQZHFz?= =?utf-8?B?eVFpQk91S1pJQlNFUXZZVjJFQnNJUzNoOFpMSEQvYmtUWmJvaUJhRjdHOXpI?= =?utf-8?B?QVRpZGxSRmUrT0RmOHF5STZyYVhHSFBYN2lnYk1tejMzcXBUZnBpS25QRFh1?= =?utf-8?B?SmlFZEFGa1pTTjJsUWxIWGs0bHRlbWc2b0kvWTBBL3ZuMW41bnllaUpuOXFU?= =?utf-8?B?OCt1NDRyYUpwRnliU3FZSU52ZHpoSGhGajc5ZzdER1VRdm5HeEZ0NkN0SEZL?= =?utf-8?B?K3BpbW5CdHgxQ1hQL0UzOXphWnN5OUpCTnM0b2VqeXJvZ2xYNXlIUmQyYWZI?= =?utf-8?B?VUNSTks2eEJORHdYVDVjb3EwYUx1alJoOXNWUmFaU3Y1QlVFL3hTY2puUGR6?= =?utf-8?B?d0NiU0hjeURyZ0JzTllXc3BHT2ZkTWlRTmdLZ3VsWTEzMGkxT0tWN2Q1MXdx?= =?utf-8?B?YUlrcWpRT3U0MG10aHQ4eUFHenBJdlJIa2ZCUFFsUllMZlBCVWo4RUJNUjJu?= =?utf-8?B?dTJaOUovcEVPOXh5R0FmeWVsZTNBZzdXbUhydlIwRGNEVHlFRmVIOGVYZUpW?= =?utf-8?B?OUI0dHlRMUZxQjFOdEREcGZjU3V1Rm90UkFOTGwraWpGRGVwNWFXdFI5UkF1?= =?utf-8?B?STFTYldhRU9aSTF0cFJCVnRIS0tuanY5aUZWcEVUcXpKcDMyaVVwZHdmbWRa?= =?utf-8?B?R0JHQ0d1ZGpzblYyQWw0eXVuN3VkZTNYVDczVmxGOHVWbUpGRDR3NFJnV0g1?= =?utf-8?B?T1ZhWW1URGFicXlPVU1nTHRpTlNZWGhTZW90cHBucGV2Vk10RUhPOThyaS81?= =?utf-8?B?WHZnUG1kc2lSa0lydGpOOG5MQTRuTDVvVENZNEVDTklnaSs5UzdYYVZVT1Bl?= =?utf-8?B?WjROTGFqRzluS2dXUy82ejlodU1IcUxzbjdkemJ5VEhpaVI5ZU1FNkFiRUVB?= =?utf-8?B?NlFzOVRZSlErOTU2YzNTNzh1OWV3bXNVc1dET2p3NVZKY3ZjWHF4Z0RUTUU1?= =?utf-8?B?ZXZiV3VicmFJR2V2U1ZGU0FJZ2lPSWp0Y1RZZzFLZFlwcTVaNS95d3JZYW1C?= =?utf-8?B?VnVMdCtMRlJqakhnNDhRU1BHNEhVS0dZNUxMNlFIOTE1MC93dmJUWllEQis3?= =?utf-8?B?TjJsZklVaEF2aUIxSHNLMjlyNGlLMlNQNFN1YlBUdUFCdzF2c0dBZi84cnpx?= =?utf-8?B?UUp3Z1E0cmo2L0phZmZNRGZRN3NRbVNPOGsxUUF4R1dRZDF6N0s2SFN5Q0NB?= =?utf-8?B?SEpSTjVUSjdTT05aUjJhSjEySXhkazFXVElrN3dCNzhpUmJjUDZCUWFRYW0z?= =?utf-8?B?eHRnY1pXMHVoeHhyVnQvK1VzUlRPQkJiNmNpd25KOUhDdGJvUjRXU3VnMHJW?= =?utf-8?B?T2hhMEVIYXFBQWRwMnM1NjU1bWtjMlVxZmpnRGtySFVSQjJ2ZXNaS3VoY2RH?= =?utf-8?B?TDNUME12Tktha3l1dzlDMnoxZUtRZG04MnoyaGlqb2ZRUXl0OHd6MUYvWG5G?= =?utf-8?B?SzdGMTMveWNaaDlQZVhBcUp4REtweDNxWWsrd3VoM01lakJmOEVLa1pWVVda?= =?utf-8?B?UEg2dUxOTlFlTjVudFNpdStxbFN3bXVPUlk0V1hLYm5IL3lBSk0xNWdhcUJl?= =?utf-8?B?cnY5MWUrNkZJVkxQVFYrdzA0VGcrRGhFTmUxeWE2bExQeHpsYWFBclZNU0hZ?= =?utf-8?B?bDNyMGRHeXJac3Bpa2c1Q3NIL3VGaVB3c0xNRXJqTFpYdWZ4RHN6ZE9pMC81?= =?utf-8?B?c2hhYlp5K0dCcDhPWEl6QUpENHhXc2MxaC9ld08wVUpBcm8wRkZLcmozSUVK?= =?utf-8?B?WVROdVNkMkRSR2htRFNLT283aGZqYS9CN2NWY0FCdkd1QThCWi9hSkZ3K04z?= =?utf-8?B?Qm1Hd3NGejNmSHpZN1FpMzVyUGUyZkJURzRlaFYrci9NbXpyWUo5Q0UrcHo2?= =?utf-8?B?azVBUGtPQjdid0N1K2o3ZXJEbWoxZEdXMmtSMlFhMmNYbW5YTDZNT3Z6YjBr?= =?utf-8?B?T3pPclNUMHFsYmFxMEFPY205V2grY2VLYUdJOHJYQXhVUE1GQ0NWa1hIb2tR?= =?utf-8?B?YVFmNTdjUkFDT0J4cWtrYUV2bS9ZSzZFZ0pXaUJXaWptUjkxUHVDTUhVT0Nu?= =?utf-8?Q?oJ04iNlY61RZcXnA=3D?= X-OriginatorOrg: vaisala.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7ea4f5a5-9827-41bb-01ff-08de5fe05a17 X-MS-Exchange-CrossTenant-AuthSource: AMBPR06MB10365.eurprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jan 2026 09:17:12.2734 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 6d7393e0-41f5-4c2e-9b12-4c2be5da5c57 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /KDugUmaMp5MtSPEroqDvpujd6mj2XCE9vn8CTJZkuUEOOt6jVptORYUBPEwrhtajcUA9MAnRQLA+LWil2lpww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR06MB7361 Add capability checks for operation with backends that do not necessarily support full set of features, but are otherwise compatible with the device. This ensures a fully functional device, but with limited capabilities. Signed-off-by: Tomas Melin --- drivers/iio/adc/ad9467.c | 69 ++++++++++++++++++++++++++++++--------------= ---- 1 file changed, 43 insertions(+), 26 deletions(-) diff --git a/drivers/iio/adc/ad9467.c b/drivers/iio/adc/ad9467.c index 59c3fa3bcc9b..d768f7bf2a1c 100644 --- a/drivers/iio/adc/ad9467.c +++ b/drivers/iio/adc/ad9467.c @@ -913,7 +913,9 @@ static int __ad9467_update_clock(struct ad9467_state *s= t, long r_clk) return ret; =20 guard(mutex)(&st->lock); - return ad9467_calibrate(st); + if (iio_backend_has_caps(st->back, IIO_BACKEND_CAP_CALIBRATION)) + return ad9467_calibrate(st); + return 0; } =20 static int ad9467_write_raw(struct iio_dev *indio_dev, @@ -1119,12 +1121,15 @@ static ssize_t ad9467_chan_test_mode_read(struct fi= le *file, len =3D scnprintf(buf, sizeof(buf), "Running \"%s\" Test:\n\t", ad9467_test_modes[chan->mode]); =20 - ret =3D iio_backend_debugfs_print_chan_status(st->back, chan->idx, - buf + len, - sizeof(buf) - len); - if (ret < 0) - return ret; - len +=3D ret; + if (iio_backend_has_caps(st->back, IIO_BACKEND_CAP_CALIBRATION)) { + ret =3D iio_backend_debugfs_print_chan_status(st->back, + chan->idx, + buf + len, + sizeof(buf) - len); + if (ret < 0) + return ret; + len +=3D ret; + } } else if (chan->mode =3D=3D AN877_ADC_TESTMODE_OFF) { len =3D scnprintf(buf, sizeof(buf), "No test Running...\n"); } else { @@ -1188,16 +1193,19 @@ static ssize_t ad9467_chan_test_mode_write(struct f= ile *file, return ret; =20 /* some patterns have a backend matching monitoring block */ - if (mode =3D=3D AN877_ADC_TESTMODE_PN9_SEQ) { - ret =3D ad9467_backend_testmode_on(st, chan->idx, + if (iio_backend_has_caps(st->back, + IIO_BACKEND_CAP_CALIBRATION)) { + if (mode =3D=3D AN877_ADC_TESTMODE_PN9_SEQ) { + ret =3D ad9467_backend_testmode_on(st, chan->idx, IIO_BACKEND_ADI_PRBS_9A); - if (ret) - return ret; - } else if (mode =3D=3D AN877_ADC_TESTMODE_PN23_SEQ) { - ret =3D ad9467_backend_testmode_on(st, chan->idx, + if (ret) + return ret; + } else if (mode =3D=3D AN877_ADC_TESTMODE_PN23_SEQ) { + ret =3D ad9467_backend_testmode_on(st, chan->idx, IIO_BACKEND_ADI_PRBS_23A); - if (ret) - return ret; + if (ret) + return ret; + } } } =20 @@ -1263,8 +1271,10 @@ static void ad9467_debugfs_init(struct iio_dev *indi= o_dev) if (!st->chan_test) return; =20 - debugfs_create_file("calibration_table_dump", 0400, d, st, - &ad9467_calib_table_fops); + if (iio_backend_has_caps(st->back, IIO_BACKEND_CAP_CALIBRATION)) { + debugfs_create_file("calibration_table_dump", 0400, d, st, + &ad9467_calib_table_fops); + } =20 for (chan =3D 0; chan < st->info->num_channels; chan++) { snprintf(attr_name, sizeof(attr_name), "in_voltage%u_test_mode", @@ -1339,17 +1349,24 @@ static int ad9467_probe(struct spi_device *spi) if (ret) return ret; =20 - ret =3D devm_iio_backend_request_buffer(&spi->dev, st->back, indio_dev); - if (ret) - return ret; + if (iio_backend_has_caps(st->back, IIO_BACKEND_CAP_BUFFERING)) { + ret =3D devm_iio_backend_request_buffer(&spi->dev, st->back, + indio_dev); + if (ret) + return ret; + } =20 - ret =3D devm_iio_backend_enable(&spi->dev, st->back); - if (ret) - return ret; + if (!iio_backend_has_caps(st->back, IIO_BACKEND_CAP_ALWAYS_ON)) { + ret =3D devm_iio_backend_enable(&spi->dev, st->back); + if (ret) + return ret; + } =20 - ret =3D ad9467_calibrate(st); - if (ret) - return ret; + if (iio_backend_has_caps(st->back, IIO_BACKEND_CAP_CALIBRATION)) { + ret =3D ad9467_calibrate(st); + if (ret) + return ret; + } =20 ret =3D devm_iio_device_register(&spi->dev, indio_dev); if (ret) --=20 2.47.3