Hi,
I've still my screen flickering issues(screen flickers for resolutions which are
superior to 832x624 ) on the M4A785T-M mainboard.
I've been investigating and here's what I found:
In src/southbridge/amd/rs780/early_setup.c there is:
printk(BIOS_INFO, "rs780_htinit cpu_ht_freq=%x.\n", cpu_ht_freq);
In the rs780_htinit function, which prints 0 as cpu_ht_freq.
Then it assumes the CPU is k8 (I've a fam10h: model name : AMD Athlon(tm) II
X2 250 Processor) and it doesn't do the right init for my rs780.
Here is a call graph of the initialization of the Hyper Transport:
amd_ht_init(src/northbridge/amd/amdht/ht_wrapper.c)
|->amdHtInitialize(northbridge/amd/amdht/h3finit.c)
|->linkOptimization(northbridge/amd/amdht/h3finit.c)
|->coherentInit(northbridge/amd/amdht/h3finit.c)
|->htDiscoveryFloodFill(northbridge/amd/amdht/h3finit.c)
\-> pDat->nb->verifyLinkIsCoherent always return false and so:
the for loop is executed 8 times, but each time the
follownig function returns false(and so it runs the
continue instruction):
if (!pDat->nb->verifyLinkIsCoherent(...))
and so it doesn't run what's next which prevent
TotalLinks from beeing incremented.
|->verifyLinkIsCoherent(northbridge/amd/amdht/h3ncmn.c)
\->max_nodes=8,link goes from 0 to 7,and node is always 0
|-> selectOptimalWidthAndFrequency(northbridge/amd/amdht/h3finit.c)
\-> pDat->TotalLinks is 0, so the for loop isn't run
The big problem here is that I don't know why verifyLinkIsCoherent always
return false, and that seem to be the cause of my problem.
Denis.