<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://mailman.alsa-project.org/main/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://mailman.alsa-project.org/main/api.php?action=feedcontributions&amp;user=Perex&amp;feedformat=atom</id>
		<title>AlsaProject - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://mailman.alsa-project.org/main/api.php?action=feedcontributions&amp;user=Perex&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Special:Contributions/Perex"/>
		<updated>2013-05-23T11:14:15Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.20alpha</generator>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Main_Page_News</id>
		<title>Main Page News</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Main_Page_News"/>
				<updated>2013-05-21T11:27:15Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;; 2013-05-21&lt;br /&gt;
: alsa-lib and alsa-utils 1.0.27.1 release | [[Changes v1.0.27 v1.0.27.1]]&lt;br /&gt;
&lt;br /&gt;
; 2013-04-12&lt;br /&gt;
: alsa 1.0.27 release (user space) | [[Changes v1.0.26 v1.0.27]]&lt;br /&gt;
&lt;br /&gt;
; 2012-09-06&lt;br /&gt;
: alsa 1.0.26 release (user space) | [[Changes v1.0.25 v1.0.26]]&lt;br /&gt;
&lt;br /&gt;
; 2012-01-25&lt;br /&gt;
: alsa 1.0.25 release | [[Changes v1.0.24 v1.0.25]]&lt;br /&gt;
&lt;br /&gt;
; 2011-01-31&lt;br /&gt;
: alsa 1.0.24 release | [[Changes v1.0.23 v1.0.24]]&lt;br /&gt;
&lt;br /&gt;
; 2010-04-16&lt;br /&gt;
: alsa 1.0.23 release | [[Changes v1.0.22 v1.0.23]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-28&lt;br /&gt;
: alsa-driver 1.0.22.1 release | [[Changes v1.0.22 v1.0.22.1]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-16&lt;br /&gt;
: alsa 1.0.22 release | [[Changes v1.0.21 v1.0.22]]&lt;br /&gt;
&lt;br /&gt;
; 2009-09-09&lt;br /&gt;
: alsa-lib 1.0.21a release | [[Changes v1.0.21 v1.0.21a]]&lt;br /&gt;
&lt;br /&gt;
; 2009-08-31&lt;br /&gt;
: alsa 1.0.21 release | [[Changes v1.0.20 v1.0.21|changes from 1.0.20]]&lt;br /&gt;
&lt;br /&gt;
; 2009-05-06&lt;br /&gt;
: alsa 1.0.20 release | [[Changes v1.0.19 v1.0.20|changes from 1.0.19]]&lt;br /&gt;
&lt;br /&gt;
; 2009-01-19&lt;br /&gt;
: alsa 1.0.19 release | [[Changes v1.0.18 v1.0.19|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-11-12&lt;br /&gt;
: alsa-driver 1.0.18a release | [[Changes v1.0.18 v1.0.18a|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-10-29&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-tools,alsa-plugins 1.0.18 release | [[Changes v1.0.18rc3 v1.0.18|changes from 1.0.18rc3]] | [[Changes v1.0.17 v1.0.18|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-09-09&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-plugins 1.0.18rc3 release | [[Changes v1.0.18rc2 v1.0.18rc3|changes from 1.0.18rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-19&lt;br /&gt;
: alsa-utils,alsa-plugins 1.0.18rc2 release | [[Changes v1.0.18rc1 v1.0.18rc2|changes from 1.0.18rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-driver.alsa-utils,alsa-plugins 1.0.18rc1 release | [[Changes v1.0.17a v1.0.18rc1|changes from 1.0.17a]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-lib 1.0.17a release | [[Changes v1.0.17 v1.0.17a|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-07-14&lt;br /&gt;
: ALSA 1.0.17 release (all packages) | [[Changes v1.0.17rc3 v1.0.17|changes from 1.0.17rc3]] | [[Changes v1.0.16 v1.0.17|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-27&lt;br /&gt;
: ALSA 1.0.17rc3 release (driver only) | [[Changes v1.0.17rc2 v1.0.17rc3|changes from 1.0.17rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-16&lt;br /&gt;
: ALSA 1.0.17rc2 release | [[Changes v1.0.17rc1 v1.0.17rc2|changes from 1.0.17rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-06&lt;br /&gt;
: ALSA 1.0.17rc1 release | [[Changes v1.0.16 v1.0.17rc1|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-05-20&lt;br /&gt;
: All repositories converted from HG (Mercurial) to GIT&lt;br /&gt;
&lt;br /&gt;
; 2008-02-06&lt;br /&gt;
: ALSA 1.0.16 final release | [[Changes v1.0.15 v1.0.16|changes from 1.0.15]] | [[Changes v1.0.16rc2 v1.0.16|changes from 1.0.16rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-29&lt;br /&gt;
: ALSA 1.0.16rc2 release | [[Changes v1.0.16rc1 v1.0.16rc2|changes from 1.0.16rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-22&lt;br /&gt;
: ALSA 1.0.16rc1 release | [[Changes v1.0.15 v1.0.16rc1|changes from 1.0.15]]&lt;br /&gt;
&lt;br /&gt;
; 2007-10-16&lt;br /&gt;
: ALSA 1.0.15 final release | [[Changes v1.0.14 v1.0.15|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-26&lt;br /&gt;
: ALSA 1.0.15rc3 release | [[Changes v1.0.15rc2 v1.0.15rc3|changes from 1.0.15rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-13&lt;br /&gt;
: ALSA 1.0.15rc2 release | [[Changes v1.0.15rc1 v1.0.15rc2|changes from 1.0.15rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-31&lt;br /&gt;
: ALSA 1.0.15rc1 release | [[Changes v1.0.14 v1.0.15rc1|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-09&lt;br /&gt;
: ALSA WWW site switched to [http://www.mediawiki.org MediaWiki]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-11&lt;br /&gt;
: ALSA 1.0.14a library bugfix release | [[Changes v1.0.14 v1.0.14a|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-04&lt;br /&gt;
: ALSA 1.0.14 release | [[Changes v1.0.13 v1.0.14|changes from 1.0.13]] | [[Changes v1.0.14rc4 v1.0.14|changes from 1.0.14rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2007-04-03&lt;br /&gt;
: ALSA 1.0.14rc4 release | [[Changes v1.0.14rc3 v1.0.14rc4|changes from 1.0.14rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2007-03-06&lt;br /&gt;
: ALSA 1.0.14rc3 release | [[Changes v1.0.14rc2 v1.0.14rc3|changes from 1.0.14rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-01-16&lt;br /&gt;
: ALSA 1.0.14rc2 release | [[Changes v1.0.14rc1 v1.0.14rc2|changes from 1.0.14rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-12-11&lt;br /&gt;
: ALSA 1.0.14rc1 release | [[Changes v1.0.13 v1.0.14rc1|changes from 1.0.13]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-29&lt;br /&gt;
: ALSA 1.0.13 release | [[Changes v1.0.12 v1.0.13|changes from 1.0.12]] | [[Changes 1.0.13rc3 v1.0.13|changes from 1.0.13rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-26&lt;br /&gt;
: ALSA 1.0.13rc3 release | [[Changes v1.0.13rc2 v1.0.13rc3|changes from 1.0.13rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-15&lt;br /&gt;
: ALSA 1.0.13rc2 release | [[Changes v1.0.13rc1 v1.0.13rc2|changes from 1.0.13rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-01&lt;br /&gt;
: ALSA 1.0.13rc1 release | [[Changes v1.0.12 v1.0.13rc1|changes from 1.0.12]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-24&lt;br /&gt;
: ALSA 1.0.12 release | [[Changes v1.0.11 v1.0.12|changes from 1.0.11]] | [[Changes 1.0.12rc3 v1.0.12|changes from 1.0.12rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-15&lt;br /&gt;
: ALSA 1.0.12rc3 release (driver only) | [[Changes v1.0.12rc2 v1.0.12rc3|changes from 1.0.12rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-03&lt;br /&gt;
: ALSA 1.0.12rc2 release | [[Changes v1.0.12rc1 v1.0.12rc2|changes from 1.0.12rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-06-23&lt;br /&gt;
: ALSA 1.0.12rc1 release | [[Changes v1.0.11 v1.0.12rc1|changes from 1.0.11]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-19&lt;br /&gt;
: ALSA 1.0.11 final release | [[Changes v1.0.10 v1.0.11|changes from 1.0.10]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-11&lt;br /&gt;
: ALSA 1.0.11rc5 release | [[Changes v1.0.11rc4 v1.0.11rc5|changes from 1.0.11rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2006-03-22&lt;br /&gt;
: ALSA 1.0.11rc4 release | [[Changes v1.0.11rc3 v1.0.11rc4|changes from 1.0.11rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-29&lt;br /&gt;
: ALSA 1.0.11rc3 release | [[Changes v1.0.11rc2 v1.0.11rc3|changes from 1.0.11rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-02&lt;br /&gt;
: ALSA 1.0.11rc2 release | [[Changes v1.0.11rc1 v1.0.11rc2|changes from 1.0.11rc1]] | Happy New Year 2006&lt;br /&gt;
&lt;br /&gt;
; 2005-12-12&lt;br /&gt;
: ALSA 1.0.11rc1 release | [[Changes v1.0.10 v1.0.11rc1|changes from 1.0.10 final]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-16&lt;br /&gt;
: ALSA 1.0.10 release | [[Changes v1.0.10rc3 v1.0.10|changes from 1.0.10rc3]] |  [[Changes 1.0.9 v1.0.10|changes from 1.0.9]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-08&lt;br /&gt;
: ALSA 1.0.10rc3 release | [[Changes v1.0.10rc2 v1.0.10rc3|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-10-10&lt;br /&gt;
: ALSA 1.0.10rc2 release | [[Changes v1.0.10rc1 v1.0.10rc2|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-08-20&lt;br /&gt;
: ALSA 1.0.10rc1 release | [[Changes v1.0.9b v1.0.10rc1|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-07&lt;br /&gt;
: ALSA 1.0.9b release | [[Changes v1.0.9a v1.0.9b|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-02&lt;br /&gt;
: ALSA 1.0.9a release | [[Changes v1.0.9 v1.0.9a|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-27&lt;br /&gt;
: ALSA 1.0.9 final release | [[Changes v1.0.8 v1.0.9|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-23&lt;br /&gt;
: ALSA 1.0.9rc4 release&lt;br /&gt;
&lt;br /&gt;
; 2005-05-02&lt;br /&gt;
: ALSA 1.0.9rc3 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-24&lt;br /&gt;
: ALSA 1.0.9rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-13&lt;br /&gt;
: ALSA 1.0.9rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2005-01-13&lt;br /&gt;
: ALSA 1.0.8 release | [[Changes v1.0.7 v1.0.8|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-01-06&lt;br /&gt;
: ALSA 1.0.8rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-12-22&lt;br /&gt;
: ALSA 1.0.8rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-11-15&lt;br /&gt;
: ALSA 1.0.7 release&lt;br /&gt;
&lt;br /&gt;
; 2004-10-13&lt;br /&gt;
: ALSA 1.0.7rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-09-08&lt;br /&gt;
: ALSA 1.0.7rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-08-15&lt;br /&gt;
: ALSA 1.0.6 release&lt;br /&gt;
&lt;br /&gt;
; 2004-06-11&lt;br /&gt;
: ALSA server software was upgraded.  Anonymous rsync access [[Download|was changed.]]&lt;br /&gt;
&lt;br /&gt;
; 2004-05-31&lt;br /&gt;
: 1.0.5a driver release | bugfix for the &amp;quot;hang-up&amp;quot; problem in the ALSA driver initialization&lt;br /&gt;
&lt;br /&gt;
; 2004-05-28&lt;br /&gt;
: 1.0.5 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-04-03&lt;br /&gt;
: 1.0.4 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-03-30&lt;br /&gt;
: 1.0.4rc2 driver release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-27&lt;br /&gt;
: 1.0.4rc1 release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-13&lt;br /&gt;
: alsa-lib 1.0.3b released -  it fixes SIGSEGV problem for dmix plugin (when a specific GCC version is used)&lt;br /&gt;
&lt;br /&gt;
; 2004-03-06&lt;br /&gt;
: alsa-lib 1.0.3a released - it fixes again the dmix/dshare/dsnoop poll() problems&lt;br /&gt;
&lt;br /&gt;
; 2004-02-29&lt;br /&gt;
: 1.0.3 packages released | added driver for ATI IXP 150/200/250 chips and HDSP MADI driver&lt;br /&gt;
&lt;br /&gt;
; 2004-02-25&lt;br /&gt;
: 1.0.3rc2 packages released&lt;br /&gt;
&lt;br /&gt;
; 2004-02-04&lt;br /&gt;
: 1.0.2c driver package release | More fixes for compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-02-03&lt;br /&gt;
: 1.0.2b driver package release | It fixes next 2.6 kernel compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-30&lt;br /&gt;
: 1.0.2a driver package release | It should fix most of 2.6 kernel compilation problems and adds RME HDSP MADI (hdspm) driver.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-27&lt;br /&gt;
: New ALSA bugtracking system using Mantis is [http://bugtrack.alsa-project.org/alsa-bug/ available].&lt;br /&gt;
&lt;br /&gt;
; 2004-01-26&lt;br /&gt;
: 1.0.2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2004-01-08&lt;br /&gt;
: 1.0.1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2003-12-05&lt;br /&gt;
: 1.0.0rc2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | bt87x driver added, more OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-12-01&lt;br /&gt;
: 1.0.0rc1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | intel8x0 driver fixes, OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-11-25&lt;br /&gt;
: 1.0.0pre3 release | alsa-tools packages is divided now - firmware files are in alsa-firmware package.&lt;br /&gt;
&lt;br /&gt;
; 2003-11-18&lt;br /&gt;
: 1.0.0pre1 release | This release is indented for wide testing.&lt;br /&gt;
&lt;br /&gt;
; 2003-10-21&lt;br /&gt;
: 0.9.8 release&lt;br /&gt;
&lt;br /&gt;
; 2003-10-13&lt;br /&gt;
: 0.9.7c driver release - PDE and vortex driver compilation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-10-10&lt;br /&gt;
: 0.9.7b driver release - it fixes serious bug in PCM (mutex hangup)&lt;br /&gt;
&lt;br /&gt;
; 2003-10-01&lt;br /&gt;
: 0.9.7a driver release - fixes bugs (including oops) in the OSS PCM emulation layer&lt;br /&gt;
&lt;br /&gt;
; 2003-09-25&lt;br /&gt;
: 0.9.7 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-28&lt;br /&gt;
: 0.9.6 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-09&lt;br /&gt;
: 0.9.5 release&lt;br /&gt;
&lt;br /&gt;
; 2003-06-01&lt;br /&gt;
: 0.9.4 release&lt;br /&gt;
&lt;br /&gt;
; 2003-05-20&lt;br /&gt;
: *** 0.9.3c driver maintaince release *** configuration fixes + other updates&lt;br /&gt;
&lt;br /&gt;
; 2003-05-19&lt;br /&gt;
: *** 0.9.3b driver maintaince release *** ISA PnP and other fixes. We removed /proc/asound/dev directory. The 'make install' should create new device files, but in case of problems, the snddevices script should be executed.&lt;br /&gt;
&lt;br /&gt;
; 2003-04-30&lt;br /&gt;
: *** 0.9.3 release *** Moved firmware code from vxpocket and hdsp driver to alsa-tools. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-19&lt;br /&gt;
: *** 0.9.2 release *** Added dsnoop and dshare PCM plugins to alsa-lib. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-11&lt;br /&gt;
: *** 0.9.1 release *** First stable release of the 0.9 serie. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-10&lt;br /&gt;
: alsa-driver 0.9.0rc8d released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-08&lt;br /&gt;
: alsa-driver 0.9.0rc8c released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-07&lt;br /&gt;
: alsa-lib 0.9.0rc8c and alsa-utils 0.9.0rc8a released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-05&lt;br /&gt;
: alsa-lib and alsa-driver 0.9.0rc8b release&lt;br /&gt;
: alsa-driver 0.9.0rc8a released (fixed compilation problem for older kernels)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-03&lt;br /&gt;
: alsa-lib 0.9.0rc8a released (fixed compilation problem)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-02&lt;br /&gt;
: 0.9.0 release candidate #8 (all packages) is available for download. It is probably last release before 0.9.0 final. You will find in the alsa-lib package the dmix plugin which allows mixing of multiple PCM streams together without the client/server mechanism.&lt;br /&gt;
&lt;br /&gt;
; 2003-01-28&lt;br /&gt;
: 0.9.0 release candidate #7 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-25&lt;br /&gt;
: The fix for GCC 3.2 has been integrated into the 0.9.0rc5 package. Please, redownload the updated package from our server when you reached this problem. (New package is dated 2002/10/25&lt;br /&gt;
&lt;br /&gt;
; 2002-10-24&lt;br /&gt;
: 0.9.0 release candidate #5 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download. This &amp;quot;quick&amp;quot; release should fix the build problems for alsa-lib and alsa-utils packages.&lt;br /&gt;
: Note#2: Please, notice that we merged snd-via686 and snd-via8233 into the snd-via82xx module. Also, the snd-usb-midi module users should use the snd-usb-audio module which has integrated support for both USB audio and MIDI.&lt;br /&gt;
: Note: We have changed the kernel module symbol names (module parameter names). We removed prefix 'snd_'. Please, update your /etc/modules.conf files by hand or use our alsa-driver/utils/module-options script which does this job. Please, notice that 'snd_' prefix is not equal to 'snd-' prefix (module name) which is left unchanged.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-22&lt;br /&gt;
: 0.9.0 release candidate #4 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-22&lt;br /&gt;
: Note for compiling  alsa-driver-0.9.0rc3: Please remove the file - alsa-driver-0.9.0rc3/include/linux/isapnp.h - before running the configure script.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-15&lt;br /&gt;
: 0.9.0 release candidate #3 (alsa-driver, alsa-lib and alsa-utils packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-09&lt;br /&gt;
: The new online user documentation is now public. Access is through the soundcard matrix. PHP is used to automatically provide the necessary parameters needed to set up a module and required scripts. Users are encouraged to add notes via the notes additions form.&lt;br /&gt;
&lt;br /&gt;
; 2002-06-19&lt;br /&gt;
: Release Candidate #2 is available to download. ALSA packages 0.9.0rc2 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-04-24&lt;br /&gt;
: Release Candidate #1 is available to download. ALSA packages 0.9.0rc1 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-26&lt;br /&gt;
: ALSA packages 0.9.0beta12 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-17&lt;br /&gt;
: ALSA packages 0.9.0beta11 were released. The driver package contains a new directory tree synced with the Linux 2.5 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-13&lt;br /&gt;
: ALSA has been integrated to the official Linux 2.5 tree! The initial merge is in patch-2.5.5-pre1.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-30&lt;br /&gt;
: The 0.5.12a driver was released. It's maintaince release to fix problems with 2.4.14+ kernels. &amp;lt;BR&amp;gt; The 0.9.0beta10 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-05&lt;br /&gt;
: The 0.9.0beta9 packages were released.  &amp;lt;hr /&amp;gt; The 0.5.12 driver was released.&lt;br /&gt;
&lt;br /&gt;
; 2001-09-27&lt;br /&gt;
: The 0.9.0beta8 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-08-23&lt;br /&gt;
: The 0.9.0beta7 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-22&lt;br /&gt;
: The 0.9.0beta6 alsa-driver and alsa-lib packages have fixed compilation bugs. Please, download these packages again.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-20&lt;br /&gt;
: The 0.9.0beta6 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-06-28&lt;br /&gt;
: The 0.9.0beta5 packages were released for public with uniform support for multichannel cards and raw IEC958 (S/PDIF).&lt;br /&gt;
&lt;br /&gt;
; 2001-05-25&lt;br /&gt;
: Mailing lists are moved to SourceForge. Please, check [[Mailing-lists|this page]] for the subscription details.&lt;br /&gt;
: The 0.9.0beta4 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-05-14&lt;br /&gt;
: The driver 0.5.11 was released. Changes: IA64 arch support, ALi 5451 driver added, AWACS driver added (for PPC), AC'97, PCM OSS emulation, sequencer OSS emulation, AD1816A, ALS4000, AZT2320, CMIPCI, CS4236, CS4281, CS461X, ES1968, Maestro 3, NM256, OPL3SA2, SB16, SB-AWE, YMFPCI.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-20&lt;br /&gt;
: The 0.9.0beta3 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-02&lt;br /&gt;
: The 0.9.0beta2 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-02-21&lt;br /&gt;
: The 0.9.0beta1 packages were released for public. Please, check out our FTP site to obtain them.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-23&lt;br /&gt;
: The ALSA driver package version 0.5.10b was released. New driver: VIA VT8233 South Bridge. Bugfixes: NM256, AC'97.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-07&lt;br /&gt;
: The ALSA driver package version 0.5.10a was released. New driver: NeoMagic NM256AV/ZX. Bugfixes: Maestro3, MPU401 UART, AZT2320, RME96, CS461x, timer, YMFPCI, CMI8330, FM801, CS4232, ENS1371, 2.4.0-prerelease kernel support.&lt;br /&gt;
&lt;br /&gt;
; 2000-12-07&lt;br /&gt;
: The ALSA packages version 0.5.10 were released. New drivers: ALS4000, Maestro3 (Allegro), CS4281. Bugfixes: AC'97 code, SB16, EMUX000 MIDI, CMIPCI, SB8, CS4236, Intel8x0, CS461x, YMFPCI, MPU401, AD1816A, 2.2.18pre kernels, man pages.&lt;br /&gt;
&lt;br /&gt;
; 2000-10-10&lt;br /&gt;
: ALSA driver package version 0.5.9d was released. Bugfixes:  2.2.18pre kernels, YMFPCI, CMIPCI, EMU10K1, OSS sequencer emulator, CS4236, RME9652, rawmidi, intel8x0.&lt;br /&gt;
&lt;br /&gt;
; 2000-09-22&lt;br /&gt;
: ALSA project helps to realize the unique demonstration prepared by the Audio Engineering Society's (AES) Technical Committee on Network Audio Systems. Recording Engineers in Los Angeles will mix 12 high quality audio channels streamed live over the Internet from Montreal. [http://www.aes.org/events/109/events.cfm Event description.] [http://www.cim.mcgill.ca/~jer/projects/aes/ Demo description.]&lt;br /&gt;
&lt;br /&gt;
; 2000-09-02&lt;br /&gt;
: ALSA driver package version 0.5.9c was released. Bugfixes:  SB16, AD1816A, AZT2320, EMU8000/EMU10K1, CMIPCI, YMFPCI, intel-i8x0, general. &amp;lt;hr&amp;gt; ALSA package with utilities version 0.5.9b was released. Updated programs: aplay, aseqnet.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-18&lt;br /&gt;
: ALSA driver package version 0.5.9b was released. More bugfixes: CS4236, EMU10K1, OSS mmap() for non-x86 platforms, ENS1370, ENS1371.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-11&lt;br /&gt;
: ALSA driver package version 0.5.9a was released. It contains more 64-bit cleanaups and support for 2.4.0-test6 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-07&lt;br /&gt;
: Packages 0.5.9 were released. These packages contain cleanups for alpha linux platform. Changed drivers: OPTi92x/93x, VIA686A, YMFPCI, MPU-401, EMU10K1, SB16, SB8, seq_virmidi, ENS1370/1, rawmidi.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-25&lt;br /&gt;
: The driver 0.5.8b was released containing bugfixes for these drivers: sequencer, YMFPCI, CS4236, ES1968, ICE1712, Opti92x/93x, EMU10K1.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-06&lt;br /&gt;
: The driver 0.5.8a was released. It contains compilation bugfix for latest 2.3 and 2.4-test kernels. The Yamaha driver was fixed for YMF724F.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-05&lt;br /&gt;
: Stable packages 0.5.8 were released. Two new drivers were added: the C-Media CMI8338 and 8738 PCI driver and the Yamaha YMF72x,74x,75x driver. Also, APM is supported for CS4231 &amp;amp; CS4235,6,7,8,9 chips. Otherwise, this release contains mostly bug-fixes backported from the ALSA development tree including the support for latest Linux kernels. Affected drivers: AZT2320, CMI8330, CS4236, ESS ES18xx, InterWave (GUS PnP), Opti 92x, Sound Blaster 16, AD1816A. &amp;lt;b&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Upgrade is recommended for all soundcards.&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2000-04-06&lt;br /&gt;
: Stable packages 0.5.7 were released. This release is a bug-fix release only. The support for MidiMan Delta 44 and 66 cards was added. Other changes - sequencer fixes, rawmidi fixes, AC'97 code updates, other minor cleanups.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-17&lt;br /&gt;
: New ALSA [[Mailing-lists|announce mailing list]] was created.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-11&lt;br /&gt;
: ALSA 0.5.6 packages were released (new drivers: RME Digi 96, VIA 82C686A AC'97 bridge | bugfixes: Intel i8x0/440MX, EMU10K1, AZT2320, RawMidi code + lowlevel drivers, alsamixer).&lt;br /&gt;
&lt;br /&gt;
; 2000-03-01&lt;br /&gt;
: ALSA 0.5.5 packages were released (API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-28&lt;br /&gt;
: ALSA 0.5.4b driver package was released (Intel i8x0/MX440 driver fixes).&lt;br /&gt;
: ALSA 0.5.4 packages were released (added alpha ESS Maestro 1/2/2E driver, improved Intel i8x0/440MX driver, AC'97 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-27&lt;br /&gt;
: ALSA 0.5.4a driver package was released (2.3.48 compilation fixed, PCM OSS Oops fixed). Upgrade is strongly recommended.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-16&lt;br /&gt;
: The 0.5.3 packages were released (RME Hammerfall/Light updates, ES1938 - Solo1 driver improved, AC'97 updates, Intel i8x0/440MX alpha driver added, sequencer updates, MTPAV updates, better SMP support for 2.3.x kernels, virmidi code added to EMU8000 &amp;amp; EMU10K1 synth drivers, snd-card-virmidi updates, AK4531 updates - ES1370, EMU10K1 rear volume fixed, ICE1712 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-14&lt;br /&gt;
: The ALSA server was upgraded. You may now enjoy the HtDig search engine for whole Web server plus mailing list archives.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-04&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA 0.5.2 packages] were released (added ICE1712 {Envy24} driver and AD1816A driver, RME9652 updates, EMU10K1 updates, SB8, ES18xx, serial MIDI driver updates, PCM API updates, AC'97 bugfixes). The [ftp://ftp.alsa-project.org/pub/others/envy24control GTK Envy24 control utility] is also available with some screenshots. Note: The current Envy24 driver may work only with the MidiMan soundcards (Delta serie). The driver supports only professional PCM at this time.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-22&lt;br /&gt;
: ALSA [ftp://ftp.alsa-project.org/pub packages 0.5.1] were released (PCM OSS emulation, EMU10K1 synth, ES1938, ENS1370).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ Final ALSA 0.5.0 packages] were released (added RME9652 -Hammerfall- driver, final API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-12&lt;br /&gt;
: The alsa-driver and alsa-lib [ftp://ftp.alsa-project.org/pub packages 0.5.0pre3] were released (trident driver, compilation trouble).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-11&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.5.0pre2] was released (enhanced EMU10K1 code, a compilation bugfix). Other [ftp://ftp.alsa-project.org/pub 0.5.0pre2 packages] were also released.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-10&lt;br /&gt;
: All [ftp://ftp.alsa-project.org/pub packages 0.5.0pre1] were were released. The final API freeze is expected at 14th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-20&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1i] was released with the bugfix for the generic code for AC'97. The problems with CS4297A volume levels are away.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-16&lt;br /&gt;
: The final ALSA API dead line is 10th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1h] was released with the bugfix for the ENS1370/ENS1371 drivers.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-06&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1g1] was released with minor bugfixes (mixer, rawmidi, CS461X).&lt;br /&gt;
&lt;br /&gt;
; 1999-12-02&lt;br /&gt;
: [http://www.alsa-project.org/announce.html The ALSA professional team] has been founded.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-01&lt;br /&gt;
: [http://www.alsa-project.org/cgi-bin/cvsweb.cgi CVS Web interface] is available. Created [[Mailing-lists|new mailing lists]]: alsa-doc, alsa-conf, alsa-howto and alsa-cvs. Mailing lists are archived through MHonArc. Web is now searchable through Ht://Dig.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1f2] was released with minor bugfixes (CS4231, CS4236, AC'97, 2.3.29 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-18&lt;br /&gt;
: Alpha EMU10K1 (Sound Blaster Live!) driver is available in CVS.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-03&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1e] was released with minor bugfixes (isapnp, CS4236+, Gallant SC-70P, 2.3.25 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-02&lt;br /&gt;
: Creative released their [http://opensource.creative.com/ source code for SB Live driver]. The ALSA SB Live driver will be available this month.&lt;br /&gt;
&lt;br /&gt;
; 1999-10-24&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1d] was released with minor bugfixes (CMI8330, 2+ soundcards, modules.conf handling, documentation files). Upgrade is recommended if your system has 2+ soundcards. [ftp://ftp.alsa-project.org/pub/lib ALSA library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).]A library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).&lt;br /&gt;
&lt;br /&gt;
; 1999-10-20&lt;br /&gt;
: Upgrade your modutils package, if you encounter 'segmentation fault' problems. Get fixed [ftp://ftp.ocs.com.au/pub/modutils/v2.3/modutils-2.3.6.tar.gz modutils-2.3.6.tar.gz] or an upgrade [ftp://ftp.alsa-project.org/pub/driver/misc/modules-2.2.2-44.i386.rpm package for SuSE 6.2].&lt;br /&gt;
&lt;br /&gt;
; 1999-10-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1c] was released with minor bugfixes (GUS, OPL3-SA2/3, RedHat 6.1). Upgrade is recommended for all soundcards.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1b] was released with next minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-01&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1a] was released with minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.1] were released. This is mostly bug-fix release.&lt;br /&gt;
: Statistics for WWW and FTP server are now available.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-15&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.0] were released. Older packages are not supported from this time.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-01&lt;br /&gt;
: The ALSA bug reporting system is up and going. To report bugs in ALSA packages, please go here and follow the instructions carefully.&lt;br /&gt;
&lt;br /&gt;
; 1999-06-17&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver/ ALSA driver version 0.3.2] released. This is a bug-fix release. If you have had any troubles with 0.3.1 or 0.3.0, please, try this version. Remember to upgrade [ftp://ftp.alsa-project.org/pub/lib/ lib] and [ftp://ftp.alsa-project.org/pub/utils/ utils] too. 0.3.x-series are the last to support 2.0.x kernels.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-23&lt;br /&gt;
: The alpha driver for the [http://www.crystal.com/ Cirrus Logic Sound Fusion CS461x (CS4280) PCI chips] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-05-14&lt;br /&gt;
: [[Mailing-lists|Mailing lists]] are now managed with the alsa.alsa-project.org machine.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-11&lt;br /&gt;
: The alpha driver for the [http://www.fortemedia.com/products/ ForteMedia FM801 PCI soundcard] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-29&lt;br /&gt;
: New page with the ALSA schedule is available.&lt;br /&gt;
&lt;br /&gt;
; 1999-04-23&lt;br /&gt;
: The call to hardware vendors was [[ALSA_Soundcard_Vendor_Information|updated]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-20&lt;br /&gt;
: The ALSA project has got own domain - alsa-project.org. Services (WWW/FTP/CVS) are running on the independent machine now.&lt;br /&gt;
&lt;br /&gt;
; 1999-03-16&lt;br /&gt;
: The releasing of 0.3.0pre5 packages is very delayed. We are working on new mixer API which will not be compatible with previous versions of ALSA packages. It seems that that this work needs a lot of our time. There are many changes in the current development tree (Trident 4DWave DX/NX driver &amp;lt;b&amp;gt;- thanks to Tridentfor their support -&amp;lt;/b&amp;gt;, timer interface, EMU8000 driver, OSS sequencer emulator), If you want to test or use the current code, you may get the sources directly from the [[Download|CVS server]] or there are also available [[Download|CVS snapshots]].&lt;br /&gt;
&lt;br /&gt;
; 1999-02-10&lt;br /&gt;
: Two alsa-driver and alsa-lib packages with version 0.3.0-pre4 [ftp://ftp.alsa-project.org/pub released]. The driver contains better support for 2.2.0+ kernels and allows mixing of ALSA and OSS/Lite modules.&lt;br /&gt;
&lt;br /&gt;
; 1999-02-05&lt;br /&gt;
: [[Download|CVS snapshots]] are available now.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-29&lt;br /&gt;
: Temporary AWE64 [http://ds.dial.pipex.com/sterat/alsa EMU8000 synth driver] for ALSA.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-24&lt;br /&gt;
: All packages with version 0.3.0-pre3 [ftp://ftp.alsa-project.org/pub released].&lt;br /&gt;
: [[ALSA_Library_API|New ALSA API description for 0.2.0 packages.]]&lt;br /&gt;
&lt;br /&gt;
; 1999-01-19&lt;br /&gt;
: [http://huizen.dds.nl/~valentyn/Alsa-sound-mini-HOWTO.html Alsa-sound-mini-HOWTO]&lt;br /&gt;
: Version 0.2.0-pre10p3 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes support for 2.2.0-pre1 kernel.&lt;br /&gt;
: Version 0.3.0-pre2 of alsa-lib [ftp://ftp.alsa-project.org/pub/lib released] which includes support for sequencer.&lt;br /&gt;
: Version 0.3.0-pre2 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes native support for ISA Plug &amp;amp;amp; Play cards, first version of sequencer and support for 2.2.0-pre1 kernel.&lt;br /&gt;
&lt;br /&gt;
; 1998-12-30&lt;br /&gt;
: [[ALSA_Soundcard_Vendor_Information|A call to sound card hardware vendors.]]&lt;br /&gt;
&lt;br /&gt;
; 1998-12-28&lt;br /&gt;
: [[ALSA Blacklist|Black List]]; Sound Blaster Live! [[ALSA_Blacklist|support]] (sorry)&lt;br /&gt;
&lt;br /&gt;
; 1998-11-10&lt;br /&gt;
: Version 0.1.3 of C library and Version 0.2.0-pre10 of driver [ftp://ftp.alsa-project.org/pub/driver released] which supports Cirrus Logic CS4232+/CS4236+, Ensoniq AudioPCI (ES1370/1371), and S3 SonicVibes.&lt;br /&gt;
&lt;br /&gt;
; 1998-11-04&lt;br /&gt;
: Version 0.0.7 of ALSA utilities [ftp://ftp.alsa-project.org/pub/lib released]&lt;br /&gt;
&lt;br /&gt;
; 1998-08-13&lt;br /&gt;
: [[Download|CVS is up]]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version</id>
		<title>Template:ALSA download version</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version"/>
				<updated>2013-05-21T11:26:28Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ #switch: {{{module}}}&lt;br /&gt;
| driver={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| lib={{ #switch: {{{release}}} | stable=1.0.27.1 | development=none }}&lt;br /&gt;
| utils={{ #switch: {{{release}}} | stable=1.0.27.1 | development=none }}&lt;br /&gt;
| tools={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| firmware={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| plugins={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| oss={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| python={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| Unknown please edit!&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.27_v1.0.27.1</id>
		<title>Detailed changes v1.0.27 v1.0.27.1</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.27_v1.0.27.1"/>
				<updated>2013-05-21T10:52:01Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
=Detailed changelog between 1.0.27 and 1.0.27.1 releases=&lt;br /&gt;
=Changelog between 1.0.27 and 1.0.27.1 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27.1&lt;br /&gt;
:   &lt;br /&gt;
: - Remove an obsolete macro in configure.in&lt;br /&gt;
:   &lt;br /&gt;
:   Replaced AM_CONFIG_HEADER with AC_CONFIG_HEADERS&lt;br /&gt;
:   &lt;br /&gt;
:   lano1106@whippet2 ~/dev/alsa-lib $ ./gitcompile&lt;br /&gt;
:   aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'&lt;br /&gt;
:   configure.in:56: error: 'AM_CONFIG_HEADER': this macro is obsolete.&lt;br /&gt;
:   You should use the 'AC_CONFIG_HEADERS' macro instead.&lt;br /&gt;
:   /usr/share/aclocal-1.13/obsolete-err.m4:12: AM_CONFIG_HEADER is expanded from...&lt;br /&gt;
:   configure.in:56: the top level&lt;br /&gt;
:   autom4te: /usr/bin/m4 failed with exit status: 1&lt;br /&gt;
:   aclocal: error: echo failed with exit status: 1&lt;br /&gt;
:   &lt;br /&gt;
: - Add AM_MAINTAINER_MODE.&lt;br /&gt;
:   &lt;br /&gt;
:   Add AM_MAINTAINER_MODE([enable]) to configure.in.&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: Set up for installation&lt;br /&gt;
:   &lt;br /&gt;
: - Add definition of __inline__ for non-GCC&lt;br /&gt;
:   &lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
===Control API===&lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
===PCM API===&lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
: - bring pcm.h and pcm.c in sync with the kernel list&lt;br /&gt;
:   &lt;br /&gt;
:   In particular, this adds definitions and descriptions for G.723 and&lt;br /&gt;
:   DSD types.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm.c: fix indentation&lt;br /&gt;
:   &lt;br /&gt;
===RawMidi API===&lt;br /&gt;
: - Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
:   &lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: - seqmid: restore sequencer address prefix match feature&lt;br /&gt;
:   &lt;br /&gt;
:   Commit 19892334499e (seq: Fix for snd_seq_parse_address()) removed the&lt;br /&gt;
:   ability to match sequencer client names by any of by their prefixes in&lt;br /&gt;
:   an attempt to avoid wrong matches when one client name is the prefix of&lt;br /&gt;
:   another.&lt;br /&gt;
:   &lt;br /&gt;
:   However, the prefix match feature was documented and actually used.&lt;br /&gt;
:   &lt;br /&gt;
:   Allow prefixes to match, but only if there is no exact match.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: - Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
:   &lt;br /&gt;
===Configuration===&lt;br /&gt;
: - conf/ucm: DAISY-I2S: Set default filter mode for HiFi.&lt;br /&gt;
:   &lt;br /&gt;
:   Default to music mode filter for the HiFi use case on the Samsung ARM&lt;br /&gt;
:   Chromebook.  This mode is better at 44.1k and 48k audio than the&lt;br /&gt;
:   &amp;quot;Voice&amp;quot; setting.&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: Set up for installation&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: tegraalc5632: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: SDP4430: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: PandaBoardES: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: PandaBoard: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: DAISY-I2S: add Samsung ARM Chromebook UCM config from ChromeOS&lt;br /&gt;
:   &lt;br /&gt;
: - conf - Add Scarlett 2i2 USB to S/PDIF blacklist&lt;br /&gt;
:   &lt;br /&gt;
:   The Scarlett 2i2 USB interface does not have any S/PDIF connections.&lt;br /&gt;
:   &lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: - Compile in the ALSA search path instead of relying on ld.so.conf.&lt;br /&gt;
:   &lt;br /&gt;
:   The Ubuntu package currently uses ld.so.conf.d fragments to add&lt;br /&gt;
:   /usr/lib/alsa-lib and /usr/lib{32,64}/alsa-lib to the dlopen search path.&lt;br /&gt;
:   These don't *belong* on the global search path, and it becomes much more&lt;br /&gt;
:   problematic to put them there with the advent of multiarch because each&lt;br /&gt;
:   architecture then needs its own distinct config file to add the separate&lt;br /&gt;
:   path... which is then also put in the global library namespace.  Instead,&lt;br /&gt;
:   let ALSA make use of the already defined ALSA_PLUGIN_DIR to look up&lt;br /&gt;
:   plugins.&lt;br /&gt;
:   &lt;br /&gt;
: - Fix doubly call of dlclose() in dlobj caching code&lt;br /&gt;
:   &lt;br /&gt;
:   When multiple dlobj_cache items point to the same dlobj, dlclose() may&lt;br /&gt;
:   be called wrongly multiple times when these items are cleared, because&lt;br /&gt;
:   we manage the dlobj_cache list as a flat list.  This results in a bad&lt;br /&gt;
:   segfault we've seen in openal-soft, for example.&lt;br /&gt;
:   &lt;br /&gt;
:   For fixing this, we need the refcounting of dlobj itself.  But, in&lt;br /&gt;
:   this case, we don't have to manage yet another list,  since dlopen()&lt;br /&gt;
:   does a proper refcounting by itself.  That is, we can just call always&lt;br /&gt;
:   dlopen() at each time a new function is assigned, and also call&lt;br /&gt;
:   dlclose() for each released dlobj_cache item at cleanup.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=814250&lt;br /&gt;
:   &lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27.1&lt;br /&gt;
:   &lt;br /&gt;
: - Add AM_MAINTAINER_MODE([enable]) to configure.in.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: - alsactl: remove 90-alsa-restore.rules from the tar ball&lt;br /&gt;
:   &lt;br /&gt;
: - Fix a build failure due to a misused format string.&lt;br /&gt;
:   &lt;br /&gt;
:   This fixes builds with -Werror=format-security.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: sprintf to snprintf prevent buffer overflow&lt;br /&gt;
:   &lt;br /&gt;
:   sprintf() is a bit dangerous unless you explicitly know your type size&lt;br /&gt;
:   and want to keep it in sync always. Its safer to just use snprintf() and&lt;br /&gt;
:   ensure your string doesn't overflow and is NULL terminated.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: Fix the string size for the lock file contents&lt;br /&gt;
:   &lt;br /&gt;
:   The string length is 10 characters + LF + '\0' = 12 characters.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: Fix a typo in systemd alsa-restore.service&lt;br /&gt;
:   &lt;br /&gt;
===ALSA RawMidi Utility (amidi)===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:   &lt;br /&gt;
===alsaloop===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
===amixer===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:   &lt;br /&gt;
: - arecord: add a missing break to the capture loop&lt;br /&gt;
:   &lt;br /&gt;
===aseqnet===&lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:   &lt;br /&gt;
===iecset===&lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.27_v1.0.27.1</id>
		<title>Detailed changes v1.0.27 v1.0.27.1</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.27_v1.0.27.1"/>
				<updated>2013-05-21T10:52:01Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: 1 revision&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
=Detailed changelog between 1.0.27 and 1.0.27.1 releases=&lt;br /&gt;
=Changelog between 1.0.27 and 1.0.27.1 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27.1&lt;br /&gt;
:   &lt;br /&gt;
: - Remove an obsolete macro in configure.in&lt;br /&gt;
:   &lt;br /&gt;
:   Replaced AM_CONFIG_HEADER with AC_CONFIG_HEADERS&lt;br /&gt;
:   &lt;br /&gt;
:   lano1106@whippet2 ~/dev/alsa-lib $ ./gitcompile&lt;br /&gt;
:   aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'&lt;br /&gt;
:   configure.in:56: error: 'AM_CONFIG_HEADER': this macro is obsolete.&lt;br /&gt;
:   You should use the 'AC_CONFIG_HEADERS' macro instead.&lt;br /&gt;
:   /usr/share/aclocal-1.13/obsolete-err.m4:12: AM_CONFIG_HEADER is expanded from...&lt;br /&gt;
:   configure.in:56: the top level&lt;br /&gt;
:   autom4te: /usr/bin/m4 failed with exit status: 1&lt;br /&gt;
:   aclocal: error: echo failed with exit status: 1&lt;br /&gt;
:   &lt;br /&gt;
: - Add AM_MAINTAINER_MODE.&lt;br /&gt;
:   &lt;br /&gt;
:   Add AM_MAINTAINER_MODE([enable]) to configure.in.&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: Set up for installation&lt;br /&gt;
:   &lt;br /&gt;
: - Add definition of __inline__ for non-GCC&lt;br /&gt;
:   &lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
===Control API===&lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
===PCM API===&lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
: - bring pcm.h and pcm.c in sync with the kernel list&lt;br /&gt;
:   &lt;br /&gt;
:   In particular, this adds definitions and descriptions for G.723 and&lt;br /&gt;
:   DSD types.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm.c: fix indentation&lt;br /&gt;
:   &lt;br /&gt;
===RawMidi API===&lt;br /&gt;
: - Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
:   &lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: - seqmid: restore sequencer address prefix match feature&lt;br /&gt;
:   &lt;br /&gt;
:   Commit 19892334499e (seq: Fix for snd_seq_parse_address()) removed the&lt;br /&gt;
:   ability to match sequencer client names by any of by their prefixes in&lt;br /&gt;
:   an attempt to avoid wrong matches when one client name is the prefix of&lt;br /&gt;
:   another.&lt;br /&gt;
:   &lt;br /&gt;
:   However, the prefix match feature was documented and actually used.&lt;br /&gt;
:   &lt;br /&gt;
:   Allow prefixes to match, but only if there is no exact match.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: - Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
:   &lt;br /&gt;
===Configuration===&lt;br /&gt;
: - conf/ucm: DAISY-I2S: Set default filter mode for HiFi.&lt;br /&gt;
:   &lt;br /&gt;
:   Default to music mode filter for the HiFi use case on the Samsung ARM&lt;br /&gt;
:   Chromebook.  This mode is better at 44.1k and 48k audio than the&lt;br /&gt;
:   &amp;quot;Voice&amp;quot; setting.&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: Set up for installation&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: tegraalc5632: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: SDP4430: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: PandaBoardES: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: PandaBoard: add UCM config from Ubuntu&lt;br /&gt;
:   &lt;br /&gt;
: - conf/ucm: DAISY-I2S: add Samsung ARM Chromebook UCM config from ChromeOS&lt;br /&gt;
:   &lt;br /&gt;
: - conf - Add Scarlett 2i2 USB to S/PDIF blacklist&lt;br /&gt;
:   &lt;br /&gt;
:   The Scarlett 2i2 USB interface does not have any S/PDIF connections.&lt;br /&gt;
:   &lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: - Compile in the ALSA search path instead of relying on ld.so.conf.&lt;br /&gt;
:   &lt;br /&gt;
:   The Ubuntu package currently uses ld.so.conf.d fragments to add&lt;br /&gt;
:   /usr/lib/alsa-lib and /usr/lib{32,64}/alsa-lib to the dlopen search path.&lt;br /&gt;
:   These don't *belong* on the global search path, and it becomes much more&lt;br /&gt;
:   problematic to put them there with the advent of multiarch because each&lt;br /&gt;
:   architecture then needs its own distinct config file to add the separate&lt;br /&gt;
:   path... which is then also put in the global library namespace.  Instead,&lt;br /&gt;
:   let ALSA make use of the already defined ALSA_PLUGIN_DIR to look up&lt;br /&gt;
:   plugins.&lt;br /&gt;
:   &lt;br /&gt;
: - Fix doubly call of dlclose() in dlobj caching code&lt;br /&gt;
:   &lt;br /&gt;
:   When multiple dlobj_cache items point to the same dlobj, dlclose() may&lt;br /&gt;
:   be called wrongly multiple times when these items are cleared, because&lt;br /&gt;
:   we manage the dlobj_cache list as a flat list.  This results in a bad&lt;br /&gt;
:   segfault we've seen in openal-soft, for example.&lt;br /&gt;
:   &lt;br /&gt;
:   For fixing this, we need the refcounting of dlobj itself.  But, in&lt;br /&gt;
:   this case, we don't have to manage yet another list,  since dlopen()&lt;br /&gt;
:   does a proper refcounting by itself.  That is, we can just call always&lt;br /&gt;
:   dlopen() at each time a new function is assigned, and also call&lt;br /&gt;
:   dlclose() for each released dlobj_cache item at cleanup.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=814250&lt;br /&gt;
:   &lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: - Use __inline__ for exported headers&lt;br /&gt;
:   &lt;br /&gt;
:   Some programs are still using C90.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=817077&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27.1&lt;br /&gt;
:   &lt;br /&gt;
: - Add AM_MAINTAINER_MODE([enable]) to configure.in.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: - alsactl: remove 90-alsa-restore.rules from the tar ball&lt;br /&gt;
:   &lt;br /&gt;
: - Fix a build failure due to a misused format string.&lt;br /&gt;
:   &lt;br /&gt;
:   This fixes builds with -Werror=format-security.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: sprintf to snprintf prevent buffer overflow&lt;br /&gt;
:   &lt;br /&gt;
:   sprintf() is a bit dangerous unless you explicitly know your type size&lt;br /&gt;
:   and want to keep it in sync always. Its safer to just use snprintf() and&lt;br /&gt;
:   ensure your string doesn't overflow and is NULL terminated.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: Fix the string size for the lock file contents&lt;br /&gt;
:   &lt;br /&gt;
:   The string length is 10 characters + LF + '\0' = 12 characters.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: Fix a typo in systemd alsa-restore.service&lt;br /&gt;
:   &lt;br /&gt;
===ALSA RawMidi Utility (amidi)===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:   &lt;br /&gt;
===alsaloop===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
===amixer===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: - Several formatting fixes for manpages.&lt;br /&gt;
:   &lt;br /&gt;
:   Fix many occurrences of unescaped “-”.&lt;br /&gt;
:   Fix minor English issue.&lt;br /&gt;
:   &lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:   &lt;br /&gt;
: - arecord: add a missing break to the capture loop&lt;br /&gt;
:   &lt;br /&gt;
===aseqnet===&lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:   &lt;br /&gt;
===iecset===&lt;br /&gt;
: - Fix several typos in manpage and help strings.&lt;br /&gt;
:&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Changes_v1.0.27_v1.0.27.1</id>
		<title>Changes v1.0.27 v1.0.27.1</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Changes_v1.0.27_v1.0.27.1"/>
				<updated>2013-05-21T10:51:41Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
[[Detailed changes v1.0.27 v1.0.27.1]]&lt;br /&gt;
=Changelog between 1.0.27 and 1.0.27.1 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27.1&lt;br /&gt;
: Remove an obsolete macro in configure.in&lt;br /&gt;
: Add AM_MAINTAINER_MODE.&lt;br /&gt;
: conf/ucm: Set up for installation&lt;br /&gt;
: Add definition of __inline__ for non-GCC&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
===Control API===&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
===PCM API===&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
: bring pcm.h and pcm.c in sync with the kernel list&lt;br /&gt;
: pcm.c: fix indentation&lt;br /&gt;
===RawMidi API===&lt;br /&gt;
: Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: seqmid: restore sequencer address prefix match feature&lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
===Configuration===&lt;br /&gt;
: conf/ucm: DAISY-I2S: Set default filter mode for HiFi.&lt;br /&gt;
: conf/ucm: Set up for installation&lt;br /&gt;
: conf/ucm: tegraalc5632: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: SDP4430: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: PandaBoardES: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: PandaBoard: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: DAISY-I2S: add Samsung ARM Chromebook UCM config from ChromeOS&lt;br /&gt;
: conf - Add Scarlett 2i2 USB to S/PDIF blacklist&lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: Compile in the ALSA search path instead of relying on ld.so.conf.&lt;br /&gt;
: Fix doubly call of dlclose() in dlobj caching code&lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27.1&lt;br /&gt;
: Add AM_MAINTAINER_MODE([enable]) to configure.in.&lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: alsactl: remove 90-alsa-restore.rules from the tar ball&lt;br /&gt;
: Fix a build failure due to a misused format string.&lt;br /&gt;
: alsactl: sprintf to snprintf prevent buffer overflow&lt;br /&gt;
: alsactl: Fix the string size for the lock file contents&lt;br /&gt;
: alsactl: Fix a typo in systemd alsa-restore.service&lt;br /&gt;
===ALSA RawMidi Utility (amidi)===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;br /&gt;
===alsaloop===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
===amixer===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;br /&gt;
: arecord: add a missing break to the capture loop&lt;br /&gt;
===aseqnet===&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;br /&gt;
===iecset===&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Changes_v1.0.27_v1.0.27.1</id>
		<title>Changes v1.0.27 v1.0.27.1</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Changes_v1.0.27_v1.0.27.1"/>
				<updated>2013-05-21T10:51:41Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: 1 revision&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
[[Detailed changes v1.0.27 v1.0.27.1]]&lt;br /&gt;
=Changelog between 1.0.27 and 1.0.27.1 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27.1&lt;br /&gt;
: Remove an obsolete macro in configure.in&lt;br /&gt;
: Add AM_MAINTAINER_MODE.&lt;br /&gt;
: conf/ucm: Set up for installation&lt;br /&gt;
: Add definition of __inline__ for non-GCC&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
===Control API===&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
===PCM API===&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
: bring pcm.h and pcm.c in sync with the kernel list&lt;br /&gt;
: pcm.c: fix indentation&lt;br /&gt;
===RawMidi API===&lt;br /&gt;
: Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: seqmid: restore sequencer address prefix match feature&lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: Fix several spelling errors for “writable” and derivatives.&lt;br /&gt;
===Configuration===&lt;br /&gt;
: conf/ucm: DAISY-I2S: Set default filter mode for HiFi.&lt;br /&gt;
: conf/ucm: Set up for installation&lt;br /&gt;
: conf/ucm: tegraalc5632: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: SDP4430: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: PandaBoardES: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: PandaBoard: add UCM config from Ubuntu&lt;br /&gt;
: conf/ucm: DAISY-I2S: add Samsung ARM Chromebook UCM config from ChromeOS&lt;br /&gt;
: conf - Add Scarlett 2i2 USB to S/PDIF blacklist&lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: Compile in the ALSA search path instead of relying on ld.so.conf.&lt;br /&gt;
: Fix doubly call of dlclose() in dlobj caching code&lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: Use __inline__ for exported headers&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27.1&lt;br /&gt;
: Add AM_MAINTAINER_MODE([enable]) to configure.in.&lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: alsactl: remove 90-alsa-restore.rules from the tar ball&lt;br /&gt;
: Fix a build failure due to a misused format string.&lt;br /&gt;
: alsactl: sprintf to snprintf prevent buffer overflow&lt;br /&gt;
: alsactl: Fix the string size for the lock file contents&lt;br /&gt;
: alsactl: Fix a typo in systemd alsa-restore.service&lt;br /&gt;
===ALSA RawMidi Utility (amidi)===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;br /&gt;
===alsaloop===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
===amixer===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: Several formatting fixes for manpages.&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;br /&gt;
: arecord: add a missing break to the capture loop&lt;br /&gt;
===aseqnet===&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;br /&gt;
===iecset===&lt;br /&gt;
: Fix several typos in manpage and help strings.&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Main_Page_News</id>
		<title>Main Page News</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Main_Page_News"/>
				<updated>2013-04-12T08:48:19Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;; 2013-04-12&lt;br /&gt;
: alsa 1.0.27 release (user space) | [[Changes v1.0.26 v1.0.27]]&lt;br /&gt;
&lt;br /&gt;
; 2012-09-06&lt;br /&gt;
: alsa 1.0.26 release (user space) | [[Changes v1.0.25 v1.0.26]]&lt;br /&gt;
&lt;br /&gt;
; 2012-01-25&lt;br /&gt;
: alsa 1.0.25 release | [[Changes v1.0.24 v1.0.25]]&lt;br /&gt;
&lt;br /&gt;
; 2011-01-31&lt;br /&gt;
: alsa 1.0.24 release | [[Changes v1.0.23 v1.0.24]]&lt;br /&gt;
&lt;br /&gt;
; 2010-04-16&lt;br /&gt;
: alsa 1.0.23 release | [[Changes v1.0.22 v1.0.23]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-28&lt;br /&gt;
: alsa-driver 1.0.22.1 release | [[Changes v1.0.22 v1.0.22.1]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-16&lt;br /&gt;
: alsa 1.0.22 release | [[Changes v1.0.21 v1.0.22]]&lt;br /&gt;
&lt;br /&gt;
; 2009-09-09&lt;br /&gt;
: alsa-lib 1.0.21a release | [[Changes v1.0.21 v1.0.21a]]&lt;br /&gt;
&lt;br /&gt;
; 2009-08-31&lt;br /&gt;
: alsa 1.0.21 release | [[Changes v1.0.20 v1.0.21|changes from 1.0.20]]&lt;br /&gt;
&lt;br /&gt;
; 2009-05-06&lt;br /&gt;
: alsa 1.0.20 release | [[Changes v1.0.19 v1.0.20|changes from 1.0.19]]&lt;br /&gt;
&lt;br /&gt;
; 2009-01-19&lt;br /&gt;
: alsa 1.0.19 release | [[Changes v1.0.18 v1.0.19|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-11-12&lt;br /&gt;
: alsa-driver 1.0.18a release | [[Changes v1.0.18 v1.0.18a|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-10-29&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-tools,alsa-plugins 1.0.18 release | [[Changes v1.0.18rc3 v1.0.18|changes from 1.0.18rc3]] | [[Changes v1.0.17 v1.0.18|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-09-09&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-plugins 1.0.18rc3 release | [[Changes v1.0.18rc2 v1.0.18rc3|changes from 1.0.18rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-19&lt;br /&gt;
: alsa-utils,alsa-plugins 1.0.18rc2 release | [[Changes v1.0.18rc1 v1.0.18rc2|changes from 1.0.18rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-driver.alsa-utils,alsa-plugins 1.0.18rc1 release | [[Changes v1.0.17a v1.0.18rc1|changes from 1.0.17a]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-lib 1.0.17a release | [[Changes v1.0.17 v1.0.17a|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-07-14&lt;br /&gt;
: ALSA 1.0.17 release (all packages) | [[Changes v1.0.17rc3 v1.0.17|changes from 1.0.17rc3]] | [[Changes v1.0.16 v1.0.17|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-27&lt;br /&gt;
: ALSA 1.0.17rc3 release (driver only) | [[Changes v1.0.17rc2 v1.0.17rc3|changes from 1.0.17rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-16&lt;br /&gt;
: ALSA 1.0.17rc2 release | [[Changes v1.0.17rc1 v1.0.17rc2|changes from 1.0.17rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-06&lt;br /&gt;
: ALSA 1.0.17rc1 release | [[Changes v1.0.16 v1.0.17rc1|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-05-20&lt;br /&gt;
: All repositories converted from HG (Mercurial) to GIT&lt;br /&gt;
&lt;br /&gt;
; 2008-02-06&lt;br /&gt;
: ALSA 1.0.16 final release | [[Changes v1.0.15 v1.0.16|changes from 1.0.15]] | [[Changes v1.0.16rc2 v1.0.16|changes from 1.0.16rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-29&lt;br /&gt;
: ALSA 1.0.16rc2 release | [[Changes v1.0.16rc1 v1.0.16rc2|changes from 1.0.16rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-22&lt;br /&gt;
: ALSA 1.0.16rc1 release | [[Changes v1.0.15 v1.0.16rc1|changes from 1.0.15]]&lt;br /&gt;
&lt;br /&gt;
; 2007-10-16&lt;br /&gt;
: ALSA 1.0.15 final release | [[Changes v1.0.14 v1.0.15|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-26&lt;br /&gt;
: ALSA 1.0.15rc3 release | [[Changes v1.0.15rc2 v1.0.15rc3|changes from 1.0.15rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-13&lt;br /&gt;
: ALSA 1.0.15rc2 release | [[Changes v1.0.15rc1 v1.0.15rc2|changes from 1.0.15rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-31&lt;br /&gt;
: ALSA 1.0.15rc1 release | [[Changes v1.0.14 v1.0.15rc1|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-09&lt;br /&gt;
: ALSA WWW site switched to [http://www.mediawiki.org MediaWiki]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-11&lt;br /&gt;
: ALSA 1.0.14a library bugfix release | [[Changes v1.0.14 v1.0.14a|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-04&lt;br /&gt;
: ALSA 1.0.14 release | [[Changes v1.0.13 v1.0.14|changes from 1.0.13]] | [[Changes v1.0.14rc4 v1.0.14|changes from 1.0.14rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2007-04-03&lt;br /&gt;
: ALSA 1.0.14rc4 release | [[Changes v1.0.14rc3 v1.0.14rc4|changes from 1.0.14rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2007-03-06&lt;br /&gt;
: ALSA 1.0.14rc3 release | [[Changes v1.0.14rc2 v1.0.14rc3|changes from 1.0.14rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-01-16&lt;br /&gt;
: ALSA 1.0.14rc2 release | [[Changes v1.0.14rc1 v1.0.14rc2|changes from 1.0.14rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-12-11&lt;br /&gt;
: ALSA 1.0.14rc1 release | [[Changes v1.0.13 v1.0.14rc1|changes from 1.0.13]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-29&lt;br /&gt;
: ALSA 1.0.13 release | [[Changes v1.0.12 v1.0.13|changes from 1.0.12]] | [[Changes 1.0.13rc3 v1.0.13|changes from 1.0.13rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-26&lt;br /&gt;
: ALSA 1.0.13rc3 release | [[Changes v1.0.13rc2 v1.0.13rc3|changes from 1.0.13rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-15&lt;br /&gt;
: ALSA 1.0.13rc2 release | [[Changes v1.0.13rc1 v1.0.13rc2|changes from 1.0.13rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-01&lt;br /&gt;
: ALSA 1.0.13rc1 release | [[Changes v1.0.12 v1.0.13rc1|changes from 1.0.12]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-24&lt;br /&gt;
: ALSA 1.0.12 release | [[Changes v1.0.11 v1.0.12|changes from 1.0.11]] | [[Changes 1.0.12rc3 v1.0.12|changes from 1.0.12rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-15&lt;br /&gt;
: ALSA 1.0.12rc3 release (driver only) | [[Changes v1.0.12rc2 v1.0.12rc3|changes from 1.0.12rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-03&lt;br /&gt;
: ALSA 1.0.12rc2 release | [[Changes v1.0.12rc1 v1.0.12rc2|changes from 1.0.12rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-06-23&lt;br /&gt;
: ALSA 1.0.12rc1 release | [[Changes v1.0.11 v1.0.12rc1|changes from 1.0.11]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-19&lt;br /&gt;
: ALSA 1.0.11 final release | [[Changes v1.0.10 v1.0.11|changes from 1.0.10]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-11&lt;br /&gt;
: ALSA 1.0.11rc5 release | [[Changes v1.0.11rc4 v1.0.11rc5|changes from 1.0.11rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2006-03-22&lt;br /&gt;
: ALSA 1.0.11rc4 release | [[Changes v1.0.11rc3 v1.0.11rc4|changes from 1.0.11rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-29&lt;br /&gt;
: ALSA 1.0.11rc3 release | [[Changes v1.0.11rc2 v1.0.11rc3|changes from 1.0.11rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-02&lt;br /&gt;
: ALSA 1.0.11rc2 release | [[Changes v1.0.11rc1 v1.0.11rc2|changes from 1.0.11rc1]] | Happy New Year 2006&lt;br /&gt;
&lt;br /&gt;
; 2005-12-12&lt;br /&gt;
: ALSA 1.0.11rc1 release | [[Changes v1.0.10 v1.0.11rc1|changes from 1.0.10 final]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-16&lt;br /&gt;
: ALSA 1.0.10 release | [[Changes v1.0.10rc3 v1.0.10|changes from 1.0.10rc3]] |  [[Changes 1.0.9 v1.0.10|changes from 1.0.9]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-08&lt;br /&gt;
: ALSA 1.0.10rc3 release | [[Changes v1.0.10rc2 v1.0.10rc3|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-10-10&lt;br /&gt;
: ALSA 1.0.10rc2 release | [[Changes v1.0.10rc1 v1.0.10rc2|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-08-20&lt;br /&gt;
: ALSA 1.0.10rc1 release | [[Changes v1.0.9b v1.0.10rc1|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-07&lt;br /&gt;
: ALSA 1.0.9b release | [[Changes v1.0.9a v1.0.9b|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-02&lt;br /&gt;
: ALSA 1.0.9a release | [[Changes v1.0.9 v1.0.9a|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-27&lt;br /&gt;
: ALSA 1.0.9 final release | [[Changes v1.0.8 v1.0.9|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-23&lt;br /&gt;
: ALSA 1.0.9rc4 release&lt;br /&gt;
&lt;br /&gt;
; 2005-05-02&lt;br /&gt;
: ALSA 1.0.9rc3 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-24&lt;br /&gt;
: ALSA 1.0.9rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-13&lt;br /&gt;
: ALSA 1.0.9rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2005-01-13&lt;br /&gt;
: ALSA 1.0.8 release | [[Changes v1.0.7 v1.0.8|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-01-06&lt;br /&gt;
: ALSA 1.0.8rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-12-22&lt;br /&gt;
: ALSA 1.0.8rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-11-15&lt;br /&gt;
: ALSA 1.0.7 release&lt;br /&gt;
&lt;br /&gt;
; 2004-10-13&lt;br /&gt;
: ALSA 1.0.7rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-09-08&lt;br /&gt;
: ALSA 1.0.7rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-08-15&lt;br /&gt;
: ALSA 1.0.6 release&lt;br /&gt;
&lt;br /&gt;
; 2004-06-11&lt;br /&gt;
: ALSA server software was upgraded.  Anonymous rsync access [[Download|was changed.]]&lt;br /&gt;
&lt;br /&gt;
; 2004-05-31&lt;br /&gt;
: 1.0.5a driver release | bugfix for the &amp;quot;hang-up&amp;quot; problem in the ALSA driver initialization&lt;br /&gt;
&lt;br /&gt;
; 2004-05-28&lt;br /&gt;
: 1.0.5 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-04-03&lt;br /&gt;
: 1.0.4 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-03-30&lt;br /&gt;
: 1.0.4rc2 driver release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-27&lt;br /&gt;
: 1.0.4rc1 release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-13&lt;br /&gt;
: alsa-lib 1.0.3b released -  it fixes SIGSEGV problem for dmix plugin (when a specific GCC version is used)&lt;br /&gt;
&lt;br /&gt;
; 2004-03-06&lt;br /&gt;
: alsa-lib 1.0.3a released - it fixes again the dmix/dshare/dsnoop poll() problems&lt;br /&gt;
&lt;br /&gt;
; 2004-02-29&lt;br /&gt;
: 1.0.3 packages released | added driver for ATI IXP 150/200/250 chips and HDSP MADI driver&lt;br /&gt;
&lt;br /&gt;
; 2004-02-25&lt;br /&gt;
: 1.0.3rc2 packages released&lt;br /&gt;
&lt;br /&gt;
; 2004-02-04&lt;br /&gt;
: 1.0.2c driver package release | More fixes for compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-02-03&lt;br /&gt;
: 1.0.2b driver package release | It fixes next 2.6 kernel compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-30&lt;br /&gt;
: 1.0.2a driver package release | It should fix most of 2.6 kernel compilation problems and adds RME HDSP MADI (hdspm) driver.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-27&lt;br /&gt;
: New ALSA bugtracking system using Mantis is [http://bugtrack.alsa-project.org/alsa-bug/ available].&lt;br /&gt;
&lt;br /&gt;
; 2004-01-26&lt;br /&gt;
: 1.0.2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2004-01-08&lt;br /&gt;
: 1.0.1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2003-12-05&lt;br /&gt;
: 1.0.0rc2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | bt87x driver added, more OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-12-01&lt;br /&gt;
: 1.0.0rc1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | intel8x0 driver fixes, OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-11-25&lt;br /&gt;
: 1.0.0pre3 release | alsa-tools packages is divided now - firmware files are in alsa-firmware package.&lt;br /&gt;
&lt;br /&gt;
; 2003-11-18&lt;br /&gt;
: 1.0.0pre1 release | This release is indented for wide testing.&lt;br /&gt;
&lt;br /&gt;
; 2003-10-21&lt;br /&gt;
: 0.9.8 release&lt;br /&gt;
&lt;br /&gt;
; 2003-10-13&lt;br /&gt;
: 0.9.7c driver release - PDE and vortex driver compilation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-10-10&lt;br /&gt;
: 0.9.7b driver release - it fixes serious bug in PCM (mutex hangup)&lt;br /&gt;
&lt;br /&gt;
; 2003-10-01&lt;br /&gt;
: 0.9.7a driver release - fixes bugs (including oops) in the OSS PCM emulation layer&lt;br /&gt;
&lt;br /&gt;
; 2003-09-25&lt;br /&gt;
: 0.9.7 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-28&lt;br /&gt;
: 0.9.6 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-09&lt;br /&gt;
: 0.9.5 release&lt;br /&gt;
&lt;br /&gt;
; 2003-06-01&lt;br /&gt;
: 0.9.4 release&lt;br /&gt;
&lt;br /&gt;
; 2003-05-20&lt;br /&gt;
: *** 0.9.3c driver maintaince release *** configuration fixes + other updates&lt;br /&gt;
&lt;br /&gt;
; 2003-05-19&lt;br /&gt;
: *** 0.9.3b driver maintaince release *** ISA PnP and other fixes. We removed /proc/asound/dev directory. The 'make install' should create new device files, but in case of problems, the snddevices script should be executed.&lt;br /&gt;
&lt;br /&gt;
; 2003-04-30&lt;br /&gt;
: *** 0.9.3 release *** Moved firmware code from vxpocket and hdsp driver to alsa-tools. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-19&lt;br /&gt;
: *** 0.9.2 release *** Added dsnoop and dshare PCM plugins to alsa-lib. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-11&lt;br /&gt;
: *** 0.9.1 release *** First stable release of the 0.9 serie. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-10&lt;br /&gt;
: alsa-driver 0.9.0rc8d released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-08&lt;br /&gt;
: alsa-driver 0.9.0rc8c released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-07&lt;br /&gt;
: alsa-lib 0.9.0rc8c and alsa-utils 0.9.0rc8a released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-05&lt;br /&gt;
: alsa-lib and alsa-driver 0.9.0rc8b release&lt;br /&gt;
: alsa-driver 0.9.0rc8a released (fixed compilation problem for older kernels)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-03&lt;br /&gt;
: alsa-lib 0.9.0rc8a released (fixed compilation problem)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-02&lt;br /&gt;
: 0.9.0 release candidate #8 (all packages) is available for download. It is probably last release before 0.9.0 final. You will find in the alsa-lib package the dmix plugin which allows mixing of multiple PCM streams together without the client/server mechanism.&lt;br /&gt;
&lt;br /&gt;
; 2003-01-28&lt;br /&gt;
: 0.9.0 release candidate #7 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-25&lt;br /&gt;
: The fix for GCC 3.2 has been integrated into the 0.9.0rc5 package. Please, redownload the updated package from our server when you reached this problem. (New package is dated 2002/10/25&lt;br /&gt;
&lt;br /&gt;
; 2002-10-24&lt;br /&gt;
: 0.9.0 release candidate #5 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download. This &amp;quot;quick&amp;quot; release should fix the build problems for alsa-lib and alsa-utils packages.&lt;br /&gt;
: Note#2: Please, notice that we merged snd-via686 and snd-via8233 into the snd-via82xx module. Also, the snd-usb-midi module users should use the snd-usb-audio module which has integrated support for both USB audio and MIDI.&lt;br /&gt;
: Note: We have changed the kernel module symbol names (module parameter names). We removed prefix 'snd_'. Please, update your /etc/modules.conf files by hand or use our alsa-driver/utils/module-options script which does this job. Please, notice that 'snd_' prefix is not equal to 'snd-' prefix (module name) which is left unchanged.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-22&lt;br /&gt;
: 0.9.0 release candidate #4 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-22&lt;br /&gt;
: Note for compiling  alsa-driver-0.9.0rc3: Please remove the file - alsa-driver-0.9.0rc3/include/linux/isapnp.h - before running the configure script.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-15&lt;br /&gt;
: 0.9.0 release candidate #3 (alsa-driver, alsa-lib and alsa-utils packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-09&lt;br /&gt;
: The new online user documentation is now public. Access is through the soundcard matrix. PHP is used to automatically provide the necessary parameters needed to set up a module and required scripts. Users are encouraged to add notes via the notes additions form.&lt;br /&gt;
&lt;br /&gt;
; 2002-06-19&lt;br /&gt;
: Release Candidate #2 is available to download. ALSA packages 0.9.0rc2 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-04-24&lt;br /&gt;
: Release Candidate #1 is available to download. ALSA packages 0.9.0rc1 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-26&lt;br /&gt;
: ALSA packages 0.9.0beta12 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-17&lt;br /&gt;
: ALSA packages 0.9.0beta11 were released. The driver package contains a new directory tree synced with the Linux 2.5 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-13&lt;br /&gt;
: ALSA has been integrated to the official Linux 2.5 tree! The initial merge is in patch-2.5.5-pre1.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-30&lt;br /&gt;
: The 0.5.12a driver was released. It's maintaince release to fix problems with 2.4.14+ kernels. &amp;lt;BR&amp;gt; The 0.9.0beta10 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-05&lt;br /&gt;
: The 0.9.0beta9 packages were released.  &amp;lt;hr /&amp;gt; The 0.5.12 driver was released.&lt;br /&gt;
&lt;br /&gt;
; 2001-09-27&lt;br /&gt;
: The 0.9.0beta8 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-08-23&lt;br /&gt;
: The 0.9.0beta7 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-22&lt;br /&gt;
: The 0.9.0beta6 alsa-driver and alsa-lib packages have fixed compilation bugs. Please, download these packages again.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-20&lt;br /&gt;
: The 0.9.0beta6 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-06-28&lt;br /&gt;
: The 0.9.0beta5 packages were released for public with uniform support for multichannel cards and raw IEC958 (S/PDIF).&lt;br /&gt;
&lt;br /&gt;
; 2001-05-25&lt;br /&gt;
: Mailing lists are moved to SourceForge. Please, check [[Mailing-lists|this page]] for the subscription details.&lt;br /&gt;
: The 0.9.0beta4 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-05-14&lt;br /&gt;
: The driver 0.5.11 was released. Changes: IA64 arch support, ALi 5451 driver added, AWACS driver added (for PPC), AC'97, PCM OSS emulation, sequencer OSS emulation, AD1816A, ALS4000, AZT2320, CMIPCI, CS4236, CS4281, CS461X, ES1968, Maestro 3, NM256, OPL3SA2, SB16, SB-AWE, YMFPCI.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-20&lt;br /&gt;
: The 0.9.0beta3 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-02&lt;br /&gt;
: The 0.9.0beta2 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-02-21&lt;br /&gt;
: The 0.9.0beta1 packages were released for public. Please, check out our FTP site to obtain them.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-23&lt;br /&gt;
: The ALSA driver package version 0.5.10b was released. New driver: VIA VT8233 South Bridge. Bugfixes: NM256, AC'97.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-07&lt;br /&gt;
: The ALSA driver package version 0.5.10a was released. New driver: NeoMagic NM256AV/ZX. Bugfixes: Maestro3, MPU401 UART, AZT2320, RME96, CS461x, timer, YMFPCI, CMI8330, FM801, CS4232, ENS1371, 2.4.0-prerelease kernel support.&lt;br /&gt;
&lt;br /&gt;
; 2000-12-07&lt;br /&gt;
: The ALSA packages version 0.5.10 were released. New drivers: ALS4000, Maestro3 (Allegro), CS4281. Bugfixes: AC'97 code, SB16, EMUX000 MIDI, CMIPCI, SB8, CS4236, Intel8x0, CS461x, YMFPCI, MPU401, AD1816A, 2.2.18pre kernels, man pages.&lt;br /&gt;
&lt;br /&gt;
; 2000-10-10&lt;br /&gt;
: ALSA driver package version 0.5.9d was released. Bugfixes:  2.2.18pre kernels, YMFPCI, CMIPCI, EMU10K1, OSS sequencer emulator, CS4236, RME9652, rawmidi, intel8x0.&lt;br /&gt;
&lt;br /&gt;
; 2000-09-22&lt;br /&gt;
: ALSA project helps to realize the unique demonstration prepared by the Audio Engineering Society's (AES) Technical Committee on Network Audio Systems. Recording Engineers in Los Angeles will mix 12 high quality audio channels streamed live over the Internet from Montreal. [http://www.aes.org/events/109/events.cfm Event description.] [http://www.cim.mcgill.ca/~jer/projects/aes/ Demo description.]&lt;br /&gt;
&lt;br /&gt;
; 2000-09-02&lt;br /&gt;
: ALSA driver package version 0.5.9c was released. Bugfixes:  SB16, AD1816A, AZT2320, EMU8000/EMU10K1, CMIPCI, YMFPCI, intel-i8x0, general. &amp;lt;hr&amp;gt; ALSA package with utilities version 0.5.9b was released. Updated programs: aplay, aseqnet.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-18&lt;br /&gt;
: ALSA driver package version 0.5.9b was released. More bugfixes: CS4236, EMU10K1, OSS mmap() for non-x86 platforms, ENS1370, ENS1371.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-11&lt;br /&gt;
: ALSA driver package version 0.5.9a was released. It contains more 64-bit cleanaups and support for 2.4.0-test6 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-07&lt;br /&gt;
: Packages 0.5.9 were released. These packages contain cleanups for alpha linux platform. Changed drivers: OPTi92x/93x, VIA686A, YMFPCI, MPU-401, EMU10K1, SB16, SB8, seq_virmidi, ENS1370/1, rawmidi.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-25&lt;br /&gt;
: The driver 0.5.8b was released containing bugfixes for these drivers: sequencer, YMFPCI, CS4236, ES1968, ICE1712, Opti92x/93x, EMU10K1.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-06&lt;br /&gt;
: The driver 0.5.8a was released. It contains compilation bugfix for latest 2.3 and 2.4-test kernels. The Yamaha driver was fixed for YMF724F.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-05&lt;br /&gt;
: Stable packages 0.5.8 were released. Two new drivers were added: the C-Media CMI8338 and 8738 PCI driver and the Yamaha YMF72x,74x,75x driver. Also, APM is supported for CS4231 &amp;amp; CS4235,6,7,8,9 chips. Otherwise, this release contains mostly bug-fixes backported from the ALSA development tree including the support for latest Linux kernels. Affected drivers: AZT2320, CMI8330, CS4236, ESS ES18xx, InterWave (GUS PnP), Opti 92x, Sound Blaster 16, AD1816A. &amp;lt;b&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Upgrade is recommended for all soundcards.&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2000-04-06&lt;br /&gt;
: Stable packages 0.5.7 were released. This release is a bug-fix release only. The support for MidiMan Delta 44 and 66 cards was added. Other changes - sequencer fixes, rawmidi fixes, AC'97 code updates, other minor cleanups.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-17&lt;br /&gt;
: New ALSA [[Mailing-lists|announce mailing list]] was created.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-11&lt;br /&gt;
: ALSA 0.5.6 packages were released (new drivers: RME Digi 96, VIA 82C686A AC'97 bridge | bugfixes: Intel i8x0/440MX, EMU10K1, AZT2320, RawMidi code + lowlevel drivers, alsamixer).&lt;br /&gt;
&lt;br /&gt;
; 2000-03-01&lt;br /&gt;
: ALSA 0.5.5 packages were released (API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-28&lt;br /&gt;
: ALSA 0.5.4b driver package was released (Intel i8x0/MX440 driver fixes).&lt;br /&gt;
: ALSA 0.5.4 packages were released (added alpha ESS Maestro 1/2/2E driver, improved Intel i8x0/440MX driver, AC'97 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-27&lt;br /&gt;
: ALSA 0.5.4a driver package was released (2.3.48 compilation fixed, PCM OSS Oops fixed). Upgrade is strongly recommended.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-16&lt;br /&gt;
: The 0.5.3 packages were released (RME Hammerfall/Light updates, ES1938 - Solo1 driver improved, AC'97 updates, Intel i8x0/440MX alpha driver added, sequencer updates, MTPAV updates, better SMP support for 2.3.x kernels, virmidi code added to EMU8000 &amp;amp; EMU10K1 synth drivers, snd-card-virmidi updates, AK4531 updates - ES1370, EMU10K1 rear volume fixed, ICE1712 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-14&lt;br /&gt;
: The ALSA server was upgraded. You may now enjoy the HtDig search engine for whole Web server plus mailing list archives.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-04&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA 0.5.2 packages] were released (added ICE1712 {Envy24} driver and AD1816A driver, RME9652 updates, EMU10K1 updates, SB8, ES18xx, serial MIDI driver updates, PCM API updates, AC'97 bugfixes). The [ftp://ftp.alsa-project.org/pub/others/envy24control GTK Envy24 control utility] is also available with some screenshots. Note: The current Envy24 driver may work only with the MidiMan soundcards (Delta serie). The driver supports only professional PCM at this time.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-22&lt;br /&gt;
: ALSA [ftp://ftp.alsa-project.org/pub packages 0.5.1] were released (PCM OSS emulation, EMU10K1 synth, ES1938, ENS1370).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ Final ALSA 0.5.0 packages] were released (added RME9652 -Hammerfall- driver, final API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-12&lt;br /&gt;
: The alsa-driver and alsa-lib [ftp://ftp.alsa-project.org/pub packages 0.5.0pre3] were released (trident driver, compilation trouble).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-11&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.5.0pre2] was released (enhanced EMU10K1 code, a compilation bugfix). Other [ftp://ftp.alsa-project.org/pub 0.5.0pre2 packages] were also released.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-10&lt;br /&gt;
: All [ftp://ftp.alsa-project.org/pub packages 0.5.0pre1] were were released. The final API freeze is expected at 14th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-20&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1i] was released with the bugfix for the generic code for AC'97. The problems with CS4297A volume levels are away.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-16&lt;br /&gt;
: The final ALSA API dead line is 10th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1h] was released with the bugfix for the ENS1370/ENS1371 drivers.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-06&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1g1] was released with minor bugfixes (mixer, rawmidi, CS461X).&lt;br /&gt;
&lt;br /&gt;
; 1999-12-02&lt;br /&gt;
: [http://www.alsa-project.org/announce.html The ALSA professional team] has been founded.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-01&lt;br /&gt;
: [http://www.alsa-project.org/cgi-bin/cvsweb.cgi CVS Web interface] is available. Created [[Mailing-lists|new mailing lists]]: alsa-doc, alsa-conf, alsa-howto and alsa-cvs. Mailing lists are archived through MHonArc. Web is now searchable through Ht://Dig.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1f2] was released with minor bugfixes (CS4231, CS4236, AC'97, 2.3.29 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-18&lt;br /&gt;
: Alpha EMU10K1 (Sound Blaster Live!) driver is available in CVS.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-03&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1e] was released with minor bugfixes (isapnp, CS4236+, Gallant SC-70P, 2.3.25 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-02&lt;br /&gt;
: Creative released their [http://opensource.creative.com/ source code for SB Live driver]. The ALSA SB Live driver will be available this month.&lt;br /&gt;
&lt;br /&gt;
; 1999-10-24&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1d] was released with minor bugfixes (CMI8330, 2+ soundcards, modules.conf handling, documentation files). Upgrade is recommended if your system has 2+ soundcards. [ftp://ftp.alsa-project.org/pub/lib ALSA library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).]A library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).&lt;br /&gt;
&lt;br /&gt;
; 1999-10-20&lt;br /&gt;
: Upgrade your modutils package, if you encounter 'segmentation fault' problems. Get fixed [ftp://ftp.ocs.com.au/pub/modutils/v2.3/modutils-2.3.6.tar.gz modutils-2.3.6.tar.gz] or an upgrade [ftp://ftp.alsa-project.org/pub/driver/misc/modules-2.2.2-44.i386.rpm package for SuSE 6.2].&lt;br /&gt;
&lt;br /&gt;
; 1999-10-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1c] was released with minor bugfixes (GUS, OPL3-SA2/3, RedHat 6.1). Upgrade is recommended for all soundcards.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1b] was released with next minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-01&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1a] was released with minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.1] were released. This is mostly bug-fix release.&lt;br /&gt;
: Statistics for WWW and FTP server are now available.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-15&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.0] were released. Older packages are not supported from this time.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-01&lt;br /&gt;
: The ALSA bug reporting system is up and going. To report bugs in ALSA packages, please go here and follow the instructions carefully.&lt;br /&gt;
&lt;br /&gt;
; 1999-06-17&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver/ ALSA driver version 0.3.2] released. This is a bug-fix release. If you have had any troubles with 0.3.1 or 0.3.0, please, try this version. Remember to upgrade [ftp://ftp.alsa-project.org/pub/lib/ lib] and [ftp://ftp.alsa-project.org/pub/utils/ utils] too. 0.3.x-series are the last to support 2.0.x kernels.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-23&lt;br /&gt;
: The alpha driver for the [http://www.crystal.com/ Cirrus Logic Sound Fusion CS461x (CS4280) PCI chips] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-05-14&lt;br /&gt;
: [[Mailing-lists|Mailing lists]] are now managed with the alsa.alsa-project.org machine.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-11&lt;br /&gt;
: The alpha driver for the [http://www.fortemedia.com/products/ ForteMedia FM801 PCI soundcard] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-29&lt;br /&gt;
: New page with the ALSA schedule is available.&lt;br /&gt;
&lt;br /&gt;
; 1999-04-23&lt;br /&gt;
: The call to hardware vendors was [[ALSA_Soundcard_Vendor_Information|updated]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-20&lt;br /&gt;
: The ALSA project has got own domain - alsa-project.org. Services (WWW/FTP/CVS) are running on the independent machine now.&lt;br /&gt;
&lt;br /&gt;
; 1999-03-16&lt;br /&gt;
: The releasing of 0.3.0pre5 packages is very delayed. We are working on new mixer API which will not be compatible with previous versions of ALSA packages. It seems that that this work needs a lot of our time. There are many changes in the current development tree (Trident 4DWave DX/NX driver &amp;lt;b&amp;gt;- thanks to Tridentfor their support -&amp;lt;/b&amp;gt;, timer interface, EMU8000 driver, OSS sequencer emulator), If you want to test or use the current code, you may get the sources directly from the [[Download|CVS server]] or there are also available [[Download|CVS snapshots]].&lt;br /&gt;
&lt;br /&gt;
; 1999-02-10&lt;br /&gt;
: Two alsa-driver and alsa-lib packages with version 0.3.0-pre4 [ftp://ftp.alsa-project.org/pub released]. The driver contains better support for 2.2.0+ kernels and allows mixing of ALSA and OSS/Lite modules.&lt;br /&gt;
&lt;br /&gt;
; 1999-02-05&lt;br /&gt;
: [[Download|CVS snapshots]] are available now.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-29&lt;br /&gt;
: Temporary AWE64 [http://ds.dial.pipex.com/sterat/alsa EMU8000 synth driver] for ALSA.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-24&lt;br /&gt;
: All packages with version 0.3.0-pre3 [ftp://ftp.alsa-project.org/pub released].&lt;br /&gt;
: [[ALSA_Library_API|New ALSA API description for 0.2.0 packages.]]&lt;br /&gt;
&lt;br /&gt;
; 1999-01-19&lt;br /&gt;
: [http://huizen.dds.nl/~valentyn/Alsa-sound-mini-HOWTO.html Alsa-sound-mini-HOWTO]&lt;br /&gt;
: Version 0.2.0-pre10p3 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes support for 2.2.0-pre1 kernel.&lt;br /&gt;
: Version 0.3.0-pre2 of alsa-lib [ftp://ftp.alsa-project.org/pub/lib released] which includes support for sequencer.&lt;br /&gt;
: Version 0.3.0-pre2 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes native support for ISA Plug &amp;amp;amp; Play cards, first version of sequencer and support for 2.2.0-pre1 kernel.&lt;br /&gt;
&lt;br /&gt;
; 1998-12-30&lt;br /&gt;
: [[ALSA_Soundcard_Vendor_Information|A call to sound card hardware vendors.]]&lt;br /&gt;
&lt;br /&gt;
; 1998-12-28&lt;br /&gt;
: [[ALSA Blacklist|Black List]]; Sound Blaster Live! [[ALSA_Blacklist|support]] (sorry)&lt;br /&gt;
&lt;br /&gt;
; 1998-11-10&lt;br /&gt;
: Version 0.1.3 of C library and Version 0.2.0-pre10 of driver [ftp://ftp.alsa-project.org/pub/driver released] which supports Cirrus Logic CS4232+/CS4236+, Ensoniq AudioPCI (ES1370/1371), and S3 SonicVibes.&lt;br /&gt;
&lt;br /&gt;
; 1998-11-04&lt;br /&gt;
: Version 0.0.7 of ALSA utilities [ftp://ftp.alsa-project.org/pub/lib released]&lt;br /&gt;
&lt;br /&gt;
; 1998-08-13&lt;br /&gt;
: [[Download|CVS is up]]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version</id>
		<title>Template:ALSA download version</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version"/>
				<updated>2013-04-12T08:47:45Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ #switch: {{{module}}}&lt;br /&gt;
| driver={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| lib={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| utils={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| tools={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| firmware={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| plugins={{ #switch: {{{release}}} | stable=1.0.27 | development=none }}&lt;br /&gt;
| oss={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| python={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| Unknown please edit!&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.26_v1.0.27</id>
		<title>Detailed changes v1.0.26 v1.0.27</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.26_v1.0.27"/>
				<updated>2013-04-12T08:46:34Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: 1 revision&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
=Detailed changelog between 1.0.25 and 1.0.27 releases=&lt;br /&gt;
=Changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
==alsa-firmware==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - configure.in: Remove emi_26_62 reference&lt;br /&gt;
:   &lt;br /&gt;
: - Remove emi_26_62 firmwares&lt;br /&gt;
:   &lt;br /&gt;
:   These are incldued in kernel-firmware for long time, and they are anyway&lt;br /&gt;
:   wrongly generated / installed (the firmware loader driver reads the&lt;br /&gt;
:   binary ihex format files *.fw)&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Karl Grill &amp;amp;lt;kgrill@chello.at&amp;amp;gt;&lt;br /&gt;
: - Add firmware for CA0132 DSP&lt;br /&gt;
:   &lt;br /&gt;
===Emagic EMI 2|6 Audio Interface Firmware===&lt;br /&gt;
: - Remove emi_26_62 firmwares&lt;br /&gt;
:   &lt;br /&gt;
:   These are incldued in kernel-firmware for long time, and they are anyway&lt;br /&gt;
:   wrongly generated / installed (the firmware loader driver reads the&lt;br /&gt;
:   binary ihex format files *.fw)&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Karl Grill &amp;amp;lt;kgrill@chello.at&amp;amp;gt;&lt;br /&gt;
===Sound Blaster HDA CA0132 Firmware===&lt;br /&gt;
: - Update ca0132 firmware files&lt;br /&gt;
:   &lt;br /&gt;
:   ctefx.bin:&lt;br /&gt;
:   Update the CA0132 DSP image firmware file. This version:&lt;br /&gt;
:   - Includes key-click reduction feature.&lt;br /&gt;
:   - Fixes noisy output when GraphicEQ and SpeakerEQ are both turned on.&lt;br /&gt;
:   &lt;br /&gt;
:   ctspeq.bin:&lt;br /&gt;
:   Add firmware file containing coefficient preset for SpeakerEQ&lt;br /&gt;
:   DSP feature. This preset has been tuned for Chromebook Pixel hardware.&lt;br /&gt;
:   Other CA0132 systems will run without loading this binary.&lt;br /&gt;
:   &lt;br /&gt;
: - Add firmware for CA0132 DSP&lt;br /&gt;
:   &lt;br /&gt;
=Detailed changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
=Changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
: - Add sys/types.h to include list&lt;br /&gt;
:   &lt;br /&gt;
:   This is needed by snd_pcm_format_silence* functions which&lt;br /&gt;
:   return u_int*_t. It was discovered while trying to compile ALSA&lt;br /&gt;
:   programs with eglibc 2.17.&lt;br /&gt;
:   &lt;br /&gt;
:   Credits to Richard Shaw, Gary Buhrmaster, Matthieu Baerts and&lt;br /&gt;
:   Adam Conrad for this fix.&lt;br /&gt;
:   &lt;br /&gt;
:   BugLink: https://bugs.launchpad.net/bugs/1109298&lt;br /&gt;
:   BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=885306&lt;br /&gt;
: - Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
:   &lt;br /&gt;
:   This is required so we can make other functions reentrant (such as&lt;br /&gt;
:   snd_device_name_hint()).&lt;br /&gt;
:   The default error handling function snd_lib_error_default() now checks&lt;br /&gt;
:   if a local handler exists, and if so, calls it. Otherwise, the previous&lt;br /&gt;
:   behavior is unchanged.&lt;br /&gt;
:   &lt;br /&gt;
: - configure: do not detect incorrect cross-compiler&lt;br /&gt;
:   &lt;br /&gt;
:   On Ubuntu 11.04, configuring with --build=x86_64-unknown-linux-gnu&lt;br /&gt;
:   --host=x86_64-linux-gnu finds a wrong cross-compiler:&lt;br /&gt;
:   checking for cross-compiler... x86_64-x86_64-pc-linux-gnu-gcc&lt;br /&gt;
:   &lt;br /&gt;
:   This happens because of a dash vs underscore inconsistency in configure.in:&lt;br /&gt;
:   host=x86_64-pc-linux-gnu&lt;br /&gt;
:   host_cpu=x86_64&lt;br /&gt;
:   host_os=linux-gnu&lt;br /&gt;
:   which ${host_cpu}-${host_os}-gcc &amp;amp;gt;/dev/null 2&amp;amp;gt;&amp;amp;1 &amp;amp;&amp;amp; echo ${host_cpu}-${host-os}-gcc&lt;br /&gt;
:   &lt;br /&gt;
:   This bug has been introduced in the initial --with-host support from&lt;br /&gt;
:   2002, commit eb267ade29c9a49c07b1c33dc9bf7a6790217400&lt;br /&gt;
:   &lt;br /&gt;
:   This configure command is about &amp;quot;cross-compiling for i586&amp;quot;, where the&lt;br /&gt;
:   system compiler is used, which just -m32 additional options.&lt;br /&gt;
:   The --build value comes from config.guess.&lt;br /&gt;
: - Fix endian check in local.h&lt;br /&gt;
:   &lt;br /&gt;
:   SNDRV_LITTLE_ENDIAN and SNDRV_BIG_ENDIAN checks have been removed from&lt;br /&gt;
:   sound/asound.h during UAPI header move, and this resulted in a wrong&lt;br /&gt;
:   detected endian.&lt;br /&gt;
:   &lt;br /&gt;
:   Move together with the similar check for SND_*_ENDIAN at the earlier&lt;br /&gt;
:   place in local.h.&lt;br /&gt;
:   &lt;br /&gt;
: - configure: Quite AM_CONDITIONAL() arguments&lt;br /&gt;
:   &lt;br /&gt;
:   Otherwise it won't be processed properly with the recent automake.&lt;br /&gt;
:   &lt;br /&gt;
: - Add workaround for conflicting snd_seq_event_t definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
===Control API===&lt;br /&gt;
: - control: enhance doc for snd_ctl_ascii_value_parse() function&lt;br /&gt;
:   &lt;br /&gt;
: - control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
:   &lt;br /&gt;
:   Upon an interrupt, it is necessary to abort the wait loops with the EINTR&lt;br /&gt;
:   error code. Introduce snd_*_abort() functions to handle this case.&lt;br /&gt;
:   &lt;br /&gt;
: - Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
:   &lt;br /&gt;
:   When both an SPDIF and an HDMI output are present on HD-audio, both&lt;br /&gt;
:   try to access IEC958 controls with index=0 although one of them must&lt;br /&gt;
:   be wrong.  For avoiding this conflict, the recent kernel code (3.9 and&lt;br /&gt;
:   3.8 stable) moves the IEC958 controls of an SPDIF with index=16 once&lt;br /&gt;
:   when the conflict happens.&lt;br /&gt;
:   &lt;br /&gt;
:   In this patch, the corresponding support is added in alsa-lib side.&lt;br /&gt;
:   The new &amp;quot;skip_rest&amp;quot; boolean flag is added to the hooked element&lt;br /&gt;
:   definition which indicates that the rest of element array will be&lt;br /&gt;
:   ignored once when this element is present and evaluated.  With this&lt;br /&gt;
:   new flag, the HD-audio config takes index=16 primarily, then take&lt;br /&gt;
:   index=0 as fallback.&lt;br /&gt;
:   &lt;br /&gt;
: - control: Simplify using snd_config_get_bool()&lt;br /&gt;
:   &lt;br /&gt;
:   snd_config_get_bool() was improved to parse also ASCII strings now,&lt;br /&gt;
:   so we don't have to open-code the boolean parser in&lt;br /&gt;
:   src/control/setup.c any longer.&lt;br /&gt;
:   &lt;br /&gt;
: - snd_device_name_hint(): do not use global snd_config.&lt;br /&gt;
:   &lt;br /&gt;
:   This commit and its parent make the function reentrant.&lt;br /&gt;
:   &lt;br /&gt;
: - snd_device_name_hint(): do not change the global error handler.&lt;br /&gt;
:   &lt;br /&gt;
:   This is the first step towards making this function reentrant.&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement the channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   Added new channel-mapping API functions.&lt;br /&gt;
:   Not all plugins are covered, especially the route, multi and external&lt;br /&gt;
:   plugins don't work yet.&lt;br /&gt;
:   &lt;br /&gt;
===Mixer API===&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
: - snd_mixer_poll_descriptors_revents should loop over pollfd&lt;br /&gt;
:   &lt;br /&gt;
: - mixer: Don't build simple_abst when no libdl is available&lt;br /&gt;
:   &lt;br /&gt;
:   Check BUILD_MODULES conditional not to compile simple_abst.c.&lt;br /&gt;
:   Also return -ENXIO to caller statically in that case.&lt;br /&gt;
:   &lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
===PCM API===&lt;br /&gt;
: - pcm: direct plugins: do more safe IPC semaphore handling&lt;br /&gt;
:   &lt;br /&gt;
:   As reported dead-lock, do local lock counting and invoke abort() when&lt;br /&gt;
:   the lock counts do not match at close() time.&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: &amp;amp;lt;mateen abdulmateen.shaikh@gmail.com&amp;amp;gt;&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
: - control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
:   &lt;br /&gt;
:   Upon an interrupt, it is necessary to abort the wait loops with the EINTR&lt;br /&gt;
:   error code. Introduce snd_*_abort() functions to handle this case.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: fix typo, should be SND_PCM_STATE_PREPARED.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: fix and optimize snd_pcm_areas_copy function&lt;br /&gt;
:   &lt;br /&gt;
:   The memcpy() function in snd_pcm_area_copy() should not be called&lt;br /&gt;
:   with the overlapped areas. Alex discovered - using own LD_PRELOAD checked&lt;br /&gt;
:   for memcpy() input - that the memcpy() is called with src == dst.&lt;br /&gt;
:   &lt;br /&gt;
:   For some special plugin combos (rate+softvol+hw for example), the same&lt;br /&gt;
:   areas with same offsets can be asked to be copied (softvol). The collapse&lt;br /&gt;
:   check uses own areas created on heap, causing dst_area == src_area &amp;amp;&amp;amp;&lt;br /&gt;
:   dst_offset == src_offset check bypassed.&lt;br /&gt;
:   &lt;br /&gt;
:   Two fixes are in this patch:&lt;br /&gt;
:   &lt;br /&gt;
:   - use assert to check the memcpy() input for future triggers&lt;br /&gt;
:   - bypass the snd_pcm_area_copy() call for collapsed identical areas&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Alexander Kruppa &amp;amp;lt;akruppa@gmail.com&amp;amp;gt;&lt;br /&gt;
: - snd_pcm_direct_parse_open_conf(): use thread-safe getgrnam_r()&lt;br /&gt;
:   &lt;br /&gt;
:   Fixes a thread safety issue with snd_pcm_open().&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix conflict of _snd_pcm_hw_params definitions&lt;br /&gt;
:   &lt;br /&gt;
:   Fix the call of _snd_pcm_hw_params() to _snd_pcm_hw_params_internal().&lt;br /&gt;
:   The build passed wrongly because of _snd_pcm_hw_params define.&lt;br /&gt;
:   Having the same function name as the struct name is is simply&lt;br /&gt;
:   confusing...&lt;br /&gt;
:   &lt;br /&gt;
:   Also, to be sure, _snd_pcm_hw_params is undef'ed in pcm_local.h, too.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: shut up a compile &amp;quot;unused parameter&amp;quot; compile warning in pcm_multi.c&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add more chmap definitions for UAC2&lt;br /&gt;
:   &lt;br /&gt;
:   The new PCM chmap positions have been added in (to be) 3.8-rc1 kernel,&lt;br /&gt;
:   and now updated alsa-lib, too.&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Avoid busy loop in snd_pcm_write_areas() with rate plugin&lt;br /&gt;
:   &lt;br /&gt;
:   snd_pcm_write_areas() tries to wait until avail &amp;amp;gt;= avail_min condition&lt;br /&gt;
:   is satisfied.  This doesn't work always well when a rate plugin is in&lt;br /&gt;
:   the play.&lt;br /&gt;
:   &lt;br /&gt;
:   When a partial data with a smaller size than a period is written, the&lt;br /&gt;
:   rate plugin doesn't transfer the data immediately to the slave PCM,&lt;br /&gt;
:   but kept in an internal buffer and it changes only the hwptr of the&lt;br /&gt;
:   plugin.  Thus, the condition &amp;quot;avail &amp;amp;lt; avail_min&amp;quot; is triggered for a&lt;br /&gt;
:   wait check although the underlying slave PCM has enough room.  This&lt;br /&gt;
:   results in a call of snd_pcm_wait() which returns immediately after&lt;br /&gt;
:   poll() call, and the snd_pcm_write_areas() loop continues.  As a&lt;br /&gt;
:   consequence, it falls into a CPU hog.&lt;br /&gt;
:   &lt;br /&gt;
:   This patch fixes that busy loop by introducing a new fast_ops to check&lt;br /&gt;
:   the availability for wait of avail_min.  Then a plugin can ask the&lt;br /&gt;
:   slave PCM whether the wait is required (or possible).&lt;br /&gt;
:   &lt;br /&gt;
:   A few plugins like multi plugin need a special handling.  Otherwise a&lt;br /&gt;
:   generic plugin function can be used.&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Trent Piepho &amp;amp;lt;tpiepho@gmail.com&amp;amp;gt;&lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix memory leak for pcm empty and asym plugins&lt;br /&gt;
:   &lt;br /&gt;
:   The init-only plugins do not have own pcm handle, so free the references&lt;br /&gt;
:   to open function immediately after open.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: support for audio timestamps&lt;br /&gt;
:   &lt;br /&gt;
:   add new snd_pcm_status_get_audio_htstamp() routine to&lt;br /&gt;
:   query the audio timestamps provided by the kernel.&lt;br /&gt;
:   &lt;br /&gt;
:   This change provides applications with better ways&lt;br /&gt;
:   to track elapsed time. Before this patch, applications&lt;br /&gt;
:   would subtract queued samples (delay) from written samples,&lt;br /&gt;
:   resulting in a 1-2 sample error.&lt;br /&gt;
:   &lt;br /&gt;
:   Also add snd_pcm_hw_params_supports_audio_wallclock_ts()&lt;br /&gt;
:   to query what the hardware supports.&lt;br /&gt;
:   &lt;br /&gt;
:   TODO: check protocol compatibility?&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix the invalid snd_pcm_close() calls in rate plugin&lt;br /&gt;
:   &lt;br /&gt;
:   It happens in the error path, should call snd_pcm_free() instead.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix infinite loop in htimestamp of dmix, dsnoop and dshare plugins&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fill SND_CHMAP_NA to silent channels in route plugin&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of SND_CHMAP_UNKNOWN, fill SND_CHMAP_NA to the silent channels.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: A few doxygen fixes for chmap stuff&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix the conversion from string to chmap position&lt;br /&gt;
:   &lt;br /&gt;
:   Use strncasecmp() to allow lower cases, and also evaluate the inverted&lt;br /&gt;
:   phase suffix, too.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Define MONO and other channel map positions&lt;br /&gt;
:   &lt;br /&gt;
:   Follow the new definitions in the kernel side.  MONO and others have&lt;br /&gt;
:   been added, and the order of position table was changed again.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of a single channel map, multiple channel maps can be provided&lt;br /&gt;
:   in a form of compound (array) to hw and null plugins.  In null&lt;br /&gt;
:   get_chmap, the channel map corresponding to the current channels is&lt;br /&gt;
:   copied from the given channel maps.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add the missing query_chmaps for route plugin&lt;br /&gt;
:   &lt;br /&gt;
:   Also fix the channel count in get_chmap for route plugin.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add chmap options to hw and null plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Add a config definition &amp;quot;chmap&amp;quot; to override (or enhance) the channel&lt;br /&gt;
:   maps.  So far, only a single channel map can be provided, and the&lt;br /&gt;
:   channel count consistency isn't strictly tested at all.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add query_chmaps support to multi plugin&lt;br /&gt;
:   &lt;br /&gt;
:   Also fix some bugs in get_chmap().&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add snd_pcm_chmap_long_name()&lt;br /&gt;
:   &lt;br /&gt;
:   Just return a more verbose name than snd_pcm_chmap_name(), but&lt;br /&gt;
:   including white spaces.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add SND_CHMAP_API_VERSION definition&lt;br /&gt;
:   &lt;br /&gt;
:   Just to make it easier for apps to support chmap conditionally via&lt;br /&gt;
:   simple ifdefs.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add string conversion helper functions for chmap&lt;br /&gt;
:   &lt;br /&gt;
:   Added a few helper functions between chmap and string.&lt;br /&gt;
:   snd_pcm_chmap_type_name() -- a string of the given chmap type&lt;br /&gt;
:   snd_pcm_chmap_name() -- a string of the given channel position&lt;br /&gt;
:   snd_pcm_chmap_print() -- print channel map on the given buffer&lt;br /&gt;
:   snd_pcm_chmap_from_string() -- get a channel position from string&lt;br /&gt;
:   snd_pcm_parse_string() -- parse the whole channel map from string&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix prefix for snd_pcm_chmap_type enum members&lt;br /&gt;
:   &lt;br /&gt;
:   Add _TYPE prefix to distinguish from the channel position.&lt;br /&gt;
:   Also add SND_CHMAP_TYPE_LAST entry pointing the last one like other&lt;br /&gt;
:   enums.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Implement snd_pcm_query_chmaps_from_hw()&lt;br /&gt;
:   &lt;br /&gt;
:   This is a function similar like snd_pcm_query_chmaps() but performs&lt;br /&gt;
:   the query without a PCM handle.  The card, device and substream&lt;br /&gt;
:   numbers are passed as well as stream direction.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of passing ambiguous integer array, define snd_pcm_chmap_t and&lt;br /&gt;
:   snd_pcm_chmap_query_t so that user can understand more easily which&lt;br /&gt;
:   element is for what.&lt;br /&gt;
:   &lt;br /&gt;
: - Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
:   &lt;br /&gt;
:   mixer.h already contains some channel position definitions.&lt;br /&gt;
:   To be more consistent over all systems, better to follow the same&lt;br /&gt;
:   order for the new channel map, too.  But since UNKNOWN channel must be&lt;br /&gt;
:   zero but the definition in mixer.h contains -1 as UNKNOWN, simply&lt;br /&gt;
:   shift the value with 1.&lt;br /&gt;
:   &lt;br /&gt;
:   If the conversion is required between SND_CHMAP and SND_MIXER_SCHN,&lt;br /&gt;
:   just increment/decrement 1.  Eventually I'll provide helper functions&lt;br /&gt;
:   for that...&lt;br /&gt;
:   &lt;br /&gt;
: - Define channel map position enum in pcm.h&lt;br /&gt;
:   &lt;br /&gt;
:   The original definition is in sound/asound.h, but we need to export to&lt;br /&gt;
:   alsa-lib users, too.&lt;br /&gt;
:   &lt;br /&gt;
: - Cache the chmap operation errors&lt;br /&gt;
:   &lt;br /&gt;
:   ... not to retry the same error again.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Added the new ops for both external plugins, so the protocol numbers&lt;br /&gt;
:   are incremented.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM plug, route and multi plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Still incomplete implementations.  The query and set ops are missing&lt;br /&gt;
:   for route and multi plugins.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement the channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   Added new channel-mapping API functions.&lt;br /&gt;
:   Not all plugins are covered, especially the route, multi and external&lt;br /&gt;
:   plugins don't work yet.&lt;br /&gt;
:   &lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
===Timer API===&lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
: - ucm: Set uc_mgr-&amp;amp;gt;ctl to NULL after closing it.&lt;br /&gt;
:   &lt;br /&gt;
:   Fixes a double-free bug.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
===Configuration===&lt;br /&gt;
: - USB-audio: Add &amp;quot;HP Digital Stereo Headset&amp;quot; to SPDIF blacklist&lt;br /&gt;
:   &lt;br /&gt;
:   Yet another headset without digital I/O.&lt;br /&gt;
:   &lt;br /&gt;
: - Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
:   &lt;br /&gt;
:   When both an SPDIF and an HDMI output are present on HD-audio, both&lt;br /&gt;
:   try to access IEC958 controls with index=0 although one of them must&lt;br /&gt;
:   be wrong.  For avoiding this conflict, the recent kernel code (3.9 and&lt;br /&gt;
:   3.8 stable) moves the IEC958 controls of an SPDIF with index=16 once&lt;br /&gt;
:   when the conflict happens.&lt;br /&gt;
:   &lt;br /&gt;
:   In this patch, the corresponding support is added in alsa-lib side.&lt;br /&gt;
:   The new &amp;quot;skip_rest&amp;quot; boolean flag is added to the hooked element&lt;br /&gt;
:   definition which indicates that the rest of element array will be&lt;br /&gt;
:   ignored once when this element is present and evaluated.  With this&lt;br /&gt;
:   new flag, the HD-audio config takes index=16 primarily, then take&lt;br /&gt;
:   index=0 as fallback.&lt;br /&gt;
:   &lt;br /&gt;
: - conf: Fix a memory access violation resulting from improper error propogation&lt;br /&gt;
:   &lt;br /&gt;
:   Fixes an issue where a variable is used undeclared, which can cause seg&lt;br /&gt;
:   faults on some systems if the configuration file is not formatted&lt;br /&gt;
:   properly.&lt;br /&gt;
:   &lt;br /&gt;
: - conf: Add chmap definitions to TRIDENT and SI7018 configurations&lt;br /&gt;
:   &lt;br /&gt;
:   Manually add the channel map definitions as the channel front/rear is&lt;br /&gt;
:   determined dynamically.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of a single channel map, multiple channel maps can be provided&lt;br /&gt;
:   in a form of compound (array) to hw and null plugins.  In null&lt;br /&gt;
:   get_chmap, the channel map corresponding to the current channels is&lt;br /&gt;
:   copied from the given channel maps.&lt;br /&gt;
:   &lt;br /&gt;
: - Add chmap override definitions for Emu10k1, Audigy and Audigy2 cards&lt;br /&gt;
:   &lt;br /&gt;
:   These cards won't provide the channel maps from the driver itself&lt;br /&gt;
:   because of the dynamic routing.  For simplicity, define chmaps in the&lt;br /&gt;
:   configurations, so that chmap querying of individual stereo streams&lt;br /&gt;
:   and combined multi streams works properly.&lt;br /&gt;
:   &lt;br /&gt;
===Documentation===&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: - Optimize NULL check in snd_dlobj_cache_put()&lt;br /&gt;
:   &lt;br /&gt;
: - Clean up dlobj cache only when no user is present&lt;br /&gt;
:   &lt;br /&gt;
:   Cleaning up the dlobj cache seems crashing some cases when the library&lt;br /&gt;
:   is used from another plugin like openal-soft.  A simple workaround is&lt;br /&gt;
:   to do the cleanup only when really no user is left, i.e. after all&lt;br /&gt;
:   close calls.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=814250&lt;br /&gt;
:   &lt;br /&gt;
===Error handler===&lt;br /&gt;
: - Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
:   &lt;br /&gt;
:   This is required so we can make other functions reentrant (such as&lt;br /&gt;
:   snd_device_name_hint()).&lt;br /&gt;
:   The default error handling function snd_lib_error_default() now checks&lt;br /&gt;
:   if a local handler exists, and if so, calls it. Otherwise, the previous&lt;br /&gt;
:   behavior is unchanged.&lt;br /&gt;
:   &lt;br /&gt;
===External Control Plugin SDK===&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: - PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of passing ambiguous integer array, define snd_pcm_chmap_t and&lt;br /&gt;
:   snd_pcm_chmap_query_t so that user can understand more easily which&lt;br /&gt;
:   element is for what.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Added the new ops for both external plugins, so the protocol numbers&lt;br /&gt;
:   are incremented.&lt;br /&gt;
:   &lt;br /&gt;
===External PCM I/O Plugin SDK===&lt;br /&gt;
: - PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of passing ambiguous integer array, define snd_pcm_chmap_t and&lt;br /&gt;
:   snd_pcm_chmap_query_t so that user can understand more easily which&lt;br /&gt;
:   element is for what.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Added the new ops for both external plugins, so the protocol numbers&lt;br /&gt;
:   are incremented.&lt;br /&gt;
:   &lt;br /&gt;
===Kernel Headers===&lt;br /&gt;
: - PCM: Add more chmap definitions for UAC2&lt;br /&gt;
:   &lt;br /&gt;
:   The new PCM chmap positions have been added in (to be) 3.8-rc1 kernel,&lt;br /&gt;
:   and now updated alsa-lib, too.&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: fix 64-bit SNDRV_PCM_IOCTL_STATUS ABI breakage&lt;br /&gt;
:   &lt;br /&gt;
:   Commit cf40ea169aad (pcm: support for audio timestamps) added the new&lt;br /&gt;
:   audio_tstamp field to struct sndrv_pcm_status.  However, struct timespec&lt;br /&gt;
:   requires 64-bit alignment, so the 64-bit compiler would insert&lt;br /&gt;
:   32 bits of padding before this field, which broke SNDRV_PCM_IOCTL_STATUS&lt;br /&gt;
:   with error messages like this:&lt;br /&gt;
:   &lt;br /&gt;
:   kernel: unknown ioctl = 0x80984120&lt;br /&gt;
:   &lt;br /&gt;
:   To solve this, insert the padding explicitly so that it can be taken&lt;br /&gt;
:   into account when calculating the ABI structure size.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: support for audio timestamps&lt;br /&gt;
:   &lt;br /&gt;
:   add new snd_pcm_status_get_audio_htstamp() routine to&lt;br /&gt;
:   query the audio timestamps provided by the kernel.&lt;br /&gt;
:   &lt;br /&gt;
:   This change provides applications with better ways&lt;br /&gt;
:   to track elapsed time. Before this patch, applications&lt;br /&gt;
:   would subtract queued samples (delay) from written samples,&lt;br /&gt;
:   resulting in a 1-2 sample error.&lt;br /&gt;
:   &lt;br /&gt;
:   Also add snd_pcm_hw_params_supports_audio_wallclock_ts()&lt;br /&gt;
:   to query what the hardware supports.&lt;br /&gt;
:   &lt;br /&gt;
:   TODO: check protocol compatibility?&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Define MONO and other channel map positions&lt;br /&gt;
:   &lt;br /&gt;
:   Follow the new definitions in the kernel side.  MONO and others have&lt;br /&gt;
:   been added, and the order of position table was changed again.&lt;br /&gt;
:   &lt;br /&gt;
: - Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
:   &lt;br /&gt;
:   mixer.h already contains some channel position definitions.&lt;br /&gt;
:   To be more consistent over all systems, better to follow the same&lt;br /&gt;
:   order for the new channel map, too.  But since UNKNOWN channel must be&lt;br /&gt;
:   zero but the definition in mixer.h contains -1 as UNKNOWN, simply&lt;br /&gt;
:   shift the value with 1.&lt;br /&gt;
:   &lt;br /&gt;
:   If the conversion is required between SND_CHMAP and SND_MIXER_SCHN,&lt;br /&gt;
:   just increment/decrement 1.  Eventually I'll provide helper functions&lt;br /&gt;
:   for that...&lt;br /&gt;
:   &lt;br /&gt;
: - Implement the channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   Added new channel-mapping API functions.&lt;br /&gt;
:   Not all plugins are covered, especially the route, multi and external&lt;br /&gt;
:   plugins don't work yet.&lt;br /&gt;
:   &lt;br /&gt;
===Test/Example code===&lt;br /&gt;
: - pcm: support for audio timestamps&lt;br /&gt;
:   &lt;br /&gt;
:   add new snd_pcm_status_get_audio_htstamp() routine to&lt;br /&gt;
:   query the audio timestamps provided by the kernel.&lt;br /&gt;
:   &lt;br /&gt;
:   This change provides applications with better ways&lt;br /&gt;
:   to track elapsed time. Before this patch, applications&lt;br /&gt;
:   would subtract queued samples (delay) from written samples,&lt;br /&gt;
:   resulting in a 1-2 sample error.&lt;br /&gt;
:   &lt;br /&gt;
:   Also add snd_pcm_hw_params_supports_audio_wallclock_ts()&lt;br /&gt;
:   to query what the hardware supports.&lt;br /&gt;
:   &lt;br /&gt;
:   TODO: check protocol compatibility?&lt;br /&gt;
:   &lt;br /&gt;
: - test: add audio_time&lt;br /&gt;
:   &lt;br /&gt;
:   Simple test to create playback and capture streams, and&lt;br /&gt;
:   check elapsed time vs. sample counts reported by driver.&lt;br /&gt;
:   This should be helpful for driver developers and anyone&lt;br /&gt;
:   interested in system/audio time drift.&lt;br /&gt;
:   &lt;br /&gt;
:   tested only on HDAudio&lt;br /&gt;
:   &lt;br /&gt;
:   [added Makefile.am change by tiwai]&lt;br /&gt;
:   &lt;br /&gt;
:   TODO:&lt;br /&gt;
:   - make period configurable&lt;br /&gt;
:   - better output messages&lt;br /&gt;
:   - support for wall clock when it's in the mainline&lt;br /&gt;
:   &lt;br /&gt;
: - test/chmap: Fix wrong malloc size&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add string conversion helper functions for chmap&lt;br /&gt;
:   &lt;br /&gt;
:   Added a few helper functions between chmap and string.&lt;br /&gt;
:   snd_pcm_chmap_type_name() -- a string of the given chmap type&lt;br /&gt;
:   snd_pcm_chmap_name() -- a string of the given channel position&lt;br /&gt;
:   snd_pcm_chmap_print() -- print channel map on the given buffer&lt;br /&gt;
:   snd_pcm_chmap_from_string() -- get a channel position from string&lt;br /&gt;
:   snd_pcm_parse_string() -- parse the whole channel map from string&lt;br /&gt;
:   &lt;br /&gt;
: - Fix duplicated channel entry in test/chmap.c&lt;br /&gt;
:   &lt;br /&gt;
: - Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
:   &lt;br /&gt;
:   mixer.h already contains some channel position definitions.&lt;br /&gt;
:   To be more consistent over all systems, better to follow the same&lt;br /&gt;
:   order for the new channel map, too.  But since UNKNOWN channel must be&lt;br /&gt;
:   zero but the definition in mixer.h contains -1 as UNKNOWN, simply&lt;br /&gt;
:   shift the value with 1.&lt;br /&gt;
:   &lt;br /&gt;
:   If the conversion is required between SND_CHMAP and SND_MIXER_SCHN,&lt;br /&gt;
:   just increment/decrement 1.  Eventually I'll provide helper functions&lt;br /&gt;
:   for that...&lt;br /&gt;
:   &lt;br /&gt;
: - Add test/chmap program&lt;br /&gt;
:   &lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
:   &lt;br /&gt;
:   It may be useful to have the file location configurable.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: move systemd config to the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
: - configure: Fix obsolete AM_CONFIG_HEADER macro&lt;br /&gt;
:   &lt;br /&gt;
:   Automake-1.13 removed long obsolete AM_CONFIG_HEADER completely (&lt;br /&gt;
:   http://lists.gnu.org/archive/html/automake/2012-12/msg00038.html )&lt;br /&gt;
:   and errors out upon seeing it.&lt;br /&gt;
:   &lt;br /&gt;
:   Attached patch replaces it with proper AC_CONFIG_HEADERS.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: - alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
:   &lt;br /&gt;
:   It may be useful to have the file location configurable.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: revert back old systemd static units with the /etc/alsa/state-daemon.conf switch&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add --nice and --sched-idle options&lt;br /&gt;
:   &lt;br /&gt;
:   The state management can run at low priority, add --nice and --sched-idle&lt;br /&gt;
:   options to set the scheduler.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: daemon mode - remove disconnected cards&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: move systemd config to the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add event filter and cache for the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: Improved command line argument handling...&lt;br /&gt;
:   &lt;br /&gt;
:   Improve command line argument handling for future extensions.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
:   For the plug-and-play hardware, like USB devices, it may be helpful&lt;br /&gt;
:   to manage the sound state periodically, before the devices are removed.&lt;br /&gt;
:   &lt;br /&gt;
:   This change implements new commands 'daemon' and 'rdaemon' to save&lt;br /&gt;
:   the sound state in defined intervals when the sound controls are changed.&lt;br /&gt;
:   &lt;br /&gt;
:   The udev rules can notify the daemon using the 'kill' or 'nrestore'&lt;br /&gt;
:   commands to rescan available cards in the system.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: small code reorder to avoid memory leaks&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: safe state store and memory allocation cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   - store new configuration to file + &amp;quot;.new&amp;quot; extension, rename later&lt;br /&gt;
:   - free the configuration tree on exit from load_state()/save_state()&lt;br /&gt;
:   - call snd_config_update_free_global() at the end of command blocks&lt;br /&gt;
:   &lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: - speaker-test: change the interrupt handling logic to follow aplay/arecord&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: try to call snd_pcm_close() when a signal is received&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: increase the maximum supported rate to 384000&lt;br /&gt;
:   &lt;br /&gt;
:   There are some devices around supporting this sample rate so let's make&lt;br /&gt;
:   speaker-test capable to deal with them.&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: Update man page for chmap option&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: Add support for channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   The surround channel map follows the given channel map from the&lt;br /&gt;
:   driver if available.&lt;br /&gt;
:   &lt;br /&gt;
:   Also, the channels can be specified manually via -m option.&lt;br /&gt;
:   Pass the channel map like &amp;quot;FL,FR,FC,LFE&amp;quot;.&lt;br /&gt;
:   &lt;br /&gt;
===alsaloop===&lt;br /&gt;
: - alsaloop: Fix missing #endif&lt;br /&gt;
:   &lt;br /&gt;
:   Sorry, forgotten.&lt;br /&gt;
:   &lt;br /&gt;
: - alsaloop: Make alsaloop working without libsamplerate&lt;br /&gt;
:   &lt;br /&gt;
:   When alsaloop is built with libsamplerate, it quits immediately with&lt;br /&gt;
:   No libsamplerate suppor&lt;br /&gt;
:   message.  It's because the check of -A option and it's set as default&lt;br /&gt;
:   non-zero value.&lt;br /&gt;
:   &lt;br /&gt;
===alsamixer===&lt;br /&gt;
: - alsamixer: Use isatty() to check the terminal (interactive) availability&lt;br /&gt;
:   &lt;br /&gt;
: - alsamixer: fix handling of removed controls&lt;br /&gt;
:   &lt;br /&gt;
:   When we get a notification that an element has been removed, we have to&lt;br /&gt;
:   recreate our internal control representation to avoid accessing freed&lt;br /&gt;
:   memory.  (And the checking for SND_CTL_EVENT_MASK_REMOVE should actually&lt;br /&gt;
:   be done correctly while we're at it.)&lt;br /&gt;
:   &lt;br /&gt;
===amixer===&lt;br /&gt;
: - amixer: Use the alsa-lib functions for id print and parse and value parse&lt;br /&gt;
:   &lt;br /&gt;
: - amixer: Fix dB value outputs in amixer contents&lt;br /&gt;
:   &lt;br /&gt;
:   Add missing cast to signed int for DB_MINMAX* types.&lt;br /&gt;
:   &lt;br /&gt;
: - amixer: Fix parsing container TLV entries&lt;br /&gt;
:   &lt;br /&gt;
:   Fix the wrong calculation of the size of a container TLV entry, which&lt;br /&gt;
:   resulted in &amp;quot;TLV size error&amp;quot; messages.&lt;br /&gt;
:   &lt;br /&gt;
: - amixer: fix rounding of relative changes&lt;br /&gt;
:   &lt;br /&gt;
:   When doing control changes by a relative amount, amixer used the wrong&lt;br /&gt;
:   rounding direction, which would make it possible to stay at the same raw&lt;br /&gt;
:   value if the step was not big enough to reach the next value.&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Honza Javorek &amp;amp;lt;jan.javorek@gmail.com&amp;amp;gt;&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: - aplay/arecord: change the interrupt handling using snd_pcm_abort()&lt;br /&gt;
:   &lt;br /&gt;
:   It is required (exclude the fatal SIGABRT) to call snd_pcm_close() and&lt;br /&gt;
:   the end of work (outside of the interrupt handler). Use new snd_pcm_abort()&lt;br /&gt;
:   function to inform alsa-lib to not ignore EINTR and move the in_aborting&lt;br /&gt;
:   variable to the global scope to be checked in the i/o loops.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay/arecord: added isatty() check (interactive mode)&lt;br /&gt;
:   &lt;br /&gt;
:   Turn off the interactive mode when stdin is not a tty.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: Add the support for big-endian WAV format (RIFX)&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: Show usage if no parameter is passed&lt;br /&gt;
:   &lt;br /&gt;
:   When aplay/arecord are called without any argument the application hangs forever.&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of hanging, print the usage and exit.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: fix typo &amp;amp; silence warning..&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: More support for channel map option&lt;br /&gt;
:   &lt;br /&gt;
:   Now aplay tries to follow the given channel map by rearranging the&lt;br /&gt;
:   channels even when the channel map override isn't allowed but if the&lt;br /&gt;
:   device is still capable to return a channel map.&lt;br /&gt;
:   &lt;br /&gt;
:   Also update the man page appropriately.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: Add support for channel mapping&lt;br /&gt;
:   &lt;br /&gt;
:   With -m option, user can specify the order of channel map.&lt;br /&gt;
:   As of this commit, it just tries to override the channel map, thus it&lt;br /&gt;
:   works only on devices that support the channel map override like HDMI.&lt;br /&gt;
:   Adjusting the channel order in aplay itself will be added later.&lt;br /&gt;
:   &lt;br /&gt;
==alsa-tools==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - ac3dec: Remove the ac3dec tool&lt;br /&gt;
:   &lt;br /&gt;
:   There may be some licencing issues for the name and decoder (it is not&lt;br /&gt;
:   build in the Fedora distro anyway).&lt;br /&gt;
:   &lt;br /&gt;
:   Sources will stay in repos, but almost all current players are able&lt;br /&gt;
:   to handle DD AC-3.&lt;br /&gt;
:   &lt;br /&gt;
: - Release v1.0.26.1&lt;br /&gt;
:   &lt;br /&gt;
===HDA Jack Retask===&lt;br /&gt;
: - hdajackretask: Some more UI fixes&lt;br /&gt;
:   &lt;br /&gt;
:   - don't overwrite a set advanced override unless necessary&lt;br /&gt;
:   - fix &amp;quot;not present&amp;quot; never selected&lt;br /&gt;
:   - remove some trailing whitespaces&lt;br /&gt;
:   &lt;br /&gt;
: - hdajackretask: Fix &amp;quot;advanced override&amp;quot; bug&lt;br /&gt;
:   &lt;br /&gt;
:   The values were not correctly retreived from the comboboxes.&lt;br /&gt;
:   &lt;br /&gt;
: - Add foreign automake option to hdajackretask/Makefile.am&lt;br /&gt;
:   &lt;br /&gt;
: - hdajackretask: Add missing header files to tar-ball distribution&lt;br /&gt;
:   &lt;br /&gt;
===ac3dec (Dolby Digital Decoder)===&lt;br /&gt;
: - ac3dec: Remove the ac3dec tool&lt;br /&gt;
:   &lt;br /&gt;
:   There may be some licencing issues for the name and decoder (it is not&lt;br /&gt;
:   build in the Fedora distro anyway).&lt;br /&gt;
:   &lt;br /&gt;
:   Sources will stay in repos, but almost all current players are able&lt;br /&gt;
:   to handle DD AC-3.&lt;br /&gt;
:   &lt;br /&gt;
: - ac3dec: Show usage if no parameter is passed&lt;br /&gt;
:   &lt;br /&gt;
:   When ac3dec is called without any argument the application hangs forever.&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of hanging, print the usage and exit.&lt;br /&gt;
:   &lt;br /&gt;
===ld10k1 (EMU10K1+ DSP Code Loader)===&lt;br /&gt;
: - (q)lo10k1: updated INSTALL files&lt;br /&gt;
:   &lt;br /&gt;
===qlo10k1===&lt;br /&gt;
: - (q)lo10k1: updated INSTALL files&lt;br /&gt;
:   &lt;br /&gt;
==alsa-plugins==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
===A52 Output plugin===&lt;br /&gt;
: - a52: Fix build errors&lt;br /&gt;
:   &lt;br /&gt;
:   I merged somehow a half-baked patch mistakenly.  Fixed now.&lt;br /&gt;
:   &lt;br /&gt;
: - a52: Add the support of recent libavcodec / libavutil&lt;br /&gt;
:   &lt;br /&gt;
:   The recent avcodec requires the planar support, which is essentially&lt;br /&gt;
:   non-interleaved formats.  We need to limit the accepted access types&lt;br /&gt;
:   depending on it.&lt;br /&gt;
:   &lt;br /&gt;
===PulseAudio -&amp;amp;gt; ALSA plugin===&lt;br /&gt;
: - pulse: pulse_pcm_poll_revents should return 0 on success&lt;br /&gt;
:   &lt;br /&gt;
: - pcm_pulse: set prebuf parameter according to software parameters&lt;br /&gt;
:   &lt;br /&gt;
:   The current default value for prebuf is very high, almost the full&lt;br /&gt;
:   virtual ALSA buffer. This breaks some application especially where&lt;br /&gt;
:   low latency is involved.&lt;br /&gt;
:   &lt;br /&gt;
:   This patch makes pcm_pulse implement the sw_params callback and get&lt;br /&gt;
:   the prebuf value from the ALSA software parameters. Thus the&lt;br /&gt;
:   trigger latency is much more like what an ALSA application should&lt;br /&gt;
:   expect from an ALSA PCM device.&lt;br /&gt;
:&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.26_v1.0.27</id>
		<title>Detailed changes v1.0.26 v1.0.27</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Detailed_changes_v1.0.26_v1.0.27"/>
				<updated>2013-04-12T08:46:33Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
=Detailed changelog between 1.0.25 and 1.0.27 releases=&lt;br /&gt;
=Changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
==alsa-firmware==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - configure.in: Remove emi_26_62 reference&lt;br /&gt;
:   &lt;br /&gt;
: - Remove emi_26_62 firmwares&lt;br /&gt;
:   &lt;br /&gt;
:   These are incldued in kernel-firmware for long time, and they are anyway&lt;br /&gt;
:   wrongly generated / installed (the firmware loader driver reads the&lt;br /&gt;
:   binary ihex format files *.fw)&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Karl Grill &amp;amp;lt;kgrill@chello.at&amp;amp;gt;&lt;br /&gt;
: - Add firmware for CA0132 DSP&lt;br /&gt;
:   &lt;br /&gt;
===Emagic EMI 2|6 Audio Interface Firmware===&lt;br /&gt;
: - Remove emi_26_62 firmwares&lt;br /&gt;
:   &lt;br /&gt;
:   These are incldued in kernel-firmware for long time, and they are anyway&lt;br /&gt;
:   wrongly generated / installed (the firmware loader driver reads the&lt;br /&gt;
:   binary ihex format files *.fw)&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Karl Grill &amp;amp;lt;kgrill@chello.at&amp;amp;gt;&lt;br /&gt;
===Sound Blaster HDA CA0132 Firmware===&lt;br /&gt;
: - Update ca0132 firmware files&lt;br /&gt;
:   &lt;br /&gt;
:   ctefx.bin:&lt;br /&gt;
:   Update the CA0132 DSP image firmware file. This version:&lt;br /&gt;
:   - Includes key-click reduction feature.&lt;br /&gt;
:   - Fixes noisy output when GraphicEQ and SpeakerEQ are both turned on.&lt;br /&gt;
:   &lt;br /&gt;
:   ctspeq.bin:&lt;br /&gt;
:   Add firmware file containing coefficient preset for SpeakerEQ&lt;br /&gt;
:   DSP feature. This preset has been tuned for Chromebook Pixel hardware.&lt;br /&gt;
:   Other CA0132 systems will run without loading this binary.&lt;br /&gt;
:   &lt;br /&gt;
: - Add firmware for CA0132 DSP&lt;br /&gt;
:   &lt;br /&gt;
=Detailed changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
=Changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
: - Add sys/types.h to include list&lt;br /&gt;
:   &lt;br /&gt;
:   This is needed by snd_pcm_format_silence* functions which&lt;br /&gt;
:   return u_int*_t. It was discovered while trying to compile ALSA&lt;br /&gt;
:   programs with eglibc 2.17.&lt;br /&gt;
:   &lt;br /&gt;
:   Credits to Richard Shaw, Gary Buhrmaster, Matthieu Baerts and&lt;br /&gt;
:   Adam Conrad for this fix.&lt;br /&gt;
:   &lt;br /&gt;
:   BugLink: https://bugs.launchpad.net/bugs/1109298&lt;br /&gt;
:   BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=885306&lt;br /&gt;
: - Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
:   &lt;br /&gt;
:   This is required so we can make other functions reentrant (such as&lt;br /&gt;
:   snd_device_name_hint()).&lt;br /&gt;
:   The default error handling function snd_lib_error_default() now checks&lt;br /&gt;
:   if a local handler exists, and if so, calls it. Otherwise, the previous&lt;br /&gt;
:   behavior is unchanged.&lt;br /&gt;
:   &lt;br /&gt;
: - configure: do not detect incorrect cross-compiler&lt;br /&gt;
:   &lt;br /&gt;
:   On Ubuntu 11.04, configuring with --build=x86_64-unknown-linux-gnu&lt;br /&gt;
:   --host=x86_64-linux-gnu finds a wrong cross-compiler:&lt;br /&gt;
:   checking for cross-compiler... x86_64-x86_64-pc-linux-gnu-gcc&lt;br /&gt;
:   &lt;br /&gt;
:   This happens because of a dash vs underscore inconsistency in configure.in:&lt;br /&gt;
:   host=x86_64-pc-linux-gnu&lt;br /&gt;
:   host_cpu=x86_64&lt;br /&gt;
:   host_os=linux-gnu&lt;br /&gt;
:   which ${host_cpu}-${host_os}-gcc &amp;amp;gt;/dev/null 2&amp;amp;gt;&amp;amp;1 &amp;amp;&amp;amp; echo ${host_cpu}-${host-os}-gcc&lt;br /&gt;
:   &lt;br /&gt;
:   This bug has been introduced in the initial --with-host support from&lt;br /&gt;
:   2002, commit eb267ade29c9a49c07b1c33dc9bf7a6790217400&lt;br /&gt;
:   &lt;br /&gt;
:   This configure command is about &amp;quot;cross-compiling for i586&amp;quot;, where the&lt;br /&gt;
:   system compiler is used, which just -m32 additional options.&lt;br /&gt;
:   The --build value comes from config.guess.&lt;br /&gt;
: - Fix endian check in local.h&lt;br /&gt;
:   &lt;br /&gt;
:   SNDRV_LITTLE_ENDIAN and SNDRV_BIG_ENDIAN checks have been removed from&lt;br /&gt;
:   sound/asound.h during UAPI header move, and this resulted in a wrong&lt;br /&gt;
:   detected endian.&lt;br /&gt;
:   &lt;br /&gt;
:   Move together with the similar check for SND_*_ENDIAN at the earlier&lt;br /&gt;
:   place in local.h.&lt;br /&gt;
:   &lt;br /&gt;
: - configure: Quite AM_CONDITIONAL() arguments&lt;br /&gt;
:   &lt;br /&gt;
:   Otherwise it won't be processed properly with the recent automake.&lt;br /&gt;
:   &lt;br /&gt;
: - Add workaround for conflicting snd_seq_event_t definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
===Control API===&lt;br /&gt;
: - control: enhance doc for snd_ctl_ascii_value_parse() function&lt;br /&gt;
:   &lt;br /&gt;
: - control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
:   &lt;br /&gt;
:   Upon an interrupt, it is necessary to abort the wait loops with the EINTR&lt;br /&gt;
:   error code. Introduce snd_*_abort() functions to handle this case.&lt;br /&gt;
:   &lt;br /&gt;
: - Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
:   &lt;br /&gt;
:   When both an SPDIF and an HDMI output are present on HD-audio, both&lt;br /&gt;
:   try to access IEC958 controls with index=0 although one of them must&lt;br /&gt;
:   be wrong.  For avoiding this conflict, the recent kernel code (3.9 and&lt;br /&gt;
:   3.8 stable) moves the IEC958 controls of an SPDIF with index=16 once&lt;br /&gt;
:   when the conflict happens.&lt;br /&gt;
:   &lt;br /&gt;
:   In this patch, the corresponding support is added in alsa-lib side.&lt;br /&gt;
:   The new &amp;quot;skip_rest&amp;quot; boolean flag is added to the hooked element&lt;br /&gt;
:   definition which indicates that the rest of element array will be&lt;br /&gt;
:   ignored once when this element is present and evaluated.  With this&lt;br /&gt;
:   new flag, the HD-audio config takes index=16 primarily, then take&lt;br /&gt;
:   index=0 as fallback.&lt;br /&gt;
:   &lt;br /&gt;
: - control: Simplify using snd_config_get_bool()&lt;br /&gt;
:   &lt;br /&gt;
:   snd_config_get_bool() was improved to parse also ASCII strings now,&lt;br /&gt;
:   so we don't have to open-code the boolean parser in&lt;br /&gt;
:   src/control/setup.c any longer.&lt;br /&gt;
:   &lt;br /&gt;
: - snd_device_name_hint(): do not use global snd_config.&lt;br /&gt;
:   &lt;br /&gt;
:   This commit and its parent make the function reentrant.&lt;br /&gt;
:   &lt;br /&gt;
: - snd_device_name_hint(): do not change the global error handler.&lt;br /&gt;
:   &lt;br /&gt;
:   This is the first step towards making this function reentrant.&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement the channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   Added new channel-mapping API functions.&lt;br /&gt;
:   Not all plugins are covered, especially the route, multi and external&lt;br /&gt;
:   plugins don't work yet.&lt;br /&gt;
:   &lt;br /&gt;
===Mixer API===&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
: - snd_mixer_poll_descriptors_revents should loop over pollfd&lt;br /&gt;
:   &lt;br /&gt;
: - mixer: Don't build simple_abst when no libdl is available&lt;br /&gt;
:   &lt;br /&gt;
:   Check BUILD_MODULES conditional not to compile simple_abst.c.&lt;br /&gt;
:   Also return -ENXIO to caller statically in that case.&lt;br /&gt;
:   &lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
===PCM API===&lt;br /&gt;
: - pcm: direct plugins: do more safe IPC semaphore handling&lt;br /&gt;
:   &lt;br /&gt;
:   As reported dead-lock, do local lock counting and invoke abort() when&lt;br /&gt;
:   the lock counts do not match at close() time.&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: &amp;amp;lt;mateen abdulmateen.shaikh@gmail.com&amp;amp;gt;&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
: - control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
:   &lt;br /&gt;
:   Upon an interrupt, it is necessary to abort the wait loops with the EINTR&lt;br /&gt;
:   error code. Introduce snd_*_abort() functions to handle this case.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: fix typo, should be SND_PCM_STATE_PREPARED.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: fix and optimize snd_pcm_areas_copy function&lt;br /&gt;
:   &lt;br /&gt;
:   The memcpy() function in snd_pcm_area_copy() should not be called&lt;br /&gt;
:   with the overlapped areas. Alex discovered - using own LD_PRELOAD checked&lt;br /&gt;
:   for memcpy() input - that the memcpy() is called with src == dst.&lt;br /&gt;
:   &lt;br /&gt;
:   For some special plugin combos (rate+softvol+hw for example), the same&lt;br /&gt;
:   areas with same offsets can be asked to be copied (softvol). The collapse&lt;br /&gt;
:   check uses own areas created on heap, causing dst_area == src_area &amp;amp;&amp;amp;&lt;br /&gt;
:   dst_offset == src_offset check bypassed.&lt;br /&gt;
:   &lt;br /&gt;
:   Two fixes are in this patch:&lt;br /&gt;
:   &lt;br /&gt;
:   - use assert to check the memcpy() input for future triggers&lt;br /&gt;
:   - bypass the snd_pcm_area_copy() call for collapsed identical areas&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Alexander Kruppa &amp;amp;lt;akruppa@gmail.com&amp;amp;gt;&lt;br /&gt;
: - snd_pcm_direct_parse_open_conf(): use thread-safe getgrnam_r()&lt;br /&gt;
:   &lt;br /&gt;
:   Fixes a thread safety issue with snd_pcm_open().&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix conflict of _snd_pcm_hw_params definitions&lt;br /&gt;
:   &lt;br /&gt;
:   Fix the call of _snd_pcm_hw_params() to _snd_pcm_hw_params_internal().&lt;br /&gt;
:   The build passed wrongly because of _snd_pcm_hw_params define.&lt;br /&gt;
:   Having the same function name as the struct name is is simply&lt;br /&gt;
:   confusing...&lt;br /&gt;
:   &lt;br /&gt;
:   Also, to be sure, _snd_pcm_hw_params is undef'ed in pcm_local.h, too.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: shut up a compile &amp;quot;unused parameter&amp;quot; compile warning in pcm_multi.c&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add more chmap definitions for UAC2&lt;br /&gt;
:   &lt;br /&gt;
:   The new PCM chmap positions have been added in (to be) 3.8-rc1 kernel,&lt;br /&gt;
:   and now updated alsa-lib, too.&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Avoid busy loop in snd_pcm_write_areas() with rate plugin&lt;br /&gt;
:   &lt;br /&gt;
:   snd_pcm_write_areas() tries to wait until avail &amp;amp;gt;= avail_min condition&lt;br /&gt;
:   is satisfied.  This doesn't work always well when a rate plugin is in&lt;br /&gt;
:   the play.&lt;br /&gt;
:   &lt;br /&gt;
:   When a partial data with a smaller size than a period is written, the&lt;br /&gt;
:   rate plugin doesn't transfer the data immediately to the slave PCM,&lt;br /&gt;
:   but kept in an internal buffer and it changes only the hwptr of the&lt;br /&gt;
:   plugin.  Thus, the condition &amp;quot;avail &amp;amp;lt; avail_min&amp;quot; is triggered for a&lt;br /&gt;
:   wait check although the underlying slave PCM has enough room.  This&lt;br /&gt;
:   results in a call of snd_pcm_wait() which returns immediately after&lt;br /&gt;
:   poll() call, and the snd_pcm_write_areas() loop continues.  As a&lt;br /&gt;
:   consequence, it falls into a CPU hog.&lt;br /&gt;
:   &lt;br /&gt;
:   This patch fixes that busy loop by introducing a new fast_ops to check&lt;br /&gt;
:   the availability for wait of avail_min.  Then a plugin can ask the&lt;br /&gt;
:   slave PCM whether the wait is required (or possible).&lt;br /&gt;
:   &lt;br /&gt;
:   A few plugins like multi plugin need a special handling.  Otherwise a&lt;br /&gt;
:   generic plugin function can be used.&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Trent Piepho &amp;amp;lt;tpiepho@gmail.com&amp;amp;gt;&lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix memory leak for pcm empty and asym plugins&lt;br /&gt;
:   &lt;br /&gt;
:   The init-only plugins do not have own pcm handle, so free the references&lt;br /&gt;
:   to open function immediately after open.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: support for audio timestamps&lt;br /&gt;
:   &lt;br /&gt;
:   add new snd_pcm_status_get_audio_htstamp() routine to&lt;br /&gt;
:   query the audio timestamps provided by the kernel.&lt;br /&gt;
:   &lt;br /&gt;
:   This change provides applications with better ways&lt;br /&gt;
:   to track elapsed time. Before this patch, applications&lt;br /&gt;
:   would subtract queued samples (delay) from written samples,&lt;br /&gt;
:   resulting in a 1-2 sample error.&lt;br /&gt;
:   &lt;br /&gt;
:   Also add snd_pcm_hw_params_supports_audio_wallclock_ts()&lt;br /&gt;
:   to query what the hardware supports.&lt;br /&gt;
:   &lt;br /&gt;
:   TODO: check protocol compatibility?&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix the invalid snd_pcm_close() calls in rate plugin&lt;br /&gt;
:   &lt;br /&gt;
:   It happens in the error path, should call snd_pcm_free() instead.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix infinite loop in htimestamp of dmix, dsnoop and dshare plugins&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fill SND_CHMAP_NA to silent channels in route plugin&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of SND_CHMAP_UNKNOWN, fill SND_CHMAP_NA to the silent channels.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: A few doxygen fixes for chmap stuff&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix the conversion from string to chmap position&lt;br /&gt;
:   &lt;br /&gt;
:   Use strncasecmp() to allow lower cases, and also evaluate the inverted&lt;br /&gt;
:   phase suffix, too.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Define MONO and other channel map positions&lt;br /&gt;
:   &lt;br /&gt;
:   Follow the new definitions in the kernel side.  MONO and others have&lt;br /&gt;
:   been added, and the order of position table was changed again.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of a single channel map, multiple channel maps can be provided&lt;br /&gt;
:   in a form of compound (array) to hw and null plugins.  In null&lt;br /&gt;
:   get_chmap, the channel map corresponding to the current channels is&lt;br /&gt;
:   copied from the given channel maps.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add the missing query_chmaps for route plugin&lt;br /&gt;
:   &lt;br /&gt;
:   Also fix the channel count in get_chmap for route plugin.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add chmap options to hw and null plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Add a config definition &amp;quot;chmap&amp;quot; to override (or enhance) the channel&lt;br /&gt;
:   maps.  So far, only a single channel map can be provided, and the&lt;br /&gt;
:   channel count consistency isn't strictly tested at all.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add query_chmaps support to multi plugin&lt;br /&gt;
:   &lt;br /&gt;
:   Also fix some bugs in get_chmap().&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add snd_pcm_chmap_long_name()&lt;br /&gt;
:   &lt;br /&gt;
:   Just return a more verbose name than snd_pcm_chmap_name(), but&lt;br /&gt;
:   including white spaces.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add SND_CHMAP_API_VERSION definition&lt;br /&gt;
:   &lt;br /&gt;
:   Just to make it easier for apps to support chmap conditionally via&lt;br /&gt;
:   simple ifdefs.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add string conversion helper functions for chmap&lt;br /&gt;
:   &lt;br /&gt;
:   Added a few helper functions between chmap and string.&lt;br /&gt;
:   snd_pcm_chmap_type_name() -- a string of the given chmap type&lt;br /&gt;
:   snd_pcm_chmap_name() -- a string of the given channel position&lt;br /&gt;
:   snd_pcm_chmap_print() -- print channel map on the given buffer&lt;br /&gt;
:   snd_pcm_chmap_from_string() -- get a channel position from string&lt;br /&gt;
:   snd_pcm_parse_string() -- parse the whole channel map from string&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Fix prefix for snd_pcm_chmap_type enum members&lt;br /&gt;
:   &lt;br /&gt;
:   Add _TYPE prefix to distinguish from the channel position.&lt;br /&gt;
:   Also add SND_CHMAP_TYPE_LAST entry pointing the last one like other&lt;br /&gt;
:   enums.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Implement snd_pcm_query_chmaps_from_hw()&lt;br /&gt;
:   &lt;br /&gt;
:   This is a function similar like snd_pcm_query_chmaps() but performs&lt;br /&gt;
:   the query without a PCM handle.  The card, device and substream&lt;br /&gt;
:   numbers are passed as well as stream direction.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of passing ambiguous integer array, define snd_pcm_chmap_t and&lt;br /&gt;
:   snd_pcm_chmap_query_t so that user can understand more easily which&lt;br /&gt;
:   element is for what.&lt;br /&gt;
:   &lt;br /&gt;
: - Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
:   &lt;br /&gt;
:   mixer.h already contains some channel position definitions.&lt;br /&gt;
:   To be more consistent over all systems, better to follow the same&lt;br /&gt;
:   order for the new channel map, too.  But since UNKNOWN channel must be&lt;br /&gt;
:   zero but the definition in mixer.h contains -1 as UNKNOWN, simply&lt;br /&gt;
:   shift the value with 1.&lt;br /&gt;
:   &lt;br /&gt;
:   If the conversion is required between SND_CHMAP and SND_MIXER_SCHN,&lt;br /&gt;
:   just increment/decrement 1.  Eventually I'll provide helper functions&lt;br /&gt;
:   for that...&lt;br /&gt;
:   &lt;br /&gt;
: - Define channel map position enum in pcm.h&lt;br /&gt;
:   &lt;br /&gt;
:   The original definition is in sound/asound.h, but we need to export to&lt;br /&gt;
:   alsa-lib users, too.&lt;br /&gt;
:   &lt;br /&gt;
: - Cache the chmap operation errors&lt;br /&gt;
:   &lt;br /&gt;
:   ... not to retry the same error again.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Added the new ops for both external plugins, so the protocol numbers&lt;br /&gt;
:   are incremented.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM plug, route and multi plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Still incomplete implementations.  The query and set ops are missing&lt;br /&gt;
:   for route and multi plugins.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement the channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   Added new channel-mapping API functions.&lt;br /&gt;
:   Not all plugins are covered, especially the route, multi and external&lt;br /&gt;
:   plugins don't work yet.&lt;br /&gt;
:   &lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
===Timer API===&lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
: - ucm: Set uc_mgr-&amp;amp;gt;ctl to NULL after closing it.&lt;br /&gt;
:   &lt;br /&gt;
:   Fixes a double-free bug.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: - Reduce compilation warnings&lt;br /&gt;
:   &lt;br /&gt;
===Configuration===&lt;br /&gt;
: - USB-audio: Add &amp;quot;HP Digital Stereo Headset&amp;quot; to SPDIF blacklist&lt;br /&gt;
:   &lt;br /&gt;
:   Yet another headset without digital I/O.&lt;br /&gt;
:   &lt;br /&gt;
: - Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
:   &lt;br /&gt;
:   When both an SPDIF and an HDMI output are present on HD-audio, both&lt;br /&gt;
:   try to access IEC958 controls with index=0 although one of them must&lt;br /&gt;
:   be wrong.  For avoiding this conflict, the recent kernel code (3.9 and&lt;br /&gt;
:   3.8 stable) moves the IEC958 controls of an SPDIF with index=16 once&lt;br /&gt;
:   when the conflict happens.&lt;br /&gt;
:   &lt;br /&gt;
:   In this patch, the corresponding support is added in alsa-lib side.&lt;br /&gt;
:   The new &amp;quot;skip_rest&amp;quot; boolean flag is added to the hooked element&lt;br /&gt;
:   definition which indicates that the rest of element array will be&lt;br /&gt;
:   ignored once when this element is present and evaluated.  With this&lt;br /&gt;
:   new flag, the HD-audio config takes index=16 primarily, then take&lt;br /&gt;
:   index=0 as fallback.&lt;br /&gt;
:   &lt;br /&gt;
: - conf: Fix a memory access violation resulting from improper error propogation&lt;br /&gt;
:   &lt;br /&gt;
:   Fixes an issue where a variable is used undeclared, which can cause seg&lt;br /&gt;
:   faults on some systems if the configuration file is not formatted&lt;br /&gt;
:   properly.&lt;br /&gt;
:   &lt;br /&gt;
: - conf: Add chmap definitions to TRIDENT and SI7018 configurations&lt;br /&gt;
:   &lt;br /&gt;
:   Manually add the channel map definitions as the channel front/rear is&lt;br /&gt;
:   determined dynamically.&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of a single channel map, multiple channel maps can be provided&lt;br /&gt;
:   in a form of compound (array) to hw and null plugins.  In null&lt;br /&gt;
:   get_chmap, the channel map corresponding to the current channels is&lt;br /&gt;
:   copied from the given channel maps.&lt;br /&gt;
:   &lt;br /&gt;
: - Add chmap override definitions for Emu10k1, Audigy and Audigy2 cards&lt;br /&gt;
:   &lt;br /&gt;
:   These cards won't provide the channel maps from the driver itself&lt;br /&gt;
:   because of the dynamic routing.  For simplicity, define chmaps in the&lt;br /&gt;
:   configurations, so that chmap querying of individual stereo streams&lt;br /&gt;
:   and combined multi streams works properly.&lt;br /&gt;
:   &lt;br /&gt;
===Documentation===&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: - Optimize NULL check in snd_dlobj_cache_put()&lt;br /&gt;
:   &lt;br /&gt;
: - Clean up dlobj cache only when no user is present&lt;br /&gt;
:   &lt;br /&gt;
:   Cleaning up the dlobj cache seems crashing some cases when the library&lt;br /&gt;
:   is used from another plugin like openal-soft.  A simple workaround is&lt;br /&gt;
:   to do the cleanup only when really no user is left, i.e. after all&lt;br /&gt;
:   close calls.&lt;br /&gt;
:   &lt;br /&gt;
:   Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=814250&lt;br /&gt;
:   &lt;br /&gt;
===Error handler===&lt;br /&gt;
: - Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
:   &lt;br /&gt;
:   This is required so we can make other functions reentrant (such as&lt;br /&gt;
:   snd_device_name_hint()).&lt;br /&gt;
:   The default error handling function snd_lib_error_default() now checks&lt;br /&gt;
:   if a local handler exists, and if so, calls it. Otherwise, the previous&lt;br /&gt;
:   behavior is unchanged.&lt;br /&gt;
:   &lt;br /&gt;
===External Control Plugin SDK===&lt;br /&gt;
: - all places: doxygen cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   I see no errors with these changes using doxygen 1.8.1.1 .&lt;br /&gt;
:   &lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: - PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of passing ambiguous integer array, define snd_pcm_chmap_t and&lt;br /&gt;
:   snd_pcm_chmap_query_t so that user can understand more easily which&lt;br /&gt;
:   element is for what.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Added the new ops for both external plugins, so the protocol numbers&lt;br /&gt;
:   are incremented.&lt;br /&gt;
:   &lt;br /&gt;
===External PCM I/O Plugin SDK===&lt;br /&gt;
: - PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of passing ambiguous integer array, define snd_pcm_chmap_t and&lt;br /&gt;
:   snd_pcm_chmap_query_t so that user can understand more easily which&lt;br /&gt;
:   element is for what.&lt;br /&gt;
:   &lt;br /&gt;
: - Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
:   &lt;br /&gt;
:   Added the new ops for both external plugins, so the protocol numbers&lt;br /&gt;
:   are incremented.&lt;br /&gt;
:   &lt;br /&gt;
===Kernel Headers===&lt;br /&gt;
: - PCM: Add more chmap definitions for UAC2&lt;br /&gt;
:   &lt;br /&gt;
:   The new PCM chmap positions have been added in (to be) 3.8-rc1 kernel,&lt;br /&gt;
:   and now updated alsa-lib, too.&lt;br /&gt;
:   &lt;br /&gt;
: - Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of keeping modified asound.h and asequencer.h, copy the files&lt;br /&gt;
:   in the kernel include/uapi/sound as is, and give some renames for&lt;br /&gt;
:   avoiding conflicts with alsa-lib's definitions.&lt;br /&gt;
:   &lt;br /&gt;
:   Some structs, unions and typedefs in asound.h and asequencer.h are&lt;br /&gt;
:   once renamed in local.h before inclusion, then renamed back again.&lt;br /&gt;
:   &lt;br /&gt;
:   A bonus by this action is that some local codes don't have to refer to&lt;br /&gt;
:   sndrv_xxx any longer.  However, some codes like src/seq/seq.c need&lt;br /&gt;
:   explicit cast because of unavoidable conflicts of struct types.&lt;br /&gt;
:   &lt;br /&gt;
:   Another significant change is that now snd_pcm_sw_params.period_event&lt;br /&gt;
:   field is removed.  Instead, try to access the last reserved field&lt;br /&gt;
:   internally.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: fix 64-bit SNDRV_PCM_IOCTL_STATUS ABI breakage&lt;br /&gt;
:   &lt;br /&gt;
:   Commit cf40ea169aad (pcm: support for audio timestamps) added the new&lt;br /&gt;
:   audio_tstamp field to struct sndrv_pcm_status.  However, struct timespec&lt;br /&gt;
:   requires 64-bit alignment, so the 64-bit compiler would insert&lt;br /&gt;
:   32 bits of padding before this field, which broke SNDRV_PCM_IOCTL_STATUS&lt;br /&gt;
:   with error messages like this:&lt;br /&gt;
:   &lt;br /&gt;
:   kernel: unknown ioctl = 0x80984120&lt;br /&gt;
:   &lt;br /&gt;
:   To solve this, insert the padding explicitly so that it can be taken&lt;br /&gt;
:   into account when calculating the ABI structure size.&lt;br /&gt;
:   &lt;br /&gt;
: - pcm: support for audio timestamps&lt;br /&gt;
:   &lt;br /&gt;
:   add new snd_pcm_status_get_audio_htstamp() routine to&lt;br /&gt;
:   query the audio timestamps provided by the kernel.&lt;br /&gt;
:   &lt;br /&gt;
:   This change provides applications with better ways&lt;br /&gt;
:   to track elapsed time. Before this patch, applications&lt;br /&gt;
:   would subtract queued samples (delay) from written samples,&lt;br /&gt;
:   resulting in a 1-2 sample error.&lt;br /&gt;
:   &lt;br /&gt;
:   Also add snd_pcm_hw_params_supports_audio_wallclock_ts()&lt;br /&gt;
:   to query what the hardware supports.&lt;br /&gt;
:   &lt;br /&gt;
:   TODO: check protocol compatibility?&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Define MONO and other channel map positions&lt;br /&gt;
:   &lt;br /&gt;
:   Follow the new definitions in the kernel side.  MONO and others have&lt;br /&gt;
:   been added, and the order of position table was changed again.&lt;br /&gt;
:   &lt;br /&gt;
: - Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
:   &lt;br /&gt;
:   mixer.h already contains some channel position definitions.&lt;br /&gt;
:   To be more consistent over all systems, better to follow the same&lt;br /&gt;
:   order for the new channel map, too.  But since UNKNOWN channel must be&lt;br /&gt;
:   zero but the definition in mixer.h contains -1 as UNKNOWN, simply&lt;br /&gt;
:   shift the value with 1.&lt;br /&gt;
:   &lt;br /&gt;
:   If the conversion is required between SND_CHMAP and SND_MIXER_SCHN,&lt;br /&gt;
:   just increment/decrement 1.  Eventually I'll provide helper functions&lt;br /&gt;
:   for that...&lt;br /&gt;
:   &lt;br /&gt;
: - Implement the channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   Added new channel-mapping API functions.&lt;br /&gt;
:   Not all plugins are covered, especially the route, multi and external&lt;br /&gt;
:   plugins don't work yet.&lt;br /&gt;
:   &lt;br /&gt;
===Test/Example code===&lt;br /&gt;
: - pcm: support for audio timestamps&lt;br /&gt;
:   &lt;br /&gt;
:   add new snd_pcm_status_get_audio_htstamp() routine to&lt;br /&gt;
:   query the audio timestamps provided by the kernel.&lt;br /&gt;
:   &lt;br /&gt;
:   This change provides applications with better ways&lt;br /&gt;
:   to track elapsed time. Before this patch, applications&lt;br /&gt;
:   would subtract queued samples (delay) from written samples,&lt;br /&gt;
:   resulting in a 1-2 sample error.&lt;br /&gt;
:   &lt;br /&gt;
:   Also add snd_pcm_hw_params_supports_audio_wallclock_ts()&lt;br /&gt;
:   to query what the hardware supports.&lt;br /&gt;
:   &lt;br /&gt;
:   TODO: check protocol compatibility?&lt;br /&gt;
:   &lt;br /&gt;
: - test: add audio_time&lt;br /&gt;
:   &lt;br /&gt;
:   Simple test to create playback and capture streams, and&lt;br /&gt;
:   check elapsed time vs. sample counts reported by driver.&lt;br /&gt;
:   This should be helpful for driver developers and anyone&lt;br /&gt;
:   interested in system/audio time drift.&lt;br /&gt;
:   &lt;br /&gt;
:   tested only on HDAudio&lt;br /&gt;
:   &lt;br /&gt;
:   [added Makefile.am change by tiwai]&lt;br /&gt;
:   &lt;br /&gt;
:   TODO:&lt;br /&gt;
:   - make period configurable&lt;br /&gt;
:   - better output messages&lt;br /&gt;
:   - support for wall clock when it's in the mainline&lt;br /&gt;
:   &lt;br /&gt;
: - test/chmap: Fix wrong malloc size&lt;br /&gt;
:   &lt;br /&gt;
: - PCM: Add string conversion helper functions for chmap&lt;br /&gt;
:   &lt;br /&gt;
:   Added a few helper functions between chmap and string.&lt;br /&gt;
:   snd_pcm_chmap_type_name() -- a string of the given chmap type&lt;br /&gt;
:   snd_pcm_chmap_name() -- a string of the given channel position&lt;br /&gt;
:   snd_pcm_chmap_print() -- print channel map on the given buffer&lt;br /&gt;
:   snd_pcm_chmap_from_string() -- get a channel position from string&lt;br /&gt;
:   snd_pcm_parse_string() -- parse the whole channel map from string&lt;br /&gt;
:   &lt;br /&gt;
: - Fix duplicated channel entry in test/chmap.c&lt;br /&gt;
:   &lt;br /&gt;
: - Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
:   &lt;br /&gt;
: - Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
:   &lt;br /&gt;
:   mixer.h already contains some channel position definitions.&lt;br /&gt;
:   To be more consistent over all systems, better to follow the same&lt;br /&gt;
:   order for the new channel map, too.  But since UNKNOWN channel must be&lt;br /&gt;
:   zero but the definition in mixer.h contains -1 as UNKNOWN, simply&lt;br /&gt;
:   shift the value with 1.&lt;br /&gt;
:   &lt;br /&gt;
:   If the conversion is required between SND_CHMAP and SND_MIXER_SCHN,&lt;br /&gt;
:   just increment/decrement 1.  Eventually I'll provide helper functions&lt;br /&gt;
:   for that...&lt;br /&gt;
:   &lt;br /&gt;
: - Add test/chmap program&lt;br /&gt;
:   &lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
:   &lt;br /&gt;
:   It may be useful to have the file location configurable.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: move systemd config to the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
: - configure: Fix obsolete AM_CONFIG_HEADER macro&lt;br /&gt;
:   &lt;br /&gt;
:   Automake-1.13 removed long obsolete AM_CONFIG_HEADER completely (&lt;br /&gt;
:   http://lists.gnu.org/archive/html/automake/2012-12/msg00038.html )&lt;br /&gt;
:   and errors out upon seeing it.&lt;br /&gt;
:   &lt;br /&gt;
:   Attached patch replaces it with proper AC_CONFIG_HEADERS.&lt;br /&gt;
:   &lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: - alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
:   &lt;br /&gt;
:   It may be useful to have the file location configurable.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: revert back old systemd static units with the /etc/alsa/state-daemon.conf switch&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add --nice and --sched-idle options&lt;br /&gt;
:   &lt;br /&gt;
:   The state management can run at low priority, add --nice and --sched-idle&lt;br /&gt;
:   options to set the scheduler.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: daemon mode - remove disconnected cards&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: move systemd config to the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add event filter and cache for the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: Improved command line argument handling...&lt;br /&gt;
:   &lt;br /&gt;
:   Improve command line argument handling for future extensions.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: add the daemon mode&lt;br /&gt;
:   &lt;br /&gt;
:   For the plug-and-play hardware, like USB devices, it may be helpful&lt;br /&gt;
:   to manage the sound state periodically, before the devices are removed.&lt;br /&gt;
:   &lt;br /&gt;
:   This change implements new commands 'daemon' and 'rdaemon' to save&lt;br /&gt;
:   the sound state in defined intervals when the sound controls are changed.&lt;br /&gt;
:   &lt;br /&gt;
:   The udev rules can notify the daemon using the 'kill' or 'nrestore'&lt;br /&gt;
:   commands to rescan available cards in the system.&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: small code reorder to avoid memory leaks&lt;br /&gt;
:   &lt;br /&gt;
: - alsactl: safe state store and memory allocation cleanups&lt;br /&gt;
:   &lt;br /&gt;
:   - store new configuration to file + &amp;quot;.new&amp;quot; extension, rename later&lt;br /&gt;
:   - free the configuration tree on exit from load_state()/save_state()&lt;br /&gt;
:   - call snd_config_update_free_global() at the end of command blocks&lt;br /&gt;
:   &lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: - speaker-test: change the interrupt handling logic to follow aplay/arecord&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: try to call snd_pcm_close() when a signal is received&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: increase the maximum supported rate to 384000&lt;br /&gt;
:   &lt;br /&gt;
:   There are some devices around supporting this sample rate so let's make&lt;br /&gt;
:   speaker-test capable to deal with them.&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: Update man page for chmap option&lt;br /&gt;
:   &lt;br /&gt;
: - speaker-test: Add support for channel mapping API&lt;br /&gt;
:   &lt;br /&gt;
:   The surround channel map follows the given channel map from the&lt;br /&gt;
:   driver if available.&lt;br /&gt;
:   &lt;br /&gt;
:   Also, the channels can be specified manually via -m option.&lt;br /&gt;
:   Pass the channel map like &amp;quot;FL,FR,FC,LFE&amp;quot;.&lt;br /&gt;
:   &lt;br /&gt;
===alsaloop===&lt;br /&gt;
: - alsaloop: Fix missing #endif&lt;br /&gt;
:   &lt;br /&gt;
:   Sorry, forgotten.&lt;br /&gt;
:   &lt;br /&gt;
: - alsaloop: Make alsaloop working without libsamplerate&lt;br /&gt;
:   &lt;br /&gt;
:   When alsaloop is built with libsamplerate, it quits immediately with&lt;br /&gt;
:   No libsamplerate suppor&lt;br /&gt;
:   message.  It's because the check of -A option and it's set as default&lt;br /&gt;
:   non-zero value.&lt;br /&gt;
:   &lt;br /&gt;
===alsamixer===&lt;br /&gt;
: - alsamixer: Use isatty() to check the terminal (interactive) availability&lt;br /&gt;
:   &lt;br /&gt;
: - alsamixer: fix handling of removed controls&lt;br /&gt;
:   &lt;br /&gt;
:   When we get a notification that an element has been removed, we have to&lt;br /&gt;
:   recreate our internal control representation to avoid accessing freed&lt;br /&gt;
:   memory.  (And the checking for SND_CTL_EVENT_MASK_REMOVE should actually&lt;br /&gt;
:   be done correctly while we're at it.)&lt;br /&gt;
:   &lt;br /&gt;
===amixer===&lt;br /&gt;
: - amixer: Use the alsa-lib functions for id print and parse and value parse&lt;br /&gt;
:   &lt;br /&gt;
: - amixer: Fix dB value outputs in amixer contents&lt;br /&gt;
:   &lt;br /&gt;
:   Add missing cast to signed int for DB_MINMAX* types.&lt;br /&gt;
:   &lt;br /&gt;
: - amixer: Fix parsing container TLV entries&lt;br /&gt;
:   &lt;br /&gt;
:   Fix the wrong calculation of the size of a container TLV entry, which&lt;br /&gt;
:   resulted in &amp;quot;TLV size error&amp;quot; messages.&lt;br /&gt;
:   &lt;br /&gt;
: - amixer: fix rounding of relative changes&lt;br /&gt;
:   &lt;br /&gt;
:   When doing control changes by a relative amount, amixer used the wrong&lt;br /&gt;
:   rounding direction, which would make it possible to stay at the same raw&lt;br /&gt;
:   value if the step was not big enough to reach the next value.&lt;br /&gt;
:   &lt;br /&gt;
:   Reported-by: Honza Javorek &amp;amp;lt;jan.javorek@gmail.com&amp;amp;gt;&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: - aplay/arecord: change the interrupt handling using snd_pcm_abort()&lt;br /&gt;
:   &lt;br /&gt;
:   It is required (exclude the fatal SIGABRT) to call snd_pcm_close() and&lt;br /&gt;
:   the end of work (outside of the interrupt handler). Use new snd_pcm_abort()&lt;br /&gt;
:   function to inform alsa-lib to not ignore EINTR and move the in_aborting&lt;br /&gt;
:   variable to the global scope to be checked in the i/o loops.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay/arecord: added isatty() check (interactive mode)&lt;br /&gt;
:   &lt;br /&gt;
:   Turn off the interactive mode when stdin is not a tty.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: Add the support for big-endian WAV format (RIFX)&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: Show usage if no parameter is passed&lt;br /&gt;
:   &lt;br /&gt;
:   When aplay/arecord are called without any argument the application hangs forever.&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of hanging, print the usage and exit.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: fix typo &amp;amp; silence warning..&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: More support for channel map option&lt;br /&gt;
:   &lt;br /&gt;
:   Now aplay tries to follow the given channel map by rearranging the&lt;br /&gt;
:   channels even when the channel map override isn't allowed but if the&lt;br /&gt;
:   device is still capable to return a channel map.&lt;br /&gt;
:   &lt;br /&gt;
:   Also update the man page appropriately.&lt;br /&gt;
:   &lt;br /&gt;
: - aplay: Add support for channel mapping&lt;br /&gt;
:   &lt;br /&gt;
:   With -m option, user can specify the order of channel map.&lt;br /&gt;
:   As of this commit, it just tries to override the channel map, thus it&lt;br /&gt;
:   works only on devices that support the channel map override like HDMI.&lt;br /&gt;
:   Adjusting the channel order in aplay itself will be added later.&lt;br /&gt;
:   &lt;br /&gt;
==alsa-tools==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
: - ac3dec: Remove the ac3dec tool&lt;br /&gt;
:   &lt;br /&gt;
:   There may be some licencing issues for the name and decoder (it is not&lt;br /&gt;
:   build in the Fedora distro anyway).&lt;br /&gt;
:   &lt;br /&gt;
:   Sources will stay in repos, but almost all current players are able&lt;br /&gt;
:   to handle DD AC-3.&lt;br /&gt;
:   &lt;br /&gt;
: - Release v1.0.26.1&lt;br /&gt;
:   &lt;br /&gt;
===HDA Jack Retask===&lt;br /&gt;
: - hdajackretask: Some more UI fixes&lt;br /&gt;
:   &lt;br /&gt;
:   - don't overwrite a set advanced override unless necessary&lt;br /&gt;
:   - fix &amp;quot;not present&amp;quot; never selected&lt;br /&gt;
:   - remove some trailing whitespaces&lt;br /&gt;
:   &lt;br /&gt;
: - hdajackretask: Fix &amp;quot;advanced override&amp;quot; bug&lt;br /&gt;
:   &lt;br /&gt;
:   The values were not correctly retreived from the comboboxes.&lt;br /&gt;
:   &lt;br /&gt;
: - Add foreign automake option to hdajackretask/Makefile.am&lt;br /&gt;
:   &lt;br /&gt;
: - hdajackretask: Add missing header files to tar-ball distribution&lt;br /&gt;
:   &lt;br /&gt;
===ac3dec (Dolby Digital Decoder)===&lt;br /&gt;
: - ac3dec: Remove the ac3dec tool&lt;br /&gt;
:   &lt;br /&gt;
:   There may be some licencing issues for the name and decoder (it is not&lt;br /&gt;
:   build in the Fedora distro anyway).&lt;br /&gt;
:   &lt;br /&gt;
:   Sources will stay in repos, but almost all current players are able&lt;br /&gt;
:   to handle DD AC-3.&lt;br /&gt;
:   &lt;br /&gt;
: - ac3dec: Show usage if no parameter is passed&lt;br /&gt;
:   &lt;br /&gt;
:   When ac3dec is called without any argument the application hangs forever.&lt;br /&gt;
:   &lt;br /&gt;
:   Instead of hanging, print the usage and exit.&lt;br /&gt;
:   &lt;br /&gt;
===ld10k1 (EMU10K1+ DSP Code Loader)===&lt;br /&gt;
: - (q)lo10k1: updated INSTALL files&lt;br /&gt;
:   &lt;br /&gt;
===qlo10k1===&lt;br /&gt;
: - (q)lo10k1: updated INSTALL files&lt;br /&gt;
:   &lt;br /&gt;
==alsa-plugins==&lt;br /&gt;
===Core===&lt;br /&gt;
: - Release v1.0.27&lt;br /&gt;
:   &lt;br /&gt;
===A52 Output plugin===&lt;br /&gt;
: - a52: Fix build errors&lt;br /&gt;
:   &lt;br /&gt;
:   I merged somehow a half-baked patch mistakenly.  Fixed now.&lt;br /&gt;
:   &lt;br /&gt;
: - a52: Add the support of recent libavcodec / libavutil&lt;br /&gt;
:   &lt;br /&gt;
:   The recent avcodec requires the planar support, which is essentially&lt;br /&gt;
:   non-interleaved formats.  We need to limit the accepted access types&lt;br /&gt;
:   depending on it.&lt;br /&gt;
:   &lt;br /&gt;
===PulseAudio -&amp;amp;gt; ALSA plugin===&lt;br /&gt;
: - pulse: pulse_pcm_poll_revents should return 0 on success&lt;br /&gt;
:   &lt;br /&gt;
: - pcm_pulse: set prebuf parameter according to software parameters&lt;br /&gt;
:   &lt;br /&gt;
:   The current default value for prebuf is very high, almost the full&lt;br /&gt;
:   virtual ALSA buffer. This breaks some application especially where&lt;br /&gt;
:   low latency is involved.&lt;br /&gt;
:   &lt;br /&gt;
:   This patch makes pcm_pulse implement the sw_params callback and get&lt;br /&gt;
:   the prebuf value from the ALSA software parameters. Thus the&lt;br /&gt;
:   trigger latency is much more like what an ALSA application should&lt;br /&gt;
:   expect from an ALSA PCM device.&lt;br /&gt;
:&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Changes_v1.0.26_v1.0.27</id>
		<title>Changes v1.0.26 v1.0.27</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Changes_v1.0.26_v1.0.27"/>
				<updated>2013-04-12T08:46:22Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
[[Detailed changes v1.0.26 v1.0.27]]&lt;br /&gt;
=Changelog between 1.0.25 and 1.0.27 releases=&lt;br /&gt;
==alsa-firmware==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: configure.in: Remove emi_26_62 reference&lt;br /&gt;
: Remove emi_26_62 firmwares&lt;br /&gt;
: Add firmware for CA0132 DSP&lt;br /&gt;
===Emagic EMI 2|6 Audio Interface Firmware===&lt;br /&gt;
: Remove emi_26_62 firmwares&lt;br /&gt;
===Sound Blaster HDA CA0132 Firmware===&lt;br /&gt;
: Update ca0132 firmware files&lt;br /&gt;
: Add firmware for CA0132 DSP&lt;br /&gt;
=Changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
: Add sys/types.h to include list&lt;br /&gt;
: Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
: configure: do not detect incorrect cross-compiler&lt;br /&gt;
: Fix endian check in local.h&lt;br /&gt;
: configure: Quite AM_CONDITIONAL() arguments&lt;br /&gt;
: Add workaround for conflicting snd_seq_event_t definitions&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
===Control API===&lt;br /&gt;
: control: enhance doc for snd_ctl_ascii_value_parse() function&lt;br /&gt;
: control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
: Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
: control: Simplify using snd_config_get_bool()&lt;br /&gt;
: snd_device_name_hint(): do not use global snd_config.&lt;br /&gt;
: snd_device_name_hint(): do not change the global error handler.&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: Implement the channel mapping API&lt;br /&gt;
===Mixer API===&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
: snd_mixer_poll_descriptors_revents should loop over pollfd&lt;br /&gt;
: mixer: Don't build simple_abst when no libdl is available&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
===PCM API===&lt;br /&gt;
: pcm: direct plugins: do more safe IPC semaphore handling&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
: control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
: pcm: fix typo, should be SND_PCM_STATE_PREPARED.&lt;br /&gt;
: pcm: fix and optimize snd_pcm_areas_copy function&lt;br /&gt;
: snd_pcm_direct_parse_open_conf(): use thread-safe getgrnam_r()&lt;br /&gt;
: PCM: Fix conflict of _snd_pcm_hw_params definitions&lt;br /&gt;
: PCM: shut up a compile &amp;quot;unused parameter&amp;quot; compile warning in pcm_multi.c&lt;br /&gt;
: PCM: Add more chmap definitions for UAC2&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: PCM: Avoid busy loop in snd_pcm_write_areas() with rate plugin&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
: PCM: Fix memory leak for pcm empty and asym plugins&lt;br /&gt;
: pcm: support for audio timestamps&lt;br /&gt;
: PCM: Fix the invalid snd_pcm_close() calls in rate plugin&lt;br /&gt;
: PCM: Fix infinite loop in htimestamp of dmix, dsnoop and dshare plugins&lt;br /&gt;
: PCM: Fill SND_CHMAP_NA to silent channels in route plugin&lt;br /&gt;
: PCM: A few doxygen fixes for chmap stuff&lt;br /&gt;
: PCM: Fix the conversion from string to chmap position&lt;br /&gt;
: PCM: Define MONO and other channel map positions&lt;br /&gt;
: PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
: PCM: Add the missing query_chmaps for route plugin&lt;br /&gt;
: PCM: Add chmap options to hw and null plugins&lt;br /&gt;
: PCM: Add query_chmaps support to multi plugin&lt;br /&gt;
: PCM: Add snd_pcm_chmap_long_name()&lt;br /&gt;
: PCM: Add SND_CHMAP_API_VERSION definition&lt;br /&gt;
: PCM: Add string conversion helper functions for chmap&lt;br /&gt;
: PCM: Fix prefix for snd_pcm_chmap_type enum members&lt;br /&gt;
: PCM: Implement snd_pcm_query_chmaps_from_hw()&lt;br /&gt;
: PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
: Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
: Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
: Define channel map position enum in pcm.h&lt;br /&gt;
: Cache the chmap operation errors&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM plug, route and multi plugins&lt;br /&gt;
: Implement the channel mapping API&lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
===Timer API===&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
: ucm: Set uc_mgr-&amp;amp;gt;ctl to NULL after closing it.&lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
===Configuration===&lt;br /&gt;
: USB-audio: Add &amp;quot;HP Digital Stereo Headset&amp;quot; to SPDIF blacklist&lt;br /&gt;
: Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
: conf: Fix a memory access violation resulting from improper error propogation&lt;br /&gt;
: conf: Add chmap definitions to TRIDENT and SI7018 configurations&lt;br /&gt;
: PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
: Add chmap override definitions for Emu10k1, Audigy and Audigy2 cards&lt;br /&gt;
===Documentation===&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: Optimize NULL check in snd_dlobj_cache_put()&lt;br /&gt;
: Clean up dlobj cache only when no user is present&lt;br /&gt;
===Error handler===&lt;br /&gt;
: Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
===External Control Plugin SDK===&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
===External PCM I/O Plugin SDK===&lt;br /&gt;
: PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
===Kernel Headers===&lt;br /&gt;
: PCM: Add more chmap definitions for UAC2&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: pcm: fix 64-bit SNDRV_PCM_IOCTL_STATUS ABI breakage&lt;br /&gt;
: pcm: support for audio timestamps&lt;br /&gt;
: PCM: Define MONO and other channel map positions&lt;br /&gt;
: Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
: Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
: Implement the channel mapping API&lt;br /&gt;
===Test/Example code===&lt;br /&gt;
: pcm: support for audio timestamps&lt;br /&gt;
: test: add audio_time&lt;br /&gt;
: test/chmap: Fix wrong malloc size&lt;br /&gt;
: PCM: Add string conversion helper functions for chmap&lt;br /&gt;
: Fix duplicated channel entry in test/chmap.c&lt;br /&gt;
: Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
: Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
: Add test/chmap program&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
: alsactl: move systemd config to the daemon mode&lt;br /&gt;
: configure: Fix obsolete AM_CONFIG_HEADER macro&lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
: alsactl: revert back old systemd static units with the /etc/alsa/state-daemon.conf switch&lt;br /&gt;
: alsactl: add --nice and --sched-idle options&lt;br /&gt;
: alsactl: daemon mode - remove disconnected cards&lt;br /&gt;
: alsactl: move systemd config to the daemon mode&lt;br /&gt;
: alsactl: add event filter and cache for the daemon mode&lt;br /&gt;
: alsactl: Improved command line argument handling...&lt;br /&gt;
: alsactl: add the daemon mode&lt;br /&gt;
: alsactl: small code reorder to avoid memory leaks&lt;br /&gt;
: alsactl: safe state store and memory allocation cleanups&lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: speaker-test: change the interrupt handling logic to follow aplay/arecord&lt;br /&gt;
: speaker-test: try to call snd_pcm_close() when a signal is received&lt;br /&gt;
: speaker-test: increase the maximum supported rate to 384000&lt;br /&gt;
: speaker-test: Update man page for chmap option&lt;br /&gt;
: speaker-test: Add support for channel mapping API&lt;br /&gt;
===alsaloop===&lt;br /&gt;
: alsaloop: Fix missing #endif&lt;br /&gt;
: alsaloop: Make alsaloop working without libsamplerate&lt;br /&gt;
===alsamixer===&lt;br /&gt;
: alsamixer: Use isatty() to check the terminal (interactive) availability&lt;br /&gt;
: alsamixer: fix handling of removed controls&lt;br /&gt;
===amixer===&lt;br /&gt;
: amixer: Use the alsa-lib functions for id print and parse and value parse&lt;br /&gt;
: amixer: Fix dB value outputs in amixer contents&lt;br /&gt;
: amixer: Fix parsing container TLV entries&lt;br /&gt;
: amixer: fix rounding of relative changes&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: aplay/arecord: change the interrupt handling using snd_pcm_abort()&lt;br /&gt;
: aplay/arecord: added isatty() check (interactive mode)&lt;br /&gt;
: aplay: Add the support for big-endian WAV format (RIFX)&lt;br /&gt;
: aplay: Show usage if no parameter is passed&lt;br /&gt;
: aplay: fix typo &amp;amp; silence warning..&lt;br /&gt;
: aplay: More support for channel map option&lt;br /&gt;
: aplay: Add support for channel mapping&lt;br /&gt;
==alsa-tools==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: ac3dec: Remove the ac3dec tool&lt;br /&gt;
: Release v1.0.26.1&lt;br /&gt;
===HDA Jack Retask===&lt;br /&gt;
: hdajackretask: Some more UI fixes&lt;br /&gt;
: hdajackretask: Fix &amp;quot;advanced override&amp;quot; bug&lt;br /&gt;
: Add foreign automake option to hdajackretask/Makefile.am&lt;br /&gt;
: hdajackretask: Add missing header files to tar-ball distribution&lt;br /&gt;
===ac3dec (Dolby Digital Decoder)===&lt;br /&gt;
: ac3dec: Remove the ac3dec tool&lt;br /&gt;
: ac3dec: Show usage if no parameter is passed&lt;br /&gt;
===ld10k1 (EMU10K1+ DSP Code Loader)===&lt;br /&gt;
: (q)lo10k1: updated INSTALL files&lt;br /&gt;
===qlo10k1===&lt;br /&gt;
: (q)lo10k1: updated INSTALL files&lt;br /&gt;
==alsa-plugins==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
===A52 Output plugin===&lt;br /&gt;
: a52: Fix build errors&lt;br /&gt;
: a52: Add the support of recent libavcodec / libavutil&lt;br /&gt;
===PulseAudio -&amp;amp;gt; ALSA plugin===&lt;br /&gt;
: pulse: pulse_pcm_poll_revents should return 0 on success&lt;br /&gt;
: pcm_pulse: set prebuf parameter according to software parameters&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Changes_v1.0.26_v1.0.27</id>
		<title>Changes v1.0.26 v1.0.27</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Changes_v1.0.26_v1.0.27"/>
				<updated>2013-04-12T08:46:22Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: 1 revision&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
[[Detailed changes v1.0.26 v1.0.27]]&lt;br /&gt;
=Changelog between 1.0.25 and 1.0.27 releases=&lt;br /&gt;
==alsa-firmware==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: configure.in: Remove emi_26_62 reference&lt;br /&gt;
: Remove emi_26_62 firmwares&lt;br /&gt;
: Add firmware for CA0132 DSP&lt;br /&gt;
===Emagic EMI 2|6 Audio Interface Firmware===&lt;br /&gt;
: Remove emi_26_62 firmwares&lt;br /&gt;
===Sound Blaster HDA CA0132 Firmware===&lt;br /&gt;
: Update ca0132 firmware files&lt;br /&gt;
: Add firmware for CA0132 DSP&lt;br /&gt;
=Changelog between 1.0.26 and 1.0.27 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
: Add sys/types.h to include list&lt;br /&gt;
: Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
: configure: do not detect incorrect cross-compiler&lt;br /&gt;
: Fix endian check in local.h&lt;br /&gt;
: configure: Quite AM_CONDITIONAL() arguments&lt;br /&gt;
: Add workaround for conflicting snd_seq_event_t definitions&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
===Control API===&lt;br /&gt;
: control: enhance doc for snd_ctl_ascii_value_parse() function&lt;br /&gt;
: control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
: Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
: control: Simplify using snd_config_get_bool()&lt;br /&gt;
: snd_device_name_hint(): do not use global snd_config.&lt;br /&gt;
: snd_device_name_hint(): do not change the global error handler.&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: Implement the channel mapping API&lt;br /&gt;
===Mixer API===&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
: snd_mixer_poll_descriptors_revents should loop over pollfd&lt;br /&gt;
: mixer: Don't build simple_abst when no libdl is available&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
===PCM API===&lt;br /&gt;
: pcm: direct plugins: do more safe IPC semaphore handling&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
: control, pcm: implement snd_ctl_abort() and snd_pcm_abort() functions&lt;br /&gt;
: pcm: fix typo, should be SND_PCM_STATE_PREPARED.&lt;br /&gt;
: pcm: fix and optimize snd_pcm_areas_copy function&lt;br /&gt;
: snd_pcm_direct_parse_open_conf(): use thread-safe getgrnam_r()&lt;br /&gt;
: PCM: Fix conflict of _snd_pcm_hw_params definitions&lt;br /&gt;
: PCM: shut up a compile &amp;quot;unused parameter&amp;quot; compile warning in pcm_multi.c&lt;br /&gt;
: PCM: Add more chmap definitions for UAC2&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: PCM: Avoid busy loop in snd_pcm_write_areas() with rate plugin&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
: PCM: Fix memory leak for pcm empty and asym plugins&lt;br /&gt;
: pcm: support for audio timestamps&lt;br /&gt;
: PCM: Fix the invalid snd_pcm_close() calls in rate plugin&lt;br /&gt;
: PCM: Fix infinite loop in htimestamp of dmix, dsnoop and dshare plugins&lt;br /&gt;
: PCM: Fill SND_CHMAP_NA to silent channels in route plugin&lt;br /&gt;
: PCM: A few doxygen fixes for chmap stuff&lt;br /&gt;
: PCM: Fix the conversion from string to chmap position&lt;br /&gt;
: PCM: Define MONO and other channel map positions&lt;br /&gt;
: PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
: PCM: Add the missing query_chmaps for route plugin&lt;br /&gt;
: PCM: Add chmap options to hw and null plugins&lt;br /&gt;
: PCM: Add query_chmaps support to multi plugin&lt;br /&gt;
: PCM: Add snd_pcm_chmap_long_name()&lt;br /&gt;
: PCM: Add SND_CHMAP_API_VERSION definition&lt;br /&gt;
: PCM: Add string conversion helper functions for chmap&lt;br /&gt;
: PCM: Fix prefix for snd_pcm_chmap_type enum members&lt;br /&gt;
: PCM: Implement snd_pcm_query_chmaps_from_hw()&lt;br /&gt;
: PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
: Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
: Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
: Define channel map position enum in pcm.h&lt;br /&gt;
: Cache the chmap operation errors&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM plug, route and multi plugins&lt;br /&gt;
: Implement the channel mapping API&lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
===Timer API===&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
: ucm: Set uc_mgr-&amp;amp;gt;ctl to NULL after closing it.&lt;br /&gt;
===ALSA Lisp===&lt;br /&gt;
: Reduce compilation warnings&lt;br /&gt;
===Configuration===&lt;br /&gt;
: USB-audio: Add &amp;quot;HP Digital Stereo Headset&amp;quot; to SPDIF blacklist&lt;br /&gt;
: Add workaround for conflicting IEC958 controls for HD-audio&lt;br /&gt;
: conf: Fix a memory access violation resulting from improper error propogation&lt;br /&gt;
: conf: Add chmap definitions to TRIDENT and SI7018 configurations&lt;br /&gt;
: PCM: Use compounds for overriding / enhancing chmaps&lt;br /&gt;
: Add chmap override definitions for Emu10k1, Audigy and Audigy2 cards&lt;br /&gt;
===Documentation===&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
===Dynamic Loader helpers===&lt;br /&gt;
: Optimize NULL check in snd_dlobj_cache_put()&lt;br /&gt;
: Clean up dlobj cache only when no user is present&lt;br /&gt;
===Error handler===&lt;br /&gt;
: Add snd_lib_error_set_local() to install a thread-local error handler.&lt;br /&gt;
===External Control Plugin SDK===&lt;br /&gt;
: all places: doxygen cleanups&lt;br /&gt;
===External PCM Filter Plugin SDK===&lt;br /&gt;
: PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
===External PCM I/O Plugin SDK===&lt;br /&gt;
: PCM: Introduce snd_pcm_chmap_t and snd_pcm_chmap_query_t&lt;br /&gt;
: Implement get_chmap/set_chmap for PCM extplug/ioplug plugins&lt;br /&gt;
===Kernel Headers===&lt;br /&gt;
: PCM: Add more chmap definitions for UAC2&lt;br /&gt;
: Merge kernel uapi/sound/asound.h and asequencer.h&lt;br /&gt;
: pcm: fix 64-bit SNDRV_PCM_IOCTL_STATUS ABI breakage&lt;br /&gt;
: pcm: support for audio timestamps&lt;br /&gt;
: PCM: Define MONO and other channel map positions&lt;br /&gt;
: Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
: Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
: Implement the channel mapping API&lt;br /&gt;
===Test/Example code===&lt;br /&gt;
: pcm: support for audio timestamps&lt;br /&gt;
: test: add audio_time&lt;br /&gt;
: test/chmap: Fix wrong malloc size&lt;br /&gt;
: PCM: Add string conversion helper functions for chmap&lt;br /&gt;
: Fix duplicated channel entry in test/chmap.c&lt;br /&gt;
: Add SND_CHMAP_NA and bit flag definitions&lt;br /&gt;
: Follow channel position definitions to mixer channel in mixer.h&lt;br /&gt;
: Add test/chmap program&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
: alsactl: move systemd config to the daemon mode&lt;br /&gt;
: configure: Fix obsolete AM_CONFIG_HEADER macro&lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in&lt;br /&gt;
: alsactl: revert back old systemd static units with the /etc/alsa/state-daemon.conf switch&lt;br /&gt;
: alsactl: add --nice and --sched-idle options&lt;br /&gt;
: alsactl: daemon mode - remove disconnected cards&lt;br /&gt;
: alsactl: move systemd config to the daemon mode&lt;br /&gt;
: alsactl: add event filter and cache for the daemon mode&lt;br /&gt;
: alsactl: Improved command line argument handling...&lt;br /&gt;
: alsactl: add the daemon mode&lt;br /&gt;
: alsactl: small code reorder to avoid memory leaks&lt;br /&gt;
: alsactl: safe state store and memory allocation cleanups&lt;br /&gt;
===Speaker Test===&lt;br /&gt;
: speaker-test: change the interrupt handling logic to follow aplay/arecord&lt;br /&gt;
: speaker-test: try to call snd_pcm_close() when a signal is received&lt;br /&gt;
: speaker-test: increase the maximum supported rate to 384000&lt;br /&gt;
: speaker-test: Update man page for chmap option&lt;br /&gt;
: speaker-test: Add support for channel mapping API&lt;br /&gt;
===alsaloop===&lt;br /&gt;
: alsaloop: Fix missing #endif&lt;br /&gt;
: alsaloop: Make alsaloop working without libsamplerate&lt;br /&gt;
===alsamixer===&lt;br /&gt;
: alsamixer: Use isatty() to check the terminal (interactive) availability&lt;br /&gt;
: alsamixer: fix handling of removed controls&lt;br /&gt;
===amixer===&lt;br /&gt;
: amixer: Use the alsa-lib functions for id print and parse and value parse&lt;br /&gt;
: amixer: Fix dB value outputs in amixer contents&lt;br /&gt;
: amixer: Fix parsing container TLV entries&lt;br /&gt;
: amixer: fix rounding of relative changes&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: aplay/arecord: change the interrupt handling using snd_pcm_abort()&lt;br /&gt;
: aplay/arecord: added isatty() check (interactive mode)&lt;br /&gt;
: aplay: Add the support for big-endian WAV format (RIFX)&lt;br /&gt;
: aplay: Show usage if no parameter is passed&lt;br /&gt;
: aplay: fix typo &amp;amp; silence warning..&lt;br /&gt;
: aplay: More support for channel map option&lt;br /&gt;
: aplay: Add support for channel mapping&lt;br /&gt;
==alsa-tools==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
: ac3dec: Remove the ac3dec tool&lt;br /&gt;
: Release v1.0.26.1&lt;br /&gt;
===HDA Jack Retask===&lt;br /&gt;
: hdajackretask: Some more UI fixes&lt;br /&gt;
: hdajackretask: Fix &amp;quot;advanced override&amp;quot; bug&lt;br /&gt;
: Add foreign automake option to hdajackretask/Makefile.am&lt;br /&gt;
: hdajackretask: Add missing header files to tar-ball distribution&lt;br /&gt;
===ac3dec (Dolby Digital Decoder)===&lt;br /&gt;
: ac3dec: Remove the ac3dec tool&lt;br /&gt;
: ac3dec: Show usage if no parameter is passed&lt;br /&gt;
===ld10k1 (EMU10K1+ DSP Code Loader)===&lt;br /&gt;
: (q)lo10k1: updated INSTALL files&lt;br /&gt;
===qlo10k1===&lt;br /&gt;
: (q)lo10k1: updated INSTALL files&lt;br /&gt;
==alsa-plugins==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.27&lt;br /&gt;
===A52 Output plugin===&lt;br /&gt;
: a52: Fix build errors&lt;br /&gt;
: a52: Add the support of recent libavcodec / libavutil&lt;br /&gt;
===PulseAudio -&amp;amp;gt; ALSA plugin===&lt;br /&gt;
: pulse: pulse_pcm_poll_revents should return 0 on success&lt;br /&gt;
: pcm_pulse: set prebuf parameter according to software parameters&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Template:ALSA_download</id>
		<title>Template:ALSA download</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Template:ALSA_download"/>
				<updated>2013-04-09T08:57:53Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background:#f9f9f9; margin-top: 5px; margin-left:5px; margin-bottom:5px; padding:0px; border:1px solid #aaaaaa; width:27em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:105%; line-height:120%; padding:0.4em; background-color:#eeeeee; border-bottom:1px solid #aaaaaa;&amp;quot;&amp;gt;&lt;br /&gt;
[[Image:Crystal Clear action build.png|right|18px|Download icon]] '''[[Download]] a package'''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background:#ffffff; padding:0.4em; font-size: 95%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
; Current versions&lt;br /&gt;
* [http://www.kernel.org stable linux kernel]&lt;br /&gt;
* {{ALSA download file|module=lib|release=stable}}&lt;br /&gt;
* {{ALSA download file|module=utils|release=stable}}&lt;br /&gt;
* {{ALSA download file|module=tools|release=stable}}&lt;br /&gt;
* {{ALSA download file|module=firmware|release=stable}}&lt;br /&gt;
* {{ALSA download file|module=plugins|release=stable}}&lt;br /&gt;
* {{ALSA download file|module=oss|release=stable}}&lt;br /&gt;
* {{ALSA download file|module=python|release=stable}}&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
; Development versions&lt;br /&gt;
* {{ALSA download file|module=driver|release=development}}&lt;br /&gt;
* {{ALSA download file|module=lib|release=development}}&lt;br /&gt;
* {{ALSA download file|module=utils|release=development}}&lt;br /&gt;
* {{ALSA download file|module=tools|release=development}}&lt;br /&gt;
* {{ALSA download file|module=firmware|release=development}}&lt;br /&gt;
* {{ALSA download file|module=plugins|release=development}}&lt;br /&gt;
* {{ALSA download file|module=oss|release=development}}&lt;br /&gt;
* {{ALSA download file|module=python|release=development}}&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[Category:Info templates|{{PAGENAME}}]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/SMP_Design</id>
		<title>SMP Design</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/SMP_Design"/>
				<updated>2013-01-31T11:14:15Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of commands for returned handle to optimize pthread locking. The snd_*_open() calls are thread safe. The use of returned handles must be serialized in the application using own locking scheme. Standalone (not handle related) functions in alsa-lib should be fully thread safe.&lt;br /&gt;
&lt;br /&gt;
There are a few global variables that are used in alsa-lib, such as the global error handler pointer and the global root config pointer.&lt;br /&gt;
Accessing / modifying these would be thread-unsafe.&lt;br /&gt;
&lt;br /&gt;
If you find a bug in kernel or alsa-lib which breaks these rules, please, let us know.&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-12-17T15:37:34Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Syncing the branch release in alsa-driver.git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        apull = !git checkout release &amp;amp;&amp;amp; git pull origin release &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout build &amp;amp;&amp;amp; git pull origin build &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout mirror &amp;amp;&amp;amp; git pull origin mirror &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout release&lt;br /&gt;
        apush = !git push --tags origin release &amp;amp;&amp;amp; git push origin build &amp;amp;&amp;amp; \&lt;br /&gt;
                 git push origin mirror&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus remotes/origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 remotes/origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Create local branches:&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git checkout build&lt;br /&gt;
 git pull origin build&lt;br /&gt;
 git checkout mirror&lt;br /&gt;
 git pull origin mirror&lt;br /&gt;
 git checkout release&lt;br /&gt;
 git pull origin release&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-12-17T15:37:11Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Syncing the branch release in alsa-driver.git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        apull = !git checkout release &amp;amp;&amp;amp; git pull origin release &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout build &amp;amp;&amp;amp; git pull origin build &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout mirror &amp;amp;&amp;amp; git pull origin mirror &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout release&lt;br /&gt;
	apush = !git push --tags origin release &amp;amp;&amp;amp; git push origin build &amp;amp;&amp;amp; \&lt;br /&gt;
		 git push origin mirror&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus remotes/origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 remotes/origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Create local branches:&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git checkout build&lt;br /&gt;
 git pull origin build&lt;br /&gt;
 git checkout mirror&lt;br /&gt;
 git pull origin mirror&lt;br /&gt;
 git checkout release&lt;br /&gt;
 git pull origin release&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Main_Page"/>
				<updated>2012-11-13T14:42:19Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOEDITSECTION__ __NOTOC__&lt;br /&gt;
=Advanced Linux Sound Architecture (ALSA) project homepage=&lt;br /&gt;
{| cellpadding=0 cellspacing=1&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#FFEFF0;&amp;quot; class=&amp;quot;plainlinks&amp;quot; colspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right;&amp;quot;&amp;gt;{{ALSA download|layout=new}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 130%;&amp;quot;&amp;gt;'''[[Introduction]]'''&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality to the Linux operating system. ALSA has the following significant features:&lt;br /&gt;
* Efficient support for all types of audio interfaces, from consumer sound cards to professional multichannel audio interfaces.&lt;br /&gt;
* Fully modularized sound drivers.&lt;br /&gt;
* SMP and thread-safe design ([[SMP_Design|PLEASE READ THIS]]).&lt;br /&gt;
* User space library (alsa-lib) to simplify application programming and provide higher level functionality.&lt;br /&gt;
* Support for the older Open Sound System (OSS) API, providing binary compatibility for most OSS programs.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#FFFFFF;&amp;quot; class=&amp;quot;plainlinks&amp;quot; colspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
'''Please, help us''' to provide better content and organisation on this wiki. Read the [[AlsaProject:Community_Portal|Community Portal]] for more details.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#E4FFDF;padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
==New ALSA Users==&lt;br /&gt;
We need users to use, test and provide feedback on drivers and applications using ALSA. If you are interested, please subscribe to a [[mailing-lists|mailing list]].&lt;br /&gt;
&lt;br /&gt;
* [[Matrix:Main|Is my soundcard supported?]]&lt;br /&gt;
* [[SoundcardTesting|How do I test my soundcard?]]&lt;br /&gt;
* [[Help To Debug|Help to debug]] | [https://bugtrack.alsa-project.org/alsa-bug/ I found a bug!]&lt;br /&gt;
&lt;br /&gt;
===Other information===&lt;br /&gt;
* [http://alsa.opensrc.org/ Unofficial wiki]&lt;br /&gt;
&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; bgcolor=&amp;quot;#E8F1FF&amp;quot; style=&amp;quot;border-style:solid;border-width:1px;border-color:gray;padding-left:1em;padding-right:0.5em; padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{{ALSA Project News}}&lt;br /&gt;
|-&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#E4FFDF;padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
==Advanced ALSA Users==&lt;br /&gt;
We need users to use, test and provide feedback on drivers and applications using ALSA. If you are interested, please subscribe to a [[mailing-lists|mailing list]].&lt;br /&gt;
&lt;br /&gt;
* [[Help To Debug|Help to debug]] | [https://bugtrack.alsa-project.org/alsa-bug/ I found a bug!]&lt;br /&gt;
* [[Download|How do I install the ALSA driver from source]]&lt;br /&gt;
&lt;br /&gt;
===Other information===&lt;br /&gt;
* [http://alsa.opensrc.org/ Unofficial wiki]&lt;br /&gt;
&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; bgcolor=&amp;quot;#E8F1FF&amp;quot; style=&amp;quot;border-style:solid;border-width:1px;border-color:gray;padding-left:1em;padding-right:0.5em; padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==ALSA Developers==&lt;br /&gt;
We need application developers who choose to use ALSA as the basis for their programs, programmers to work on low level drivers, writers to extend and improve our documentation. If you are interested, please subscribe to a [[mailing-lists|mailing list]].&lt;br /&gt;
&lt;br /&gt;
* [[ALSA Library API|ALSA Library API]]&lt;br /&gt;
* [[Tutorials_and_Presentations|Tutorials for application developers]]&lt;br /&gt;
* [[Developer_Zone|Developers area on this wiki]]&lt;br /&gt;
* [[ALSA_Driver_Documentation|Writing a driver?]]&lt;br /&gt;
* [[ALSA_Soundcard_Vendor_Information|Information for soundcard manufacturers]]&lt;br /&gt;
* [[Alsa_Team|ALSA Team - People]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/SMP_Design</id>
		<title>SMP Design</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/SMP_Design"/>
				<updated>2012-11-13T14:07:40Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of commands for returned handle to optimize pthread locking. The snd_*_open() calls are thread safe. The use of returned handles must be serialized in the application using own locking scheme. Standalone (not handle related) functions in alsa-lib should be fully thread safe.&lt;br /&gt;
&lt;br /&gt;
If you find a bug in kernel or alsa-lib which breaks these rules, please, let us know.&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/SMP_Design</id>
		<title>SMP Design</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/SMP_Design"/>
				<updated>2012-11-13T14:03:12Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: Created page with &amp;quot;The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of co...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The SMP / multithread design has several levels in the ALSA project codebase. The kernel drivers are fully SMP / thread safe. The alsa-lib was designed to allow grouping of commands for returned handle to optimize pthread locking - so the serialization should be done inside an application. The snd_*_open() calls are thread safe. The use of returned handles must be serialized in the application using own locking scheme.&lt;br /&gt;
&lt;br /&gt;
If you find a bug in kernel or alsa-lib which breaks these rules, please, let us know.&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Main_Page"/>
				<updated>2012-11-13T13:56:39Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOEDITSECTION__ __NOTOC__&lt;br /&gt;
=Advanced Linux Sound Architecture (ALSA) project homepage=&lt;br /&gt;
{| cellpadding=0 cellspacing=1&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#FFEFF0;&amp;quot; class=&amp;quot;plainlinks&amp;quot; colspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right;&amp;quot;&amp;gt;{{ALSA download|layout=new}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: 130%;&amp;quot;&amp;gt;'''[[Introduction]]'''&amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality to the Linux operating system. ALSA has the following significant features:&lt;br /&gt;
* Efficient support for all types of audio interfaces, from consumer sound cards to professional multichannel audio interfaces.&lt;br /&gt;
* Fully modularized sound drivers.&lt;br /&gt;
* SMP and thread-safe design ([[SMP_Design|see these notes]]).&lt;br /&gt;
* User space library (alsa-lib) to simplify application programming and provide higher level functionality.&lt;br /&gt;
* Support for the older Open Sound System (OSS) API, providing binary compatibility for most OSS programs.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#FFFFFF;&amp;quot; class=&amp;quot;plainlinks&amp;quot; colspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
'''Please, help us''' to provide better content and organisation on this wiki. Read the [[AlsaProject:Community_Portal|Community Portal]] for more details.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#E4FFDF;padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
==New ALSA Users==&lt;br /&gt;
We need users to use, test and provide feedback on drivers and applications using ALSA. If you are interested, please subscribe to a [[mailing-lists|mailing list]].&lt;br /&gt;
&lt;br /&gt;
* [[Matrix:Main|Is my soundcard supported?]]&lt;br /&gt;
* [[SoundcardTesting|How do I test my soundcard?]]&lt;br /&gt;
* [[Help To Debug|Help to debug]] | [https://bugtrack.alsa-project.org/alsa-bug/ I found a bug!]&lt;br /&gt;
&lt;br /&gt;
===Other information===&lt;br /&gt;
* [http://alsa.opensrc.org/ Unofficial wiki]&lt;br /&gt;
&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; bgcolor=&amp;quot;#E8F1FF&amp;quot; style=&amp;quot;border-style:solid;border-width:1px;border-color:gray;padding-left:1em;padding-right:0.5em; padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
{{ALSA Project News}}&lt;br /&gt;
|-&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|style=&amp;quot;border: 1px solid gray;padding-left:1em;padding-right:0.5em;background:#E4FFDF;padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
==Advanced ALSA Users==&lt;br /&gt;
We need users to use, test and provide feedback on drivers and applications using ALSA. If you are interested, please subscribe to a [[mailing-lists|mailing list]].&lt;br /&gt;
&lt;br /&gt;
* [[Help To Debug|Help to debug]] | [https://bugtrack.alsa-project.org/alsa-bug/ I found a bug!]&lt;br /&gt;
* [[Download|How do I install the ALSA driver from source]]&lt;br /&gt;
&lt;br /&gt;
===Other information===&lt;br /&gt;
* [http://alsa.opensrc.org/ Unofficial wiki]&lt;br /&gt;
&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; bgcolor=&amp;quot;#E8F1FF&amp;quot; style=&amp;quot;border-style:solid;border-width:1px;border-color:gray;padding-left:1em;padding-right:0.5em; padding-bottom:0.5em;&amp;quot; width=&amp;quot;50%&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==ALSA Developers==&lt;br /&gt;
We need application developers who choose to use ALSA as the basis for their programs, programmers to work on low level drivers, writers to extend and improve our documentation. If you are interested, please subscribe to a [[mailing-lists|mailing list]].&lt;br /&gt;
&lt;br /&gt;
* [[ALSA Library API|ALSA Library API]]&lt;br /&gt;
* [[Tutorials_and_Presentations|Tutorials for application developers]]&lt;br /&gt;
* [[Developer_Zone|Developers area on this wiki]]&lt;br /&gt;
* [[ALSA_Driver_Documentation|Writing a driver?]]&lt;br /&gt;
* [[ALSA_Soundcard_Vendor_Information|Information for soundcard manufacturers]]&lt;br /&gt;
* [[Alsa_Team|ALSA Team - People]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T10:34:44Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Clone repositories */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        apull = !git checkout release &amp;amp;&amp;amp; git pull origin release &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout build &amp;amp;&amp;amp; git pull origin build &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout mirror &amp;amp;&amp;amp; git pull origin mirror &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout release&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus remotes/origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 remotes/origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Create local branches:&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git checkout build&lt;br /&gt;
 git pull origin build&lt;br /&gt;
 git checkout mirror&lt;br /&gt;
 git pull origin mirror&lt;br /&gt;
 git checkout release&lt;br /&gt;
 git pull origin release&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:57:49Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Syncing the branch release in alsa-driver.git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        apull = !git checkout release &amp;amp;&amp;amp; git pull origin release &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout build &amp;amp;&amp;amp; git pull origin build &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout mirror &amp;amp;&amp;amp; git pull origin mirror &amp;amp;&amp;amp; \&lt;br /&gt;
                 git checkout release&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Create local branches:&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git checkout build&lt;br /&gt;
 git pull origin build&lt;br /&gt;
 git checkout mirror&lt;br /&gt;
 git pull origin mirror&lt;br /&gt;
 git checkout release&lt;br /&gt;
 git pull origin release&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:55:57Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* get up to date */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Create local branches:&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git checkout build&lt;br /&gt;
 git pull origin build&lt;br /&gt;
 git checkout mirror&lt;br /&gt;
 git pull origin mirror&lt;br /&gt;
 git checkout release&lt;br /&gt;
 git pull origin release&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:55:34Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* get up to date */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Create local branches:&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git checkout build&lt;br /&gt;
 git pull origin build&lt;br /&gt;
 git checkout release&lt;br /&gt;
 git pull origin release&lt;br /&gt;
 git checkout &lt;br /&gt;
 git pull origin release&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:51:16Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* clone the repository */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Create local branches:&lt;br /&gt;
&lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:50:34Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* clone the repository */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
 cd alsa-driver&lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:50:21Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* clone the repository */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
 git branch build remotes/origin/build&lt;br /&gt;
 git branch mirror remotes/origin/mirror&lt;br /&gt;
 git branch release remotes/origin/release&lt;br /&gt;
&lt;br /&gt;
If you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
Note: You may do changes directly in the Linus's kernel GIT tree and send the patches from it.&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:39:39Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Push branch changes to ALSA GIT repository */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master&lt;br /&gt;
 git push --tags origin linux-2.6&lt;br /&gt;
 git push --tags origin for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:38:46Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Rules for alsa-kprivate.git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:38:10Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Rules for alsa-kernel.git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git and the mirror branch in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master:refs/heads/master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-25T09:37:38Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: /* Syncing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master:refs/heads/master&lt;br /&gt;
&lt;br /&gt;
===Syncing the branch release in alsa-driver.git===&lt;br /&gt;
&lt;br /&gt;
  Please, use --log for the git merge command to show the &amp;quot;subject&amp;quot; of commits.&lt;br /&gt;
  It might be handy to define these git aliases in your .git/config file:&lt;br /&gt;
&lt;br /&gt;
  [alias]&lt;br /&gt;
        bmerge = !git checkout release &amp;amp;&amp;amp; git merge --log build&lt;br /&gt;
        mmerge = !git checkout release &amp;amp;&amp;amp; git merge --log mirror&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version</id>
		<title>Template:ALSA download version</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version"/>
				<updated>2012-09-06T15:35:53Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ #switch: {{{module}}}&lt;br /&gt;
| driver={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| lib={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| utils={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| tools={{ #switch: {{{release}}} | stable=1.0.26.1 | development=none }}&lt;br /&gt;
| firmware={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| plugins={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| oss={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| python={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| Unknown please edit!&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version</id>
		<title>Template:ALSA download version</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version"/>
				<updated>2012-09-06T09:02:10Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ #switch: {{{module}}}&lt;br /&gt;
| driver={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| lib={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| utils={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| tools={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| firmware={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| plugins={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| oss={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| python={{ #switch: {{{release}}} | stable=1.0.26 | development=none }}&lt;br /&gt;
| Unknown please edit!&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Main_Page_News</id>
		<title>Main Page News</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Main_Page_News"/>
				<updated>2012-09-06T09:01:30Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;; 2012-09-06&lt;br /&gt;
: alsa 1.0.26 release (user space) | [[Changes v1.0.25 v1.0.26]]&lt;br /&gt;
&lt;br /&gt;
; 2012-01-25&lt;br /&gt;
: alsa 1.0.25 release | [[Changes v1.0.24 v1.0.25]]&lt;br /&gt;
&lt;br /&gt;
; 2011-01-31&lt;br /&gt;
: alsa 1.0.24 release | [[Changes v1.0.23 v1.0.24]]&lt;br /&gt;
&lt;br /&gt;
; 2010-04-16&lt;br /&gt;
: alsa 1.0.23 release | [[Changes v1.0.22 v1.0.23]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-28&lt;br /&gt;
: alsa-driver 1.0.22.1 release | [[Changes v1.0.22 v1.0.22.1]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-16&lt;br /&gt;
: alsa 1.0.22 release | [[Changes v1.0.21 v1.0.22]]&lt;br /&gt;
&lt;br /&gt;
; 2009-09-09&lt;br /&gt;
: alsa-lib 1.0.21a release | [[Changes v1.0.21 v1.0.21a]]&lt;br /&gt;
&lt;br /&gt;
; 2009-08-31&lt;br /&gt;
: alsa 1.0.21 release | [[Changes v1.0.20 v1.0.21|changes from 1.0.20]]&lt;br /&gt;
&lt;br /&gt;
; 2009-05-06&lt;br /&gt;
: alsa 1.0.20 release | [[Changes v1.0.19 v1.0.20|changes from 1.0.19]]&lt;br /&gt;
&lt;br /&gt;
; 2009-01-19&lt;br /&gt;
: alsa 1.0.19 release | [[Changes v1.0.18 v1.0.19|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-11-12&lt;br /&gt;
: alsa-driver 1.0.18a release | [[Changes v1.0.18 v1.0.18a|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-10-29&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-tools,alsa-plugins 1.0.18 release | [[Changes v1.0.18rc3 v1.0.18|changes from 1.0.18rc3]] | [[Changes v1.0.17 v1.0.18|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-09-09&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-plugins 1.0.18rc3 release | [[Changes v1.0.18rc2 v1.0.18rc3|changes from 1.0.18rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-19&lt;br /&gt;
: alsa-utils,alsa-plugins 1.0.18rc2 release | [[Changes v1.0.18rc1 v1.0.18rc2|changes from 1.0.18rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-driver.alsa-utils,alsa-plugins 1.0.18rc1 release | [[Changes v1.0.17a v1.0.18rc1|changes from 1.0.17a]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-lib 1.0.17a release | [[Changes v1.0.17 v1.0.17a|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-07-14&lt;br /&gt;
: ALSA 1.0.17 release (all packages) | [[Changes v1.0.17rc3 v1.0.17|changes from 1.0.17rc3]] | [[Changes v1.0.16 v1.0.17|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-27&lt;br /&gt;
: ALSA 1.0.17rc3 release (driver only) | [[Changes v1.0.17rc2 v1.0.17rc3|changes from 1.0.17rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-16&lt;br /&gt;
: ALSA 1.0.17rc2 release | [[Changes v1.0.17rc1 v1.0.17rc2|changes from 1.0.17rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-06&lt;br /&gt;
: ALSA 1.0.17rc1 release | [[Changes v1.0.16 v1.0.17rc1|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-05-20&lt;br /&gt;
: All repositories converted from HG (Mercurial) to GIT&lt;br /&gt;
&lt;br /&gt;
; 2008-02-06&lt;br /&gt;
: ALSA 1.0.16 final release | [[Changes v1.0.15 v1.0.16|changes from 1.0.15]] | [[Changes v1.0.16rc2 v1.0.16|changes from 1.0.16rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-29&lt;br /&gt;
: ALSA 1.0.16rc2 release | [[Changes v1.0.16rc1 v1.0.16rc2|changes from 1.0.16rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-22&lt;br /&gt;
: ALSA 1.0.16rc1 release | [[Changes v1.0.15 v1.0.16rc1|changes from 1.0.15]]&lt;br /&gt;
&lt;br /&gt;
; 2007-10-16&lt;br /&gt;
: ALSA 1.0.15 final release | [[Changes v1.0.14 v1.0.15|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-26&lt;br /&gt;
: ALSA 1.0.15rc3 release | [[Changes v1.0.15rc2 v1.0.15rc3|changes from 1.0.15rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-13&lt;br /&gt;
: ALSA 1.0.15rc2 release | [[Changes v1.0.15rc1 v1.0.15rc2|changes from 1.0.15rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-31&lt;br /&gt;
: ALSA 1.0.15rc1 release | [[Changes v1.0.14 v1.0.15rc1|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-09&lt;br /&gt;
: ALSA WWW site switched to [http://www.mediawiki.org MediaWiki]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-11&lt;br /&gt;
: ALSA 1.0.14a library bugfix release | [[Changes v1.0.14 v1.0.14a|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-04&lt;br /&gt;
: ALSA 1.0.14 release | [[Changes v1.0.13 v1.0.14|changes from 1.0.13]] | [[Changes v1.0.14rc4 v1.0.14|changes from 1.0.14rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2007-04-03&lt;br /&gt;
: ALSA 1.0.14rc4 release | [[Changes v1.0.14rc3 v1.0.14rc4|changes from 1.0.14rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2007-03-06&lt;br /&gt;
: ALSA 1.0.14rc3 release | [[Changes v1.0.14rc2 v1.0.14rc3|changes from 1.0.14rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-01-16&lt;br /&gt;
: ALSA 1.0.14rc2 release | [[Changes v1.0.14rc1 v1.0.14rc2|changes from 1.0.14rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-12-11&lt;br /&gt;
: ALSA 1.0.14rc1 release | [[Changes v1.0.13 v1.0.14rc1|changes from 1.0.13]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-29&lt;br /&gt;
: ALSA 1.0.13 release | [[Changes v1.0.12 v1.0.13|changes from 1.0.12]] | [[Changes 1.0.13rc3 v1.0.13|changes from 1.0.13rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-26&lt;br /&gt;
: ALSA 1.0.13rc3 release | [[Changes v1.0.13rc2 v1.0.13rc3|changes from 1.0.13rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-15&lt;br /&gt;
: ALSA 1.0.13rc2 release | [[Changes v1.0.13rc1 v1.0.13rc2|changes from 1.0.13rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-01&lt;br /&gt;
: ALSA 1.0.13rc1 release | [[Changes v1.0.12 v1.0.13rc1|changes from 1.0.12]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-24&lt;br /&gt;
: ALSA 1.0.12 release | [[Changes v1.0.11 v1.0.12|changes from 1.0.11]] | [[Changes 1.0.12rc3 v1.0.12|changes from 1.0.12rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-15&lt;br /&gt;
: ALSA 1.0.12rc3 release (driver only) | [[Changes v1.0.12rc2 v1.0.12rc3|changes from 1.0.12rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-03&lt;br /&gt;
: ALSA 1.0.12rc2 release | [[Changes v1.0.12rc1 v1.0.12rc2|changes from 1.0.12rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-06-23&lt;br /&gt;
: ALSA 1.0.12rc1 release | [[Changes v1.0.11 v1.0.12rc1|changes from 1.0.11]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-19&lt;br /&gt;
: ALSA 1.0.11 final release | [[Changes v1.0.10 v1.0.11|changes from 1.0.10]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-11&lt;br /&gt;
: ALSA 1.0.11rc5 release | [[Changes v1.0.11rc4 v1.0.11rc5|changes from 1.0.11rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2006-03-22&lt;br /&gt;
: ALSA 1.0.11rc4 release | [[Changes v1.0.11rc3 v1.0.11rc4|changes from 1.0.11rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-29&lt;br /&gt;
: ALSA 1.0.11rc3 release | [[Changes v1.0.11rc2 v1.0.11rc3|changes from 1.0.11rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-02&lt;br /&gt;
: ALSA 1.0.11rc2 release | [[Changes v1.0.11rc1 v1.0.11rc2|changes from 1.0.11rc1]] | Happy New Year 2006&lt;br /&gt;
&lt;br /&gt;
; 2005-12-12&lt;br /&gt;
: ALSA 1.0.11rc1 release | [[Changes v1.0.10 v1.0.11rc1|changes from 1.0.10 final]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-16&lt;br /&gt;
: ALSA 1.0.10 release | [[Changes v1.0.10rc3 v1.0.10|changes from 1.0.10rc3]] |  [[Changes 1.0.9 v1.0.10|changes from 1.0.9]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-08&lt;br /&gt;
: ALSA 1.0.10rc3 release | [[Changes v1.0.10rc2 v1.0.10rc3|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-10-10&lt;br /&gt;
: ALSA 1.0.10rc2 release | [[Changes v1.0.10rc1 v1.0.10rc2|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-08-20&lt;br /&gt;
: ALSA 1.0.10rc1 release | [[Changes v1.0.9b v1.0.10rc1|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-07&lt;br /&gt;
: ALSA 1.0.9b release | [[Changes v1.0.9a v1.0.9b|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-02&lt;br /&gt;
: ALSA 1.0.9a release | [[Changes v1.0.9 v1.0.9a|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-27&lt;br /&gt;
: ALSA 1.0.9 final release | [[Changes v1.0.8 v1.0.9|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-23&lt;br /&gt;
: ALSA 1.0.9rc4 release&lt;br /&gt;
&lt;br /&gt;
; 2005-05-02&lt;br /&gt;
: ALSA 1.0.9rc3 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-24&lt;br /&gt;
: ALSA 1.0.9rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-13&lt;br /&gt;
: ALSA 1.0.9rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2005-01-13&lt;br /&gt;
: ALSA 1.0.8 release | [[Changes v1.0.7 v1.0.8|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-01-06&lt;br /&gt;
: ALSA 1.0.8rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-12-22&lt;br /&gt;
: ALSA 1.0.8rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-11-15&lt;br /&gt;
: ALSA 1.0.7 release&lt;br /&gt;
&lt;br /&gt;
; 2004-10-13&lt;br /&gt;
: ALSA 1.0.7rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-09-08&lt;br /&gt;
: ALSA 1.0.7rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-08-15&lt;br /&gt;
: ALSA 1.0.6 release&lt;br /&gt;
&lt;br /&gt;
; 2004-06-11&lt;br /&gt;
: ALSA server software was upgraded.  Anonymous rsync access [[Download|was changed.]]&lt;br /&gt;
&lt;br /&gt;
; 2004-05-31&lt;br /&gt;
: 1.0.5a driver release | bugfix for the &amp;quot;hang-up&amp;quot; problem in the ALSA driver initialization&lt;br /&gt;
&lt;br /&gt;
; 2004-05-28&lt;br /&gt;
: 1.0.5 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-04-03&lt;br /&gt;
: 1.0.4 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-03-30&lt;br /&gt;
: 1.0.4rc2 driver release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-27&lt;br /&gt;
: 1.0.4rc1 release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-13&lt;br /&gt;
: alsa-lib 1.0.3b released -  it fixes SIGSEGV problem for dmix plugin (when a specific GCC version is used)&lt;br /&gt;
&lt;br /&gt;
; 2004-03-06&lt;br /&gt;
: alsa-lib 1.0.3a released - it fixes again the dmix/dshare/dsnoop poll() problems&lt;br /&gt;
&lt;br /&gt;
; 2004-02-29&lt;br /&gt;
: 1.0.3 packages released | added driver for ATI IXP 150/200/250 chips and HDSP MADI driver&lt;br /&gt;
&lt;br /&gt;
; 2004-02-25&lt;br /&gt;
: 1.0.3rc2 packages released&lt;br /&gt;
&lt;br /&gt;
; 2004-02-04&lt;br /&gt;
: 1.0.2c driver package release | More fixes for compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-02-03&lt;br /&gt;
: 1.0.2b driver package release | It fixes next 2.6 kernel compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-30&lt;br /&gt;
: 1.0.2a driver package release | It should fix most of 2.6 kernel compilation problems and adds RME HDSP MADI (hdspm) driver.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-27&lt;br /&gt;
: New ALSA bugtracking system using Mantis is [http://bugtrack.alsa-project.org/alsa-bug/ available].&lt;br /&gt;
&lt;br /&gt;
; 2004-01-26&lt;br /&gt;
: 1.0.2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2004-01-08&lt;br /&gt;
: 1.0.1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2003-12-05&lt;br /&gt;
: 1.0.0rc2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | bt87x driver added, more OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-12-01&lt;br /&gt;
: 1.0.0rc1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | intel8x0 driver fixes, OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-11-25&lt;br /&gt;
: 1.0.0pre3 release | alsa-tools packages is divided now - firmware files are in alsa-firmware package.&lt;br /&gt;
&lt;br /&gt;
; 2003-11-18&lt;br /&gt;
: 1.0.0pre1 release | This release is indented for wide testing.&lt;br /&gt;
&lt;br /&gt;
; 2003-10-21&lt;br /&gt;
: 0.9.8 release&lt;br /&gt;
&lt;br /&gt;
; 2003-10-13&lt;br /&gt;
: 0.9.7c driver release - PDE and vortex driver compilation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-10-10&lt;br /&gt;
: 0.9.7b driver release - it fixes serious bug in PCM (mutex hangup)&lt;br /&gt;
&lt;br /&gt;
; 2003-10-01&lt;br /&gt;
: 0.9.7a driver release - fixes bugs (including oops) in the OSS PCM emulation layer&lt;br /&gt;
&lt;br /&gt;
; 2003-09-25&lt;br /&gt;
: 0.9.7 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-28&lt;br /&gt;
: 0.9.6 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-09&lt;br /&gt;
: 0.9.5 release&lt;br /&gt;
&lt;br /&gt;
; 2003-06-01&lt;br /&gt;
: 0.9.4 release&lt;br /&gt;
&lt;br /&gt;
; 2003-05-20&lt;br /&gt;
: *** 0.9.3c driver maintaince release *** configuration fixes + other updates&lt;br /&gt;
&lt;br /&gt;
; 2003-05-19&lt;br /&gt;
: *** 0.9.3b driver maintaince release *** ISA PnP and other fixes. We removed /proc/asound/dev directory. The 'make install' should create new device files, but in case of problems, the snddevices script should be executed.&lt;br /&gt;
&lt;br /&gt;
; 2003-04-30&lt;br /&gt;
: *** 0.9.3 release *** Moved firmware code from vxpocket and hdsp driver to alsa-tools. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-19&lt;br /&gt;
: *** 0.9.2 release *** Added dsnoop and dshare PCM plugins to alsa-lib. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-11&lt;br /&gt;
: *** 0.9.1 release *** First stable release of the 0.9 serie. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-10&lt;br /&gt;
: alsa-driver 0.9.0rc8d released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-08&lt;br /&gt;
: alsa-driver 0.9.0rc8c released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-07&lt;br /&gt;
: alsa-lib 0.9.0rc8c and alsa-utils 0.9.0rc8a released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-05&lt;br /&gt;
: alsa-lib and alsa-driver 0.9.0rc8b release&lt;br /&gt;
: alsa-driver 0.9.0rc8a released (fixed compilation problem for older kernels)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-03&lt;br /&gt;
: alsa-lib 0.9.0rc8a released (fixed compilation problem)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-02&lt;br /&gt;
: 0.9.0 release candidate #8 (all packages) is available for download. It is probably last release before 0.9.0 final. You will find in the alsa-lib package the dmix plugin which allows mixing of multiple PCM streams together without the client/server mechanism.&lt;br /&gt;
&lt;br /&gt;
; 2003-01-28&lt;br /&gt;
: 0.9.0 release candidate #7 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-25&lt;br /&gt;
: The fix for GCC 3.2 has been integrated into the 0.9.0rc5 package. Please, redownload the updated package from our server when you reached this problem. (New package is dated 2002/10/25&lt;br /&gt;
&lt;br /&gt;
; 2002-10-24&lt;br /&gt;
: 0.9.0 release candidate #5 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download. This &amp;quot;quick&amp;quot; release should fix the build problems for alsa-lib and alsa-utils packages.&lt;br /&gt;
: Note#2: Please, notice that we merged snd-via686 and snd-via8233 into the snd-via82xx module. Also, the snd-usb-midi module users should use the snd-usb-audio module which has integrated support for both USB audio and MIDI.&lt;br /&gt;
: Note: We have changed the kernel module symbol names (module parameter names). We removed prefix 'snd_'. Please, update your /etc/modules.conf files by hand or use our alsa-driver/utils/module-options script which does this job. Please, notice that 'snd_' prefix is not equal to 'snd-' prefix (module name) which is left unchanged.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-22&lt;br /&gt;
: 0.9.0 release candidate #4 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-22&lt;br /&gt;
: Note for compiling  alsa-driver-0.9.0rc3: Please remove the file - alsa-driver-0.9.0rc3/include/linux/isapnp.h - before running the configure script.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-15&lt;br /&gt;
: 0.9.0 release candidate #3 (alsa-driver, alsa-lib and alsa-utils packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-09&lt;br /&gt;
: The new online user documentation is now public. Access is through the soundcard matrix. PHP is used to automatically provide the necessary parameters needed to set up a module and required scripts. Users are encouraged to add notes via the notes additions form.&lt;br /&gt;
&lt;br /&gt;
; 2002-06-19&lt;br /&gt;
: Release Candidate #2 is available to download. ALSA packages 0.9.0rc2 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-04-24&lt;br /&gt;
: Release Candidate #1 is available to download. ALSA packages 0.9.0rc1 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-26&lt;br /&gt;
: ALSA packages 0.9.0beta12 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-17&lt;br /&gt;
: ALSA packages 0.9.0beta11 were released. The driver package contains a new directory tree synced with the Linux 2.5 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-13&lt;br /&gt;
: ALSA has been integrated to the official Linux 2.5 tree! The initial merge is in patch-2.5.5-pre1.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-30&lt;br /&gt;
: The 0.5.12a driver was released. It's maintaince release to fix problems with 2.4.14+ kernels. &amp;lt;BR&amp;gt; The 0.9.0beta10 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-05&lt;br /&gt;
: The 0.9.0beta9 packages were released.  &amp;lt;hr /&amp;gt; The 0.5.12 driver was released.&lt;br /&gt;
&lt;br /&gt;
; 2001-09-27&lt;br /&gt;
: The 0.9.0beta8 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-08-23&lt;br /&gt;
: The 0.9.0beta7 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-22&lt;br /&gt;
: The 0.9.0beta6 alsa-driver and alsa-lib packages have fixed compilation bugs. Please, download these packages again.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-20&lt;br /&gt;
: The 0.9.0beta6 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-06-28&lt;br /&gt;
: The 0.9.0beta5 packages were released for public with uniform support for multichannel cards and raw IEC958 (S/PDIF).&lt;br /&gt;
&lt;br /&gt;
; 2001-05-25&lt;br /&gt;
: Mailing lists are moved to SourceForge. Please, check [[Mailing-lists|this page]] for the subscription details.&lt;br /&gt;
: The 0.9.0beta4 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-05-14&lt;br /&gt;
: The driver 0.5.11 was released. Changes: IA64 arch support, ALi 5451 driver added, AWACS driver added (for PPC), AC'97, PCM OSS emulation, sequencer OSS emulation, AD1816A, ALS4000, AZT2320, CMIPCI, CS4236, CS4281, CS461X, ES1968, Maestro 3, NM256, OPL3SA2, SB16, SB-AWE, YMFPCI.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-20&lt;br /&gt;
: The 0.9.0beta3 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-02&lt;br /&gt;
: The 0.9.0beta2 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-02-21&lt;br /&gt;
: The 0.9.0beta1 packages were released for public. Please, check out our FTP site to obtain them.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-23&lt;br /&gt;
: The ALSA driver package version 0.5.10b was released. New driver: VIA VT8233 South Bridge. Bugfixes: NM256, AC'97.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-07&lt;br /&gt;
: The ALSA driver package version 0.5.10a was released. New driver: NeoMagic NM256AV/ZX. Bugfixes: Maestro3, MPU401 UART, AZT2320, RME96, CS461x, timer, YMFPCI, CMI8330, FM801, CS4232, ENS1371, 2.4.0-prerelease kernel support.&lt;br /&gt;
&lt;br /&gt;
; 2000-12-07&lt;br /&gt;
: The ALSA packages version 0.5.10 were released. New drivers: ALS4000, Maestro3 (Allegro), CS4281. Bugfixes: AC'97 code, SB16, EMUX000 MIDI, CMIPCI, SB8, CS4236, Intel8x0, CS461x, YMFPCI, MPU401, AD1816A, 2.2.18pre kernels, man pages.&lt;br /&gt;
&lt;br /&gt;
; 2000-10-10&lt;br /&gt;
: ALSA driver package version 0.5.9d was released. Bugfixes:  2.2.18pre kernels, YMFPCI, CMIPCI, EMU10K1, OSS sequencer emulator, CS4236, RME9652, rawmidi, intel8x0.&lt;br /&gt;
&lt;br /&gt;
; 2000-09-22&lt;br /&gt;
: ALSA project helps to realize the unique demonstration prepared by the Audio Engineering Society's (AES) Technical Committee on Network Audio Systems. Recording Engineers in Los Angeles will mix 12 high quality audio channels streamed live over the Internet from Montreal. [http://www.aes.org/events/109/events.cfm Event description.] [http://www.cim.mcgill.ca/~jer/projects/aes/ Demo description.]&lt;br /&gt;
&lt;br /&gt;
; 2000-09-02&lt;br /&gt;
: ALSA driver package version 0.5.9c was released. Bugfixes:  SB16, AD1816A, AZT2320, EMU8000/EMU10K1, CMIPCI, YMFPCI, intel-i8x0, general. &amp;lt;hr&amp;gt; ALSA package with utilities version 0.5.9b was released. Updated programs: aplay, aseqnet.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-18&lt;br /&gt;
: ALSA driver package version 0.5.9b was released. More bugfixes: CS4236, EMU10K1, OSS mmap() for non-x86 platforms, ENS1370, ENS1371.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-11&lt;br /&gt;
: ALSA driver package version 0.5.9a was released. It contains more 64-bit cleanaups and support for 2.4.0-test6 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-07&lt;br /&gt;
: Packages 0.5.9 were released. These packages contain cleanups for alpha linux platform. Changed drivers: OPTi92x/93x, VIA686A, YMFPCI, MPU-401, EMU10K1, SB16, SB8, seq_virmidi, ENS1370/1, rawmidi.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-25&lt;br /&gt;
: The driver 0.5.8b was released containing bugfixes for these drivers: sequencer, YMFPCI, CS4236, ES1968, ICE1712, Opti92x/93x, EMU10K1.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-06&lt;br /&gt;
: The driver 0.5.8a was released. It contains compilation bugfix for latest 2.3 and 2.4-test kernels. The Yamaha driver was fixed for YMF724F.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-05&lt;br /&gt;
: Stable packages 0.5.8 were released. Two new drivers were added: the C-Media CMI8338 and 8738 PCI driver and the Yamaha YMF72x,74x,75x driver. Also, APM is supported for CS4231 &amp;amp; CS4235,6,7,8,9 chips. Otherwise, this release contains mostly bug-fixes backported from the ALSA development tree including the support for latest Linux kernels. Affected drivers: AZT2320, CMI8330, CS4236, ESS ES18xx, InterWave (GUS PnP), Opti 92x, Sound Blaster 16, AD1816A. &amp;lt;b&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Upgrade is recommended for all soundcards.&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2000-04-06&lt;br /&gt;
: Stable packages 0.5.7 were released. This release is a bug-fix release only. The support for MidiMan Delta 44 and 66 cards was added. Other changes - sequencer fixes, rawmidi fixes, AC'97 code updates, other minor cleanups.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-17&lt;br /&gt;
: New ALSA [[Mailing-lists|announce mailing list]] was created.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-11&lt;br /&gt;
: ALSA 0.5.6 packages were released (new drivers: RME Digi 96, VIA 82C686A AC'97 bridge | bugfixes: Intel i8x0/440MX, EMU10K1, AZT2320, RawMidi code + lowlevel drivers, alsamixer).&lt;br /&gt;
&lt;br /&gt;
; 2000-03-01&lt;br /&gt;
: ALSA 0.5.5 packages were released (API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-28&lt;br /&gt;
: ALSA 0.5.4b driver package was released (Intel i8x0/MX440 driver fixes).&lt;br /&gt;
: ALSA 0.5.4 packages were released (added alpha ESS Maestro 1/2/2E driver, improved Intel i8x0/440MX driver, AC'97 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-27&lt;br /&gt;
: ALSA 0.5.4a driver package was released (2.3.48 compilation fixed, PCM OSS Oops fixed). Upgrade is strongly recommended.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-16&lt;br /&gt;
: The 0.5.3 packages were released (RME Hammerfall/Light updates, ES1938 - Solo1 driver improved, AC'97 updates, Intel i8x0/440MX alpha driver added, sequencer updates, MTPAV updates, better SMP support for 2.3.x kernels, virmidi code added to EMU8000 &amp;amp; EMU10K1 synth drivers, snd-card-virmidi updates, AK4531 updates - ES1370, EMU10K1 rear volume fixed, ICE1712 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-14&lt;br /&gt;
: The ALSA server was upgraded. You may now enjoy the HtDig search engine for whole Web server plus mailing list archives.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-04&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA 0.5.2 packages] were released (added ICE1712 {Envy24} driver and AD1816A driver, RME9652 updates, EMU10K1 updates, SB8, ES18xx, serial MIDI driver updates, PCM API updates, AC'97 bugfixes). The [ftp://ftp.alsa-project.org/pub/others/envy24control GTK Envy24 control utility] is also available with some screenshots. Note: The current Envy24 driver may work only with the MidiMan soundcards (Delta serie). The driver supports only professional PCM at this time.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-22&lt;br /&gt;
: ALSA [ftp://ftp.alsa-project.org/pub packages 0.5.1] were released (PCM OSS emulation, EMU10K1 synth, ES1938, ENS1370).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ Final ALSA 0.5.0 packages] were released (added RME9652 -Hammerfall- driver, final API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-12&lt;br /&gt;
: The alsa-driver and alsa-lib [ftp://ftp.alsa-project.org/pub packages 0.5.0pre3] were released (trident driver, compilation trouble).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-11&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.5.0pre2] was released (enhanced EMU10K1 code, a compilation bugfix). Other [ftp://ftp.alsa-project.org/pub 0.5.0pre2 packages] were also released.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-10&lt;br /&gt;
: All [ftp://ftp.alsa-project.org/pub packages 0.5.0pre1] were were released. The final API freeze is expected at 14th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-20&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1i] was released with the bugfix for the generic code for AC'97. The problems with CS4297A volume levels are away.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-16&lt;br /&gt;
: The final ALSA API dead line is 10th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1h] was released with the bugfix for the ENS1370/ENS1371 drivers.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-06&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1g1] was released with minor bugfixes (mixer, rawmidi, CS461X).&lt;br /&gt;
&lt;br /&gt;
; 1999-12-02&lt;br /&gt;
: [http://www.alsa-project.org/announce.html The ALSA professional team] has been founded.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-01&lt;br /&gt;
: [http://www.alsa-project.org/cgi-bin/cvsweb.cgi CVS Web interface] is available. Created [[Mailing-lists|new mailing lists]]: alsa-doc, alsa-conf, alsa-howto and alsa-cvs. Mailing lists are archived through MHonArc. Web is now searchable through Ht://Dig.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1f2] was released with minor bugfixes (CS4231, CS4236, AC'97, 2.3.29 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-18&lt;br /&gt;
: Alpha EMU10K1 (Sound Blaster Live!) driver is available in CVS.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-03&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1e] was released with minor bugfixes (isapnp, CS4236+, Gallant SC-70P, 2.3.25 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-02&lt;br /&gt;
: Creative released their [http://opensource.creative.com/ source code for SB Live driver]. The ALSA SB Live driver will be available this month.&lt;br /&gt;
&lt;br /&gt;
; 1999-10-24&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1d] was released with minor bugfixes (CMI8330, 2+ soundcards, modules.conf handling, documentation files). Upgrade is recommended if your system has 2+ soundcards. [ftp://ftp.alsa-project.org/pub/lib ALSA library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).]A library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).&lt;br /&gt;
&lt;br /&gt;
; 1999-10-20&lt;br /&gt;
: Upgrade your modutils package, if you encounter 'segmentation fault' problems. Get fixed [ftp://ftp.ocs.com.au/pub/modutils/v2.3/modutils-2.3.6.tar.gz modutils-2.3.6.tar.gz] or an upgrade [ftp://ftp.alsa-project.org/pub/driver/misc/modules-2.2.2-44.i386.rpm package for SuSE 6.2].&lt;br /&gt;
&lt;br /&gt;
; 1999-10-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1c] was released with minor bugfixes (GUS, OPL3-SA2/3, RedHat 6.1). Upgrade is recommended for all soundcards.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1b] was released with next minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-01&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1a] was released with minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.1] were released. This is mostly bug-fix release.&lt;br /&gt;
: Statistics for WWW and FTP server are now available.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-15&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.0] were released. Older packages are not supported from this time.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-01&lt;br /&gt;
: The ALSA bug reporting system is up and going. To report bugs in ALSA packages, please go here and follow the instructions carefully.&lt;br /&gt;
&lt;br /&gt;
; 1999-06-17&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver/ ALSA driver version 0.3.2] released. This is a bug-fix release. If you have had any troubles with 0.3.1 or 0.3.0, please, try this version. Remember to upgrade [ftp://ftp.alsa-project.org/pub/lib/ lib] and [ftp://ftp.alsa-project.org/pub/utils/ utils] too. 0.3.x-series are the last to support 2.0.x kernels.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-23&lt;br /&gt;
: The alpha driver for the [http://www.crystal.com/ Cirrus Logic Sound Fusion CS461x (CS4280) PCI chips] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-05-14&lt;br /&gt;
: [[Mailing-lists|Mailing lists]] are now managed with the alsa.alsa-project.org machine.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-11&lt;br /&gt;
: The alpha driver for the [http://www.fortemedia.com/products/ ForteMedia FM801 PCI soundcard] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-29&lt;br /&gt;
: New page with the ALSA schedule is available.&lt;br /&gt;
&lt;br /&gt;
; 1999-04-23&lt;br /&gt;
: The call to hardware vendors was [[ALSA_Soundcard_Vendor_Information|updated]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-20&lt;br /&gt;
: The ALSA project has got own domain - alsa-project.org. Services (WWW/FTP/CVS) are running on the independent machine now.&lt;br /&gt;
&lt;br /&gt;
; 1999-03-16&lt;br /&gt;
: The releasing of 0.3.0pre5 packages is very delayed. We are working on new mixer API which will not be compatible with previous versions of ALSA packages. It seems that that this work needs a lot of our time. There are many changes in the current development tree (Trident 4DWave DX/NX driver &amp;lt;b&amp;gt;- thanks to Tridentfor their support -&amp;lt;/b&amp;gt;, timer interface, EMU8000 driver, OSS sequencer emulator), If you want to test or use the current code, you may get the sources directly from the [[Download|CVS server]] or there are also available [[Download|CVS snapshots]].&lt;br /&gt;
&lt;br /&gt;
; 1999-02-10&lt;br /&gt;
: Two alsa-driver and alsa-lib packages with version 0.3.0-pre4 [ftp://ftp.alsa-project.org/pub released]. The driver contains better support for 2.2.0+ kernels and allows mixing of ALSA and OSS/Lite modules.&lt;br /&gt;
&lt;br /&gt;
; 1999-02-05&lt;br /&gt;
: [[Download|CVS snapshots]] are available now.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-29&lt;br /&gt;
: Temporary AWE64 [http://ds.dial.pipex.com/sterat/alsa EMU8000 synth driver] for ALSA.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-24&lt;br /&gt;
: All packages with version 0.3.0-pre3 [ftp://ftp.alsa-project.org/pub released].&lt;br /&gt;
: [[ALSA_Library_API|New ALSA API description for 0.2.0 packages.]]&lt;br /&gt;
&lt;br /&gt;
; 1999-01-19&lt;br /&gt;
: [http://huizen.dds.nl/~valentyn/Alsa-sound-mini-HOWTO.html Alsa-sound-mini-HOWTO]&lt;br /&gt;
: Version 0.2.0-pre10p3 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes support for 2.2.0-pre1 kernel.&lt;br /&gt;
: Version 0.3.0-pre2 of alsa-lib [ftp://ftp.alsa-project.org/pub/lib released] which includes support for sequencer.&lt;br /&gt;
: Version 0.3.0-pre2 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes native support for ISA Plug &amp;amp;amp; Play cards, first version of sequencer and support for 2.2.0-pre1 kernel.&lt;br /&gt;
&lt;br /&gt;
; 1998-12-30&lt;br /&gt;
: [[ALSA_Soundcard_Vendor_Information|A call to sound card hardware vendors.]]&lt;br /&gt;
&lt;br /&gt;
; 1998-12-28&lt;br /&gt;
: [[ALSA Blacklist|Black List]]; Sound Blaster Live! [[ALSA_Blacklist|support]] (sorry)&lt;br /&gt;
&lt;br /&gt;
; 1998-11-10&lt;br /&gt;
: Version 0.1.3 of C library and Version 0.2.0-pre10 of driver [ftp://ftp.alsa-project.org/pub/driver released] which supports Cirrus Logic CS4232+/CS4236+, Ensoniq AudioPCI (ES1370/1371), and S3 SonicVibes.&lt;br /&gt;
&lt;br /&gt;
; 1998-11-04&lt;br /&gt;
: Version 0.0.7 of ALSA utilities [ftp://ftp.alsa-project.org/pub/lib released]&lt;br /&gt;
&lt;br /&gt;
; 1998-08-13&lt;br /&gt;
: [[Download|CVS is up]]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Main_Page_News</id>
		<title>Main Page News</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Main_Page_News"/>
				<updated>2012-09-06T09:01:20Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;: 2012-09-06&lt;br /&gt;
: alsa 1.0.26 release (user space) | [[Changes v1.0.25 v1.0.26]]&lt;br /&gt;
&lt;br /&gt;
; 2012-01-25&lt;br /&gt;
: alsa 1.0.25 release | [[Changes v1.0.24 v1.0.25]]&lt;br /&gt;
&lt;br /&gt;
; 2011-01-31&lt;br /&gt;
: alsa 1.0.24 release | [[Changes v1.0.23 v1.0.24]]&lt;br /&gt;
&lt;br /&gt;
; 2010-04-16&lt;br /&gt;
: alsa 1.0.23 release | [[Changes v1.0.22 v1.0.23]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-28&lt;br /&gt;
: alsa-driver 1.0.22.1 release | [[Changes v1.0.22 v1.0.22.1]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-16&lt;br /&gt;
: alsa 1.0.22 release | [[Changes v1.0.21 v1.0.22]]&lt;br /&gt;
&lt;br /&gt;
; 2009-09-09&lt;br /&gt;
: alsa-lib 1.0.21a release | [[Changes v1.0.21 v1.0.21a]]&lt;br /&gt;
&lt;br /&gt;
; 2009-08-31&lt;br /&gt;
: alsa 1.0.21 release | [[Changes v1.0.20 v1.0.21|changes from 1.0.20]]&lt;br /&gt;
&lt;br /&gt;
; 2009-05-06&lt;br /&gt;
: alsa 1.0.20 release | [[Changes v1.0.19 v1.0.20|changes from 1.0.19]]&lt;br /&gt;
&lt;br /&gt;
; 2009-01-19&lt;br /&gt;
: alsa 1.0.19 release | [[Changes v1.0.18 v1.0.19|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-11-12&lt;br /&gt;
: alsa-driver 1.0.18a release | [[Changes v1.0.18 v1.0.18a|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-10-29&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-tools,alsa-plugins 1.0.18 release | [[Changes v1.0.18rc3 v1.0.18|changes from 1.0.18rc3]] | [[Changes v1.0.17 v1.0.18|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-09-09&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-plugins 1.0.18rc3 release | [[Changes v1.0.18rc2 v1.0.18rc3|changes from 1.0.18rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-19&lt;br /&gt;
: alsa-utils,alsa-plugins 1.0.18rc2 release | [[Changes v1.0.18rc1 v1.0.18rc2|changes from 1.0.18rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-driver.alsa-utils,alsa-plugins 1.0.18rc1 release | [[Changes v1.0.17a v1.0.18rc1|changes from 1.0.17a]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-lib 1.0.17a release | [[Changes v1.0.17 v1.0.17a|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-07-14&lt;br /&gt;
: ALSA 1.0.17 release (all packages) | [[Changes v1.0.17rc3 v1.0.17|changes from 1.0.17rc3]] | [[Changes v1.0.16 v1.0.17|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-27&lt;br /&gt;
: ALSA 1.0.17rc3 release (driver only) | [[Changes v1.0.17rc2 v1.0.17rc3|changes from 1.0.17rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-16&lt;br /&gt;
: ALSA 1.0.17rc2 release | [[Changes v1.0.17rc1 v1.0.17rc2|changes from 1.0.17rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-06&lt;br /&gt;
: ALSA 1.0.17rc1 release | [[Changes v1.0.16 v1.0.17rc1|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-05-20&lt;br /&gt;
: All repositories converted from HG (Mercurial) to GIT&lt;br /&gt;
&lt;br /&gt;
; 2008-02-06&lt;br /&gt;
: ALSA 1.0.16 final release | [[Changes v1.0.15 v1.0.16|changes from 1.0.15]] | [[Changes v1.0.16rc2 v1.0.16|changes from 1.0.16rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-29&lt;br /&gt;
: ALSA 1.0.16rc2 release | [[Changes v1.0.16rc1 v1.0.16rc2|changes from 1.0.16rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-22&lt;br /&gt;
: ALSA 1.0.16rc1 release | [[Changes v1.0.15 v1.0.16rc1|changes from 1.0.15]]&lt;br /&gt;
&lt;br /&gt;
; 2007-10-16&lt;br /&gt;
: ALSA 1.0.15 final release | [[Changes v1.0.14 v1.0.15|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-26&lt;br /&gt;
: ALSA 1.0.15rc3 release | [[Changes v1.0.15rc2 v1.0.15rc3|changes from 1.0.15rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-13&lt;br /&gt;
: ALSA 1.0.15rc2 release | [[Changes v1.0.15rc1 v1.0.15rc2|changes from 1.0.15rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-31&lt;br /&gt;
: ALSA 1.0.15rc1 release | [[Changes v1.0.14 v1.0.15rc1|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-09&lt;br /&gt;
: ALSA WWW site switched to [http://www.mediawiki.org MediaWiki]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-11&lt;br /&gt;
: ALSA 1.0.14a library bugfix release | [[Changes v1.0.14 v1.0.14a|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-04&lt;br /&gt;
: ALSA 1.0.14 release | [[Changes v1.0.13 v1.0.14|changes from 1.0.13]] | [[Changes v1.0.14rc4 v1.0.14|changes from 1.0.14rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2007-04-03&lt;br /&gt;
: ALSA 1.0.14rc4 release | [[Changes v1.0.14rc3 v1.0.14rc4|changes from 1.0.14rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2007-03-06&lt;br /&gt;
: ALSA 1.0.14rc3 release | [[Changes v1.0.14rc2 v1.0.14rc3|changes from 1.0.14rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-01-16&lt;br /&gt;
: ALSA 1.0.14rc2 release | [[Changes v1.0.14rc1 v1.0.14rc2|changes from 1.0.14rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-12-11&lt;br /&gt;
: ALSA 1.0.14rc1 release | [[Changes v1.0.13 v1.0.14rc1|changes from 1.0.13]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-29&lt;br /&gt;
: ALSA 1.0.13 release | [[Changes v1.0.12 v1.0.13|changes from 1.0.12]] | [[Changes 1.0.13rc3 v1.0.13|changes from 1.0.13rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-26&lt;br /&gt;
: ALSA 1.0.13rc3 release | [[Changes v1.0.13rc2 v1.0.13rc3|changes from 1.0.13rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-15&lt;br /&gt;
: ALSA 1.0.13rc2 release | [[Changes v1.0.13rc1 v1.0.13rc2|changes from 1.0.13rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-01&lt;br /&gt;
: ALSA 1.0.13rc1 release | [[Changes v1.0.12 v1.0.13rc1|changes from 1.0.12]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-24&lt;br /&gt;
: ALSA 1.0.12 release | [[Changes v1.0.11 v1.0.12|changes from 1.0.11]] | [[Changes 1.0.12rc3 v1.0.12|changes from 1.0.12rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-15&lt;br /&gt;
: ALSA 1.0.12rc3 release (driver only) | [[Changes v1.0.12rc2 v1.0.12rc3|changes from 1.0.12rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-03&lt;br /&gt;
: ALSA 1.0.12rc2 release | [[Changes v1.0.12rc1 v1.0.12rc2|changes from 1.0.12rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-06-23&lt;br /&gt;
: ALSA 1.0.12rc1 release | [[Changes v1.0.11 v1.0.12rc1|changes from 1.0.11]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-19&lt;br /&gt;
: ALSA 1.0.11 final release | [[Changes v1.0.10 v1.0.11|changes from 1.0.10]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-11&lt;br /&gt;
: ALSA 1.0.11rc5 release | [[Changes v1.0.11rc4 v1.0.11rc5|changes from 1.0.11rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2006-03-22&lt;br /&gt;
: ALSA 1.0.11rc4 release | [[Changes v1.0.11rc3 v1.0.11rc4|changes from 1.0.11rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-29&lt;br /&gt;
: ALSA 1.0.11rc3 release | [[Changes v1.0.11rc2 v1.0.11rc3|changes from 1.0.11rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-02&lt;br /&gt;
: ALSA 1.0.11rc2 release | [[Changes v1.0.11rc1 v1.0.11rc2|changes from 1.0.11rc1]] | Happy New Year 2006&lt;br /&gt;
&lt;br /&gt;
; 2005-12-12&lt;br /&gt;
: ALSA 1.0.11rc1 release | [[Changes v1.0.10 v1.0.11rc1|changes from 1.0.10 final]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-16&lt;br /&gt;
: ALSA 1.0.10 release | [[Changes v1.0.10rc3 v1.0.10|changes from 1.0.10rc3]] |  [[Changes 1.0.9 v1.0.10|changes from 1.0.9]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-08&lt;br /&gt;
: ALSA 1.0.10rc3 release | [[Changes v1.0.10rc2 v1.0.10rc3|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-10-10&lt;br /&gt;
: ALSA 1.0.10rc2 release | [[Changes v1.0.10rc1 v1.0.10rc2|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-08-20&lt;br /&gt;
: ALSA 1.0.10rc1 release | [[Changes v1.0.9b v1.0.10rc1|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-07&lt;br /&gt;
: ALSA 1.0.9b release | [[Changes v1.0.9a v1.0.9b|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-02&lt;br /&gt;
: ALSA 1.0.9a release | [[Changes v1.0.9 v1.0.9a|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-27&lt;br /&gt;
: ALSA 1.0.9 final release | [[Changes v1.0.8 v1.0.9|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-23&lt;br /&gt;
: ALSA 1.0.9rc4 release&lt;br /&gt;
&lt;br /&gt;
; 2005-05-02&lt;br /&gt;
: ALSA 1.0.9rc3 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-24&lt;br /&gt;
: ALSA 1.0.9rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-13&lt;br /&gt;
: ALSA 1.0.9rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2005-01-13&lt;br /&gt;
: ALSA 1.0.8 release | [[Changes v1.0.7 v1.0.8|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-01-06&lt;br /&gt;
: ALSA 1.0.8rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-12-22&lt;br /&gt;
: ALSA 1.0.8rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-11-15&lt;br /&gt;
: ALSA 1.0.7 release&lt;br /&gt;
&lt;br /&gt;
; 2004-10-13&lt;br /&gt;
: ALSA 1.0.7rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-09-08&lt;br /&gt;
: ALSA 1.0.7rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-08-15&lt;br /&gt;
: ALSA 1.0.6 release&lt;br /&gt;
&lt;br /&gt;
; 2004-06-11&lt;br /&gt;
: ALSA server software was upgraded.  Anonymous rsync access [[Download|was changed.]]&lt;br /&gt;
&lt;br /&gt;
; 2004-05-31&lt;br /&gt;
: 1.0.5a driver release | bugfix for the &amp;quot;hang-up&amp;quot; problem in the ALSA driver initialization&lt;br /&gt;
&lt;br /&gt;
; 2004-05-28&lt;br /&gt;
: 1.0.5 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-04-03&lt;br /&gt;
: 1.0.4 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-03-30&lt;br /&gt;
: 1.0.4rc2 driver release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-27&lt;br /&gt;
: 1.0.4rc1 release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-13&lt;br /&gt;
: alsa-lib 1.0.3b released -  it fixes SIGSEGV problem for dmix plugin (when a specific GCC version is used)&lt;br /&gt;
&lt;br /&gt;
; 2004-03-06&lt;br /&gt;
: alsa-lib 1.0.3a released - it fixes again the dmix/dshare/dsnoop poll() problems&lt;br /&gt;
&lt;br /&gt;
; 2004-02-29&lt;br /&gt;
: 1.0.3 packages released | added driver for ATI IXP 150/200/250 chips and HDSP MADI driver&lt;br /&gt;
&lt;br /&gt;
; 2004-02-25&lt;br /&gt;
: 1.0.3rc2 packages released&lt;br /&gt;
&lt;br /&gt;
; 2004-02-04&lt;br /&gt;
: 1.0.2c driver package release | More fixes for compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-02-03&lt;br /&gt;
: 1.0.2b driver package release | It fixes next 2.6 kernel compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-30&lt;br /&gt;
: 1.0.2a driver package release | It should fix most of 2.6 kernel compilation problems and adds RME HDSP MADI (hdspm) driver.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-27&lt;br /&gt;
: New ALSA bugtracking system using Mantis is [http://bugtrack.alsa-project.org/alsa-bug/ available].&lt;br /&gt;
&lt;br /&gt;
; 2004-01-26&lt;br /&gt;
: 1.0.2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2004-01-08&lt;br /&gt;
: 1.0.1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2003-12-05&lt;br /&gt;
: 1.0.0rc2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | bt87x driver added, more OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-12-01&lt;br /&gt;
: 1.0.0rc1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | intel8x0 driver fixes, OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-11-25&lt;br /&gt;
: 1.0.0pre3 release | alsa-tools packages is divided now - firmware files are in alsa-firmware package.&lt;br /&gt;
&lt;br /&gt;
; 2003-11-18&lt;br /&gt;
: 1.0.0pre1 release | This release is indented for wide testing.&lt;br /&gt;
&lt;br /&gt;
; 2003-10-21&lt;br /&gt;
: 0.9.8 release&lt;br /&gt;
&lt;br /&gt;
; 2003-10-13&lt;br /&gt;
: 0.9.7c driver release - PDE and vortex driver compilation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-10-10&lt;br /&gt;
: 0.9.7b driver release - it fixes serious bug in PCM (mutex hangup)&lt;br /&gt;
&lt;br /&gt;
; 2003-10-01&lt;br /&gt;
: 0.9.7a driver release - fixes bugs (including oops) in the OSS PCM emulation layer&lt;br /&gt;
&lt;br /&gt;
; 2003-09-25&lt;br /&gt;
: 0.9.7 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-28&lt;br /&gt;
: 0.9.6 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-09&lt;br /&gt;
: 0.9.5 release&lt;br /&gt;
&lt;br /&gt;
; 2003-06-01&lt;br /&gt;
: 0.9.4 release&lt;br /&gt;
&lt;br /&gt;
; 2003-05-20&lt;br /&gt;
: *** 0.9.3c driver maintaince release *** configuration fixes + other updates&lt;br /&gt;
&lt;br /&gt;
; 2003-05-19&lt;br /&gt;
: *** 0.9.3b driver maintaince release *** ISA PnP and other fixes. We removed /proc/asound/dev directory. The 'make install' should create new device files, but in case of problems, the snddevices script should be executed.&lt;br /&gt;
&lt;br /&gt;
; 2003-04-30&lt;br /&gt;
: *** 0.9.3 release *** Moved firmware code from vxpocket and hdsp driver to alsa-tools. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-19&lt;br /&gt;
: *** 0.9.2 release *** Added dsnoop and dshare PCM plugins to alsa-lib. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-11&lt;br /&gt;
: *** 0.9.1 release *** First stable release of the 0.9 serie. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-10&lt;br /&gt;
: alsa-driver 0.9.0rc8d released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-08&lt;br /&gt;
: alsa-driver 0.9.0rc8c released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-07&lt;br /&gt;
: alsa-lib 0.9.0rc8c and alsa-utils 0.9.0rc8a released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-05&lt;br /&gt;
: alsa-lib and alsa-driver 0.9.0rc8b release&lt;br /&gt;
: alsa-driver 0.9.0rc8a released (fixed compilation problem for older kernels)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-03&lt;br /&gt;
: alsa-lib 0.9.0rc8a released (fixed compilation problem)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-02&lt;br /&gt;
: 0.9.0 release candidate #8 (all packages) is available for download. It is probably last release before 0.9.0 final. You will find in the alsa-lib package the dmix plugin which allows mixing of multiple PCM streams together without the client/server mechanism.&lt;br /&gt;
&lt;br /&gt;
; 2003-01-28&lt;br /&gt;
: 0.9.0 release candidate #7 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-25&lt;br /&gt;
: The fix for GCC 3.2 has been integrated into the 0.9.0rc5 package. Please, redownload the updated package from our server when you reached this problem. (New package is dated 2002/10/25&lt;br /&gt;
&lt;br /&gt;
; 2002-10-24&lt;br /&gt;
: 0.9.0 release candidate #5 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download. This &amp;quot;quick&amp;quot; release should fix the build problems for alsa-lib and alsa-utils packages.&lt;br /&gt;
: Note#2: Please, notice that we merged snd-via686 and snd-via8233 into the snd-via82xx module. Also, the snd-usb-midi module users should use the snd-usb-audio module which has integrated support for both USB audio and MIDI.&lt;br /&gt;
: Note: We have changed the kernel module symbol names (module parameter names). We removed prefix 'snd_'. Please, update your /etc/modules.conf files by hand or use our alsa-driver/utils/module-options script which does this job. Please, notice that 'snd_' prefix is not equal to 'snd-' prefix (module name) which is left unchanged.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-22&lt;br /&gt;
: 0.9.0 release candidate #4 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-22&lt;br /&gt;
: Note for compiling  alsa-driver-0.9.0rc3: Please remove the file - alsa-driver-0.9.0rc3/include/linux/isapnp.h - before running the configure script.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-15&lt;br /&gt;
: 0.9.0 release candidate #3 (alsa-driver, alsa-lib and alsa-utils packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-09&lt;br /&gt;
: The new online user documentation is now public. Access is through the soundcard matrix. PHP is used to automatically provide the necessary parameters needed to set up a module and required scripts. Users are encouraged to add notes via the notes additions form.&lt;br /&gt;
&lt;br /&gt;
; 2002-06-19&lt;br /&gt;
: Release Candidate #2 is available to download. ALSA packages 0.9.0rc2 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-04-24&lt;br /&gt;
: Release Candidate #1 is available to download. ALSA packages 0.9.0rc1 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-26&lt;br /&gt;
: ALSA packages 0.9.0beta12 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-17&lt;br /&gt;
: ALSA packages 0.9.0beta11 were released. The driver package contains a new directory tree synced with the Linux 2.5 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-13&lt;br /&gt;
: ALSA has been integrated to the official Linux 2.5 tree! The initial merge is in patch-2.5.5-pre1.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-30&lt;br /&gt;
: The 0.5.12a driver was released. It's maintaince release to fix problems with 2.4.14+ kernels. &amp;lt;BR&amp;gt; The 0.9.0beta10 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-05&lt;br /&gt;
: The 0.9.0beta9 packages were released.  &amp;lt;hr /&amp;gt; The 0.5.12 driver was released.&lt;br /&gt;
&lt;br /&gt;
; 2001-09-27&lt;br /&gt;
: The 0.9.0beta8 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-08-23&lt;br /&gt;
: The 0.9.0beta7 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-22&lt;br /&gt;
: The 0.9.0beta6 alsa-driver and alsa-lib packages have fixed compilation bugs. Please, download these packages again.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-20&lt;br /&gt;
: The 0.9.0beta6 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-06-28&lt;br /&gt;
: The 0.9.0beta5 packages were released for public with uniform support for multichannel cards and raw IEC958 (S/PDIF).&lt;br /&gt;
&lt;br /&gt;
; 2001-05-25&lt;br /&gt;
: Mailing lists are moved to SourceForge. Please, check [[Mailing-lists|this page]] for the subscription details.&lt;br /&gt;
: The 0.9.0beta4 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-05-14&lt;br /&gt;
: The driver 0.5.11 was released. Changes: IA64 arch support, ALi 5451 driver added, AWACS driver added (for PPC), AC'97, PCM OSS emulation, sequencer OSS emulation, AD1816A, ALS4000, AZT2320, CMIPCI, CS4236, CS4281, CS461X, ES1968, Maestro 3, NM256, OPL3SA2, SB16, SB-AWE, YMFPCI.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-20&lt;br /&gt;
: The 0.9.0beta3 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-02&lt;br /&gt;
: The 0.9.0beta2 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-02-21&lt;br /&gt;
: The 0.9.0beta1 packages were released for public. Please, check out our FTP site to obtain them.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-23&lt;br /&gt;
: The ALSA driver package version 0.5.10b was released. New driver: VIA VT8233 South Bridge. Bugfixes: NM256, AC'97.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-07&lt;br /&gt;
: The ALSA driver package version 0.5.10a was released. New driver: NeoMagic NM256AV/ZX. Bugfixes: Maestro3, MPU401 UART, AZT2320, RME96, CS461x, timer, YMFPCI, CMI8330, FM801, CS4232, ENS1371, 2.4.0-prerelease kernel support.&lt;br /&gt;
&lt;br /&gt;
; 2000-12-07&lt;br /&gt;
: The ALSA packages version 0.5.10 were released. New drivers: ALS4000, Maestro3 (Allegro), CS4281. Bugfixes: AC'97 code, SB16, EMUX000 MIDI, CMIPCI, SB8, CS4236, Intel8x0, CS461x, YMFPCI, MPU401, AD1816A, 2.2.18pre kernels, man pages.&lt;br /&gt;
&lt;br /&gt;
; 2000-10-10&lt;br /&gt;
: ALSA driver package version 0.5.9d was released. Bugfixes:  2.2.18pre kernels, YMFPCI, CMIPCI, EMU10K1, OSS sequencer emulator, CS4236, RME9652, rawmidi, intel8x0.&lt;br /&gt;
&lt;br /&gt;
; 2000-09-22&lt;br /&gt;
: ALSA project helps to realize the unique demonstration prepared by the Audio Engineering Society's (AES) Technical Committee on Network Audio Systems. Recording Engineers in Los Angeles will mix 12 high quality audio channels streamed live over the Internet from Montreal. [http://www.aes.org/events/109/events.cfm Event description.] [http://www.cim.mcgill.ca/~jer/projects/aes/ Demo description.]&lt;br /&gt;
&lt;br /&gt;
; 2000-09-02&lt;br /&gt;
: ALSA driver package version 0.5.9c was released. Bugfixes:  SB16, AD1816A, AZT2320, EMU8000/EMU10K1, CMIPCI, YMFPCI, intel-i8x0, general. &amp;lt;hr&amp;gt; ALSA package with utilities version 0.5.9b was released. Updated programs: aplay, aseqnet.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-18&lt;br /&gt;
: ALSA driver package version 0.5.9b was released. More bugfixes: CS4236, EMU10K1, OSS mmap() for non-x86 platforms, ENS1370, ENS1371.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-11&lt;br /&gt;
: ALSA driver package version 0.5.9a was released. It contains more 64-bit cleanaups and support for 2.4.0-test6 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-07&lt;br /&gt;
: Packages 0.5.9 were released. These packages contain cleanups for alpha linux platform. Changed drivers: OPTi92x/93x, VIA686A, YMFPCI, MPU-401, EMU10K1, SB16, SB8, seq_virmidi, ENS1370/1, rawmidi.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-25&lt;br /&gt;
: The driver 0.5.8b was released containing bugfixes for these drivers: sequencer, YMFPCI, CS4236, ES1968, ICE1712, Opti92x/93x, EMU10K1.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-06&lt;br /&gt;
: The driver 0.5.8a was released. It contains compilation bugfix for latest 2.3 and 2.4-test kernels. The Yamaha driver was fixed for YMF724F.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-05&lt;br /&gt;
: Stable packages 0.5.8 were released. Two new drivers were added: the C-Media CMI8338 and 8738 PCI driver and the Yamaha YMF72x,74x,75x driver. Also, APM is supported for CS4231 &amp;amp; CS4235,6,7,8,9 chips. Otherwise, this release contains mostly bug-fixes backported from the ALSA development tree including the support for latest Linux kernels. Affected drivers: AZT2320, CMI8330, CS4236, ESS ES18xx, InterWave (GUS PnP), Opti 92x, Sound Blaster 16, AD1816A. &amp;lt;b&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Upgrade is recommended for all soundcards.&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2000-04-06&lt;br /&gt;
: Stable packages 0.5.7 were released. This release is a bug-fix release only. The support for MidiMan Delta 44 and 66 cards was added. Other changes - sequencer fixes, rawmidi fixes, AC'97 code updates, other minor cleanups.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-17&lt;br /&gt;
: New ALSA [[Mailing-lists|announce mailing list]] was created.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-11&lt;br /&gt;
: ALSA 0.5.6 packages were released (new drivers: RME Digi 96, VIA 82C686A AC'97 bridge | bugfixes: Intel i8x0/440MX, EMU10K1, AZT2320, RawMidi code + lowlevel drivers, alsamixer).&lt;br /&gt;
&lt;br /&gt;
; 2000-03-01&lt;br /&gt;
: ALSA 0.5.5 packages were released (API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-28&lt;br /&gt;
: ALSA 0.5.4b driver package was released (Intel i8x0/MX440 driver fixes).&lt;br /&gt;
: ALSA 0.5.4 packages were released (added alpha ESS Maestro 1/2/2E driver, improved Intel i8x0/440MX driver, AC'97 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-27&lt;br /&gt;
: ALSA 0.5.4a driver package was released (2.3.48 compilation fixed, PCM OSS Oops fixed). Upgrade is strongly recommended.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-16&lt;br /&gt;
: The 0.5.3 packages were released (RME Hammerfall/Light updates, ES1938 - Solo1 driver improved, AC'97 updates, Intel i8x0/440MX alpha driver added, sequencer updates, MTPAV updates, better SMP support for 2.3.x kernels, virmidi code added to EMU8000 &amp;amp; EMU10K1 synth drivers, snd-card-virmidi updates, AK4531 updates - ES1370, EMU10K1 rear volume fixed, ICE1712 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-14&lt;br /&gt;
: The ALSA server was upgraded. You may now enjoy the HtDig search engine for whole Web server plus mailing list archives.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-04&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA 0.5.2 packages] were released (added ICE1712 {Envy24} driver and AD1816A driver, RME9652 updates, EMU10K1 updates, SB8, ES18xx, serial MIDI driver updates, PCM API updates, AC'97 bugfixes). The [ftp://ftp.alsa-project.org/pub/others/envy24control GTK Envy24 control utility] is also available with some screenshots. Note: The current Envy24 driver may work only with the MidiMan soundcards (Delta serie). The driver supports only professional PCM at this time.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-22&lt;br /&gt;
: ALSA [ftp://ftp.alsa-project.org/pub packages 0.5.1] were released (PCM OSS emulation, EMU10K1 synth, ES1938, ENS1370).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ Final ALSA 0.5.0 packages] were released (added RME9652 -Hammerfall- driver, final API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-12&lt;br /&gt;
: The alsa-driver and alsa-lib [ftp://ftp.alsa-project.org/pub packages 0.5.0pre3] were released (trident driver, compilation trouble).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-11&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.5.0pre2] was released (enhanced EMU10K1 code, a compilation bugfix). Other [ftp://ftp.alsa-project.org/pub 0.5.0pre2 packages] were also released.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-10&lt;br /&gt;
: All [ftp://ftp.alsa-project.org/pub packages 0.5.0pre1] were were released. The final API freeze is expected at 14th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-20&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1i] was released with the bugfix for the generic code for AC'97. The problems with CS4297A volume levels are away.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-16&lt;br /&gt;
: The final ALSA API dead line is 10th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1h] was released with the bugfix for the ENS1370/ENS1371 drivers.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-06&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1g1] was released with minor bugfixes (mixer, rawmidi, CS461X).&lt;br /&gt;
&lt;br /&gt;
; 1999-12-02&lt;br /&gt;
: [http://www.alsa-project.org/announce.html The ALSA professional team] has been founded.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-01&lt;br /&gt;
: [http://www.alsa-project.org/cgi-bin/cvsweb.cgi CVS Web interface] is available. Created [[Mailing-lists|new mailing lists]]: alsa-doc, alsa-conf, alsa-howto and alsa-cvs. Mailing lists are archived through MHonArc. Web is now searchable through Ht://Dig.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1f2] was released with minor bugfixes (CS4231, CS4236, AC'97, 2.3.29 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-18&lt;br /&gt;
: Alpha EMU10K1 (Sound Blaster Live!) driver is available in CVS.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-03&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1e] was released with minor bugfixes (isapnp, CS4236+, Gallant SC-70P, 2.3.25 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-02&lt;br /&gt;
: Creative released their [http://opensource.creative.com/ source code for SB Live driver]. The ALSA SB Live driver will be available this month.&lt;br /&gt;
&lt;br /&gt;
; 1999-10-24&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1d] was released with minor bugfixes (CMI8330, 2+ soundcards, modules.conf handling, documentation files). Upgrade is recommended if your system has 2+ soundcards. [ftp://ftp.alsa-project.org/pub/lib ALSA library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).]A library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).&lt;br /&gt;
&lt;br /&gt;
; 1999-10-20&lt;br /&gt;
: Upgrade your modutils package, if you encounter 'segmentation fault' problems. Get fixed [ftp://ftp.ocs.com.au/pub/modutils/v2.3/modutils-2.3.6.tar.gz modutils-2.3.6.tar.gz] or an upgrade [ftp://ftp.alsa-project.org/pub/driver/misc/modules-2.2.2-44.i386.rpm package for SuSE 6.2].&lt;br /&gt;
&lt;br /&gt;
; 1999-10-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1c] was released with minor bugfixes (GUS, OPL3-SA2/3, RedHat 6.1). Upgrade is recommended for all soundcards.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1b] was released with next minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-01&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1a] was released with minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.1] were released. This is mostly bug-fix release.&lt;br /&gt;
: Statistics for WWW and FTP server are now available.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-15&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.0] were released. Older packages are not supported from this time.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-01&lt;br /&gt;
: The ALSA bug reporting system is up and going. To report bugs in ALSA packages, please go here and follow the instructions carefully.&lt;br /&gt;
&lt;br /&gt;
; 1999-06-17&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver/ ALSA driver version 0.3.2] released. This is a bug-fix release. If you have had any troubles with 0.3.1 or 0.3.0, please, try this version. Remember to upgrade [ftp://ftp.alsa-project.org/pub/lib/ lib] and [ftp://ftp.alsa-project.org/pub/utils/ utils] too. 0.3.x-series are the last to support 2.0.x kernels.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-23&lt;br /&gt;
: The alpha driver for the [http://www.crystal.com/ Cirrus Logic Sound Fusion CS461x (CS4280) PCI chips] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-05-14&lt;br /&gt;
: [[Mailing-lists|Mailing lists]] are now managed with the alsa.alsa-project.org machine.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-11&lt;br /&gt;
: The alpha driver for the [http://www.fortemedia.com/products/ ForteMedia FM801 PCI soundcard] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-29&lt;br /&gt;
: New page with the ALSA schedule is available.&lt;br /&gt;
&lt;br /&gt;
; 1999-04-23&lt;br /&gt;
: The call to hardware vendors was [[ALSA_Soundcard_Vendor_Information|updated]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-20&lt;br /&gt;
: The ALSA project has got own domain - alsa-project.org. Services (WWW/FTP/CVS) are running on the independent machine now.&lt;br /&gt;
&lt;br /&gt;
; 1999-03-16&lt;br /&gt;
: The releasing of 0.3.0pre5 packages is very delayed. We are working on new mixer API which will not be compatible with previous versions of ALSA packages. It seems that that this work needs a lot of our time. There are many changes in the current development tree (Trident 4DWave DX/NX driver &amp;lt;b&amp;gt;- thanks to Tridentfor their support -&amp;lt;/b&amp;gt;, timer interface, EMU8000 driver, OSS sequencer emulator), If you want to test or use the current code, you may get the sources directly from the [[Download|CVS server]] or there are also available [[Download|CVS snapshots]].&lt;br /&gt;
&lt;br /&gt;
; 1999-02-10&lt;br /&gt;
: Two alsa-driver and alsa-lib packages with version 0.3.0-pre4 [ftp://ftp.alsa-project.org/pub released]. The driver contains better support for 2.2.0+ kernels and allows mixing of ALSA and OSS/Lite modules.&lt;br /&gt;
&lt;br /&gt;
; 1999-02-05&lt;br /&gt;
: [[Download|CVS snapshots]] are available now.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-29&lt;br /&gt;
: Temporary AWE64 [http://ds.dial.pipex.com/sterat/alsa EMU8000 synth driver] for ALSA.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-24&lt;br /&gt;
: All packages with version 0.3.0-pre3 [ftp://ftp.alsa-project.org/pub released].&lt;br /&gt;
: [[ALSA_Library_API|New ALSA API description for 0.2.0 packages.]]&lt;br /&gt;
&lt;br /&gt;
; 1999-01-19&lt;br /&gt;
: [http://huizen.dds.nl/~valentyn/Alsa-sound-mini-HOWTO.html Alsa-sound-mini-HOWTO]&lt;br /&gt;
: Version 0.2.0-pre10p3 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes support for 2.2.0-pre1 kernel.&lt;br /&gt;
: Version 0.3.0-pre2 of alsa-lib [ftp://ftp.alsa-project.org/pub/lib released] which includes support for sequencer.&lt;br /&gt;
: Version 0.3.0-pre2 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes native support for ISA Plug &amp;amp;amp; Play cards, first version of sequencer and support for 2.2.0-pre1 kernel.&lt;br /&gt;
&lt;br /&gt;
; 1998-12-30&lt;br /&gt;
: [[ALSA_Soundcard_Vendor_Information|A call to sound card hardware vendors.]]&lt;br /&gt;
&lt;br /&gt;
; 1998-12-28&lt;br /&gt;
: [[ALSA Blacklist|Black List]]; Sound Blaster Live! [[ALSA_Blacklist|support]] (sorry)&lt;br /&gt;
&lt;br /&gt;
; 1998-11-10&lt;br /&gt;
: Version 0.1.3 of C library and Version 0.2.0-pre10 of driver [ftp://ftp.alsa-project.org/pub/driver released] which supports Cirrus Logic CS4232+/CS4236+, Ensoniq AudioPCI (ES1370/1371), and S3 SonicVibes.&lt;br /&gt;
&lt;br /&gt;
; 1998-11-04&lt;br /&gt;
: Version 0.0.7 of ALSA utilities [ftp://ftp.alsa-project.org/pub/lib released]&lt;br /&gt;
&lt;br /&gt;
; 1998-08-13&lt;br /&gt;
: [[Download|CVS is up]]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Changes_v1.0.25_v1.0.26</id>
		<title>Changes v1.0.25 v1.0.26</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Changes_v1.0.25_v1.0.26"/>
				<updated>2012-09-06T08:40:26Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
[[Detailed changes v1.0.25 v1.0.26]]&lt;br /&gt;
=Changelog between 1.0.25 and 1.0.26 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
===Control API===&lt;br /&gt;
: ucm: Improve cset command parsing&lt;br /&gt;
: control: Use strcpy() instead of stpcpy()&lt;br /&gt;
: hctl: Remove a useless assert&lt;br /&gt;
: Fix the binary compatibility of ext-ctl plugin with protocol 1.0.0&lt;br /&gt;
: tlv: improve robustness of raw value ranges&lt;br /&gt;
: control_external: Add ability to specify TLV data.&lt;br /&gt;
===Mixer API===&lt;br /&gt;
: mixer: Remove redundant CHECK_ENUM() from snd_mixer_selem_is_enum*()&lt;br /&gt;
===PCM API===&lt;br /&gt;
: PCM: plug: Move fast_ops copy after slave configuration.&lt;br /&gt;
: PCM: Allow to run older version of extplug plugin&lt;br /&gt;
: pcm_dsnoop: comment fall-through in next &amp;quot;case&amp;quot;&lt;br /&gt;
: pcm: add missing &amp;quot;break&amp;quot; in &amp;quot;switch&amp;quot;&lt;br /&gt;
: doc: Fix typo in PCM formats&lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: seqmid - more descriptions on snd_seq_parse_address() behavior&lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
: ucm: Add const to execute_cset() argument&lt;br /&gt;
: ucm: Improve cset command parsing&lt;br /&gt;
: ucm: Return NULL from get_list0() and get_list20() in case of empty lists.&lt;br /&gt;
: ucm: Add missing pthread.h include&lt;br /&gt;
: build: Fallback to alphasort() if versionsort() isn't available&lt;br /&gt;
: ucm: Handle repeat device and modifier enables/disables&lt;br /&gt;
===Configuration===&lt;br /&gt;
: build: Fallback to alphasort() if versionsort() isn't available&lt;br /&gt;
: conf: Add more USB devices to S/PDIF blacklist&lt;br /&gt;
: Fix invalid long long format specifier&lt;br /&gt;
: alsa-lib conf: Add two more USB devices to iec958 blacklist&lt;br /&gt;
: alsa-lib conf: block S/PDIF access for Sennheiser USB headset&lt;br /&gt;
: USB-Audio: Fixup card name for Logitech web camera&lt;br /&gt;
: USB-Audio: Blacklist iec958 for some USB devices&lt;br /&gt;
: conf/pcm: Add support for Echo3G devices. Thanks to unimatrix.&lt;br /&gt;
===External Control Plugin SDK===&lt;br /&gt;
: Fix the binary compatibility of ext-ctl plugin with protocol 1.0.0&lt;br /&gt;
: control_external: Add ability to specify TLV data.&lt;br /&gt;
===Test/Example code===&lt;br /&gt;
: test/latency.c: Fix string argument to getopt_long, so now it handles -E and -B&lt;br /&gt;
: Fix invalid long long format specifier&lt;br /&gt;
===Utils===&lt;br /&gt;
: build: Disable another compile chack with --disable-alsatest&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
: build: Don't call AC_CHECK_FUNC with --disable-alsatest&lt;br /&gt;
: configure.in: use AS_HELP_STRING everywhere&lt;br /&gt;
: configure.in: look for ncurses pkg-config first&lt;br /&gt;
: Trivial fixes in INSTALL file&lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: alsactl: Add reference to alsactl_init(7) in alsactl man page&lt;br /&gt;
: alsactl: Read only *.conf files when a directory is passed via INCLUDE&lt;br /&gt;
: alsactl: Do not access other cards than specified for init&lt;br /&gt;
===alsaloop===&lt;br /&gt;
: alsaloop: fix the avail_min setup&lt;br /&gt;
: alsaloop: Improve xrun_sync - fill missing playback samples&lt;br /&gt;
===alsamixer===&lt;br /&gt;
: amixer, alsamixer: Add description of volume-mapping&lt;br /&gt;
===amixer===&lt;br /&gt;
: amixer, alsamixer: Add description of volume-mapping&lt;br /&gt;
: amixer: Add the support for mapped volumes like alsamixer&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: aplay: Use open() instead of open64()&lt;br /&gt;
: aplay: Fix signal.h include&lt;br /&gt;
: aplay: print vu-meter to stderr, not stdout&lt;br /&gt;
: aplay/arecord: option to treat any xrun as fatal&lt;br /&gt;
: aplay - option to dump HW parameters&lt;br /&gt;
: Fix the examples in aplay.1&lt;br /&gt;
===aseqnet===&lt;br /&gt;
: aseqnet: Remove obsoleted .LO entry from man page&lt;br /&gt;
===cvscompile===&lt;br /&gt;
: Remove the cvscompile file&lt;br /&gt;
==alsa-tools==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
: Import hda-verb 0.4 to alsa-tools repo&lt;br /&gt;
: hdajackretask: Add new program for easy retask of hda pin nodes&lt;br /&gt;
===HDA Jack Retask===&lt;br /&gt;
: hdajackretask: Use autotools&lt;br /&gt;
: hdajackretask: Add new program for easy retask of hda pin nodes&lt;br /&gt;
===hda-verb===&lt;br /&gt;
: hda-verb: Don't include sys/io.h for PPC&lt;br /&gt;
: hda-verb: Add missing MYNAME definition for packaging&lt;br /&gt;
: Convert hda-verb to use automake&lt;br /&gt;
: Import hda-verb 0.4 to alsa-tools repo&lt;br /&gt;
===hwmixvolume===&lt;br /&gt;
: alsa-tools: hwmixvolume - update README for au88x0&lt;br /&gt;
===usx2yloader===&lt;br /&gt;
: usx2yloader: make fxload work without deprecated usbfs&lt;br /&gt;
==alsa-plugins==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
===PulseAudio -&amp;amp;gt; ALSA plugin===&lt;br /&gt;
: pulse: Support 24-bit formats&lt;br /&gt;
===USB stream plugin===&lt;br /&gt;
: usb_stream: Fix build with glibc 2.16&lt;br /&gt;
==alsa-python==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
===Test python scripts===&lt;br /&gt;
: Fix pyalsa tests for new function names&lt;br /&gt;
===pyalsa.alsamixer module===&lt;br /&gt;
: Fix get_volume_array() for mono channels&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Changes_v1.0.25_v1.0.26</id>
		<title>Changes v1.0.25 v1.0.26</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Changes_v1.0.25_v1.0.26"/>
				<updated>2012-09-06T08:40:26Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: 1 revision&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
[[Detailed changes v1.0.25 v1.0.26]]&lt;br /&gt;
=Changelog between 1.0.25 and 1.0.26 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
===Control API===&lt;br /&gt;
: ucm: Improve cset command parsing&lt;br /&gt;
: control: Use strcpy() instead of stpcpy()&lt;br /&gt;
: hctl: Remove a useless assert&lt;br /&gt;
: Fix the binary compatibility of ext-ctl plugin with protocol 1.0.0&lt;br /&gt;
: tlv: improve robustness of raw value ranges&lt;br /&gt;
: control_external: Add ability to specify TLV data.&lt;br /&gt;
===Mixer API===&lt;br /&gt;
: mixer: Remove redundant CHECK_ENUM() from snd_mixer_selem_is_enum*()&lt;br /&gt;
===PCM API===&lt;br /&gt;
: PCM: plug: Move fast_ops copy after slave configuration.&lt;br /&gt;
: PCM: Allow to run older version of extplug plugin&lt;br /&gt;
: pcm_dsnoop: comment fall-through in next &amp;quot;case&amp;quot;&lt;br /&gt;
: pcm: add missing &amp;quot;break&amp;quot; in &amp;quot;switch&amp;quot;&lt;br /&gt;
: doc: Fix typo in PCM formats&lt;br /&gt;
===Sequencer API===&lt;br /&gt;
: seqmid - more descriptions on snd_seq_parse_address() behavior&lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
: ucm: Add const to execute_cset() argument&lt;br /&gt;
: ucm: Improve cset command parsing&lt;br /&gt;
: ucm: Return NULL from get_list0() and get_list20() in case of empty lists.&lt;br /&gt;
: ucm: Add missing pthread.h include&lt;br /&gt;
: build: Fallback to alphasort() if versionsort() isn't available&lt;br /&gt;
: ucm: Handle repeat device and modifier enables/disables&lt;br /&gt;
===Configuration===&lt;br /&gt;
: build: Fallback to alphasort() if versionsort() isn't available&lt;br /&gt;
: conf: Add more USB devices to S/PDIF blacklist&lt;br /&gt;
: Fix invalid long long format specifier&lt;br /&gt;
: alsa-lib conf: Add two more USB devices to iec958 blacklist&lt;br /&gt;
: alsa-lib conf: block S/PDIF access for Sennheiser USB headset&lt;br /&gt;
: USB-Audio: Fixup card name for Logitech web camera&lt;br /&gt;
: USB-Audio: Blacklist iec958 for some USB devices&lt;br /&gt;
: conf/pcm: Add support for Echo3G devices. Thanks to unimatrix.&lt;br /&gt;
===External Control Plugin SDK===&lt;br /&gt;
: Fix the binary compatibility of ext-ctl plugin with protocol 1.0.0&lt;br /&gt;
: control_external: Add ability to specify TLV data.&lt;br /&gt;
===Test/Example code===&lt;br /&gt;
: test/latency.c: Fix string argument to getopt_long, so now it handles -E and -B&lt;br /&gt;
: Fix invalid long long format specifier&lt;br /&gt;
===Utils===&lt;br /&gt;
: build: Disable another compile chack with --disable-alsatest&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
: build: Don't call AC_CHECK_FUNC with --disable-alsatest&lt;br /&gt;
: configure.in: use AS_HELP_STRING everywhere&lt;br /&gt;
: configure.in: look for ncurses pkg-config first&lt;br /&gt;
: Trivial fixes in INSTALL file&lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
: alsactl: Add reference to alsactl_init(7) in alsactl man page&lt;br /&gt;
: alsactl: Read only *.conf files when a directory is passed via INCLUDE&lt;br /&gt;
: alsactl: Do not access other cards than specified for init&lt;br /&gt;
===alsaloop===&lt;br /&gt;
: alsaloop: fix the avail_min setup&lt;br /&gt;
: alsaloop: Improve xrun_sync - fill missing playback samples&lt;br /&gt;
===alsamixer===&lt;br /&gt;
: amixer, alsamixer: Add description of volume-mapping&lt;br /&gt;
===amixer===&lt;br /&gt;
: amixer, alsamixer: Add description of volume-mapping&lt;br /&gt;
: amixer: Add the support for mapped volumes like alsamixer&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
: aplay: Use open() instead of open64()&lt;br /&gt;
: aplay: Fix signal.h include&lt;br /&gt;
: aplay: print vu-meter to stderr, not stdout&lt;br /&gt;
: aplay/arecord: option to treat any xrun as fatal&lt;br /&gt;
: aplay - option to dump HW parameters&lt;br /&gt;
: Fix the examples in aplay.1&lt;br /&gt;
===aseqnet===&lt;br /&gt;
: aseqnet: Remove obsoleted .LO entry from man page&lt;br /&gt;
===cvscompile===&lt;br /&gt;
: Remove the cvscompile file&lt;br /&gt;
==alsa-tools==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
: Import hda-verb 0.4 to alsa-tools repo&lt;br /&gt;
: hdajackretask: Add new program for easy retask of hda pin nodes&lt;br /&gt;
===HDA Jack Retask===&lt;br /&gt;
: hdajackretask: Use autotools&lt;br /&gt;
: hdajackretask: Add new program for easy retask of hda pin nodes&lt;br /&gt;
===hda-verb===&lt;br /&gt;
: hda-verb: Don't include sys/io.h for PPC&lt;br /&gt;
: hda-verb: Add missing MYNAME definition for packaging&lt;br /&gt;
: Convert hda-verb to use automake&lt;br /&gt;
: Import hda-verb 0.4 to alsa-tools repo&lt;br /&gt;
===hwmixvolume===&lt;br /&gt;
: alsa-tools: hwmixvolume - update README for au88x0&lt;br /&gt;
===usx2yloader===&lt;br /&gt;
: usx2yloader: make fxload work without deprecated usbfs&lt;br /&gt;
==alsa-plugins==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
===PulseAudio -&amp;amp;gt; ALSA plugin===&lt;br /&gt;
: pulse: Support 24-bit formats&lt;br /&gt;
===USB stream plugin===&lt;br /&gt;
: usb_stream: Fix build with glibc 2.16&lt;br /&gt;
==alsa-python==&lt;br /&gt;
===Core===&lt;br /&gt;
: Release v1.0.26&lt;br /&gt;
===Test python scripts===&lt;br /&gt;
: Fix pyalsa tests for new function names&lt;br /&gt;
===pyalsa.alsamixer module===&lt;br /&gt;
: Fix get_volume_array() for mono channels&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-05T12:57:45Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master:refs/heads/master&lt;br /&gt;
&lt;br /&gt;
===Syncing===&lt;br /&gt;
&lt;br /&gt;
Note that 'master' branch in alsa-driver.git is synced with alsa-kernel.git 'master' branch manually by [[User:Perex]]. Here are some useful commands:&lt;br /&gt;
&lt;br /&gt;
 # for the alsa-driver tree&lt;br /&gt;
 git log -- mirror                       # show the mirrored kernel changes&lt;br /&gt;
 x=(*) ; git log -- ${x[@]//mirror}      # show the build code changes&lt;br /&gt;
&lt;br /&gt;
 # cross cherry picks between Linux kernel and alsa-driver trees&lt;br /&gt;
 git format-patch &amp;lt;what_you_want&amp;gt;&lt;br /&gt;
 git am --root=mirror &amp;lt;what_you_want&amp;gt;	# for the kernel -&amp;gt; alsa-driver&lt;br /&gt;
 git am -p2 &amp;lt;what_you_want&amp;gt;		# for the alsa-driver -&amp;gt; kernel&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-09-03T08:18:34Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for older 2.6 kernels with mirrored latest kernel code&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.nomirror.git&lt;br /&gt;
: old ALSA driver repository without the mirrored kernel code&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.nomirror.git alsa&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.nomirror.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master:refs/heads/master&lt;br /&gt;
&lt;br /&gt;
===Syncing===&lt;br /&gt;
&lt;br /&gt;
Note that 'master' branch in alsa-driver.git is synced with alsa-kernel.git 'master' branch manually by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only branches identifying ALSA version (alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git rebase origin/master&lt;br /&gt;
 git diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/MediaWiki:Common.css</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/MediaWiki:Common.css"/>
				<updated>2012-07-17T08:42:42Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: Created page with &amp;quot;/* CSS placed here will be applied to all skins */ .page-Main_Page h1.firstHeading { display: none; }&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
.page-Main_Page h1.firstHeading { display: none; }&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/User:Perex</id>
		<title>User:Perex</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/User:Perex"/>
				<updated>2012-07-16T15:26:01Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Jaroslav Kysela, the ALSA team leader&lt;br /&gt;
&lt;br /&gt;
Links for my quick orientation:&lt;br /&gt;
&lt;br /&gt;
* [{{fullurl:Template:ALSA download version|action=edit}} Edit ALSA download version template]&lt;br /&gt;
* [[Main Page News]]&lt;br /&gt;
&lt;br /&gt;
Something for others:&lt;br /&gt;
&lt;br /&gt;
* [[Perex-InterviewWithDanielJames]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TODO list ==&lt;br /&gt;
&lt;br /&gt;
; driver&lt;br /&gt;
: dB ranges - define the 0dB reference points, determine how we can mesure more close dB scale&lt;br /&gt;
: unify and define exact meaning for ALSA Control Elements&lt;br /&gt;
: expose mixer control routing to the user space&lt;br /&gt;
: modify Mic Boost from switch to value range (0-1) with a dB representation&lt;br /&gt;
: HDA driver - create a universal framework to allow configure the driver from the user space&lt;br /&gt;
: PCM - rethink period meaning, expose block writes to user space&lt;br /&gt;
&lt;br /&gt;
; library&lt;br /&gt;
: finish control/mixer API simplification&lt;br /&gt;
: add mapping for PCM stream -&amp;gt; mixer elements&lt;br /&gt;
&lt;br /&gt;
; hda-analyzer&lt;br /&gt;
: use ALSA control API to correlate direct hw I/O with ALSA I/O&lt;br /&gt;
: codec graph tool&lt;br /&gt;
&lt;br /&gt;
; ALSA server / web services&lt;br /&gt;
: finish git sync and merge tool&lt;br /&gt;
: update git http interface to latest version&lt;br /&gt;
&lt;br /&gt;
== udev ==&lt;br /&gt;
&lt;br /&gt;
  udevadm info -a -p $(udevadm info -q path -n /dev/snd/controlC0)&lt;br /&gt;
&lt;br /&gt;
  SUBSYSTEM!=&amp;quot;sound&amp;quot;, GOTO=&amp;quot;sound_end&amp;quot;&lt;br /&gt;
  ACTION!=&amp;quot;add|change&amp;quot;, GOTO=&amp;quot;sound_end&amp;quot;&lt;br /&gt;
  ATTRS{idVendor}==&amp;quot;15ca&amp;quot;,ATTRS{idProduct}==&amp;quot;0101&amp;quot;,\&lt;br /&gt;
        ATTRS{busnum}==&amp;quot;1&amp;quot;,ATTRS{devpath}==&amp;quot;1.1&amp;quot;,\&lt;br /&gt;
        ATTR{../id}=&amp;quot;Test&amp;quot;&lt;br /&gt;
  LABEL=&amp;quot;sound_end&amp;quot;&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/User:Perex</id>
		<title>User:Perex</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/User:Perex"/>
				<updated>2012-07-16T15:23:33Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Jaroslav Kysela, the ALSA team leader&lt;br /&gt;
&lt;br /&gt;
Links for my quick orientation:&lt;br /&gt;
&lt;br /&gt;
* [{{fullurl:Template:ALSA download version|action=edit}} Edit ALSA download version template]&lt;br /&gt;
* [[Main Page News]]&lt;br /&gt;
&lt;br /&gt;
Something for others:&lt;br /&gt;
&lt;br /&gt;
* [[Perex-InterviewWithDanielJames]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TODO list ==&lt;br /&gt;
&lt;br /&gt;
; driver&lt;br /&gt;
: dB ranges - define the 0dB reference points, determine how we can mesure more close dB scale&lt;br /&gt;
: unify and define exact meaning for ALSA Control Elements&lt;br /&gt;
: expose mixer control routing to the user space&lt;br /&gt;
: modify Mic Boost from switch to value range (0-1) with a dB representation&lt;br /&gt;
: HDA driver - create a universal framework to allow configure the driver from the user space&lt;br /&gt;
: PCM - rethink period meaning, expose block writes to user space&lt;br /&gt;
&lt;br /&gt;
; library&lt;br /&gt;
: finish control/mixer API simplification&lt;br /&gt;
: add mapping for PCM stream -&amp;gt; mixer elements&lt;br /&gt;
&lt;br /&gt;
; hda-analyzer&lt;br /&gt;
: use ALSA control API to correlate direct hw I/O with ALSA I/O&lt;br /&gt;
: codec graph tool&lt;br /&gt;
&lt;br /&gt;
; ALSA server / web services&lt;br /&gt;
: finish git sync and merge tool&lt;br /&gt;
: update git http interface to latest version&lt;br /&gt;
&lt;br /&gt;
== udev ==&lt;br /&gt;
&lt;br /&gt;
  SUBSYSTEM!=&amp;quot;sound&amp;quot;, GOTO=&amp;quot;sound_end&amp;quot;&lt;br /&gt;
  ACTION!=&amp;quot;add|change&amp;quot;, GOTO=&amp;quot;sound_end&amp;quot;&lt;br /&gt;
  ATTRS{idVendor}==&amp;quot;15ca&amp;quot;,ATTRS{idProduct}==&amp;quot;0101&amp;quot;,\&lt;br /&gt;
        ATTRS{busnum}==&amp;quot;1&amp;quot;,ATTRS{devpath}==&amp;quot;1.1&amp;quot;,\&lt;br /&gt;
        ATTR{../id}=&amp;quot;Test&amp;quot;&lt;br /&gt;
  LABEL=&amp;quot;sound_end&amp;quot;&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/MediaWiki:Sidebar</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/MediaWiki:Sidebar"/>
				<updated>2012-07-16T13:47:02Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* navigation&lt;br /&gt;
** mainpage|mainpage&lt;br /&gt;
** Developer_Zone|Developer Zone&lt;br /&gt;
** Download|Download...&lt;br /&gt;
** Matrix:Main|SoundCards&lt;br /&gt;
** Applications|Applications&lt;br /&gt;
** Documentation|Documentation&lt;br /&gt;
** Mailing-lists|Mailing-lists&lt;br /&gt;
** https://bugtrack.alsa-project.org/alsa-bug|Bug Tracker&lt;br /&gt;
** Help To Debug|Help to debug&lt;br /&gt;
** Links|Links&lt;br /&gt;
* wiki&lt;br /&gt;
** AlsaProject:About|About&lt;br /&gt;
** portal-url|portal&lt;br /&gt;
** currentevents-url|currentevents&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
** sitesupport-url|sitesupport&lt;br /&gt;
** helppage|help&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/MediaWiki:Sidebar</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/MediaWiki:Sidebar"/>
				<updated>2012-07-16T13:46:45Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* navigation&lt;br /&gt;
** mainpage|mainpage&lt;br /&gt;
** Developer_Zone|Developer Zone&lt;br /&gt;
** Download|.Download.&lt;br /&gt;
** Matrix:Main|SoundCards&lt;br /&gt;
** Applications|Applications&lt;br /&gt;
** Documentation|Documentation&lt;br /&gt;
** Mailing-lists|Mailing-lists&lt;br /&gt;
** https://bugtrack.alsa-project.org/alsa-bug|Bug Tracker&lt;br /&gt;
** Help To Debug|Help to debug&lt;br /&gt;
** Links|Links&lt;br /&gt;
* wiki&lt;br /&gt;
** AlsaProject:About|About&lt;br /&gt;
** portal-url|portal&lt;br /&gt;
** currentevents-url|currentevents&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
** sitesupport-url|sitesupport&lt;br /&gt;
** helppage|help&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/MediaWiki:Sidebar</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/MediaWiki:Sidebar"/>
				<updated>2012-07-16T13:46:18Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* navigation&lt;br /&gt;
** mainpage|mainpage&lt;br /&gt;
** Developer_Zone|Developer Zone&lt;br /&gt;
** Download|Download&lt;br /&gt;
** Matrix:Main|SoundCards&lt;br /&gt;
** Applications|Applications&lt;br /&gt;
** Documentation|Documentation&lt;br /&gt;
** Mailing-lists|Mailing-lists&lt;br /&gt;
** https://bugtrack.alsa-project.org/alsa-bug|Bug Tracker&lt;br /&gt;
** Help To Debug|Help to debug&lt;br /&gt;
** Links|Links&lt;br /&gt;
* wiki&lt;br /&gt;
** AlsaProject:About|About&lt;br /&gt;
** portal-url|portal&lt;br /&gt;
** currentevents-url|currentevents&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
** sitesupport-url|sitesupport&lt;br /&gt;
** helppage|help&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-03-05T09:29:25Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for 2.2, 2.4 and older 2.6 kernels&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/?p=tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master:refs/heads/master&lt;br /&gt;
&lt;br /&gt;
===Syncing===&lt;br /&gt;
&lt;br /&gt;
Note that 'master' branch in alsa-kernel.git is synced with alsa-kmirror.git 'master' branch automatically. So if you add a patch to alsa-kernel.git, it will be merged to alsa-kmirror.git (if no problem occurs) when you initiate 'git push' to the ALSA server. It's really required to see messages from the pre-receive script when something goes wrong. The script is trying to suggest what's going wrong and try to show you a problematic code (diff).&lt;br /&gt;
&lt;br /&gt;
Pushing to 'alsa-kmirror.git' should be only done if:&lt;br /&gt;
&lt;br /&gt;
: a) you fixing a sync problem&lt;br /&gt;
: b) you are modifying a file which is out of sync (scripts directory or so)&lt;br /&gt;
&lt;br /&gt;
In all other cases, only alsa-kernel.git repository should be used.&lt;br /&gt;
&lt;br /&gt;
The pre-receive script uses all four commit identifiers Author + AuthorDate + Commit + CommitDate to pair commits between alsa-kernel.git and alsa-kmirror.git. Use this information, if you like to add some commits manually to alsa-kmirror.git tree.&lt;br /&gt;
&lt;br /&gt;
====Common problems====&lt;br /&gt;
&lt;br /&gt;
; PRE-RECEIVE repositories does not match, please, fix it&lt;br /&gt;
: The alsa-kmirror.git#mastter and alsa-kernel.git#master sources does not match. You have to do manual changes in alsa-kmirror.git repository to sync trees. A diff between alsa-kmirror.git and alsa-kernel.git is printed to stderr, so you can analyze it and do appropriate steps.&lt;br /&gt;
&lt;br /&gt;
; PRE-RECEIVE Patch failed - is it already merged?&lt;br /&gt;
: Appearently, you're trying to apply a patch which cannot be applied cleanly to alsa-kmirror.git#master. One reason might be that the patch is already applied, but the pre-receive script does not know about it. You may add commiter and commitdate to alsa-kmirror/scripts/git-ok-commits file to skip problematic commit (but only if you really verify, that this commit is already in the alsa-kmirror tree).&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only tags identifying ALSA version (alsa-kmirror.git and alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git-branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git-reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git-rebase origin/master&lt;br /&gt;
 git-diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git-format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git-send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git-pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-03-05T09:28:58Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for 2.2, 2.4 and older 2.6 kernels&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
: Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master:refs/heads/master&lt;br /&gt;
&lt;br /&gt;
===Syncing===&lt;br /&gt;
&lt;br /&gt;
Note that 'master' branch in alsa-kernel.git is synced with alsa-kmirror.git 'master' branch automatically. So if you add a patch to alsa-kernel.git, it will be merged to alsa-kmirror.git (if no problem occurs) when you initiate 'git push' to the ALSA server. It's really required to see messages from the pre-receive script when something goes wrong. The script is trying to suggest what's going wrong and try to show you a problematic code (diff).&lt;br /&gt;
&lt;br /&gt;
Pushing to 'alsa-kmirror.git' should be only done if:&lt;br /&gt;
&lt;br /&gt;
: a) you fixing a sync problem&lt;br /&gt;
: b) you are modifying a file which is out of sync (scripts directory or so)&lt;br /&gt;
&lt;br /&gt;
In all other cases, only alsa-kernel.git repository should be used.&lt;br /&gt;
&lt;br /&gt;
The pre-receive script uses all four commit identifiers Author + AuthorDate + Commit + CommitDate to pair commits between alsa-kernel.git and alsa-kmirror.git. Use this information, if you like to add some commits manually to alsa-kmirror.git tree.&lt;br /&gt;
&lt;br /&gt;
====Common problems====&lt;br /&gt;
&lt;br /&gt;
; PRE-RECEIVE repositories does not match, please, fix it&lt;br /&gt;
: The alsa-kmirror.git#mastter and alsa-kernel.git#master sources does not match. You have to do manual changes in alsa-kmirror.git repository to sync trees. A diff between alsa-kmirror.git and alsa-kernel.git is printed to stderr, so you can analyze it and do appropriate steps.&lt;br /&gt;
&lt;br /&gt;
; PRE-RECEIVE Patch failed - is it already merged?&lt;br /&gt;
: Appearently, you're trying to apply a patch which cannot be applied cleanly to alsa-kmirror.git#master. One reason might be that the patch is already applied, but the pre-receive script does not know about it. You may add commiter and commitdate to alsa-kmirror/scripts/git-ok-commits file to skip problematic commit (but only if you really verify, that this commit is already in the alsa-kmirror tree).&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only tags identifying ALSA version (alsa-kmirror.git and alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git-branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git-reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git-rebase origin/master&lt;br /&gt;
 git-diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git-format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git-send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git-pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/GIT_Server</id>
		<title>GIT Server</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/GIT_Server"/>
				<updated>2012-03-05T09:28:42Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==ALSA Repositories==&lt;br /&gt;
&lt;br /&gt;
; alsa-driver.git&lt;br /&gt;
: contains compatibility and build code for 2.2, 2.4 and older 2.6 kernels&lt;br /&gt;
; alsa-kernel.git&lt;br /&gt;
: contains linux 2.6 kernel tree&lt;br /&gt;
; alsa-kmirror.git&lt;br /&gt;
: alsa kernel mirror tree for continuous development (contains ALSA parts from alsa-kernel.git tree)&lt;br /&gt;
&lt;br /&gt;
; alsa-kprivate.git&lt;br /&gt;
: contains linux 2.6 kernel tree - for private branches for alsa developers&lt;br /&gt;
&lt;br /&gt;
; alsa-lib.git&lt;br /&gt;
: library&lt;br /&gt;
; alsa-utils.git;&lt;br /&gt;
: utilities&lt;br /&gt;
; alsa-firmware.git&lt;br /&gt;
: firmware&lt;br /&gt;
; alsa-tools.git&lt;br /&gt;
: tools&lt;br /&gt;
; alsa-plugins.git&lt;br /&gt;
: plugins&lt;br /&gt;
; alsa-oss.git&lt;br /&gt;
: oss compatibility&lt;br /&gt;
; alsa-python.git&lt;br /&gt;
: official python binding&lt;br /&gt;
; alsa-ucm-conf.git&lt;br /&gt;
: ALSA Use-Case-Manager configuration library&lt;br /&gt;
; tinycompress.git&lt;br /&gt;
; Compressed formats support library&lt;br /&gt;
&lt;br /&gt;
; alsa.git&lt;br /&gt;
: ALSA service repo (misc files)&lt;br /&gt;
&lt;br /&gt;
==Anonymous access==&lt;br /&gt;
&lt;br /&gt;
===Read only GIT server===&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-driver.git alsa-driver&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-kprivate.git alsa-kprivate&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-lib.git alsa-lib&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-utils.git alsa-utils&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-firmware.git alsa-firmware&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-tools.git alsa-tools&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-plugins.git alsa-plugins&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-oss.git alsa-oss&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-python.git alsa-python&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa-ucm-conf.git alsa-ucm-conf&lt;br /&gt;
: git clone git://git.alsa-project.org/tinycompress.git tinycompress&lt;br /&gt;
&lt;br /&gt;
: git clone git://git.alsa-project.org/alsa.git alsa&lt;br /&gt;
&lt;br /&gt;
===Web interface===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kernel.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa-ucm-conf.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/?p=alsa.git&lt;br /&gt;
&lt;br /&gt;
===HTTP access===&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-driver.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kernel.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-kprivate.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-lib.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-utils.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-firmware.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-tools.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-plugins.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-oss.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-python.git&lt;br /&gt;
: http://git.alsa-project.org/http/alsa-ucm-conf.git&lt;br /&gt;
: http://git.alsa-project.org/http/tinycompress.git&lt;br /&gt;
&lt;br /&gt;
: http://git.alsa-project.org/http/alsa.git&lt;br /&gt;
&lt;br /&gt;
==For developers - kernel drivers==&lt;br /&gt;
&lt;br /&gt;
===Common rules===&lt;br /&gt;
&lt;br /&gt;
: 1) be very very very carefull when you use '--force' for 'git push', you can broke whole repository, you should notify other developers on alsa-devel mailing list that you will do this change for 'master' branch&lt;br /&gt;
: 2) valid 'Signed-off-by:' line must be in the commit text&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kernel.git===&lt;br /&gt;
&lt;br /&gt;
: 1) subject (first commit text line) must start with '[ALSA] ' or 'ALSA: ' or '[sound] ' or 'sound: '&lt;br /&gt;
&lt;br /&gt;
===Rules for alsa-kprivate.git===&lt;br /&gt;
&lt;br /&gt;
No rules. Just do not overwrite branches created by someone else. The 'master' branch is equal to linux-2.6 official tree from &lt;br /&gt;
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (do sync if necessary):&lt;br /&gt;
&lt;br /&gt;
  git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
  git checkout master&lt;br /&gt;
  git pull linux-2.6 master&lt;br /&gt;
  git push --tags origin master:refs/heads/master&lt;br /&gt;
&lt;br /&gt;
===Syncing===&lt;br /&gt;
&lt;br /&gt;
Note that 'master' branch in alsa-kernel.git is synced with alsa-kmirror.git 'master' branch automatically. So if you add a patch to alsa-kernel.git, it will be merged to alsa-kmirror.git (if no problem occurs) when you initiate 'git push' to the ALSA server. It's really required to see messages from the pre-receive script when something goes wrong. The script is trying to suggest what's going wrong and try to show you a problematic code (diff).&lt;br /&gt;
&lt;br /&gt;
Pushing to 'alsa-kmirror.git' should be only done if:&lt;br /&gt;
&lt;br /&gt;
: a) you fixing a sync problem&lt;br /&gt;
: b) you are modifying a file which is out of sync (scripts directory or so)&lt;br /&gt;
&lt;br /&gt;
In all other cases, only alsa-kernel.git repository should be used.&lt;br /&gt;
&lt;br /&gt;
The pre-receive script uses all four commit identifiers Author + AuthorDate + Commit + CommitDate to pair commits between alsa-kernel.git and alsa-kmirror.git. Use this information, if you like to add some commits manually to alsa-kmirror.git tree.&lt;br /&gt;
&lt;br /&gt;
====Common problems====&lt;br /&gt;
&lt;br /&gt;
; PRE-RECEIVE repositories does not match, please, fix it&lt;br /&gt;
: The alsa-kmirror.git#mastter and alsa-kernel.git#master sources does not match. You have to do manual changes in alsa-kmirror.git repository to sync trees. A diff between alsa-kmirror.git and alsa-kernel.git is printed to stderr, so you can analyze it and do appropriate steps.&lt;br /&gt;
&lt;br /&gt;
; PRE-RECEIVE Patch failed - is it already merged?&lt;br /&gt;
: Appearently, you're trying to apply a patch which cannot be applied cleanly to alsa-kmirror.git#master. One reason might be that the patch is already applied, but the pre-receive script does not know about it. You may add commiter and commitdate to alsa-kmirror/scripts/git-ok-commits file to skip problematic commit (but only if you really verify, that this commit is already in the alsa-kmirror tree).&lt;br /&gt;
&lt;br /&gt;
===Clone repositories===&lt;br /&gt;
&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-driver.git alsa-driver&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kernel.git alsa-kernel&lt;br /&gt;
 git clone git@git.alsa-project.org:alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
To show all branches (includes remote ones):&lt;br /&gt;
&lt;br /&gt;
 git branch -a&lt;br /&gt;
&lt;br /&gt;
To make a remote branch local:&lt;br /&gt;
&lt;br /&gt;
 git checkout -b for-linus origin/for-linus&lt;br /&gt;
 git checkout -b linux-2.6 origin/linux-2.6&lt;br /&gt;
&lt;br /&gt;
===Update and rebase using Linus's 2.6 kernel tree===&lt;br /&gt;
&lt;br /&gt;
Add remote URL:&lt;br /&gt;
&lt;br /&gt;
 git remote add linux-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git&lt;br /&gt;
&lt;br /&gt;
Checkout linux-2.6 branch:&lt;br /&gt;
&lt;br /&gt;
 git checkout linux-2.6&lt;br /&gt;
&lt;br /&gt;
Pull Linus's 2.6 changes:&lt;br /&gt;
&lt;br /&gt;
 git pull linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
Rebase our main ALSA development master branch with linux-2.6:&lt;br /&gt;
&lt;br /&gt;
 git rebase linux-2.6 master&lt;br /&gt;
&lt;br /&gt;
===Push branch changes to ALSA GIT repository===&lt;br /&gt;
&lt;br /&gt;
 git push --tags origin master:refs/heads/master&lt;br /&gt;
 git push --tags origin linux-2.6:refs/heads/linux-2.6&lt;br /&gt;
 git push --tags origin for-linus:refs/heads/for-linus&lt;br /&gt;
&lt;br /&gt;
Note: Especially after 'git rebase' the repository on server is not consistent with local repository (remote ref is not ancestor of the local ref for master branch), so you have to use --force parameter for 'git push' command. Note that this might be dangerous - please, ask Jaroslav Kysela &amp;lt; perex at perex . cz &amp;gt; if you can do this for branch 'master'.&lt;br /&gt;
&lt;br /&gt;
===Branches===&lt;br /&gt;
&lt;br /&gt;
; master&lt;br /&gt;
: this branch is for main development, managed by Jaroslav Kysela, it is rebased before ALSA releases&lt;br /&gt;
: the contents is synced to alsa-kmirror.git&lt;br /&gt;
&lt;br /&gt;
; linux-next&lt;br /&gt;
: this branch is for linux next testing tree (originaly maintaned by Andrew Morton), rebased &lt;br /&gt;
&lt;br /&gt;
; for-linus&lt;br /&gt;
: this branch is for mainstream tree (for Linus Torvalds), just temporary branch&lt;br /&gt;
&lt;br /&gt;
; linux-2.6&lt;br /&gt;
: this is official linux 2.6 mainstream tree&lt;br /&gt;
&lt;br /&gt;
; stable-2.6.&amp;lt;number&amp;gt;&lt;br /&gt;
: patches for stable 2.6 kernels&lt;br /&gt;
&lt;br /&gt;
===Tags===&lt;br /&gt;
&lt;br /&gt;
Private tags are not allowed. Only tags identifying ALSA version (alsa-kmirror.git and alsa-driver.git) or official linux kernel version (alsa-kernel.git) are allowed.&lt;br /&gt;
&lt;br /&gt;
===Maintenance===&lt;br /&gt;
&lt;br /&gt;
GIT server is maintaned by [[User:Perex]].&lt;br /&gt;
&lt;br /&gt;
==Occasional Developers==&lt;br /&gt;
This section is for developers without write access to ALSA git. i.e., who will clone repos and send in patches&lt;br /&gt;
&lt;br /&gt;
===clone the repository===&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-driver.git alsa-driver &lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
if you live behind a firewall that blocks the git protocol, you can do this instead:&lt;br /&gt;
&lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-driver.git alsa-driver &lt;br /&gt;
 git clone http://git.alsa-project.org/http/alsa-kmirror.git alsa-kmirror&lt;br /&gt;
&lt;br /&gt;
if you like do only changes in code in alsa-kmirror, please, use alsa-kernel repository&lt;br /&gt;
&lt;br /&gt;
 git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel&lt;br /&gt;
&lt;br /&gt;
but we accept patches in both forms&lt;br /&gt;
&lt;br /&gt;
===configure git===&lt;br /&gt;
Set your email address correctly otherwise commits get spurious email address for Author and Commiter&lt;br /&gt;
 git config --add user.email me@domain.com&lt;br /&gt;
&lt;br /&gt;
Make sure it knows how to send email (for patches)&lt;br /&gt;
 git config --add sendemail.smtpserver smtp.domain.com&lt;br /&gt;
&lt;br /&gt;
===save current===&lt;br /&gt;
in case you want to roll back&lt;br /&gt;
 git-branch save&lt;br /&gt;
&lt;br /&gt;
===do your work===&lt;br /&gt;
edit, compile, test, sweat&lt;br /&gt;
&lt;br /&gt;
If it didn't work out and you want to get back to the old tree&lt;br /&gt;
 git-reset --hard save&lt;br /&gt;
&lt;br /&gt;
===generate patches===&lt;br /&gt;
Want to get patch against latest, so rebase &lt;br /&gt;
 git-rebase origin/master&lt;br /&gt;
 git-diff remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
Then do this to generate the patchset&lt;br /&gt;
 git-format-patch -s -n -p --subject-prefix=&amp;quot;PATCH - my module&amp;quot; remotes/origin/master&lt;br /&gt;
&lt;br /&gt;
===check the patches===&lt;br /&gt;
 /lib/modules/`uname -r`/build/scripts/checkpatch.pl --no-tree *.patch&lt;br /&gt;
&lt;br /&gt;
===sending the patches===&lt;br /&gt;
&lt;br /&gt;
 git-send-email --from=me --to=patch@alsa-project.org --cc=alsa-devel@alsa-project.org  000*.patch&lt;br /&gt;
&lt;br /&gt;
===get up to date===&lt;br /&gt;
For both alsa-kmirror and alsa-driver&lt;br /&gt;
 git-pull&lt;br /&gt;
&lt;br /&gt;
Sometimes you can just make and things will be fine. However, when there have been changes to the build system etc, its best to do a make clean; ./gitcompile to get the tree properly up to date.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Help_To_Debug_Intel_HDA</id>
		<title>Help To Debug Intel HDA</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Help_To_Debug_Intel_HDA"/>
				<updated>2012-02-09T13:37:52Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==For Users==&lt;br /&gt;
&lt;br /&gt;
===Troubleshooting===&lt;br /&gt;
&lt;br /&gt;
====Mixer configuration====&lt;br /&gt;
&lt;br /&gt;
First of all, try fiddling with the mixer settings on alsamixer. Don't forget about:&lt;br /&gt;
&lt;br /&gt;
* Checking all alsamixer tabs using the Tab key&lt;br /&gt;
* You can switching mute/unmute using the M key&lt;br /&gt;
* On the &amp;quot;Capture&amp;quot; tab, you can change the capture source setting using the spacebar &lt;br /&gt;
&lt;br /&gt;
===='model' parameter====&lt;br /&gt;
&lt;br /&gt;
Sometimes the support for your system (or a similar one) is available on the driver, but the right system model wasn't detected by the driver. You can try different values for the model parameter for the snd-hda-intel module (see [http://git.alsa-project.org/?p=alsa-kernel.git;a=blob;f=Documentation/sound/alsa/HD-Audio-Models.txt;hb=HEAD HD-Audio-Models.txt]) and see if some of them fix your problem.&lt;br /&gt;
&lt;br /&gt;
If this works, please report this problem, providing the [[#Reporting problems|relevant information]].&lt;br /&gt;
&lt;br /&gt;
====Try a newer alsa version====&lt;br /&gt;
&lt;br /&gt;
If everything else fails, you can check if a newer ALSA version fixes your problem.&lt;br /&gt;
&lt;br /&gt;
(TODO: pointer to article about how to get a newer ALSA version running)&lt;br /&gt;
&lt;br /&gt;
====Try a lowlevel GUI tool to control your codec====&lt;br /&gt;
&lt;br /&gt;
The [[HDA Analyzer|HDA-Analyzer]] python utility to find and debug the problem.&lt;br /&gt;
&lt;br /&gt;
===Reporting problems===&lt;br /&gt;
&lt;br /&gt;
Almost all problems are related to the specific codec configuration. When reporting problems, please provide contents of:&lt;br /&gt;
&lt;br /&gt;
* /proc/asound/card*/codec#* files&lt;br /&gt;
* Output of lspci -vvnn, at least the part corresponding to the Intel HDA device &lt;br /&gt;
&lt;br /&gt;
At best, run alsa-info.sh script [http://www.alsa-project.org/alsa-info.sh] and give the output information. If you post to ML or bugzilla, it's helpful to attach the generated file via alsa-info.sh --no-upload option.&lt;br /&gt;
&lt;br /&gt;
==For Developers==&lt;br /&gt;
&lt;br /&gt;
Fetch the [http://www.intel.com/standards/hdaudio/ Intel HDA specification], you will need it.&lt;br /&gt;
&lt;br /&gt;
Also look at [http://ftp.kernel.org/pub/linux/kernel/people/tiwai/docs/HD-Audio.html Documentation/sound/alsa/HD-Audio.txt] in the kernel tree. This contains some detailed information for development/debugging HD-audio driver. The on-line documents are found in the link section below.&lt;br /&gt;
&lt;br /&gt;
===Basic HDA Intel Concepts===&lt;br /&gt;
&lt;br /&gt;
The snd-hda-intel driver speak to codecs through the the Intel HDA bus. Each codec has many '''widgets''' inside it, and the driver can send messages (called '''verbs''') to them to change their settings. Each widget may collect audio input from other widgets, and may their output may be sent to other widgets. The driver may probe the codec and know exactly how the widgets are wired inside the codec. The /proc/asound/card*/codec#* file contains this information.&lt;br /&gt;
&lt;br /&gt;
Commonly found types of widgets:&lt;br /&gt;
&lt;br /&gt;
* '''Pin Complexes''' are input and/or output interfaces to the outside world. They normally correspond to real audio jacks, speakers or microphones on the machine&lt;br /&gt;
* '''Audio Input/Output''', '''ADC''', or '''DAC''' are the interface between the codec and the HDA bus. This is where ALSA sends/consumes the audio streams to/from&lt;br /&gt;
* '''Selectors and Mixers''' allow the driver to combine and/or select audio input coming from multiple widgets &lt;br /&gt;
&lt;br /&gt;
Each widget may contain '''amplifiers''' on its inputs or outputs. The amplifiers may be controlled by the driver to change audio volume and unmute/mute audio input or output. The mixer controls seen on alsamixer normally correspond to an specific amplifier on an specific widget inside the codec.&lt;br /&gt;
&lt;br /&gt;
===Common sources of problems===&lt;br /&gt;
&lt;br /&gt;
Normally problems are on the patch_*.c files, that are codec-specific. The codec-specific code normally have to do four things:&lt;br /&gt;
&lt;br /&gt;
* Correctly detect which system model is being used, based on PCI IDs or other information&lt;br /&gt;
* Correctly initialize the widges inside the codec&lt;br /&gt;
* Correctly tell hda-intel to use the right Audio ADC/DAC node as source for the PCM streams that will be registered with ALSA&lt;br /&gt;
* Correctly tell hda-intel which amplifiers inside the codec will be controlled by the mixer controls registered with ALSA &lt;br /&gt;
&lt;br /&gt;
====Model detection====&lt;br /&gt;
&lt;br /&gt;
The driver needs to detect the system model, so that it knows how the audio is wired on the system, especially the audio input/outputs from the codec to the external world.&lt;br /&gt;
&lt;br /&gt;
====Initialization====&lt;br /&gt;
&lt;br /&gt;
Normally the drivers have 'init verbs' tables for each model. You will want to look up the HDA Intel specification to understand what they do.&lt;br /&gt;
&lt;br /&gt;
====PCM stream registration====&lt;br /&gt;
&lt;br /&gt;
The driver needs to register audio streams with alsa, that will be used for recording and playback. Most of this task is done by the hda-intel core code, but the codec-specific driver needs to tell hda-intel what are the NIDs of the ADC and DAC widgets for each audio stream.&lt;br /&gt;
&lt;br /&gt;
====Mixer registration====&lt;br /&gt;
&lt;br /&gt;
The driver normally register mixer controls with alsa. Normally this task is done by the hda-intel core code, but the codec-specific code needs to tell hda-intel which amplifiers inside the code chip will be controled by the mixer controls.&lt;br /&gt;
&lt;br /&gt;
====Other codec- or model-specific stuff====&lt;br /&gt;
&lt;br /&gt;
* Speaker auto-muting when headphones are plugged&lt;br /&gt;
* Possibly other stuff... &lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.intel.com/standards/hdaudio/ Intel HDA specification]&lt;br /&gt;
* [http://ftp.kernel.org/pub/linux/kernel/people/tiwai/docs/HD-Audio.html HD-Audio document in kernel tree (HTML)]&lt;br /&gt;
* [http://ftp.kernel.org/pub/linux/kernel/people/tiwai/docs/HD-Audio.html HD-Audio document in kernel tree (PDF)]&lt;br /&gt;
* [http://helllabs.org/codecgraph Nice HDA graphing tool]&lt;br /&gt;
* [[HDA Analyzer|HDA Analyzer]]&lt;br /&gt;
* [https://code.launchpad.net/~diwic/+junk/hda-jack-retask hda-jack-retask]&lt;br /&gt;
* ...links to codecs...&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Main_Page_News</id>
		<title>Main Page News</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Main_Page_News"/>
				<updated>2012-01-25T09:47:42Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;; 2012-01-25&lt;br /&gt;
: alsa 1.0.25 release | [[Changes v1.0.24 v1.0.25]]&lt;br /&gt;
&lt;br /&gt;
; 2011-01-31&lt;br /&gt;
: alsa 1.0.24 release | [[Changes v1.0.23 v1.0.24]]&lt;br /&gt;
&lt;br /&gt;
; 2010-04-16&lt;br /&gt;
: alsa 1.0.23 release | [[Changes v1.0.22 v1.0.23]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-28&lt;br /&gt;
: alsa-driver 1.0.22.1 release | [[Changes v1.0.22 v1.0.22.1]]&lt;br /&gt;
&lt;br /&gt;
; 2009-12-16&lt;br /&gt;
: alsa 1.0.22 release | [[Changes v1.0.21 v1.0.22]]&lt;br /&gt;
&lt;br /&gt;
; 2009-09-09&lt;br /&gt;
: alsa-lib 1.0.21a release | [[Changes v1.0.21 v1.0.21a]]&lt;br /&gt;
&lt;br /&gt;
; 2009-08-31&lt;br /&gt;
: alsa 1.0.21 release | [[Changes v1.0.20 v1.0.21|changes from 1.0.20]]&lt;br /&gt;
&lt;br /&gt;
; 2009-05-06&lt;br /&gt;
: alsa 1.0.20 release | [[Changes v1.0.19 v1.0.20|changes from 1.0.19]]&lt;br /&gt;
&lt;br /&gt;
; 2009-01-19&lt;br /&gt;
: alsa 1.0.19 release | [[Changes v1.0.18 v1.0.19|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-11-12&lt;br /&gt;
: alsa-driver 1.0.18a release | [[Changes v1.0.18 v1.0.18a|changes from 1.0.18]]&lt;br /&gt;
&lt;br /&gt;
; 2008-10-29&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-tools,alsa-plugins 1.0.18 release | [[Changes v1.0.18rc3 v1.0.18|changes from 1.0.18rc3]] | [[Changes v1.0.17 v1.0.18|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-09-09&lt;br /&gt;
: alsa-driver,alsa-lib,alsa-utils,alsa-plugins 1.0.18rc3 release | [[Changes v1.0.18rc2 v1.0.18rc3|changes from 1.0.18rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-19&lt;br /&gt;
: alsa-utils,alsa-plugins 1.0.18rc2 release | [[Changes v1.0.18rc1 v1.0.18rc2|changes from 1.0.18rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-driver.alsa-utils,alsa-plugins 1.0.18rc1 release | [[Changes v1.0.17a v1.0.18rc1|changes from 1.0.17a]]&lt;br /&gt;
&lt;br /&gt;
; 2008-08-18&lt;br /&gt;
: alsa-lib 1.0.17a release | [[Changes v1.0.17 v1.0.17a|changes from 1.0.17]]&lt;br /&gt;
&lt;br /&gt;
; 2008-07-14&lt;br /&gt;
: ALSA 1.0.17 release (all packages) | [[Changes v1.0.17rc3 v1.0.17|changes from 1.0.17rc3]] | [[Changes v1.0.16 v1.0.17|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-27&lt;br /&gt;
: ALSA 1.0.17rc3 release (driver only) | [[Changes v1.0.17rc2 v1.0.17rc3|changes from 1.0.17rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-16&lt;br /&gt;
: ALSA 1.0.17rc2 release | [[Changes v1.0.17rc1 v1.0.17rc2|changes from 1.0.17rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-06-06&lt;br /&gt;
: ALSA 1.0.17rc1 release | [[Changes v1.0.16 v1.0.17rc1|changes from 1.0.16]]&lt;br /&gt;
&lt;br /&gt;
; 2008-05-20&lt;br /&gt;
: All repositories converted from HG (Mercurial) to GIT&lt;br /&gt;
&lt;br /&gt;
; 2008-02-06&lt;br /&gt;
: ALSA 1.0.16 final release | [[Changes v1.0.15 v1.0.16|changes from 1.0.15]] | [[Changes v1.0.16rc2 v1.0.16|changes from 1.0.16rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-29&lt;br /&gt;
: ALSA 1.0.16rc2 release | [[Changes v1.0.16rc1 v1.0.16rc2|changes from 1.0.16rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2008-01-22&lt;br /&gt;
: ALSA 1.0.16rc1 release | [[Changes v1.0.15 v1.0.16rc1|changes from 1.0.15]]&lt;br /&gt;
&lt;br /&gt;
; 2007-10-16&lt;br /&gt;
: ALSA 1.0.15 final release | [[Changes v1.0.14 v1.0.15|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-26&lt;br /&gt;
: ALSA 1.0.15rc3 release | [[Changes v1.0.15rc2 v1.0.15rc3|changes from 1.0.15rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-09-13&lt;br /&gt;
: ALSA 1.0.15rc2 release | [[Changes v1.0.15rc1 v1.0.15rc2|changes from 1.0.15rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-31&lt;br /&gt;
: ALSA 1.0.15rc1 release | [[Changes v1.0.14 v1.0.15rc1|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-08-09&lt;br /&gt;
: ALSA WWW site switched to [http://www.mediawiki.org MediaWiki]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-11&lt;br /&gt;
: ALSA 1.0.14a library bugfix release | [[Changes v1.0.14 v1.0.14a|changes from 1.0.14]]&lt;br /&gt;
&lt;br /&gt;
; 2007-06-04&lt;br /&gt;
: ALSA 1.0.14 release | [[Changes v1.0.13 v1.0.14|changes from 1.0.13]] | [[Changes v1.0.14rc4 v1.0.14|changes from 1.0.14rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2007-04-03&lt;br /&gt;
: ALSA 1.0.14rc4 release | [[Changes v1.0.14rc3 v1.0.14rc4|changes from 1.0.14rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2007-03-06&lt;br /&gt;
: ALSA 1.0.14rc3 release | [[Changes v1.0.14rc2 v1.0.14rc3|changes from 1.0.14rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2007-01-16&lt;br /&gt;
: ALSA 1.0.14rc2 release | [[Changes v1.0.14rc1 v1.0.14rc2|changes from 1.0.14rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-12-11&lt;br /&gt;
: ALSA 1.0.14rc1 release | [[Changes v1.0.13 v1.0.14rc1|changes from 1.0.13]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-29&lt;br /&gt;
: ALSA 1.0.13 release | [[Changes v1.0.12 v1.0.13|changes from 1.0.12]] | [[Changes 1.0.13rc3 v1.0.13|changes from 1.0.13rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-26&lt;br /&gt;
: ALSA 1.0.13rc3 release | [[Changes v1.0.13rc2 v1.0.13rc3|changes from 1.0.13rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-15&lt;br /&gt;
: ALSA 1.0.13rc2 release | [[Changes v1.0.13rc1 v1.0.13rc2|changes from 1.0.13rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-09-01&lt;br /&gt;
: ALSA 1.0.13rc1 release | [[Changes v1.0.12 v1.0.13rc1|changes from 1.0.12]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-24&lt;br /&gt;
: ALSA 1.0.12 release | [[Changes v1.0.11 v1.0.12|changes from 1.0.11]] | [[Changes 1.0.12rc3 v1.0.12|changes from 1.0.12rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-15&lt;br /&gt;
: ALSA 1.0.12rc3 release (driver only) | [[Changes v1.0.12rc2 v1.0.12rc3|changes from 1.0.12rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-08-03&lt;br /&gt;
: ALSA 1.0.12rc2 release | [[Changes v1.0.12rc1 v1.0.12rc2|changes from 1.0.12rc1]]&lt;br /&gt;
&lt;br /&gt;
; 2006-06-23&lt;br /&gt;
: ALSA 1.0.12rc1 release | [[Changes v1.0.11 v1.0.12rc1|changes from 1.0.11]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-19&lt;br /&gt;
: ALSA 1.0.11 final release | [[Changes v1.0.10 v1.0.11|changes from 1.0.10]]&lt;br /&gt;
&lt;br /&gt;
; 2006-04-11&lt;br /&gt;
: ALSA 1.0.11rc5 release | [[Changes v1.0.11rc4 v1.0.11rc5|changes from 1.0.11rc4]]&lt;br /&gt;
&lt;br /&gt;
; 2006-03-22&lt;br /&gt;
: ALSA 1.0.11rc4 release | [[Changes v1.0.11rc3 v1.0.11rc4|changes from 1.0.11rc3]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-29&lt;br /&gt;
: ALSA 1.0.11rc3 release | [[Changes v1.0.11rc2 v1.0.11rc3|changes from 1.0.11rc2]]&lt;br /&gt;
&lt;br /&gt;
; 2006-01-02&lt;br /&gt;
: ALSA 1.0.11rc2 release | [[Changes v1.0.11rc1 v1.0.11rc2|changes from 1.0.11rc1]] | Happy New Year 2006&lt;br /&gt;
&lt;br /&gt;
; 2005-12-12&lt;br /&gt;
: ALSA 1.0.11rc1 release | [[Changes v1.0.10 v1.0.11rc1|changes from 1.0.10 final]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-16&lt;br /&gt;
: ALSA 1.0.10 release | [[Changes v1.0.10rc3 v1.0.10|changes from 1.0.10rc3]] |  [[Changes 1.0.9 v1.0.10|changes from 1.0.9]]&lt;br /&gt;
&lt;br /&gt;
; 2005-11-08&lt;br /&gt;
: ALSA 1.0.10rc3 release | [[Changes v1.0.10rc2 v1.0.10rc3|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-10-10&lt;br /&gt;
: ALSA 1.0.10rc2 release | [[Changes v1.0.10rc1 v1.0.10rc2|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-08-20&lt;br /&gt;
: ALSA 1.0.10rc1 release | [[Changes v1.0.9b v1.0.10rc1|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-07&lt;br /&gt;
: ALSA 1.0.9b release | [[Changes v1.0.9a v1.0.9b|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-06-02&lt;br /&gt;
: ALSA 1.0.9a release | [[Changes v1.0.9 v1.0.9a|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-27&lt;br /&gt;
: ALSA 1.0.9 final release | [[Changes v1.0.8 v1.0.9|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-05-23&lt;br /&gt;
: ALSA 1.0.9rc4 release&lt;br /&gt;
&lt;br /&gt;
; 2005-05-02&lt;br /&gt;
: ALSA 1.0.9rc3 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-24&lt;br /&gt;
: ALSA 1.0.9rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2005-03-13&lt;br /&gt;
: ALSA 1.0.9rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2005-01-13&lt;br /&gt;
: ALSA 1.0.8 release | [[Changes v1.0.7 v1.0.8|changes]]&lt;br /&gt;
&lt;br /&gt;
; 2005-01-06&lt;br /&gt;
: ALSA 1.0.8rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-12-22&lt;br /&gt;
: ALSA 1.0.8rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-11-15&lt;br /&gt;
: ALSA 1.0.7 release&lt;br /&gt;
&lt;br /&gt;
; 2004-10-13&lt;br /&gt;
: ALSA 1.0.7rc2 release&lt;br /&gt;
&lt;br /&gt;
; 2004-09-08&lt;br /&gt;
: ALSA 1.0.7rc1 release&lt;br /&gt;
&lt;br /&gt;
; 2004-08-15&lt;br /&gt;
: ALSA 1.0.6 release&lt;br /&gt;
&lt;br /&gt;
; 2004-06-11&lt;br /&gt;
: ALSA server software was upgraded.  Anonymous rsync access [[Download|was changed.]]&lt;br /&gt;
&lt;br /&gt;
; 2004-05-31&lt;br /&gt;
: 1.0.5a driver release | bugfix for the &amp;quot;hang-up&amp;quot; problem in the ALSA driver initialization&lt;br /&gt;
&lt;br /&gt;
; 2004-05-28&lt;br /&gt;
: 1.0.5 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-04-03&lt;br /&gt;
: 1.0.4 release | mostly bug-fixes and cleanups&lt;br /&gt;
&lt;br /&gt;
; 2004-03-30&lt;br /&gt;
: 1.0.4rc2 driver release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-27&lt;br /&gt;
: 1.0.4rc1 release | report compilation problems, please&lt;br /&gt;
&lt;br /&gt;
; 2004-03-13&lt;br /&gt;
: alsa-lib 1.0.3b released -  it fixes SIGSEGV problem for dmix plugin (when a specific GCC version is used)&lt;br /&gt;
&lt;br /&gt;
; 2004-03-06&lt;br /&gt;
: alsa-lib 1.0.3a released - it fixes again the dmix/dshare/dsnoop poll() problems&lt;br /&gt;
&lt;br /&gt;
; 2004-02-29&lt;br /&gt;
: 1.0.3 packages released | added driver for ATI IXP 150/200/250 chips and HDSP MADI driver&lt;br /&gt;
&lt;br /&gt;
; 2004-02-25&lt;br /&gt;
: 1.0.3rc2 packages released&lt;br /&gt;
&lt;br /&gt;
; 2004-02-04&lt;br /&gt;
: 1.0.2c driver package release | More fixes for compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-02-03&lt;br /&gt;
: 1.0.2b driver package release | It fixes next 2.6 kernel compilation problems.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-30&lt;br /&gt;
: 1.0.2a driver package release | It should fix most of 2.6 kernel compilation problems and adds RME HDSP MADI (hdspm) driver.&lt;br /&gt;
&lt;br /&gt;
; 2004-01-27&lt;br /&gt;
: New ALSA bugtracking system using Mantis is [http://bugtrack.alsa-project.org/alsa-bug/ available].&lt;br /&gt;
&lt;br /&gt;
; 2004-01-26&lt;br /&gt;
: 1.0.2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2004-01-08&lt;br /&gt;
: 1.0.1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2003-12-05&lt;br /&gt;
: 1.0.0rc2 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | bt87x driver added, more OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-12-01&lt;br /&gt;
: 1.0.0rc1 release | &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ENJOY!&amp;lt;/font&amp;gt; | intel8x0 driver fixes, OSS PCM emulation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-11-25&lt;br /&gt;
: 1.0.0pre3 release | alsa-tools packages is divided now - firmware files are in alsa-firmware package.&lt;br /&gt;
&lt;br /&gt;
; 2003-11-18&lt;br /&gt;
: 1.0.0pre1 release | This release is indented for wide testing.&lt;br /&gt;
&lt;br /&gt;
; 2003-10-21&lt;br /&gt;
: 0.9.8 release&lt;br /&gt;
&lt;br /&gt;
; 2003-10-13&lt;br /&gt;
: 0.9.7c driver release - PDE and vortex driver compilation fixes&lt;br /&gt;
&lt;br /&gt;
; 2003-10-10&lt;br /&gt;
: 0.9.7b driver release - it fixes serious bug in PCM (mutex hangup)&lt;br /&gt;
&lt;br /&gt;
; 2003-10-01&lt;br /&gt;
: 0.9.7a driver release - fixes bugs (including oops) in the OSS PCM emulation layer&lt;br /&gt;
&lt;br /&gt;
; 2003-09-25&lt;br /&gt;
: 0.9.7 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-28&lt;br /&gt;
: 0.9.6 release&lt;br /&gt;
&lt;br /&gt;
; 2003-07-09&lt;br /&gt;
: 0.9.5 release&lt;br /&gt;
&lt;br /&gt;
; 2003-06-01&lt;br /&gt;
: 0.9.4 release&lt;br /&gt;
&lt;br /&gt;
; 2003-05-20&lt;br /&gt;
: *** 0.9.3c driver maintaince release *** configuration fixes + other updates&lt;br /&gt;
&lt;br /&gt;
; 2003-05-19&lt;br /&gt;
: *** 0.9.3b driver maintaince release *** ISA PnP and other fixes. We removed /proc/asound/dev directory. The 'make install' should create new device files, but in case of problems, the snddevices script should be executed.&lt;br /&gt;
&lt;br /&gt;
; 2003-04-30&lt;br /&gt;
: *** 0.9.3 release *** Moved firmware code from vxpocket and hdsp driver to alsa-tools. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-19&lt;br /&gt;
: *** 0.9.2 release *** Added dsnoop and dshare PCM plugins to alsa-lib. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-11&lt;br /&gt;
: *** 0.9.1 release *** First stable release of the 0.9 serie. Enjoy!&lt;br /&gt;
&lt;br /&gt;
; 2003-03-10&lt;br /&gt;
: alsa-driver 0.9.0rc8d released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-08&lt;br /&gt;
: alsa-driver 0.9.0rc8c released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-07&lt;br /&gt;
: alsa-lib 0.9.0rc8c and alsa-utils 0.9.0rc8a released&lt;br /&gt;
&lt;br /&gt;
; 2003-03-05&lt;br /&gt;
: alsa-lib and alsa-driver 0.9.0rc8b release&lt;br /&gt;
: alsa-driver 0.9.0rc8a released (fixed compilation problem for older kernels)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-03&lt;br /&gt;
: alsa-lib 0.9.0rc8a released (fixed compilation problem)&lt;br /&gt;
&lt;br /&gt;
; 2003-03-02&lt;br /&gt;
: 0.9.0 release candidate #8 (all packages) is available for download. It is probably last release before 0.9.0 final. You will find in the alsa-lib package the dmix plugin which allows mixing of multiple PCM streams together without the client/server mechanism.&lt;br /&gt;
&lt;br /&gt;
; 2003-01-28&lt;br /&gt;
: 0.9.0 release candidate #7 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-25&lt;br /&gt;
: The fix for GCC 3.2 has been integrated into the 0.9.0rc5 package. Please, redownload the updated package from our server when you reached this problem. (New package is dated 2002/10/25&lt;br /&gt;
&lt;br /&gt;
; 2002-10-24&lt;br /&gt;
: 0.9.0 release candidate #5 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download. This &amp;quot;quick&amp;quot; release should fix the build problems for alsa-lib and alsa-utils packages.&lt;br /&gt;
: Note#2: Please, notice that we merged snd-via686 and snd-via8233 into the snd-via82xx module. Also, the snd-usb-midi module users should use the snd-usb-audio module which has integrated support for both USB audio and MIDI.&lt;br /&gt;
: Note: We have changed the kernel module symbol names (module parameter names). We removed prefix 'snd_'. Please, update your /etc/modules.conf files by hand or use our alsa-driver/utils/module-options script which does this job. Please, notice that 'snd_' prefix is not equal to 'snd-' prefix (module name) which is left unchanged.&lt;br /&gt;
&lt;br /&gt;
; 2002-10-22&lt;br /&gt;
: 0.9.0 release candidate #4 (alsa-driver, alsa-lib, alsa-utils and alsa-tools packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-22&lt;br /&gt;
: Note for compiling  alsa-driver-0.9.0rc3: Please remove the file - alsa-driver-0.9.0rc3/include/linux/isapnp.h - before running the configure script.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-15&lt;br /&gt;
: 0.9.0 release candidate #3 (alsa-driver, alsa-lib and alsa-utils packages) is available for download.&lt;br /&gt;
&lt;br /&gt;
; 2002-08-09&lt;br /&gt;
: The new online user documentation is now public. Access is through the soundcard matrix. PHP is used to automatically provide the necessary parameters needed to set up a module and required scripts. Users are encouraged to add notes via the notes additions form.&lt;br /&gt;
&lt;br /&gt;
; 2002-06-19&lt;br /&gt;
: Release Candidate #2 is available to download. ALSA packages 0.9.0rc2 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-04-24&lt;br /&gt;
: Release Candidate #1 is available to download. ALSA packages 0.9.0rc1 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-26&lt;br /&gt;
: ALSA packages 0.9.0beta12 were released.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-17&lt;br /&gt;
: ALSA packages 0.9.0beta11 were released. The driver package contains a new directory tree synced with the Linux 2.5 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2002-02-13&lt;br /&gt;
: ALSA has been integrated to the official Linux 2.5 tree! The initial merge is in patch-2.5.5-pre1.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-30&lt;br /&gt;
: The 0.5.12a driver was released. It's maintaince release to fix problems with 2.4.14+ kernels. &amp;lt;BR&amp;gt; The 0.9.0beta10 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-11-05&lt;br /&gt;
: The 0.9.0beta9 packages were released.  &amp;lt;hr /&amp;gt; The 0.5.12 driver was released.&lt;br /&gt;
&lt;br /&gt;
; 2001-09-27&lt;br /&gt;
: The 0.9.0beta8 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-08-23&lt;br /&gt;
: The 0.9.0beta7 packages were released.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-22&lt;br /&gt;
: The 0.9.0beta6 alsa-driver and alsa-lib packages have fixed compilation bugs. Please, download these packages again.&lt;br /&gt;
&lt;br /&gt;
; 2001-07-20&lt;br /&gt;
: The 0.9.0beta6 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-06-28&lt;br /&gt;
: The 0.9.0beta5 packages were released for public with uniform support for multichannel cards and raw IEC958 (S/PDIF).&lt;br /&gt;
&lt;br /&gt;
; 2001-05-25&lt;br /&gt;
: Mailing lists are moved to SourceForge. Please, check [[Mailing-lists|this page]] for the subscription details.&lt;br /&gt;
: The 0.9.0beta4 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-05-14&lt;br /&gt;
: The driver 0.5.11 was released. Changes: IA64 arch support, ALi 5451 driver added, AWACS driver added (for PPC), AC'97, PCM OSS emulation, sequencer OSS emulation, AD1816A, ALS4000, AZT2320, CMIPCI, CS4236, CS4281, CS461X, ES1968, Maestro 3, NM256, OPL3SA2, SB16, SB-AWE, YMFPCI.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-20&lt;br /&gt;
: The 0.9.0beta3 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-03-02&lt;br /&gt;
: The 0.9.0beta2 packages were released for public.&lt;br /&gt;
&lt;br /&gt;
; 2001-02-21&lt;br /&gt;
: The 0.9.0beta1 packages were released for public. Please, check out our FTP site to obtain them.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-23&lt;br /&gt;
: The ALSA driver package version 0.5.10b was released. New driver: VIA VT8233 South Bridge. Bugfixes: NM256, AC'97.&lt;br /&gt;
&lt;br /&gt;
; 2001-01-07&lt;br /&gt;
: The ALSA driver package version 0.5.10a was released. New driver: NeoMagic NM256AV/ZX. Bugfixes: Maestro3, MPU401 UART, AZT2320, RME96, CS461x, timer, YMFPCI, CMI8330, FM801, CS4232, ENS1371, 2.4.0-prerelease kernel support.&lt;br /&gt;
&lt;br /&gt;
; 2000-12-07&lt;br /&gt;
: The ALSA packages version 0.5.10 were released. New drivers: ALS4000, Maestro3 (Allegro), CS4281. Bugfixes: AC'97 code, SB16, EMUX000 MIDI, CMIPCI, SB8, CS4236, Intel8x0, CS461x, YMFPCI, MPU401, AD1816A, 2.2.18pre kernels, man pages.&lt;br /&gt;
&lt;br /&gt;
; 2000-10-10&lt;br /&gt;
: ALSA driver package version 0.5.9d was released. Bugfixes:  2.2.18pre kernels, YMFPCI, CMIPCI, EMU10K1, OSS sequencer emulator, CS4236, RME9652, rawmidi, intel8x0.&lt;br /&gt;
&lt;br /&gt;
; 2000-09-22&lt;br /&gt;
: ALSA project helps to realize the unique demonstration prepared by the Audio Engineering Society's (AES) Technical Committee on Network Audio Systems. Recording Engineers in Los Angeles will mix 12 high quality audio channels streamed live over the Internet from Montreal. [http://www.aes.org/events/109/events.cfm Event description.] [http://www.cim.mcgill.ca/~jer/projects/aes/ Demo description.]&lt;br /&gt;
&lt;br /&gt;
; 2000-09-02&lt;br /&gt;
: ALSA driver package version 0.5.9c was released. Bugfixes:  SB16, AD1816A, AZT2320, EMU8000/EMU10K1, CMIPCI, YMFPCI, intel-i8x0, general. &amp;lt;hr&amp;gt; ALSA package with utilities version 0.5.9b was released. Updated programs: aplay, aseqnet.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-18&lt;br /&gt;
: ALSA driver package version 0.5.9b was released. More bugfixes: CS4236, EMU10K1, OSS mmap() for non-x86 platforms, ENS1370, ENS1371.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-11&lt;br /&gt;
: ALSA driver package version 0.5.9a was released. It contains more 64-bit cleanaups and support for 2.4.0-test6 kernel.&lt;br /&gt;
&lt;br /&gt;
; 2000-08-07&lt;br /&gt;
: Packages 0.5.9 were released. These packages contain cleanups for alpha linux platform. Changed drivers: OPTi92x/93x, VIA686A, YMFPCI, MPU-401, EMU10K1, SB16, SB8, seq_virmidi, ENS1370/1, rawmidi.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-25&lt;br /&gt;
: The driver 0.5.8b was released containing bugfixes for these drivers: sequencer, YMFPCI, CS4236, ES1968, ICE1712, Opti92x/93x, EMU10K1.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-06&lt;br /&gt;
: The driver 0.5.8a was released. It contains compilation bugfix for latest 2.3 and 2.4-test kernels. The Yamaha driver was fixed for YMF724F.&lt;br /&gt;
&lt;br /&gt;
; 2000-06-05&lt;br /&gt;
: Stable packages 0.5.8 were released. Two new drivers were added: the C-Media CMI8338 and 8738 PCI driver and the Yamaha YMF72x,74x,75x driver. Also, APM is supported for CS4231 &amp;amp; CS4235,6,7,8,9 chips. Otherwise, this release contains mostly bug-fixes backported from the ALSA development tree including the support for latest Linux kernels. Affected drivers: AZT2320, CMI8330, CS4236, ESS ES18xx, InterWave (GUS PnP), Opti 92x, Sound Blaster 16, AD1816A. &amp;lt;b&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Upgrade is recommended for all soundcards.&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 2000-04-06&lt;br /&gt;
: Stable packages 0.5.7 were released. This release is a bug-fix release only. The support for MidiMan Delta 44 and 66 cards was added. Other changes - sequencer fixes, rawmidi fixes, AC'97 code updates, other minor cleanups.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-17&lt;br /&gt;
: New ALSA [[Mailing-lists|announce mailing list]] was created.&lt;br /&gt;
&lt;br /&gt;
; 2000-03-11&lt;br /&gt;
: ALSA 0.5.6 packages were released (new drivers: RME Digi 96, VIA 82C686A AC'97 bridge | bugfixes: Intel i8x0/440MX, EMU10K1, AZT2320, RawMidi code + lowlevel drivers, alsamixer).&lt;br /&gt;
&lt;br /&gt;
; 2000-03-01&lt;br /&gt;
: ALSA 0.5.5 packages were released (API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-28&lt;br /&gt;
: ALSA 0.5.4b driver package was released (Intel i8x0/MX440 driver fixes).&lt;br /&gt;
: ALSA 0.5.4 packages were released (added alpha ESS Maestro 1/2/2E driver, improved Intel i8x0/440MX driver, AC'97 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-27&lt;br /&gt;
: ALSA 0.5.4a driver package was released (2.3.48 compilation fixed, PCM OSS Oops fixed). Upgrade is strongly recommended.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-16&lt;br /&gt;
: The 0.5.3 packages were released (RME Hammerfall/Light updates, ES1938 - Solo1 driver improved, AC'97 updates, Intel i8x0/440MX alpha driver added, sequencer updates, MTPAV updates, better SMP support for 2.3.x kernels, virmidi code added to EMU8000 &amp;amp; EMU10K1 synth drivers, snd-card-virmidi updates, AK4531 updates - ES1370, EMU10K1 rear volume fixed, ICE1712 updates).&lt;br /&gt;
&lt;br /&gt;
; 2000-02-14&lt;br /&gt;
: The ALSA server was upgraded. You may now enjoy the HtDig search engine for whole Web server plus mailing list archives.&lt;br /&gt;
&lt;br /&gt;
; 2000-02-04&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA 0.5.2 packages] were released (added ICE1712 {Envy24} driver and AD1816A driver, RME9652 updates, EMU10K1 updates, SB8, ES18xx, serial MIDI driver updates, PCM API updates, AC'97 bugfixes). The [ftp://ftp.alsa-project.org/pub/others/envy24control GTK Envy24 control utility] is also available with some screenshots. Note: The current Envy24 driver may work only with the MidiMan soundcards (Delta serie). The driver supports only professional PCM at this time.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-22&lt;br /&gt;
: ALSA [ftp://ftp.alsa-project.org/pub packages 0.5.1] were released (PCM OSS emulation, EMU10K1 synth, ES1938, ENS1370).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ Final ALSA 0.5.0 packages] were released (added RME9652 -Hammerfall- driver, final API cleanups).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-12&lt;br /&gt;
: The alsa-driver and alsa-lib [ftp://ftp.alsa-project.org/pub packages 0.5.0pre3] were released (trident driver, compilation trouble).&lt;br /&gt;
&lt;br /&gt;
; 2000-01-11&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.5.0pre2] was released (enhanced EMU10K1 code, a compilation bugfix). Other [ftp://ftp.alsa-project.org/pub 0.5.0pre2 packages] were also released.&lt;br /&gt;
&lt;br /&gt;
; 2000-01-10&lt;br /&gt;
: All [ftp://ftp.alsa-project.org/pub packages 0.5.0pre1] were were released. The final API freeze is expected at 14th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-20&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1i] was released with the bugfix for the generic code for AC'97. The problems with CS4297A volume levels are away.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-16&lt;br /&gt;
: The final ALSA API dead line is 10th January 2000.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1h] was released with the bugfix for the ENS1370/ENS1371 drivers.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-06&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1g1] was released with minor bugfixes (mixer, rawmidi, CS461X).&lt;br /&gt;
&lt;br /&gt;
; 1999-12-02&lt;br /&gt;
: [http://www.alsa-project.org/announce.html The ALSA professional team] has been founded.&lt;br /&gt;
&lt;br /&gt;
; 1999-12-01&lt;br /&gt;
: [http://www.alsa-project.org/cgi-bin/cvsweb.cgi CVS Web interface] is available. Created [[Mailing-lists|new mailing lists]]: alsa-doc, alsa-conf, alsa-howto and alsa-cvs. Mailing lists are archived through MHonArc. Web is now searchable through Ht://Dig.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1f2] was released with minor bugfixes (CS4231, CS4236, AC'97, 2.3.29 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-18&lt;br /&gt;
: Alpha EMU10K1 (Sound Blaster Live!) driver is available in CVS.&lt;br /&gt;
&lt;br /&gt;
; 1999-11-03&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1e] was released with minor bugfixes (isapnp, CS4236+, Gallant SC-70P, 2.3.25 kernel).&lt;br /&gt;
&lt;br /&gt;
; 1999-11-02&lt;br /&gt;
: Creative released their [http://opensource.creative.com/ source code for SB Live driver]. The ALSA SB Live driver will be available this month.&lt;br /&gt;
&lt;br /&gt;
; 1999-10-24&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1d] was released with minor bugfixes (CMI8330, 2+ soundcards, modules.conf handling, documentation files). Upgrade is recommended if your system has 2+ soundcards. [ftp://ftp.alsa-project.org/pub/lib ALSA library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).]A library 0.4.1d&amp;lt;/A&amp;gt; was released (PCM cleanup fixes).&lt;br /&gt;
&lt;br /&gt;
; 1999-10-20&lt;br /&gt;
: Upgrade your modutils package, if you encounter 'segmentation fault' problems. Get fixed [ftp://ftp.ocs.com.au/pub/modutils/v2.3/modutils-2.3.6.tar.gz modutils-2.3.6.tar.gz] or an upgrade [ftp://ftp.alsa-project.org/pub/driver/misc/modules-2.2.2-44.i386.rpm package for SuSE 6.2].&lt;br /&gt;
&lt;br /&gt;
; 1999-10-07&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1c] was released with minor bugfixes (GUS, OPL3-SA2/3, RedHat 6.1). Upgrade is recommended for all soundcards.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-16&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1b] was released with next minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-09-01&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver ALSA driver version 0.4.1a] was released with minor bugfixes.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-26&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.1] were released. This is mostly bug-fix release.&lt;br /&gt;
: Statistics for WWW and FTP server are now available.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-15&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/ ALSA packages version 0.4.0] were released. Older packages are not supported from this time.&lt;br /&gt;
&lt;br /&gt;
; 1999-08-01&lt;br /&gt;
: The ALSA bug reporting system is up and going. To report bugs in ALSA packages, please go here and follow the instructions carefully.&lt;br /&gt;
&lt;br /&gt;
; 1999-06-17&lt;br /&gt;
: [ftp://ftp.alsa-project.org/pub/driver/ ALSA driver version 0.3.2] released. This is a bug-fix release. If you have had any troubles with 0.3.1 or 0.3.0, please, try this version. Remember to upgrade [ftp://ftp.alsa-project.org/pub/lib/ lib] and [ftp://ftp.alsa-project.org/pub/utils/ utils] too. 0.3.x-series are the last to support 2.0.x kernels.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-23&lt;br /&gt;
: The alpha driver for the [http://www.crystal.com/ Cirrus Logic Sound Fusion CS461x (CS4280) PCI chips] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-05-14&lt;br /&gt;
: [[Mailing-lists|Mailing lists]] are now managed with the alsa.alsa-project.org machine.&lt;br /&gt;
&lt;br /&gt;
; 1999-05-11&lt;br /&gt;
: The alpha driver for the [http://www.fortemedia.com/products/ ForteMedia FM801 PCI soundcard] is available on the [[Download|CVS]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-29&lt;br /&gt;
: New page with the ALSA schedule is available.&lt;br /&gt;
&lt;br /&gt;
; 1999-04-23&lt;br /&gt;
: The call to hardware vendors was [[ALSA_Soundcard_Vendor_Information|updated]].&lt;br /&gt;
&lt;br /&gt;
; 1999-04-20&lt;br /&gt;
: The ALSA project has got own domain - alsa-project.org. Services (WWW/FTP/CVS) are running on the independent machine now.&lt;br /&gt;
&lt;br /&gt;
; 1999-03-16&lt;br /&gt;
: The releasing of 0.3.0pre5 packages is very delayed. We are working on new mixer API which will not be compatible with previous versions of ALSA packages. It seems that that this work needs a lot of our time. There are many changes in the current development tree (Trident 4DWave DX/NX driver &amp;lt;b&amp;gt;- thanks to Tridentfor their support -&amp;lt;/b&amp;gt;, timer interface, EMU8000 driver, OSS sequencer emulator), If you want to test or use the current code, you may get the sources directly from the [[Download|CVS server]] or there are also available [[Download|CVS snapshots]].&lt;br /&gt;
&lt;br /&gt;
; 1999-02-10&lt;br /&gt;
: Two alsa-driver and alsa-lib packages with version 0.3.0-pre4 [ftp://ftp.alsa-project.org/pub released]. The driver contains better support for 2.2.0+ kernels and allows mixing of ALSA and OSS/Lite modules.&lt;br /&gt;
&lt;br /&gt;
; 1999-02-05&lt;br /&gt;
: [[Download|CVS snapshots]] are available now.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-29&lt;br /&gt;
: Temporary AWE64 [http://ds.dial.pipex.com/sterat/alsa EMU8000 synth driver] for ALSA.&lt;br /&gt;
&lt;br /&gt;
; 1999-01-24&lt;br /&gt;
: All packages with version 0.3.0-pre3 [ftp://ftp.alsa-project.org/pub released].&lt;br /&gt;
: [[ALSA_Library_API|New ALSA API description for 0.2.0 packages.]]&lt;br /&gt;
&lt;br /&gt;
; 1999-01-19&lt;br /&gt;
: [http://huizen.dds.nl/~valentyn/Alsa-sound-mini-HOWTO.html Alsa-sound-mini-HOWTO]&lt;br /&gt;
: Version 0.2.0-pre10p3 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes support for 2.2.0-pre1 kernel.&lt;br /&gt;
: Version 0.3.0-pre2 of alsa-lib [ftp://ftp.alsa-project.org/pub/lib released] which includes support for sequencer.&lt;br /&gt;
: Version 0.3.0-pre2 of driver [ftp://ftp.alsa-project.org/pub/driver released] which includes native support for ISA Plug &amp;amp;amp; Play cards, first version of sequencer and support for 2.2.0-pre1 kernel.&lt;br /&gt;
&lt;br /&gt;
; 1998-12-30&lt;br /&gt;
: [[ALSA_Soundcard_Vendor_Information|A call to sound card hardware vendors.]]&lt;br /&gt;
&lt;br /&gt;
; 1998-12-28&lt;br /&gt;
: [[ALSA Blacklist|Black List]]; Sound Blaster Live! [[ALSA_Blacklist|support]] (sorry)&lt;br /&gt;
&lt;br /&gt;
; 1998-11-10&lt;br /&gt;
: Version 0.1.3 of C library and Version 0.2.0-pre10 of driver [ftp://ftp.alsa-project.org/pub/driver released] which supports Cirrus Logic CS4232+/CS4236+, Ensoniq AudioPCI (ES1370/1371), and S3 SonicVibes.&lt;br /&gt;
&lt;br /&gt;
; 1998-11-04&lt;br /&gt;
: Version 0.0.7 of ALSA utilities [ftp://ftp.alsa-project.org/pub/lib released]&lt;br /&gt;
&lt;br /&gt;
; 1998-08-13&lt;br /&gt;
: [[Download|CVS is up]]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;br /&gt;
[http://www.example.com link title]&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	<entry>
		<id>http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version</id>
		<title>Template:ALSA download version</title>
		<link rel="alternate" type="text/html" href="http://mailman.alsa-project.org/main/index.php/Template:ALSA_download_version"/>
				<updated>2012-01-25T09:47:02Z</updated>
		
		<summary type="html">&lt;p&gt;Perex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ #switch: {{{module}}}&lt;br /&gt;
| driver={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| lib={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| utils={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| tools={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| firmware={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| plugins={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| oss={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| python={{ #switch: {{{release}}} | stable=1.0.25 | development=none }}&lt;br /&gt;
| Unknown please edit!&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Perex</name></author>	</entry>

	</feed>