diff options
Diffstat (limited to 'firmware/target/arm/as3525/system-as3525.c')
-rw-r--r-- | firmware/target/arm/as3525/system-as3525.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/firmware/target/arm/as3525/system-as3525.c b/firmware/target/arm/as3525/system-as3525.c index 13b406a6b8..2e6b6d4085 100644 --- a/firmware/target/arm/as3525/system-as3525.c +++ b/firmware/target/arm/as3525/system-as3525.c | |||
@@ -369,12 +369,14 @@ void set_cpu_frequency(long frequency) | |||
369 | { | 369 | { |
370 | if(frequency == CPUFREQ_MAX) | 370 | if(frequency == CPUFREQ_MAX) |
371 | { | 371 | { |
372 | #ifdef HAVE_ADJUSTABLE_CPU_VOLTAGE | ||
372 | /* Increasing frequency so boost voltage before change */ | 373 | /* Increasing frequency so boost voltage before change */ |
373 | ascodec_write(AS3514_CVDD_DCDC3, (AS314_CP_DCDC3_SETTING | CVDD_1_20)); | 374 | ascodec_write(AS3514_CVDD_DCDC3, (AS314_CP_DCDC3_SETTING | CVDD_1_20)); |
374 | 375 | ||
375 | /* Some players run a bit low so use 1.175 volts instead of 1.20 */ | 376 | /* Some players run a bit low so use 1.175 volts instead of 1.20 */ |
376 | /* Wait for voltage to be at least 1.175v before making fclk > 200 MHz */ | 377 | /* Wait for voltage to be at least 1.175v before making fclk > 200 MHz */ |
377 | while(adc_read(ADC_CVDD) < 470); /* 470 * .0025 = 1.175V */ | 378 | while(adc_read(ADC_CVDD) < 470); /* 470 * .0025 = 1.175V */ |
379 | #endif /* HAVE_ADJUSTABLE_CPU_VOLTAGE */ | ||
378 | 380 | ||
379 | asm volatile( | 381 | asm volatile( |
380 | "mrc p15, 0, r0, c1, c0 \n" | 382 | "mrc p15, 0, r0, c1, c0 \n" |
@@ -399,8 +401,10 @@ void set_cpu_frequency(long frequency) | |||
399 | "mcr p15, 0, r0, c1, c0 \n" | 401 | "mcr p15, 0, r0, c1, c0 \n" |
400 | : : : "r0" ); | 402 | : : : "r0" ); |
401 | 403 | ||
404 | #ifdef HAVE_ADJUSTABLE_CPU_VOLTAGE | ||
402 | /* Decreasing frequency so reduce voltage after change */ | 405 | /* Decreasing frequency so reduce voltage after change */ |
403 | ascodec_write(AS3514_CVDD_DCDC3, (AS314_CP_DCDC3_SETTING | CVDD_1_10)); | 406 | ascodec_write(AS3514_CVDD_DCDC3, (AS314_CP_DCDC3_SETTING | CVDD_1_10)); |
407 | #endif /* HAVE_ADJUSTABLE_CPU_VOLTAGE */ | ||
404 | 408 | ||
405 | cpu_frequency = CPUFREQ_NORMAL; | 409 | cpu_frequency = CPUFREQ_NORMAL; |
406 | } | 410 | } |