summaryrefslogtreecommitdiffstats
path: root/abs/extra/oss/hg-latest-fixes.diff
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/oss/hg-latest-fixes.diff')
-rw-r--r--abs/extra/oss/hg-latest-fixes.diff104
1 files changed, 104 insertions, 0 deletions
diff --git a/abs/extra/oss/hg-latest-fixes.diff b/abs/extra/oss/hg-latest-fixes.diff
new file mode 100644
index 0000000..15da42d
--- /dev/null
+++ b/abs/extra/oss/hg-latest-fixes.diff
@@ -0,0 +1,104 @@
+--- a/kernel/drv/oss_hdaudio/.devices Fri Feb 06 00:36:29 2009 +0200
++++ b/kernel/drv/oss_hdaudio/.devices Fri Feb 06 17:00:26 2009 +0200
+@@ -13,6 +13,7 @@ oss_hdaudio pci10de,44a Nvidia High Defi
+ oss_hdaudio pci10de,44a Nvidia High Definition Audio (MCP65)
+ oss_hdaudio pci10de,55c Nvidia High Definition Audio (MCP67)
+ oss_hdaudio pci10de,774 Nvidia High Definition Audio (MCP78S)
++oss_hdaudio pci10de,ac0 Nvidia High Definition Audio (MCP79)
+ oss_hdaudio pci1002,437b ATI High Definition Audio (SB450)
+ oss_hdaudio pci1002,4383 ATI High Definition Audio (SB600)
+ oss_hdaudio pci1106,3288 VIA High Definition Audio
+--- a/kernel/drv/oss_hdaudio/oss_hdaudio.c Fri Feb 06 00:36:29 2009 +0200
++++ b/kernel/drv/oss_hdaudio/oss_hdaudio.c Fri Feb 06 17:00:26 2009 +0200
+@@ -30,6 +30,7 @@
+ #define NVIDIA_DEVICE_MCP65 0x044a
+ #define NVIDIA_DEVICE_MCP67 0x055c
+ #define NVIDIA_DEVICE_MCP78S 0x0774
++#define NVIDIA_DEVICE_MCP79 0x0ac0
+
+ #define ATI_VENDOR_ID 0x1002
+ #define ATI_DEVICE_SB450 0x437b
+@@ -1720,7 +1721,7 @@ oss_hdaudio_attach (oss_device_t * osdev
+ device != NVIDIA_DEVICE_MCP51 && device != NVIDIA_DEVICE_MCP55 &&
+ device != NVIDIA_DEVICE_MCP61 && device != NVIDIA_DEVICE_MCP61A &&
+ device != NVIDIA_DEVICE_MCP65 && device != NVIDIA_DEVICE_MCP67 &&
+- device != NVIDIA_DEVICE_MCP78S &&
++ device != NVIDIA_DEVICE_MCP78S && device != NVIDIA_DEVICE_MCP79 &&
+ device != VIA_DEVICE_HDA &&
+ device != SIS_DEVICE_HDA &&
+ device != ULI_DEVICE_HDA &&
+@@ -1776,6 +1777,7 @@ oss_hdaudio_attach (oss_device_t * osdev
+ case NVIDIA_DEVICE_MCP65:
+ case NVIDIA_DEVICE_MCP67:
+ case NVIDIA_DEVICE_MCP78S:
++ case NVIDIA_DEVICE_MCP79:
+ devc->chip_name = "nVidia HD Audio";
+ pci_read_config_byte (osdev, 0x4e, &btmp);
+ pci_write_config_byte (osdev, 0x4e, (btmp & 0xf0) | 0x0f);
+--- a/kernel/drv/oss_hdaudio/.devices Fri Feb 06 17:05:21 2009 +0200
++++ b/kernel/drv/oss_hdaudio/.devices Sat Feb 07 11:10:36 2009 +0200
+@@ -12,6 +12,7 @@ oss_hdaudio pci10de,3f0 Nvidia High Defi
+ oss_hdaudio pci10de,3f0 Nvidia High Definition Audio (MCP61)
+ oss_hdaudio pci10de,44a Nvidia High Definition Audio (MCP65)
+ oss_hdaudio pci10de,55c Nvidia High Definition Audio (MCP67)
++oss_hdaudio pci10de,7fc Nvidia High Definition Audio (MCP73)
+ oss_hdaudio pci10de,774 Nvidia High Definition Audio (MCP78S)
+ oss_hdaudio pci10de,ac0 Nvidia High Definition Audio (MCP79)
+ oss_hdaudio pci1002,437b ATI High Definition Audio (SB450)
+--- a/kernel/drv/oss_hdaudio/oss_hdaudio.c Fri Feb 06 17:05:21 2009 +0200
++++ b/kernel/drv/oss_hdaudio/oss_hdaudio.c Sat Feb 07 11:10:36 2009 +0200
+@@ -29,6 +29,7 @@
+ #define NVIDIA_DEVICE_MCP61A 0x03f0
+ #define NVIDIA_DEVICE_MCP65 0x044a
+ #define NVIDIA_DEVICE_MCP67 0x055c
++#define NVIDIA_DEVICE_MCP73 0x07fc
+ #define NVIDIA_DEVICE_MCP78S 0x0774
+ #define NVIDIA_DEVICE_MCP79 0x0ac0
+
+@@ -1721,7 +1722,8 @@ oss_hdaudio_attach (oss_device_t * osdev
+ device != NVIDIA_DEVICE_MCP51 && device != NVIDIA_DEVICE_MCP55 &&
+ device != NVIDIA_DEVICE_MCP61 && device != NVIDIA_DEVICE_MCP61A &&
+ device != NVIDIA_DEVICE_MCP65 && device != NVIDIA_DEVICE_MCP67 &&
+- device != NVIDIA_DEVICE_MCP78S && device != NVIDIA_DEVICE_MCP79 &&
++ device != NVIDIA_DEVICE_MCP73 && device != NVIDIA_DEVICE_MCP78S &&
++ device != NVIDIA_DEVICE_MCP79 &&
+ device != VIA_DEVICE_HDA &&
+ device != SIS_DEVICE_HDA &&
+ device != ULI_DEVICE_HDA &&
+@@ -1776,6 +1778,7 @@ oss_hdaudio_attach (oss_device_t * osdev
+ case NVIDIA_DEVICE_MCP61A:
+ case NVIDIA_DEVICE_MCP65:
+ case NVIDIA_DEVICE_MCP67:
++ case NVIDIA_DEVICE_MCP73:
+ case NVIDIA_DEVICE_MCP78S:
+ case NVIDIA_DEVICE_MCP79:
+ devc->chip_name = "nVidia HD Audio";
+--- a/kernel/framework/vmix_core/vmix_core.c Mon Feb 09 21:21:39 2009 +0200
++++ b/kernel/framework/vmix_core/vmix_core.c Mon Feb 09 19:52:22 2009 -0200
+@@ -1590,7 +1590,7 @@ create_vmix_engine (vmix_mixer_t * mixer
+ adev_t *adev, *master_adev;
+ int opts = ADEV_VIRTUAL | ADEV_DEFAULT | ADEV_VMIX;
+
+- n = mixer->num_clientdevs++;
++ n = mixer->num_clientdevs;
+
+ /*
+ * ADEV_HIDDEN is used for the VMIX devices because they should not be
+@@ -1611,7 +1611,7 @@ create_vmix_engine (vmix_mixer_t * mixer
+ if (mixer->masterdev == -1)
+ return OSS_ENXIO;
+
+- if (mixer->num_clientdevs >= MAX_CLIENTS) /* Cannot create more client engines */
++ if (n + 1 >= MAX_CLIENTS) /* Cannot create more client engines */
+ return OSS_EBUSY;
+
+ /*
+@@ -1628,6 +1628,8 @@ create_vmix_engine (vmix_mixer_t * mixer
+ }
+ memset (portc, 0, sizeof (*portc));
+ portc->open_pending = 1; /* Reserve this engine to the client it was created for */
++
++ mixer->num_clientdevs++;
+
+ portc->num = n;
+