nxp,flexcan-fd

Vendor: NXP Semiconductors

Description

NXP FlexCAN CANFD controller.

This is a specialization of the NXP FlexCAN CAN controller with support for CAN-FD.

Example:
  flexcan3: can@401d8000 {
    status = "okay";
    compatible = "nxp,flexcan-fd", "nxp,flexcan";
    reg = <0x401d8000 0x1000>;
    interrupts = <154 0>;
    interrupt-names = "common";
    clocks = <&ccm IMX_CCM_CAN_CLK 0x84 6>;
    clk-source = <2>;
    sjw = <1>;
    sjw-data = <1>;
    sample-point = <875>;
    sample-point-data = <875>;
    bus-speed = <125000>;
    bus-speed-data = <1000000>;
    pinctrl-0 = <&pinmux_flexcan3>;
    pinctrl-names = "default";

    can-transceiver {
      max-bitrate = <5000000>;
    };
  };

Properties

Top level properties

These property descriptions apply to “nxp,flexcan-fd” nodes themselves. This page also describes child node properties in the following sections.

Properties not inherited from the base binding file.

Name

Type

Details

clk-source

int

CAN engine clock source

This property is required.

bus-speed

int

bus speed in Baud/s

This property is required.

sjw

int

Resynchronization jump width (ISO 11898-1)

This property is required.

prop-seg

int

Time quantums of propagation segment (ISO 11898-1)

phase-seg1

int

Time quantums of phase buffer 1 segment (ISO 11898-1)

phase-seg2

int

Time quantums of phase buffer 2 segment (ISO 11898-1)

sample-point

int

Sample point in permille. This param is required if segments are not given. If the sample point is given, the segments are ignored.

phys

phandle

Actively controlled CAN transceiver.

Example:
  transceiver0: can-phy0 {
    compatible = "nxp,tja1040", "can-transceiver-gpio";
    standby-gpios = <gpioa 0 GPIO_ACTIVE_HIGH>;
    max-bitrate = <1000000>;
    #phy-cells = <0>;
  };

  &can0 {
    status = "okay";

    phys = <&transceiver0>;
  };

pinctrl-0

phandles

Pin configuration/s for the first state. Content is specific to the
selected pin controller driver implementation.

pinctrl-1

phandles

Pin configuration/s for the second state. See pinctrl-0.

pinctrl-2

phandles

Pin configuration/s for the third state. See pinctrl-0.

pinctrl-3

phandles

Pin configuration/s for the fourth state. See pinctrl-0.

pinctrl-4

phandles

Pin configuration/s for the fifth state. See pinctrl-0.

pinctrl-names

string-array

Names for the provided states. The number of names needs to match the
number of states.

bus-speed-data

int

data phase bus speed in Baud/s

This property is required.

sjw-data

int

Resynchronization jump width for the data phase. (ISO11898-1:2015)

This property is required.

prop-seg-data

int

Time quantums of propagation segment for the data phase. (ISO11898-1:2015)

phase-seg1-data

int

Time quantums of phase buffer 1 segment for the data phase. (ISO11898-1:2015)

phase-seg2-data

int

Time quantums of phase buffer 2 segment for the data phase. (ISO11898-1:2015)

sample-point-data

int

Sample point in permille for the data phase. This param is required if segments are not given. If the sample point is given, the segments are ignored.

tx-delay-comp-offset

int

Child node properties

Name

Type

Details

max-bitrate

int

The maximum bitrate supported by the CAN transceiver in bits/s.

This property is required.