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  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:   18 Dec 2020 09:03:58 +0900
From:   Kuninori Morimoto <kuninori.morimoto.gx@...esas.com>
To:     Richard Fitzgerald <rf@...nsource.cirrus.com>
Cc:     <broonie@...nel.org>, <robh+dt@...nel.org>,
        <nsaenzjulienne@...e.de>, <linux-kernel@...r.kernel.org>,
        <devicetree@...r.kernel.org>, <alsa-devel@...a-project.org>,
        <patches@...nsource.cirrus.com>,
        <bcm-kernel-feedback-list@...adcom.com>,
        <linux-rpi-kernel@...ts.infradead.org>,
        <linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH v3 3/6] ASoC: audio-graph-card: Support setting component plls and sysclks


Hi Richard

Thank you for your patch.
This is v3 patch, but I think this is the first time for me
to receive patch...

> Some codecs need plls and/or sysclks to be configured using the
> snd_soc_component_set_[sysclk|pll] functions. These drivers cannot
> necessarily be converted to use the clock framework. If the codec is on
> a I2C/SPI bus, a nested clk_get would be needed to enable the bus clock.
> But the clock framework does not support nested operations and this would
> deadlock.
> 
> This patch adds new dt properties that list phandles of components with
> the pll/sysclk settings to be applied. Multiple settings can be given for
> the same phandle to allow for components with multiple clocks and plls.
> The plls and sysclks are enabled when the card bias level moves to STANDBY
> and disabled when it moves to OFF.
> 
> The implementation does not attempt to handle specifying complex clock
> ordering interdependencies between components. The plls and sysclks are
> applied to a component as it is passed to the card set_bias_level/
> set_bias_level_post callbacks. It follows from this that the order
> components are configured is the order that they are passed to those
> callbacks.
> 
> Signed-off-by: Richard Fitzgerald <rf@...nsource.cirrus.com>
> ---
>  include/sound/simple_card_utils.h     |  25 +++
>  sound/soc/generic/audio-graph-card.c  |  16 +-
>  sound/soc/generic/simple-card-utils.c | 236 ++++++++++++++++++++++++++
>  3 files changed, 275 insertions(+), 2 deletions(-)

I understand that you need sysclk/pll and .set_bias_level_xxx().
But I guess makes it generic code is difficult (?).
Thus, as Sameer doing on Tegra, creating custom audio-graph-card is better
idea for you ?

# Now I'm creating new audio-graph-card2 which also supports
# overwriting/customizing each/all functions.
# It is not full compatible with audio-graph-card, but almost same if you
# uses normal connection.
# I hope I can post it next year

Thank you for your help !!

Best regards
---
Kuninori Morimoto

Powered by blists - more mailing lists