From nobody Mon Jun 8 07:29:46 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.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 D245539A815 for ; Wed, 3 Jun 2026 08:26:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780475199; cv=none; b=TcBjAaH4plda1A9fb8jNwXwpmE1oCpJsrlROhjnKz2hQjGAbG947GN42oK4AnuTc+oFZ2SdsY9in7a5ZAXnCABEcwV5zooP0jp7GPgkmXZocM/1GSfMb/7UAfCxCwXryErnFDcLUFfT+EfXIMA+3kYA4N4ElQaT8USABcz4TULU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780475199; c=relaxed/simple; bh=eTMsESb02191VBWAM3gdYrq7DArj7WqJXG0UaTF3UHk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=nHy35GNX7lEpn7N5FzKSttmQY1q5ZBNfNZc0OtJwf69uUwpRI/dUyo0IVQp+zfRmkJo4Q0i6z5ZQvqD8oNchSKmYLMPXbPEIQ1W7J5NZceoK0u6CfJRcidmbw0ynN4CbZ8SRpAFz1mctB+rPkANBKVh60Zchr6Lhmk3NEKBOXLw= 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=QvFGzEIj; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=hM6K0mVL; arc=none smtp.client-ip=205.220.180.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="QvFGzEIj"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="hM6K0mVL" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6537Exdv1956521 for ; Wed, 3 Jun 2026 08:26:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=e7muuFyxXzcqXgmNJOoai7 dMFzqfIvKUobcfRRnVGpI=; b=QvFGzEIjGuPGW6Bw5JOj4FXhVQLeJRWUVfzasG soo45BgOozeAPPusy3EdwWNSJG0AVFbbXR797Rb0x1qHMX5RZlxl3Z4lmHMP7vQK zLE9q+UsE1HZr3ha5I50tYVQWIwNbFwoGocHhIC59kJ5WG82bmselvDrCdeg/tg0 vXOvc5gNV8mi4UtKpKI+OXwmC+3O8VExV/cPuUutR3WYMYo9pq2cKtP5TsWOMo4P 2CnkqWQwErS5c24Hf/RMZ9+O76G1FO1FJ6PJNRLaPulfGfgoWSkDPyPKqLebx5R3 +Mu9ogUsAQjppsUX27q0wMK6yxd2oaJlUv+IBWg/14z5mHGg== Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ejfqc0970-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 03 Jun 2026 08:26:36 +0000 (GMT) Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-5174d1b326eso9848341cf.3 for ; Wed, 03 Jun 2026 01:26:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780475196; x=1781079996; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:from:to:cc:subject:date:message-id:reply-to; bh=e7muuFyxXzcqXgmNJOoai7dMFzqfIvKUobcfRRnVGpI=; b=hM6K0mVLOMT/ApTMwDRf2CYhd/Bqwc4d/Choibi7rgdpK1MOKI4OMk7A84xk1Yg5gF +m9F1jWdaEFnvuEnGQMdxBosq2QhO+uFhr4yImvHjS9UOroGH4nWqi2tgWxCvi4awKfA PDVyEoy/YUhMUWzjgKwB6Adj0YYfZ/klBvob9ZMCzmmbLzbJBD4DVWCubYWfURkpWGx/ 20V6m329Gm65givBuilkSMbmZXoI4xdWu4RPOci2mOavpFRtUbUUNxNVnjDvRsXnjJ1z q1JwSm5Z/onUGhgoGE6Gnd1/d+hy/0wpOgzrIZAKLSPCsT4dbmPJKp/lEifomnCwLBXL W8yg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780475196; x=1781079996; h=cc:to: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=e7muuFyxXzcqXgmNJOoai7dMFzqfIvKUobcfRRnVGpI=; b=E54AUwf/nsKt4MzPU1gRkdB7UKrbJlEdfPEPuvvbMUCM6BpbZJbesV6kpEDcfaWAAu gYeDNlCbcp/Q/PB/24o2rts89Ab14P/ktF/8xZTHR9Tn0zWQBmNpjrN2F9Jjdi1x2t2b 86wwlS2McQlb7/fk2psgM7ZHVg7zlQhamji8EqzvZNEPytpDY75llt1rTptEqqyhMp8q U7o4jZMUZtHi4pKlbSajT+FaLAnwWGwdWHeeYCQa/ttsjCWzS/aEnLB5ZdrW8yFbZcJr NMdYcOWwlmnt74cr+7gVD+xpTdoeUD5NBbrRrcbXYmmBSTlDHX9AJN96ur/rGgy2J5MC CVQQ== X-Forwarded-Encrypted: i=1; AFNElJ/Yvt0Z/xX9BsJwyCAksyfkLf7d2bImiU7fxwnX4fWh4dRlr61PF4juOiDLlo07CjGvEP59TL81Vj1SG+I=@vger.kernel.org X-Gm-Message-State: AOJu0YyjBrdbG3dR715wKIFaQGWi4ObcLPvuVQa0NnzmadV9GTLjBEoK Z2/a+bQSeYVQKmiLfzLiPKCOKgvk3MKXhVvI49iEB/gSvsOLqPciZraD7U+hmpryyccLtqVf5Qu nxOAxhDYBbGwsL2Km302da2Fo5+GBFGB/UbttLbT18d9bb/5/sFUvt1EF98WP4z083KY= X-Gm-Gg: Acq92OHvp5sAnZl56D16cagM0B8gTsHno4XCiloumBiAnSeKQAOvq6Rc1pt8Kdy4MK1 uE53oiR5TnUmzOROtZEdhw6biLEd0nAb6be+wKZdwIX2jzL9wGbg/dsWbUwASyFKR9V9o1dW5V9 kl0Qie0ZFuQv+ACyjX1TDw0cIhEWXTohV3QR6GSYeHZtxzf9rSKnekcMcnIDajO5JPsyBUKk4WN ZYGfw9XD6d+KaCBig+HretzrazZWZgketuDElRLbsQS+MhhQ5ypZ1jR2qUoy3de6UDPQTKqYTk2 k1mt0TcbnFYXVFZzqtC4zFsTuNs9SfykrTjyuW8bK7Fy1xJmdvSeoZ/K7BLXbAhLY9VXqN/kREX FsWWJNrMs0qxC3ollAgxK+0FHnIqYHIIqfB3cUD8T4HPMXjRg4KHLMwdjTX9yLo2AJO77RoNk/4 GB7hGY1Ipg3Aw= X-Received: by 2002:ac8:5511:0:b0:517:7188:c47a with SMTP id d75a77b69052e-51778606842mr26226441cf.2.1780475196233; Wed, 03 Jun 2026 01:26:36 -0700 (PDT) X-Received: by 2002:ac8:5511:0:b0:517:7188:c47a with SMTP id d75a77b69052e-51778606842mr26226301cf.2.1780475195867; Wed, 03 Jun 2026 01:26:35 -0700 (PDT) Received: from brgl-qcom.local (206.107.204.77.rev.sfr.net. [77.204.107.206]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-490b0e20bacsm117036575e9.6.2026.06.03.01.26.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Jun 2026 01:26:35 -0700 (PDT) From: Bartosz Golaszewski Date: Wed, 03 Jun 2026 10:26:26 +0200 Subject: [PATCH RFT] powerpc/8xx: implement get_direction() in cpm1 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: <20260603-powerpc-8xx-cpm1-get-dir-v1-1-2ae1c9a5b992@oss.qualcomm.com> X-B4-Tracking: v=1; b=H4sIADHlH2oC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDIzMDMwNj3YL88tSigmRdi4oK3eSCXEPd9NQS3ZTMIl0zS4vk1LRUSyMzE3M loPaCotS0zAqw0dFKQW4hSrG1tQD1+bzfbwAAAA== X-Change-ID: 20260603-powerpc-8xx-cpm1-get-dir-698cefe92647 To: "Christophe Leroy (CS GROUP)" , Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Linus Walleij , Dmitry Torokhov Cc: brgl@kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2897; i=bartosz.golaszewski@oss.qualcomm.com; h=from:subject:message-id; bh=eTMsESb02191VBWAM3gdYrq7DArj7WqJXG0UaTF3UHk=; b=owEBbQKS/ZANAwAKAQWdLsv/NoTDAcsmYgBqH+U0cpm99RL77fqJl2Zh2p2iYRyx1qLUn9F/a uBbBTVY4QGJAjMEAAEKAB0WIQSR5RMt5bVGHXuiZfwFnS7L/zaEwwUCah/lNAAKCRAFnS7L/zaE wzEmD/901JUDy822gDnXxa3+xDHSz3iK5cA2S+i8lULkT81mGB3JDvrpH0EJOp+0Yrm+2RGMomt g6z5jVjzpAjuEEzzHHdaVrHw3sLlEyzrEl3v2DL3kGIbb3pL1HiIqURTjYymsgqIXk8Y1a3NBck EVx2cyXnxLp9YYIP0dLn93e3kvpbyFfUiiZMM1ZuzJ1pm+paANFTrUKFysHHHHigTNB83AjrV42 LPDm+g+5dHqDAQ3mSKo4D9MbFRH7yzRWk2rM1ca3HSWrjkcEEzey2ObShUvbAcRhoMfXOMK4MyQ mhoB1AOv79/5U6g3GzB3ymZkJ3fsi/hA1682MUoAwf70R+1SAY5zr66qqySdq6nVClnZqw4LiX2 ib7fxfPgnqhsBhcy9njBDyv3A0n63qr8db9ZOhpHtD3uzzTQNCJsXz7q5l5vGNZroXC2i0WdjqL VNVCdYlYTNB3pv9i3Fe7HBdcUYxTIy5vkOVTjVNRGaF4Pd8LeUq41+TqkPChJEqO2q4xfR1dazk hjTj5dVZj1yXKvkmPnhdlWBDln+8oMb80vM97h1sUA1xEOGmqJdcq5LWyFnGrKDomR5Kd+FyHJw 4pIcDNNvV4BkEfDbKSvTNfkJP9uLwFWQ4v4+LtzVb5wdAYCFi17kBhX9UPW4Of6PbC55fnVRaS+ +OV1J0lYmYDbFvw== X-Developer-Key: i=bartosz.golaszewski@oss.qualcomm.com; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 X-Proofpoint-GUID: HYxEvoS8VhtYjLSyJIErztUHezbRxKX8 X-Proofpoint-ORIG-GUID: HYxEvoS8VhtYjLSyJIErztUHezbRxKX8 X-Authority-Analysis: v=2.4 cv=e602j6p/ c=1 sm=1 tr=0 ts=6a1fe53c cx=c_pps a=mPf7EqFMSY9/WdsSgAYMbA==:117 a=KBhjw7w+/BNUhOyiMSe1Cw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=IQRRjYDBaVz1tQnfht8A:9 a=QEXdDO2ut3YA:10 a=dawVfQjAaf238kedN5IG:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjAzMDA4MCBTYWx0ZWRfX6H0UUDqdML+i KCpWIM44H2gG1HT4A3lmOp857S65obcV849oJ5PibKb/ZqlChVQj1Xf8HR+MkYnhSsYcLp8Cyvz LaQUzl2dlFy65axFvqtsxffXJxrjs85iTWdyWZZ8Ww9Ny0Zfx/jnOoFxdEMw+dzFQSP0t0zBgpk hMaALCSYExnlzzPXeni4iTXLqjmI5G9XZKRxshMIORKIp7pGdnkxEt3GZ3ihtNXjQcvc01vQ5MW nptUHb46pkrzlQ7WYXk46rM1UZz+JdPhlzSlSQdsDXxbFHfXVZWDYYcsjFzvdIqWfib/C/kajP6 w/F6KfkRciO3D/goW0zMzv8X01O1JThOjVCdPQ2m39n4VrO1fw89NvEoOWHuPGYf25Kw7NSRIbE oX9d55wGNQ+w6xKzl2Tz4lea8Sjts7P4V90hK78DCc960jTUCCKFKaVzrmQ05CH7y1V13WNTVlV UVtVckVF3Ywe7Lf9Oww== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-03_03,2026-05-28_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 priorityscore=1501 clxscore=1015 suspectscore=0 adultscore=0 impostorscore=0 phishscore=0 lowpriorityscore=0 bulkscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606030080 The lack of get_direction() callbacks in this driver causes GPIOLIB to emit a warning. Implement them for 16- and 32-bit variants. Reported-by: Christophe Leroy Closes: https://lore.kernel.org/all/63487206f6e5a93eaf9f41784317fe99d394312= f.1780399750.git.chleroy@kernel.org/ Fixes: ec2cceadfae7 ("gpiolib: normalize the return value of gc->get() on b= ehalf of buggy drivers") Signed-off-by: Bartosz Golaszewski Reviewed-by: Christophe Leroy (CS GROUP) Reviewed-by: Linus Walleij Tested-by: Christophe Leroy (CS GROUP) --- Hi Christophe, please test if this works for you to silence the warning from GPIO core. --- arch/powerpc/platforms/8xx/cpm1.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/arch/powerpc/platforms/8xx/cpm1.c b/arch/powerpc/platforms/8xx= /cpm1.c index f00734f0590cf7c7382f808dce27373d9ff3d8bc..b31376bf6778802a7f6b6b49906= 6846b6b1f61e9 100644 --- a/arch/powerpc/platforms/8xx/cpm1.c +++ b/arch/powerpc/platforms/8xx/cpm1.c @@ -472,6 +472,18 @@ static int cpm1_gpio16_dir_in(struct gpio_chip *gc, un= signed int gpio) return 0; } =20 +static int cpm1_gpio16_get_direction(struct gpio_chip *gc, unsigned int gp= io) +{ + struct cpm1_gpio16_chip *cpm1_gc =3D gpiochip_get_data(gc); + struct cpm_ioport16 __iomem *iop =3D cpm1_gc->regs; + u16 pin_mask =3D 1 << (15 - gpio); + + if (in_be16(&iop->dir) & pin_mask) + return GPIO_LINE_DIRECTION_OUT; + + return GPIO_LINE_DIRECTION_IN; +} + int cpm1_gpiochip_add16(struct device *dev) { struct device_node *np =3D dev->of_node; @@ -498,6 +510,7 @@ int cpm1_gpiochip_add16(struct device *dev) gc->ngpio =3D 16; gc->direction_input =3D cpm1_gpio16_dir_in; gc->direction_output =3D cpm1_gpio16_dir_out; + gc->get_direction =3D cpm1_gpio16_get_direction; gc->get =3D cpm1_gpio16_get; gc->set =3D cpm1_gpio16_set; gc->to_irq =3D cpm1_gpio16_to_irq; @@ -604,6 +617,18 @@ static int cpm1_gpio32_dir_in(struct gpio_chip *gc, un= signed int gpio) return 0; } =20 +static int cpm1_gpio32_get_direction(struct gpio_chip *gc, unsigned int gp= io) +{ + struct cpm1_gpio32_chip *cpm1_gc =3D gpiochip_get_data(gc); + struct cpm_ioport32b __iomem *iop =3D cpm1_gc->regs; + u32 pin_mask =3D 1 << (31 - gpio); + + if (in_be32(&iop->dir) & pin_mask) + return GPIO_LINE_DIRECTION_OUT; + + return GPIO_LINE_DIRECTION_IN; +} + int cpm1_gpiochip_add32(struct device *dev) { struct device_node *np =3D dev->of_node; @@ -621,6 +646,7 @@ int cpm1_gpiochip_add32(struct device *dev) gc->ngpio =3D 32; gc->direction_input =3D cpm1_gpio32_dir_in; gc->direction_output =3D cpm1_gpio32_dir_out; + gc->get_direction =3D cpm1_gpio32_get_direction; gc->get =3D cpm1_gpio32_get; gc->set =3D cpm1_gpio32_set; gc->parent =3D dev; --- base-commit: b7bee4ca5688e30ca50fbc87b1b8f7eed7006c17 change-id: 20260603-powerpc-8xx-cpm1-get-dir-698cefe92647 Best regards, --=20 Bartosz Golaszewski