CALCULATING PINCONFIGURATION AND VERB COMMANDS FOR APPLEHDA

CHAPTER 2:CALCULATING PINCONFIGURATION AND VERB COMMANDS.

Calculating Pinconfiguration 

Pinconfig is the means by which the audio codec tells our Intel controller, uniquely, the presence of the inputs and outputs audio, whether headphones, speakers, microphones etc..
To do this they must be arranged according to specific of Intel Higth Definition Audio.

Method 1:: C
onvert Codec_dump to produce useful information we need in AppleHDA Patching

  1. Install GraphViz Download Here
  2. Now Download CodecGraph Here , put this CodecGraph folder to Desktop and Copy and Paste Codec_dump ( we generated in Linux earlier) folder.
  3. open terminal type cd and drag this folder , after then open folder and drag comandos file to terminal and press enter .(Inside the folder codecgraph are generated 5 files:  codec_dump_dec.txt.svg,  codec_dump.txt.svg, codec_dump_dec.txt, verbs.txt, verbitdebug.txt.  Later we will use the same to fix the AppleHDA.)

Second or Optional Method for Calculating Pinconfigurtion and Verb Commands

Method 2:: Now download Grisnos PinConfigOverride Tools for Windows only

Note :: Using PinConfigOverride Tools is a second method to generating Pinconfig from Windows , its depends upon you to choose it or not .

Fixing or Correcting Pinconfiguration and  Verb Commands ::

Verb Commands  are part of Pinconfiguration

Look at Codecs Verbs Info Before Starting ::: Codec Verbs info 

1.Now open CodecGraph from Desktop and open Verbs.txt like below

NodeID(NID) 0x14 in hex, 20 in decimal:

The default verbs for it: 21471c10 21471d44 21471e01 21471f01
01471c10:
01471c10 = CAd (Codec Adress)
01471c10 = NID (NodeID)
01471c10 = Verb Commands like 71″c” then “d”, “e” ,”f”
01471c10 = Verb Data
And the same for the rest.

now copy whole data from Modified Verbs and save as Pinconfig . ( we use this later in patching AppleHDA kexts )

Note ::Verbit does a  great job, still not perfect as it does not know what are our options so we need to fix Pinconfig as Codec Verbs info . for fixing manually use Pinconfigurator App Download Here  

Fixing Pinconfiguration from Windows :::

Pinconfipinconfiu

Now last text file created will have all pinconfig ..for modify Pinconfig from windows we use a Pinconfigurator App Download Here  

Just paste and parse Pinconfig from windows and fix it according to  Codec Verbs info 

In our ALC887-VD example, there is an EAPD at Node 14 of Speaker. So, we need to calculate the verb command for this EAPD and use in our patch to get sound from speaker.

For EAPD at Node 14:
2 + 14 +70c + 02 = 21470c02

DISABLING THE NODES (PIN COMPLEX) THAT ARE NOT USED:

We should disable the nodes that the codec is not using, so we can avoid any issues from them. Use the following the verb data for disabling those nodes and calculate verb commands.

Verb data for disabled node:

F0 00 00 40

Final codec verb commands  are:

<21471c10 21471d40 21471e01 21471f01 21b71c20 21b71d40 21b71e21 21b71f01 21a71c30 21a71d30 21a71e81 21a71f01 21871c50 21871d90 21871ea1 21871f01 21971c60 21971d90 21971ea1 21971f01>

 

2 Responses

  1. drgross 9 months ago
    • Deepak 9 months ago

Add Comment