From: Dimitri Fedrau <dimitri.fedrau@liebherr.com>
Adding documentation for NXPs TJA1145 CAN transceiver, which resides like
the ti,tcan104x-can.yaml in the same directory as other generic PHY
subsystem bindings. At the moment there is only support for simple PHYs
by using regulator bindings in combination with can-transceiver.yaml or
PHYs that implement the generic PHY subsystem like the NXP TJA1145.
Signed-off-by: Dimitri Fedrau <dimitri.fedrau@liebherr.com>
---
.../devicetree/bindings/phy/nxp,tja1145-can.yaml | 79 ++++++++++++++++++++++
1 file changed, 79 insertions(+)
diff --git a/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml b/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..3b81a2e1ead8452ed5fcf2021f33d628d4e12346
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml
@@ -0,0 +1,79 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/phy/nxp,tja1145-can.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TJA1145 CAN transceiver
+
+maintainers:
+ - Dimitri Fedrau <dimitri.fedrau@liebherr.com>
+
+allOf:
+ - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+properties:
+ compatible:
+ const: nxp,tja1145-can
+
+ reg:
+ maxItems: 1
+
+ "#phy-cells":
+ const: 0
+
+ spi-max-frequency:
+ maximum: 4000000
+
+ spi-cpha: true
+
+ spi-cs-setup-delay-ns:
+ minimum: 50
+ default: 50
+
+ spi-cs-hold-delay-ns:
+ minimum: 50
+ default: 50
+
+ spi-cs-inactive-delay-ns:
+ minimum: 250
+ default: 250
+
+ vcc-supply:
+ description:
+ CAN transceiver supply voltage
+
+ vio-supply:
+ description:
+ Supply voltage for I/O level adaptor
+
+ vbat-supply:
+ description:
+ Battery supply voltage
+
+required:
+ - compatible
+ - reg
+ - "#phy-cells"
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ can-phy@0 {
+ compatible = "nxp,tja1145-can";
+ reg = <0>;
+ #phy-cells = <0>;
+ spi-max-frequency = <4000000>;
+ spi-cpha;
+ spi-cs-setup-delay-ns = <50>;
+ spi-cs-hold-delay-ns = <50>;
+ spi-cs-inactive-delay-ns = <250>;
+ vcc-supply = <®_5v0>;
+ vio-supply = <®_3v3>;
+ vbat-supply = <®_24v0>;
+ };
+ };
--
2.39.5
On Mon, Oct 13, 2025 at 11:19:18AM +0200, Dimitri Fedrau via B4 Relay wrote:
> From: Dimitri Fedrau <dimitri.fedrau@liebherr.com>
>
> Adding documentation for NXPs TJA1145 CAN transceiver, which resides like
> the ti,tcan104x-can.yaml in the same directory as other generic PHY
> subsystem bindings. At the moment there is only support for simple PHYs
> by using regulator bindings in combination with can-transceiver.yaml or
> PHYs that implement the generic PHY subsystem like the NXP TJA1145.
>
> Signed-off-by: Dimitri Fedrau <dimitri.fedrau@liebherr.com>
> ---
> .../devicetree/bindings/phy/nxp,tja1145-can.yaml | 79 ++++++++++++++++++++++
> 1 file changed, 79 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml b/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml
> new file mode 100644
> index 0000000000000000000000000000000000000000..3b81a2e1ead8452ed5fcf2021f33d628d4e12346
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml
> @@ -0,0 +1,79 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/phy/nxp,tja1145-can.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TJA1145 CAN transceiver
> +
> +maintainers:
> + - Dimitri Fedrau <dimitri.fedrau@liebherr.com>
> +
> +allOf:
> + - $ref: /schemas/spi/spi-peripheral-props.yaml#
> +
> +properties:
> + compatible:
> + const: nxp,tja1145-can
I'd drop the -can here, since I don't think the device can be anything
else?
> +
> + reg:
> + maxItems: 1
> +
> + "#phy-cells":
> + const: 0
> +
> + spi-max-frequency:
> + maximum: 4000000
> +
> + spi-cpha: true
Is this optionally cpha or always? I'd mark it required if it is always
needed for the device to function.
> +
> + spi-cs-setup-delay-ns:
> + minimum: 50
> + default: 50
> +
> + spi-cs-hold-delay-ns:
> + minimum: 50
> + default: 50
> +
> + spi-cs-inactive-delay-ns:
> + minimum: 250
> + default: 250
> +
> + vcc-supply:
> + description:
> + CAN transceiver supply voltage
> +
> + vio-supply:
> + description:
> + Supply voltage for I/O level adaptor
> +
> + vbat-supply:
> + description:
> + Battery supply voltage
> +
> +required:
> + - compatible
> + - reg
> + - "#phy-cells"
> +
> +unevaluatedProperties: false
If the properties you've listed above from spi-peripheral-props are the
only ones suitable for the device, I think additionalProperties: false
is sufficient here.
Cheers,
Conor.
pw-bot: changes-requested
> +
> +examples:
> + - |
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + can-phy@0 {
> + compatible = "nxp,tja1145-can";
> + reg = <0>;
> + #phy-cells = <0>;
> + spi-max-frequency = <4000000>;
> + spi-cpha;
> + spi-cs-setup-delay-ns = <50>;
> + spi-cs-hold-delay-ns = <50>;
> + spi-cs-inactive-delay-ns = <250>;
> + vcc-supply = <®_5v0>;
> + vio-supply = <®_3v3>;
> + vbat-supply = <®_24v0>;
> + };
> + };
>
> --
> 2.39.5
>
>
Am Mon, Oct 13, 2025 at 08:41:49PM +0100 schrieb Conor Dooley: > On Mon, Oct 13, 2025 at 11:19:18AM +0200, Dimitri Fedrau via B4 Relay wrote: > > From: Dimitri Fedrau <dimitri.fedrau@liebherr.com> > > > > Adding documentation for NXPs TJA1145 CAN transceiver, which resides like > > the ti,tcan104x-can.yaml in the same directory as other generic PHY > > subsystem bindings. At the moment there is only support for simple PHYs > > by using regulator bindings in combination with can-transceiver.yaml or > > PHYs that implement the generic PHY subsystem like the NXP TJA1145. > > > > Signed-off-by: Dimitri Fedrau <dimitri.fedrau@liebherr.com> > > --- > > .../devicetree/bindings/phy/nxp,tja1145-can.yaml | 79 ++++++++++++++++++++++ > > 1 file changed, 79 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml b/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml > > new file mode 100644 > > index 0000000000000000000000000000000000000000..3b81a2e1ead8452ed5fcf2021f33d628d4e12346 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/phy/nxp,tja1145-can.yaml > > @@ -0,0 +1,79 @@ > > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/phy/nxp,tja1145-can.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: TJA1145 CAN transceiver > > + > > +maintainers: > > + - Dimitri Fedrau <dimitri.fedrau@liebherr.com> > > + > > +allOf: > > + - $ref: /schemas/spi/spi-peripheral-props.yaml# > > + > > +properties: > > + compatible: > > + const: nxp,tja1145-can > > I'd drop the -can here, since I don't think the device can be anything > else? > Will drop the -can. Device cannot be anything else. > > + > > + reg: > > + maxItems: 1 > > + > > + "#phy-cells": > > + const: 0 > > + > > + spi-max-frequency: > > + maximum: 4000000 > > + > > + spi-cpha: true > > Is this optionally cpha or always? I'd mark it required if it is always > needed for the device to function. > According to the datasheet it is cpha. Didn't test if the device is running with a different configuration. I mark it as required then. > > + > > + spi-cs-setup-delay-ns: > > + minimum: 50 > > + default: 50 > > + > > + spi-cs-hold-delay-ns: > > + minimum: 50 > > + default: 50 > > + > > + spi-cs-inactive-delay-ns: > > + minimum: 250 > > + default: 250 > > + > > + vcc-supply: > > + description: > > + CAN transceiver supply voltage > > + > > + vio-supply: > > + description: > > + Supply voltage for I/O level adaptor > > + > > + vbat-supply: > > + description: > > + Battery supply voltage > > + > > +required: > > + - compatible > > + - reg > > + - "#phy-cells" > > + > > +unevaluatedProperties: false > > If the properties you've listed above from spi-peripheral-props are the > only ones suitable for the device, I think additionalProperties: false > is sufficient here. > I switch to additionalProperties: false then Best regards, Dimitri Fedrau
© 2016 - 2025 Red Hat, Inc.