Commit Graph
100 Commits
Author SHA1 Message Date
Mark Brown 9a3e1b8c50 ASoC: wm5110: Hook up ADSP2 cores
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-11-24 14:35:43 +00:00
Mark Brown d6814a7daf regmap: debugfs: Suppress cache for partial register files
The cache is based on the full register map so confuses things if used
for a partial map.

Reported-by: Bard Liao <bardliao@realtek.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-06-19 10:18:09 +01:00
Mark Brown f3799e9372 mfd: wm8994: Reset device during probe
Ensure that the device is in a known good state. This should have little
practical impact as the runtime PM will reset the device shortly after
probe but it's neater.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-06-18 00:07:49 +02:00
Mark Brown 7c8844481a mfd: wm8994: Emulate level triggered interrupts if required
The interrupt controller on the wm8994 series of devices requires a level
triggered parent. If one is not available but a GPIO is available for the
interrupt then emulate.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-06-11 19:27:52 +02:00
Mark Brown 2da1c4bf76 ASoC: wm8994: Allow debounce before MICDET identification
For systems which do not have a jack detection feature allow some debounce
to be specified before we perform accessory identification, improving
robustness without impacting button detection responsiveness.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-06-01 19:28:58 +01:00
Mark Brown 2d01e39b90 ASoC: wm8994: Remove unused variable
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-06-01 19:28:54 +01:00
Mark Brown 50941968fc ASoC: wm8994: Add digital loopback paths
There is loopback control within the audio interfaces, provide control of
this as there are some obscure scenarios where this could be used in
production.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-30 13:48:08 +01:00
Mark Brown 7afce3f5e5 ASoC: wm8994: Ensure microphone detection state is reset on removal
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-30 13:47:46 +01:00
Mark Brown 9e43088bb0 ASoC: wm8994: Avoid leaking pm_runtime reference on removed jack race
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-30 12:10:02 +01:00
Mark Brown dcbd8eec68 Merge remote-tracking branch 'regulator/fix/palmas' into regulator-linus 2013-05-30 11:58:40 +01:00
Mark Brown 2a66a854f5 Merge remote-tracking branch 'regulator/fix/doc' into regulator-linus 2013-05-30 11:58:39 +01:00
Mark Brown e4bf063cb8 Merge remote-tracking branch 'regulator/fix/dbx500' into regulator-linus 2013-05-30 11:58:37 +01:00
Mark Brown 435494acd6 Merge remote-tracking branch 'regulator/fix/core' into regulator-linus 2013-05-30 11:58:37 +01:00
Mark Brown 70bd3b298b ASoC: wm8994: Defer declaration of open circuit microphones
Provide a bit of debounce to handle pathological cases with slow input
better by allowing the microphone detection to run for a bit longer.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-29 20:31:33 +01:00
Mark Brown f7dbd399ef ASoC: wm8994: Ensure lambda is zeroed for WM8994
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-28 15:57:38 +01:00
Mark Brown 287d03e9cd ASoC: wm8994: Remove restore of DAC enable state
It's not been needed since the regmap conversion.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-28 15:57:34 +01:00
Mark Brown 1ab9ecc248 Merge remote-tracking branch 'asoc/fix/wm8994' into asoc-linus 2013-05-28 15:41:37 +01:00
Mark Brown 9f1b2556c5 Merge remote-tracking branch 'asoc/fix/max98090' into asoc-linus 2013-05-28 15:41:36 +01:00
Mark Brown 72322e6362 Merge remote-tracking branch 'asoc/fix/davinci' into asoc-linus 2013-05-28 15:41:36 +01:00
Mark Brown 7ae3433628 Merge remote-tracking branch 'asoc/fix/cs42l52' into asoc-linus 2013-05-28 15:41:35 +01:00
Mark Brown d63aaee1fe Merge remote-tracking branch 'asoc/fix/compress' into asoc-linus 2013-05-28 15:41:35 +01:00
Mark Brown c6859959fc Merge remote-tracking branch 'asoc/fix/arizona' into asoc-linus 2013-05-28 15:41:34 +01:00
Mark Brown 9767a58b8b ASoC: wm8994: Fix reporting of accessory removal on WM8958
During recent refactoring the code to report removal when MICDET reports
an absent microphone was removed, causing problems for systems which rely
solely on the MICDET for this functionality. Restore it.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-28 10:22:36 -04:00
Mark Brown 71cbb77289 Merge tag 'mfd-arizona-v3.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc into asoc-arizona
mfd: arizona: Updates for v3.10

A bunch of enhancements and fixes for the arizona devices, adding a few
new features (the main one being device tree) and improving robustness.
2013-05-25 10:31:46 -04:00
Mark Brown e5657054ff mfd: wm5110: Make DSPn_STATUS_3 readable
These registers have been documented since the driver was originally
submitted so expose them.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-22 19:13:47 -05:00
Mark Brown 4510dbe324 Merge tag 'v3.10-rc2' into asoc-ux500
Linux 3.10-rc2
2013-05-21 11:39:21 -05:00
Mark Brown 62cc4d595f ASoC: wm5110: Add missing speaker initialisation
Add callback to initialise the speaker in the core following the recent
changes to handling of integration with the thermal interrupts.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-20 11:33:51 -05:00
Mark Brown d217f90556 ASoC: wm5110: Stub hookup for Slimbus interface
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-20 11:27:59 -05:00
Mark Brown 1804aff60d ASoC: wm5102: Stub hookup for Slimbus interface
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-20 11:27:58 -05:00
Mark Brown bd1dd88569 ASoC: arizona: Provide simple DAI ops for autoconfiguring interfaces
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-20 11:27:58 -05:00
Mark Brown 435705e892 ASoC: wm8994: Handle LRCLK inversion for WM8958 and WM1811A
On WM8958 and WM1811A separate control of the LRCLK inversion bit is
available for the DAC and ADC LRCLKs which for compatibility reasons is
done in a new register bit.

Since writes to each scheme have no effect on parts using the other just
always write to both for simplicity.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Tested-by: Samreen Nilofer <samreen.nilofer@intel.com>
2013-05-20 11:27:06 -05:00
Mark Brown 5927467d0c mfd: arizona: Support use of external DCVDD
When the device is used with an external DCVDD supply instead of the
internal LDO1 then an extra step is required when suspending and resuming
the device.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-20 08:13:37 -05:00
Mark Brown d781009ca6 mfd: Add device tree bindings for Arizona class devices
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-20 08:13:36 -05:00
Mark Brown 67c9929691 mfd: arizona: Disable interrupts during suspend
We aren't able to handle interrupts after the device has suspended since
we need to runtime resume it in order to do so but the controller may not
be available any more. Handle this in the same way as we handle a similar
issue on resume.

Reported-by: Chuansheng Liu <chuansheng.liu@intel.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-17 16:47:29 +01:00
Mark Brown 1d017b6b36 mfd: arizona: Add missing cleanup on remove
We'd forgotten to disable /RESET or the regulators. Practically speaking
this code is unlikely to ever be run.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-17 16:47:28 +01:00
Mark Brown ca76ceb8b9 mfd: arizona: Read the device identification information after boot
Future devices may not fully report the device identification information
until their boot sequence is complete so defer acting on these until that
has finished.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-17 16:42:24 +01:00
Mark Brown dfbe403c5b spi: Move mailing list to vger
Given the spam and other problems with the existing list move to a newly
created list on vger.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-17 13:12:52 +01:00
Mark Brown 407a0e18ec Merge remote-tracking branch 'asoc/fix/wm0010' into asoc-linus 2013-05-14 16:53:21 +04:00
Mark Brown c583eac39a Merge remote-tracking branch 'asoc/fix/ux500' into asoc-linus 2013-05-14 16:53:20 +04:00
Mark Brown 0335cd6c4f Merge remote-tracking branch 'asoc/fix/da7213' into asoc-linus 2013-05-14 16:53:19 +04:00
Mark Brown 88b0357dde Merge remote-tracking branch 'spi/fix/grant' into spi-linus 2013-05-13 18:27:18 +04:00
Mark Brown 0faa3146f1 Merge remote-tracking branch 'spi/fix/atmel' into spi-linus 2013-05-13 18:27:16 +04:00
Mark Brown de1f9f270e spi/sirf: Let device core handle pinctrl
Since commit ab78029 (drivers/pinctrl: grab default handles from device
core) we can rely on device core for handling pinctrl so remove
devm_pinctrl_get_select_default() from the driver.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Barry Song <baohua.song@csr.com>
2013-05-13 18:14:58 +04:00
Mark Brown 0514dd76ea spi/omap2: Let device core handle pinctrl
Since commit ab78029 (drivers/pinctrl: grab default handles from device
core) we can rely on device core for handling pinctrl so remove
devm_pinctrl_get_select_default() from the driver.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-13 18:12:56 +04:00
Mark Brown d1a0a29958 ASoC: wm8994: Support EFS mode for FLL
Later WM8994 devices support an enhanced accuracy FLL divisor mode called
EFS which allows more precise selection of fractional source to output
ratios. Support this on relevant devices.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-13 09:40:12 +04:00
Mark Brown 8011412999 ASoC: dapm: Provide early event callbacks for power up and down
Some devices may benefit from being able to start some parts of the widget
power up/down sequence earlier on in the sequence than the point at which
the final power state is committed. Support these by providing events which
are called before any power state changes are done.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2013-05-12 20:44:18 +04:00
Mark Brown 9b74fad508 ASoC: sam9g20ek: Let device core handle pinctrl
Since commit ab78029 (drivers/pinctrl: grab default handles from device
core) we can rely on device core for handling pinctrl so remove
devm_pinctrl_get_select_default() from the driver.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Tested-by: Bo Shen <voice.shen@atmel.com>
Acked-by: Bo Shen <voice.shen@atmel.com>
2013-05-12 20:43:37 +04:00
Mark Brown f9e464a566 regmap: debugfs: Don't mark lockdep as broken due to debugfs write
A register write to hardware is reasonably unlikely to cause locking
dependency issues, the reason we're tainting is that unexpected changes
in the hardware configuration may confuse drivers.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-12 19:01:39 +04:00
Mark Brown 7278af5fb3 regmap: rbtree: Use range information to allocate nodes
If range information has been provided then when we allocate a rbnode
within a range allocate the entire range. The goal is to minimise the
number of reallocations done when combining or extending blocks. At
present only readability and yes_ranges are taken into account, this is
expected to cover most cases efficiently.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-12 18:46:47 +04:00
Mark Brown 0186645d25 regmap: rbtree: Factor out node allocation
In preparation for being slightly smarter about how we allocate memory
factor out the node allocation.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-12 18:46:47 +04:00
Mark Brown 154881e59b regmap: Make regmap_check_range_table() a public API
Allow drivers to use an access table as part of their implementation.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-12 18:46:47 +04:00
Mark Brown 697e85bc6a regmap: Add support for discarding parts of the register cache
Allow drivers to discard parts of the register cache, for example if part
of the hardware has been reset.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-12 18:46:47 +04:00
Mark Brown 3086c9f648 Merge branch 'spi/merge' of git://git.secretlab.ca/git/linux into spi-fix-grant 2013-05-06 11:48:50 +01:00
Mark Brown 9631c02e24 Merge remote-tracking branch 'asoc/fix/wm8994' into asoc-linus 2013-05-03 09:30:29 +01:00
Mark Brown 57669eaab2 Merge remote-tracking branch 'asoc/fix/davinci' into asoc-linus 2013-05-03 09:30:28 +01:00
Mark Brown 2fdfe1c26f mmc: sdhci-s3c: Fix operation on non-single image Samsung platforms
Commit cc014f3 (mmc: sdhci-s3c: remove platform dependencies) changed
the platform dependency in Kconfig to depend on SAMSUNG_SINGLE, meaning
the driver was available only on single zImage Samsung platforms.  This
breaks platforms that haven't been converted such as S3C64xx.  Revert
that part of the change to fix.

[arnd: CONFIG_SAMSUNG_SINGLE was actually introduced only for
non-multiplatform configurations, but was subsequently removed,
which means the driver was now broken both for single- and multi-
platform. The dependency was there by accident anyway, so reverting
this is still the correct solution]

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-30 16:44:43 +02:00
Mark Brown 5cc50fc858 Merge remote-tracking branch 'asoc/topic/ux500' into asoc-next 2013-04-23 19:26:15 +01:00
Mark Brown 5d4dcae706 Merge remote-tracking branch 'asoc/topic/max98088' into asoc-next 2013-04-23 19:26:12 +01:00
Mark Brown ee43ccf285 Merge remote-tracking branch 'asoc/topic/fsl' into asoc-next 2013-04-23 19:26:11 +01:00
Mark Brown 9eb8ae727d Merge remote-tracking branch 'asoc/topic/dma' into asoc-next 2013-04-23 19:26:00 +01:00
Mark Brown 5561f17f26 Merge remote-tracking branch 'asoc/topic/davinci' into asoc-next 2013-04-23 19:25:29 +01:00
Mark Brown 423a5e0fd4 Merge remote-tracking branch 'asoc/topic/cs4271' into asoc-next 2013-04-23 19:25:25 +01:00
Mark Brown 83097a9c67 Merge remote-tracking branch 'asoc/topic/core' into asoc-next 2013-04-23 19:25:18 +01:00
Mark Brown 20fb277250 mfd: wm8994: Add some OF properties
Add properties for some of the more important bits of platform data and
fill out the binding document.

Not all of the current platform data is suitable for the sort of fixed
configuration that is done using DT, some of it should have runtime
mechanisms added instead and some is unlikely to ever be used in practical
systems.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Tested-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-04-19 00:35:21 +02:00
Mark Brown 39aa3b5a59 mfd: wm8994: Add device ID data to WM8994 OF device IDs
We can actually read this back from the device but we use this when
registered using standard I2C board data registration so make sure
it's there for OF too.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Tested-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-04-19 00:35:19 +02:00
Mark Brown e7e4e13c54 MAINTAINERS: Add git repository and update my address
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-18 18:18:47 +01:00
Mark Brown fb9d044efb spi/s3c64xx: Check for errors in dmaengine prepare_transfer()
Don't silently ignore errors, report them.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-18 18:17:27 +01:00
Mark Brown 563b444e33 spi/s3c64xx: Fix non-dmaengine usage
The multiplatform conversion in commit 788437 (spi: s3c64xx: move to
generic dmaengine API) tested for the use of the Samsung-specific DMA
API with SAMSUNG_DMADEV when in fact S3C_DMA should be used. This
renderd DMA based transfers non-functional on platforms not using
dmaengine.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-18 18:17:22 +01:00
Mark Brown 24568ea4be Merge remote-tracking branch 'asoc/topic/max98088' into asoc-next 2013-04-18 15:05:35 +01:00
Mark Brown 23abd863d2 Merge remote-tracking branch 'asoc/topic/fsl' into asoc-next 2013-04-18 15:05:33 +01:00
Mark Brown d45a26bd97 Merge remote-tracking branch 'asoc/topic/dma' into asoc-next 2013-04-18 15:05:30 +01:00
Mark Brown 8ef53f689a Merge remote-tracking branch 'asoc/topic/cs4271' into asoc-next 2013-04-18 15:05:28 +01:00
Mark Brown 5d5940d469 Merge remote-tracking branch 'asoc/topic/core' into asoc-next 2013-04-18 15:05:25 +01:00
Mark Brown 753e23ea58 Merge tag 'v3.9-rc7' into asoc-dma
Linux 3.9-rc7
2013-04-17 14:24:35 +01:00
Mark Brown 8b1b054f6b Merge branch 'topic/core' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-dma 2013-04-17 14:18:06 +01:00
Mark Brown 38a817965d Merge remote-tracking branch 'regmap/topic/range' into regmap-next 2013-04-16 16:05:50 +01:00
Mark Brown 7f47db4006 Merge remote-tracking branch 'regmap/topic/irq' into regmap-next 2013-04-16 16:05:48 +01:00
Mark Brown 5b3b448475 Merge remote-tracking branch 'regmap/topic/cache' into regmap-next 2013-04-16 16:05:46 +01:00
Mark Brown b508c80c55 Merge remote-tracking branch 'regmap/topic/async' into regmap-next 2013-04-16 16:05:44 +01:00
Mark Brown 60f7110e36 Merge tag 'v3.9-rc7' into regmap-cache
Linux 3.9-rc7
2013-04-16 16:02:41 +01:00
Mark Brown cd2d95d97c Merge tag 'v3.9-rc7' into regulator-fix-core
Linux 3.9-rc7

Trivial context overlap conflicts:
	MAINTAINERS
2013-04-15 17:27:12 +01:00
Mark Brown 5cbad7d39a Merge remote-tracking branch 'asoc/topic/wm8994' into asoc-next 2013-04-12 13:57:31 +01:00
Mark Brown 3c30782625 Merge remote-tracking branch 'asoc/topic/wm8960' into asoc-next 2013-04-12 13:57:29 +01:00
Mark Brown ca0c5685ff Merge remote-tracking branch 'asoc/topic/wm8903' into asoc-next 2013-04-12 13:57:28 +01:00
Mark Brown 4277c2a2a7 Merge remote-tracking branch 'asoc/topic/wm2000' into asoc-next 2013-04-12 13:57:27 +01:00
Mark Brown 106c386ad5 Merge remote-tracking branch 'asoc/topic/wm0010' into asoc-next 2013-04-12 13:57:26 +01:00
Mark Brown 6d21c5d64b Merge remote-tracking branch 'asoc/topic/wm-hubs' into asoc-next 2013-04-12 13:57:25 +01:00
Mark Brown 0dd9e6bd6f Merge remote-tracking branch 'asoc/topic/ux500' into asoc-next 2013-04-12 13:57:22 +01:00
Mark Brown d14bc151a4 Merge remote-tracking branch 'asoc/topic/tegra' into asoc-next 2013-04-12 13:57:21 +01:00
Mark Brown 5b9fd76972 Merge remote-tracking branch 'asoc/topic/tas5086' into asoc-next 2013-04-12 13:57:19 +01:00
Mark Brown eeb7f91e35 Merge remote-tracking branch 'asoc/topic/spear' into asoc-next 2013-04-12 13:57:17 +01:00
Mark Brown 4b6142ae93 Merge remote-tracking branch 'asoc/topic/si476x' into asoc-next 2013-04-12 13:57:15 +01:00
Mark Brown df00b71fbd Merge remote-tracking branch 'asoc/topic/samsung' into asoc-next 2013-04-12 13:57:13 +01:00
Mark Brown 8c7df02167 Merge remote-tracking branch 'asoc/topic/max98090' into asoc-next 2013-04-12 13:57:12 +01:00
Mark Brown 406554fe8d Merge remote-tracking branch 'asoc/topic/max98088' into asoc-next 2013-04-12 13:57:10 +01:00
Mark Brown c964f28dbf Merge remote-tracking branch 'asoc/topic/maintainers' into asoc-next 2013-04-12 13:57:08 +01:00
Mark Brown 5dccf54e2b Merge remote-tracking branch 'asoc/topic/fsl' into asoc-next 2013-04-12 13:57:07 +01:00
Mark Brown 48539f73cb Merge remote-tracking branch 'asoc/topic/fsi' into asoc-next 2013-04-12 13:57:05 +01:00
Mark Brown 38e8c895d3 Merge remote-tracking branch 'asoc/topic/dma' into asoc-next 2013-04-12 13:57:04 +01:00
Mark Brown d66e065c5b Merge remote-tracking branch 'asoc/topic/davinci' into asoc-next 2013-04-12 13:57:03 +01:00