silabs,series-clock-output

Description

Silicon Labs CMU (Clock Management Unit) CLKOUT (Clock Output)

The Silicon Labs Series 2/3 Clock Management Unit has up to three clock outputs that can be routed
to GPIO pins. Each output can be individually configured to output one of the on-chip oscillators,
HCLK (the high frequency bus clock) or EXPORTCLK (a divided version of SYSCLK).

Pin Control is used to configure GPIO routing for the CLKOUT signals.

Examples

&pinctrl {
  clkout_default: clkout_default {
    group0 {
      pins = <CMU_CLKOUT0_PC1>, <CMU_CLKOUT1_PC2>;
      drive-push-pull;
      output-low;
    };
  };
};

&clkout {
  pinctrl-0 = <&clkout_default>;
  pinctrl-names = "default";
  status = "okay";

  clock-output@0 {
    clocks = <&exportclk>;
    status = "okay";
  };

  clock-output@1 {
    clocks = <&lfxo>;
    status = "okay";
  };
};

Properties

Top level properties

These property descriptions apply to “silabs,series-clock-output” nodes themselves. This page also describes child node properties in the following sections.

Properties not inherited from the base binding file.

Name

Type

Details

clock-div

int

Shared clock divider for clock outputs.

Value range: 1 to 32

#clock-cells

int

Number of items to expect in a Clock specifier

This property is required.

Constant value: 1

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.

Child node properties

Name

Type

Details

reg

array

Information used to address the device. The value is specific to
the device (i.e. is different depending on the compatible
property).

The "reg" property is typically a sequence of (address, length) pairs.
Each pair is called a "register block". Values are
conventionally written in hex.

For details, see "2.3.6 reg" in Devicetree Specification v0.4.

This property is required.

See Important properties for more information.

clocks

phandle-array

Information about the device's clock providers. In general, this property
should follow conventions established in the dt-schema binding:

  https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/clock/clock.yaml

This property is required.

status

string

Indicates the operational status of the hardware or other
resource that the node represents. In particular:

  - "okay" means the resource is operational and, for example,
    can be used by device drivers
  - "disabled" means the resource is not operational and the system
    should treat it as if it is not present

For details, see "2.3.4 status" in Devicetree Specification v0.4.

Legal values: okay, disabled, reserved, fail, fail-sss

See Important properties for more information.

Specifier cell names

  • clock cells: output