X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fppc%2Fplatforms%2F4xx%2Febony.c;h=118d8520e38b460a75aa29a0c6de6cabf14b8122;hb=6f71f83334a552167ccbbd42fe5dd979428c89e4;hp=cadf0947a6ae21d53e5a472f14aaec89e86fc004;hpb=8d40237c730b8be87c1b80a5d96b9c603fefa829;p=linux-2.6.git diff --git a/arch/ppc/platforms/4xx/ebony.c b/arch/ppc/platforms/4xx/ebony.c index cadf0947a..118d8520e 100644 --- a/arch/ppc/platforms/4xx/ebony.c +++ b/arch/ppc/platforms/4xx/ebony.c @@ -1,10 +1,10 @@ /* - * arch/ppc/platforms/4xx/ebony.c + * arch/ppc/platforms/ebony.c * * Ebony board specific routines * - * Matt Porter - * Copyright 2002-2004 MontaVista Software Inc. + * Matt Porter + * Copyright 2002 MontaVista Software Inc. * * Eugene Surovegin or * Copyright (c) 2003, 2004 Zultys Technologies @@ -50,10 +50,6 @@ #include #include -#include - -static struct ibm44x_clocks clocks __initdata; - /* * Ebony IRQ triggering/polarity settings */ @@ -124,6 +120,8 @@ static u_char ebony_IRQ_initsenses[] __initdata = { (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* 63: EMAC 1 WOL */ }; +static struct ibm44x_clocks clocks __initdata; + static void __init ebony_calibrate_decr(void) { @@ -286,24 +284,13 @@ ebony_early_serial_map(void) printk("Early serial init of port 0 failed\n"); } -#if defined(CONFIG_SERIAL_TEXT_DEBUG) || defined(CONFIG_KGDB) - /* Configure debug serial access */ - gen550_init(0, &port); -#endif - port.membase = ioremap64(PPC440GP_UART1_ADDR, 8); port.irq = 1; - port.uartclk = clocks.uart1; port.line = 1; if (early_serial_setup(&port) != 0) { printk("Early serial init of port 1 failed\n"); } - -#if defined(CONFIG_SERIAL_TEXT_DEBUG) || defined(CONFIG_KGDB) - /* Configure debug serial access */ - gen550_init(1, &port); -#endif } static void __init @@ -313,6 +300,14 @@ ebony_setup_arch(void) struct ocp_def *def; struct ocp_func_emac_data *emacdata; +#if !defined(CONFIG_BDI_SWITCH) + /* + * The Abatron BDI JTAG debugger does not tolerate others + * mucking with the debug registers. + */ + mtspr(SPRN_DBCR0, (DBCR0_TDE | DBCR0_IDM)); +#endif + /* Set mac_addr for each EMAC */ vpd_base = ioremap64(EBONY_VPD_BASE, EBONY_VPD_SIZE); def = ocp_get_one_device(OCP_VENDOR_IBM, OCP_FUNC_EMAC, 0); @@ -383,6 +378,7 @@ void __init platform_init(unsigned long r3, unsigned long r4, ppc_md.nvram_read_val = todc_direct_read_val; ppc_md.nvram_write_val = todc_direct_write_val; + #ifdef CONFIG_KGDB ppc_md.early_serial_map = ebony_early_serial_map; #endif