Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
Spreadtrum PWM controller

Spreadtrum SoCs PWM controller provides 4 PWM channels.

Required properties:
- compatible : Should be "sprd,ums512-pwm".
- reg: Physical base address and length of the controller's registers.
- clocks: The phandle and specifier referencing the controller's clocks.
- clock-names: Should contain following entries:
  "pwmn": used to derive the functional clock for PWM channel n (n range: 0 ~ 3).
  "enablen": for PWM channel n enable clock (n range: 0 ~ 3).
- #pwm-cells: Should be 2. See pwm.yaml in this directory for a description of
  the cells format.

Optional properties:
- assigned-clocks: Reference to the PWM clock entries.
- assigned-clock-parents: The phandle of the parent clock of PWM clock.

Example:
	pwms: pwm@32260000 {
		compatible = "sprd,ums512-pwm";
		reg = <0 0x32260000 0 0x10000>;
		clock-names = "pwm0", "enable0",
			"pwm1", "enable1",
			"pwm2", "enable2",
			"pwm3", "enable3";
		clocks = <&aon_clk CLK_PWM0>, <&aonapb_gate CLK_PWM0_EB>,
		       <&aon_clk CLK_PWM1>, <&aonapb_gate CLK_PWM1_EB>,
		       <&aon_clk CLK_PWM2>, <&aonapb_gate CLK_PWM2_EB>,
		       <&aon_clk CLK_PWM3>, <&aonapb_gate CLK_PWM3_EB>;
		assigned-clocks = <&aon_clk CLK_PWM0>,
			<&aon_clk CLK_PWM1>,
			<&aon_clk CLK_PWM2>,
			<&aon_clk CLK_PWM3>;
		assigned-clock-parents = <&ext_26m>,
			<&ext_26m>,
			<&ext_26m>,
			<&ext_26m>;
		#pwm-cells = <2>;
	};