Kevin, The panda isn't 100% compatible with the blaze/sdp. There are/will be some significant differences. I understand the goal to make the "multi-boot" images and to reduce the amount of duplicated code in the kernel, however we can learn a little about this situation from the BeagleBoard. Due to it being a development board, many people who are new to embedded development will be purchasing the Panda and they generally need a clearly defined place to start. Blaze and SDP are officially support TI products and their machine files can be easily groomed and maintained. Having a clearly defined individual machine file and defconfig will make things a lot easier for starting development on the Panda. IMHO, I think it is a giant mistake not to have individual machine files and defconfigs for the panda. This doesn't preclude making sure that they files work properly with multi-boot images. Dave -----Original Message----- From: Kevin Hilman [mailto:khilman@xxxxxxxxxxxxxxxxxxx] Sent: Friday, June 18, 2010 9:32 AM To: Anders, David Cc: linux-omap@xxxxxxxxxxxxxxx; tony@xxxxxxxxxxx Subject: Re: [PATCH] Add OMAP4 Panda support "Anders, David" <x0132446@xxxxxx> writes: > Add initial support for the OMAP4430 based Panda board. > > Signed-off-by: David Anders <x0132446@xxxxxx> > --- > arch/arm/configs/omap4_panda_defconfig | 1094 ++++++++++++++++++++++++++++++++ > arch/arm/mach-omap2/Kconfig | 4 + > arch/arm/mach-omap2/Makefile | 1 + > arch/arm/mach-omap2/board-omap4panda.c | 80 +++ > 4 files changed, 1179 insertions(+), 0 deletions(-) > create mode 100644 arch/arm/configs/omap4_panda_defconfig > create mode 100644 arch/arm/mach-omap2/board-omap4panda.c [...] > diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c > new file mode 100644 > index 0000000..95faec0 > --- /dev/null > +++ b/arch/arm/mach-omap2/board-omap4panda.c > @@ -0,0 +1,80 @@ > +/* > + * Board support file for OMAP4430 based Panda. > + * > + * Copyright (C) 2010 Texas Instruments > + * > + * Author: David Anders <x0132446@xxxxxx> > + * > + * Based on mach-omap2/board-4430sdp.c > + * > + * Author: Santosh Shilimkar <santosh.shilimkar@xxxxxx> > + * > + * Based on mach-omap2/board-3430sdp.c > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License version 2 as > + * published by the Free Software Foundation. > + */ > + > +#include <linux/kernel.h> > +#include <linux/init.h> > +#include <linux/platform_device.h> > +#include <linux/io.h> > +#include <linux/gpio.h> > +#include <linux/usb/otg.h> > + > +#include <mach/hardware.h> > +#include <mach/omap4-common.h> > +#include <asm/mach-types.h> > +#include <asm/mach/arch.h> > +#include <asm/mach/map.h> > + > +#include <plat/board.h> > +#include <plat/common.h> > +#include <plat/control.h> > +#include <plat/timer-gp.h> > +#include <plat/usb.h> > + > +static void __init omap4_panda_init_irq(void) > +{ > + omap2_init_common_hw(NULL, NULL); > +#ifdef CONFIG_OMAP_32K_TIMER > + omap2_gp_clockevent_set_gptimer(1); > +#endif > + gic_init_irq(); > + omap_gpio_init(); > +} > + > +static struct omap_musb_board_data musb_board_data = { > + .interface_type = MUSB_INTERFACE_UTMI, > + .mode = MUSB_PERIPHERAL, > + .power = 100, > +}; > + > +static void __init omap4_panda_init(void) > +{ > + omap_serial_init(); > + /* OMAP4 SDP uses internal transceiver so register nop transceiver */ SDP? > + usb_nop_xceiv_register(); > + /* FIXME: allow multi-omap to boot until musb is updated for omap4 */ > + if (!cpu_is_omap44xx()) > + usb_musb_init(&musb_board_data); > + > +} > + > +static void __init omap4_panda_map_io(void) > +{ > + omap2_set_globals_443x(); > + omap44xx_map_common_io(); > +} > + > +MACHINE_START(OMAP4_PANDA, "OMAP4 Panda board") > + /* Maintainer: David Anders - Texas Instruments Inc */ > + .phys_io = 0x48000000, > + .io_pg_offst = ((0xfa000000) >> 18) & 0xfffc, > + .boot_params = 0x80000100, > + .map_io = omap4_panda_map_io, > + .init_irq = omap4_panda_init_irq, > + .init_machine = omap4_panda_init, > + .timer = &omap_timer, > +MACHINE_END IIUC, Panda was built to be compatible with the SDP/Blaze, right? If so, is there any reason we can't support both boards from the same board file? Just add the above MACHINE_START.._END section to board-4430sdp.c to handle the both machine IDs, but all the functions could be common. Kevin -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html