From: Chen-Yu Tsai <wens@csie.org> To: Maxime Ripard <mripard@kernel.org>, Mark Brown <broonie@kernel.org> Cc: Liam Girdwood <lgirdwood@gmail.com>, Linux-ALSA <alsa-devel@alsa-project.org>, linux-arm-kernel <linux-arm-kernel@lists.infradead.org>, Code Kipper <codekipper@gmail.com>, linux-kernel <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 00/21] ASoC: sun4i-i2s: Number of fixes and TDM Support Date: Tue, 27 Aug 2019 16:20:24 +0800 [thread overview] Message-ID: <CAGb2v64xOcs3Vi5k3yUwMiUrzZMuJ5vZ3kxp9w1=CQDrkn3cgA@mail.gmail.com> (raw) In-Reply-To: <cover.e08aa7e33afe117e1fa8f017119d465d47c98016.1566242458.git-series.maxime.ripard@bootlin.com> Hi everyone, On Tue, Aug 20, 2019 at 3:25 AM Maxime Ripard <mripard@kernel.org> wrote: > > From: Maxime Ripard <maxime.ripard@bootlin.com> > > Hi, > > This series aims at fixing a number of issues in the current i2s driver, > mostly related to the i2s master support and the A83t support. It also uses > that occasion to cleanup a few things and simplify the driver. Finally, it > builds on those fixes and cleanups to introduce TDM and DSP formats support. > > Let me know what you think, > Maxime > > Marcus Cooper (1): > ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs > > Maxime Ripard (20): > ASoC: sun4i-i2s: Register regmap and PCM before our component > ASoC: sun4i-i2s: Switch to devm for PCM register > ASoC: sun4i-i2s: Replace call to params_channels by local variable > ASoC: sun4i-i2s: Move the channel configuration to a callback > ASoC: sun4i-i2s: Move the format configuration to a callback > ASoC: sun4i-i2s: Rework MCLK divider calculation > ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK > ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs > ASoC: sun4i-i2s: RX and TX counter registers are swapped > ASoC: sun4i-i2s: Use the actual format width instead of an hardcoded one > ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs > ASoC: sun4i-i2s: Fix the LRCK polarity > ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t > ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t > ASoC: sun4i-i2s: Fix the LRCK period on A83t > ASoC: sun4i-i2s: Remove duplicated quirks structure Unfortunately the patches that "fix" support on the A83T actually break it. The confusion stems from the user manual not actually documenting the I2S controller. Instead it documents the TDM controller, which is very similar or the same as the I2S controller in the H3. The I2S controller that we actually support in this driver is not the TDM controller, but three other I2S controllers that are only mentioned in the memory map. Support for this was done by referencing the BSP kernel, which has separate driver instances for each controller instance, both I2S and TDM. Now to remedy this I could send reverts for all the "A83t" patches, and fixes for all the others that affect the A83t quirks. However the fixes tags existing in the tree would be wrong and confusing. That might be a pain for the stable kernel maintainers. Any suggestions on how to proceed? Regards ChenYu > ASoC: sun4i-i2s: Pass the channels number as an argument > ASoC: sun4i-i2s: Support more channels > ASoC: sun4i-i2s: Add support for TDM slots > ASoC: sun4i-i2s: Add support for DSP formats > > sound/soc/sunxi/sun4i-i2s.c | 660 ++++++++++++++++++++----------------- > 1 file changed, 372 insertions(+), 288 deletions(-) > > base-commit: d45331b00ddb179e291766617259261c112db872 > -- > git-series 0.9.1
WARNING: multiple messages have this Message-ID (diff)
From: Chen-Yu Tsai <wens@csie.org> To: Maxime Ripard <mripard@kernel.org>, Mark Brown <broonie@kernel.org> Cc: Code Kipper <codekipper@gmail.com>, Linux-ALSA <alsa-devel@alsa-project.org>, Liam Girdwood <lgirdwood@gmail.com>, linux-arm-kernel <linux-arm-kernel@lists.infradead.org>, linux-kernel <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 00/21] ASoC: sun4i-i2s: Number of fixes and TDM Support Date: Tue, 27 Aug 2019 16:20:24 +0800 [thread overview] Message-ID: <CAGb2v64xOcs3Vi5k3yUwMiUrzZMuJ5vZ3kxp9w1=CQDrkn3cgA@mail.gmail.com> (raw) In-Reply-To: <cover.e08aa7e33afe117e1fa8f017119d465d47c98016.1566242458.git-series.maxime.ripard@bootlin.com> Hi everyone, On Tue, Aug 20, 2019 at 3:25 AM Maxime Ripard <mripard@kernel.org> wrote: > > From: Maxime Ripard <maxime.ripard@bootlin.com> > > Hi, > > This series aims at fixing a number of issues in the current i2s driver, > mostly related to the i2s master support and the A83t support. It also uses > that occasion to cleanup a few things and simplify the driver. Finally, it > builds on those fixes and cleanups to introduce TDM and DSP formats support. > > Let me know what you think, > Maxime > > Marcus Cooper (1): > ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs > > Maxime Ripard (20): > ASoC: sun4i-i2s: Register regmap and PCM before our component > ASoC: sun4i-i2s: Switch to devm for PCM register > ASoC: sun4i-i2s: Replace call to params_channels by local variable > ASoC: sun4i-i2s: Move the channel configuration to a callback > ASoC: sun4i-i2s: Move the format configuration to a callback > ASoC: sun4i-i2s: Rework MCLK divider calculation > ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK > ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs > ASoC: sun4i-i2s: RX and TX counter registers are swapped > ASoC: sun4i-i2s: Use the actual format width instead of an hardcoded one > ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs > ASoC: sun4i-i2s: Fix the LRCK polarity > ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t > ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t > ASoC: sun4i-i2s: Fix the LRCK period on A83t > ASoC: sun4i-i2s: Remove duplicated quirks structure Unfortunately the patches that "fix" support on the A83T actually break it. The confusion stems from the user manual not actually documenting the I2S controller. Instead it documents the TDM controller, which is very similar or the same as the I2S controller in the H3. The I2S controller that we actually support in this driver is not the TDM controller, but three other I2S controllers that are only mentioned in the memory map. Support for this was done by referencing the BSP kernel, which has separate driver instances for each controller instance, both I2S and TDM. Now to remedy this I could send reverts for all the "A83t" patches, and fixes for all the others that affect the A83t quirks. However the fixes tags existing in the tree would be wrong and confusing. That might be a pain for the stable kernel maintainers. Any suggestions on how to proceed? Regards ChenYu > ASoC: sun4i-i2s: Pass the channels number as an argument > ASoC: sun4i-i2s: Support more channels > ASoC: sun4i-i2s: Add support for TDM slots > ASoC: sun4i-i2s: Add support for DSP formats > > sound/soc/sunxi/sun4i-i2s.c | 660 ++++++++++++++++++++----------------- > 1 file changed, 372 insertions(+), 288 deletions(-) > > base-commit: d45331b00ddb179e291766617259261c112db872 > -- > git-series 0.9.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-08-27 8:20 UTC|newest] Thread overview: 122+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-08-19 19:25 [PATCH 00/21] ASoC: sun4i-i2s: Number of fixes and TDM Support Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-19 19:25 ` [PATCH 01/21] ASoC: sun4i-i2s: Register regmap and PCM before our component Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Register regmap and PCM before our component" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 02/21] ASoC: sun4i-i2s: Switch to devm for PCM register Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Switch to devm for PCM register" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 03/21] ASoC: sun4i-i2s: Replace call to params_channels by local variable Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Replace call to params_channels by local variable" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 04/21] ASoC: sun4i-i2s: Move the channel configuration to a callback Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Move the channel configuration to a callback" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 05/21] ASoC: sun4i-i2s: Move the format configuration to a callback Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Move the format configuration to a callback" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 06/21] ASoC: sun4i-i2s: Rework MCLK divider calculation Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Rework MCLK divider calculation" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 07/21] ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 08/21] ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 09/21] ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-27 9:25 ` Chen-Yu Tsai 2019-08-27 9:25 ` Chen-Yu Tsai 2019-08-27 10:46 ` Mark Brown 2019-08-27 10:46 ` Mark Brown 2019-08-19 19:25 ` [PATCH 10/21] ASoC: sun4i-i2s: RX and TX counter registers are swapped Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: RX and TX counter registers are swapped" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 11/21] ASoC: sun4i-i2s: Use the actual format width instead of an hardcoded one Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:39 ` Mark Brown 2019-08-20 17:39 ` Mark Brown 2019-08-19 19:25 ` [PATCH 12/21] ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 13/21] ASoC: sun4i-i2s: Fix the LRCK polarity Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Fix the LRCK polarity" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 14/21] ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 15/21] ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 16/21] ASoC: sun4i-i2s: Fix the LRCK period on A83t Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Fix the LRCK period on A83t" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 17/21] ASoC: sun4i-i2s: Remove duplicated quirks structure Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Remove duplicated quirks structure" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 18/21] ASoC: sun4i-i2s: Pass the channels number as an argument Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Pass the channels number as an argument" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 19/21] ASoC: sun4i-i2s: Support more channels Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 17:41 ` Applied "ASoC: sun4i-i2s: Support more channels" to the asoc tree Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-20 17:41 ` Mark Brown 2019-08-19 19:25 ` [PATCH 20/21] ASoC: sun4i-i2s: Add support for TDM slots Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-20 5:46 ` Sergey Suloev 2019-08-20 5:46 ` Sergey Suloev 2019-08-21 12:05 ` Maxime Ripard 2019-08-21 12:05 ` Maxime Ripard 2019-08-21 12:08 ` Mark Brown 2019-08-21 12:08 ` Mark Brown 2019-08-23 9:09 ` Sergey Suloev 2019-08-23 9:09 ` Sergey Suloev 2019-08-23 9:09 ` Sergey Suloev 2019-08-21 12:15 ` Applied "ASoC: sun4i-i2s: Add support for TDM slots" to the asoc tree Mark Brown 2019-08-21 12:15 ` Mark Brown 2019-08-21 12:15 ` Mark Brown 2019-08-19 19:25 ` [PATCH 21/21] ASoC: sun4i-i2s: Add support for DSP formats Maxime Ripard 2019-08-19 19:25 ` Maxime Ripard 2019-08-21 12:15 ` Mark Brown 2019-08-21 12:15 ` Mark Brown 2019-08-27 8:20 ` Chen-Yu Tsai [this message] 2019-08-27 8:20 ` [PATCH 00/21] ASoC: sun4i-i2s: Number of fixes and TDM Support Chen-Yu Tsai 2019-08-27 9:35 ` Maxime Ripard 2019-08-27 9:35 ` Maxime Ripard
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='CAGb2v64xOcs3Vi5k3yUwMiUrzZMuJ5vZ3kxp9w1=CQDrkn3cgA@mail.gmail.com' \ --to=wens@csie.org \ --cc=alsa-devel@alsa-project.org \ --cc=broonie@kernel.org \ --cc=codekipper@gmail.com \ --cc=lgirdwood@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mripard@kernel.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.