From patchwork Fri Mar 21 15:49:33 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 875331 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (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 88CCE1C5F14 for ; Fri, 21 Mar 2025 15:49:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572191; cv=none; b=ORgev20n3rG/uR0jytQwe3oy5KB6Aj5G4q9xzRbiGbR4eeQ9C67Dstf/N2AzheK2oQq0nk0HBB6lXySYndZgmHz5Z2JnfX0uy0DMZeGNHbSpIJ2IRvtlVu5VCgsP8O5OX8uNArXQQl/Ud6HwEcsaXi9rWVLnGhe9q/jc+v0SDxc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572191; c=relaxed/simple; bh=wCryCeTji9z+l3BRY73vuHL8dSisONmzkMMBaMEHPSQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hksl/FTg4iV8eAWCaacpK5khXHec1+y74NhVozYi7s/lyt0kwm0OXGSOYy1oZXTh8E47allhc8f+Zh3EbqN2YadXRlJ6V3aEC+yVHlWSLqkQCo+gInNNrhiDKmiNoERCPfhtVnMNAwj0SlO4FcAR1fzjIEBcBrfKMWgVmOU5b2Y= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=FSRtlb2H; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="FSRtlb2H" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-43d04dc73b7so22622155e9.3 for ; Fri, 21 Mar 2025 08:49:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1742572187; x=1743176987; 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=vRFYQEc1/AnB7Qk/B6GtdNGwcPqMS/OESaxUTMbOma4=; b=FSRtlb2H0ij4pmijJ8QTZrvs/JO0it3s7pRAcpDWenkhYiNep+DGeXVStzFwF/rPMJ u4Fgr11rHz4melVZFsaptxo+ov/q8fTVQqgYxg8yo+ISRJOwDWx+GtkYoxbJu69n0c9D IeZ75kA/GIr2YAQBzVg77ly0vOPzjhqOxc+kgYPxiKZzLwEqsBDHmKt016EimlByg0Bj mJ6XZ9qaqBYv73ig4M8ny4Bcw95/mj04saPgJY70D3x6Y2zJhBN8B4ZiDOfkg8AGUl1M 2sLQ4GNwURjsX1vf5jPYwxRX4UCkYGSKoRU62mwAg7J1CEcId7yBl7lN/86mrOVx4q59 p7IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742572187; x=1743176987; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vRFYQEc1/AnB7Qk/B6GtdNGwcPqMS/OESaxUTMbOma4=; b=uQ358AEJQbI4HHY883fpnb8ZNhRf5dXCDkvU7pHQtTwYCwyWRAjraj7voA75iz0sIa NjNE/NQb8bEfwmZKJ9G3UuM3SYSAHTe0VBomnbEvAr30X3jzbLXUM0jmeZpEsPcsahHf /8XJGtkICNJaxnQJGAbjyDt/K2CpMcTsyWxBADSiDp1mzEQ/knVyb3WNUTiOihOLjaQZ 4RkhOdkSqqA3c6JWwOTnryXStRhx8yAm9R0C6NmRtP04d27Q+0P3Fbp9Rg2+9BnxAbbT hQ+pPvbQK0YaEPs+sO1aQcUtkcuAekbzVAZC8qt0oG5GKep/3/uepWvkF0+3757PBDRh VHpw== X-Gm-Message-State: AOJu0YxM9kBkO6Uy2Z8GfHDLFn7irkkP85pm38jsBeUVO6ylKVxF0JlD sX6RLPd1BKhKzJ4mVHu5RkkdcnfM404coOxNw5W4gikS9n5zYJQ3C8/gsWjSGWY= X-Gm-Gg: ASbGncu5kL/FUyrjXB3hvOTvcDFklDjB8sdRMmnZg3kYehjyqDvyfXBNX5Z07Jm3ZUX sCPhcMZijEgo5lN5MqFjwm9bRmByG78IR+8mH91aFveLSUOrFDFBmzahHBweV3WOELsr/SxvO1z q83PY1HJ7gmNxoT64kaSnHgyn7GeVIsLX5I4FyM8ms4H0Yaf+1i/fRX0cmuP/NQvq5RcE01sQXn MLNcUHf0jN4L8cU4WMxRxbWBxUM4Ay0Yd+pDWrwh7wCYKdwJ6uT/cVYNWnrg+HhK9KM5LO7EgP6 hjtdF5KQjKvg/UQ9DtNMySr+U1EIhPuj5NQI5g== X-Google-Smtp-Source: AGHT+IETwNIgi94lLdjAdGfdwQRhGw5FZ9fshyAOJpuVuTGfLMNBguhMUR+gJEky4ZZyufE/CE7CuA== X-Received: by 2002:a5d:5f96:0:b0:391:fcc:9ee8 with SMTP id ffacd0b85a97d-3997f912529mr3661173f8f.23.1742572187419; Fri, 21 Mar 2025 08:49:47 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:1aa4:f3ec:847a:32d1]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9a3b4bsm2664406f8f.25.2025.03.21.08.49.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Mar 2025 08:49:47 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 21 Mar 2025 16:49:33 +0100 Subject: [PATCH 1/6] gpio: TODO: remove the item about the new debugfs interface Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250321-gpio-todo-updates-v1-1-7b38f07110ee@linaro.org> References: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> In-Reply-To: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2470; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=wdL+OKAjw1IH0HSGRarL/B7X1Jbr68CDvNMAAbARso0=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn3YqY+eO7xsW2SOOoNalGMEC3nIE5fQEeyXYNu C7+MtmOt6qJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ92KmAAKCRARpy6gFHHX cjjDEACUdUh9u4G6a7nZ38JQTvoUong4yxXKo114w46Cr8MRAEYvrjDEOmces4FI9YkqPYFXVAu 34c+p0CBwTn/NB9Z3DQsn6AyT01ubB1O4m40tJrBl95xfWlLowgVoePp/FYgjBxgAlZZmkXNZPw IageYREwK/zCI3atdwUuW2l1G94D2WMS6aEAzsroWogQHSIuj/10m4C+aLJxgbl001q8Kgjgli6 6+S7h5QLL0g7/UPxOtlSdeG7aBkCSY96ZDphrafT5j2EXrM9SByxO7qR8ZFAgbEL96Yc5RMdGA+ LlkHHNs3XiMbu97B8ppR/pXpM9llaK2HJaHtYVTZ66ObQ4csCQJMcTG7R0v9DyiFyo5uP5+1PdP yy5pI2l0La2JixCrfI+4Iug1odM+oznr1IdjNa++l5MZTE3xjWqUEep9tJkfFCclL0eKZsN9fgz CGl8ckKcglney2WyEV25U2KtpkL9D6KQAGg45ts0PTiT17mOhnoK3WFYsgyaXMKflOZuZQV0U6D EUrIJjdznImvI6Pwl57Q3zRdtawmDLsKx1r7KV8a3xL40VqfNL4+l664G/vfAY8/LXM+h6KKqrk r/hKGjM5jYs0LorwAqMsESFAM35/PBfc1xxmsW7WCGe++9LHBj0ABgxbPs1wK7nVZF1Kq+y84Mt hVAHIwwfszHFcKg== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski The consensus among core GPIO stakeholders seems to be that a new debugfs interface will only increase maintenance burden and will fail to attract users that care about long-term stability of the ABI[1]. Let's not go this way and not add a fourth user-facing interface to the GPIO subsystem. [1] https://lore.kernel.org/all/9d3f1ca4-d865-45af-9032-c38cacc7fe93@pengutronix.de/ Signed-off-by: Bartosz Golaszewski Reviewed-by: Linus Walleij --- drivers/gpio/TODO | 36 ------------------------------------ 1 file changed, 36 deletions(-) diff --git a/drivers/gpio/TODO b/drivers/gpio/TODO index 942d1cd2bd3c9..9cf7b84cdb869 100644 --- a/drivers/gpio/TODO +++ b/drivers/gpio/TODO @@ -156,42 +156,6 @@ multiplexing, pin configuration, GPIO, etc selectable options in one and the same pin control and GPIO subsystem. -Debugfs in place of sysfs - -The old sysfs code that enables simple uses of GPIOs from the -command line is still popular despite the existance of the proper -character device. The reason is that it is simple to use on -root filesystems where you only have a minimal set of tools such -as "cat", "echo" etc. - -The old sysfs still need to be strongly deprecated and removed -as it relies on the global GPIO numberspace that assume a strict -order of global GPIO numbers that do not change between boots -and is independent of probe order. - -To solve this and provide an ABI that people can use for hacks -and development, implement a debugfs interface to manipulate -GPIO lines that can do everything that sysfs can do today: one -directory per gpiochip and one file entry per line: - -/sys/kernel/debug/gpiochip/gpiochip0 -/sys/kernel/debug/gpiochip/gpiochip0/gpio0 -/sys/kernel/debug/gpiochip/gpiochip0/gpio1 -/sys/kernel/debug/gpiochip/gpiochip0/gpio2 -/sys/kernel/debug/gpiochip/gpiochip0/gpio3 -... -/sys/kernel/debug/gpiochip/gpiochip1 -/sys/kernel/debug/gpiochip/gpiochip1/gpio0 -/sys/kernel/debug/gpiochip/gpiochip1/gpio1 -... - -The exact files and design of the debugfs interface can be -discussed but the idea is to provide a low-level access point -for debugging and hacking and to expose all lines without the -need of any exporting. Also provide ample ammunition to shoot -oneself in the foot, because this is debugfs after all. - - Moving over to immutable irq_chip structures Most of the gpio chips implementing interrupt support rely on gpiolib From patchwork Fri Mar 21 15:49:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 875655 Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) (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 EF2981D6DDD for ; Fri, 21 Mar 2025 15:49:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572191; cv=none; b=fsEENuTuB9hgdyBzDyykZifj5XGYb2ZXUSp/vVyxjsH3OtOjJmCi1lYYzdWCkPVjK+ZTNr40dXtYrLRapTSmC5Sin1OblSOeOncciOmP86tB+bZfIeWYLPr7UyNHewzO+ffTfxnf/jvjReNOkW+HIBT/FN71qWxHPFyy3Lyaa+4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572191; c=relaxed/simple; bh=wCeSz2KOSGVmdMZOiZU8W8jgejAZEJTjS3rVeVs1xl0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ll0lqgr4T0NwVdeEY86jl2+EyFnDqs0RxB3jqmzufOUWYDnfI9hatCy0pDOlinoV/leIB9Mxf6FK5JogECiuvnkHX6ioniaf9Yqo+stCNgnaVeDAqjnt+W/Fa7whflcs9YocmnZMy3kfwZJ5dayPrRwYqKLkuJPFIa4+yrejDng= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=xtcma/df; arc=none smtp.client-ip=209.85.221.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="xtcma/df" Received: by mail-wr1-f46.google.com with SMTP id ffacd0b85a97d-3912e96c8e8so1317585f8f.2 for ; Fri, 21 Mar 2025 08:49:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1742572188; x=1743176988; 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=SWFCHXs1mgub0TbB9Hn2Mniy/vRwxESdKz1h7VjDaWc=; b=xtcma/df3IUcWr/xqv1jO+TTFDN2kw45cPh3pTCgvBB2ZwrEaFgwXmZfobybwtK1Go Z82FGHyjnwXJezDXymgFL0AABkl9oFR5R6ehOCDxXusa9yLxW6NAuFL5yXjjMdhHyPhG DpZxouqJvww5ESeWPCNzqi17z8knE1IQzG3vIav1x1ekwWQa3v7aY+BOG4zHa+ng46Nu +Q98p1Ecf2gOtxy61NmUsvIcC1pY/rlIkuVl6EJRp1iNSuuKKQQdinNdDpuw+7Rj+nqy 8QSxylatQPMLEeEjIYBH8FbIEhiQggWfiWu7IkDo/M5kOQeCKxDX4x4yPts4Aa5uuX5P Grlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742572188; x=1743176988; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SWFCHXs1mgub0TbB9Hn2Mniy/vRwxESdKz1h7VjDaWc=; b=VoZsFpT+lYs+GfzayYOxLtnIoUeAdb8vgW4acTOnHJ5bFuXah9GDk5y1YLB12yE6BM mnpgUPrTCb3QvNnFi3INSXCsSlYJNnx7VmVv1lQ44/F6tr6t9oslDojkiJsmSB4aHgLC qxUhtdssEJHrvEy4IWBz7Ix09RIU9h6TMZjp7fzanpt/4b+moZaZrKnx8n+NRsDGEMCQ dx/4T4yxmHe6upnWcmDaY7fzH/3AGR5qx02kZfHaPPrOAfcEY2Dr5XthRrfm47sCKgaH mUGZcfTZhA02eNwxS1ArHnyYC4DOb140CO3q+ww/0cMkvXUEWQGJ9R24J6KOYb+wpSbZ tdwg== X-Gm-Message-State: AOJu0YxEvP/6ys1SPCB5XVQRXPlAKb5r6A62pahoKbkFNR2Qx8LgGfN9 FcgGDPyVKQ4614w30YB0BD5C8NQwOvIlv+x9sktChPirMhRFvplZjxyRpREJRzu6qDBDohQTwqh D X-Gm-Gg: ASbGncuylXcYpT1SHmbLsnxvahnBkLM8NcjFTAEduODR/5RdwEt8vqBaXO/+fx/JWB3 nwKc3RzHSoA9xpaaau3IVke+8yOJ72VhTNVfVjsfcI25nAC8XoLdMXLR3Cx6+auNJYI+Hr9PiNA W1X8U8ckwlMyT0ra5mtdy0KAMNH3LtC8eTgGz/h7MD+uT5him60NQCf0p1RBzcIqvjLHmOLv8vu FkOJr1KhVLOu0T9tKOcQJVeMTW7TeHp2PJBcmm/ZE9YgVRsQ9sSQOB8dnxMc4fkcRWeScEg1QL3 FmPXybpbZwt2Jp3D6pRNelCKOGopj4qo/JMqhQ== X-Google-Smtp-Source: AGHT+IHhtq1BnYFSnAx+hQUldveVt8mQWVWOnxup2iKacPQKCdLxIWbQZ1BsfJD3AfGXvy0PBof5Ig== X-Received: by 2002:a05:6000:178d:b0:391:2c0c:126b with SMTP id ffacd0b85a97d-3997f909b3amr3044992f8f.23.1742572188033; Fri, 21 Mar 2025 08:49:48 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:1aa4:f3ec:847a:32d1]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9a3b4bsm2664406f8f.25.2025.03.21.08.49.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Mar 2025 08:49:47 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 21 Mar 2025 16:49:34 +0100 Subject: [PATCH 2/6] gpio: TODO: remove task duplication Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250321-gpio-todo-updates-v1-2-7b38f07110ee@linaro.org> References: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> In-Reply-To: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1024; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=3OXtQ/TM3u4P6aWQ0VLana8z2BYniuHiDEU4Ow69oxo=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn3YqZAtbyd4w8ChdhqRb6d9B1Lx25V2PE39afQ GvVFC3Q1oOJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ92KmQAKCRARpy6gFHHX cibgEADWd2wS0zrLjqLVLT88hL0yhhDlmU6PEog+zjF15b1fZEAaK2DgSRBGGibhLDlCfzKgSXj 07yuSf+zDdWSID976vbSHT/QTqWiFI4EWkToYXzDgcZx5EmH8qXGGgfhx/vvPR1awBUYrQL+2jU 1Yb62BXMMq+SPiNkb7XAtjTcJTif0WYSPKsj+HvFAMXtLvOM47U3MEYVrDAtJ7/C5XCqyK9Nbeb xfUFD43wi7TCMVq5kE6ghFvf/vnNsayItrnW08LKyhL/FEM8vowJD0KpDxjVld/fGtdjBLdg0+F yg5AgfAN16UHPsicmfzDo8wu74L1IZAbB4jYyW+hmVBYuhUxDCwxp6fJmkdwlxYFFRIDmMuIDOs NnjKSx0YDLHOMzZ227DS7ze1otfjChmkbCdU0A4Z7aEQi0o54rT9sFRwcIRa758aaqxeoL/PYdH m5h7UkXDb9JnGlOWijZI5pM6JRGxdsipkYNvoyooOa5DyXQrHGt1LONewNMF/qLTHy8gFNKHyHW gd6tKPVIyjznUc1sOjVtF003zm9V5ruLsRdjQbyb+tTRQyp2dztetRD0Mlk1QMBWriuJIaibZHd C1LddJcPlt7PLzL/lpDofCOuOpFE0j5cdmr+MF57fuv6BpMAhN7XbFPgKdUi0KdU37aHmRxlPb0 LSJUxIRbU0s2xgg== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski The removal of linux/gpio.h is already tracked by the item about converting drivers to using the descriptor-based API. Remove the duplicate. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/TODO | 9 --------- 1 file changed, 9 deletions(-) diff --git a/drivers/gpio/TODO b/drivers/gpio/TODO index 9cf7b84cdb869..ff955befd0ccf 100644 --- a/drivers/gpio/TODO +++ b/drivers/gpio/TODO @@ -86,15 +86,6 @@ Work items: CONFIG_OF_GPIO_MM_GPIOCHIP from the kernel. -Get rid of - -This legacy header is a one stop shop for anything GPIO is closely tied -to the global GPIO numberspace. The endgame of the above refactorings will -be the removal of and from that point only the specialized -headers under will be used. This requires all the above to -be completed and is expected to take a long time. - - Collect drivers Collect GPIO drivers from arch/* and other places that should be placed From patchwork Fri Mar 21 15:49:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 875330 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (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 87EB64A00 for ; Fri, 21 Mar 2025 15:49:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572193; cv=none; b=cal8LpskL0rM6SV3gP+viMvIPsQUxulLC7ZO37XE3I20p5REMb/lNolra5hWnyIvDHrggom8KMEx3vldcncVUUDMOJ7u2p8hmL/G+cFPdrbPgvzAmcaB/vSsOycmcGFUaOTyozS0Mlaehk0D4zwvdP8WYzmpO7+U30X8NDgiXlc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572193; c=relaxed/simple; bh=xfFNU31W60ls5/B0+qZld8bL1H0RP3qxyrF5eUJ3AEc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=eanE87n9cuyknDvxLouMjuBFIQkdyQR5daViPN/+Zqzstr4G76V5KQTsJw204ujhtZbdPj5omDGdAi3p0JtJXkVAJAd5loP/kiBMGFJzH2V25idxn3d8C0Bm2HdpdQQ3z80YLlF9wDjAhu3Q6Qz5vlH5aS/1u0i89fhJcioSxjc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=oje+pfty; arc=none smtp.client-ip=209.85.128.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="oje+pfty" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-43cfdc2c8c9so12777155e9.2 for ; Fri, 21 Mar 2025 08:49:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1742572190; x=1743176990; 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=HWUyEMW5KQjAKQoUCWTi97VpcXQaHbmA9ju/RhUyagc=; b=oje+pftyFAgF5k9UaDWtv/TAD2ZW0pic0er5NMUutxsfDyKFHKpKiyPCknj6BD3Nh4 A/3N+kejgT+qBM1dxDSRLpHSZJcA2MfOqkDVIeMOykGyYmR6yj/685GaPl2Ds0zT/l86 rHrZsmDND0U9tpnTIfUmgbhxEwPx073JTWC14lsu5OEXHUQ9J1PP1/oZo2wYjgXNgtJi T5XvwYfrROtHA5Zha5tjqebslMlXG/hrK7o4pk4nr/uYFLh3Ft3MnOEg8mk8xbw+FTqi IcJoUqVL68DUTSR2QOuJRYcJ6rYaXDxf+xDk/Y70XjaCUNic7PfS6YBoOj7pGvaGho/E ImkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742572190; x=1743176990; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HWUyEMW5KQjAKQoUCWTi97VpcXQaHbmA9ju/RhUyagc=; b=feoxbRaq5CtMkQk43NqcbRn9FkblgHqHC7nhx9JLfBGLH/71fVPz25qm/2NqwjlkL7 SE/LlKXuP5tWUPujyCzM+NgL6DQbp5ZyV1pJ2otAgGDjnJe/7s2O+6Ah5FSjXj0oKNyh 9nu4kq58nvxWqAhpxFZW46+E/4RfNAjrhoqujCgAXunPCUbu/yyNAu67sXDM4eD/zkxD aytED7Ekyd0lk4w1tj84cfw3qTd9eryalQ44+IbCMPyXR9G/RH0nJ0iLaHH+EDkn2TJA 8DSHO9x+A12nw11Gh4uaf0DCZ83A85Yn+hf2f32sSE/7Vpe9m8a8T2F9UAvlULH7/2LV D3GA== X-Gm-Message-State: AOJu0YyH+JR0qwpiV9sRLg2PMDzJ7U6aoBZJNfVO1fk2aFV16qqZeroj uMbZvuEticuLeOznXjHt9NjAGd2GFlJewaCtTXsz/wjoghlGvy5YcI0NOuuJ+X0= X-Gm-Gg: ASbGncttbeKpeGWoXKcqo0xt4TE6NdychvqU1XOap6Y1VKHESX/wVUCMz3D55YZ37TK qKR1g5pfjW0CdDocE1n4pjsTGiTE+t7HD9WJU9iKToUtpc4BJmOFghBNgVzwDaTIGgVySyaU2MU gtZdSJngteuHiaPRzaJI7RrwhVFBjx1amtY3S7oIOJ1LArhslbS3q9Rb/1MLWEFM2OSfNabisdO AUGEeOcpSQroY5BnTWfbYshVxNZcYsoDtFciFvn3BZEXOhfCx1vKLhdNcrCWrGQ1WKo7MYT9q4g K8/K+tl6hZbI5u4+sYctT4QPYU2VZTkmYIHjrRorzfL4JkIC X-Google-Smtp-Source: AGHT+IE9lsPNP1ZpJFXQ7VFz7zhG//tQlNCV7FJUrZF3RN9Uf96S8er9qf9JKofSiXbIQXaI/6aa/Q== X-Received: by 2002:a05:600c:34cc:b0:43d:24d:bbe2 with SMTP id 5b1f17b1804b1-43d50a3cb58mr36631715e9.28.1742572189203; Fri, 21 Mar 2025 08:49:49 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:1aa4:f3ec:847a:32d1]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9a3b4bsm2664406f8f.25.2025.03.21.08.49.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Mar 2025 08:49:48 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 21 Mar 2025 16:49:35 +0100 Subject: [PATCH 3/6] gpio: TODO: remove the pinctrl integration task Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250321-gpio-todo-updates-v1-3-7b38f07110ee@linaro.org> References: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> In-Reply-To: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1896; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=VovuR27EPmJKuj6f4avilmOJ1pGh2kyGMd0etNsaBCQ=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn3YqZ1tkYpRWno3Z/Y7xshya85wixSLxYkf9iP ifdoWP+JJuJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ92KmQAKCRARpy6gFHHX cjfAEADAGfmoFuMkJrBJZEyLGkaBMd/6Cj8ZPvX58vT6O8BaGZkaC+lBSp8InOv2z9XyVJyS10n GNl0DTkFCxVIhrNv5VZWVHEfgwlGD5OH4+vrDAzgYm2Aw/bkFG1d0Emq8972i4eeAHswc2WZN4c EOpQuAgr7dShPxj7rSlnjuxfFbruv/GOfrIhN0slV+RAGLQjpVfwEz1W5+e0eIP8MHFMuMP9j8g nXOYAAF1ieiCBFQ5JQU+9LxE1ZV1QDYvBAJ26ebTY3t4t3bvyAi2LNKs+1k+4l2klCi6uNevlGM AQhTYug1G8IMIotFTA3vkVmqAcPH3NRuyADRFyyarWcNFJ+Wlx6dSrC+ZCzJ1Utgx+WnaBv6IzA 0Z0j5q7DnE6UNW4KXIa9CrREOP0b4StVrDFZZYIl+1YPoDS6MxHNxnnon3vaY7Dn/lSZQ38Lcmh fyvpJxrDFzRqXh9qjHJfT9bwKy7ZF+XS9WJDayximKvpjLY9ykW2mJEpXrV0ZOJd74W08MOJZm7 zdnBTgKAz6YYMtM1FG+pOvB23e4U70ONxP5erYWarNlPiLfzzm98gO1ZBoFyc0ikQgdXOeQLoP0 ypHEf++QEq8mhnowtadu9hHDEdx/f//Hg+9C77sTIEAIqlHwD4stlkBOGOTBG1O2eQ7UeX48h3F E4lyHVDbMnvAhKg== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski While there are surely some arguments in favor of integrating the GPIO and pinctrl subsystems into one, I believe this is not the right approach. The GPIO subsystem uses intricate locking with SRCU to handle the fact that both consumers and providers may run in different contexts. Pin-controller drivers are always meant to run in process context. This alone is a huge obstacle to any attempt at integration as evident by many problems we already encountered during the hotplug rework. The current glue code is pretty minimal and for most part already allows GPIO controllers to query pinctrl about the information they need. I suggest to drop this task and keep the subsystems separate even if many pin-controllers implement GPIO functionality in addition to pin functions. Signed-off-by: Bartosz Golaszewski Reviewed-by: Linus Walleij --- drivers/gpio/TODO | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/drivers/gpio/TODO b/drivers/gpio/TODO index ff955befd0ccf..08ff60c65abbb 100644 --- a/drivers/gpio/TODO +++ b/drivers/gpio/TODO @@ -136,17 +136,6 @@ try to cover any generic kind of irqchip cascaded from a GPIO. dry-code conversions to gpiolib irqchip for maintainers to test -Increase integration with pin control - -There are already ways to use pin control as back-end for GPIO and -it may make sense to bring these subsystems closer. One reason for -creating pin control as its own subsystem was that we could avoid any -use of the global GPIO numbers. Once the above is complete, it may -make sense to simply join the subsystems into one and make pin -multiplexing, pin configuration, GPIO, etc selectable options in one -and the same pin control and GPIO subsystem. - - Moving over to immutable irq_chip structures Most of the gpio chips implementing interrupt support rely on gpiolib From patchwork Fri Mar 21 15:49:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 875654 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 A9F582080CF for ; Fri, 21 Mar 2025 15:49:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572193; cv=none; b=FXT0GLohdbLY2xr4GPNW+DUURMkabUfbfl29TaS7yq2Xz9J/0kCPrq0vqzr82eSuYnA+KeUP5l/P54IogprO79WoEX92U4PLdjuuoWrOR5Za+qPE3KO8zzhBGL+jn5R/bOMBZnBHF2oj+JwLib+37HfWHhWGNAGPcebw37dDpjY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572193; c=relaxed/simple; bh=j6e4SEwIZ+0Md5Fe8PtFTn88silsiDaN7LTWkXTiTjQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ipj+us2CvOOhIq3TL8/r77ICxeyAZWRL+CEiTq9TrEEuP8Qh9osnaUsbSzGp88hbspoM0Wd4Kd/8b1q4gOZAdB+sMokLScmtjYezqLkJeQrjC17rPEbjhoiW3gd6bUiQ0gCO76Q7TTa9HRLKJEYZvbzIvr5u7IYdpMmFDwfTk0I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=pwYLRAeg; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="pwYLRAeg" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-4394a0c65fcso19190705e9.1 for ; Fri, 21 Mar 2025 08:49:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1742572190; x=1743176990; 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=CzRDcuEPJWoPKjTTkYbk5jU8Jp68q9zHaGnFx5E4fU8=; b=pwYLRAegRPHUjaBQSxdbjpz1q2CeUux5umdHAPqDq896GgQJ3BSvwIqVLmU4EDZlbV 2KZkLImiDcM/fdGSt+MKYcmqHx8oAFAHZfdJp+lDaiRdb+e9TJR8jDXxb0x9MVymS4Za 5jFY0wUyLndebc5dh1ghtxYZlM4nE3RM5uB19WdeOrul2qET4CfRSgqCncNpUpdB2ueE HrraS2nlHlrEla9VCgGy0oVem1sBDguFN1QTTcDQ9h5iGVXmS1cbn5y0NzrwZYOtHvxq 3YMiPuI7UzwX4nCrfu8Ux7YmGXru67iuonGJrgPlTNBokz3AkcEiF72hK28iWlIp3YvU d3Tw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742572190; x=1743176990; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CzRDcuEPJWoPKjTTkYbk5jU8Jp68q9zHaGnFx5E4fU8=; b=UYxdwNKOXiqtsH6QfWsny0dby+nCxlaYVq6kMzJ2jzTCk4VXl7wShsXBmWYlzmPCdo pLajw8MOnF/1KYPE80t/L+OrfN63SauU38oLHyiNnL3Vbu5gVEr5o0JFLveBABmZyVlh ktXrsY/gaxCYfJ1Yqte1gp021qhaYeOXEIWek7eqi1raiUQ8dx3R/3A5uIoc80txTyIH NWxNsfkW0WtJbeA+MRZNm1EegGE9JXZcLt8/Rs5h5DGZh+2l6LfebPnFtm2K12lGqLW7 geYeg8Uc22byYIEZQqlm+hlfD8tyRIMFQRbtiGIcn6qsWCuTmbW9eb0RJX0K6IBim736 4SdQ== X-Gm-Message-State: AOJu0Ywdu/r0JHvabTx4yzHeZrS+0eLOuy9qJfZ131EorU9bZQMR8grW uKb2xgb4CcbRuUUmVA4R7/s9wFQHYAr0lZt5vQHA3JHWxr0bovHZkvHSDiIJ1wM= X-Gm-Gg: ASbGncsfWNz1M1lUZJR/9JQiRaMggtwQylSE1WvxN0e2L0vfO1iYaAT+mK7xr9i9VMB 8tzbY9gnjy3aPBgJtAbht/BWXpi9u2MFsQ+2V8uSCDXUlk79Z8Y6QBTno7iuiBVWjCoiXP8Sn+W VGVZ89tIf+4yzXhLwwTWKfgCPndPUI8dCUAyUH/d7fr5Me3WoxMD0ckUfHz7DtaWaxWpNc3F5cE pTf7fJVkUn8ofpxKBtZh5BSd10BmdKrWSmUSv8r12V5k/fROf4Cjfem0CiCoN0/fbSUZrECFOK0 CnKxZaJZxpDRjYRBn9A/3uzWJEhCyNHTANlfsw== X-Google-Smtp-Source: AGHT+IHufKKfpol8lF3yKuxhjsoA02sZx0nbH61YORZlmp5UAGPiafO/EeH1mAihXmDmEh8zT0H0XA== X-Received: by 2002:a05:600c:5115:b0:43c:efed:732d with SMTP id 5b1f17b1804b1-43d50a12d4fmr28242165e9.16.1742572189896; Fri, 21 Mar 2025 08:49:49 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:1aa4:f3ec:847a:32d1]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9a3b4bsm2664406f8f.25.2025.03.21.08.49.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Mar 2025 08:49:49 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 21 Mar 2025 16:49:36 +0100 Subject: [PATCH 4/6] gpio: TODO: add delimiters between tasks for better readability Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250321-gpio-todo-updates-v1-4-7b38f07110ee@linaro.org> References: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> In-Reply-To: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2727; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=xL7u15VgKexCbLGGE9qnvgFvVbrc/q68QcGZle4FQiw=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn3YqZZkqcpnCqZSVD+flHoJHpbMvoatYQDV2Z8 KsOIwQjBzCJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ92KmQAKCRARpy6gFHHX cuUNEADRTKiFPfDBvClSA+IXwxrQMIft8+zvTOzvBHaereUwuiB9BoEauMGvgJywIpK6x/OoUsz 61kYTeuF7IKw8qNU8MWFCDRUoUbXEKhw9ijRypQ56PQ5MqmOIp67diqpj+tCve2/8aJ1j1LUsOd Q9BxETJ0rhWw0lbefyJEYynkH9n0wQHUUhTMDP9N703Ic/F4929r4Z/o2uwvzkuMjLrcNfCgpVn TMy4KTS9rZIlgZ7+Nq5ci8cu5Dt6DNt3ql0Ehu3j8pNpV7qhifiAaFlJ7Oq0bCwyJTBrJAsDkEl RVzJE60gUv9drTMvrVuc4cU2MYO4UxPcLb2FCC+W14S3UtL67fX98If2fHYKbtkOuJIKrjMSiOS Luwvy9X1DEbf9D69DcWraRvSPnm3v4m/tf9zievVvx+PwzvTObP8DOTAmQ9zPyPN260L4mYmgD0 daQd3Cj6PNWsP1CtqZLgVjMnnkqy6PGHBgQ2Ymz6z377xL5OsWAbXKhvfBwtw6gdLoTKraOnvjM kVLtNEyJ35hVf+hEBda+lIshUqFCMS5rw2muynyiV7CUWedVIfWGJFWA53BKuWLbCabmYZtlCOm alOEfhv5S3wy0gzdAE7OIig+8tiIpE7m6tNDxEhqKPSxXK4AbpKani0vrAQme/BTpAOOfEVIhtw pMt7YIc1WLIhYXw== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski For better readability of the TODO, let's add some graphical delimiters between tasks. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/TODO | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/gpio/TODO b/drivers/gpio/TODO index 08ff60c65abbb..052ba70070033 100644 --- a/drivers/gpio/TODO +++ b/drivers/gpio/TODO @@ -1,6 +1,7 @@ This is a place for planning the ongoing long-term work in the GPIO subsystem. +=============================================================================== GPIO descriptors @@ -48,6 +49,7 @@ Work items: numberspace accessors from and eventually delete altogether. +------------------------------------------------------------------------------- Get rid of @@ -75,6 +77,7 @@ Work items: - Delete when all the above is complete and everything uses or instead. +------------------------------------------------------------------------------- Get rid of @@ -85,6 +88,7 @@ Work items: to_of_mm_gpio_chip(), of_mm_gpiochip_add_data(), of_mm_gpiochip_remove(), CONFIG_OF_GPIO_MM_GPIOCHIP from the kernel. +------------------------------------------------------------------------------- Collect drivers @@ -99,6 +103,7 @@ At the same time it makes sense to get rid of code duplication in existing or new coming drivers. For example, gpio-ml-ioh should be incorporated into gpio-pch. +------------------------------------------------------------------------------- Generic MMIO GPIO @@ -119,6 +124,7 @@ Work items: helpers (x86 inb()/outb()) and convert port-mapped I/O drivers to use this with dry-coding and sending to maintainers to test +------------------------------------------------------------------------------- Generic regmap GPIO @@ -126,6 +132,7 @@ In the very similar way to Generic MMIO GPIO convert the users which can take advantage of using regmap over direct IO accessors. Note, even in MMIO case the regmap MMIO with gpio-regmap.c is preferable over gpio-mmio.c. +------------------------------------------------------------------------------- GPIOLIB irqchip @@ -135,6 +142,7 @@ try to cover any generic kind of irqchip cascaded from a GPIO. - Look over and identify any remaining easily converted drivers and dry-code conversions to gpiolib irqchip for maintainers to test +------------------------------------------------------------------------------- Moving over to immutable irq_chip structures From patchwork Fri Mar 21 15:49:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 875329 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 4A8632236E9 for ; Fri, 21 Mar 2025 15:49:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572194; cv=none; b=m9VTvoDHJ/boC/Ae9bo6zTvklsv7Stl/pJVYYGMg4qFNiKcpi5ZvRJtJ9ueeWencUEqbBnkNvjvzCKv8zZN9F1ELdHgpErf3NNiB1eQfw0yvodedO8yGhbyreuzg1RZcdCygeYZHSgJBvJMkkQ0osCd4Udb32NhrJLDuQVadAAI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572194; c=relaxed/simple; bh=NvfXIHhK+VWCUfd/gJ4E9q15zyMoCl0PvormQXQWGJM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=dWttR3R+o9ersTwPmq1HZexMJIh1utGgbDC5Dy8K+zmTkSaEMeYwyWoWSfnEmfgb5aBs2c5njE+/+NwdCrQzii6J87TBvRkmF5xGOQJ4jmDu2d+3j21vhuwiPJSSzxCWI8V3UIgITkdtXn2aXruPfA2qusNJP2j4GgHp4SQn3go= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=dV5HO0nl; arc=none smtp.client-ip=209.85.128.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="dV5HO0nl" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-43cec5cd73bso14399835e9.3 for ; Fri, 21 Mar 2025 08:49:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1742572190; x=1743176990; 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=Oqsju0kZgP02gRC3wohzv8i9I+alYOhK6gEi8p2Wugk=; b=dV5HO0nlMW/HN3v48FYcPinsrxyXOVvSs6J+CtnCIj/PPTLjAzlct2CY0PVLAyPetM uDam4henjaSNRoV0ajHmW7xig6YHB6oeLMhRu/DMblR8zJ9UHtNTK4YctGpZeWKhsc3K WkXpu1C3hS/+4Xm9OABqawDlj4e3wTeMfjP3iEvIUqA5+AGkyEwOqdHDIaJHyiS1o8Rt kF1Ap9LT5MP0iIvFbWa/eaY1OLvhxEqS7dFKhMltX2aXnJ3OuMPmkShCgn461ZJUoYBR YA1jxK6Pn0tRr5vNI3k5fpOmx7gEoBWq/9ejAN/4ZW3yH2sKg+P9casqXZIQOb1T/Hqj LgrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742572190; x=1743176990; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Oqsju0kZgP02gRC3wohzv8i9I+alYOhK6gEi8p2Wugk=; b=AwGgIzr/L/TVEnhpjLFDqjXCvUTj/x0OVfJfwp5DEPF0wgFDhTmcOjOQ0aIHI37SJ7 ULpbP1DL3HXvjUp0RcVQ1dzSX4BQ2YsH9T07Xx2OeXcK8p+j3DPKqC8v2OcSDvb8SfXr htqDV9AeFKE300w3Ytx1IV3QFS3gSUGFVcTZYanOabkkKYRTPFs+xarYNEXV9XXDpwwX 8PYpmosHTN0KfQ9bsXTdYSstYyOoZriOwshEMtIFV+J1sE2zlR1BA+Zf/ofN2BJGI3g1 FLg8LWERZ/d7L7JcRGBGCQaiJvoC1HN8sLsmzHjyg957y2nnxerqzA0XHr1NzACn+Tyb SmTQ== X-Gm-Message-State: AOJu0YzfayY/5QJRRDfijpVA4kyA7Eb0UqbB2vQGQNaU16JZofqgPNTI BoYEJyIF7jI/YfntpA/Gtcetovw36f+YfFMV1pREwmJT4LPa9G3JSb7FEVMiFtc= X-Gm-Gg: ASbGncuvrdoLwUp2bpc7+Pdgwphg/q12zNsC5eUS159AN50wXs03LtGAtTiBC7G6rZB mgpjjh7Qh3H1XTgnvgSx17m862Nl0f3zF5noPAL8JbTLBKumS9FdllmDHnNnESumzwnStPEGK9Q jrT8m+ocDfrni9+PFU53ihscGWGL3nmWbs/ECYr7iRh1vxXkTwhQ44rII+C2HCNl9Evdo7S/lsZ AJ/x0ZzA+djKowNnXLv4psLGQmQYdzRr6VlpnUMjv98CQzJsCrA0AG4bmFb82/fSe5CCuS2ZDkT 5rMnr8VmtT25ulb0r6pjob72Xa5EkLmDpCJcvA== X-Google-Smtp-Source: AGHT+IE83HvVdPd1F8HJgesyYGFZcZ9aY2a2O588opE0kp1Olyw/PgxB4h079l74xJ6rF4Sv/3urew== X-Received: by 2002:a05:6000:184b:b0:391:1806:e23d with SMTP id ffacd0b85a97d-3997f8ed721mr3270655f8f.6.1742572190575; Fri, 21 Mar 2025 08:49:50 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:1aa4:f3ec:847a:32d1]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9a3b4bsm2664406f8f.25.2025.03.21.08.49.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Mar 2025 08:49:50 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 21 Mar 2025 16:49:37 +0100 Subject: [PATCH 5/6] gpio: TODO: add an item to track the conversion to the new value setters Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250321-gpio-todo-updates-v1-5-7b38f07110ee@linaro.org> References: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> In-Reply-To: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1387; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=zW9vf2MxVVLSQ7/GxmBLmLjVLQ450goC/H07tgUus28=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn3YqZ4OK5TJEOgGOz59u/Shq340T6aLrfj2kak o7dYSVxc9OJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ92KmQAKCRARpy6gFHHX ci3pD/wPRQ4FG3V729Ngelf387WaUaKndrOi5Zsq3+R6Ww8/pdW1R/jazX4RvG98Cf0LfHXf/oY rdbVLm/SED01DVkYDbsmQ2eWQwh24ZQkIKhPMgGtRXN7onmZGbYkPtt8hetgVWWA0D5ldTLXVe4 V1MDb9+l5pPVRkeKTZyefOySd02O7CX7ymGUjumYVLUQriaK6l+GpPk50pA+hpE7+MBpxjB8x9X U8lIOfTguScY9Bc5ejk/RT5/u6uy50lwPlg6Kd8fk9S4Dm9Zr+fLSuccG/UgZnV0kvaVvX6zzFy dQwjnXehJhZahwyr2BzSRXzQK12R30YCpDt1TZ+IHGw5lszuT7sP5S35dhdLEm8Q1BwPtDebGcV KsI85t7mohkJy6YzBXF9ebQC0vYzmLkRUGfzwSLKOtUNTWlfeU8VStHn8os9pib/cK1KnULKvBp At6d8shY5FIgo5RYHORL1f0Jdl5bnWdZHESaowV45xUHQbx4QX4fW5WPb/rVCPvkWs4yg6oRmf9 aPtiMzLFJXU95K518XkIROkGJtIq6EWCk9uIaqKSIDoN5Xo/oCmiBZX9nbhJ2qabaN1wFsfuE2P OHWstEjK47Ug4KI1cz4Ew8TPgTXC7Qp8oJkG8rfNiIqKXQX7kpW1jryE7q1QNJpGfWgwjJ1N97R QavjE88WWQQBJzQ== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski Add an item tracking the treewide conversion of GPIO drivers to using the new line value setter callbacks in struct gpio_chip instead of the old ones that don't allow drivers to signal failures to callers. Signed-off-by: Bartosz Golaszewski Reviewed-by: Linus Walleij --- drivers/gpio/TODO | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/gpio/TODO b/drivers/gpio/TODO index 052ba70070033..3abf4805335f1 100644 --- a/drivers/gpio/TODO +++ b/drivers/gpio/TODO @@ -161,3 +161,15 @@ A small number of drivers have been converted (pl061, tegra186, msm, amd, apple), and can be used as examples of how to proceed with this conversion. Note that drivers using the generic irqchip framework cannot be converted yet, but watch this space! + +------------------------------------------------------------------------------- + +Convert all GPIO chips to using the new, value returning line setters + +struct gpio_chip's set() and set_multiple() callbacks are now deprecated. They +return void and thus do not allow drivers to indicate failure to set the line +value back to the caller. + +We've now added new variants - set_rv() and set_multiple_rv() that return an +integer. Let's convert all GPIO drivers treewide to use the new callbacks, +remove the old ones and finally rename the new ones back to the old names. From patchwork Fri Mar 21 15:49:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 875653 Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (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 3DF6B227BAD for ; Fri, 21 Mar 2025 15:49:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572194; cv=none; b=C3rNFfOvCX2LMf9TQtWSzshAv9gdBgKvvDpXOimbzSGKEGppk3jnk8THN/Zq2vnn+89PD9ssNz3yaU86JjbtIKlJr143zuH3sib76NS6o1HbkmstPGJ9LTYwWOrSgGvW7bDkvr2WHb6rVQ1vFo42q7m/xgEWethHXXfX4/ERoEA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742572194; c=relaxed/simple; bh=7OKHQYItsHJqowDVAvvbjLqYjpAIU2xdGIEQwzoW4CU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=tjD6Y5wiI4p9BvvKlDtNXqMmHkObX0lIoMc1XvwaBP21+APmsxjolz59q07yPUeSCIMKbwuhvBudTmNWrvwbqkJLF2cZcO4TBNkyWcFtIa124hmNX+P4I59mZ/iRhffH52zEbpmnXi6NoZach5g0MVLMKJPC/1FnAOeRECNj+C4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=0HM4ZdUr; arc=none smtp.client-ip=209.85.221.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="0HM4ZdUr" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-3914aba1ce4so1757693f8f.2 for ; Fri, 21 Mar 2025 08:49:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1742572191; x=1743176991; 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=LJRuevggM9BCuwKtfZ7IFoWvomRPS19U+6lJSmLRj9k=; b=0HM4ZdUrW7caStmrIICgevWgLmgZDNYlJmuB6tsEn5yWaexDeO1XqdR+3DCkWasgmW SG+q1Wvyn80KJVDUP2l33znW/wkxvoAZAtfp7c13pLL8nf2GF+An4EGvkKy8Kho/td+w dmuD5fdwAyPTIskfteFEDMjdIswf+RUdAKvHXqQcb6H5k/LvZ6s1bi2Ws/jGLDCGMJxZ 0BeoCZeDEqpIs3+weU0muM/nHR+hHnyzkc6BsgKCvTej8xkEVUs+3fX5kEVPe0DeBFEr xB4j1um2dotIjTNHXM9olSwBtOeOfYN3edPiLYhfnp92Gv1L+HdLJ+qI0Nd96LEdO0Ei kjbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742572191; x=1743176991; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LJRuevggM9BCuwKtfZ7IFoWvomRPS19U+6lJSmLRj9k=; b=hARyNZ2p2K9FO/t5BK0JMM5lpwTd+dZiye7Hu+Q+istK7M2Q3H9MmovfDzIHrYPpLc j1unLopvYSo6oFcGOXS7KBRELw74QL+x6W54ago6u4gYLFssOpu3V6O4UX+J/IEUwkMl t8nBrzkba7QwcH4l9G/AlqO3FjgKSzgX+Z+LF5tKy9kAQkj5o9WNWRjsVxOFSNxgEBb+ G4eZsUeg9Z3p1OfIm8+QhDHMGFbVWkuwpY525qL5pQXXEI7qmMpHX1ncJgu2yZb0Ykz+ A4mFCbo2lGzg/yCZzwu//f/tUVGY+QvCEH9bOozortwj2ohrCn2L2xHd4GtWvr6xxiIZ db6A== X-Gm-Message-State: AOJu0Yx4ztpwq/hcamu5fd7K2HBBSlKx4i/7sDhGaXSqdlVIkDfx9a9Z dEQ3gQlvb6yXcxVP6nb3DWOB9Vd8oG8hx9Fki2IRz/CHzxtsGf+S5hATO50lf9j74t1ahScmPbX x X-Gm-Gg: ASbGncvGNmOJoTxw/WrituvPdkrz4lUWeiExpHGq77I1OdArC0UfP40px/dvlKRa4PY ODip89RuzQcK14voBERacDNlojZAWCf6g1SYe+6kVmrDOa6sta/VBfeVM0c5VwrUpFUN/+yio75 M5AE9d/KF4IR5ssdyf9qoCA2M3SgDVpiSZnQ1xP0kLRDmk+94fKKMzIlQNYjzO4IxvvBGfevS/h OMz4IAi3FXDNki+CIUVLL40ebDVcAN8pOWJULZAgbtdwK2vYuGnwIEKP1CnbNjfGapMo5ls1ds8 hMm6a7QAoNPBYPXGLcKaLKBSZAuVC0b60RaFew== X-Google-Smtp-Source: AGHT+IGoMK71oHcnm8gGvUy7+eexqEWpSgYvAKRXst7E/Ia5gJhiHUVUXQvYPze1X3KyZ1IImHsKoQ== X-Received: by 2002:a05:6000:2cd:b0:391:3406:b4e1 with SMTP id ffacd0b85a97d-3997f900ef6mr4131661f8f.15.1742572191553; Fri, 21 Mar 2025 08:49:51 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:1aa4:f3ec:847a:32d1]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9a3b4bsm2664406f8f.25.2025.03.21.08.49.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Mar 2025 08:49:50 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 21 Mar 2025 16:49:38 +0100 Subject: [PATCH 6/6] gpio: TODO: add an item to track reworking the sysfs interface Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250321-gpio-todo-updates-v1-6-7b38f07110ee@linaro.org> References: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> In-Reply-To: <20250321-gpio-todo-updates-v1-0-7b38f07110ee@linaro.org> To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1584; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=oXnm7kFeWpxFuHmJEsF/8vqjoynKGvtwa0r5iOnzF38=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn3YqajgZ7/ioHcsB+lna5BBxd5JgJmhmErvNPc xMN3wPkHEKJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ92KmgAKCRARpy6gFHHX cozWD/99YTP37CBb+/F+umsRv41EwDFQ5yT321295LWC80OXMDkfntiLNtu4784iaRX6HgJEaPc BDoKB1L//OQHwsJ91n9yvYnYyzwd0XmzDzWCfmuMh4DMjaWkLv32D/+l7k6FqSpoTq/FXu8pdg7 omxhRx6XQ/b+EaJq7syWKEBCvDAqO8wS9tX3DTh+ELRF4tKzIV1WBV9HuzzCog9TUXP2g7Pp8w0 8+ON8sEYBP4O7XtbiV+K1RZQLurqlkZyJPWu5wk1eCtIagsb/1r2Lhd7OW0QEYJKnitsUomUH6B i+TSyd2GEoK3jmVER8bnp2KKpOdMo5bLrh+585tplArzwPKGRLsC9W82M7j26ZQr8JIzg37opOH um3i2xfNLIHzFZBmx5V6Gj657MX3JgIz+Ox1VOFWeJo1EP8BwGjHuAlvWDV3rIvBvSZWV33Hbny niceejOmkhfC7BagUfT/BT3Copi6ns1EiLqnN9itUFB3T16pqf1MtVKFMdkwSPCXRQFPr+x9RNM wMMOEt1iqAeAzdUF7fZP7mhTsKDbv9HzkfYim98fmI7QDZVcG6oiDuOp6Sf1s8/GzC73M5z83v5 bdSQqvNT7lnIASDvDbV7ywfUO/xv6Nv5l8mX0aFkm/So9krzW3gBB6gnHeBtv63FQcaS/I8Zf/9 elTylKnoeEZtyHw== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski It seems there really exists the need for a simple sysfs interface that can be easily used from minimal initramfs images that don't contain much more than busybox. However the current interface poses a challenge to the removal of global GPIO numberspace. Add an item that tracks extending the existing ABI with a per-chip export/unexport attribute pair. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/TODO | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/drivers/gpio/TODO b/drivers/gpio/TODO index 3abf4805335f1..b5f0a7a2e1bf1 100644 --- a/drivers/gpio/TODO +++ b/drivers/gpio/TODO @@ -173,3 +173,16 @@ value back to the caller. We've now added new variants - set_rv() and set_multiple_rv() that return an integer. Let's convert all GPIO drivers treewide to use the new callbacks, remove the old ones and finally rename the new ones back to the old names. + +------------------------------------------------------------------------------- + +Extend the sysfs ABI to allow exporting lines by their HW offsets + +The need to support the sysfs GPIO class is one of the main obstacles to +removing the global GPIO numberspace from the kernel. In order to wean users +off using global numbers from user-space, extend the existing interface with +new per-gpiochip export/unexport attributes that allow to refer to GPIOs using +their hardware offsets within the chip. + +Encourage users to switch to using them and eventually remove the existing +global export/unexport attribues.