From: Thomas Schmid Date: Sat, 23 Mar 2013 19:13:46 +0000 (-0600) Subject: at91sam3: Wrong PLLA frequency calculations X-Git-Tag: v0.7.0-rc1~37 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=1da9e595ec1a7dbcd6a21cc8b52cf3f5fa166294;p=openocd at91sam3: Wrong PLLA frequency calculations The command 'at91sam3 info' ignores PLLA DIV values >1. This patch fixes it. Tested on a SAM3S4C chip. Change-Id: I051f41bb3dcefe1ac785fbcb48477a807daa16a2 Signed-off-by: Thomas Schmid Reviewed-on: http://openocd.zylin.com/1307 Tested-by: jenkins Reviewed-by: Peter Stuge --- diff --git a/src/flash/nor/at91sam3.c b/src/flash/nor/at91sam3.c index be3afb2f..d6dedae3 100644 --- a/src/flash/nor/at91sam3.c +++ b/src/flash/nor/at91sam3.c @@ -2399,8 +2399,8 @@ static void sam3_explain_ckgr_plla(struct sam3_chip *pChip) LOG_USER("\tPLLA Freq: (Disabled,mula = 0)"); else if (diva == 0) LOG_USER("\tPLLA Freq: (Disabled,diva = 0)"); - else if (diva == 1) { - pChip->cfg.plla_freq = (pChip->cfg.mainosc_freq * (mula + 1)); + else if (diva >= 1) { + pChip->cfg.plla_freq = (pChip->cfg.mainosc_freq * (mula + 1) / diva); LOG_USER("\tPLLA Freq: %3.03f MHz", _tomhz(pChip->cfg.plla_freq)); }