From c90c18ea67b4f1f01befe871dd82f8a6b623a4d8 Mon Sep 17 00:00:00 2001 From: Steve Bavin Date: Tue, 2 Oct 2007 07:54:50 +0000 Subject: Thanks to LinusN, fix Coldfire bootloaders not booting - FS#7533 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14949 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/coldfire/iaudio/system-iaudio.c | 9 +++++---- firmware/target/coldfire/iriver/system-iriver.c | 9 +++++---- firmware/target/coldfire/system-coldfire.c | 4 ++++ firmware/target/coldfire/system-target.h | 4 ++++ 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/firmware/target/coldfire/iaudio/system-iaudio.c b/firmware/target/coldfire/iaudio/system-iaudio.c index d934577911..4e32d360fa 100644 --- a/firmware/target/coldfire/iaudio/system-iaudio.c +++ b/firmware/target/coldfire/iaudio/system-iaudio.c @@ -24,8 +24,6 @@ #include "timer.h" #include "pcf50606.h" -#ifdef HAVE_ADJUSTABLE_CPU_FREQ - /* Settings for all possible clock frequencies (with properly working timers) * * xxx_REFRESH_TIMER below @@ -55,8 +53,13 @@ #define RECALC_DELAYS(f) \ pcf50606_i2c_recalc_delay(f) +#ifdef HAVE_ADJUSTABLE_CPU_FREQ void set_cpu_frequency (long) __attribute__ ((section (".icode"))); void set_cpu_frequency(long frequency) +#else +void cf_set_cpu_frequency (long) __attribute__ ((section (".icode"))); +void cf_set_cpu_frequency(long frequency) +#endif { switch(frequency) { @@ -115,5 +118,3 @@ void set_cpu_frequency(long frequency) break; } } - -#endif /* HAVE_ADJUSTABLE_CPU_FREQ */ diff --git a/firmware/target/coldfire/iriver/system-iriver.c b/firmware/target/coldfire/iriver/system-iriver.c index 184f76cdad..e5abe27bc0 100644 --- a/firmware/target/coldfire/iriver/system-iriver.c +++ b/firmware/target/coldfire/iriver/system-iriver.c @@ -24,8 +24,6 @@ #include "timer.h" #include "pcf50606.h" -#ifdef HAVE_ADJUSTABLE_CPU_FREQ - /* Settings for all possible clock frequencies (with properly working timers) * NOTE: Some 5249 chips don't like having PLLDIV set to 0. We must avoid that! * @@ -73,8 +71,13 @@ #define BAUDRATE_DIV_MAX (CPUFREQ_MAX/(BAUD_RATE*32*2)) #endif +#ifdef HAVE_ADJUSTABLE_CPU_FREQ void set_cpu_frequency (long) __attribute__ ((section (".icode"))); void set_cpu_frequency(long frequency) +#else +void cf_set_cpu_frequency (long) __attribute__ ((section (".icode"))); +void cf_set_cpu_frequency(long frequency) +#endif { switch(frequency) { @@ -157,5 +160,3 @@ void set_cpu_frequency(long frequency) break; } } - -#endif /* HAVE_ADJUSTABLE_CPU_FREQ */ diff --git a/firmware/target/coldfire/system-coldfire.c b/firmware/target/coldfire/system-coldfire.c index f33a44c3b4..8b20360b46 100644 --- a/firmware/target/coldfire/system-coldfire.c +++ b/firmware/target/coldfire/system-coldfire.c @@ -252,6 +252,10 @@ void system_init(void) SPURVEC = 24; MPARK = 0x81; /* PARK[1,0]=10 + BCR24BIT */ + +#ifndef HAVE_ADJUSTABLE_CPU_FREQ + cf_set_cpu_frequency(CPUFREQ_DEFAULT); +#endif } void system_reboot (void) diff --git a/firmware/target/coldfire/system-target.h b/firmware/target/coldfire/system-target.h index 6f1b2eb4ae..8e3a2a3d5a 100644 --- a/firmware/target/coldfire/system-target.h +++ b/firmware/target/coldfire/system-target.h @@ -165,6 +165,10 @@ void coldfire_set_pllcr_audio_bits(long bits); /* Set DATAINCONTROL without disturbing FIFO reset state */ void coldfire_set_dataincontrol(unsigned long value); +#ifndef HAVE_ADJUSTABLE_CPU_FREQ +extern void cf_set_cpu_frequency(long frequency); +#endif + /* 11.2896 MHz */ #define CPUFREQ_DEFAULT_MULT 1 #define CPUFREQ_DEFAULT (CPUFREQ_DEFAULT_MULT * CPU_FREQ) -- cgit v1.2.3