public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/9 v2] ASoC: codecs: Fix register cache incoherencies
@ 2010-12-28 20:37 Lars-Peter Clausen
  2010-12-28 20:37 ` [PATCH 1/9] ASoC: codecs: Remove unused reg_cache fields from device structs Lars-Peter Clausen
                   ` (10 more replies)
  0 siblings, 11 replies; 16+ messages in thread
From: Lars-Peter Clausen @ 2010-12-28 20:37 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood; +Cc: alsa-devel, linux-kernel, Lars-Peter Clausen

The multi-component patch(commit f0fba2ad1) moved the allocation of the
register cache from the driver to the ASoC core. Most drivers where adjusted to
this, but there are also some drivers now which use a mixture of their own
register cache and the generic register cache.
Thus these end up with two from each other incoherent register caches, which can
lead to undefined behaviour.
This patch series tries to fix these drivers by converting them to always use
the generic register cache framework instead of their own.

There are also quite a few drivers left, which do not use their own register
cache anymore, but still have a field for it in their private device structure.
The first patch of this series addresses those drivers and removes the unused
register cache arrays from their private device structs.

Please note, these patches, with the exception of wm8753, were only compile
tested.

Changes since v1:
	* rebased against 2.6.37-rc7
	* correct commit message
	* more straight forward conversion in the wm8753 patch (there will be a
	  followup patch for cleanps)

- Lars

Lars-Peter Clausen (9):
  ASoC: codecs: Remove unused reg_cache fields from device structs
  ASoC: codecs: max98088: Fix register cache incoherency
  ASoC: codecs: wm8523: Fix register cache incoherency
  ASoC: codecs: wm8741: Fix register cache incoherency
  ASoC: codecs: wm8904: Fix register cache incoherency
  ASoC: codecs: wm8955: Fix register cache incoherency
  ASoC: codecs: wm8962: Fix register cache incoherency
  ASoC: codecs: wm9090: Fix register cache incoherency
  ASoC: codecs: wm8753: Fix register cache incoherency

 sound/soc/codecs/88pm860x-codec.c |    1 -
 sound/soc/codecs/ad193x.c         |    1 -
 sound/soc/codecs/ak4671.c         |    1 -
 sound/soc/codecs/cs4270.c         |    1 -
 sound/soc/codecs/cs42l51.c        |    1 -
 sound/soc/codecs/cx20442.c        |    1 -
 sound/soc/codecs/max98088.c       |   13 +-
 sound/soc/codecs/tlv320aic26.c    |    4 +-
 sound/soc/codecs/uda1380.c        |    1 -
 sound/soc/codecs/wm8523.c         |    9 +-
 sound/soc/codecs/wm8580.c         |    1 -
 sound/soc/codecs/wm8711.c         |    1 -
 sound/soc/codecs/wm8731.c         |    1 -
 sound/soc/codecs/wm8741.c         |   10 +-
 sound/soc/codecs/wm8750.c         |    1 -
 sound/soc/codecs/wm8753.c         |  267 ++++++++++++++-----------------------
 sound/soc/codecs/wm8900.c         |    1 -
 sound/soc/codecs/wm8903.c         |    2 -
 sound/soc/codecs/wm8904.c         |   37 +++---
 sound/soc/codecs/wm8940.c         |    1 -
 sound/soc/codecs/wm8955.c         |   30 ++--
 sound/soc/codecs/wm8960.c         |    1 -
 sound/soc/codecs/wm8961.c         |    1 -
 sound/soc/codecs/wm8962.c         |   45 +++----
 sound/soc/codecs/wm8974.c         |    1 -
 sound/soc/codecs/wm8978.c         |    1 -
 sound/soc/codecs/wm8988.c         |    1 -
 sound/soc/codecs/wm8993.c         |    1 -
 sound/soc/codecs/wm9081.c         |    1 -
 sound/soc/codecs/wm9090.c         |   18 ++--
 30 files changed, 179 insertions(+), 276 deletions(-)

-- 
1.7.2.3


^ permalink raw reply	[flat|nested] 16+ messages in thread
* [PATCH 0/9] ASoC: codecs: Fix register cache incoherencies
@ 2010-12-24 13:47 Lars-Peter Clausen
  2010-12-24 13:48 ` [PATCH 9/9] ASoC: codecs: wm8753: Fix register cache incoherency Lars-Peter Clausen
  0 siblings, 1 reply; 16+ messages in thread
From: Lars-Peter Clausen @ 2010-12-24 13:47 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood; +Cc: alsa-devel, linux-kernel, Lars-Peter Clausen

The multi-component patch(commit f0fba2ad1) introduced a generic register cache
framework. Most of the drivers where converted to use this new framework. But
there are also some drivers now which use a mixture of their own register cache
and the generic register cache.
Thus these end up with two from each other incoherent register caches, which can
lead to undefined behaviour.
This patch series tries to fix these drivers by converting them to always use
the generic register cache framework instead of their own.

There are also quite a few drivers left, which do not use their own register
cache, but still have a field for it in their private device structure. The
first patch of this series addresses those drivers and removes the unused
register cache arrays from their private device structs.

Please note, these patches, with the exception of wm8753, were only compile
tested.

- Lars

Lars-Peter Clausen (9):
  ASoC: codecs: Remove unused reg_cache fields from device structs
  ASoC: codecs: max98088: Fix register cache incoherency
  ASoC: codecs: wm8523: Fix register cache incoherency
  ASoC: codecs: wm8741: Fix register cache incoherency
  ASoC: codecs: wm8904: Fix register cache incoherency
  ASoC: codecs: wm8955: Fix register cache incoherency
  ASoC: codecs: wm8962: Fix register cache incoherency
  ASoC: codecs: wm9090: Fix register cache incoherency
  ASoC: codecs: wm8753: Fix register cache incoherency

 sound/soc/codecs/88pm860x-codec.c |    1 -
 sound/soc/codecs/ad193x.c         |    1 -
 sound/soc/codecs/ak4671.c         |    1 -
 sound/soc/codecs/cs4270.c         |    1 -
 sound/soc/codecs/cs42l51.c        |    1 -
 sound/soc/codecs/cx20442.c        |    1 -
 sound/soc/codecs/max98088.c       |   13 +-
 sound/soc/codecs/tlv320aic26.c    |    4 +-
 sound/soc/codecs/uda1380.c        |    1 -
 sound/soc/codecs/wm8523.c         |    9 +-
 sound/soc/codecs/wm8580.c         |    1 -
 sound/soc/codecs/wm8711.c         |    1 -
 sound/soc/codecs/wm8731.c         |    1 -
 sound/soc/codecs/wm8741.c         |   10 +-
 sound/soc/codecs/wm8750.c         |    1 -
 sound/soc/codecs/wm8753.c         |  267 ++++++++++++++-----------------------
 sound/soc/codecs/wm8900.c         |    1 -
 sound/soc/codecs/wm8903.c         |    2 -
 sound/soc/codecs/wm8904.c         |   37 +++---
 sound/soc/codecs/wm8940.c         |    1 -
 sound/soc/codecs/wm8955.c         |   30 ++--
 sound/soc/codecs/wm8960.c         |    1 -
 sound/soc/codecs/wm8961.c         |    1 -
 sound/soc/codecs/wm8962.c         |   45 +++----
 sound/soc/codecs/wm8974.c         |    1 -
 sound/soc/codecs/wm8978.c         |    1 -
 sound/soc/codecs/wm8988.c         |    1 -
 sound/soc/codecs/wm8993.c         |    1 -
 sound/soc/codecs/wm9081.c         |    1 -
 sound/soc/codecs/wm9090.c         |   18 ++--
 30 files changed, 179 insertions(+), 276 deletions(-)

-- 
1.7.2.3


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2010-12-28 23:43 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-28 20:37 [PATCH 0/9 v2] ASoC: codecs: Fix register cache incoherencies Lars-Peter Clausen
2010-12-28 20:37 ` [PATCH 1/9] ASoC: codecs: Remove unused reg_cache fields from device structs Lars-Peter Clausen
2010-12-28 20:37 ` [PATCH 2/9] ASoC: codecs: max98088: Fix register cache incoherency Lars-Peter Clausen
2010-12-28 20:37 ` [PATCH 3/9] ASoC: codecs: wm8523: " Lars-Peter Clausen
2010-12-28 20:37 ` [PATCH 4/9] ASoC: codecs: wm8741: " Lars-Peter Clausen
2010-12-28 20:37 ` [PATCH 5/9] ASoC: codecs: wm8904: " Lars-Peter Clausen
2010-12-28 20:38 ` [PATCH 6/9] ASoC: codecs: wm8955: " Lars-Peter Clausen
2010-12-28 20:38 ` [PATCH 7/9] ASoC: codecs: wm8962: " Lars-Peter Clausen
2010-12-28 20:38 ` [PATCH 8/9] ASoC: codecs: wm9090: " Lars-Peter Clausen
2010-12-28 20:38 ` [PATCH 9/9] ASoC: codecs: wm8753: " Lars-Peter Clausen
2010-12-28 23:43   ` Mark Brown
2010-12-28 20:38 ` Lars-Peter Clausen
2010-12-28 23:34   ` Mark Brown
2010-12-28 23:42 ` [PATCH 0/9 v2] ASoC: codecs: Fix register cache incoherencies Mark Brown
  -- strict thread matches above, loose matches on Subject: below --
2010-12-24 13:47 [PATCH 0/9] " Lars-Peter Clausen
2010-12-24 13:48 ` [PATCH 9/9] ASoC: codecs: wm8753: Fix register cache incoherency Lars-Peter Clausen
2010-12-24 15:50   ` Mark Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox