From mboxrd@z Thu Jan 1 00:00:00 1970 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 1EB5C4963B3 for ; Tue, 4 Aug 2026 19:28:59 +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=1785871743; cv=none; b=q56WoIgGh43TvN0dUGfHgI3s84EEhHVoTyU+G/BGZRUWGvF8bJg0/mhs9MK4GLVngYO60wJLjSrRq7tnwisZG4J8NhNXLZkt6XoWlPRkJdzQKdyG4eo1C2S7MumpIsFz33HPMbHy2dH3vhNXOAO8j9KmTlwiZCQ3xQ53XwVoKBU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785871743; c=relaxed/simple; bh=CzDd/BO64JBwmeEjDNpabUYaFCOA00Rim71uWmNnWDk=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=YSuvrEfiRPnWmoDBKPkwrmaBWqLprZhcwu0Hkj2WayLqzohJelXx0wdPTCyCp4lyuodRH1uSawWXY8qm77lt9f7R95WM+Q5v4N0GfAzl3dnjgqVO9a+MzQseiqmiod7xns2hhvemYmAhHM2bw+PZI/sdlGKP5TrJvsoSs5X5kTA= 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=ZBdQWEGd; arc=none smtp.client-ip=209.85.128.48 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="ZBdQWEGd" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-4953e04ef16so1482745e9.2 for ; Tue, 04 Aug 2026 12:28:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785871738; x=1786476538; 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=DXiAbpuTaDaZCMHMqvzLfY2DaG1MbPIIUZFJJKSm5nc=; b=ZBdQWEGdYcSJUehXaJ5HdwMj03VKRJqcnwLx5s3QtilReVi84itWsHdtYemeJeqtAb qIeZk0oNgskklRFxxZIPEq0AL+eo30XVTprpQ/HfSnOUCvIywc07be9aFFpycSz5SvgV Dqt0F+Zm8rNDMIXc6EuXQUG8yy4BlX7ogvnwrTjKZVmSwOUJRjNa99zQA2v536Zvf/48 21h0BSJAeCEVn/xZr/oNWBsMSYsIoiQbW92kREIGR7MTd61lC/itl0GRDZ8rlZvG1FaC jWT69E6PvCboXPktqDbJOuo73EvZbF2xz6E2494Jb4s7oVcjsh4WGkukz32Hj1yqamBF Iocw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785871738; x=1786476538; 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=DXiAbpuTaDaZCMHMqvzLfY2DaG1MbPIIUZFJJKSm5nc=; b=FRVlSMhUj/oiyffZ5T+QqLNg+Wn2dflzLsWWqItpMaGCzWez+IxZo2VzzOXmw90xEe /C1l2ppp2jpS9Z+X6RsDcwD6pXrX5oyqAuQACHuKhR7KRkmMNAnCtIG8LIO7wjFVxuLB dRgdXQQlO0W/pFQCGe5zB5pxaviqbWrJAeKD9tlqJRpnq8WX58mZroFcK+bp0jilCBsK RUBtgNTndgCf8w8HOFLABVjonp0GnFQJh5MXsO5BI+J7DIWo94gjf3L+Wz43R2JXOUNm 3RGOMbxNlKYas5eHFtAjoCi35wfWnISzih1Xb0pZGDENmNcM0MkZ31FUZYtZYzl+nz8P j8FQ== X-Forwarded-Encrypted: i=1; AHgh+RrVZcKFQKSX+C5ZCJIDXnhJFFz+mwWCznUL+tEz98oS9741jR82ain0dtA9n5YTg4zAbMdsgzvtMl6rQvM=@vger.kernel.org X-Gm-Message-State: AOJu0YzZO4NiBBPgWCzDUeBtgoX26H383jc0F6xZSjtDC1M4r44OLuyH Xzqlxd4zkRHccntioqFiaJeKguwFSyslqFqZQkm76M4LwKRq2I3JOE0p X-Gm-Gg: AR+sD10mEJpg1Yx8pys9dIW02AMfNkH+3bm81QFjs1sCKY2PHGo1Dkm6Bke5PQdV8vd 556GX4C+ouMrAxyZvjONyScd/9i87YLhkJHCoh7WSL0vBmbqnHF3gqQTnzB/LsGXJeB7zKr1j/t hRI8RXMK70650ijESKZZTshM/IXJ2IR02/7NtLq74RWJwKChF+BPNCCGv9c3xnLeD7CaQtJizg/ 10ICZWoEV5B9tH2gPeiDbUccAPYxGsw+PdhHkc8+8Ovfnku1YMUedm4iUIuEmLG0wJ0MwKw7U5j nKvueaXzaJIDr54dA4hQvhaFUX+sN/iwK2xNk0yQ1GFr0uv59MCU+UVP79LKiMNihtq7GYOAxZH jXBx3Al25U7Lqn6yonGuCJnIqrapr09u8Yfw9dYOpwX/MGbqjquqYz+TmyRyXQ4u3QOrFQd9Ur9 jYW/dxuqU09dKU9nD7PYwv/OA4dmI+fh+DKVSUXEKB/CRsn7HkYHRB3o2MVmkv75MniY2SjrDpW eFImGXVTqkRuBb7NbpJYQ3+oj09tiHTmQ== X-Received: by 2002:a05:600c:6dd7:b0:498:28b:1025 with SMTP id 5b1f17b1804b1-4994e7a7d1fmr5229195e9.5.1785871737672; Tue, 04 Aug 2026 12:28:57 -0700 (PDT) Received: from MSI-LINUX.kielce.vectranet.pl ([2a02:2a40:27ec:2900:68f0:30cb:8ca1:f965]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4994e4bf820sm8248745e9.0.2026.08.04.12.28.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Aug 2026 12:28:57 -0700 (PDT) From: Jakub Szczudlo To: linux-iio@vger.kernel.org Cc: jic23@kernel.org, dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, marcelo.schmitt@analog.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, mike.looijmans@topic.nl, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, jorge.marques@analog.com, antoniu.miclaus@analog.com, mazziesaccount@gmail.com, jishnu.prakash@oss.qualcomm.com, duje@dujemihanovic.xyz, wens@kernel.org, sakari.ailus@linux.intel.com, linusw@kernel.org, Jakub Szczudlo Subject: [PATCH v9 0/3] iio: adc: ti-ads1100: Add support for TI ADS1110 to ti-ads1100 driver Date: Tue, 4 Aug 2026 21:28:37 +0200 Message-ID: <20260804192840.29121-1-jakubszczudlo40@gmail.com> X-Mailer: git-send-email 2.47.3 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add support for the TI ADS1110 to the existing ADS1100 ADC IIO driver. The ADS1110 is pin-to-pin compatible with the ADS1100 while providing higher resolution and an internal voltage reference. This patch series extends driver support for ADS1110, updates device tree bindings and Kconfig text, and improves the overall hardware description for the TI ADS1100 family. Tested on: Raspberry pi 3b+ with 7.0 stable kernel --- V8 -> V9: - after more testing on ADS1110, it was found that changing the data rate or gain in single-shot mode could return stale or incorrect readings; this version makes the driver explicitly start a fresh conversion and wait for the busy flag before reading the new result. - Link to v8: https://lore.kernel.org/linux-iio/20260717185033.246580-1-jakubszczudlo40@gmail.com/ V7 -> V8: - fix logic error in ads1100_new_data_is_ready, on ads1110 it will wait for new conversion, in ads1100 it will just wait for some time because ST/BSY register always reads 1 there - change ads_config to chip_info - fail in i2c_get_match_data will return -ENODATA instead of EINVAL - make returning value in ads1100_poll_data_ready more readable - move i2c_get_match_data higher in device probe function so all indio_dev will be in the same place - Link to v7: https://lore.kernel.org/linux-iio/20260714194717.596193-1-jakubszczudlo40@gmail.com/ V6 -> V7: - checking for negative value returned from get_vref_millivolts and taking value only in probe will be added in the next patchset to be easier to review - change ads1100_new_data_not_ready to ads1100_new_data_is_ready and returning int to be able to return error when i2c read fails - doesn't add checking for short read as i2c_master_recv can return count of bytes read or negative error code, so checking for short read is not needed - change from MSPS to SPS in Kconfig help text - set iio_dev->name after taking device name from device tree in third patch to be more generic and not only for ads1110 - fix typo in ads1100_get_vref_millivolts - correct typos in commit messages and add ti-ads1100: in subject line - Link to v6: https://lore.kernel.org/linux-iio/20260711184414.1013686-1-jakubszczudlo40@gmail.com/ V5 -> V6: - correct for loop so it will be more readible and return error when iterator matches array size - fix SI unit letter size - correct using available_data_rate_hz array when using ads1110 - bring cast to char* back - Link to v5: https://lore.kernel.org/linux-iio/20260628194341.66752-1-jakubszczudlo40@gmail.com/ V4 -> V5: - Correct pm macros to be more generic - fix variables ordering in new functions - delete unnecessary casts - add unit to variable names - change array name so it will sound as array not variable - correct get_vref_milivolts so it will check if not negative value returned - delete unnecessary short read check in i2c receive - Link to v4: https://lore.kernel.org/linux-iio/20260622221550.374235-1-jakubszczudlo40@gmail.com/ V3 -> V4: - make fixes patch the first change in the series - correct error handling when short read - use ACQUIRE macros from pm_runtime.h in new functions - Link to v3: https://lore.kernel.org/linux-iio/20260613190957.654798-1-jakubszczudlo40@gmail.com/ V2 -> V3: - clean patch from unreleated changes - divide adding support for ads1110 into separate patch - add missing changelog - Link to v2: https://lore.kernel.org/linux-iio/20260607183542.368184-1-jakubszczudlo40@gmail.com/ V1 -> V2: - go from creating new driver to extending ADS1100 driver to support ADS1110 - Link to v1: https://lore.kernel.org/linux-iio/20260527164312.355729-1-jakubszczudlo40@gmail.com/ Jakub Szczudlo (3): iio: adc: ti-ads1100: Fix incorrect reading when datarate changed in single mode dt-bindings: iio: adc: ti,ads1100: add support for ADS1110 iio: adc: ti-ads1100: Add ti-ads1110 support to ti-ads1100 driver .../bindings/iio/adc/ti,ads1100.yaml | 10 +- drivers/iio/adc/Kconfig | 9 +- drivers/iio/adc/ti-ads1100.c | 189 +++++++++++++++--- 3 files changed, 178 insertions(+), 30 deletions(-) -- 2.47.3