Amd Hda Verbs

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

Revision 1.

0 September 19, 2013

AMD HDA Verbs

© 2013 Advanced Micro Devices, Inc.


Proprietary 1
Revision 1.0 September 19, 2013

Trademarks

AMD, the AMD Arrow logo, Athlon, and combinations thereof, ATI, ATI logo, Radeon, and Crossfire are trademarks of Advanced
Micro Devices, Inc.

Microsoft and Windows are registered trademarks of Microsoft Corporation.

Other product names used in this publication are for identification purposes only and may be trademarks of their respective
companies.

Disclaimer

The contents of this document are provided in connection with Advanced Micro Devices, Inc. ("AMD") products. AMD makes no
representations or warranties with respect to the accuracy or completeness of the contents of this publication and reserves the
right to make changes to specifications and product descriptions at any time without notice. No license, whether express, implied,
arising by estoppel, or otherwise, to any intellectual property rights are granted by this publication. Except as set forth in AMD's
Standard Terms and Conditions of Sale, AMD assumes no liability whatsoever, and disclaims any express or implied warranty,
relating to its products including, but not limited to, the implied warranty of merchantability, fitness for a particular purpose, or
infringement of any intellectual property right. AMD's products are not designed, intended, authorized or warranted for use as
components in systems intended for surgical implant into the body, or in other applications intended to support or sustain life, or
in any other application in which the failure of AMD's product could create a situation where personal injury, death, or severe
property or environmental damage may occur. AMD reserves the right to discontinue or make changes to its products at any time
without notice.

© 2013 Advanced Micro Devices, Inc. All rights reserved.

© 2013 Advanced Micro Devices, Inc.


Proprietary 2
Revision 1.0 September 19, 2013

1. AUDIO DESCRIPTOR SET AND GET ................................................................................................................. 4

2. SPEAKER ALLOCATION GET ............................................................................................................................ 5

3. MULTI-CHANNEL ENABLE SET AND GET ......................................................................................................... 6

4. CHANNEL ALLOCATION SET AND GET ............................................................................................................ 7

5. DOWN-MIX INFORMATION SET AND GET ...................................................................................................... 8

6. MULTI-CHANNEL MODE SET AND GET ........................................................................................................... 9


7. MULTI-CHANNEL ENABLE SET AND GET ....................................................................................................... 10

© 2013 Advanced Micro Devices, Inc.


Proprietary 3
Revision 1.0 September 19, 2013

1. Audio Descriptor Set and Get


Audio Descriptor Set and Get (pin vendor defined verb 776, F76)
Allows accessing the Short audio descriptor for each format in an indirect way.
Only the Audio Format Code (bits [6:3] of Byte 0) is RW, the other formats are RO.
After the Audio format Code is written using the Set function, the Get function will give the audio
descriptor corresponding to the Audio Format Code written.

Byte# bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0


0 0 Audio format code (1 to 14) Max Num of channels – 1
0: reserved
1:LPCM
2: AC-3
3: MPEG1 (Layers 1 and 2)
4: MP3 (MPEG1 Layer 3)
5: MPEG2 (Multichannel)
6: AAC
7: DTS
8: ATRAC
9: Reserved
10: Dolby Digital +
11: DTS-HD
12: MAT/MLP (Dolby True HD)
13: Reserved
14: WMA Pro
1 Reserved 192khz 176.4 96 88.2 48 44.1 32
Rates supported. In the LPCM kHz kHz kHz kHz kHz kHz
case, these are the rates supported
for multi-channel
2 BPS capability for LPCM:
 Bit0: 16 bit capable
 Bit1: 20 bit capable
 Bit 2: 24 bit capable
 Bits[7:3] reserved.
Format specific for other formats
3 Reserved 192khz 176.4khz 96khz 88.2 48khz 44.1khz 32khz
Rates supported for stereo. Only khz
applicable in the LPCM case.

© 2013 Advanced Micro Devices, Inc.


Proprietary 4
Revision 1.0 September 19, 2013

2. Speaker Allocation Get

Speaker Allocation Get (pin vendor defined verb F70)


Byte 0 of the response contains the speaker allocation of the DTV according to its Short Audio Descriptor.
All fields are RO.

Byte Bit bit6 bit5 bit4 bit3 bit2 bit1 bit0


# 7
0 0 RLC/RR FLC/FR RC RL/RR FC LFE FL/FR
C C Rear Rear Front Low frequency Front left and Front
Rear left Front left center left and center speaker present right speakers present
Center Center speake rear speake
and Rear and r right r
Right Front present speaker present
center Right s
speakers center present
present speakers
present
1 Reserved DP_CONNECTIO HDMI_CONNECTIO
N N
(Only for parts (Only for parts
supporting DP supporting DP Audio,
Audio, for GUI for GUI labeling)
labeling)
2 0
3 0

© 2013 Advanced Micro Devices, Inc.


Proprietary 5
Revision 1.0 September 19, 2013

3. Multi-Channel Enable Set and Get


Multi-Channel Enable 01 Set and Get (pin vendor defined verb 777, F77)

Multi-Channel Enable 23 Set and Get (pin vendor defined verb 778, F78)

Multi-Channel Enable 45 Set and Get (pin vendor defined verb 779, F79)

Multi-Channel Enable 67 Set and Get (pin vendor defined verb 77A, F7A)
Allows the audio driver to enable sending multi-channel audio through the pin. OUT_ENABLE enables
the corresponding channel pair of the HDMI/DP multichannel audio data stream. The channel pair selected
are CHANNEL_ID and CHANNEL_ID+1 channels of the controller audio stream.

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0


CHANNEL_ID Rsvd MUTE OUT_ENABLE
Channels CHANNEL_ID and Rsvd (Only for Enables sending the stream channels
CHANNEL_ID+1 of the audio stream are Codec Rev 3 selected by CHANNEL_ID to the
sent to the corresponding channel pair of the and higher) corresponding channel pair of the
HDMI/DP. Zeroes the HDMI/DP.
audio in the
channel pair

© 2013 Advanced Micro Devices, Inc.


Proprietary 6
Revision 1.0 September 19, 2013

4. Channel Allocation Set and Get

Channel Allocation Set and Get (pin vendor defined verb 771 and F71)

Defines the value to be sent in the Audio InfoFrame data byte 4. Intended to determine how various speaker
location are allocated to transmission channels.
All fields are RW.

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0


CA7 CA6 CA5 CA4 CA3 CA2 CA1 CA0
Channel Allocation
0: Channel 0 is Front Left, Channel 1 is Front Right, Other channels not used
1: Channel 0 is Front Left, Channel 1 is Front Right, Channel 2 is Low Freq speaker, Other channels not used

0x1F: Channel 0 is Front Left, Channel 1 is Front Right, Channel 2 is Low Freq speaker, Channel 3 is Front Center,
Channel 4 is Rear Left, Channel 5 is Rear Right, Channel 6 is Front Left Center, Channel 7 is Front Right Center.
0x20 to 0xFF: Reserved

© 2013 Advanced Micro Devices, Inc.


Proprietary 7
Revision 1.0 September 19, 2013

5. Down-Mix Information Set and Get

Down-Mix Information Set and Get (pin vendor defined verb 772 and F72)
Defines the value to be sent in the Audio InfoFrame data byte 5. Intended to communicate to the DTV the total
attenuation that the source applied to the audio and if down-mixing is permitted. Also note that the Codec hardware
will swap FC, LFE in order to meet the HDMI/DP requirement. This requires no programming on the audio driver
side. All fields are RW.

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0


DM_INH LSV3 LSV2 LSV1 LSV0 Rsvd Rsvd Rsvd
0: Down-mix 0: 0dB level shift
permitted or no 1: 1dB Level Shift
information. …
1: Down-mix 15: 15 dB level Shift
prohibited.

Multi- Channel allocation in system Corres- Required channel allocation Codec channel crossbar programming
channel memory ponding in HDMI/DP packets Multi- Multi- Multi- Multi-
audio Channel Channel Channel Channel Channel
Format Allocatio Enable Enable Enable Enable
n value 01 23 45 67
0,1 2,3 4,5 6,7 to 0, 1 2, 3 4, 5 6, 7

OUT_ENAB

OUT_ENAB

OUT_ENAB

OUT_ENAB
CHANNEL_

CHANNEL_

CHANNEL_

CHANNEL_
program

LE

LE

LE

LE
ID

ID

ID

ID
2.0 FL,F - - - 00 FL,F -, - -,- -, - 1 0 0 x 0 x 0 x
R R
3.0 FL,F FC,- - - 02 FL,F -, FC -,- -, - 1 0 1 2 0 x 0 x
R R
4.0 FL,F SL,SR - - 08 FL,F -, - SL,S -, - 1 0 0 x 1 2 0 x
R R R
5.1 FL,F FC, SL,S - 0B FL,F LFE, SL,S -, - 1 0 1 2 1 4 0 x
R LFE R R FC R
6.1 FL,F FC, SL,S BC, 0F FL,F LFE, SL,S BC,- 1 0 1 2 1 4 1 6
R LFE R - R FC R
7.1 FL,F FC, BL,B SL,S 13 FL,F LFE, SL,S BL, 1 0 1 2 1 6 1 4
R LFE R R R FC R BR

© 2013 Advanced Micro Devices, Inc.


Proprietary 8
Revision 1.0 September 19, 2013

6. Multi-Channel Mode Set and Get

Multi-Channel Mode Set and Get (pin vendor defined verb 789, F89)
Revision ID 3 and newer only.

Allows use of the single-channel-wise Multi-Channel Enable verbs, which provide higher channel routing
flexibility for single-sink and DDM Audio multi-sink surround sound.

bit7:1 bit0

Rsvd MULTICHANNEL_MODE
Rsvd 0: channel pair mode (uses only the channel-pair-wise Multi-channel Enable verbs)
1: single channel mode (uses the single-channel-wise Multi-channel Enable verbs)

© 2013 Advanced Micro Devices, Inc.


Proprietary 9
Revision 1.0 September 19, 2013

7. Multi-Channel Enable Set and Get


Multi-Channel Enable 1 Set and Get (pin vendor verb 785, F85)

Multi-Channel Enable 3 Set and Get (pin vendor verb 786, F86)

Multi-Channel Enable 5 Set and Get (pin vendor verb 787, F87)

Multi-Channel Enable 7 Set and Get (pin vendor verb 788, F88)

Multi-Channel Enable 01 Set and Get (pin vendor verb 777, F77) (applies to ch 0 in single
channel mode)

Multi-Channel Enable 23 Set and Get (pin vendor verb 778, F78) (applies to ch 2 in single
channel mode)

Multi-Channel Enable 45 Set and Get (pin vendor verb 779, F79) (applies to ch 4 in single
channel mode)

Multi-Channel Enable 67 Set and Get (pin vendor verb 77A, F7A) (applies to ch 6 in single
channel mode)

When in “Single Channel Mode”, the channel-pair-wise Multi-channel Enable verbs (01, 23, 45 and 67)
apply only to the even channels (0, 2, 4 and 6) and these verbs apply to the odd channels. Besides that, the
format is the same, and the C/LFE swapping is not automatic anymore and has to be explicitly programmed
in these controls.

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0


CHANNEL_ID Rsvd MUTE OUT_ENABLE

Channel of the audio stream sent to the Rsvd Zeroes the Enables sending the stream channels
corresponding channel of the audio in the selected by CHANNEL_ID to the
HDMI/DP. channel corresponding channel of the HDMI/DP.

© 2013 Advanced Micro Devices, Inc.


Proprietary 10

You might also like