<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/sound/isa, branch linux-3.7.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.7.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.7.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2012-10-21T12:17:43Z</updated>
<entry>
<title>ALSA: sound/isa/opti9xx/miro.c: eliminate possible double free</title>
<updated>2012-10-21T12:17:43Z</updated>
<author>
<name>Julia Lawall</name>
</author>
<published>2012-10-21T10:52:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=edb66893860dbc0631afc2807efdb209a03d57a2'/>
<id>urn:sha1:edb66893860dbc0631afc2807efdb209a03d57a2</id>
<content type='text'>
snd_miro_probe is a static function that is only called twice in the file
that defines it.  At each call site, its argument is freed using
snd_card_free.  Thus, there is no need for snd_miro_probe to call
snd_card_free on its argument on any of its error exit paths.

Because snd_card_free both reads the fields of its argument and kfrees its
argments, the results of the second snd_card_free should be unpredictable.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// &lt;smpl&gt;
@r@
identifier f,free,a;
parameter list[n] ps;
type T;
expression e;
@@

f(ps,T a,...) {
  ... when any
      when != a = e
  if(...) { ... free(a); ... return ...; }
  ... when any
}

@@
identifier r.f,r.free;
expression x,a;
expression list[r.n] xs;
@@

* x = f(xs,a,...);
  if (...) { ... free(a); ... return ...; }
// &lt;/smpl&gt;

Signed-off-by: Julia Lawall &lt;Julia.Lawall@lip6.fr&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>sound: Remove unnecessary semicolon</title>
<updated>2012-10-06T14:47:53Z</updated>
<author>
<name>Peter Senna Tschudin</name>
</author>
<published>2012-09-28T09:24:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=395d9dd5dd13c6aa3c8c61a31126af98cd1e747d'/>
<id>urn:sha1:395d9dd5dd13c6aa3c8c61a31126af98cd1e747d</id>
<content type='text'>
A simplified version of the semantic patch that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// &lt;smpl&gt;
@r1@
statement S;
position p,p1;
@@
S@p1;@p

@script:python r2@
p &lt;&lt; r1.p;
p1 &lt;&lt; r1.p1;
@@
if p[0].line != p1[0].line_end:
        cocci.include_match(False)
@@
position r1.p;
@@
-;@p
// &lt;/smpl&gt;

Signed-off-by: Peter Senna Tschudin &lt;peter.senna@gmail.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: emu8000: fix emu8000 DRAM sized 512 KiB too small</title>
<updated>2012-08-28T17:58:12Z</updated>
<author>
<name>David Flater</name>
</author>
<published>2012-08-28T02:25:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1338fc97d07a04e74a7b75ff28b7751061f4cf38'/>
<id>urn:sha1:1338fc97d07a04e74a7b75ff28b7751061f4cf38</id>
<content type='text'>
v2:  Fixed result still wrong in the case of 512 KiB DRAM.  Oops.

Applicable to 3.5.3 mainline.

In emu8000.c, size_dram determines the amount of memory on the sound card by
doing write/readback tests starting at 512 KiB and incrementing by 512 KiB.
On success, detected_size is updated to the successful address and testing
continues.  On failure, the loop is immediately exited.  The resulting
detected_size is 512 KiB too small except in two special cases:

1. If there is no memory, the initial 0 value of detected_size is used, which
   is correct.
2. If the address space wraps around, detected_size is updated before the
   bailout, so the result is correct.

The patch corrects all cases and was tested with an AWE64 Gold.  Before:
  EMU8000 [0x620]: 3584 Kb on-board memory detected
  asfxload 4GMGSMT.SF2 (4174814 B) fails.
After:
  EMU8000 [0x620]: 4096 Kb on-board memory detected
  asfxload 4GMGSMT.SF2 succeeds.

I do not have a card with 512 KiB to test with, but by forcibly enabling the
added conditional I verified on the AWE64 Gold that it detects 512 KiB
(successfully reading from the first memory location) and does not hang the
card.

C.f. Bug 46451 https://bugzilla.kernel.org/show_bug.cgi?id=46451

Signed-off-by: David Flater &lt;dave@flaterco.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' into for-next</title>
<updated>2012-08-28T16:26:59Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2012-08-28T16:26:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a184d4e4591bb53fd8b91d6e8b85cffa261fb83e'/>
<id>urn:sha1:a184d4e4591bb53fd8b91d6e8b85cffa261fb83e</id>
<content type='text'>
Need to merge the fixes regarding EPSS.

Conflicts:
	sound/pci/hda/hda_codec.c
</content>
</entry>
<entry>
<title>ALSA: cmi8328: Fix build error with CONFIG_GAMEPORT=n</title>
<updated>2012-08-24T05:54:16Z</updated>
<author>
<name>Takashi Iwai</name>
</author>
<published>2012-08-24T05:52:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=56244d0868f48f233d1735541e7da3fd33434b3d'/>
<id>urn:sha1:56244d0868f48f233d1735541e7da3fd33434b3d</id>
<content type='text'>
  sound/isa/cmi8328.c: In function 'snd_cmi8328_remove':
  sound/isa/cmi8328.c:416:24: error: 'cmi' undeclared (first use in this function)
  sound/isa/cmi8328.c:416:24: note: each undeclared identifier is reported only once for each function it appears in
  make[3]: *** [sound/isa/cmi8328.o] Error 1

Reported-by: Randy Dunlap &lt;rdunlap@xenotime.net&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: introduce snd-cmi8328: C-Media CMI8328 driver</title>
<updated>2012-08-21T05:30:46Z</updated>
<author>
<name>Ondrej Zary</name>
</author>
<published>2012-08-20T20:39:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f9933487468c760b8cd9b4e9f7ec4e494f711a0a'/>
<id>urn:sha1:f9933487468c760b8cd9b4e9f7ec4e494f711a0a</id>
<content type='text'>
Introduce snd-cmi8328 driver for C-Media CMI8328-based sound cards, such as
AudioExcel AV500.

It supports PCM playback and capture (full-duplex) through wss_lib, gameport,
OPL3 and MPU401. The AV500 card has onboard Dream wavetable synth connected
to the MPU401 port and Aux 1 input internally which works too.
The CDROM interface is not supported (as the drivers for these CDROMs were
removed from the kernel some time ago).

A separate driver is needed because CMI8328 is completely different chip to
CMI8329/CMI8330. It's configured by magic registers (there's no PnP). Sound is
provided by a real WSS codec (CS4231A) and the SB part is just a SB Pro
emulation (for DOS games, useless for Linux).

When SB is enabled, the CMI8328 chip disables access to the WSS codec,
emulates SoundBlaster on one side and outputs sound data to the codec - so SB
and WSS can't work together with this card. The WSS codec can do full duplex
by itself so there's no need for crazy things like snd-cmi8330 does
(combining SB and WSS parts into one driver).

Signed-off-by: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: snd-als100: fix suspend/resume</title>
<updated>2012-08-21T05:29:40Z</updated>
<author>
<name>Ondrej Zary</name>
</author>
<published>2012-08-20T19:50:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=53e1719f3da0f095b8db1461bd12dd79f3246b84'/>
<id>urn:sha1:53e1719f3da0f095b8db1461bd12dd79f3246b84</id>
<content type='text'>
snd_card_als100_probe() does not set pcm field in struct snd_sb.
As a result, PCM is not suspended and applications don't know that they need
to resume the playback.

Tested with Labway A381-F20 card (ALS120).

Signed-off-by: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: snd-ad1816a: Implement suspend/resume</title>
<updated>2012-08-20T09:12:56Z</updated>
<author>
<name>Ondrej Zary</name>
</author>
<published>2012-08-19T21:27:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6f0fa66051e92f361bd293432466f5e62832adbf'/>
<id>urn:sha1:6f0fa66051e92f361bd293432466f5e62832adbf</id>
<content type='text'>
Implement suspend/resume support for AD1816 chips.
Tested with Terratec SoundSystem Base-1.

Signed-off-by: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: snd-ad1816a: remove useless struct snd_card_ad1816a</title>
<updated>2012-08-20T09:10:39Z</updated>
<author>
<name>Ondrej Zary</name>
</author>
<published>2012-08-19T21:27:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c86b6b452a6b2a80a2c9ffa3c8f7d80eea0fa196'/>
<id>urn:sha1:c86b6b452a6b2a80a2c9ffa3c8f7d80eea0fa196</id>
<content type='text'>
struct snd_card_ad1816a is only set but the values are never used then.
Removing it allows struct snd_card's private_data to be used for
struct snd_ad1816a, simplifying the code.

Signed-off-by: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: print small buffers via %*ph[C]</title>
<updated>2012-08-06T09:09:50Z</updated>
<author>
<name>Andy Shevchenko</name>
</author>
<published>2012-08-02T13:52:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=793ea49c476ebacfefabf78af9ea88a19da6ecdb'/>
<id>urn:sha1:793ea49c476ebacfefabf78af9ea88a19da6ecdb</id>
<content type='text'>
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
</feed>
