From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) (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 0F1802FE59C for ; Sun, 28 Jun 2026 19:14:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.181 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782674063; cv=none; b=B9mHUfRv26lLU+tTSMadZtifmXuAfCJhSos2YhAOcozo9uY7zqNSsV/VGE4t2prr0w+8BXqBVEopOtj3Gl2FleTZ61pl6xj8KR24xqzWauJYX9jEr0qG8V8YT8k+UHuhuwJqitoM7LQifSE5Za+lj656ZHrkpjkxX86kD6qxiik= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782674063; c=relaxed/simple; bh=wA8JNmn3A5+dDyuybDhvw9w3jbayZYBxH3aZrZNNWws=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gpRGGS6GTJ5F1BHls6Bw4LFrmW1R2A5PSIHwDGKyMnHH/j19VPAHIx4fl7AVxna7jeVNY643oKZzj/xDMtkxesDVUicw7TOYyxhSKZt2ZUINWeDs4NxHSP1lrmDaxSFlQ+3OnbSsCiBPSA39hbSrCdniSdet+uwVbVCSRNpbvHM= 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=XDitKAH0; arc=none smtp.client-ip=209.85.214.181 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="XDitKAH0" Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2c82da9504cso6534485ad.2 for ; Sun, 28 Jun 2026 12:14:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782674061; x=1783278861; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=gXbBJ9Y4kfhHHzoTBBCDKg/cyCBNNKfvMr52MYhNSck=; b=XDitKAH0T2npFm5mrdQ2CFCwNld22XWu4pdHpQSaXYzpb4Xcr5u44L2s5A8/BmBgdx ZxY/niIUcxSq6qXv1bN4GsamWZE0q0zP8XeU9UftGxCRKnp9tDwydbgqx9mWjRxU30lQ lZrO+7i3FzoKQ20K5vEdTn5B1DrBfGXTt+YFanaGk/rarsKkV3qAnkAi1LffuDZ+wJxn 7H+nYuf5kEUb2WsE/dCwntYazsIED0lVi6J4aZ0ojE6Q08T0qtzjQkKOpIzknOQaAsFG nhXhLoG6Dg3lJm60HXduqsKMnTj4nxg/aaXOnmfRdiLv10xQGutSuGlfY3+Ef7EUySI1 4eUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782674061; x=1783278861; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=gXbBJ9Y4kfhHHzoTBBCDKg/cyCBNNKfvMr52MYhNSck=; b=DJf3JFsI+AtQCJiB2lLzR846+49jTZmSmDZ+OaG6sJG9L36mJ8V9CSbW5wcIbEEYvx J1fD6v0oR2FnaoighDuO7wMsgVd33N6bnJHTs0AroZDlIQysmQ3cx5ewjthD/Dqnl2st P27QfM5sNfZvJrC29NWY8J5RlawmTpPGt0/Ba4+pBGnRcEB+3+x3h+7Mklo0tZsZfFht DZgsLuld7Wx/vTzHS2U/Z27/U1VsKj4t52Tm2J2/bcGiGZnSgXqz3kwClRYS7NyUal3B uDZ37lieLwiR6b3/N+qLTo1XjYeDMjDEs4rJKW3oFMzj8E9hscdybqc8Uxml9G3+cHXU imDA== X-Forwarded-Encrypted: i=1; AHgh+RpUYTFLAeFZIH0PbWb0lu2dmdy9P0jDFYIx9lriJC9g1kZY7Yorx9puw1xVY3+12SVTr9hcrDK5Yv9KtkM=@vger.kernel.org X-Gm-Message-State: AOJu0YyxY22M4bQGm6SH6AjBkxgPD4YykRK+ln+4BAWOZIy6Z35WlmB1 cwM+6ydY6sOqU/Q9Dx4IMMUDhro2Sg0PiHeNrPOtm9tmlE44bgQRWes8 X-Gm-Gg: AfdE7cndtDWB0XpS9ODTMWCFvnPGEqMh7KTYhVI4ICYTGFmulS86RCNmgTYWBLgKNw7 3XPNnf110BWZkmy5dJiiTCei7oDlAo3Alhtb7TIKen3QfmtfzGVICCNbLMvRWI+PZKnMxn8akpn P7CjrIMKooc2klA8zN7rqfDZwDecRGoOnm3XYwbDdO0nhCebJXVsvubyreb6vUpCl210yHOrZpr 3yyw13kgkJhtHIoCZAhMCb4sRGWSJgcgRAb5WoSiopWIE2XTYSpevY73/Mk/fsyIbTg8n8aKnnv 5TDuxxYC2l9LD7hJILXFJdvVY2Wpt9AfSpTw4PTIgpGqYp+wSA9AEYM9qsvoGg0aihafCDHh8Td 33OlZmGr9Xc8YpGV9RXAnN1FMmCdrSqMR47Pl0PbfgSqRf/m8RxLoB96s0PkrhAxPv013Lg4Y8w 5qm28SvrR9RJFrX9PsAGvS2kVr5VAPCI33ns6O9pCH9HoYXaurMh7L3Vtmrl4UZRw+L0vb7ETfG aHV8gTgcLJf4YNVWOFICvbKdvIC X-Received: by 2002:a17:903:2a84:b0:2c8:4c29:afe7 with SMTP id d9443c01a7336-2c98549cdc2mr77081575ad.3.1782674061260; Sun, 28 Jun 2026 12:14:21 -0700 (PDT) Received: from DESKTOP-G3E0OSP.localdomain ([112.172.255.242]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ca0b454815sm1354385ad.2.2026.06.28.12.14.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 28 Jun 2026 12:14:20 -0700 (PDT) From: Jinseob Kim To: Jonathan Cameron , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Jonathan Corbet , Shuah Khan , Jinseob Kim , linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH RFC v6 1/5] dt-bindings: iio: add Open Sensor Fusion device Date: Mon, 29 Jun 2026 04:13:33 +0900 Message-ID: <20260628191337.937-2-kimjinseob88@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260628191337.937-1-kimjinseob88@gmail.com> References: <20260628191337.937-1-kimjinseob88@gmail.com> 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 a binding for the generic Open Sensor Fusion host interface. Open Sensor Fusion devices report capabilities and samples over an OSF protocol stream. Sensor channels are discovered at runtime from capability reports instead of being described individually in Device Tree. The protocol version is discovered at runtime from the OSF frame header. OSF GREEN is a product identity, and OSF0 is a wire-format magic value, so neither is used as the Linux compatible string. Signed-off-by: Jinseob Kim --- .../bindings/iio/opensensorfusion,osf.yaml | 54 +++++++++++++++++++ .../devicetree/bindings/vendor-prefixes.yaml | 2 + MAINTAINERS | 6 +++ 3 files changed, 62 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/opensensorfusion,osf.yaml diff --git a/Documentation/devicetree/bindings/iio/opensensorfusion,osf.yaml b/Documentation/devicetree/bindings/iio/opensensorfusion,osf.yaml new file mode 100644 index 000000000..8016d582f --- /dev/null +++ b/Documentation/devicetree/bindings/iio/opensensorfusion,osf.yaml @@ -0,0 +1,54 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/opensensorfusion,osf.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Open Sensor Fusion Sensor Aggregation Hub + +maintainers: + - Jinseob Kim + +description: | + This binding documents the generic Open Sensor Fusion host interface. Open + Sensor Fusion is a sensor aggregation hub. The hub exposes an OSF protocol + data stream over its host interface and reports capabilities and samples for + multiple sensor classes. The actual sensor channels are discovered at runtime + from OSF capability reports instead of describing them in Device Tree. The + protocol version is discovered at runtime. + + Public project documentation is available at: + + https://github.com/opensensorfusion + + The compatible describes the generic Open Sensor Fusion host interface. It + is not an OSF GREEN board identity, and it does not encode the OSF0 wire + magic. OSF0, protocol_major, and protocol_minor are wire-protocol details + exchanged in OSF frames. + +allOf: + - $ref: /schemas/serial/serial-peripheral-props.yaml# + +properties: + compatible: + const: opensensorfusion,osf + + vcc-supply: + description: + Regulator supplying power to the Open Sensor Fusion device. + +required: + - compatible + - vcc-supply + +unevaluatedProperties: false + +examples: + - | + serial { + sensor { + compatible = "opensensorfusion,osf"; + vcc-supply = <&vcc_sensor>; + }; + }; +... diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml index 28784d66a..88172d4a4 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -1237,6 +1237,8 @@ patternProperties: description: OpenPandora GmbH "^openrisc,.*": description: OpenRISC.io + "^opensensorfusion,.*": + description: Open Sensor Fusion "^openwrt,.*": description: OpenWrt "^option,.*": diff --git a/MAINTAINERS b/MAINTAINERS index c2c6d7927..e4df9d8dc 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -20011,6 +20011,12 @@ F: Documentation/devicetree/ F: arch/*/boot/dts/ F: include/dt-bindings/ +OPEN SENSOR FUSION +M: Jinseob Kim +S: Maintained +F: Documentation/devicetree/bindings/iio/opensensorfusion,osf.yaml +K: opensensorfusion + OPENCOMPUTE PTP CLOCK DRIVER M: Vadim Fedorenko L: netdev@vger.kernel.org -- 2.43.0