1 /***************************************************************************/
4 * linux/arch/m68knommu/platform/528x/config.c
6 * Sub-architcture dependant initialization code for the Motorola
9 * Copyright (C) 1999-2003, Greg Ungerer (gerg@snapgear.com)
10 * Copyright (C) 2001-2003, SnapGear Inc. (www.snapgear.com)
13 /***************************************************************************/
15 #include <linux/config.h>
16 #include <linux/kernel.h>
17 #include <linux/sched.h>
18 #include <linux/param.h>
19 #include <linux/init.h>
20 #include <linux/interrupt.h>
22 #include <asm/traps.h>
23 #include <asm/machdep.h>
24 #include <asm/coldfire.h>
25 #include <asm/mcfsim.h>
26 #include <asm/mcfdma.h>
28 /***************************************************************************/
30 void coldfire_pit_tick(void);
31 void coldfire_pit_init(irqreturn_t (*handler
)(int, void *, struct pt_regs
*));
32 unsigned long coldfire_pit_offset(void);
33 void coldfire_trap_init(void);
34 void coldfire_reset(void);
36 /***************************************************************************/
39 * DMA channel base address table.
41 unsigned int dma_base_addr
[MAX_M68K_DMA_CHANNELS
] = {
42 MCF_MBAR
+ MCFDMA_BASE0
,
45 unsigned int dma_device_address
[MAX_M68K_DMA_CHANNELS
];
47 /***************************************************************************/
49 void mcf_disableall(void)
51 *((volatile unsigned long *) (MCF_IPSBAR
+ MCFICM_INTC0
+ MCFINTC_IMRH
)) = 0xffffffff;
52 *((volatile unsigned long *) (MCF_IPSBAR
+ MCFICM_INTC0
+ MCFINTC_IMRL
)) = 0xffffffff;
55 /***************************************************************************/
57 void mcf_autovector(unsigned int vec
)
59 /* Everything is auto-vectored on the 5272 */
62 /***************************************************************************/
64 void config_BSP(char *commandp
, int size
)
68 #ifdef CONFIG_BOOTPARAM
69 strncpy(commandp
, CONFIG_BOOTPARAM_STRING
, size
);
72 memset(commandp
, 0, size
);
75 mach_sched_init
= coldfire_pit_init
;
76 mach_tick
= coldfire_pit_tick
;
77 mach_gettimeoffset
= coldfire_pit_offset
;
78 mach_trap_init
= coldfire_trap_init
;
79 mach_reset
= coldfire_reset
;
82 /***************************************************************************/