lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 6 Sep 2015 17:44:30 +0800
From:	"Wu, Songjun" <songjun.wu@...el.com>
To:	Mark Brown <broonie@...nel.org>
CC:	<nicolas.ferre@...el.com>, <lgirdwood@...il.com>, <perex@...ex.cz>,
	<tiwai@...e.com>, <linux-kernel@...r.kernel.org>,
	<alsa-devel@...a-project.org>, <robh+dt@...nel.org>,
	<pawel.moll@....com>, <mark.rutland@....com>,
	<ijc+devicetree@...lion.org.uk>, <galak@...eaurora.org>,
	<devicetree@...r.kernel.org>
Subject: Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio
 amplifier driver



On 9/3/2015 19:43, Mark Brown wrote:
> On Tue, Sep 01, 2015 at 01:41:41PM +0800, Songjun Wu wrote:
>
>> +classd: classd@...48000 {
>> +		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";
>> +
>> +		pinctrl-names = "default";
>> +		pinctrl-0 = <&pinctrl_classd_default>;
>> +		atmel,pwm-type = "diff";
>> +		atmel,non-overlap-time = <10>;
>> +};
>
>> +Example:
>> +sound {
>> +		compatible = "atmel,asoc-classd";
>> +
>> +		atmel,model = "classd @ SAMA5D2-Xplained";
>> +		atmel,audio-platform = <&classd>;
>> +		atmel,audio-cpu-dai-name = "fc048000.classd";
>> +		atmel,audio-codec = <&classd>;
>> +};
>
> Why is this a separate DT node?  It seems that this IP is entirely self
> contained so I'm not clear why we need a separate node for the card, the
> card is usually a separate node because it ties together multiple
> different devices in the system but that's not the case here.
>
The classD can finish the audio function without other devices.
But I want to reuse the code in ASoC, leave many things(like creating 
PCM, DMA operations) to ASoC, then the driver can only focus on how to 
configure classD.
The classD IP is divided to tree parts logically, platform, CPU dai,
and codec, and these parts are registered to ASoC.

This separate DT node is needed in ASoC, ties these tree parts in ClassD.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ