From nobody Tue Apr 7 13:09:46 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (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 AE40938AC7D for ; Fri, 13 Mar 2026 10:05:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773396312; cv=none; b=ODvFZFtinmZqcn8DjG3dY+qHh350VWAtx39Or2uGbtdnOqfxlK2blCSkihhB9RylMeLUm98qblS2J0SqUxO5M5b3rzyz16bUxDkp2YOQc8NkiofMS6kDp/9vkgqTSIMcPJlkdrnpKtNUKzeL7uFFnhs3OAtGMNM3O7RIzxA4sNk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773396312; c=relaxed/simple; bh=2H/1PFCqce2Xc0BdSQcrz9YOQGrzzMShT6CN+886Z4o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=srlIGBxSZxkQxT3KnwWL0A9M1/forD61ZlVu0BTP2fJHkXhtj3jqoEw1sMA6n7Kpmk7nFyX1NOYWs6gt7rmy5Y8bJoWGNyrBoVfTSPVi9zrVPR1moSj5VTiRSZF0PHlEPapIHS1limQ4G7QPtiNUny4FjFGnKB4muSQualnIbEE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=BKUeixkR; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=U9hKDCwI; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="BKUeixkR"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="U9hKDCwI" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62D6oJeN792849 for ; Fri, 13 Mar 2026 10:05:07 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= eprOg/UR9ReViWGeSY9AvMEXF6GXDgc7oCGfK4+GfTg=; b=BKUeixkRI/jdgOWY f9F7KO17d7awMfyco5yUXubg64aeP+mL+VulOjx2lCcL0ylsL+FhV68rzD4iGDKM rEybHejOBsCsHl1Wao/Uh3mrPQqUjUVsTeZZzXI9Fqi5OpPgDsuYy60Do4nCX+JO fChPMorM9hMSgWKustAKf8Ry4GO48Um9AJdtvu3psnTUIq/JMNRteXBhhOzwbJqc pl2Uhpn0L9FLq4oDdFIBa3l8J96LEX8qKNUq/OabXw4RgMxFDF5GE0MHV2ZfcVLB qxplRHE/0aAZbu3VJnaawZCbnrNNgFyeQi1CZO2018YAY24LKR2AFI21snGx9MbZ 5AMAGg== Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cvdnt0qbx-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 13 Mar 2026 10:05:06 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-8cb52a9c0eeso1942762085a.2 for ; Fri, 13 Mar 2026 03:05:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773396306; x=1774001106; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=eprOg/UR9ReViWGeSY9AvMEXF6GXDgc7oCGfK4+GfTg=; b=U9hKDCwI3/9QUK6nEaoxO9lXqAyj9Dr+VULXnKEt14s0BQpYtTg8qWiZbrIkaNqjck FTqDHPI+cJLfd9Lr5qJSVpi6NN3Fp8BN96mjGVrPau4UDm+/b8yaRLktXtW304ej2NpG DAjmT09Pu1RmHtKg6/MqWdqmEf0YeEltGKPUVF4r/2aBgfmzxcZ2g4kZ69vKFJOsXCPY GcEstSdJRabrXwdM1YwpqRxZKpFhd50o7WL2jjOGqW7OGCZ7nAhLFm//JjYbzB/bu5Dl kctkXFLdRXQOt7bh4QUMWiQDUzANiQ2LPpr0mm5Ak6DTdjY/cKJ6/GxzPGC6K+0lb0t4 62aQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773396306; x=1774001106; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=eprOg/UR9ReViWGeSY9AvMEXF6GXDgc7oCGfK4+GfTg=; b=NM6y0pK34hC26Fhx5ur2EUtTgWUuGLeTzi5yQSKws+5+Hw11rq3rGQg38+tex6kwNy jhn1z6FaJ1ZICNFNWmHVqVZsdRzuq+W2bL80glI52suaw9Ziatwnn6vUtvWtmDJ0yKib vjaFa2nFncfY/m60VRL/o/4S6+eeqmJ28J8J0A+0/UqJ9oV8X0rbuhTC/tVncf4YNIm3 vYpaRwG1ZhGTh1vE0nWkbQx0VEEdviAw9kyGLVLPtxbj/4G8HtomXme6ZjrDj+nnSAu4 k+GhyhzNB0QO/zlGhR5mdDgdIQA1cGuR9f7fbh0QdqfVfu3Qf7Qi10drgx2jW4qO16ZV 6yjg== X-Gm-Message-State: AOJu0YxGFFogX+YkLomPEctxPmrjsDxqJltZ/+RUe0VGLemwG9DER6rn fKruWzTH3ll1uxpGhfXmWwh9fQhbOyQIzPjJmLDASyUYbKmjzge4xnCCaQPGiZ8C06k7zkK1YeO kMY7ulIcQ91PzXoaI1fZvhxwDy2Au+eWePBqRvJe4+cLJphmA3LcBOV0HLk2r0QSS2POVwU8Z4Q I= X-Gm-Gg: ATEYQzxMD0zSuFIiM7aNUtDZ9evU3WY1M8ffyPVrqe9Eul4eQrbF56sDd2R7kHqI4E0 I4hUgTcFDjh2r90vvToP1c3h8zTuLRDC2kZRWwBimXWFRCMturd2ZZkYUMIIFuZEiRHF8xCT7CW BA4ZBHLKHURQKi4nduhTrxXsDtMYVZLbSd0kKnAzTGIi5vLZa7YtH5QsRw2epmQyvkjsrxXYpri BRjIGa9XFxybhyaHIMgn7hqhC9dK9oE8MKg7eKTgPwEWCF/m3NRXMkJbfPdFqdJeC9Ubup4u/67 Yx7JEBXhy4r6O8WANbtxgpb0Cz/HUvIA2ii82W3c9/G/7Q2tfeSzg3O9c6j6iWl+3ON8IKZ9Knn t0rmRr3nrsIxnSaOdl+eO9RZ2omSC6jy528OZou7DxTkW6hkN7SJZ X-Received: by 2002:a05:620a:7112:b0:8cd:9863:331f with SMTP id af79cd13be357-8cdb57b8b57mr358644285a.0.1773396305692; Fri, 13 Mar 2026 03:05:05 -0700 (PDT) X-Received: by 2002:a05:620a:7112:b0:8cd:9863:331f with SMTP id af79cd13be357-8cdb57b8b57mr358637985a.0.1773396305184; Fri, 13 Mar 2026 03:05:05 -0700 (PDT) Received: from brgl-qcom.local ([2a01:cb1d:dc:7e00:840f:d4e5:5fc0:62f6]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4854b5e9179sm194215785e9.3.2026.03.13.03.05.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 03:05:04 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 13 Mar 2026 11:04:49 +0100 Subject: [PATCH 2/3] gpio: timberdale: use device properties Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260313-gpio-timberdale-swnode-v1-2-4df2e9b1dab5@oss.qualcomm.com> References: <20260313-gpio-timberdale-swnode-v1-0-4df2e9b1dab5@oss.qualcomm.com> In-Reply-To: <20260313-gpio-timberdale-swnode-v1-0-4df2e9b1dab5@oss.qualcomm.com> To: Lee Jones , Linus Walleij , Andy Shevchenko , Bartosz Golaszewski Cc: linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2846; i=bartosz.golaszewski@oss.qualcomm.com; h=from:subject:message-id; bh=2H/1PFCqce2Xc0BdSQcrz9YOQGrzzMShT6CN+886Z4o=; b=owEBbQKS/ZANAwAKAQWdLsv/NoTDAcsmYgBps+FK/DrHLzf4SpuCn7AFf9L2uyntuMgxeGcPb QiOhXb7HkiJAjMEAAEKAB0WIQSR5RMt5bVGHXuiZfwFnS7L/zaEwwUCabPhSgAKCRAFnS7L/zaE w9hOEACD/w1qlTNSr01kijxvOLKZ2v/BXSSTvApttF+SKKAsmhwuPH2NMXG0eHnXnioXw40Q4Rl 1hSnJTDVUAFFvoh3NFau19xlkBQKN25i3oRBsIPAAbOWFqCEWtJOpIE6bFg6J91NKq0sFrZ6ZD8 za1wCrbqSAh+lzFKnvbfgEuP9poZ646UVw4HM2iT6cXJ3Il8Zu8/f6bWLhVFq959xCJlqVi9eBS 4pwfxh3Yl8Hgkj5IxsZAheSsey0Rhokc7HaAVZp/Fi88LIJthJKwnhmAOL4phRtkee0AaUTZXPc 8VtxdFq6b/2QrC6f94UYPONq2d7ct0F+C4Kj/R6+fo1aQ7is85M+l2BEsAtxBmzsdGtom1DhxFe z+kKVn868TadZ638/Hkm0kHLqbeQAM9+6AInWw8WYYXdl6ALsBYmArp6iB+iz1HbVz4iEVHuEyl U6zjuoPKhn+bUa9WSzOR74zs7eyDf8d675gyXO7hLETUpA7xaqsOggTVYNChYDr6dQW0TBmlK5Z w7CCyUrMEDfFbu9OvL8paWMQMoriObvqQ63nDTSI8zvtPLs1r6zYciST3T79+uAtjfONtC1EnKv ZrFkt23xpKqZ7Ci28ivQaNO0LFq6lFt/7rFb95RqV03i2Z4KsZJBn4lhC59co8ifTD5SmtOjoW4 pq3OmDlZdPr/4Tg== X-Developer-Key: i=bartosz.golaszewski@oss.qualcomm.com; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 X-Authority-Analysis: v=2.4 cv=KZrfcAYD c=1 sm=1 tr=0 ts=69b3e152 cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=Um2Pa8k9VHT-vaBCBUpS:22 a=EUspDBNiAAAA:8 a=8x3tX-5dUG4wHQunnKcA:9 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O:22 X-Proofpoint-GUID: W6aE5ZHlKWFDIqqghxk5wVLPwdfFMuRa X-Proofpoint-ORIG-GUID: W6aE5ZHlKWFDIqqghxk5wVLPwdfFMuRa X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEzMDA3NSBTYWx0ZWRfX/hVJxQIAhIBe OGxeeQj2hSedIjhcltTAspUNHPUfU9TDsHh6NIG53QIDeCYczxTNCj8+KAKCNOu3hFfudaSZvkH Mru8o6UQJ7hDQ+wyZ8h1MNbTobokygqgO0h7JZWiTGaI3goqU6mjsaSBRVes6FC5wHEO24Xizle QoyZwlyWg/NWsHSpVqgo7e0Gwnmtz8oX3SBG2aCXSnnGBYN5MioPV2qJOVW329Hmp+aUzdxsM19 UfUlvgo2F5Ouvmwi+ZBmQ/aOm0+I1VAv1Q8Jq+U4V20qhAZeWauWH4jq7+fP3Im5pk8kkmuH5fX 3pTVan7NRzuj7EQIYISMT6V+CVyuTSWd2l/cReN6fhioDw16wfNOsmMrYnjrczHG/edKWI9Dk3X auZdRa9V7pTrCP/bRXQSVIJ5lOSJYQuaH9hPCVTVthYNNA0qXUZb6NmfRBF8C3MwsdtKD/rGweQ XQxku6gCCGa4cFCbrAg== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-13_01,2026-03-12_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 spamscore=0 lowpriorityscore=0 priorityscore=1501 bulkscore=0 malwarescore=0 impostorscore=0 adultscore=0 clxscore=1015 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603130075 The top-level MFD driver now passes the device properties to the GPIO cell via the software node. Use generic device property accessors and stop using platform data. We can ignore the "ngpios" property here now as it will be retrieved internally by GPIO core. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/gpio-timberdale.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/drivers/gpio/gpio-timberdale.c b/drivers/gpio/gpio-timberdale.c index f488939dd00a8a7f332d3af27962a38a3b7e6ecf..7c34ea8a0ececf9432dbb16881e= b53ee95d58441 100644 --- a/drivers/gpio/gpio-timberdale.c +++ b/drivers/gpio/gpio-timberdale.c @@ -14,7 +14,6 @@ #include #include #include -#include #include #include =20 @@ -225,19 +224,21 @@ static int timbgpio_probe(struct platform_device *pde= v) struct device *dev =3D &pdev->dev; struct gpio_chip *gc; struct timbgpio *tgpio; - struct timbgpio_platform_data *pdata =3D dev_get_platdata(&pdev->dev); int irq =3D platform_get_irq(pdev, 0); =20 - if (!pdata || pdata->nr_pins > 32) { - dev_err(dev, "Invalid platform data\n"); - return -EINVAL; - } - tgpio =3D devm_kzalloc(dev, sizeof(*tgpio), GFP_KERNEL); if (!tgpio) return -EINVAL; =20 - tgpio->irq_base =3D pdata->irq_base; + gc =3D &tgpio->gpio; + + err =3D device_property_read_u32(dev, "intel,irq-base", &tgpio->irq_base); + if (err) + return err; + + err =3D device_property_read_u32(dev, "intel,gpio-base", &gc->base); + if (err) + return err; =20 spin_lock_init(&tgpio->lock); =20 @@ -245,8 +246,6 @@ static int timbgpio_probe(struct platform_device *pdev) if (IS_ERR(tgpio->membase)) return PTR_ERR(tgpio->membase); =20 - gc =3D &tgpio->gpio; - gc->label =3D dev_name(&pdev->dev); gc->owner =3D THIS_MODULE; gc->parent =3D &pdev->dev; @@ -256,21 +255,22 @@ static int timbgpio_probe(struct platform_device *pde= v) gc->set =3D timbgpio_gpio_set; gc->to_irq =3D (irq >=3D 0 && tgpio->irq_base > 0) ? timbgpio_to_irq : NU= LL; gc->dbg_show =3D NULL; - gc->base =3D pdata->gpio_base; - gc->ngpio =3D pdata->nr_pins; gc->can_sleep =3D false; =20 err =3D devm_gpiochip_add_data(&pdev->dev, gc, tgpio); if (err) return err; =20 + if (gc->ngpio > 32) + return dev_err_probe(dev, -EINVAL, "Invalid number of pins\n"); + /* make sure to disable interrupts */ iowrite32(0x0, tgpio->membase + TGPIO_IER); =20 if (irq < 0 || tgpio->irq_base <=3D 0) return 0; =20 - for (i =3D 0; i < pdata->nr_pins; i++) { + for (i =3D 0; i < gc->ngpio; i++) { irq_set_chip_and_handler(tgpio->irq_base + i, &timbgpio_irqchip, handle_simple_irq); irq_set_chip_data(tgpio->irq_base + i, tgpio); --=20 2.47.3