2013/4/14 Alex Deucher <alexdeucher@xxxxxxxxx>: > On Sat, Apr 13, 2013 at 7:26 PM, Rafał Miłecki <zajec5@xxxxxxxxx> wrote: >> We need interrupts on format change for R6xx only, where hardware seems >> to be somehow bugged and requires setting audio info manually. > > Can you confirm that this is actually needed on older chips? AFAIK, > it shouldn't be required for any chips. It's mainly for debugging. I've finally managed to install, run and debug fglrx on RV620. That was really painful and ignoring Xorg 1.13 release in fglrx legacy didn't help :| Please take a look at attached log from fglrx. It seems that fglrx on every audio format change does: 1) Read audio status (R600_AUDIO_STATUS_BITS, R600_AUDIO_RATE_BPS_CHANNEL) 2) Writes sth to HDMI0_STATUS and HDMI0_INFOFRAME_CONTROL0 3) Updates audio info frame 4) Recalculates checksum of audio info frame 5) Triggers update with HDMI0_AUDIO_INFO_UPDATE bit That are some extra reads that look like polling, probably for some frame sync. In the attached logs you can't see any real changes in audio info frame, because I wasn't able to play more that 2 channels (because of lacking support for multichannel audio in alsa). However I start thinking we may need audio interrupts for all ASICs. And removing them wasn't a good idea at al. After all, how we could handle audio infoframe update on audio format change? The thing we may try dropping is code updating HDMI0_60958_0 and HDMI0_60958_1 registers. I don't see fglrx writing to that registers on audio format change, so maybe hardware does handle that automatically? That needs verifying with fglrx and radeon. -- Rafał
sudo mplayer -ao alsa:device=hw=1.3 01.flac -srate 44100 RREG32(0x00007404); -> 0x00e00000 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x05e200a5 RREG32(0x000068a0); -> 0x08540109 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x088602f4 RREG32(0x000068a0); -> 0x02910356 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00004011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000013 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000013); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000013 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x01c301f6 RREG32(0x000068a0); -> 0x065f025a RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x0884044a RREG32(0x000068a0); -> 0x00ad0049 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00004011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x03ab01ea RREG32(0x000068a0); -> 0x0856024b RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x05260433 RREG32(0x000068a0); -> 0x07b50030 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00004011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE sudo mplayer -ao alsa:device=hw=1.3 01.flac -srate 48000 RREG32(0x00007404); -> 0x00e00000 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x03f3031c RREG32(0x000068a0); -> 0x06ca0382 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x0511010a RREG32(0x000068a0); -> 0x02f7016c RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x02ad01f9 RREG32(0x000068a0); -> 0x0434025d RREG32(0x0000689c); -> 0x00000002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x033b0448 RREG32(0x000068a0); -> 0x01a00045 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00050002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00050009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE sudo mplayer -ao alsa:device=hw=1.3 01.flac -srate 48000 RREG32(0x00007404); -> 0x00e00000 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x08380306 RREG32(0x000068a0); -> 0x07200369 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x069d00f2 RREG32(0x000068a0); -> 0x03910154 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020008 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x039f0201 RREG32(0x000068a0); -> 0x02830264 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x013a044f RREG32(0x000068a0); -> 0x0220004b RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00050002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x04f501ef RREG32(0x000068a0); -> 0x03270251 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x02ab043c RREG32(0x000068a0); -> 0x07000037 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00050002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x0002000d RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE sudo mplayer -ao alsa:device=hw=1.3 -ac hwac3 Broadway-5.1-48khz-448kbit.ac3 RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x05dc01f2 RREG32(0x000068a0); -> 0x06ba0253 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x03f4043a RREG32(0x000068a0); -> 0x0803003a RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x048d01dc RREG32(0x000068a0); -> 0x0229023d RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x072c0423 RREG32(0x000068a0); -> 0x07150023 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020008 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020011 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x03f501f2 RREG32(0x000068a0); -> 0x04cf0254 RREG32(0x0000689c); -> 0x00010002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x0636043b RREG32(0x000068a0); -> 0x001f0037 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00000011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE sudo mplayer -ao alsa:device=hw=1.3 -ac hwdts 06_NEW_JAZZ_SSQ3_ENERGY_DTS.wav RREG32(0x00007404); -> 0x00e00000 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x08750083 RREG32(0x000068a0); -> 0x04c900e6 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x071302d2 RREG32(0x000068a0); -> 0x063e0334 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020008 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020000 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x0002000d RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00004011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x009f01ca RREG32(0x000068a0); -> 0x0115022d RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x00f50412 RREG32(0x000068a0); -> 0x07a10012 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020008 RREG32(0x0000689c); -> 0x00020000 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00050002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00004011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE RREG32(0x00007404); -> 0x00e00010 HDMI0_STATUS RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x06d901e3 RREG32(0x000068a0); -> 0x01370244 RREG32(0x0000689c); -> 0x00020002 RREG32(0x00000330); -> 0x00000000 RREG32(0x00000338); -> 0x00000000 RREG32(0x000060f8); -> 0x00000003 RREG32(0x000068a0); -> 0x06d70428 RREG32(0x000068a0); -> 0x046b0027 RREG32(0x0000689c); -> 0x00050002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020008 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020000 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00010002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00000002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020002 RREG32(0x0000689c); -> 0x00020009 RREG32(0x00007408); -> 0x10020011 HDMI0_AUDIO_PACKET_CONTROL RREG32(0x000073d8); -> 0x00000001 R600_AUDIO_STATUS_BITS RREG32(0x000073c0); -> 0x00004011 R600_AUDIO_RATE_BPS_CHANNEL RREG32(0x00007400); -> 0x00000010 HDMI0_STATUS WREG32(0x00007400, 0x00000110); HDMI0_STATUS |= 1 << 8 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x00000033); HDMI0_INFOFRAME_CONTROL0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x000074cc); -> 0x00000170 HDMI0_AUDIO_INFO0 RREG32(0x000074d0); -> 0x00000000 HDMI0_AUDIO_INFO1 WREG32(0x000074cc, 0x00000170); HDMI0_AUDIO_INFO0 RREG32(0x00007414); -> 0x00000033 HDMI0_INFOFRAME_CONTROL0 WREG32(0x00007414, 0x000000b3); HDMI0_INFOFRAME_CONTROL0 |= HDMI0_AUDIO_INFO_UPDATE
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel