I checked the code and found a stupid bug. I wonder if it can fix your problem.
Signed-off-by: Zheng Bao zheng.bao@amd.com
Index: src/southbridge/amd/rs780/rs780_cmn.c =================================================================== --- src/southbridge/amd/rs780/rs780_cmn.c (revision 5926) +++ src/southbridge/amd/rs780/rs780_cmn.c (working copy) @@ -70,7 +70,7 @@ reg &= ~mask; reg |= val; if (reg != reg_old) { - *((u32 *) addr) = val; + *((u32 *) addr) = reg; } } Index: src/southbridge/amd/rs690/rs690_cmn.c =================================================================== --- src/southbridge/amd/rs690/rs690_cmn.c (revision 5926) +++ src/southbridge/amd/rs690/rs690_cmn.c (working copy) @@ -72,7 +72,7 @@ reg &= ~mask; reg |= val; if (reg != reg_old) { - *((u32 *) addr) = val; + *((u32 *) addr) = reg; } } Zheng