diff options
Diffstat (limited to 'firmware/target/arm/as3525')
-rw-r--r-- | firmware/target/arm/as3525/ata_sd_as3525.c | 11 | ||||
-rw-r--r-- | firmware/target/arm/as3525/system-as3525.c | 4 |
2 files changed, 10 insertions, 5 deletions
diff --git a/firmware/target/arm/as3525/ata_sd_as3525.c b/firmware/target/arm/as3525/ata_sd_as3525.c index 99bf668ec4..0afe735e53 100644 --- a/firmware/target/arm/as3525/ata_sd_as3525.c +++ b/firmware/target/arm/as3525/ata_sd_as3525.c | |||
@@ -854,7 +854,7 @@ void sd_enable(bool on) | |||
854 | extern int buttonlight_is_on; | 854 | extern int buttonlight_is_on; |
855 | #endif | 855 | #endif |
856 | 856 | ||
857 | #ifdef HAVE_HOTSWAP | 857 | #if defined(HAVE_HOTSWAP) && defined (HAVE_ADJUSTABLE_CPU_VOLTAGE) |
858 | static bool cpu_boosted = false; | 858 | static bool cpu_boosted = false; |
859 | #endif | 859 | #endif |
860 | 860 | ||
@@ -880,23 +880,24 @@ void sd_enable(bool on) | |||
880 | #endif /* HAVE_MULTIDRIVE */ | 880 | #endif /* HAVE_MULTIDRIVE */ |
881 | sd_enabled = true; | 881 | sd_enabled = true; |
882 | 882 | ||
883 | #ifdef HAVE_HOTSWAP | 883 | #if defined(HAVE_HOTSWAP) && defined (HAVE_ADJUSTABLE_CPU_VOLTAGE) |
884 | if(card_detect_target()) /* If SD card present Boost cpu for voltage */ | 884 | if(card_detect_target()) /* If SD card present Boost cpu for voltage */ |
885 | { | 885 | { |
886 | cpu_boosted = true; | 886 | cpu_boosted = true; |
887 | cpu_boost(true); | 887 | cpu_boost(true); |
888 | } | 888 | } |
889 | #endif | 889 | #endif /* defined(HAVE_HOTSWAP) && defined (HAVE_ADJUSTABLE_CPU_VOLTAGE) */ |
890 | } | 890 | } |
891 | else | 891 | else |
892 | { | 892 | { |
893 | #ifdef HAVE_HOTSWAP | 893 | #if defined(HAVE_HOTSWAP) && defined (HAVE_ADJUSTABLE_CPU_VOLTAGE) |
894 | if(cpu_boosted) | 894 | if(cpu_boosted) |
895 | { | 895 | { |
896 | cpu_boost(false); | 896 | cpu_boost(false); |
897 | cpu_boosted = false; | 897 | cpu_boosted = false; |
898 | } | 898 | } |
899 | #endif | 899 | #endif /* defined(HAVE_HOTSWAP) && defined (HAVE_ADJUSTABLE_CPU_VOLTAGE) */ |
900 | |||
900 | sd_enabled = false; | 901 | sd_enabled = false; |
901 | 902 | ||
902 | #ifdef HAVE_MULTIDRIVE | 903 | #ifdef HAVE_MULTIDRIVE |
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 | } |