Jump to content

Cannot Get Ac97 Soundcard To Work


maz
 Share

90 posts in this topic

Recommended Posts

Hi,

 

OSX86 is running fine here on a Yakumo Combo XD Laptop - except for sound. According to Windows XP, I have a "Realtek AC97" soundcard. The IDs are as follows:

VEN_1039 (Vendor-ID)

DEV_7012 (Device-ID)

My laptop has a SiS chipset. I have tried to insert the IDs in the info.plist file of the AppleAC97 kext, but I am unsure if I made it at the correct place (in the correct line). Anyway, the kext is loading successfully in a terminal, but nevertheless no soundcard is detected in the System Preferences. :) Has anyone an idea how I might get sound?!

 

maz

Link to comment
Share on other sites

OK

For anyone that wants to help us

Here is what I advanced so far:

Actually, this card is identified as SiS 7012, the Chip IS realtek alc650 (supported) but for some reason, it don't work. We already tried the Info.plist solution, don't work.

I compared Intel8x0.c (source code of the linux module (driver) for that soundcard) with AppleAudioIntelICH source code (the kext (driver) that supports realtek ALC 650)

I think, i've narrowed the solution to the following, but i cannot put it to practice because of the lack of programming skills, or help.

[B]THIS IS A FRAGMENT OF AppleAudioIntelICH.c[/B]

bool CLASS::configureProvider( IOService * provider )
{
   static UInt8 DMAEngineBase[] =
   {
       0x00,  /* PCM In  */
       0x10,  /* PCM Out */
       0x60   /* SPDIF   */
   };

   void *  memBase;
   UInt16  ioBase;
OSNumber *num;
   bool    error = false;

   IOPCIDevice * pci = OSDynamicCast( IOPCIDevice, provider );
   if (pci == 0)
       goto fail;

// Check to see if we're an NIVIDA chip (ICH Type = 99)
// NVIDIA has a SPDIF interrupt at 0x70, not 0x60
   num = OSDynamicCast(OSNumber, getProperty("ICH Type"));
   if (num)
   {
       UInt32 ich_type = num->unsigned32BitValue();
 if (ich_type == 99)
	 DMAEngineBase[2] = 0x70;
}

As the module loads correctly, and the ioreg -l command shows info on the board, I'm assuming its recognized, but it don't show info on the SPDIF output of the board.

I think, we find the SPDIF interrupt address of our board, and correct it in the source code, SiS7012 would be supported.

 

 

:) Now, PLEASEEEE HEEEELPPPPP!!!!!!!!!!, I'm desperate

Link to comment
Share on other sites

I have a soundcard with the same device and vendor ID but its a Sigmatel C-major audio sound card.

I also cannot get it to work.

Can anyone help??

All I need is sound. I even got wireless working.

Same here. Isn't there anyone who has succeeded in getting this audio chip to work?

The name of my mainboard is:

Clevo/Kapok Computer SiS650 CPU to PCI Bridge

 

Thanks in advance for help,

maz

Link to comment
Share on other sites

Same here. Isn't there anyone who has succeeded in getting this audio chip to work?

The name of my mainboard is:

Clevo/Kapok Computer SiS650 CPU to PCI Bridge

 

Thanks in advance for help,

maz

 

 

AFAIK, The Sis southbridge is the one giving problems. While the ALC650/655 IS supported its only when its on an intel southbridge (e.g., ICH5/6)

Link to comment
Share on other sites

News Everyone:

The DMA Base Engine Adresses are ok. At least, that way is working in the linux driver.

Listing of Intel8x0.c
       static unsigned int bdbars[] = {
               3, /* DEVICE_INTEL */
               6, /* DEVICE_INTEL_ICH4 */
               3, /* DEVICE_SIS */
               6, /* DEVICE_ALI */
               4, /* DEVICE_NFORCE */
       };

      static struct ich_reg_info intel_regs[6] = {
               { ICH_PIINT, 0 },
               { ICH_POINT, 0x10 },
               { ICH_MCINT, 0x20 },
               { ICH_M2INT, 0x40 },
               { ICH_P2INT, 0x50 },
               { ICH_SPINT, 0x60 },
};

Help would be apreciated, I'll keep working

Link to comment
Share on other sites

Hi,

 

OSX86 is running fine here on a Yakumo Combo XD Laptop - except for sound. According to Windows XP, I have a "Realtek AC97" soundcard. The IDs are as follows:

VEN_1039 (Vendor-ID)

DEV_7012 (Device-ID)

My laptop has a SiS chipset. I have tried to insert the IDs in the info.plist file of the AppleAC97 kext, but I am unsure if I made it at the correct place (in the correct line). Anyway, the kext is loading successfully in a terminal, but nevertheless no soundcard is detected in the System Preferences.  ;) Has anyone an idea how I might get sound?!

 

maz

 

 

I FOUND THE PROBLEM!!! you cant boot up in safe mode! when i boot up in safe mode -x to bypass the ati driver conflict, my sound driver doesnt appear at all. i finally deleted all my ati.kext in the extensions folder with MACDRIVE via windows. i tried deleting them in osx but it still wouldnt let me boot up without safe mode. MAC DRIVE has a full functional 6 day trial. go to my computer in windows after installing macdrive. open your mac drive with osx install on it. browse to "/System/Library" then right click on the Library folder and click search. type "ati" in search field. delete everything that comes up.if you have nvidia card do the same but delete all nvidia files. now you wont have to boot with the -x flag and your sound card will be available in system prefs now. just to prove safe mode was the problem. if i -x at the startup and log in safe mode my sound card disappears again.

Link to comment
Share on other sites

I FOUND THE PROBLEM!!! you cant boot up in safe mode! when i boot up in safe mode -x to bypass the ati driver conflict, my sound driver doesnt appear at all. i finally deleted all my ati.kext in the extensions folder with MACDRIVE via windows. i tried deleting them in osx but it still wouldnt let me boot up without safe mode. MAC DRIVE has a full functional 6 day trial. go to my computer in windows after installing macdrive. open your mac drive with osx install on it. browse to "/System/Library" then right click on the Library folder and click search. type "ati" in search field. delete everything that comes up.if you have nvidia card do the same but delete all nvidia files. now you wont have to boot with the -x flag and your sound card will be available in system prefs now. just to prove safe mode was the problem. if i -x at the startup and log in safe mode my sound card disappears again.

 

 

you didnot say what soundcard you were using

Link to comment
Share on other sites

I have a soundcard with the same device and vendor ID but its a Sigmatel C-major audio sound card.

I also cannot get it to work.

Can anyone help??

All I need is sound. I even got wireless working.

I believe i have to the same card. Mine is working, however, very poorly, the sound is fine for the "noises" but when i try playing mp3s, it's all choppy. how can i help?

Link to comment
Share on other sites

I believe i have to the same card. Mine is working, however, very poorly, the sound is fine for the "noises" but when i try playing mp3s, it's all choppy. how can i help?

 

the problem is with people with the SiS Chipset. ATM, i have not read about anybody getting it to work. Would be glad to hear it though.

Link to comment
Share on other sites

http://lists.freebsd.org/pipermail/freebsd...uly/001564.html

 

Tracking RELENG_5_1 (19/06/2003 snapshot)

ich.c:
$FreeBSD: src/sys/dev/sound/pci/ich.c,v 1.28 2003/04/16 03:16:55 mdodd Exp $

ac97.c:
$FreeBSD: src/sys/dev/sound/pcm/ac97.c,v 1.42 2003/04/23 16:49:53 jhb Exp $



>Description:
Kernel does not detect pcm device at all on bootup with such hardware.

>How-To-Repeat:
N/A
>Fix:

Patches Below. Seem to work ok, no problem with audio. Have not tested
recording or other features apart from playback but i expect they would
work ok.


--- ac97.c.diff begins here ---
--- ac97_28-07-2003.c	Thu Apr 24 02:49:53 2003
+++ ac97.c	Sat Jun 28 12:36:20 2003
@@ -136,6 +136,7 @@
	 { 0x414c4710, 0x0f, 0, "ALC200",  0 },
	 { 0x414c4740, 0x0f, 0, "ALC202",  0 },
	 { 0x414c4720, 0x0f, 0, "ALC650",  0 },
+	{ 0x414c4760, 0x0f, 0, "ALC655",	0 },
	 { 0x43525900, 0x07, 0, "CS4297",  0 },
	 { 0x43525910, 0x07, 0, "CS4297A",  0 },
	 { 0x43525920, 0x07, 0, "CS4294/98",	0 },
--- ac97.c.diff ends here ---

--- ich.c.diff begins here ---
--- ich_28-06-2003.c	Wed Apr 16 13:16:55 2003
+++ ich.c	Sun Jun 29 16:17:17 2003
@@ -43,6 +43,7 @@

 #define SIS7012ID       0x70121039      /* SiS 7012 needs special 
handling */
 #define ICH4ID  0x24c58086	/* ICH4 needs special handling too */
+#define ICH5ID  0x24d58086	/* ICH5 special handling */

 /* buffer descriptor */
 struct ich_desc {
@@ -577,8 +578,8 @@
	 stat = ich_rd(sc, ICH_REG_GLOB_STA, 4);

	 if ((stat & ICH_GLOB_STA_PCR) == 0) {
-  /* ICH4 may fail when busmastering is enabled. Continue */
-  if (pci_get_devid(sc->dev) != ICH4ID) {
+  /* ICH4/ICH5 may fail when busmastering is enabled. Continue */
+  if (pci_get_devid(sc->dev) != ICH4ID && pci_get_devid(sc->dev) != 
ICH5ID) {
  	 return ENXIO;
   }
	 }
@@ -630,6 +631,10 @@
   device_set_desc(dev, "Intel 82801DB (ICH4)");
   return 0;

+	case ICH5ID:
+  device_set_desc(dev, "Intel 82801EB (ICH5/ICH5R)");
+  return 0;
+
	 case SIS7012ID:
   device_set_desc(dev, "SiS 7012");
   return 0;
@@ -681,7 +686,7 @@
   * but doing so will mess things up here.  ich4 has enough new
   * features it warrants it's own driver.
   */
-	if (pci_get_devid(dev) == ICH4ID) {
+	if (pci_get_devid(dev) == ICH4ID || pci_get_devid(dev) == ICH5ID) {
   pci_write_config(dev, PCIR_ICH_LEGACY, ICH_LEGACY_ENABLE, 1);
	 }

--- ich.c.diff ends here ---

Link to comment
Share on other sites

okay, looks good, thanks for the hint, Prot! Do you think this patch will make our soundcards working? I do not really know where to apply the patch, so can anyone who knows test this? Thanks.

 

maz

Link to comment
Share on other sites

AppleAC97AudioIntelICH:

 

Version: 1.0.0

Last Modified: 8/8/05 6:58 PM

Get Info String: 1.0.0, Copyright Apple Computer, Inc. 2004

Location: /System/Library/Extensions/AppleAC97Audio.kext/Contents/PlugIns/AppleAC97AudioIntelICH.kext

kext Version: 1.0.0

Load Address: 0xd94ee000

Valid: Yes

Authentic: Yes

Dependencies: Incomplete

Dependency Errors:

com.apple.driver.AppleAC97Audio: No valid version of this dependency can be found

Integrity: Kext has no receipt

Link to comment
Share on other sites

 Share

×
×
  • Create New...