summaryrefslogtreecommitdiff
path: root/nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2014-12-22 12:01:33 -0600
committerGregory Nutt <gnutt@nuttx.org>2014-12-22 12:01:33 -0600
commitc9e200bfd2a5a761ba814741ba61cd28b1f6c7bb (patch)
treec698ecb9b6cdd914e74c06aacc360a9a8f74fa7e /nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c
parent06dafadff3ec7480201c82672f8ba4cce6fc93b5 (diff)
downloadnuttx-c9e200bfd2a5a761ba814741ba61cd28b1f6c7bb.tar.gz
nuttx-c9e200bfd2a5a761ba814741ba61cd28b1f6c7bb.tar.bz2
nuttx-c9e200bfd2a5a761ba814741ba61cd28b1f6c7bb.zip
TM4C129X: Simplify be removing unnecessary temporary variable
Diffstat (limited to 'nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c')
-rw-r--r--nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c38
1 files changed, 19 insertions, 19 deletions
diff --git a/nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c b/nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c
index 36b4e8020..7d15b46bd 100644
--- a/nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c
+++ b/nuttx/arch/arm/src/tiva/tm4c129_syscontrol.c
@@ -337,7 +337,7 @@ uint32_t tiva_clockconfig(uint32_t pllfreq0, uint32_t pllfreq1, uint32_t sysdiv)
}
else
{
- /* No... No already powered. Power up the PLL now. */
+ /* No... Not already powered. Power up the PLL now. */
regval = getreg32(TIVA_SYSCON_PLLFREQ0);
regval |= SYSCON_PLLFREQ0_PLLPWR;
@@ -348,32 +348,32 @@ uint32_t tiva_clockconfig(uint32_t pllfreq0, uint32_t pllfreq1, uint32_t sysdiv)
for (timeout = 32768; timeout > 0; timeout--)
{
+ /* Check if the PLL has locked */
+
if ((getreg32(TIVA_SYSCON_PLLSTAT) & SYSCON_PLLSTAT_LOCK) != 0)
{
- /* Break out of the loop before the timeout expires if the PLL
- * reports that it is locked.
+ /* The PLL has reported that it is locked. Switch over to the
+ * PLL.
*/
- break;
- }
- }
+ regval = getreg32(TIVA_SYSCON_RSCLKCFG);
+ regval |= SYSCON_RSCLKCFG_PSYSDIV(sysdiv - 1) |
+ SYSCON_RSCLKCFG_OSCSRC_MOSC |
+ SYSCON_RSCLKCFG_PLLSRC_MOSC |
+ SYSCON_RSCLKCFG_USEPLL |
+ SYSCON_RSCLKCFG_MEMTIMU;
+ putreg32(regval, TIVA_SYSCON_RSCLKCFG);
- /* If the loop above did not timeout then switch over to the PLL */
+ /* And return the new SysClk frequency */
- if (timeout > 0)
- {
- regval = getreg32(TIVA_SYSCON_RSCLKCFG);
- regval |= SYSCON_RSCLKCFG_PSYSDIV(sysdiv - 1) |
- SYSCON_RSCLKCFG_OSCSRC_MOSC | SYSCON_RSCLKCFG_PLLSRC_MOSC |
- SYSCON_RSCLKCFG_USEPLL | SYSCON_RSCLKCFG_MEMTIMU;
- putreg32(regval, TIVA_SYSCON_RSCLKCFG);
- }
- else
- {
- sysclk = 0;
+ return sysclk;
+ }
}
- return sysclk;
+ /* We git here on a timout, failing to get the PLL lock indidation */
+
+ DEBUGPANIC();
+ return 0;
}
/****************************************************************************