Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1220319 > unrolled thread

Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio amplifier driver

Started byMark Brown <broonie@kernel.org>
First post2015-09-07 18:30 +0200
Last post2015-09-17 05:10 +0200
Articles 7 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio  amplifier driver Mark Brown <broonie@kernel.org> - 2015-09-07 18:30 +0200
    Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio  amplifier driver "Wu, Songjun" <songjun.wu@atmel.com> - 2015-09-08 11:40 +0200
      Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio  amplifier driver Mark Brown <broonie@kernel.org> - 2015-09-08 14:30 +0200
        Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio  amplifier driver "Wu, Songjun" <songjun.wu@atmel.com> - 2015-09-09 05:20 +0200
        Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio  amplifier driver "Wu, Songjun" <songjun.wu@atmel.com> - 2015-09-15 05:20 +0200
          Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio  amplifier driver Mark Brown <broonie@kernel.org> - 2015-09-16 21:50 +0200
            Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio  amplifier driver "Wu, Songjun" <songjun.wu@atmel.com> - 2015-09-17 05:10 +0200

#1220319 — Re: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio amplifier driver

FromMark Brown <broonie@kernel.org>
Date2015-09-07 18:30 +0200
SubjectRe: [PATCH 2/2] ASoC: atmel-classd: DT binding for Class D audio amplifier driver
Message-ID<q67sS-2ob-9@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

On Sun, Sep 06, 2015 at 05:44:30PM +0800, Wu, Songjun wrote:
> On 9/3/2015 19:43, Mark Brown wrote:

> >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.

Sure, there's no problem at all having that structure in software but it
should be possible to do this without having to represent this structure
in DT.  It should be possible to register the card at the same time as
the rest of the components rather than needing the separate device in
the DT.

[toc] | [next] | [standalone]


#1220650

From"Wu, Songjun" <songjun.wu@atmel.com>
Date2015-09-08 11:40 +0200
Message-ID<q6nxE-ij-41@gated-at.bofh.it>
In reply to#1220319

On 9/8/2015 00:25, Mark Brown wrote:
> On Sun, Sep 06, 2015 at 05:44:30PM +0800, Wu, Songjun wrote:
>> On 9/3/2015 19:43, Mark Brown wrote:
>
>>> 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.
>
> Sure, there's no problem at all having that structure in software but it
> should be possible to do this without having to represent this structure
> in DT.  It should be possible to register the card at the same time as
> the rest of the components rather than needing the separate device in
> the DT.
>
Do you mean using a single entry in the DT for the whole classD system 
and instantiate ASoC components from it.
For now, there are two entry, they could be combined to one entry.

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

[toc] | [prev] | [next] | [standalone]


#1220733

FromMark Brown <broonie@kernel.org>
Date2015-09-08 14:30 +0200
Message-ID<q6qc9-48n-9@gated-at.bofh.it>
In reply to#1220650

[Multipart message — attachments visible in raw view] — view raw

On Tue, Sep 08, 2015 at 05:36:13PM +0800, Wu, Songjun wrote:
> On 9/8/2015 00:25, Mark Brown wrote:

> >Sure, there's no problem at all having that structure in software but it
> >should be possible to do this without having to represent this structure
> >in DT.  It should be possible to register the card at the same time as
> >the rest of the components rather than needing the separate device in
> >the DT.

> Do you mean using a single entry in the DT for the whole classD system and
> instantiate ASoC components from it.
> For now, there are two entry, they could be combined to one entry.

Yes, exactly.

[toc] | [prev] | [next] | [standalone]


#1221206

From"Wu, Songjun" <songjun.wu@atmel.com>
Date2015-09-09 05:20 +0200
Message-ID<q6E5r-7qJ-3@gated-at.bofh.it>
In reply to#1220733

On 9/8/2015 20:23, Mark Brown wrote:
> On Tue, Sep 08, 2015 at 05:36:13PM +0800, Wu, Songjun wrote:
>> On 9/8/2015 00:25, Mark Brown wrote:
>
>>> Sure, there's no problem at all having that structure in software but it
>>> should be possible to do this without having to represent this structure
>>> in DT.  It should be possible to register the card at the same time as
>>> the rest of the components rather than needing the separate device in
>>> the DT.
>
>> Do you mean using a single entry in the DT for the whole classD system and
>> instantiate ASoC components from it.
>> For now, there are two entry, they could be combined to one entry.
>
> Yes, exactly.
>
Accept. the two entries will be combined to one entry.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1224618

From"Wu, Songjun" <songjun.wu@atmel.com>
Date2015-09-15 05:20 +0200
Message-ID<q8OWJ-RY-5@gated-at.bofh.it>
In reply to#1220733

On 9/8/2015 20:23, Mark Brown wrote:
> On Tue, Sep 08, 2015 at 05:36:13PM +0800, Wu, Songjun wrote:
>> On 9/8/2015 00:25, Mark Brown wrote:
>
>>> Sure, there's no problem at all having that structure in software but it
>>> should be possible to do this without having to represent this structure
>>> in DT.  It should be possible to register the card at the same time as
>>> the rest of the components rather than needing the separate device in
>>> the DT.
>
>> Do you mean using a single entry in the DT for the whole classD system and
>> instantiate ASoC components from it.
>> For now, there are two entry, they could be combined to one entry.
>
> Yes, exactly.
>
I try to use one entry, but there is a problem.
It's about 'driver_data' in struct device.
In function snd_soc_register_card, the parameter 'card' will be set to 
'driver_data' by the code 'dev_set_drvdata(card->dev, card)'.
Then some resources(eg. regmap, clock) also need be recorded by 
'driver_data'. One entry could only has one 'driver_data'. I think the 
best way is to create two entries, like the current dts.
What's your opinion?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1226427

FromMark Brown <broonie@kernel.org>
Date2015-09-16 21:50 +0200
Message-ID<q9qSm-5HH-15@gated-at.bofh.it>
In reply to#1224618

[Multipart message — attachments visible in raw view] — view raw

On Tue, Sep 15, 2015 at 11:11:53AM +0800, Wu, Songjun wrote:

> I try to use one entry, but there is a problem.
> It's about 'driver_data' in struct device.
> In function snd_soc_register_card, the parameter 'card' will be set to
> 'driver_data' by the code 'dev_set_drvdata(card->dev, card)'.
> Then some resources(eg. regmap, clock) also need be recorded by
> 'driver_data'. One entry could only has one 'driver_data'. I think the best
> way is to create two entries, like the current dts.
> What's your opinion?

Look at the recently applied sunxi driver for an example of how to do
this - it's a similar piece of hardware (entirely in the SoC and so on).

[toc] | [prev] | [next] | [standalone]


#1226639

From"Wu, Songjun" <songjun.wu@atmel.com>
Date2015-09-17 05:10 +0200
Message-ID<q9xK9-7tm-3@gated-at.bofh.it>
In reply to#1226427

On 9/17/2015 03:42, Mark Brown wrote:
> On Tue, Sep 15, 2015 at 11:11:53AM +0800, Wu, Songjun wrote:
>
>> I try to use one entry, but there is a problem.
>> It's about 'driver_data' in struct device.
>> In function snd_soc_register_card, the parameter 'card' will be set to
>> 'driver_data' by the code 'dev_set_drvdata(card->dev, card)'.
>> Then some resources(eg. regmap, clock) also need be recorded by
>> 'driver_data'. One entry could only has one 'driver_data'. I think the best
>> way is to create two entries, like the current dts.
>> What's your opinion?
>
> Look at the recently applied sunxi driver for an example of how to do
> this - it's a similar piece of hardware (entirely in the SoC and so on).
>
Thank you, It really helps me. I will make a second version soon.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web