{"id":2220039,"url":"http://patchwork.ozlabs.org/api/covers/2220039/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/cover/20260405-ti-ads7950-facelift-v5-0-1f980ed3cf9e@gmail.com/","project":{"id":42,"url":"http://patchwork.ozlabs.org/api/projects/42/?format=json","name":"Linux GPIO development","link_name":"linux-gpio","list_id":"linux-gpio.vger.kernel.org","list_email":"linux-gpio@vger.kernel.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260405-ti-ads7950-facelift-v5-0-1f980ed3cf9e@gmail.com>","list_archive_url":null,"date":"2026-04-06T04:39:22","name":"[v5,0/4] ti-ads7950: fix gpio handling and facelift","submitter":{"id":695,"url":"http://patchwork.ozlabs.org/api/people/695/?format=json","name":"Dmitry Torokhov","email":"dmitry.torokhov@gmail.com"},"mbox":"http://patchwork.ozlabs.org/project/linux-gpio/cover/20260405-ti-ads7950-facelift-v5-0-1f980ed3cf9e@gmail.com/mbox/","series":[{"id":498820,"url":"http://patchwork.ozlabs.org/api/series/498820/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/list/?series=498820","date":"2026-04-06T04:39:22","name":"ti-ads7950: fix gpio handling and facelift","version":5,"mbox":"http://patchwork.ozlabs.org/series/498820/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2220039/comments/","headers":{"Return-Path":"\n <linux-gpio+bounces-34693-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=XfpIxvmc;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34693-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=\"XfpIxvmc\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=74.125.82.51","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=gmail.com"],"Received":["from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fpxSw1Zftz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 06 Apr 2026 14:40:00 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id E61803008760\n\tfor <incoming@patchwork.ozlabs.org>; Mon,  6 Apr 2026 04:39:31 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 3289031B833;\n\tMon,  6 Apr 2026 04:39:31 +0000 (UTC)","from mail-dl1-f51.google.com (mail-dl1-f51.google.com\n [74.125.82.51])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id CAA3A30EF6F\n\tfor <linux-gpio@vger.kernel.org>; Mon,  6 Apr 2026 04:39:29 +0000 (UTC)","by mail-dl1-f51.google.com with SMTP id\n a92af1059eb24-1273349c56bso4284888c88.0\n        for <linux-gpio@vger.kernel.org>;\n Sun, 05 Apr 2026 21:39:29 -0700 (PDT)","from dtor-ws.sjc.corp.google.com\n ([2a00:79e0:2ebe:8:fe13:98b9:9e98:d1bb])\n        by smtp.gmail.com with ESMTPSA id\n a92af1059eb24-12bed93f861sm15182005c88.0.2026.04.05.21.39.27\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Sun, 05 Apr 2026 21:39:27 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775450371; cv=none;\n b=r+olxzkQR0a9Jkq0kFvwvlKOSs2F0j0+jAkOntB1Ry44e13GcxvxfFzEl9KByh8b6Cj4L+Oiacjrg+5S5hOqCu4KlIIARKcTv6weEj16P1br0orRTY/plAQNlsqBgY28r6GBm3WI6rkDcs600kADgS1DV39iOJh2mEIt9AF9Wa8=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775450371; c=relaxed/simple;\n\tbh=RzEbZjcRmdidkNJkUegPmAYcXuIFqLW3QK+aimG4ZBo=;\n\th=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc;\n b=o7g9cr4YfXf+NI6Le0F/h+hqs0bJC1kKjWNBUty1qY9xgyhNxmeMyA2ADGXOG08GqIfWnVozSdEObf3jmJMy0KeTzviSXk8C6nJFly/IMooJI+K4jKZnNhFOdUsO0oZleYlpiIcX/Li1Zm29SqhUWfQydxKIhyzJ3t1Ri+oMLpc=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com;\n spf=pass smtp.mailfrom=gmail.com;\n dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=XfpIxvmc; arc=none smtp.client-ip=74.125.82.51","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=gmail.com; s=20251104; t=1775450369; x=1776055169;\n darn=vger.kernel.org;\n        h=cc:to:content-transfer-encoding:mime-version:message-id:date\n         :subject:from:from:to:cc:subject:date:message-id:reply-to;\n        bh=94bs8yeSDdB1bxNykO0LbTpY30fHjkiSTFrt3pHkIKs=;\n        b=XfpIxvmcRardypmqcJP/Eq/45nQ+nNbaLRhwNzkQaxyDnSqAJO1UHh25dKedy0HPa3\n         VeX8w2NLy4CFhgLTpJwMtSQk9UL341ctSPZcqrdZiuQR66Xtk+ikehDY5g4F5brOjeNe\n         LC81X2XsQkHm0ru9Iu9eNGq84hn/bLT/7Yc83JyCYcLZMACdPrNqqj0LavH9Fkp0FdtD\n         hTkNC0/ihJ34bON2jMzSXAd2PJ3IC2UzW7Q3pEKp4Pb+ViTSdkmOcCs0LdEpPo5t3T3K\n         AW0syZG/72SSK1DQNybip2uJHqxyFWyliE1tBfhFg+iKjd2VhbhwqoUx2+Fpiko7zIHX\n         OhbQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775450369; x=1776055169;\n        h=cc:to:content-transfer-encoding:mime-version:message-id:date\n         :subject:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=94bs8yeSDdB1bxNykO0LbTpY30fHjkiSTFrt3pHkIKs=;\n        b=FUdyDTAZb3m8QEQ92UlW3Gxknvk7GTtKAXJrpoTisW3LbKBAlTvc+TsAShIOa7a09O\n         AywybV5ciZ3fKio9tgScCSuiwgAeTcKHbxF2tTe9idMuF+htSKi31BaWMhUioecIvAyF\n         AcCopGR2yDweOO8/sFQOtMfx5dECNvNZaX+wgKPqYkRRrzb/4FFMOxE6b++P7HBXoHTY\n         oFlkRSzJRfKP8IjYnOFbJbIorzYMdMxZI1bL70kNA38YFUDGhQrQPbTs+okxZOzJM2CI\n         UGhPTH4dWcv2g2F5IbJ+LyQYY2A9s1YMe0yqmFZujCzGrhM4DqUL4IVQQqWHdIsKCn3o\n         TEOw==","X-Forwarded-Encrypted":"i=1;\n AJvYcCUYozZ/vCGgZQfYjCqsOBOkwYQo7xi+yYfTUzWenVfkqkH7xwUdTqZT44sdzCThO/ug12m4wAQkoMoj@vger.kernel.org","X-Gm-Message-State":"AOJu0YxMuUiPLDcBhsgxWTkuq4U/ghxdFpDe6l2XyjJ7UFUn8BF/Srg9\n\tpiprWVU9AHe7mnaMS7NCNdySphiZtHfcBFYDZBYOQuVovTlQwIBiNrWx","X-Gm-Gg":"AeBDieusIG01IWxS2hEXirT3DG+ZkkKw7GVSnR9LheicNMjz0Bno3NniD7/miRop5Sq\n\tYgTBY7D0aCgWKa2kLyPY6Dk522NIcqHnEYI7H3RMpH7/xYS9dE6HI1fjaz5/wDEKB1b5u0tOToN\n\t0m4YNgVlwkwYx3abAytdiHjpCxgYL51EaBBxpO1erN74rxVr8E8VvuNg7n6xU8J+cjLcK6SuDG7\n\tpDApcl9Xr5lwLC6JayyU+6+1HasSQsp84Qm9e4jw8USZiNxRauonbi5QlUT8w3e6z3Iil0PE5zD\n\tiBXGpes8FX+2GwjBgijv+G2PpfcTP0Mpop/5GwShRfMxtVJHc4Fr0Flga0jmrYIWTCS+FJdGXMH\n\toY0QBifO4s0Dc3c8s3EHIup2GQ/KVlh2TnuBno/cPA1jqx3TPTYlhbXXXZpxPBK93xBM2l+0rAl\n\tNnpS9ZOpwNh4QQmOd2WHuQJZ+KGfrvABa8OCs5W/o/lWru89tUpqHBD/GaloF0Yl9M3+/dQdGXx\n\tctfIYhbV6gL4AE=","X-Received":"by 2002:a05:7022:43a8:b0:119:e569:f609 with SMTP id\n a92af1059eb24-12bfb6ecd57mr4932000c88.2.1775450368753;\n        Sun, 05 Apr 2026 21:39:28 -0700 (PDT)","From":"Dmitry Torokhov <dmitry.torokhov@gmail.com>","Subject":"[PATCH v5 0/4] ti-ads7950: fix gpio handling and facelift","Date":"Sun, 05 Apr 2026 21:39:22 -0700","Message-Id":"<20260405-ti-ads7950-facelift-v5-0-1f980ed3cf9e@gmail.com>","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","X-B4-Tracking":"v=1; b=H4sIAPo402kC/23Oza7CIBAF4FcxrJ1mCqWCK9/D3AWXHzvRigFCN\n Kbvfql304XLM5Pz5bxZ9ol8ZsfdmyVfKVO8tyD3O2Ync794INcy48hH5ByhEBiXD1oiBGP9jUJ\n pB/UrhUYzyoG15iP5QM+Pev5pOaQ4Q5mSNxur183TXHdCSoWqhx7cTCW9uhJTvE6xni6zoVtn4\n 7yiE+X2eH2WVrHS/5BA+XVUFYBguAjO9QYP2m+4dVQdNgbX342hGVaOykpUdtBmayzL8gf4OJD\n WPwEAAA==","X-Change-ID":"20260220-ti-ads7950-facelift-ad8b5390a654","To":"Jonathan Cameron <jic23@kernel.org>,\n David Lechner <dlechner@baylibre.com>","Cc":"=?utf-8?q?Nuno_S=C3=A1?= <nuno.sa@analog.com>,\n  Andy Shevchenko <andy@kernel.org>, Linus Walleij <linusw@kernel.org>,\n  Bartosz Golaszewski <brgl@kernel.org>, linux-iio@vger.kernel.org,\n  linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,\n  Jonathan Cameron <Jonathan.Cameron@huawei.com>,\n  Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>","X-Mailer":"b4 0.16-dev-6911d"},"content":"The original reason for this series is to make sure ti_ads7950_get()\nreturns result in range [0, 1] or a negative error code to comply with\ngpiolib requirement.\n\nDuring review David noticed the fact that the function also clobbers\ngpio state. Fixing that lead to adding cleanups using guard() and devm.\n\n---\nChanges in v5:\n- replace mutex_init() with devm_mutex_init() (Bartosz)\n- Link to v4: https://patch.msgid.link/20260329-ti-ads7950-facelift-v4-0-c568c508c49a@gmail.com\n\nChanges in v4:\n- rebased on top of latest next\n- dropped the 2 already applied patches\n- restored inadvertently removed mutex_init() (Andy)\n- stopped calling devm_regulator_get_enable_read_voltage() on ACPI\n  systems as it is guaranteed to fail (David, Jonathan)\n- removed call to spi_set_drvdata() since it is not needed anymore (David)\n- Link to v3: https://patch.msgid.link/20260305-ti-ads7950-facelift-v3-0-a23fdd1a079e@gmail.com\n\nChanges in v3:\n\n- Added \"Fixes\" tags\n- Picked up reviewed-by tags for #1 and #2\n- Dropped the conversion to \"error\" variables\n- Avoid using scoped_guard (per David)\n- directly return results of function calls at the end of function (David)\n- Split spi_sync() error handling into a new patxch (Andy)\n- Switch to using devm_regulator_get_enable_read_voltage() (David)\n\nChanges in v2:\n\n- style fixes in #1 (per David)\n- fix to not clobber state (#2, new)\n- #3 and #4 (new)\n\n---\nDmitry Torokhov (4):\n      iio: adc: ti-ads7950: switch to using guard() notation\n      iio: adc: ti-ads7950: simplify check for spi_setup() failures\n      iio: adc: ti-ads7950: switch to using devm_regulator_get_enable_read_voltage()\n      iio: adc: ti-ads7950: complete conversion to using managed resources\n\n drivers/iio/adc/ti-ads7950.c | 197 ++++++++++++++-----------------------------\n 1 file changed, 64 insertions(+), 133 deletions(-)\n---\nbase-commit: 2febe6e6ee6e34c7754eff3c4d81aa7b0dcb7979\nchange-id: 20260220-ti-ads7950-facelift-ad8b5390a654\n\nThanks."}