Jump to content
Lord_Richard_2

[need help] audio fix for alc275, no kexts all in dsdt

Recommended Posts

I want to get my audio working for alc275 on my laptop.

I want to avoid using a modified kext (for stability with updates and such).

I have done the following:

Extracted my codec verbs and obtained by pin configuration data.

I also have my dsdt and common edits but am having confusion with HDEF section i have to edit.

Where do i obtain the following info:


codec-id (it is based off of data taken form hardware vender and device id from windows device manager menu and rearranged into hex)

layout-id (it is always 12 in hex as that is defined in apple's audio kext)

device-type (this is where the name of device is given)


I also want to directly put in pin config info, but am unsure how and where to put it and what formatting is needed. Here is my pin config data:

-----------------------------------------------------------------------------------------------

<01271C30 01271D09 01271EA6 01271F90 01371CF0 01371D11 01371E11 01371F41 01471C10 01471D01 01471E17 01471F90 01571C1F 01571D10 01571E21 01571F04 01671CF0 01671D11 01671E11 01671F41 01871C40 01871D58 01871EA1 01871F04 01971CF0 01971D11 01971E11 01971F41 01A71CF0 01A71D11 01A71E11 01A71F41 01B71CF0 01B71D11 01B71E11 01B71F41 01D71C05 01D71D82 01D71E13 01D71F40 01E71C20 01E71D11 01E71E45 01E71F04>

-----------------------------------------------------------------------------------------------


Here is the layout of the HDEF section i am using (replacing relevant data where applicable):

-----------------------------------------------------------------------------------------------

Method (_DSM, 4, NotSerialized)

{

Store (Package (0x08)

{

"codec-id",

Buffer (0x04)

{

0x83, 0x76, 0x84, 0x83 // the hex codec ID (reverse order)

},

"layout-id",

Buffer (0x04)

{

0x02, 0x00, 0x00, 0x00 // the hex layout ID (reverse order)

},

"device_type",

Buffer (0x16) // the hex count + 1 for null terminated ascii string

{

"SigmaTel STAC9221D A2" // the string identifier

},

"PinConfigurations",

Buffer (0x1C) // the actual hex count

{

/* the PinConfigurations data as it appears.

/* 0000 */ 0x10, 0x40, 0x21, 0x02, 0x10, 0x10, 0x01, 0x01,

/* 0008 */ 0x20, 0x30, 0x81, 0x01, 0x10, 0x40, 0x01, 0x01,

/* 0010 */ 0x21, 0x90, 0xa1, 0x01, 0x11, 0x60, 0x01, 0x01,

/* 0018 */ 0x30, 0x21, 0x45, 0x01 /* one entry seems missing */

}

}, Local0)

DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))

Return (Local0)

}

-------------------------------------------------------------------------------------------

Here is the hardware id strings from device manager:


NVIDIA High Definition Audio

----------------------------

HDAUDIO\FUNC_01&VEN_10DE&DEV_0014&SUBSYS_104D4F00&REV_1001

HDAUDIO\FUNC_01&VEN_10DE&DEV_0014&SUBSYS_104D4F00


Realtek High Definition Audio

-----------------------------

HDAUDIO\FUNC_01&VEN_10EC&DEV_0275&SUBSYS_104D4F00&REV_1000

HDAUDIO\FUNC_01&VEN_10EC&DEV_0275&SUBSYS_104D4F00


I have 2 devices listed under device manager, do i have to somehow accomodate both devices in my dsdt?



I have looked at the following posts and am still confused on the "format" of data to put into the dsdt and what i all need to avoid a "hacked" kext:


http://www.projectosx.com/forum/?showtopic=465


http://Olarila.com/forum/viewtopic.php?f=19&t=634


http://forum.thinkpads.com/viewtopic.php?f=5&t=85344


http://osx86.co/f36/various-dsdt-mods-t1960/page3.html

Link to comment
Share on other sites

I am using the entry for 12. (that is default)

I am confused on how to get the other info. I know it involves the hardware device and vender but you have to manipulate those somehow to get the codec-Id and such....

How do I put in my pin configuration data into dsdt (to have least data in hacked kext) as i dont know format it has to be an can't find a reliable dsdt example with this data in it.

Link to comment
Share on other sites

You don't need it, right layout-id is enough, PinConfigurations can be left blank.

 

    Method (_DSM, 4, NotSerialized)
   {
       Store (Package (0x04)
           {
               "layout-id", 
               Buffer (0x04)
               {
                   0x0C, 0x00, 0x00, 0x00
               }, 
               "PinConfigurations", 
               Buffer (Zero) {}
           }, Local0)
       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
       Return (Local0)
   }

ASUS N53Jq • CPU: Intel Core i7-740QM 1.73GHz • RAM: 6,0GB • HD: 500GB • GPU: GeForce GT 425M 1GB 1920x1080 • OS: OS X 10.8.4 • Linux Mint 15 • Windows 8

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.





×
  • Create New...
The popup will be closed in 15 seconds...