dt-bindings: w1: Convert HDQ One Wire to DT schema

Convert the Texas Instruments OMAP HDQ One Wire bindings to DT schema.

During the conversion, several updates were made to reflect actual hardware
usage and resolve dtbs_check warnings:
- 'ti,hwmods' has been made optional.
- Added 'clocks' and 'clock-names' properties as they are used in actual
  device trees (e.g., am437x-l4.dtsi).
- Added a second example for the AM4372 HDQ controller to demonstrate
  the clock and interrupt configuration.

Signed-off-by: Eduard Bostina <egbostina@gmail.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260630124826.2992529-1-egbostina@gmail.com
[krzk: Rename node names to onewire to match convention, fix path in omap-hdq.rst]
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
This commit is contained in:
Eduard Bostina 2026-06-30 12:48:25 +00:00 committed by Krzysztof Kozlowski
parent 53f33fd74d
commit faa63a51be
3 changed files with 71 additions and 23 deletions

View File

@ -1,22 +0,0 @@
* OMAP HDQ One wire bus master controller
Required properties:
- compatible : should be "ti,omap3-1w" or "ti,am4372-hdq"
- reg : Address and length of the register set for the device
- interrupts : interrupt line.
- ti,hwmods : "hdq1w"
Optional properties:
- ti,mode: should be "hdq": HDQ mode "1w": one-wire mode.
If not specified HDQ mode is implied.
Example:
- From omap3.dtsi
hdqw1w: 1w@480b2000 {
compatible = "ti,omap3-1w";
reg = <0x480b2000 0x1000>;
interrupts = <58>;
ti,hwmods = "hdq1w";
ti,mode = "hdq";
};

View File

@ -0,0 +1,70 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/w1/ti,hdq.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Texas Instruments OMAP HDQ One Wire Bus Master Controller
maintainers:
- Eduard Bostina <egbostina@gmail.com>
properties:
compatible:
enum:
- ti,omap3-1w
- ti,am4372-hdq
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
maxItems: 1
clock-names:
items:
- const: fck
ti,hwmods:
description: Name of the hwmod associated to the hdq
$ref: /schemas/types.yaml#/definitions/string
const: hdq1w
ti,mode:
description: |
Operation mode. "hdq" for HDQ mode, "1w" for One-Wire mode.
If not specified, HDQ mode is implied.
$ref: /schemas/types.yaml#/definitions/string
enum:
- hdq
- 1w
default: hdq
required:
- compatible
- reg
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
onewire@0 {
compatible = "ti,am4372-hdq";
reg = <0x0 0x1000>;
interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&func_12m_clk>;
clock-names = "fck";
};
- |
onewire@480b2000 {
compatible = "ti,omap3-1w";
reg = <0x480b2000 0x1000>;
interrupts = <58>;
ti,hwmods = "hdq1w";
ti,mode = "hdq";
};

View File

@ -50,5 +50,5 @@ The driver also supports 1-wire mode. In this mode, there is no need to
pass slave ID as parameter. The driver will auto-detect slaves connected
to the bus using SEARCH_ROM procedure. 1-wire mode can be selected by
setting "ti,mode" property to "1w" in DT (see
Documentation/devicetree/bindings/w1/omap-hdq.txt for more details).
Documentation/devicetree/bindings/w1/ti,hdq.yaml for more details).
By default driver is in HDQ mode.