13 Apr, 2010
1 commit
-
The commit 29a4f2d3 used writel() at offset 0x26 which is
half-word aligned causing unaligned exceptions on a
Cortex-A8. The original patch solved the "aaci-pl041 fpga:04:
ac97 read back fail" issue on a soft reset. Reading from any
arbitrary aaci register seems to solve this issue.Signed-off-by: Philby John
Acked-by: Russell King
Signed-off-by: Takashi Iwai
26 Dec, 2009
1 commit
-
This patch fixes a build failure introduced by the patch
ALSA: AACI: factor common hw_params logic into aaci_pcm_hw_params [1]
by adding/moving the aaci struct to the right position.The patch mentioned above merged common source parts into one function,
but unfortunately left out the aaci struct and consequently caused a
build failure e.g. for arm versatile_config [2]References:
[1] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=d3aee7996c30f928bbbbfd0994148e35d2e83084
[2] http://kisskb.ellerman.id.au/kisskb/buildresult/1893605/Patch against Linus' tree.
Signed-off-by: Peter Huewe
Signed-off-by: Takashi Iwai
19 Dec, 2009
6 commits
-
We can use finer-grained locking, which makes things easier when
we gain DMA support.Signed-off-by: Russell King
Signed-off-by: Takashi Iwai -
Signed-off-by: Russell King
Signed-off-by: Takashi Iwai -
Signed-off-by: Russell King
Signed-off-by: Takashi Iwai -
Since the recording and playback paths are now the same, eliminate
the needless conditionals.Signed-off-by: Russell King
Signed-off-by: Takashi Iwai -
There's no need for a specific rule; ALSA's generic AC'97 support
calculates the necessary rate constraint information itself, and
we can use this directly.Signed-off-by: Russell King
Signed-off-by: Takashi Iwai -
Fixed a typo of the max buffer size specified for buffer allocation
changed in the commit d6797322231af98b9bb4afb175dd614cf511e5f7.Signed-off-by: Takashi Iwai
04 Dec, 2009
2 commits
01 Dec, 2009
2 commits
-
Now snd_ac97_pcm_open() is called with the exactly same arguments
for both playback and capture directions. Remove the unneeded check.Signed-off-by: Takashi Iwai
30 Nov, 2009
2 commits
-
pcm->r[1].slots is the double rate slot information, not the
capture information. For capture, 'pcm' will already be the
capture ac97 pcm structure.Signed-off-by: Russell King
Cc:
Signed-off-by: Takashi Iwai -
Signed-off-by: Russell King
Cc:
Signed-off-by: Takashi Iwai
27 Nov, 2009
1 commit
-
The call of dma_mmap_coherent() is done in the PCM core now.
Signed-off-by: Takashi Iwai
23 Nov, 2009
1 commit
-
Fix the buffer size calculation to use the size which ALSA is expecting.
Signed-off-by: Russell King
Signed-off-by: Takashi Iwai
13 Oct, 2009
1 commit
-
After a reboot on an ARM1176 which amounts to a softreset, it has been
noted that the ALSA driver does not get registered and the probe fails
with the error "aaci-pl041 fpga:04: ac97 read back fail". In the process
of reading from a register the SL1TxBusy bit is set indicating that the
transceiver is busy and remains so until the default timeout occurs.
Set the Power down register 0x26 to an arbitrary value as specified in
the PL041 manual (page: 3-18) so that AACISL1TX/AACISL2TX registers take
their default state.Signed-off-by: Philby John
Signed-off-by: Takashi Iwai
11 Jun, 2009
1 commit
-
I found the PrimeCell/AMBA Bus drivers distrusting the resource
passed in as part of the struct amba_device abstraction. This
patch removes all hard coded resource sizes found in the PrimeCell
drivers and move the responsibility of this definition back to
the platform/board device definition, which already exist and
appear to be correct for all in-tree users of these drivers.
We do this using the resource_size() inline function which was
also replicated in the only driver using the resource size, so
that has been changed too. The KMI_SIZE was left in kmi.h in case
someone likes it. Test-compiled against Versatile and Integrator
defconfigs, seems to work but I don't posess these boards and
cannot test them.Signed-off-by: Linus Walleij
Signed-off-by: Russell King
21 May, 2009
1 commit
-
The second argument of the probe method points to the amba_id
structure, so it's better passed with the correct type. None of the
current in-tree drivers uses the pointer, so they have only been
checked for a clean compile.Change suggested by Russell King.
Signed-off-by: Alessandro Rubini
Signed-off-by: Russell King
24 Mar, 2009
1 commit
10 Feb, 2009
1 commit
-
With a postfix decrement the timeout will reach -1 rather than 0,
so the warning will not be issued.Signed-off-by: Roel Kluin
Signed-off-by: Russell King
12 Jan, 2009
1 commit
-
Convert from snd_card_new() to the new snd_card_create() function
in other sound subdirectories.Signed-off-by: Takashi Iwai
04 Sep, 2008
1 commit
-
The original fix by Julien Brunel .
aaci_init_card() returns a pointer with ERR_PTR(), but in aaci_init()
NULL is supposed at this error path.Signed-off-by: Takashi Iwai
Signed-off-by: Jaroslav Kysela
01 Feb, 2008
1 commit
-
This header file exists only for some hacks to adapt alsa-driver
tree. It's useless for building in the kernel. Let's move a few
lines in it to sound/core.h and remove it.
With this patch, sound/driver.h isn't removed but has just a single
compile warning to include it. This should be really killed in
future.Signed-off-by: Takashi Iwai
Signed-off-by: Jaroslav Kysela
19 Oct, 2007
1 commit
-
Found these while looking at printk uses.
Add missing newlines to dev_ uses
Add missing KERN_ prefixes to multiline dev_s
Fixed a wierd->weird spelling typo
Added a newline to a printkSigned-off-by: Joe Perches
Cc: "Luck, Tony"
Cc: Jens Axboe
Cc: Mark M. Hoffman
Cc: Roland Dreier
Cc: Tilman Schmidt
Cc: David Woodhouse
Cc: Jeff Garzik
Cc: Stephen Hemminger
Cc: Greg KH
Cc: Jeremy Fitzhardinge
Cc: Geert Uytterhoeven
Cc: Alessandro Zummo
Cc: David Brownell
Cc: James Smart
Cc: Andrew Vasquez
Cc: "Antonino A. Daplas"
Cc: Evgeniy Polyakov
Cc: Russell King
Cc: Jaroslav Kysela
Cc: Takashi Iwai
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
20 Feb, 2007
1 commit
-
CC [M] sound/arm/aaci.o
sound/arm/aaci.c:729: error: parse error before '*' token
sound/arm/aaci.c:731: warning: function declaration isn't a prototype
...
sound/arm/aaci.c:786: error: parse error before '*' token
sound/arm/aaci.c:786: warning: function declaration isn't a prototype
...
sound/arm/aaci.c:827: error: parse error before '*' token
sound/arm/aaci.c:828: warning: function declaration isn't a prototype
...
sound/arm/aaci.c:845: error: parse error before "aaci_capture_ops"
sound/arm/aaci.c:845: warning: type defaults to `int' in declaration of `aaci_capture_ops'Signed-off-by: Russell King
18 Feb, 2007
3 commits
-
Add timeouts to hardware read/write/probe functions in order
to avoid lockups on buggy/broken hardware.Signed-off-by: Kevin Hilman
Signed-off-by: Russell King -
Add PCM audio capture support for AACI audio on Versatile platform.
Signed-off-by: Kevin Hilman
Signed-off-by: Russell King -
Add AACI channel support to interrupt handler.
Also, clear underrun interrupt for correct channel.Signed-off-by: Kevin Hilman
Signed-off-by: Russell King
05 Oct, 2006
1 commit
-
Maintain a per-CPU global "struct pt_regs *" variable which can be used instead
of passing regs around manually through all ~1800 interrupt handlers in the
Linux kernel.The regs pointer is used in few places, but it potentially costs both stack
space and code to pass it around. On the FRV arch, removing the regs parameter
from all the genirq function results in a 20% speed up of the IRQ exit path
(ie: from leaving timer_interrupt() to leaving do_IRQ()).Where appropriate, an arch may override the generic storage facility and do
something different with the variable. On FRV, for instance, the address is
maintained in GR28 at all times inside the kernel as part of general exception
handling.Having looked over the code, it appears that the parameter may be handed down
through up to twenty or so layers of functions. Consider a USB character
device attached to a USB hub, attached to a USB controller that posts its
interrupts through a cascaded auxiliary interrupt controller. A character
device driver may want to pass regs to the sysrq handler through the input
layer which adds another few layers of parameter passing.I've build this code with allyesconfig for x86_64 and i386. I've runtested the
main part of the code on FRV and i386, though I can't test most of the drivers.
I've also done partial conversion for powerpc and MIPS - these at least compile
with minimal configurations.This will affect all archs. Mostly the changes should be relatively easy.
Take do_IRQ(), store the regs pointer at the beginning, saving the old one:struct pt_regs *old_regs = set_irq_regs(regs);
And put the old one back at the end:
set_irq_regs(old_regs);
Don't pass regs through to generic_handle_irq() or __do_IRQ().
In timer_interrupt(), this sort of change will be necessary:
- update_process_times(user_mode(regs));
- profile_tick(CPU_PROFILING, regs);
+ update_process_times(user_mode(get_irq_regs()));
+ profile_tick(CPU_PROFILING);I'd like to move update_process_times()'s use of get_irq_regs() into itself,
except that i386, alone of the archs, uses something other than user_mode().Some notes on the interrupt handling in the drivers:
(*) input_dev() is now gone entirely. The regs pointer is no longer stored in
the input_dev struct.(*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does
something different depending on whether it's been supplied with a regs
pointer or not.(*) Various IRQ handler function pointers have been moved to type
irq_handler_t.Signed-Off-By: David Howells
(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)
03 Jul, 2006
1 commit
-
Signed-off-by: Thomas Gleixner
Cc: Ingo Molnar
Cc: "David S. Miller"
Cc: Benjamin Herrenschmidt
Cc: Jaroslav Kysela
Cc: Takashi Iwai
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
28 Jun, 2006
1 commit
-
This is needed if we wish to change the size of the resource structures.
Based on an original patch from Vivek Goyal
Cc: Vivek Goyal
Signed-off-by: Andrew Morton
Signed-off-by: Greg Kroah-Hartman
22 Mar, 2006
1 commit
-
Semaphore to mutex conversion.
The conversion was generated via scripts, and the result was validated
automatically via a script as well.Signed-off-by: Ingo Molnar
Signed-off-by: Andrew Morton
Signed-off-by: Takashi Iwai
02 Feb, 2006
1 commit
-
Patch from Catalin Marinas
AACI reports TX FIFO full after the first write to it if the AC97 is not
enabled. This patch enables the AC97 probing before the check for the TX
FIFO size. The patch also adds a warning if the TX FIFO size is not
multiple of 16.Signed-off-by: Catalin Marinas
Signed-off-by: Russell King
07 Jan, 2006
2 commits
-
Since the ARM AMBA bus is used on MIPS as well as ARM, we need
to make the bus available for other architectures to use. Move
the AMBA include files from include/asm-arm/hardware/ to
include/linux/amba/Signed-off-by: Russell King
03 Jan, 2006
2 commits
-
Modules: ARM AACI PL041 driver,ARM PXA2XX driver
Fix PM support of aaci and pxa2xx drivers.
Signed-off-by: Takashi Iwai
-
Modules: ARM AACI PL041 driver,ARM DMA routines
Remove xxx_t typedefs from the ARM AACI driver.
Signed-off-by: Takashi Iwai
28 Oct, 2005
1 commit
-
Signed-off-by: Russell King
18 Sep, 2005
1 commit
-
Fix up some pm_message_t types
Signed-Off-By: Richard Purdie
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds