uboot/include/configs/at91sam9rlek.h
<<
>>
Prefs
   1/*
   2 * (C) Copyright 2007-2008
   3 * Stelian Pop <stelian@popies.net>
   4 * Lead Tech Design <www.leadtechdesign.com>
   5 *
   6 * Configuation settings for the AT91SAM9RLEK board.
   7 *
   8 * SPDX-License-Identifier:     GPL-2.0+
   9 */
  10
  11#ifndef __CONFIG_H
  12#define __CONFIG_H
  13
  14#include <asm/hardware.h>
  15
  16#define CONFIG_SYS_TEXT_BASE            0x21F00000
  17
  18/* ARM asynchronous clock */
  19#define CONFIG_SYS_AT91_SLOW_CLOCK      32768           /* slow clock xtal */
  20#define CONFIG_SYS_AT91_MAIN_CLOCK      12000000        /* main clock xtal */
  21
  22#define CONFIG_AT91SAM9RLEK             1       /* It's an AT91SAM9RLEK Board */
  23
  24#define CONFIG_ARCH_CPU_INIT
  25#define CONFIG_SKIP_LOWLEVEL_INIT
  26
  27#define CONFIG_CMDLINE_TAG              1       /* enable passing of ATAGs */
  28#define CONFIG_SETUP_MEMORY_TAGS        1
  29#define CONFIG_INITRD_TAG               1
  30
  31#define CONFIG_ATMEL_LEGACY
  32
  33/*
  34 * Hardware drivers
  35 */
  36
  37/* LCD */
  38#define LCD_BPP                         LCD_COLOR8
  39#define CONFIG_LCD_LOGO                 1
  40#undef LCD_TEST_PATTERN
  41#define CONFIG_LCD_INFO                 1
  42#define CONFIG_LCD_INFO_BELOW_LOGO      1
  43#define CONFIG_ATMEL_LCD                1
  44#define CONFIG_ATMEL_LCD_RGB565         1
  45/* Let board_init_f handle the framebuffer allocation */
  46#undef CONFIG_FB_ADDR
  47
  48/*
  49 * Command line configuration.
  50 */
  51
  52#define CONFIG_CMD_NAND                 1
  53
  54/* SDRAM */
  55#define CONFIG_NR_DRAM_BANKS            1
  56#define CONFIG_SYS_SDRAM_BASE           ATMEL_BASE_CS1
  57#define CONFIG_SYS_SDRAM_SIZE           0x04000000
  58
  59#define CONFIG_SYS_INIT_SP_ADDR \
  60        (ATMEL_BASE_SRAM + 16 * 1024 - GENERATED_GBL_DATA_SIZE)
  61
  62/* DataFlash */
  63#define CONFIG_ATMEL_DATAFLASH_SPI
  64#define CONFIG_HAS_DATAFLASH                    1
  65#define CONFIG_SYS_MAX_DATAFLASH_BANKS          1
  66#define CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0     0xC0000000      /* CS0 */
  67#define AT91_SPI_CLK                            15000000
  68#define DATAFLASH_TCSS                          (0x1a << 16)
  69#define DATAFLASH_TCHS                          (0x1 << 24)
  70
  71/* NAND flash */
  72#ifdef CONFIG_CMD_NAND
  73#define CONFIG_NAND_ATMEL
  74#define CONFIG_SYS_MAX_NAND_DEVICE              1
  75#define CONFIG_SYS_NAND_BASE                    ATMEL_BASE_CS3
  76#define CONFIG_SYS_NAND_DBW_8                   1
  77/* our ALE is AD21 */
  78#define CONFIG_SYS_NAND_MASK_ALE                (1 << 21)
  79/* our CLE is AD22 */
  80#define CONFIG_SYS_NAND_MASK_CLE                (1 << 22)
  81#define CONFIG_SYS_NAND_ENABLE_PIN              AT91_PIN_PB6
  82#define CONFIG_SYS_NAND_READY_PIN               AT91_PIN_PD17
  83
  84#endif
  85
  86/* Ethernet - not present */
  87
  88/* USB - not supported */
  89
  90#define CONFIG_SYS_LOAD_ADDR                    0x22000000      /* load address */
  91
  92#define CONFIG_SYS_MEMTEST_START                CONFIG_SYS_SDRAM_BASE
  93#define CONFIG_SYS_MEMTEST_END                  0x23e00000
  94
  95#ifdef CONFIG_SYS_USE_DATAFLASH
  96
  97/* bootstrap + u-boot + env + linux in dataflash on CS0 */
  98#define CONFIG_ENV_IS_IN_DATAFLASH      1
  99#define CONFIG_SYS_MONITOR_BASE (CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + 0x8400)
 100#define CONFIG_ENV_OFFSET               0x4200
 101#define CONFIG_ENV_ADDR         (CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + CONFIG_ENV_OFFSET)
 102#define CONFIG_ENV_SIZE         0x4200
 103#define CONFIG_BOOTCOMMAND      "cp.b 0xC0084000 0x22000000 0x210000; bootm"
 104#define CONFIG_BOOTARGS         "console=ttyS0,115200 " \
 105                                "root=/dev/mtdblock0 " \
 106                                "mtdparts=atmel_nand:-(root) "\
 107                                "rw rootfstype=jffs2"
 108
 109#elif CONFIG_SYS_USE_NANDFLASH
 110
 111/* bootstrap + u-boot + env + linux in nandflash */
 112#define CONFIG_ENV_IS_IN_NAND           1
 113#define CONFIG_ENV_OFFSET               0x120000
 114#define CONFIG_ENV_OFFSET_REDUND        0x100000
 115#define CONFIG_ENV_SIZE         0x20000         /* 1 sector = 128 kB */
 116#define CONFIG_BOOTCOMMAND      "nand read 0x22000000 0x200000 0x600000; "      \
 117                                "nand read 0x21000000 0x180000 0x80000; "       \
 118                                "bootz 0x22000000 - 0x21000000"
 119#define CONFIG_BOOTARGS         \
 120                                "console=ttyS0,115200 earlyprintk "                             \
 121                                "mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"          \
 122                                "256K(env),256k(env_redundant),256k(spare),"                    \
 123                                "512k(dtb),6M(kernel)ro,-(rootfs) "                             \
 124                                "rootfstype=ubifs ubi.mtd=7 root=ubi0:rootfs"
 125
 126#else /* CONFIG_SYS_USE_MMC */
 127
 128/* bootstrap + u-boot + env + linux in mmc */
 129#define CONFIG_ENV_IS_IN_FAT
 130#define FAT_ENV_INTERFACE       "mmc"
 131#define FAT_ENV_FILE            "uboot.env"
 132#define FAT_ENV_DEVICE_AND_PART "0"
 133#define CONFIG_ENV_SIZE         0x4000
 134#define CONFIG_BOOTCOMMAND      "fatload mmc 0:1 0x21000000 at91sam9rlek.dtb; " \
 135                                "fatload mmc 0:1 0x22000000 zImage; " \
 136                                "bootz 0x22000000 - 0x21000000"
 137#define CONFIG_BOOTARGS         "console=ttyS0,115200 " \
 138                                "mtdparts=atmel_nand:" \
 139                                "8M(bootstrap/uboot/kernel)ro,-(rootfs) " \
 140                                "root=/dev/mmcblk0p2 rw rootwait"
 141#endif
 142
 143#define CONFIG_SYS_CBSIZE               256
 144#define CONFIG_SYS_MAXARGS              16
 145#define CONFIG_SYS_LONGHELP             1
 146#define CONFIG_CMDLINE_EDITING          1
 147#define CONFIG_AUTO_COMPLETE
 148
 149/*
 150 * Size of malloc() pool
 151 */
 152#define CONFIG_SYS_MALLOC_LEN   ROUND(3 * CONFIG_ENV_SIZE + 128*1024, 0x1000)
 153
 154#endif
 155