summaryrefslogtreecommitdiff
path: root/firmware/target/arm/pp/system-pp502x.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/pp/system-pp502x.c')
-rw-r--r--firmware/target/arm/pp/system-pp502x.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/firmware/target/arm/pp/system-pp502x.c b/firmware/target/arm/pp/system-pp502x.c
index 99b536e132..102cfd8fea 100644
--- a/firmware/target/arm/pp/system-pp502x.c
+++ b/firmware/target/arm/pp/system-pp502x.c
@@ -308,16 +308,24 @@ void scale_suspend_core(bool suspend)
308} 308}
309 309
310#ifdef HAVE_ADJUSTABLE_CPU_FREQ 310#ifdef HAVE_ADJUSTABLE_CPU_FREQ
311#if NUM_CORES > 1
312void set_cpu_frequency__lock(void)
313{
314 corelock_lock(&cpufreq_cl);
315}
316
317void set_cpu_frequency__unlock(void)
318{
319 corelock_unlock(&cpufreq_cl);
320}
321#endif /* NUM_CORES > 1 */
322
311void set_cpu_frequency(long frequency) ICODE_ATTR; 323void set_cpu_frequency(long frequency) ICODE_ATTR;
312void set_cpu_frequency(long frequency) 324void set_cpu_frequency(long frequency)
313#else 325#else
314static void pp_set_cpu_frequency(long frequency) 326static void pp_set_cpu_frequency(long frequency)
315#endif 327#endif
316{ 328{
317#if defined(HAVE_ADJUSTABLE_CPU_FREQ) && (NUM_CORES > 1)
318 corelock_lock(&cpufreq_cl);
319#endif
320
321 switch (frequency) 329 switch (frequency)
322 { 330 {
323 /* Note1: The PP5022 PLL must be run at >= 96MHz 331 /* Note1: The PP5022 PLL must be run at >= 96MHz
@@ -424,10 +432,6 @@ static void pp_set_cpu_frequency(long frequency)
424 DEV_INIT2 &= ~INIT_PLL; /* disable PLL power */ 432 DEV_INIT2 &= ~INIT_PLL; /* disable PLL power */
425 break; 433 break;
426 } 434 }
427
428#if defined(HAVE_ADJUSTABLE_CPU_FREQ) && (NUM_CORES > 1)
429 corelock_unlock(&cpufreq_cl);
430#endif
431} 435}
432#endif /* !BOOTLOADER || (SANSA_E200 || SANSA_C200 || PHILIPS_SA9200) */ 436#endif /* !BOOTLOADER || (SANSA_E200 || SANSA_C200 || PHILIPS_SA9200) */
433 437
@@ -544,7 +548,6 @@ void system_init(void)
544#ifdef HAVE_ADJUSTABLE_CPU_FREQ 548#ifdef HAVE_ADJUSTABLE_CPU_FREQ
545#if NUM_CORES > 1 549#if NUM_CORES > 1
546 corelock_init(&cpufreq_cl); 550 corelock_init(&cpufreq_cl);
547 cpu_boost_init();
548#endif 551#endif
549#else 552#else
550 pp_set_cpu_frequency(CPUFREQ_MAX); 553 pp_set_cpu_frequency(CPUFREQ_MAX);