summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/ar7/files/arch/mips/ar7/setup.c7
-rw-r--r--target/linux/ar7/files/arch/mips/ar7/time.c13
-rw-r--r--target/linux/ar7/files/include/asm-mips/ar7/prom.h1
3 files changed, 16 insertions, 5 deletions
diff --git a/target/linux/ar7/files/arch/mips/ar7/setup.c b/target/linux/ar7/files/arch/mips/ar7/setup.c
index 388557ff0..078598536 100644
--- a/target/linux/ar7/files/arch/mips/ar7/setup.c
+++ b/target/linux/ar7/files/arch/mips/ar7/setup.c
@@ -17,16 +17,19 @@
* with this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
*/
+#include <linux/version.h>
#include <linux/init.h>
#include <linux/ioport.h>
#include <linux/pm.h>
-#include <asm/mips-boards/prom.h>
#include <asm/reboot.h>
#include <asm/time.h>
#include <asm/ar7/ar7.h>
+#include <asm/ar7/prom.h>
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 24) /* TODO remove when 2.6.24 is stable */
extern void ar7_time_init(void);
+#endif
static void ar7_machine_restart(char *command);
static void ar7_machine_halt(void);
static void ar7_machine_power_off(void);
@@ -85,7 +88,9 @@ void __init plat_mem_setup(void)
_machine_restart = ar7_machine_restart;
_machine_halt = ar7_machine_halt;
pm_power_off = ar7_machine_power_off;
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 24) /* TODO remove when 2.6.24 is stable */
board_time_init = ar7_time_init;
+#endif
panic_timeout = 3;
io_base = (unsigned long)ioremap(AR7_REGS_BASE, 0x10000);
diff --git a/target/linux/ar7/files/arch/mips/ar7/time.c b/target/linux/ar7/files/arch/mips/ar7/time.c
index 6a32bf63e..e6a98ed89 100644
--- a/target/linux/ar7/files/arch/mips/ar7/time.c
+++ b/target/linux/ar7/files/arch/mips/ar7/time.c
@@ -20,15 +20,20 @@
* Setting up the clock on the MIPS boards.
*/
+#include <linux/version.h>
#include <asm/time.h>
#include <asm/ar7/ar7.h>
-void __init ar7_time_init(void)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 24) /* TODO remove when 2.6.24 is stable */
+void __init plat_timer_setup(struct irqaction *irq)
{
- mips_hpt_frequency = ar7_cpu_freq() / 2;
+ setup_irq(7, irq);
}
-void __init plat_timer_setup(struct irqaction *irq)
+void __init ar7_time_init(void)
+#else
+void __init plat_time_init(void)
+#endif
{
- setup_irq(7, irq);
+ mips_hpt_frequency = ar7_cpu_freq() / 2;
}
diff --git a/target/linux/ar7/files/include/asm-mips/ar7/prom.h b/target/linux/ar7/files/include/asm-mips/ar7/prom.h
index 0aa2af4b2..d54cfc03e 100644
--- a/target/linux/ar7/files/include/asm-mips/ar7/prom.h
+++ b/target/linux/ar7/files/include/asm-mips/ar7/prom.h
@@ -21,5 +21,6 @@
extern char *prom_getenv(char *name);
extern void prom_printf(char *fmt, ...);
+extern void prom_meminit(void);
#endif /* __PROM_H__ */