summaryrefslogtreecommitdiffstats
path: root/arch/m68knommu/platform/548x/config.c
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@uclinux.org>2010-11-02 12:05:29 +1000
committerGreg Ungerer <gerg@uclinux.org>2011-01-05 15:19:17 +1000
commit5b2e6555ac3eb58a4e5eb5020471df08f0c42c01 (patch)
tree38514c0431fce8567a5ae74ea76e99ef910891d9 /arch/m68knommu/platform/548x/config.c
parent9c68015b149d45a35114b4a1ed44c21fa66bc430 (diff)
downloadop-kernel-dev-5b2e6555ac3eb58a4e5eb5020471df08f0c42c01.zip
op-kernel-dev-5b2e6555ac3eb58a4e5eb5020471df08f0c42c01.tar.gz
m68knommu: make Coldfire 548x support more generic
The ColdFire 547x family of processors is very similar to the ColdFire 548x series. Almost all of the support for them is the same. Make the code supporting the 548x more gneric, so it will be capable of supporting both families. For the most part this is a renaming excerise to make the support code more obviously apply to both families. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Diffstat (limited to 'arch/m68knommu/platform/548x/config.c')
-rw-r--r--arch/m68knommu/platform/548x/config.c115
1 files changed, 0 insertions, 115 deletions
diff --git a/arch/m68knommu/platform/548x/config.c b/arch/m68knommu/platform/548x/config.c
deleted file mode 100644
index 9888846..0000000
--- a/arch/m68knommu/platform/548x/config.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/***************************************************************************/
-
-/*
- * linux/arch/m68knommu/platform/548x/config.c
- *
- * Copyright (C) 2010, Philippe De Muyter <phdm@macqel.be>
- */
-
-/***************************************************************************/
-
-#include <linux/kernel.h>
-#include <linux/param.h>
-#include <linux/init.h>
-#include <linux/interrupt.h>
-#include <linux/io.h>
-#include <asm/machdep.h>
-#include <asm/coldfire.h>
-#include <asm/m548xsim.h>
-#include <asm/mcfuart.h>
-#include <asm/m548xgpt.h>
-
-/***************************************************************************/
-
-static struct mcf_platform_uart m548x_uart_platform[] = {
- {
- .mapbase = MCF_MBAR + MCFUART_BASE1,
- .irq = 64 + 35,
- },
- {
- .mapbase = MCF_MBAR + MCFUART_BASE2,
- .irq = 64 + 34,
- },
- {
- .mapbase = MCF_MBAR + MCFUART_BASE3,
- .irq = 64 + 33,
- },
- {
- .mapbase = MCF_MBAR + MCFUART_BASE4,
- .irq = 64 + 32,
- },
-};
-
-static struct platform_device m548x_uart = {
- .name = "mcfuart",
- .id = 0,
- .dev.platform_data = m548x_uart_platform,
-};
-
-static struct platform_device *m548x_devices[] __initdata = {
- &m548x_uart,
-};
-
-
-/***************************************************************************/
-
-static void __init m548x_uart_init_line(int line, int irq)
-{
- int rts_cts;
-
- /* enable io pins */
- switch (line) {
- case 0:
- rts_cts = 0; break;
- case 1:
- rts_cts = MCF_PAR_PSC_RTS_RTS; break;
- case 2:
- rts_cts = MCF_PAR_PSC_RTS_RTS | MCF_PAR_PSC_CTS_CTS; break;
- case 3:
- rts_cts = 0; break;
- }
- __raw_writeb(MCF_PAR_PSC_TXD | rts_cts | MCF_PAR_PSC_RXD,
- MCF_MBAR + MCF_PAR_PSC(line));
-}
-
-static void __init m548x_uarts_init(void)
-{
- const int nrlines = ARRAY_SIZE(m548x_uart_platform);
- int line;
-
- for (line = 0; (line < nrlines); line++)
- m548x_uart_init_line(line, m548x_uart_platform[line].irq);
-}
-
-/***************************************************************************/
-
-static void mcf548x_reset(void)
-{
- /* disable interrupts and enable the watchdog */
- asm("movew #0x2700, %sr\n");
- __raw_writel(0, MCF_MBAR + MCF_GPT_GMS0);
- __raw_writel(MCF_GPT_GCIR_CNT(1), MCF_MBAR + MCF_GPT_GCIR0);
- __raw_writel(MCF_GPT_GMS_WDEN | MCF_GPT_GMS_CE | MCF_GPT_GMS_TMS(4),
- MCF_MBAR + MCF_GPT_GMS0);
-}
-
-/***************************************************************************/
-
-void __init config_BSP(char *commandp, int size)
-{
- mach_reset = mcf548x_reset;
- m548x_uarts_init();
-}
-
-/***************************************************************************/
-
-static int __init init_BSP(void)
-{
-
- platform_add_devices(m548x_devices, ARRAY_SIZE(m548x_devices));
- return 0;
-}
-
-arch_initcall(init_BSP);
-
-/***************************************************************************/
OpenPOWER on IntegriCloud