diff options
Diffstat (limited to 'arch/m68k/coldfire')
-rw-r--r-- | arch/m68k/coldfire/clk.c | 4 | ||||
-rw-r--r-- | arch/m68k/coldfire/head.S | 8 | ||||
-rw-r--r-- | arch/m68k/coldfire/m528x.c | 8 | ||||
-rw-r--r-- | arch/m68k/coldfire/m53xx.c | 8 | ||||
-rw-r--r-- | arch/m68k/coldfire/m54xx.c | 40 |
5 files changed, 15 insertions, 53 deletions
diff --git a/arch/m68k/coldfire/clk.c b/arch/m68k/coldfire/clk.c index fddfdcc..1e3c7e9 100644 --- a/arch/m68k/coldfire/clk.c +++ b/arch/m68k/coldfire/clk.c @@ -101,6 +101,10 @@ EXPORT_SYMBOL(clk_enable); void clk_disable(struct clk *clk) { unsigned long flags; + + if (!clk) + return; + spin_lock_irqsave(&clk_lock, flags); if ((--clk->enabled == 0) && clk->clk_ops) clk->clk_ops->disable(clk); diff --git a/arch/m68k/coldfire/head.S b/arch/m68k/coldfire/head.S index 73d92ea..bdb472c 100644 --- a/arch/m68k/coldfire/head.S +++ b/arch/m68k/coldfire/head.S @@ -280,10 +280,10 @@ _clear_bss: movel %d0,m68k_cputype /* Mark us as a ColdFire */ movel #MMU_COLDFIRE,%d0 movel %d0,m68k_mmutype - movel #FPU_COLDFIRE,%d0 - movel %d0,m68k_fputype - movel #MACH_M54XX,%d0 - movel %d0,m68k_machtype /* Mark us as a 54xx machine */ + movel #FPUTYPE,%d0 + movel %d0,m68k_fputype /* Mark FPU type */ + movel #MACHINE,%d0 + movel %d0,m68k_machtype /* Mark machine type */ lea init_task,%a2 /* Set "current" init task */ #endif diff --git a/arch/m68k/coldfire/m528x.c b/arch/m68k/coldfire/m528x.c index 45e947a..12f9e37 100644 --- a/arch/m68k/coldfire/m528x.c +++ b/arch/m68k/coldfire/m528x.c @@ -102,14 +102,14 @@ void wildfiremod_halt(void) printk(KERN_INFO "WildFireMod hibernating...\n"); /* Set portE.5 to Digital IO */ - MCF5282_GPIO_PEPAR &= ~(1 << (5 * 2)); + writew(readw(MCFGPIO_PEPAR) & ~(1 << (5 * 2)), MCFGPIO_PEPAR); /* Make portE.5 an output */ - MCF5282_GPIO_DDRE |= (1 << 5); + writeb(readb(MCFGPIO_PDDR_E) | (1 << 5), MCFGPIO_PDDR_E); /* Now toggle portE.5 from low to high */ - MCF5282_GPIO_PORTE &= ~(1 << 5); - MCF5282_GPIO_PORTE |= (1 << 5); + writeb(readb(MCFGPIO_PODR_E) & ~(1 << 5), MCFGPIO_PODR_E); + writeb(readb(MCFGPIO_PODR_E) | (1 << 5), MCFGPIO_PODR_E); printk(KERN_EMERG "Failed to hibernate. Halting!\n"); } diff --git a/arch/m68k/coldfire/m53xx.c b/arch/m68k/coldfire/m53xx.c index 80879a7..2502f63 100644 --- a/arch/m68k/coldfire/m53xx.c +++ b/arch/m68k/coldfire/m53xx.c @@ -271,9 +271,6 @@ void __init config_BSP(char *commandp, int size) #define NAND_FLASH_ADDRESS (0xD0000000) -int sys_clk_khz = 0; -int sys_clk_mhz = 0; - void wtm_init(void); void scm_init(void); void gpio_init(void); @@ -286,9 +283,8 @@ int get_sys_clock (void); asmlinkage void __init sysinit(void) { - sys_clk_khz = clock_pll(0, 0); - sys_clk_mhz = sys_clk_khz/1000; - + clock_pll(0, 0); + wtm_init(); scm_init(); gpio_init(); diff --git a/arch/m68k/coldfire/m54xx.c b/arch/m68k/coldfire/m54xx.c index c32f767..386df3b 100644 --- a/arch/m68k/coldfire/m54xx.c +++ b/arch/m68k/coldfire/m54xx.c @@ -25,7 +25,6 @@ #include <asm/m54xxgpt.h> #ifdef CONFIG_MMU #include <asm/mmu_context.h> -#include <linux/pfn.h> #endif /***************************************************************************/ @@ -78,47 +77,10 @@ static void mcf54xx_reset(void) /***************************************************************************/ -#ifdef CONFIG_MMU - -unsigned long num_pages; - -static void __init mcf54xx_bootmem_alloc(void) -{ - unsigned long start_pfn; - unsigned long memstart; - - /* _rambase and _ramend will be naturally page aligned */ - m68k_memory[0].addr = _rambase; - m68k_memory[0].size = _ramend - _rambase; - - /* compute total pages in system */ - num_pages = PFN_DOWN(_ramend - _rambase); - - /* page numbers */ - memstart = PAGE_ALIGN(_ramstart); - min_low_pfn = PFN_DOWN(_rambase); - start_pfn = PFN_DOWN(memstart); - max_pfn = max_low_pfn = PFN_DOWN(_ramend); - high_memory = (void *)_ramend; - - m68k_virt_to_node_shift = fls(_ramend - _rambase - 1) - 6; - module_fixup(NULL, __start_fixup, __stop_fixup); - - /* setup bootmem data */ - m68k_setup_node(0); - memstart += init_bootmem_node(NODE_DATA(0), start_pfn, - min_low_pfn, max_low_pfn); - free_bootmem_node(NODE_DATA(0), memstart, _ramend - memstart); -} - -#endif /* CONFIG_MMU */ - -/***************************************************************************/ - void __init config_BSP(char *commandp, int size) { #ifdef CONFIG_MMU - mcf54xx_bootmem_alloc(); + cf_bootmem_alloc(); mmu_context_init(); #endif mach_reset = mcf54xx_reset; |