From nobody Sat Jul 25 18:53:15 2026 Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2C2E9423EAF for ; Tue, 14 Jul 2026 23:43:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784072635; cv=none; b=IdAUSPLVysZK16KtT6iplXeRZQoOc9qP2Xscz3qmPJonaKa9gLg3dLMLdcRejFk3P0Zd75tXaPWcCX4fIvS9NA6K8OC3UqxQRzsuXr5YfKwMojrB4KQ2MLbFXhf0LLV26adX3WDtp4MtzWKX+we3wUkh/01Gkvofviu1tZDacyc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784072635; c=relaxed/simple; bh=dCf0Q6aJ8SY9P7WKfIBXY0C/UqKkj+m9dxP4ipo7Dn8=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=seQM7iTyD5DZ4iv85HjAg/5EQb23vrDTZ2q0664FxCRpk16PO4cmC3VMBEepNPnsKbCBL8M6l8fADY193Q76cfexkPqVhAIim64gfnKVf0O8lFIivNwna6gq/ZmhGaG12KKErp2BU0L2058lVVzeh8eyTmFE3ctBWr21nQIMIro= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=HyuFuCSV; arc=none smtp.client-ip=209.85.214.169 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="HyuFuCSV" Received: by mail-pl1-f169.google.com with SMTP id d9443c01a7336-2ceae1ed204so19164705ad.0 for ; Tue, 14 Jul 2026 16:43:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784072633; x=1784677433; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=jEOOTsn4hC/InOasCmFmuOAff9CBOfHb3eXMINdEwFM=; b=HyuFuCSVFAwOqeYkk8MjNzXt9wl+Bw81x/9oqivO/x98LGM9+LChi2fizxuBwaROoP KtmLsWXa++3j7JGYOvtbErgY/oZVeZxGvw0qdgNJxmbAxpMbbmO/KOit1hKkYNvKnt/R QcpocLXCgAZ3cPJob9Jl4rR9Ly8T1w2kQ1IQ+V1tezCxPlGsnpuSa63qiRNNyNXbSL3W zesBBPrz6y4DMl/ib8V48t9p01IxDIxSQSL0Z4m7pqpGDumYtHSqDMv8wFnQAYObY6DA G79cakwxy4Wj6qFTG94NGZlVZhhBDPcHWM4VD5o/kIIbNQrRvJYCTIO07b/3K7Ujervb q3pA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784072633; x=1784677433; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=jEOOTsn4hC/InOasCmFmuOAff9CBOfHb3eXMINdEwFM=; b=S3FjEapYX1onI1yQP1QOui+P4Vx2vogn4GmvJ/98K24fsYKFUjg+I5D2QrmnKqnjzT 9kw5EbRjohoJkasjSq7q8vvpeHw4kGmm+QGM7r+lAaPfjFVBj6BOweaB5vD8KIFGodiN 1ORCZlIvQwCh+nb4ZsrbzDowmcleAxjoY776fcT09jRcucejhS26+QZuNoJfw383JUWW 87Dvy9nzXebsLem12HSKo/tH2f9IkzurRBVF080VVxj7ev3AsO1UvAWXPJLgDhawvJJY M6p0ZMN4wvHOGpf+WcdWZHefr7lZZRF9cwSb0N2B1ehl3cB/cqNLsoCskjjnqgqpTSiK VYgw== X-Forwarded-Encrypted: i=1; AHgh+RrT3UoshPkSpspD45/9Zx1oD9uEtj5VTAKzW4d5SR0ZwPOHGl4PVyide5ZLNd7OQr8i5PlXVGtVHBO8cSs=@vger.kernel.org X-Gm-Message-State: AOJu0Yx/MMntE4EkVo1ijttg3F853Jni0Km+NE28ICmiU1sWyiPQI5JG WghCorQMYUlNy51qxh+bIuNObgc47Vf0XjC2uJeA9LYqtgPUbsF6oUr4 X-Gm-Gg: AfdE7clvcDCFI28+Z0xDvKKS6NVpWuGbNkSk105T4QtG+abaUk7t/NGIRxd6TML+qEp 9mZLp9K3+0Ta/tMZUZrsqeWdYbUU1KCE7PTkcZ+4iLr7NUt5WWibh4HDeebw5OKpBpZF+O5GRpm gjh0PXGeT8zwxrXb3DzmSMQH6COImbrR/hjXSHZSogu3yo+l6JmQoyzFwpcNLmrHKHZ7mw+kQ9A E9fSSP5DVM/zSpHlOY2SyaHhhsMB6Y2Q7MX6C1PRhRT0EtcYy1Iwd5XDIwxN4dLHHENwoi2N1Pn C0ngNdbtN6DC5cODKriYStanBP2AEzf8a9mjPvcfe1uLHhLc4d5ExW7ovLlH9hPWrrB6GzopNqR USTaz1FMPjJkV3uFmRc0AIu6Nc7vpH8esm4AfylYF2DnQ6IQyzxFw6AxZSJV5QM6gr36sJY4K8U CehjuwzRh/Mp3pEGREE4hSXEQSZIgPHuXyuVSjfMA+/NSXwB6xMPzErNQvBP5l80q56Vq0SqIOc U0FXpGZRwNovcn0INk+RIwSguXwuvdz1zFBGvtEauhLl8mpGYk61ZbTQ+RWp36f1Q== X-Received: by 2002:a17:903:32cc:b0:2c9:854c:a45c with SMTP id d9443c01a7336-2ce9f02bb90mr154625965ad.34.1784072633341; Tue, 14 Jul 2026 16:43:53 -0700 (PDT) Received: from ryzen.lan ([2601:644:8000:7a86::e34]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ccc9c25fccsm122539085ad.35.2026.07.14.16.43.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Jul 2026 16:43:52 -0700 (PDT) From: Rosen Penev To: linux-iio@vger.kernel.org Cc: Patrick Havelange , William Breathitt Gray , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , linux-kernel@vger.kernel.org (open list), llvm@lists.linux.dev (open list:CLANG/LLVM BUILD SUPPORT:Keyword:\b(?i:clang|llvm)\b) Subject: [PATCH] counter: ftm-quaddec: use devm_platform_ioremap_resource Date: Tue, 14 Jul 2026 16:43:50 -0700 Message-ID: <20260714234350.892367-1-rosenp@gmail.com> X-Mailer: git-send-email 2.55.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace the open-coded platform_get_resource() plus devm_ioremap() sequence with devm_platform_ioremap_resource(), which fetches the resource, requests the region and maps it in one call. Switch the error check to IS_ERR()/PTR_ERR() and drop the now-unused struct resource pointer. The DT nodes (counter@29d0000 / counter@29e0000 in ls1021a.dtsi) each have a single 0x10000 reg region, so the region reservation added by devm_ioremap_resource() is exclusive and does not introduce overlap failures. Built for ARM (drivers/counter/ftm-quaddec.o) with LLVM=3D1. Assisted-by: opencode:hy3-free Signed-off-by: Rosen Penev --- drivers/counter/ftm-quaddec.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/drivers/counter/ftm-quaddec.c b/drivers/counter/ftm-quaddec.c index 8455f16d62cb..ed93f3621d2a 100644 --- a/drivers/counter/ftm-quaddec.c +++ b/drivers/counter/ftm-quaddec.c @@ -262,28 +262,22 @@ static int ftm_quaddec_probe(struct platform_device *= pdev) struct ftm_quaddec *ftm; =20 struct device_node *node =3D pdev->dev.of_node; - struct resource *io; + void __iomem *ftm_base; int ret; =20 + ftm_base =3D devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(ftm_base)) + return PTR_ERR(ftm_base); + counter =3D devm_counter_alloc(&pdev->dev, sizeof(*ftm)); if (!counter) return -ENOMEM; ftm =3D counter_priv(counter); =20 - io =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); - if (!io) { - dev_err(&pdev->dev, "Failed to get memory region\n"); - return -ENODEV; - } - ftm->pdev =3D pdev; ftm->big_endian =3D of_property_read_bool(node, "big-endian"); - ftm->ftm_base =3D devm_ioremap(&pdev->dev, io->start, resource_size(io)); + ftm->ftm_base =3D ftm_base; =20 - if (!ftm->ftm_base) { - dev_err(&pdev->dev, "Failed to map memory region\n"); - return -EINVAL; - } counter->name =3D dev_name(&pdev->dev); counter->parent =3D &pdev->dev; counter->ops =3D &ftm_quaddec_cnt_ops; --=20 2.55.0