From: broonie@opensource.wolfsonmicro.com (Mark Brown)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 17/17] ASoC: fsl: add imx-sgtl5000 machine driver
Date: Tue, 6 Mar 2012 12:02:47 +0000 [thread overview]
Message-ID: <20120306120247.GF19635@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <20120306073900.GP16232@S2101-09.ap.freescale.net>
On Tue, Mar 06, 2012 at 03:39:02PM +0800, Shawn Guo wrote:
> On Mon, Mar 05, 2012 at 02:46:01PM +0000, Mark Brown wrote:
> > This you can just set in the card struct, no need for explicit code at
> > all.
> Yes, I just tried. It also works but a little bit differently. We
> only set_fmt for codec_dai here, while ASoC core will set_fmt for both
> codec_dai and cpu_dai if dai_link->dai_fmt is set. However, the
> fsl_ssi does not provide .set_fmt implementation, and consequently we
> will see error message below, which does not impact functionality
> though.
> fsl-ssi-dai 83fcc000.ssi: Failed to set DAI format: -22
> I hope we keep the code as it is now and improve later when fsl_ssi
> gets improved.
No, we should fix the core to work better in this case - not having a
DAI operation is perfectly normal and should be supported.
> > > + ret = of_property_read_u32(np, "fsl,mux-int-port", &int_port);
> > > + ret = of_property_read_u32(np, "fsl,mux-ext-port", &ext_port);
> > It seems very odd to have namespacing on the individual property names.
> > Why are you doing that? The properties are already defined in terms of
> > the device binding. Though everyone else is doing it so not really a
> > problem.
> The general device tree binding practice is we'd better have a vendor
> prefix on the property name, if the property applies on specific vendor
> drivers instead of common ones across different vendors.
There's nothing generic about this device, it only applies to a specific
combination of things and in so far as it applies to those the
properties are generic - any board combining i.MX and this CODEC is
going to have an audmux.
> > > + /*
> > > + * The port numbering in the hardware manual starts at 1, while
> > > + * the audmux API expects it starts at 0.
> > > + */
> > > + int_port--;
> > > + ext_port--;
> > Should have error checking somewhere to make sure that the user
> > remembered this.
> Because different i.MX SoC may have different internal and external
> port number, I do not think of a way to check that. And I would not
In that case the audmux code should be validating the arguments.
> worry about it that much, since all the hardware documents number the
> port from 1, while device tree user/author will have to look at those
> documents for the data.
OTOH the in kernel API uses a different numbering and if the user is
porting their existing code over to device tree...
> > > + imx_audmux_v2_configure_port(int_port,
> > > + IMX_AUDMUX_V2_PTCR_SYN |
> > > + IMX_AUDMUX_V2_PTCR_TFSEL(ext_port) |
> > > + IMX_AUDMUX_V2_PTCR_TCSEL(ext_port) |
> > > + IMX_AUDMUX_V2_PTCR_TFSDIR |
> > > + IMX_AUDMUX_V2_PTCR_TCLKDIR,
> > > + IMX_AUDMUX_V2_PDCR_RXDSEL(ext_port));
> > I'm not sure we've really gained much from converting to a platform
> > driver given that the device just registers something globally...
> Converting audmux to a platform driver does not change anything about
> that. It makes device tree support easier, and gets the audmux users
> (imx machine drivers) stay away from including <mach/audmux.h>.
It's not actually fixed anything in the APIs though and we've now also
got a race in the driver probes since the audmux now need to come up via
the device model instead of just being there - we could try to configure
the audmux with no platform driver bound. We should really have the
audmux as at least an aux_dev in the card to make sure it's there.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120306/ff5dab18/attachment.sig>
next prev parent reply other threads:[~2012-03-06 12:02 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-05 14:30 [PATCH v2 00/17] ASoC: add imx-sgtl5000 machine driver working with fsl_ssi Shawn Guo
2012-03-05 14:20 ` Mark Brown
2012-03-05 14:44 ` Shawn Guo
2012-03-05 14:35 ` Mark Brown
2012-03-05 14:30 ` [PATCH v2 01/17] ASoC: imx: move eukrea audmux call into ASoC machine driver Shawn Guo
2012-03-05 17:46 ` Mark Brown
2012-03-05 17:55 ` Matt Sealey
2012-03-05 20:36 ` Mark Brown
2012-03-05 19:27 ` Sascha Hauer
2012-03-05 23:45 ` Shawn Guo
2012-03-06 0:06 ` Mark Brown
2012-03-05 14:30 ` [PATCH v2 02/17] ASoC: imx: move phycore " Shawn Guo
2012-03-05 14:30 ` [PATCH v2 03/17] ARM: imx: merge audmux-v1 and audmux-v2 Shawn Guo
2012-03-05 14:30 ` [PATCH v2 04/17] ARM: imx: convert audmux to a platform driver Shawn Guo
2012-03-05 14:30 ` [PATCH v2 05/17] ASoC: imx: move audmux driver into sound/soc/imx Shawn Guo
2012-03-05 14:30 ` [PATCH v2 06/17] ASoC: imx: rename audmux prefix mxc to imx Shawn Guo
2012-03-05 14:30 ` [PATCH v2 07/17] ASoC: imx: separate imx-pcm bits from imx-ssi driver Shawn Guo
2012-03-05 14:30 ` [PATCH v2 08/17] ASoC: imx: add an explicit Kconfig option for " Shawn Guo
2012-03-05 14:30 ` [PATCH v2 09/17] ASoC: fsl: separate SSI and DMA Kconfig options Shawn Guo
2012-03-07 20:20 ` Timur Tabi
2012-03-08 13:08 ` Shawn Guo
2012-03-05 14:30 ` [PATCH v2 10/17] ASoC: imx: merge sound/soc/imx into sound/soc/fsl Shawn Guo
2012-03-05 17:39 ` Sascha Hauer
2012-03-05 23:46 ` Shawn Guo
2012-03-06 5:46 ` Shawn Guo
2012-03-05 14:30 ` [PATCH v2 11/17] ASoC: fsl: create fsl_utils to accommodate the common functions Shawn Guo
2012-03-05 14:49 ` Mark Brown
2012-03-05 15:48 ` Timur Tabi
2012-03-05 16:15 ` Mark Brown
2012-03-06 6:27 ` Shawn Guo
2012-03-05 14:31 ` [PATCH v2 12/17] ASoC: fsl: check property 'compatible' for the machine name Shawn Guo
2012-03-05 14:31 ` [PATCH v2 13/17] ASoC: fsl: make fsl_ssi driver compilable on ARM/IMX Shawn Guo
2012-03-05 14:31 ` [PATCH v2 14/17] ASoC: fsl: remove the fatal error checking on codec-handle Shawn Guo
2012-03-05 14:31 ` [PATCH v2 15/17] ASoC: fsl: let fsl_ssi work with imx pcm and machine drivers Shawn Guo
2012-03-05 14:31 ` [PATCH v2 16/17] ASoC: fsl: add dt support for imx-audmux Shawn Guo
2012-03-06 12:49 ` Mark Brown
2012-03-06 13:13 ` Shawn Guo
2012-03-05 14:31 ` [PATCH v2 17/17] ASoC: fsl: add imx-sgtl5000 machine driver Shawn Guo
2012-03-05 14:46 ` Mark Brown
2012-03-06 7:39 ` Shawn Guo
2012-03-06 12:02 ` Mark Brown [this message]
2012-03-06 13:34 ` Shawn Guo
2012-03-06 13:35 ` Mark Brown
2012-03-05 17:42 ` Sascha Hauer
2012-03-05 18:09 ` Matt Sealey
2012-03-05 19:32 ` Sascha Hauer
2012-03-05 20:44 ` Mark Brown
2012-03-05 21:08 ` Timur Tabi
2012-03-06 15:50 ` Shawn Guo
2012-03-07 8:37 ` Sascha Hauer
2012-03-07 21:05 ` [PATCH v2 00/17] ASoC: add imx-sgtl5000 machine driver working with fsl_ssi Timur Tabi
2012-03-07 21:08 ` Mark Brown
2012-03-07 23:03 ` Timur Tabi
2012-03-08 11:51 ` Mark Brown
2012-03-08 12:33 ` Shawn Guo
2012-03-08 12:36 ` Tabi Timur-B04825
2012-03-07 23:18 ` Timur Tabi
2012-03-08 12:02 ` Mark Brown
2012-03-08 12:37 ` Shawn Guo
2012-03-08 13:11 ` Shawn Guo
2012-03-08 14:45 ` Tabi Timur-B04825
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120306120247.GF19635@opensource.wolfsonmicro.com \
--to=broonie@opensource.wolfsonmicro.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).