rpms/kernel/devel branch, NONE, 1.1.2.1 patch-2.6.29-rc5-git4.bz2.sign, NONE, 1.1.2.2 .cvsignore, 1.1014.2.1, 1.1014.2.2 TODO, 1.54, 1.54.6.1 config-generic, 1.238.6.2, 1.238.6.3 kernel.spec, 1.1294.2.2, 1.1294.2.3 sources, 1.976.2.2, 1.976.2.3 upstream, 1.888.2.1, 1.888.2.2 xen.pvops.patch, 1.1.2.2, 1.1.2.3 patch-2.6.29-rc5-git3.bz2.sign, 1.1.2.2, NONE

Michael Young myoung at fedoraproject.org
Sat Feb 21 16:06:40 UTC 2009


Author: myoung

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv6377

Modified Files:
      Tag: private-myoung-dom0-branch
	.cvsignore TODO config-generic kernel.spec sources upstream 
	xen.pvops.patch 
Added Files:
      Tag: private-myoung-dom0-branch
	branch patch-2.6.29-rc5-git4.bz2.sign 
Removed Files:
      Tag: private-myoung-dom0-branch
	patch-2.6.29-rc5-git3.bz2.sign 
Log Message:
Another pvops update, and created a "branch" file to help it build.



--- NEW FILE branch ---
devel


--- NEW FILE patch-2.6.29-rc5-git4.bz2.sign ---
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: See http://www.kernel.org/signature.html for info

iD8DBQBJnfTIyGugalF9Dw4RAhHhAJ4/CypfjqpilCz3x4Io4OT4TtoiEgCeJF8d
guFXccsXBy8JwhevPWjrQGo=
=XQGJ
-----END PGP SIGNATURE-----


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/.cvsignore,v
retrieving revision 1.1014.2.1
retrieving revision 1.1014.2.2
diff -u -r1.1014.2.1 -r1.1014.2.2
--- .cvsignore	19 Feb 2009 20:28:14 -0000	1.1014.2.1
+++ .cvsignore	21 Feb 2009 16:05:49 -0000	1.1014.2.2
@@ -5,4 +5,4 @@
 kernel-2.6.28
 linux-2.6.28.tar.bz2
 patch-2.6.29-rc5.bz2
-patch-2.6.29-rc5-git3.bz2
+patch-2.6.29-rc5-git4.bz2


Index: TODO
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/TODO,v
retrieving revision 1.54
retrieving revision 1.54.6.1
diff -u -r1.54 -r1.54.6.1
--- TODO	29 Jan 2009 19:34:29 -0000	1.54
+++ TODO	21 Feb 2009 16:05:52 -0000	1.54.6.1
@@ -100,8 +100,3 @@
 * linux-2.6-x86-mtrr-kill-bogus-warning.patch
 	Silence bogus warning under vmware ; sent upstream.
 
-* linux-2.6-kvmclock-unsync-tsc-workaround.patch
-	https://bugzilla.redhat.com/475598
-        Correct fix for upstream in progress, workaround will be
-        sent upstream if that isn't sorted out within the next
-        week or so (2009-01-29)


Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/config-generic,v
retrieving revision 1.238.6.2
retrieving revision 1.238.6.3
diff -u -r1.238.6.2 -r1.238.6.3
--- config-generic	19 Feb 2009 20:28:14 -0000	1.238.6.2
+++ config-generic	21 Feb 2009 16:05:55 -0000	1.238.6.3
@@ -1339,7 +1339,7 @@
 CONFIG_NL80211=y
 CONFIG_LIB80211=m
 CONFIG_WIRELESS=y
-CONFIG_WIRELESS_OLD_REGULATORY=y
+# CONFIG_WIRELESS_OLD_REGULATORY is not set
 CONFIG_WIRELESS_EXT=y
 CONFIG_WIRELESS_EXT_SYSFS=y
 
@@ -3690,6 +3690,7 @@
 CONFIG_SCHED_TRACER=y
 CONFIG_CONTEXT_SWITCH_TRACER=y
 CONFIG_DYNAMIC_FTRACE=y
+CONFIG_FTRACE_MCOUNT_RECORD=y
 # CONFIG_FTRACE_STARTUP_TEST is not set
 # CONFIG_TRACE_BRANCH_PROFILING is not set
 
@@ -3904,9 +3905,10 @@
 # CONFIG_DEBUG_VIRTUAL is not set
 # CONFIG_RCU_CPU_STALL_DETECTOR is not set
 # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
-# CONFIG_FUNCTION_TRACER is not set
+CONFIG_FUNCTION_TRACER=y
+# CONFIG_FUNCTION_GRAPH_TRACER is not set
 CONFIG_BOOT_TRACER=y
-# CONFIG_STACK_TRACER is not set
+CONFIG_STACK_TRACER=y
 # CONFIG_DYNAMIC_PRINTK_DEBUG is not set
 CONFIG_EARLY_PRINTK_DBGP=y
 


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1294.2.2
retrieving revision 1.1294.2.3
diff -u -r1.1294.2.2 -r1.1294.2.3
--- kernel.spec	19 Feb 2009 20:28:14 -0000	1.1294.2.2
+++ kernel.spec	21 Feb 2009 16:05:57 -0000	1.1294.2.3
@@ -58,7 +58,7 @@
 # The rc snapshot level
 %define rcrev 5
 # The git snapshot level
-%define gitrev 3
+%define gitrev 4
 # Set rpm version accordingly
 %define rpmversion 2.6.%{upstream_sublevel}
 %endif
@@ -398,7 +398,7 @@
 # problems with the newer kernel or lack certain things that make
 # integration in the distro harder than needed.
 #
-%define package_conflicts initscripts < 7.23, udev < 063-6, iptables < 1.3.2-1, ipw2200-firmware < 2.4, iwl4965-firmware < 228.57.2, selinux-policy-targeted < 1.25.3-14, squashfs-tools < 4.0
+%define package_conflicts initscripts < 7.23, udev < 063-6, iptables < 1.3.2-1, ipw2200-firmware < 2.4, iwl4965-firmware < 228.57.2, selinux-policy-targeted < 1.25.3-14, squashfs-tools < 4.0, wireless-tools < 29-3
 
 #
 # The ld.so.conf.d file we install uses syntax older ldconfig's don't grok.
@@ -1752,6 +1752,19 @@
 %kernel_variant_files -k vmlinux %{with_kdump} kdump
 
 %changelog
+* Sat Feb 21 2009 Michael Young <m.a.young at durham.ac.uk>
+- Update pvops patch
+
+* Fri Feb 20 2009 John W. Linville <linville at redhat.com> 2.6.29-0.137.rc5.git4
+- Drop CONFIG_WIRELESS_OLD_REGULATORY
+- Add Conflicts for wireless-tools < 29-3 (used to pull-in crda)
+
+* Thu Feb 19 2009 Dave Jones <davej at redhat.com> 2.6.29-0.136.rc5.git4
+- 2.6.29-rc5-git4
+
+* Thu Feb 19 2009 Eric Sandeen <sandeen at redhat.com>
+- Enable CONFIG_STACK_TRACER
+
 * Thu Feb 19 2009 Michael Young <m.a.young at durham.ac.uk>
 - Update pvops patch which includes the fix for major apic bug
 - http://lists.xensource.com/archives/html/xen-devel/2009-02/msg00769.html


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/sources,v
retrieving revision 1.976.2.2
retrieving revision 1.976.2.3
diff -u -r1.976.2.2 -r1.976.2.3
--- sources	19 Feb 2009 20:28:14 -0000	1.976.2.2
+++ sources	21 Feb 2009 16:06:00 -0000	1.976.2.3
@@ -1,3 +1,3 @@
 d351e44709c9810b85e29b877f50968a  linux-2.6.28.tar.bz2
 60193569887cb6fe98b9c0d483f911e7  patch-2.6.29-rc5.bz2
-d18e5d821b0eed940ded040d965dc566  patch-2.6.29-rc5-git3.bz2
+84bdb00a4c73ecd832ea8e6d443ad547  patch-2.6.29-rc5-git4.bz2


Index: upstream
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/upstream,v
retrieving revision 1.888.2.1
retrieving revision 1.888.2.2
diff -u -r1.888.2.1 -r1.888.2.2
--- upstream	19 Feb 2009 20:28:14 -0000	1.888.2.1
+++ upstream	21 Feb 2009 16:06:01 -0000	1.888.2.2
@@ -1,3 +1,3 @@
 linux-2.6.28.tar.bz2
 patch-2.6.29-rc5.bz2
-patch-2.6.29-rc5-git3.bz2
+patch-2.6.29-rc5-git4.bz2

xen.pvops.patch:

View full diff with command:
/usr/bin/cvs -f diff  -kk -u -N -r 1.1.2.2 -r 1.1.2.3 xen.pvops.patch
Index: xen.pvops.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/Attic/xen.pvops.patch,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -r1.1.2.2 -r1.1.2.3
--- xen.pvops.patch	19 Feb 2009 20:28:15 -0000	1.1.2.2
+++ xen.pvops.patch	21 Feb 2009 16:06:02 -0000	1.1.2.3
@@ -940,10 +940,24 @@
  Offset/size:	0x22c/4
  Protocol:	2.03+
 diff --git a/MAINTAINERS b/MAINTAINERS
-index a2008bd..4571e97 100644
+index 06e0391..4571e97 100644
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -2001,7 +2001,7 @@ S:	Maintained
+@@ -692,13 +692,6 @@ M:	kernel at wantstofly.org
+ L:	linux-arm-kernel at lists.arm.linux.org.uk (subscribers-only)
+ S:	Maintained
+ 
+-ARM/NUVOTON W90X900 ARM ARCHITECTURE
+-P:      Wan ZongShun
+-M:      mcuos.com at gmail.com
+-L:      linux-arm-kernel at lists.arm.linux.org.uk (subscribers-only)
+-W:      http://www.mcuos.com
+-S:      Maintained
+-
+ ARPD SUPPORT
+ P:	Jonathan Layes
+ L:	netdev at vger.kernel.org
+@@ -2008,7 +2001,7 @@ S:	Maintained
  
  HIBERNATION (aka Software Suspend, aka swsusp)
  P:	Pavel Machek
@@ -952,7 +966,7 @@
  P:	Rafael J. Wysocki
  M:	rjw at sisk.pl
  L:	linux-pm at lists.linux-foundation.org
-@@ -2616,6 +2616,20 @@ M:	jason.wessel at windriver.com
+@@ -2623,6 +2616,20 @@ M:	jason.wessel at windriver.com
  L:	kgdb-bugreport at lists.sourceforge.net
  S:	Maintained
  
@@ -973,7 +987,7 @@
  KPROBES
  P:	Ananth N Mavinakayanahalli
  M:	ananth at in.ibm.com
-@@ -4172,7 +4186,7 @@ SUSPEND TO RAM
+@@ -4179,7 +4186,7 @@ SUSPEND TO RAM
  P:	Len Brown
  M:	len.brown at intel.com
  P:	Pavel Machek
@@ -1091,6 +1105,71 @@
  		} else {
  			handle_irq(RTC_IRQ);
  		}
+diff --git a/arch/arm/configs/at91sam9260ek_defconfig b/arch/arm/configs/at91sam9260ek_defconfig
+index 98e2f3d..e0ee706 100644
+--- a/arch/arm/configs/at91sam9260ek_defconfig
++++ b/arch/arm/configs/at91sam9260ek_defconfig
+@@ -608,7 +608,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
+ # Watchdog Device Drivers
+ #
+ # CONFIG_SOFT_WATCHDOG is not set
+-CONFIG_AT91SAM9X_WATCHDOG=y
++CONFIG_AT91SAM9_WATCHDOG=y
+ 
+ #
+ # USB-based Watchdog Cards
+diff --git a/arch/arm/configs/at91sam9261ek_defconfig b/arch/arm/configs/at91sam9261ek_defconfig
+index 1494561..01d1ef9 100644
+--- a/arch/arm/configs/at91sam9261ek_defconfig
++++ b/arch/arm/configs/at91sam9261ek_defconfig
+@@ -700,7 +700,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
+ # Watchdog Device Drivers
+ #
+ # CONFIG_SOFT_WATCHDOG is not set
+-CONFIG_AT91SAM9X_WATCHDOG=y
++CONFIG_AT91SAM9_WATCHDOG=y
+ 
+ #
+ # USB-based Watchdog Cards
+diff --git a/arch/arm/configs/at91sam9263ek_defconfig b/arch/arm/configs/at91sam9263ek_defconfig
+index 21599f3..036a126 100644
+--- a/arch/arm/configs/at91sam9263ek_defconfig
++++ b/arch/arm/configs/at91sam9263ek_defconfig
+@@ -710,7 +710,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
+ # Watchdog Device Drivers
+ #
+ # CONFIG_SOFT_WATCHDOG is not set
+-CONFIG_AT91SAM9X_WATCHDOG=y
++CONFIG_AT91SAM9_WATCHDOG=y
+ 
+ #
+ # USB-based Watchdog Cards
+diff --git a/arch/arm/configs/at91sam9rlek_defconfig b/arch/arm/configs/at91sam9rlek_defconfig
+index e2df81a..237a2a6 100644
+--- a/arch/arm/configs/at91sam9rlek_defconfig
++++ b/arch/arm/configs/at91sam9rlek_defconfig
+@@ -606,7 +606,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
+ # Watchdog Device Drivers
+ #
+ # CONFIG_SOFT_WATCHDOG is not set
+-CONFIG_AT91SAM9X_WATCHDOG=y
++CONFIG_AT91SAM9_WATCHDOG=y
+ 
+ #
+ # Sonics Silicon Backplane
+diff --git a/arch/arm/configs/qil-a9260_defconfig b/arch/arm/configs/qil-a9260_defconfig
+index 9b32d0e..cd1d717 100644
+--- a/arch/arm/configs/qil-a9260_defconfig
++++ b/arch/arm/configs/qil-a9260_defconfig
+@@ -727,7 +727,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
+ # Watchdog Device Drivers
+ #
+ # CONFIG_SOFT_WATCHDOG is not set
+-# CONFIG_AT91SAM9X_WATCHDOG is not set
++# CONFIG_AT91SAM9_WATCHDOG is not set
+ 
+ #
+ # USB-based Watchdog Cards
 diff --git a/arch/arm/include/asm/a.out.h b/arch/arm/include/asm/a.out.h
 index 79489fd..083894b 100644
 --- a/arch/arm/include/asm/a.out.h
@@ -1130,6 +1209,22 @@
  
  #if !defined(__STRICT_ANSI__) || defined(__KERNEL__)
  #  define __SWAB_64_THRU_32__
+diff --git a/arch/arm/kernel/elf.c b/arch/arm/kernel/elf.c
+index d4a0da1..8484909 100644
+--- a/arch/arm/kernel/elf.c
++++ b/arch/arm/kernel/elf.c
+@@ -74,9 +74,9 @@ EXPORT_SYMBOL(elf_set_personality);
+  */
+ int arm_elf_read_implies_exec(const struct elf32_hdr *x, int executable_stack)
+ {
+-	if (executable_stack != EXSTACK_DISABLE_X)
++	if (executable_stack != EXSTACK_ENABLE_X)
+ 		return 1;
+-	if (cpu_architecture() < CPU_ARCH_ARMv6)
++	if (cpu_architecture() <= CPU_ARCH_ARMv6)
+ 		return 1;
+ 	return 0;
+ }
 diff --git a/arch/arm/kernel/irq.c b/arch/arm/kernel/irq.c
 index 363db18..6874c7d 100644
 --- a/arch/arm/kernel/irq.c
@@ -1198,6 +1293,170 @@
  			*(.data.percpu)
  			*(.data.percpu.shared_aligned)
  		__per_cpu_end = .;
+diff --git a/arch/arm/mach-at91/at91cap9_devices.c b/arch/arm/mach-at91/at91cap9_devices.c
+index 412aa49..9eca220 100644
+--- a/arch/arm/mach-at91/at91cap9_devices.c
++++ b/arch/arm/mach-at91/at91cap9_devices.c
+@@ -697,7 +697,7 @@ static void __init at91_add_device_rtt(void)
+  *  Watchdog
+  * -------------------------------------------------------------------- */
+ 
+-#if defined(CONFIG_AT91SAM9X_WATCHDOG) || defined(CONFIG_AT91SAM9X_WATCHDOG_MODULE)
++#if defined(CONFIG_AT91SAM9_WATCHDOG) || defined(CONFIG_AT91SAM9_WATCHDOG_MODULE)
+ static struct platform_device at91cap9_wdt_device = {
+ 	.name		= "at91_wdt",
+ 	.id		= -1,
+diff --git a/arch/arm/mach-at91/at91sam9260_devices.c b/arch/arm/mach-at91/at91sam9260_devices.c
+index d74c9ac..fdde1ea 100644
+--- a/arch/arm/mach-at91/at91sam9260_devices.c
++++ b/arch/arm/mach-at91/at91sam9260_devices.c
+@@ -643,7 +643,7 @@ static void __init at91_add_device_rtt(void)
+  *  Watchdog
+  * -------------------------------------------------------------------- */
+ 
+-#if defined(CONFIG_AT91SAM9X_WATCHDOG) || defined(CONFIG_AT91SAM9X_WATCHDOG_MODULE)
++#if defined(CONFIG_AT91SAM9_WATCHDOG) || defined(CONFIG_AT91SAM9_WATCHDOG_MODULE)
+ static struct platform_device at91sam9260_wdt_device = {
+ 	.name		= "at91_wdt",
+ 	.id		= -1,
+diff --git a/arch/arm/mach-at91/at91sam9261_devices.c b/arch/arm/mach-at91/at91sam9261_devices.c
+index 59fc483..1728975 100644
+--- a/arch/arm/mach-at91/at91sam9261_devices.c
++++ b/arch/arm/mach-at91/at91sam9261_devices.c
+@@ -621,7 +621,7 @@ static void __init at91_add_device_rtt(void)
+  *  Watchdog
+  * -------------------------------------------------------------------- */
+ 
+-#if defined(CONFIG_AT91SAM9X_WATCHDOG) || defined(CONFIG_AT91SAM9X_WATCHDOG_MODULE)
++#if defined(CONFIG_AT91SAM9_WATCHDOG) || defined(CONFIG_AT91SAM9_WATCHDOG_MODULE)
+ static struct platform_device at91sam9261_wdt_device = {
+ 	.name		= "at91_wdt",
+ 	.id		= -1,
+diff --git a/arch/arm/mach-at91/at91sam9263_devices.c b/arch/arm/mach-at91/at91sam9263_devices.c
+index 134af97..b753cb8 100644
+--- a/arch/arm/mach-at91/at91sam9263_devices.c
++++ b/arch/arm/mach-at91/at91sam9263_devices.c
+@@ -854,7 +854,7 @@ static void __init at91_add_device_rtt(void)
+  *  Watchdog
+  * -------------------------------------------------------------------- */
+ 
+-#if defined(CONFIG_AT91SAM9X_WATCHDOG) || defined(CONFIG_AT91SAM9X_WATCHDOG_MODULE)
[...2188 lines suppressed...]
+@@ -858,11 +851,11 @@ swiotlb_unmap_sg_attrs(struct device *hwdev, struct scatterlist *sgl,
  	BUG_ON(dir == DMA_NONE);
  
  	for_each_sg(sgl, sg, nelems, i) {
@@ -99793,7 +100841,7 @@
  	}
  }
  EXPORT_SYMBOL(swiotlb_unmap_sg_attrs);
-@@ -892,17 +883,17 @@ swiotlb_sync_sg(struct device *hwdev, struct scatterlist *sgl,
+@@ -892,17 +885,17 @@ swiotlb_sync_sg(struct device *hwdev, struct scatterlist *sgl,
  	BUG_ON(dir == DMA_NONE);
  
  	for_each_sg(sgl, sg, nelems, i) {
@@ -99814,7 +100862,7 @@
  {
  	swiotlb_sync_sg(hwdev, sg, nelems, dir, SYNC_FOR_CPU);
  }
-@@ -910,7 +901,7 @@ EXPORT_SYMBOL(swiotlb_sync_sg_for_cpu);
+@@ -910,7 +903,7 @@ EXPORT_SYMBOL(swiotlb_sync_sg_for_cpu);
  
  void
  swiotlb_sync_sg_for_device(struct device *hwdev, struct scatterlist *sg,
@@ -101243,6 +102291,19 @@
  	}
  
  	list_for_each_entry_rcu(node, &sel_netnode_hash[idx].list, list)
+diff --git a/sound/core/jack.c b/sound/core/jack.c
+index 077a852..dd4a12d 100644
+--- a/sound/core/jack.c
++++ b/sound/core/jack.c
+@@ -47,7 +47,7 @@ static int snd_jack_dev_register(struct snd_device *device)
+ 	int err;
+ 
+ 	snprintf(jack->name, sizeof(jack->name), "%s %s",
+-		 card->shortname, jack->id);
++		 card->longname, jack->id);
+ 	jack->input_dev->name = jack->name;
+ 
+ 	/* Default to the sound card device. */
 diff --git a/sound/drivers/Kconfig b/sound/drivers/Kconfig
 index 0bcf146..491e0d7 100644
 --- a/sound/drivers/Kconfig
@@ -101291,6 +102352,93 @@
  
  static struct pnp_dev *activate_dev(char *devname, char *resname, struct pnp_dev *dev)
  {
+diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
+index c8d9178..11e791b 100644
+--- a/sound/pci/hda/hda_intel.c
++++ b/sound/pci/hda/hda_intel.c
+@@ -1947,13 +1947,16 @@ static int azx_suspend(struct pci_dev *pci, pm_message_t state)
+ 	return 0;
+ }
+ 
++static int azx_resume_early(struct pci_dev *pci)
++{
++	return pci_restore_state(pci);
++}
++
+ static int azx_resume(struct pci_dev *pci)
+ {
+ 	struct snd_card *card = pci_get_drvdata(pci);
+ 	struct azx *chip = card->private_data;
+ 
+-	pci_set_power_state(pci, PCI_D0);
+-	pci_restore_state(pci);
+ 	if (pci_enable_device(pci) < 0) {
+ 		printk(KERN_ERR "hda-intel: pci_enable_device failed, "
+ 		       "disabling device\n");
+@@ -2465,6 +2468,7 @@ static struct pci_driver driver = {
+ 	.remove = __devexit_p(azx_remove),
+ #ifdef CONFIG_PM
+ 	.suspend = azx_suspend,
++	.resume_early = azx_resume_early,
+ 	.resume = azx_resume,
+ #endif
+ };
+diff --git a/sound/pci/oxygen/virtuoso.c b/sound/pci/oxygen/virtuoso.c
+index 6c870c1..18c7c91 100644
+--- a/sound/pci/oxygen/virtuoso.c
++++ b/sound/pci/oxygen/virtuoso.c
+@@ -26,7 +26,7 @@
+  * SPI 0 -> 1st PCM1796 (front)
+  * SPI 1 -> 2nd PCM1796 (surround)
+  * SPI 2 -> 3rd PCM1796 (center/LFE)
+- * SPI 4 -> 4th PCM1796 (back)
++ * SPI 4 -> 4th PCM1796 (back) and EEPROM self-destruct (do not use!)
+  *
+  * GPIO 2 -> M0 of CS5381
+  * GPIO 3 -> M1 of CS5381
+@@ -207,6 +207,12 @@ static void xonar_gpio_changed(struct oxygen *chip);
+ static inline void pcm1796_write_spi(struct oxygen *chip, unsigned int codec,
+ 				     u8 reg, u8 value)
+ {
++	/*
++	 * We don't want to do writes on SPI 4 because the EEPROM, which shares
++	 * the same pin, might get confused and broken.  We'd better take care
++	 * that the driver works with the default register values ...
++	 */
++#if 0
+ 	/* maps ALSA channel pair number to SPI output */
+ 	static const u8 codec_map[4] = {
+ 		0, 1, 2, 4
+@@ -217,6 +223,7 @@ static inline void pcm1796_write_spi(struct oxygen *chip, unsigned int codec,
+ 			 (codec_map[codec] << OXYGEN_SPI_CODEC_SHIFT) |
+ 			 OXYGEN_SPI_CEN_LATCH_CLOCK_HI,
+ 			 (reg << 8) | value);
++#endif
+ }
+ 
+ static inline void pcm1796_write_i2c(struct oxygen *chip, unsigned int codec,
+@@ -750,6 +757,9 @@ static const DECLARE_TLV_DB_SCALE(cs4362a_db_scale, -12700, 100, 0);
+ 
+ static int xonar_d2_control_filter(struct snd_kcontrol_new *template)
+ {
++	if (!strncmp(template->name, "Master Playback ", 16))
++		/* disable volume/mute because they would require SPI writes */
++		return 1;
+ 	if (!strncmp(template->name, "CD Capture ", 11))
+ 		/* CD in is actually connected to the video in pin */
+ 		template->private_value ^= AC97_CD ^ AC97_VIDEO;
+@@ -840,9 +850,8 @@ static const struct oxygen_model model_xonar_d2 = {
+ 	.dac_volume_min = 0x0f,
+ 	.dac_volume_max = 0xff,
+ 	.misc_flags = OXYGEN_MISC_MIDI,
+-	.function_flags = OXYGEN_FUNCTION_SPI |
+-			  OXYGEN_FUNCTION_ENABLE_SPI_4_5,
+-	.dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
++	.function_flags = OXYGEN_FUNCTION_SPI,
++	.dac_i2s_format = OXYGEN_I2S_FORMAT_I2S,
+ 	.adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
+ };
+ 
 diff --git a/sound/pci/pcxhr/pcxhr.c b/sound/pci/pcxhr/pcxhr.c
 index 27cf2c2..5d3ed63 100644
 --- a/sound/pci/pcxhr/pcxhr.c
@@ -101381,3 +102529,63 @@
  	int err;
  
  	if (dev >= SNDRV_CARDS)
+diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c
+index 19e3745..2ab8312 100644
+--- a/sound/usb/usbaudio.c
++++ b/sound/usb/usbaudio.c
+@@ -2524,6 +2524,7 @@ static int parse_audio_format_rates(struct snd_usb_audio *chip, struct audioform
+ 		 * build the rate table and bitmap flags
+ 		 */
+ 		int r, idx;
++		unsigned int nonzero_rates = 0;
+ 
+ 		fp->rate_table = kmalloc(sizeof(int) * nr_rates, GFP_KERNEL);
+ 		if (fp->rate_table == NULL) {
+@@ -2531,27 +2532,24 @@ static int parse_audio_format_rates(struct snd_usb_audio *chip, struct audioform
+ 			return -1;
+ 		}
+ 
+-		fp->nr_rates = 0;
+-		fp->rate_min = fp->rate_max = 0;
++		fp->nr_rates = nr_rates;
++		fp->rate_min = fp->rate_max = combine_triple(&fmt[8]);
+ 		for (r = 0, idx = offset + 1; r < nr_rates; r++, idx += 3) {
+ 			unsigned int rate = combine_triple(&fmt[idx]);
+-			if (!rate)
+-				continue;
+ 			/* C-Media CM6501 mislabels its 96 kHz altsetting */
+ 			if (rate == 48000 && nr_rates == 1 &&
+-			    (chip->usb_id == USB_ID(0x0d8c, 0x0201) ||
+-			     chip->usb_id == USB_ID(0x0d8c, 0x0102)) &&
++			    chip->usb_id == USB_ID(0x0d8c, 0x0201) &&
+ 			    fp->altsetting == 5 && fp->maxpacksize == 392)
+ 				rate = 96000;
+-			fp->rate_table[fp->nr_rates] = rate;
+-			if (!fp->rate_min || rate < fp->rate_min)
++			fp->rate_table[r] = rate;
++			nonzero_rates |= rate;
++			if (rate < fp->rate_min)
+ 				fp->rate_min = rate;
+-			if (!fp->rate_max || rate > fp->rate_max)
++			else if (rate > fp->rate_max)
+ 				fp->rate_max = rate;
+ 			fp->rates |= snd_pcm_rate_to_rate_bit(rate);
+-			fp->nr_rates++;
+ 		}
+-		if (!fp->nr_rates) {
++		if (!nonzero_rates) {
+ 			hwc_debug("All rates were zero. Skipping format!\n");
+ 			return -1;
+ 		}
+diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c
+index 26bad37..320641a 100644
+--- a/sound/usb/usbmidi.c
++++ b/sound/usb/usbmidi.c
+@@ -1625,7 +1625,6 @@ static int snd_usbmidi_create_endpoints_midiman(struct snd_usb_midi* umidi,
+ 	}
+ 
+ 	ep_info.out_ep = get_endpoint(hostif, 2)->bEndpointAddress & USB_ENDPOINT_NUMBER_MASK;
+-	ep_info.out_interval = 0;
+ 	ep_info.out_cables = endpoint->out_cables & 0x5555;
+ 	err = snd_usbmidi_out_endpoint_create(umidi, &ep_info, &umidi->endpoints[0]);
+ 	if (err < 0)


--- patch-2.6.29-rc5-git3.bz2.sign DELETED ---




More information about the fedora-extras-commits mailing list