lkml.org 
[lkml]   [2021]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [RFC PATCH 3/5] ASoC: audio-graph-card: Add bindings for sysclk and pll
From
Date


On 3/2/2021 7:40 AM, Rob Herring wrote:
> External email: Use caution opening links or attachments
>
>
> On Thu, Feb 25, 2021 at 12:06 PM Sameer Pujar <spujar@nvidia.com> wrote:
>> ASoC core provides callbacks snd_soc_dai_set_sysclk() and
>> snd_soc_dai_set_pll() for system clock (sysclk) and pll configurations
>> respectively. Add bindings for flexible sysclk or pll configurations
>> which can be driven from CPU/Codec DAI or endpoint subnode from DT.
>> This in turn helps to avoid hard codings in driver and makes it more
>> generic.
>>
>> Also add system-clock related bindings, "system-clock-direction-out"
>> and "system-clock-frequency", which are already supported.
> This all looks like duplication of what the clock binding can provide.
> We don't need 2 ways to describe clocks in DT.

This was targetted for external audio codecs. Their internal clock
management is not exposed with the clock framework. Instead ASoC
provides callbacks to set this up on Codec side. There are many
references where this is followed with some hardcoded settings in the
drivers.

Are you suggesting to instead expose codec internal clocks and manage
via generic clock bindings? Would this mean each codec driver has to
implement these clock APIs (for ex: set_rate()) and program registers
accordingly?
For a platform, different audio cards can be plugged in. In that case,
each codec has to be updated to follow this. Wouldn't it be simpler to
use available ASoC callbacks?

\
 
 \ /
  Last update: 2021-03-02 16:39    [W:1.271 / U:0.988 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site