From: Johannes Goecke <goecke@upb.de>
To: Linux-Kernel <linux-kernel@vger.kernel.org>
Subject: Patch: MSI-K8T-Neo2-Fir OnboardSound and additional Soundcard
Date: Sat, 11 Mar 2006 20:28:41 +0100 [thread overview]
Message-ID: <20060311192840.GA19313@uni-paderborn.de> (raw)
[-- Attachment #1: Type: text/plain, Size: 689 bytes --]
Hello *,
i have a small patch for a Problem that i had.
On the MSI-K8T-NEO2 FIR ( Athlon-64, Socket 939 with VIA-K8T800- Chipset
and onboard Sound,... ) the BIOS lets you choose "DISABLED" or "AUTO"
for the On-Board Sound Device.
If you add another PCI-Sound-Card the BIOS disables the on-board device.
So far I have a Quirk, that does set the correspondent BIT in the PCI-registers
to enable the soundcard.
But i have another 2 problems:
- how to enshure that the code is executed ONLY on excactly this kind of boards
(not any other with similar Chipset)?
- what to do to (hopefully) integrate that pice of code into
one of the next Kernel Releases?
Johannes Goecke
[-- Attachment #2: patch-msi-k8t-neo2fir-soundcard --]
[-- Type: text/plain, Size: 1470 bytes --]
diff -u -r linux-2.6.15.6/drivers/pci/quirks.c linux-2.6.15.6-jg/drivers/pci/quirks.c
--- linux-2.6.15.6/drivers/pci/quirks.c 2006-03-05 20:07:54.000000000 +0100
+++ linux-2.6.15.6-jg/drivers/pci/quirks.c 2006-03-09 13:05:06.000000000 +0100
@@ -861,6 +861,41 @@
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82375, quirk_eisa_bridge );
+/*
+ * On the MSI-K8T-Neo2Fir Board, the internal Soundcard is disabled
+ * when a PCI-Soundcard is added. The BIOS only gives Options
+ * "Disabled" and "AUTO". This Quirk Sets the corresponding
+ * Register-Value to enable the Soundcard.
+ */
+static void __init k8t_sound_hostbridge(struct pci_dev *dev)
+{
+ printk(KERN_INFO "PCI: Quirk-MSI-K8T Soundcard On\n");
+
+ unsigned char val;
+
+ pci_read_config_byte(dev, 0x50, &val);
+
+ if ((val == 0x88) || (val == 0xc8)) {
+ pci_write_config_byte(dev, 0x50, val & (~0x40));
+
+ /* Verify the Change for Status output */
+ pci_read_config_byte(dev, 0x50, &val);
+ if (val & 0x40)
+ printk(KERN_INFO "PCI: MSI-K8T soundcard still off\n");
+ else
+ printk(KERN_INFO "PCI: MSI-K8T soundcard on\n");
+ } else {
+ printk(KERN_INFO "PCI: Unexpected Value in PCI-Register : no Change!\n");
+ }
+
+}
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8237, k8t_sound_hostbridge );
+
+
/*
* On ASUS P4B boards, the SMBus PCI Device within the ICH2/4 southbridge
* is not activated. The myth is that Asus said that they do not want the
next reply other threads:[~2006-03-11 19:28 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-11 19:28 Johannes Goecke [this message]
2006-03-12 3:41 ` Lee Revell
2006-03-13 7:57 ` Johannes Goecke
2006-03-13 8:14 ` Jan-Benedict Glaw
2006-03-13 17:02 ` Lee Revell
[not found] <5Pi6J-1yd-1@gated-at.bofh.it>
[not found] ` <5PpKN-48S-7@gated-at.bofh.it>
[not found] ` <5PQ8u-qa-17@gated-at.bofh.it>
2006-03-13 9:23 ` Bodo Eggert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060311192840.GA19313@uni-paderborn.de \
--to=goecke@upb.de \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®