[U-Boot] [PATCH] Added support for TMQ CAPD Board from Genesys Design <www.genesysdesign.com.au>

--- Makefile | 3 + board/tmq/tmq_capd/Makefile | 61 +++ board/tmq/tmq_capd/config.mk | 1 + board/tmq/tmq_capd/led.c | 56 +++ board/tmq/tmq_capd/nand.c | 83 +++++ board/tmq/tmq_capd/tmq_capd.c | 259 +++++++++++++ include/asm-arm/mach-types.h | 808 ++++++++++++++++++++++++++++++++++++++++- include/configs/tmq_capd.h | 165 +++++++++ tools/Makefile | 3 + tools/logos/tmqlogo.bmp | Bin 0 -> 20254 bytes 10 files changed, 1438 insertions(+), 1 deletions(-) create mode 100644 board/tmq/tmq_capd/Makefile create mode 100644 board/tmq/tmq_capd/config.mk create mode 100644 board/tmq/tmq_capd/led.c create mode 100644 board/tmq/tmq_capd/nand.c create mode 100644 board/tmq/tmq_capd/tmq_capd.c create mode 100644 include/configs/tmq_capd.h create mode 100644 tools/logos/tmqlogo.bmp
diff --git a/Makefile b/Makefile index e4a184f..dae3903 100644 --- a/Makefile +++ b/Makefile @@ -2587,6 +2587,9 @@ at91sam9263ek_config : unconfig at91sam9rlek_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9rlek atmel at91
+tmq_capd_config : unconfig + @$(MKCONFIG) $(@:_config=) arm arm926ejs tmq_capd tmq at91 + ######################################################################## ## ARM Integrator boards - see doc/README-integrator for more info. integratorap_config \ diff --git a/board/tmq/tmq_capd/Makefile b/board/tmq/tmq_capd/Makefile new file mode 100644 index 0000000..3eee33a --- /dev/null +++ b/board/tmq/tmq_capd/Makefile @@ -0,0 +1,61 @@ +# +# (C) Copyright 2008-2009 +# Jared Holzman j.holzman@genesysdesign.com.au +# Genesys Design <www.genesysdesign.com.au> +# Copied from code by Stelian Pop (Original Copyright Below) +# +# (C) Copyright 2003-2008 +# Wolfgang Denk, DENX Software Engineering, wd@denx.de. +# +# (C) Copyright 2008 +# Stelian Pop stelian.pop@leadtechdesign.com +# Lead Tech Design <www.leadtechdesign.com> +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# + +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(BOARD).a + +COBJS-y += tmq_capd.o +COBJS-y += led.o +COBJS-$(CONFIG_CMD_NAND) += nand.o + +SRCS := $(SOBJS:.o=.S) $(COBJS-y:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS-y)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB): $(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak $(obj).depend + +######################################################################### + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +######################################################################### diff --git a/board/tmq/tmq_capd/config.mk b/board/tmq/tmq_capd/config.mk new file mode 100644 index 0000000..9ce161e --- /dev/null +++ b/board/tmq/tmq_capd/config.mk @@ -0,0 +1 @@ +TEXT_BASE = 0x21f00000 diff --git a/board/tmq/tmq_capd/led.c b/board/tmq/tmq_capd/led.c new file mode 100644 index 0000000..38acdd5 --- /dev/null +++ b/board/tmq/tmq_capd/led.c @@ -0,0 +1,56 @@ +/* + * (C) Copyright 2008-2009 + * Jared Holzman j.holzman@genesysdesign.com.au + * Genesys Design <www.genesysdesign.com.au> + * Copied from code by Stelian Pop (Original Copyright Below) + * + * (C) Copyright 2007-2008 + * Stelian Pop stelian.pop@leadtechdesign.com + * Lead Tech Design <www.leadtechdesign.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include <common.h> +#include <asm/arch/at91sam9263.h> +#include <asm/arch/at91_pmc.h> +#include <asm/arch/gpio.h> +#include <asm/arch/io.h> + +#define RED_LED AT91_PIN_PE16 /* this is the power led */ + +void red_LED_on(void) +{ + at91_set_gpio_value(RED_LED, 1); +} + +void red_LED_off(void) +{ + at91_set_gpio_value(RED_LED, 0); +} + +void coloured_LED_init(void) +{ + /* Enable clock */ + at91_sys_write(AT91_PMC_PCER, 1 << AT91SAM9263_ID_PIOCDE); + + at91_set_gpio_output(RED_LED, 1); + + at91_set_gpio_value(RED_LED, 0); +} diff --git a/board/tmq/tmq_capd/nand.c b/board/tmq/tmq_capd/nand.c new file mode 100644 index 0000000..2ac4cc7 --- /dev/null +++ b/board/tmq/tmq_capd/nand.c @@ -0,0 +1,83 @@ +/* + * (C) Copyright 2008-2009 + * Jared Holzman j.holzman@genesysdesign.com.au + * Genesys Design <www.genesysdesign.com.au> + * Copied from code by Stelian Pop (Original Copyright Below) + * + * (C) Copyright 2007-2008 + * Stelian Pop stelian.pop@leadtechdesign.com + * Lead Tech Design <www.leadtechdesign.com> + * + * (C) Copyright 2006 ATMEL Rousset, Lacressonniere Nicolas + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include <common.h> +#include <asm/arch/at91sam9263.h> +#include <asm/arch/gpio.h> +#include <asm/arch/at91_pio.h> + +#include <nand.h> + +/* + * hardware specific access to control-lines + */ +#define MASK_ALE (1 << 21) /* our ALE is AD21 */ +#define MASK_CLE (1 << 22) /* our CLE is AD22 */ + +static void capd_nand_hwcontrol(struct mtd_info *mtd, + int cmd, unsigned int ctrl) +{ + struct nand_chip *this = mtd->priv; + + if (ctrl & NAND_CTRL_CHANGE) { + ulong IO_ADDR_W = (ulong) this->IO_ADDR_W; + IO_ADDR_W &= ~(MASK_ALE | MASK_CLE); + + if (ctrl & NAND_CLE) + IO_ADDR_W |= MASK_CLE; + if (ctrl & NAND_ALE) + IO_ADDR_W |= MASK_ALE; + + at91_set_gpio_value(AT91_PIN_PD15, !(ctrl & NAND_NCE)); + this->IO_ADDR_W = (void *) IO_ADDR_W; + } + + if (cmd != NAND_CMD_NONE) + writeb(cmd, this->IO_ADDR_W); +} + +static int capd_nand_ready(struct mtd_info *mtd) +{ + return at91_get_gpio_value(AT91_PIN_PA22); +} + +int board_nand_init(struct nand_chip *nand) +{ + nand->ecc.mode = NAND_ECC_SOFT; +#ifdef CONFIG_SYS_NAND_DBW_16 + nand->options = NAND_BUSWIDTH_16; +#endif + nand->cmd_ctrl = capd_nand_hwcontrol; + nand->dev_ready = capd_nand_ready; + nand->chip_delay = 20; + + return 0; +} diff --git a/board/tmq/tmq_capd/tmq_capd.c b/board/tmq/tmq_capd/tmq_capd.c new file mode 100644 index 0000000..d59cf86 --- /dev/null +++ b/board/tmq/tmq_capd/tmq_capd.c @@ -0,0 +1,259 @@ +/* + * (C) Copyright 2008-2009 + * Jared Holzman j.holzman@genesysdesign.com.au + * Genesys Design <www.genesysdesign.com.au> + * Copied from code by Stelian Pop (Original Copyright Below) + * + * (C) Copyright 2007-2008 + * Stelian Pop stelian.pop@leadtechdesign.com + * Lead Tech Design <www.leadtechdesign.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include <common.h> +#include <asm/sizes.h> +#include <asm/arch/at91sam9263.h> +#include <asm/arch/at91sam9263_matrix.h> +#include <asm/arch/at91sam9_smc.h> +#include <asm/arch/at91_pmc.h> +#include <asm/arch/at91_rstc.h> +#include <asm/arch/gpio.h> +#include <asm/arch/io.h> +#include <lcd.h> +#include <atmel_lcdc.h> + +DECLARE_GLOBAL_DATA_PTR; + +/* ------------------------------------------------------------------------- */ +/* + * Miscelaneous platform dependent initialisations + */ + +static void capd_serial_hw_init(void) +{ +#ifdef CONFIG_USART0 + at91_set_A_periph(AT91_PIN_PA26, 1); /* TXD0 */ + at91_set_A_periph(AT91_PIN_PA27, 0); /* RXD0 */ + at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_US0); +#endif + +#ifdef CONFIG_USART1 + at91_set_A_periph(AT91_PIN_PD0, 1); /* TXD1 */ + at91_set_A_periph(AT91_PIN_PD1, 0); /* RXD1 */ + at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_US1); +#endif + +#ifdef CONFIG_USART2 + at91_set_A_periph(AT91_PIN_PD2, 1); /* TXD2 */ + at91_set_A_periph(AT91_PIN_PD3, 0); /* RXD2 */ + at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_US2); +#endif + +#ifdef CONFIG_USART3 /* DBGU */ + at91_set_A_periph(AT91_PIN_PC30, 0); /* DRXD */ + at91_set_A_periph(AT91_PIN_PC31, 1); /* DTXD */ + at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_SYS); +#endif +} + +#ifdef CONFIG_CMD_NAND +static void capd_nand_hw_init(void) +{ + unsigned long csa; + + /* Enable CS3 */ + csa = at91_sys_read(AT91_MATRIX_EBI0CSA); + at91_sys_write(AT91_MATRIX_EBI0CSA, + csa | AT91_MATRIX_EBI0_CS3A_SMC_SMARTMEDIA); + + /* Configure SMC CS3 for NAND/SmartMedia */ + at91_sys_write(AT91_SMC_SETUP(3), + AT91_SMC_NWESETUP_(1) | AT91_SMC_NCS_WRSETUP_(0) | + AT91_SMC_NRDSETUP_(1) | AT91_SMC_NCS_RDSETUP_(0)); + at91_sys_write(AT91_SMC_PULSE(3), + AT91_SMC_NWEPULSE_(3) | AT91_SMC_NCS_WRPULSE_(3) | + AT91_SMC_NRDPULSE_(3) | AT91_SMC_NCS_RDPULSE_(3)); + at91_sys_write(AT91_SMC_CYCLE(3), + AT91_SMC_NWECYCLE_(5) | AT91_SMC_NRDCYCLE_(5)); + at91_sys_write(AT91_SMC_MODE(3), + AT91_SMC_READMODE | AT91_SMC_WRITEMODE | + AT91_SMC_EXNWMODE_DISABLE | +#ifdef CONFIG_SYS_NAND_DBW_16 + AT91_SMC_DBW_16 | +#else /* CONFIG_NAND_DBW_8 */ + AT91_SMC_DBW_8 | +#endif + AT91_SMC_TDF_(2)); + + at91_sys_write(AT91_PMC_PCER, 1 << AT91SAM9263_ID_PIOA | + 1 << AT91SAM9263_ID_PIOCDE); + + /* Configure RDY/BSY */ + at91_set_gpio_input(AT91_PIN_PA22, 1); + + /* Enable NandFlash */ + at91_set_gpio_output(AT91_PIN_PD15, 1); +} +#endif + +#ifdef CONFIG_USB_OHCI_NEW +static void capd_uhp_hw_init(void) +{ + /* Enable VBus on UHP ports */ + at91_set_gpio_output(AT91_PIN_PA21, 0); + at91_set_gpio_output(AT91_PIN_PA24, 0); + +#ifdef SP2526_1_FITTED //SP2526-1 is Active High + at91_set_gpio_value(AT91_PIN_PA21, 1); + at91_set_gpio_value(AT91_PIN_PA24, 1); +#else + at91_set_gpio_value(AT91_PIN_PA21, 0); + at91_set_gpio_value(AT91_PIN_PA24, 0); +#endif + + +} +#endif + +#ifdef CONFIG_LCD +//Settings for the ET057003DM6 LCD +vidinfo_t panel_info = { + vl_col: 320, + vl_row: 240, + vl_clk: 5406000, + vl_sync: ATMEL_LCDC_INVCLK_INVERTED, + vl_bpix: 3, + vl_tft: 1, + vl_hsync_len: 30, + vl_left_margin: 38, + vl_right_margin:20, + vl_vsync_len: 5, + vl_upper_margin:15, + vl_lower_margin:5, + mmio: AT91SAM9263_LCDC_BASE, +}; + +void lcd_enable(void) +{ + at91_set_gpio_value(AT91_PIN_PA30, 1); /* power up */ +} + +void lcd_disable(void) +{ + at91_set_gpio_value(AT91_PIN_PA30, 0); /* power down */ +} + +static void capd_lcd_hw_init(void) +{ + at91_set_A_periph(AT91_PIN_PC0, 0); /* LCDVSYNC */ + at91_set_A_periph(AT91_PIN_PC1, 0); /* LCDHSYNC */ + at91_set_A_periph(AT91_PIN_PC2, 0); /* LCDDOTCK */ + at91_set_A_periph(AT91_PIN_PC3, 0); /* LCDDEN */ + at91_set_A_periph(AT91_PIN_PC4, 0); /* LCDD0 */ + at91_set_A_periph(AT91_PIN_PC5, 0); /* LCDD1 */ + at91_set_A_periph(AT91_PIN_PC6, 0); /* LCDD2 */ + at91_set_A_periph(AT91_PIN_PC7, 0); /* LCDD3 */ + at91_set_A_periph(AT91_PIN_PC8, 0); /* LCDD4 */ + at91_set_A_periph(AT91_PIN_PC9, 0); /* LCDD5 */ + at91_set_A_periph(AT91_PIN_PC10, 0); /* LCDD6 */ + at91_set_A_periph(AT91_PIN_PC11, 0); /* LCDD7 */ + at91_set_A_periph(AT91_PIN_PC12, 0); /* LCDD8 */ + at91_set_A_periph(AT91_PIN_PC13, 0); /* LCDD9 */ + at91_set_A_periph(AT91_PIN_PC14, 0); /* LCDD10 */ + at91_set_A_periph(AT91_PIN_PC15, 0); /* LCDD11 */ + at91_set_A_periph(AT91_PIN_PC16, 0); /* LCDD12 */ + at91_set_A_periph(AT91_PIN_PC17, 0); /* LCDD13 */ + at91_set_A_periph(AT91_PIN_PC18, 0); /* LCDD14 */ + at91_set_A_periph(AT91_PIN_PC19, 0); /* LCDD15 */ + at91_set_A_periph(AT91_PIN_PC20, 0); /* LCDD16 */ + at91_set_A_periph(AT91_PIN_PC21, 0); /* LCDD17 */ + at91_set_A_periph(AT91_PIN_PC22, 0); /* LCDD18 */ + at91_set_A_periph(AT91_PIN_PC23, 0); /* LCDD19 */ + at91_set_A_periph(AT91_PIN_PC24, 0); /* LCDD20 */ + at91_set_A_periph(AT91_PIN_PC25, 0); /* LCDD21 */ + at91_set_A_periph(AT91_PIN_PC26, 0); /* LCDD22 */ + at91_set_A_periph(AT91_PIN_PC27, 0); /* LCDD23 */ + + at91_set_B_periph(AT91_PIN_PB9, 0); /* LCDCC */ + + at91_sys_write(AT91_PMC_PCER, 1 << AT91SAM9263_ID_LCDC); + + gd->fb_base = AT91SAM9263_SRAM0_BASE; +} + +#ifdef CONFIG_LCD_INFO +#include <nand.h> +#include <version.h> + +void lcd_show_board_info(void) +{ + ulong dram_size, nand_size; + int i; + char temp[32]; + + lcd_printf ("%s\n", U_BOOT_VERSION); + lcd_printf ("(C) 2008 Genesys Design\n"); + lcd_printf ("j.holzman@genesysdesign.com.au\n"); + lcd_printf ("%s CPU at %s MHz\n", + AT91_CPU_NAME, + strmhz(temp, AT91_MAIN_CLOCK)); + + dram_size = 0; + for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) + dram_size += gd->bd->bi_dram[i].size; + nand_size = 0; + for (i = 0; i < CONFIG_SYS_MAX_NAND_DEVICE; i++) + nand_size += nand_info[i].size; + lcd_printf (" %ld MB SDRAM, %ld MB NAND\n", + dram_size >> 20, + nand_size >> 20 ); +} +#endif /* CONFIG_LCD_INFO */ +#endif + +int board_init(void) +{ + /* Enable Ctrlc */ + console_init_f(); + + /* arch number of TMQ CAPD Board */ + gd->bd->bi_arch_number = MACH_TYPE_TMQ_CAPD; + /* adress of boot parameters */ + gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; + + capd_serial_hw_init(); +#ifdef CONFIG_CMD_NAND + capd_nand_hw_init(); +#endif +#ifdef CONFIG_USB_OHCI_NEW + capd_uhp_hw_init(); +#endif +#ifdef CONFIG_LCD + capd_lcd_hw_init(); +#endif + return 0; +} + +int dram_init(void) +{ + gd->bd->bi_dram[0].start = PHYS_SDRAM; + gd->bd->bi_dram[0].size = PHYS_SDRAM_SIZE; + return 0; +} diff --git a/include/asm-arm/mach-types.h b/include/asm-arm/mach-types.h index ce6d25f..94ad824 100644 --- a/include/asm-arm/mach-types.h +++ b/include/asm-arm/mach-types.h @@ -1,5 +1,5 @@ /* - * This was automagically generated from arch/arm/tools/mach-types! + * This was automagically generated from mach-types! * Do NOT edit */
@@ -1857,6 +1857,68 @@ extern unsigned int __machine_arch_type; #define MACH_TYPE_IMX27IPCAM 1871 #define MACH_TYPE_NEMOC 1872 #define MACH_TYPE_GENEVA 1873 +#define MACH_TYPE_HTCPHAROS 1874 +#define MACH_TYPE_NEONC 1875 +#define MACH_TYPE_NAS7100 1876 +#define MACH_TYPE_TEUPHONE 1877 +#define MACH_TYPE_ANNAX_ETH2 1878 +#define MACH_TYPE_CSB733 1879 +#define MACH_TYPE_BK3 1880 +#define MACH_TYPE_OMAP_EM32 1881 +#define MACH_TYPE_ET9261CP 1882 +#define MACH_TYPE_JASPERC 1883 +#define MACH_TYPE_ISSI_ARM9 1884 +#define MACH_TYPE_UED 1885 +#define MACH_TYPE_ESIBLADE 1886 +#define MACH_TYPE_EYE02 1887 +#define MACH_TYPE_IMX27KBD 1888 +#define MACH_TYPE_SST61VC010_FPGA 1889 +#define MACH_TYPE_KIXVP435 1890 +#define MACH_TYPE_KIXNP435 1891 +#define MACH_TYPE_AFRICA 1892 +#define MACH_TYPE_NH233 1893 +#define MACH_TYPE_RD88F6183AP_GE 1894 +#define MACH_TYPE_BCM4760 1895 +#define MACH_TYPE_EDDY_V2 1896 +#define MACH_TYPE_REALVIEW_PBA8 1897 +#define MACH_TYPE_HID_A7 1898 +#define MACH_TYPE_HERO 1899 +#define MACH_TYPE_OMAP_POSEIDON 1900 +#define MACH_TYPE_REALVIEW_PBX 1901 +#define MACH_TYPE_MICRO9S 1902 +#define MACH_TYPE_MAKO 1903 +#define MACH_TYPE_XDAFLAME 1904 +#define MACH_TYPE_PHIDGET_SBC2 1905 +#define MACH_TYPE_LIMESTONE 1906 +#define MACH_TYPE_IPROBE_C32 1907 +#define MACH_TYPE_RUT100 1908 +#define MACH_TYPE_ASUSP535 1909 +#define MACH_TYPE_HTCRAPHAEL 1910 +#define MACH_TYPE_SYGDG1 1911 +#define MACH_TYPE_SYGDG2 1912 +#define MACH_TYPE_SEOUL 1913 +#define MACH_TYPE_SALERNO 1914 +#define MACH_TYPE_UCN_S3C64XX 1915 +#define MACH_TYPE_MSM7201A 1916 +#define MACH_TYPE_LPR1 1917 +#define MACH_TYPE_ARMADILLO500FX 1918 +#define MACH_TYPE_G3EVM 1919 +#define MACH_TYPE_Z3_DM355 1920 +#define MACH_TYPE_W90P910EVB 1921 +#define MACH_TYPE_W90P920EVB 1922 +#define MACH_TYPE_W90P950EVB 1923 +#define MACH_TYPE_W90N960EVB 1924 +#define MACH_TYPE_CAMHD 1925 +#define MACH_TYPE_MVC100 1926 +#define MACH_TYPE_ELECTRUM_200 1927 +#define MACH_TYPE_HTCJADE 1928 +#define MACH_TYPE_MEMPHIS 1929 +#define MACH_TYPE_IMX27SBC 1930 +#define MACH_TYPE_LEXTAR 1931 +#define MACH_TYPE_MV88F6281GTW_GE 1932 +#define MACH_TYPE_NCP 1933 +#define MACH_TYPE_Z32AN 1934 +#define MACH_TYPE_TMQ_CAPD 1935
#ifdef CONFIG_ARCH_EBSA110 # ifdef machine_arch_type @@ -23998,6 +24060,750 @@ extern unsigned int __machine_arch_type; # define machine_is_geneva() (0) #endif
+#ifdef CONFIG_MACH_HTCPHAROS +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_HTCPHAROS +# endif +# define machine_is_htcpharos() (machine_arch_type == MACH_TYPE_HTCPHAROS) +#else +# define machine_is_htcpharos() (0) +#endif + +#ifdef CONFIG_MACH_NEONC +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_NEONC +# endif +# define machine_is_neonc() (machine_arch_type == MACH_TYPE_NEONC) +#else +# define machine_is_neonc() (0) +#endif + +#ifdef CONFIG_MACH_NAS7100 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_NAS7100 +# endif +# define machine_is_nas7100() (machine_arch_type == MACH_TYPE_NAS7100) +#else +# define machine_is_nas7100() (0) +#endif + +#ifdef CONFIG_MACH_TEUPHONE +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_TEUPHONE +# endif +# define machine_is_teuphone() (machine_arch_type == MACH_TYPE_TEUPHONE) +#else +# define machine_is_teuphone() (0) +#endif + +#ifdef CONFIG_MACH_ANNAX_ETH2 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_ANNAX_ETH2 +# endif +# define machine_is_annax_eth2() (machine_arch_type == MACH_TYPE_ANNAX_ETH2) +#else +# define machine_is_annax_eth2() (0) +#endif + +#ifdef CONFIG_MACH_CSB733 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_CSB733 +# endif +# define machine_is_csb733() (machine_arch_type == MACH_TYPE_CSB733) +#else +# define machine_is_csb733() (0) +#endif + +#ifdef CONFIG_MACH_BK3 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_BK3 +# endif +# define machine_is_bk3() (machine_arch_type == MACH_TYPE_BK3) +#else +# define machine_is_bk3() (0) +#endif + +#ifdef CONFIG_MACH_OMAP_EM32 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_OMAP_EM32 +# endif +# define machine_is_omap_em32() (machine_arch_type == MACH_TYPE_OMAP_EM32) +#else +# define machine_is_omap_em32() (0) +#endif + +#ifdef CONFIG_MACH_ET9261CP +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_ET9261CP +# endif +# define machine_is_et9261cp() (machine_arch_type == MACH_TYPE_ET9261CP) +#else +# define machine_is_et9261cp() (0) +#endif + +#ifdef CONFIG_MACH_JASPERC +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_JASPERC +# endif +# define machine_is_jasperc() (machine_arch_type == MACH_TYPE_JASPERC) +#else +# define machine_is_jasperc() (0) +#endif + +#ifdef CONFIG_MACH_ISSI_ARM9 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_ISSI_ARM9 +# endif +# define machine_is_issi_arm9() (machine_arch_type == MACH_TYPE_ISSI_ARM9) +#else +# define machine_is_issi_arm9() (0) +#endif + +#ifdef CONFIG_MACH_UED +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_UED +# endif +# define machine_is_ued() (machine_arch_type == MACH_TYPE_UED) +#else +# define machine_is_ued() (0) +#endif + +#ifdef CONFIG_MACH_ESIBLADE +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_ESIBLADE +# endif +# define machine_is_esiblade() (machine_arch_type == MACH_TYPE_ESIBLADE) +#else +# define machine_is_esiblade() (0) +#endif + +#ifdef CONFIG_MACH_EYE02 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_EYE02 +# endif +# define machine_is_eye02() (machine_arch_type == MACH_TYPE_EYE02) +#else +# define machine_is_eye02() (0) +#endif + +#ifdef CONFIG_MACH_IMX27KBD +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_IMX27KBD +# endif +# define machine_is_imx27kbd() (machine_arch_type == MACH_TYPE_IMX27KBD) +#else +# define machine_is_imx27kbd() (0) +#endif + +#ifdef CONFIG_MACH_SST61VC010_FPGA +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_SST61VC010_FPGA +# endif +# define machine_is_sst61vc010_fpga() (machine_arch_type == MACH_TYPE_SST61VC010_FPGA) +#else +# define machine_is_sst61vc010_fpga() (0) +#endif + +#ifdef CONFIG_MACH_KIXVP435 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_KIXVP435 +# endif +# define machine_is_kixvp435() (machine_arch_type == MACH_TYPE_KIXVP435) +#else +# define machine_is_kixvp435() (0) +#endif + +#ifdef CONFIG_MACH_KIXNP435 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_KIXNP435 +# endif +# define machine_is_kixnp435() (machine_arch_type == MACH_TYPE_KIXNP435) +#else +# define machine_is_kixnp435() (0) +#endif + +#ifdef CONFIG_MACH_AFRICA +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_AFRICA +# endif +# define machine_is_africa() (machine_arch_type == MACH_TYPE_AFRICA) +#else +# define machine_is_africa() (0) +#endif + +#ifdef CONFIG_MACH_NH233 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_NH233 +# endif +# define machine_is_nh233() (machine_arch_type == MACH_TYPE_NH233) +#else +# define machine_is_nh233() (0) +#endif + +#ifdef CONFIG_MACH_RD88F6183AP_GE +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_RD88F6183AP_GE +# endif +# define machine_is_rd88f6183ap_ge() (machine_arch_type == MACH_TYPE_RD88F6183AP_GE) +#else +# define machine_is_rd88f6183ap_ge() (0) +#endif + +#ifdef CONFIG_MACH_BCM4760 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_BCM4760 +# endif +# define machine_is_bcm4760() (machine_arch_type == MACH_TYPE_BCM4760) +#else +# define machine_is_bcm4760() (0) +#endif + +#ifdef CONFIG_MACH_EDDY_V2 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_EDDY_V2 +# endif +# define machine_is_eddy_v2() (machine_arch_type == MACH_TYPE_EDDY_V2) +#else +# define machine_is_eddy_v2() (0) +#endif + +#ifdef CONFIG_MACH_REALVIEW_PBA8 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_REALVIEW_PBA8 +# endif +# define machine_is_realview_pba8() (machine_arch_type == MACH_TYPE_REALVIEW_PBA8) +#else +# define machine_is_realview_pba8() (0) +#endif + +#ifdef CONFIG_MACH_HID_A7 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_HID_A7 +# endif +# define machine_is_hid_a7() (machine_arch_type == MACH_TYPE_HID_A7) +#else +# define machine_is_hid_a7() (0) +#endif + +#ifdef CONFIG_MACH_HERO +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_HERO +# endif +# define machine_is_hero() (machine_arch_type == MACH_TYPE_HERO) +#else +# define machine_is_hero() (0) +#endif + +#ifdef CONFIG_MACH_OMAP_POSEIDON +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_OMAP_POSEIDON +# endif +# define machine_is_omap_poseidon() (machine_arch_type == MACH_TYPE_OMAP_POSEIDON) +#else +# define machine_is_omap_poseidon() (0) +#endif + +#ifdef CONFIG_MACH_REALVIEW_PBX +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_REALVIEW_PBX +# endif +# define machine_is_realview_pbx() (machine_arch_type == MACH_TYPE_REALVIEW_PBX) +#else +# define machine_is_realview_pbx() (0) +#endif + +#ifdef CONFIG_MACH_MICRO9S +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_MICRO9S +# endif +# define machine_is_micro9s() (machine_arch_type == MACH_TYPE_MICRO9S) +#else +# define machine_is_micro9s() (0) +#endif + +#ifdef CONFIG_MACH_MAKO +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_MAKO +# endif +# define machine_is_mako() (machine_arch_type == MACH_TYPE_MAKO) +#else +# define machine_is_mako() (0) +#endif + +#ifdef CONFIG_MACH_XDAFLAME +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_XDAFLAME +# endif +# define machine_is_xdaflame() (machine_arch_type == MACH_TYPE_XDAFLAME) +#else +# define machine_is_xdaflame() (0) +#endif + +#ifdef CONFIG_MACH_PHIDGET_SBC2 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_PHIDGET_SBC2 +# endif +# define machine_is_phidget_sbc2() (machine_arch_type == MACH_TYPE_PHIDGET_SBC2) +#else +# define machine_is_phidget_sbc2() (0) +#endif + +#ifdef CONFIG_MACH_LIMESTONE +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_LIMESTONE +# endif +# define machine_is_limestone() (machine_arch_type == MACH_TYPE_LIMESTONE) +#else +# define machine_is_limestone() (0) +#endif + +#ifdef CONFIG_MACH_IPROBE_C32 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_IPROBE_C32 +# endif +# define machine_is_iprobe_c32() (machine_arch_type == MACH_TYPE_IPROBE_C32) +#else +# define machine_is_iprobe_c32() (0) +#endif + +#ifdef CONFIG_MACH_RUT100 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_RUT100 +# endif +# define machine_is_rut100() (machine_arch_type == MACH_TYPE_RUT100) +#else +# define machine_is_rut100() (0) +#endif + +#ifdef CONFIG_MACH_ASUSP535 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_ASUSP535 +# endif +# define machine_is_asusp535() (machine_arch_type == MACH_TYPE_ASUSP535) +#else +# define machine_is_asusp535() (0) +#endif + +#ifdef CONFIG_MACH_HTCRAPHAEL +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_HTCRAPHAEL +# endif +# define machine_is_htcraphael() (machine_arch_type == MACH_TYPE_HTCRAPHAEL) +#else +# define machine_is_htcraphael() (0) +#endif + +#ifdef CONFIG_MACH_SYGDG1 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_SYGDG1 +# endif +# define machine_is_sygdg1() (machine_arch_type == MACH_TYPE_SYGDG1) +#else +# define machine_is_sygdg1() (0) +#endif + +#ifdef CONFIG_MACH_SYGDG2 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_SYGDG2 +# endif +# define machine_is_sygdg2() (machine_arch_type == MACH_TYPE_SYGDG2) +#else +# define machine_is_sygdg2() (0) +#endif + +#ifdef CONFIG_MACH_SEOUL +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_SEOUL +# endif +# define machine_is_seoul() (machine_arch_type == MACH_TYPE_SEOUL) +#else +# define machine_is_seoul() (0) +#endif + +#ifdef CONFIG_MACH_SALERNO +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_SALERNO +# endif +# define machine_is_salerno() (machine_arch_type == MACH_TYPE_SALERNO) +#else +# define machine_is_salerno() (0) +#endif + +#ifdef CONFIG_MACH_UCN_S3C64XX +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_UCN_S3C64XX +# endif +# define machine_is_ucn_s3c64xx() (machine_arch_type == MACH_TYPE_UCN_S3C64XX) +#else +# define machine_is_ucn_s3c64xx() (0) +#endif + +#ifdef CONFIG_MACH_MSM7201A +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_MSM7201A +# endif +# define machine_is_msm7201a() (machine_arch_type == MACH_TYPE_MSM7201A) +#else +# define machine_is_msm7201a() (0) +#endif + +#ifdef CONFIG_MACH_LPR1 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_LPR1 +# endif +# define machine_is_lpr1() (machine_arch_type == MACH_TYPE_LPR1) +#else +# define machine_is_lpr1() (0) +#endif + +#ifdef CONFIG_MACH_ARMADILLO500FX +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_ARMADILLO500FX +# endif +# define machine_is_armadillo500fx() (machine_arch_type == MACH_TYPE_ARMADILLO500FX) +#else +# define machine_is_armadillo500fx() (0) +#endif + +#ifdef CONFIG_MACH_G3EVM +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_G3EVM +# endif +# define machine_is_g3evm() (machine_arch_type == MACH_TYPE_G3EVM) +#else +# define machine_is_g3evm() (0) +#endif + +#ifdef CONFIG_MACH_Z3_DM355 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_Z3_DM355 +# endif +# define machine_is_z3_dm355() (machine_arch_type == MACH_TYPE_Z3_DM355) +#else +# define machine_is_z3_dm355() (0) +#endif + +#ifdef CONFIG_MACH_W90P910EVB +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_W90P910EVB +# endif +# define machine_is_w90p910evb() (machine_arch_type == MACH_TYPE_W90P910EVB) +#else +# define machine_is_w90p910evb() (0) +#endif + +#ifdef CONFIG_MACH_W90P920EVB +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_W90P920EVB +# endif +# define machine_is_w90p920evb() (machine_arch_type == MACH_TYPE_W90P920EVB) +#else +# define machine_is_w90p920evb() (0) +#endif + +#ifdef CONFIG_MACH_W90P950EVB +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_W90P950EVB +# endif +# define machine_is_w90p950evb() (machine_arch_type == MACH_TYPE_W90P950EVB) +#else +# define machine_is_w90p950evb() (0) +#endif + +#ifdef CONFIG_MACH_W90N960EVB +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_W90N960EVB +# endif +# define machine_is_w90n960evb() (machine_arch_type == MACH_TYPE_W90N960EVB) +#else +# define machine_is_w90n960evb() (0) +#endif + +#ifdef CONFIG_MACH_CAMHD +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_CAMHD +# endif +# define machine_is_camhd() (machine_arch_type == MACH_TYPE_CAMHD) +#else +# define machine_is_camhd() (0) +#endif + +#ifdef CONFIG_MACH_MVC100 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_MVC100 +# endif +# define machine_is_mvc100() (machine_arch_type == MACH_TYPE_MVC100) +#else +# define machine_is_mvc100() (0) +#endif + +#ifdef CONFIG_MACH_ELECTRUM_200 +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_ELECTRUM_200 +# endif +# define machine_is_electrum_200() (machine_arch_type == MACH_TYPE_ELECTRUM_200) +#else +# define machine_is_electrum_200() (0) +#endif + +#ifdef CONFIG_MACH_HTCJADE +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_HTCJADE +# endif +# define machine_is_htcjade() (machine_arch_type == MACH_TYPE_HTCJADE) +#else +# define machine_is_htcjade() (0) +#endif + +#ifdef CONFIG_MACH_MEMPHIS +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_MEMPHIS +# endif +# define machine_is_memphis() (machine_arch_type == MACH_TYPE_MEMPHIS) +#else +# define machine_is_memphis() (0) +#endif + +#ifdef CONFIG_MACH_IMX27SBC +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_IMX27SBC +# endif +# define machine_is_imx27sbc() (machine_arch_type == MACH_TYPE_IMX27SBC) +#else +# define machine_is_imx27sbc() (0) +#endif + +#ifdef CONFIG_MACH_LEXTAR +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_LEXTAR +# endif +# define machine_is_lextar() (machine_arch_type == MACH_TYPE_LEXTAR) +#else +# define machine_is_lextar() (0) +#endif + +#ifdef CONFIG_MACH_MV88F6281GTW_GE +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_MV88F6281GTW_GE +# endif +# define machine_is_mv88f6281gtw_ge() (machine_arch_type == MACH_TYPE_MV88F6281GTW_GE) +#else +# define machine_is_mv88f6281gtw_ge() (0) +#endif + +#ifdef CONFIG_MACH_NCP +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_NCP +# endif +# define machine_is_ncp() (machine_arch_type == MACH_TYPE_NCP) +#else +# define machine_is_ncp() (0) +#endif + +#ifdef CONFIG_MACH_Z32AN +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_Z32AN +# endif +# define machine_is_z32an_series() (machine_arch_type == MACH_TYPE_Z32AN) +#else +# define machine_is_z32an_series() (0) +#endif + +#ifdef CONFIG_MACH_TMQ_CAPD +# ifdef machine_arch_type +# undef machine_arch_type +# define machine_arch_type __machine_arch_type +# else +# define machine_arch_type MACH_TYPE_TMQ_CAPD +# endif +# define machine_is_tmq_capd() (machine_arch_type == MACH_TYPE_TMQ_CAPD) +#else +# define machine_is_tmq_capd() (0) +#endif + /* * These have not yet been registered */ diff --git a/include/configs/tmq_capd.h b/include/configs/tmq_capd.h new file mode 100644 index 0000000..7d6cbcc --- /dev/null +++ b/include/configs/tmq_capd.h @@ -0,0 +1,165 @@ +/* + * (C) Copyright 2007-2008 + * Stelian Pop stelian.pop@leadtechdesign.com + * Lead Tech Design <www.leadtechdesign.com> + * + * Configuation settings for the AT91SAM9263EK board. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +/* ARM asynchronous clock */ +#define AT91_CPU_NAME "AT91SAM9263" +#define AT91_MAIN_CLOCK 198656000 /* from 18.432 MHz crystal */ +#define AT91_MASTER_CLOCK 99328000 /* peripheral = main / 2 */ +#define CONFIG_SYS_HZ 1000000 /* 1us resolution */ + +#define AT91_SLOW_CLOCK 32768 /* slow clock */ + +#define CONFIG_ARM926EJS 1 /* This is an ARM926EJS Core */ +#define CONFIG_AT91SAM9263 1 /* It's an Atmel AT91SAM9263 SoC*/ +#define CONFIG_TMQ_CAPD 1 /* on an TMQ CAPD Board */ +#undef CONFIG_USE_IRQ /* we don't need IRQ/FIQ stuff */ + +#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */ +#define CONFIG_SETUP_MEMORY_TAGS 1 +#define CONFIG_INITRD_TAG 1 + +#define CONFIG_SKIP_LOWLEVEL_INIT +#define CONFIG_SKIP_RELOCATE_UBOOT + +/* + * Hardware drivers + */ +#define CONFIG_ATMEL_USART 1 +#undef CONFIG_USART0 +#undef CONFIG_USART1 +#undef CONFIG_USART2 +#define CONFIG_USART3 1 /* USART 3 is DBGU */ + +/* LCD */ +#define CONFIG_LCD 1 +#define LCD_BPP LCD_COLOR8 +#define CONFIG_LCD_LOGO 1 +#undef LCD_TEST_PATTERN +#define CONFIG_LCD_INFO 1 +#define CONFIG_LCD_INFO_BELOW_LOGO 1 +#define CONFIG_SYS_WHITE_ON_BLACK 1 +#define CONFIG_ATMEL_LCD 1 +#define CONFIG_ATMEL_LCD_BGR555 1 +#define CONFIG_SYS_CONSOLE_IS_IN_ENV 1 + +#define CONFIG_BOOTDELAY 3 + +/* + * BOOTP options + */ +#define CONFIG_BOOTP_BOOTFILESIZE 1 +#define CONFIG_BOOTP_BOOTPATH 1 +#define CONFIG_BOOTP_GATEWAY 1 +#define CONFIG_BOOTP_HOSTNAME 1 + +/* + * Command line configuration. + */ +#include <config_cmd_default.h> +#undef CONFIG_CMD_BDI +#undef CONFIG_CMD_IMI +#undef CONFIG_CMD_AUTOSCRIPT +#undef CONFIG_CMD_FPGA +#undef CONFIG_CMD_LOADS +#undef CONFIG_CMD_IMLS + +#undef CONFIG_CMD_NET +#undef CONFIG_CMD_PING +#undef CONFIG_CMD_DHCP +#define CONFIG_CMD_NAND 1 +#define CONFIG_CMD_USB 1 +#define CONFIG_CMD_FAT 1 + +/* SDRAM */ +#define CONFIG_NR_DRAM_BANKS 1 +#define PHYS_SDRAM 0x20000000 +#define PHYS_SDRAM_SIZE 0x02000000 /* 32 megs */ + +#define CONFIG_SYS_NO_FLASH 1 /* No NOR Flash */ + +/* NAND flash */ +#define NAND_MAX_CHIPS 1 +#define CONFIG_SYS_MAX_NAND_DEVICE 1 +#define CONFIG_SYS_NAND_BASE 0x40000000 +//#define CONFIG_SYS_NAND_DBW_8 1 +#define CONFIG_SYS_NAND_DBW_16 1 /* 16bit */ + +/* USB */ +#define SP2526_1_FITTED 1 +#undef SP2526_2_FITTED +#define CONFIG_USB_OHCI_NEW 1 +#define LITTLEENDIAN 1 +#define CONFIG_DOS_PARTITION 1 +#define CONFIG_SYS_USB_OHCI_CPU_INIT 1 +#define CONFIG_SYS_USB_OHCI_REGS_BASE 0x00a00000 /* AT91SAM9263_UHP_BASE */ +#define CONFIG_SYS_USB_OHCI_SLOT_NAME "at91sam9263" +#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 2 +#define CONFIG_USB_STORAGE 1 + +#define CONFIG_SYS_LOAD_ADDR 0x21000000 /* load address */ + +#define CONFIG_SYS_MEMTEST_START PHYS_SDRAM +#define CONFIG_SYS_MEMTEST_END 0x21e00000 + +/* bootstrap + u-boot + env + linux in nandflash */ +#define CONFIG_ENV_IS_IN_NAND 1 +#define CONFIG_ENV_OFFSET 0x60000 +#define CONFIG_ENV_OFFSET_REDUND 0x80000 +#define CONFIG_ENV_SIZE 0x20000 /* 1 sector = 128 kB */ +#define CONFIG_BOOTCOMMAND "nand read 21100000 100000 500000; bootm 21100000" +#define CONFIG_BOOTARGS "console=ttyS0,115200 " \ + "root=/dev/mtdblock5 " \ + "mtdparts=at91_nand:128k(bootstrap)ro,256k(uboot)ro,128k(env1)ro,128k(env2)ro,2M(linux),-(root) " \ + "rw rootfstype=jffs2" + + +#define CONFIG_BAUDRATE 115200 +#define CONFIG_SYS_BAUDRATE_TABLE {115200 , 19200, 38400, 57600, 9600 } + +#define CONFIG_SYS_PROMPT "U-Boot> " +#define CONFIG_SYS_CBSIZE 256 +#define CONFIG_SYS_MAXARGS 16 +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) +#define CONFIG_SYS_LONGHELP 1 +#define CONFIG_CMDLINE_EDITING 1 + +#define ROUND(A, B) (((A) + (B)) & ~((B) - 1)) +/* + * Size of malloc() pool + */ +#define CONFIG_SYS_MALLOC_LEN ROUND(3 * CONFIG_ENV_SIZE + 128*1024, 0x1000) +#define CONFIG_SYS_GBL_DATA_SIZE 128 /* 128 bytes for initial data */ + +#define CONFIG_STACKSIZE (32*1024) /* regular stack */ + +#ifdef CONFIG_USE_IRQ +#error CONFIG_USE_IRQ not supported +#endif + +#endif diff --git a/tools/Makefile b/tools/Makefile index 9e9ee15..f1a0f9d 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -47,6 +47,9 @@ endif ifeq ($(VENDOR),atmel) LOGO_BMP= logos/atmel.bmp endif +ifeq ($(VENDOR),tmq) +LOGO_BMP= logos/tmqlogo.bmp +endif
#------------------------------------------------------------------------- diff --git a/tools/logos/tmqlogo.bmp b/tools/logos/tmqlogo.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d28b666d3ee2f583dd983202edb93109d9d0b72e GIT binary patch literal 20254 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
literal 0 HcmV?d00001

On 16:02 Fri 14 Nov , Jared Holzman wrote:
Makefile | 3 + board/tmq/tmq_capd/Makefile | 61 +++ board/tmq/tmq_capd/config.mk | 1 + board/tmq/tmq_capd/led.c | 56 +++ board/tmq/tmq_capd/nand.c | 83 +++++ board/tmq/tmq_capd/tmq_capd.c | 259 +++++++++++++ include/asm-arm/mach-types.h | 808 ++++++++++++++++++++++++++++++++++++++++- include/configs/tmq_capd.h | 165 +++++++++ tools/Makefile | 3 + tools/logos/tmqlogo.bmp | Bin 0 -> 20254 bytes 10 files changed, 1438 insertions(+), 1 deletions(-) create mode 100644 board/tmq/tmq_capd/Makefile create mode 100644 board/tmq/tmq_capd/config.mk create mode 100644 board/tmq/tmq_capd/led.c create mode 100644 board/tmq/tmq_capd/nand.c create mode 100644 board/tmq/tmq_capd/tmq_capd.c create mode 100644 include/configs/tmq_capd.h create mode 100644 tools/logos/tmqlogo.bmp
please note that a common patch will send to reduce duplicate code for device initialisation
diff --git a/Makefile b/Makefile index e4a184f..dae3903 100644 --- a/Makefile +++ b/Makefile @@ -2587,6 +2587,9 @@ at91sam9263ek_config : unconfig at91sam9rlek_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9rlek atmel at91
+tmq_capd_config : unconfig
- @$(MKCONFIG) $(@:_config=) arm arm926ejs tmq_capd tmq at91
######################################################################## ## ARM Integrator boards - see doc/README-integrator for more info. integratorap_config \ diff --git a/board/tmq/tmq_capd/Makefile b/board/tmq/tmq_capd/Makefile new file mode 100644 index 0000000..3eee33a
+
+#ifdef CONFIG_USB_OHCI_NEW +static void capd_uhp_hw_init(void) +{
- /* Enable VBus on UHP ports */
- at91_set_gpio_output(AT91_PIN_PA21, 0);
- at91_set_gpio_output(AT91_PIN_PA24, 0);
+#ifdef SP2526_1_FITTED //SP2526-1 is Active High
- at91_set_gpio_value(AT91_PIN_PA21, 1);
- at91_set_gpio_value(AT91_PIN_PA24, 1);
+#else
- at91_set_gpio_value(AT91_PIN_PA21, 0);
- at91_set_gpio_value(AT91_PIN_PA24, 0);
+#endif
whitespace please remove
+} +#endif
please move this to lcd.c
+#ifdef CONFIG_LCD +//Settings for the ET057003DM6 LCD
please no C++ comment style
+vidinfo_t panel_info = {
- vl_col: 320,
- vl_row: 240,
- vl_clk: 5406000,
- vl_sync: ATMEL_LCDC_INVCLK_INVERTED,
- vl_bpix: 3,
- vl_tft: 1,
- vl_hsync_len: 30,
- vl_left_margin: 38,
- vl_right_margin:20,
- vl_vsync_len: 5,
- vl_upper_margin:15,
- vl_lower_margin:5,
- mmio: AT91SAM9263_LCDC_BASE,
+};
+void lcd_enable(void) +{
- at91_set_gpio_value(AT91_PIN_PA30, 1); /* power up */
^^ whitespace please remove
+}
+void lcd_disable(void) +{
- at91_set_gpio_value(AT91_PIN_PA30, 0); /* power down */
^^ whitespace please remove
+}
+int board_init(void) +{
- /* Enable Ctrlc */
- console_init_f();
- /* arch number of TMQ CAPD Board */
- gd->bd->bi_arch_number = MACH_TYPE_TMQ_CAPD;
- /* adress of boot parameters */
- gd->bd->bi_boot_params = PHYS_SDRAM + 0x100;
- capd_serial_hw_init();
+#ifdef CONFIG_CMD_NAND
- capd_nand_hw_init();
+#endif +#ifdef CONFIG_USB_OHCI_NEW
- capd_uhp_hw_init();
+#endif +#ifdef CONFIG_LCD
- capd_lcd_hw_init();
+#endif
- return 0;
+}
+int dram_init(void) +{
- gd->bd->bi_dram[0].start = PHYS_SDRAM;
- gd->bd->bi_dram[0].size = PHYS_SDRAM_SIZE;
- return 0;
+} diff --git a/include/asm-arm/mach-types.h b/include/asm-arm/mach-types.h index ce6d25f..94ad824 100644 --- a/include/asm-arm/mach-types.h +++ b/include/asm-arm/mach-types.h
If need you must ask a sync and not that hte mach-types.h is sync every kernel release
diff --git a/include/configs/tmq_capd.h b/include/configs/tmq_capd.h new file mode 100644 index 0000000..7d6cbcc --- /dev/null +++ b/include/configs/tmq_capd.h @@ -0,0 +1,165 @@ +/*
- (C) Copyright 2007-2008
- Stelian Pop stelian.pop@leadtechdesign.com
- Lead Tech Design <www.leadtechdesign.com>
- Configuation settings for the AT91SAM9263EK board.
- See file CREDITS for list of people who contributed to this
- project.
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 2 of
- the License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- MA 02111-1307 USA
- */
+#ifndef __CONFIG_H +#define __CONFIG_H
+/* ARM asynchronous clock */ +#define AT91_CPU_NAME "AT91SAM9263" +#define AT91_MAIN_CLOCK 198656000 /* from 18.432 MHz crystal */ +#define AT91_MASTER_CLOCK 99328000 /* peripheral = main / 2 */ +#define CONFIG_SYS_HZ 1000000 /* 1us resolution */
+#define AT91_SLOW_CLOCK 32768 /* slow clock */
+#define CONFIG_ARM926EJS 1 /* This is an ARM926EJS Core */ +#define CONFIG_AT91SAM9263 1 /* It's an Atmel AT91SAM9263 SoC*/ +#define CONFIG_TMQ_CAPD 1 /* on an TMQ CAPD Board */ +#undef CONFIG_USE_IRQ /* we don't need IRQ/FIQ stuff */
+#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */ +#define CONFIG_SETUP_MEMORY_TAGS 1 +#define CONFIG_INITRD_TAG 1
+#define CONFIG_SKIP_LOWLEVEL_INIT +#define CONFIG_SKIP_RELOCATE_UBOOT
+/*
- Hardware drivers
- */
+#define CONFIG_ATMEL_USART 1 +#undef CONFIG_USART0 +#undef CONFIG_USART1 +#undef CONFIG_USART2 +#define CONFIG_USART3 1 /* USART 3 is DBGU */
+/* LCD */ +#define CONFIG_LCD 1 +#define LCD_BPP LCD_COLOR8 +#define CONFIG_LCD_LOGO 1 +#undef LCD_TEST_PATTERN +#define CONFIG_LCD_INFO 1 +#define CONFIG_LCD_INFO_BELOW_LOGO 1 +#define CONFIG_SYS_WHITE_ON_BLACK 1 +#define CONFIG_ATMEL_LCD 1 +#define CONFIG_ATMEL_LCD_BGR555 1 +#define CONFIG_SYS_CONSOLE_IS_IN_ENV 1
+#define CONFIG_BOOTDELAY 3
+/*
- BOOTP options
- */
+#define CONFIG_BOOTP_BOOTFILESIZE 1 +#define CONFIG_BOOTP_BOOTPATH 1 +#define CONFIG_BOOTP_GATEWAY 1 +#define CONFIG_BOOTP_HOSTNAME 1
+/*
- Command line configuration.
- */
+#include <config_cmd_default.h> +#undef CONFIG_CMD_BDI +#undef CONFIG_CMD_IMI +#undef CONFIG_CMD_AUTOSCRIPT +#undef CONFIG_CMD_FPGA +#undef CONFIG_CMD_LOADS +#undef CONFIG_CMD_IMLS
+#undef CONFIG_CMD_NET +#undef CONFIG_CMD_PING +#undef CONFIG_CMD_DHCP +#define CONFIG_CMD_NAND 1 +#define CONFIG_CMD_USB 1 +#define CONFIG_CMD_FAT 1
+/* SDRAM */ +#define CONFIG_NR_DRAM_BANKS 1 +#define PHYS_SDRAM 0x20000000 +#define PHYS_SDRAM_SIZE 0x02000000 /* 32 megs */
+#define CONFIG_SYS_NO_FLASH 1 /* No NOR Flash */
^ whitespace please remove
+/* NAND flash */ +#define NAND_MAX_CHIPS 1 +#define CONFIG_SYS_MAX_NAND_DEVICE 1 +#define CONFIG_SYS_NAND_BASE 0x40000000 +//#define CONFIG_SYS_NAND_DBW_8 1 +#define CONFIG_SYS_NAND_DBW_16 1 /* 16bit */
+/* USB */ +#define SP2526_1_FITTED 1 +#undef SP2526_2_FITTED +#define CONFIG_USB_OHCI_NEW 1 +#define LITTLEENDIAN 1 +#define CONFIG_DOS_PARTITION 1 +#define CONFIG_SYS_USB_OHCI_CPU_INIT 1 +#define CONFIG_SYS_USB_OHCI_REGS_BASE 0x00a00000 /* AT91SAM9263_UHP_BASE */ +#define CONFIG_SYS_USB_OHCI_SLOT_NAME "at91sam9263" +#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 2 +#define CONFIG_USB_STORAGE 1
+#define CONFIG_SYS_LOAD_ADDR 0x21000000 /* load address */
+#define CONFIG_SYS_MEMTEST_START PHYS_SDRAM +#define CONFIG_SYS_MEMTEST_END 0x21e00000
+/* bootstrap + u-boot + env + linux in nandflash */ +#define CONFIG_ENV_IS_IN_NAND 1 +#define CONFIG_ENV_OFFSET 0x60000 +#define CONFIG_ENV_OFFSET_REDUND 0x80000 +#define CONFIG_ENV_SIZE 0x20000 /* 1 sector = 128 kB */ +#define CONFIG_BOOTCOMMAND "nand read 21100000 100000 500000; bootm 21100000" +#define CONFIG_BOOTARGS "console=ttyS0,115200 " \
"root=/dev/mtdblock5 " \
"mtdparts=at91_nand:128k(bootstrap)ro,256k(uboot)ro,128k(env1)ro,128k(env2)ro,2M(linux),-(root) " \
too long please split
"rw rootfstype=jffs2"
+#define CONFIG_BAUDRATE 115200 +#define CONFIG_SYS_BAUDRATE_TABLE {115200 , 19200, 38400, 57600, 9600 }
+#define CONFIG_SYS_PROMPT "U-Boot> " +#define CONFIG_SYS_CBSIZE 256 +#define CONFIG_SYS_MAXARGS 16 +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) +#define CONFIG_SYS_LONGHELP 1 +#define CONFIG_CMDLINE_EDITING 1
+#define ROUND(A, B) (((A) + (B)) & ~((B) - 1)) +/*
- Size of malloc() pool
- */
+#define CONFIG_SYS_MALLOC_LEN ROUND(3 * CONFIG_ENV_SIZE + 128*1024, 0x1000) +#define CONFIG_SYS_GBL_DATA_SIZE 128 /* 128 bytes for initial data */
+#define CONFIG_STACKSIZE (32*1024) /* regular stack */
please add space arround '*'
+#ifdef CONFIG_USE_IRQ +#error CONFIG_USE_IRQ not supported +#endif
Best Regards, J.
participants (2)
-
Jared Holzman
-
Jean-Christophe PLAGNIOL-VILLARD