VirtualBox

Changeset 30992 in vbox


Ignore:
Timestamp:
Jul 22, 2010 1:38:57 PM (14 years ago)
Author:
vboxsync
Message:

HDA: A few more review comments.

Location:
trunk/src/VBox/Devices/Audio
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Audio/DevCodec.cpp

    r30985 r30992  
    217217        case 0:
    218218            pNode->root.node.name = "Root";
     219            //** @todo r=michaln: I fear the use of RT_MAKE_U32_FROM_U8() here makes the
     220            // code much harder to read, not easier.
    219221            pNode->node.au32F00_param[0] = RT_MAKE_U32_FROM_U8(0x80, 0x76, 0x84, 0x83); /* VendorID = STAC9220/ DevId = 0x7680 */
    220222            pNode->node.au32F00_param[2] = RT_MAKE_U32_FROM_U8(0x1, 0x31, 0x10, 0x00); /* rev id */
     
    223225        case 1:
    224226            pNode->afg.node.name = "AFG";
     227            //** @todo r=michaln: Are the comments right? Looks like copy & paste.
    225228            pNode->node.au32F00_param[4] = RT_MAKE_U32_FROM_U8(0x1a, 0x00, 0x02, 0x00); /* node info (start node: 1, start id = 1) */
    226229            pNode->node.au32F00_param[5] = RT_MAKE_U32_FROM_U8(0x1, 0x01, 0x00, 0x0); /* node info (start node: 1, start id = 1) */
     
    388391            pNode->node.name = "VolumeKnob";
    389392            pNode->node.au32F00_param[0x9] = (0x6 << 20);
     393            //** @todo r=michaln: The next assignment is out of array bounds (0x13 items in array);
     394            //  the array needs to be bigger.
    390395            pNode->node.au32F00_param[0x13] = RT_BIT(7)| 0x7F;
    391396            pNode->node.au32F00_param[0xe] = 0x4;
     
    577582    pState->cVerbs = STAC9220_VERB_SIZE;
    578583    pState->pfnLookup = codecLookup;
     584    //** @todo r=michaln: Where is this memory freed?
    579585    pState->pNodes = (PCODECNODE)RTMemAllocZ(sizeof(CODECNODE) * STAC9220_NODE_COUNT);
    580586    uint8_t i;
  • trunk/src/VBox/Devices/Audio/DevIchIntelHDA.cpp

    r30984 r30992  
    9191#define INTCTL_SALL(pState) (INTCTL((pState)) & 0xFF)
    9292
     93/* Note: The HDA specification defines a SSYNC register at offset 0x38. The
     94 * ICH6/ICH9 datahseet defines SSYNC at offset 0x34. The Linux HDA driver matches
     95 * the datasheet.
     96 */
    9397#define ICH6_HDA_REG_SSYNC  12 /* 0x34 */
    9498#define SSYNC(pState) (HDA_REG((pState), SSYNC))
     
    424428} s_ichIntelHDRegMap[] =
    425429{
    426     //** @todo r=michaln: Please align the table properly for reasier readability.
    427430    /* offset  size     read mask   write mask         read callback         write callback         abbrev      full name                     */
    428431    /*-------  -------  ----------  ----------  -----------------------  ------------------------ ----------    ------------------------------*/
     
    438441    { 0x00020, 0x00004, 0xC00000FF, 0xC00000FF, hdaRegReadU32          , hdaRegWriteU32          , "INTCTL"    , "Interrupt Control" },
    439442    { 0x00024, 0x00004, 0xC00000FF, 0x400000FF, hdaRegReadINTSTS       , hdaRegWriteINTSTS       , "INTSTS"    , "Interrupt Status" },
     443    //** @todo r=michaln: Are guests really not reading the WALCLK register at all?
    440444    { 0x00030, 0x00004, 0xFFFFFFFF, 0x00000000, hdaRegReadUnimplemented, hdaRegWriteUnimplemented, "WALCLK"    , "Wall Clock Counter" },
     445    //** @todo r=michaln: Doesn't the SSYNC register need to actually stop the stream(s)?
    441446    { 0x00034, 0x00004, 0x000000FF, 0x000000FF, hdaRegReadU32          , hdaRegWriteU32          , "SSYNC"     , "Stream Synchronization" },
    442447    { 0x00040, 0x00004, 0xFFFFFF80, 0xFFFFFF80, hdaRegReadU32          , hdaRegWriteBase         , "CORBLBASE" , "CORB Lower Base Address" },
     
    13211326    pThis->hda.cbCorbBuf = CORBSIZE(&pThis->hda) * sizeof(uint32_t);
    13221327
     1328    //** @todo r=michaln: Where are the Corb/RirbBuf allocations freed?
    13231329    if (pThis->hda.pu32CorbBuf)
    13241330        memset(pThis->hda.pu32CorbBuf, 0, pThis->hda.cbCorbBuf);
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette