[alsa-devel] [PATCH 1/2] ASoC: samsung: i2s: Fix the secondary platform device registration

Krzysztof Kozlowski krzk at kernel.org
Mon Feb 18 09:31:42 CET 2019


On Fri, 15 Feb 2019 at 15:48, Sylwester Nawrocki <s.nawrocki at samsung.com> wrote:
>
> This fixes unregistration of the secondary platform device so all
> resources are properly released. The test for NULL priv->pdev_sec
> is not necessary and it is removed.
>
> Signed-off-by: Sylwester Nawrocki <s.nawrocki at samsung.com>
> ---
> This patch is based off of ASoC for-next and patches:
>  ASoC: samsung: odroid: Ensure proper sample rate on pri/sec PCM
>  ASoC: samsung: i2s: Prevent potential NULL platform data dereference
>  ASoC: samsung: odroid: Add missing DAPM routes
>
>  sound/soc/samsung/i2s.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/sound/soc/samsung/i2s.c b/sound/soc/samsung/i2s.c
> index 6bf0f55d1e51..e36c44e2f1bb 100644
> --- a/sound/soc/samsung/i2s.c
> +++ b/sound/soc/samsung/i2s.c
> @@ -1359,11 +1359,10 @@ static int i2s_create_secondary_device(struct samsung_i2s_priv *priv)
>
>  static void i2s_delete_secondary_device(struct samsung_i2s_priv *priv)
>  {
> -       if (priv->pdev_sec) {
> -               platform_device_del(priv->pdev_sec);
> -               priv->pdev_sec = NULL;
> -       }
> +       platform_device_unregister(priv->pdev_sec);
> +       priv->pdev_sec = NULL;

Reviewed-by: Krzysztof Kozlowski <krzk at kernel.org>

Although I think that you might need to re-order calls in
samsung_i2s_remove(). In general they should be in exact reverse order
of probe(). In this case, clk_disable_unprepare(priv->clk) should be
after unregistering secondary device. If order has to be different
because of some reasons - could you document them in comment?

Best regards,
Krzysztof


More information about the Alsa-devel mailing list