Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

* Atmel ClassD driver under ALSA SoC architecture

Required properties:
- compatible
	Should be "atmel,sama5d2-classd".
- reg
	Should contain ClassD registers location and length.
- interrupts
	Should contain the IRQ line for the ClassD.
- dmas
	One DMA specifiers as described in atmel-dma.txt and dma.txt files.
- dma-names
	Must be "tx".
- clock-names
	Tuple listing input clock names.
	Required elements: "pclk", "gclk" and "aclk".
- clocks
	Please refer to clock-bindings.txt.
- assigned-clocks
	Should be <&classd_gclk>.
- assigned-clock-parents
	Should be <&audio_pll_pmc>.

Optional properties:
- pinctrl-names, pinctrl-0
	Please refer to pinctrl-bindings.txt.
- atmel,model
	The user-visible name of this sound complex.
	The default value is "CLASSD".
- atmel,pwm-type
	PWM modulation type, "single" or "diff".
	The default value is "single".
- atmel,non-overlap-time
	Set non-overlapping time, the unit is nanosecond(ns).
	There are four values,
	<5>, <10>, <15>, <20>, the default value is <10>.
	Non-overlapping will be disabled if not specified.

Example:
classd: classd@fc048000 {
		compatible = "atmel,sama5d2-classd";
		reg = <0xfc048000 0x100>;
		interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>;
		dmas = <&dma0
			(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
			| AT91_XDMAC_DT_PERID(47))>;
		dma-names = "tx";
		clocks = <&classd_clk>, <&classd_gclk>, <&audio_pll_pmc>;
		clock-names = "pclk", "gclk", "aclk";
		assigned-clocks = <&classd_gclk>;
		assigned-clock-parents = <&audio_pll_pmc>;

		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_classd_default>;
		atmel,model = "classd @ SAMA5D2-Xplained";
		atmel,pwm-type = "diff";
		atmel,non-overlap-time = <10>;
};