[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YwO/aqs7eqZx07kS@sirena.org.uk>
Date: Mon, 22 Aug 2022 18:39:54 +0100
From: Mark Brown <broonie@...nel.org>
To: Martin Povišer <povik+lin@...ebit.org>
Cc: Liam Girdwood <lgirdwood@...il.com>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Hector Martin <marcan@...can.st>,
Sven Peter <sven@...npeter.dev>,
Philipp Zabel <p.zabel@...gutronix.de>,
Alyssa Rosenzweig <alyssa@...enzweig.io>,
asahi@...ts.linux.dev, alsa-devel@...a-project.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 3/4] ASoC: apple: mca: Start new platform driver
On Fri, Aug 19, 2022 at 02:54:29PM +0200, Martin Povišer wrote:
This all looks good, one style nit and a couple of requests for
clarification below but basically this is fine.
> +++ b/sound/soc/apple/mca.c
> @@ -0,0 +1,1149 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * Apple SoCs MCA driver
> + *
> + * Copyright (C) The Asahi Linux Contributors
> + *
> + * The MCA peripheral is made up of a number of identical units called clusters.
Please make the entire comment block a C++ one so things look more
intentional.
> +#define USE_RXB_FOR_CAPTURE
What's this all about?
> +static int mca_fe_enable_clocks(struct mca_cluster *cl)
> +{
> + struct mca_data *mca = cl->host;
> + int ret;
> +
> + ret = clk_prepare_enable(cl->clk_parent);
> + if (ret) {
> + dev_err(mca->dev,
> + "cluster %d: unable to enable clock parent: %d\n",
> + cl->no, ret);
> + return ret;
> + }
> +
> + /*
> + * We can't power up the device earlier than this because
> + * the power state driver would error out on seeing the device
> + * as clock-gated.
> + */
> + cl->pd_link = device_link_add(mca->dev, cl->pd_dev,
> + DL_FLAG_STATELESS | DL_FLAG_PM_RUNTIME |
> + DL_FLAG_RPM_ACTIVE);
I'm not clear on this dynamically adding and removing device links stuff
- it looks like the main (only?) purpose is to take a runtime PM
reference to the target device which is fine but it's not clear why
device links are involved given that the links are created and destroyed
every time the DAI is used, AFAICT always in the same fixed
relationship. It's not a problem, it's just unclear.
Download attachment "signature.asc" of type "application/pgp-signature" (489 bytes)
Powered by blists - more mailing lists