blob: 870410645ff5e6233f0b73e89ad38f647a703975 [file] [log] [blame]
Stelian Popfa506a92008-01-31 21:15:53 +00001/*
Stelian Pop4f6c8102008-05-08 20:52:10 +02002 * [origin: Linux kernel include/asm-arm/arch-at91/hardware.h]
Stelian Pop177e8a52008-03-26 19:52:31 +01003 *
4 * Copyright (C) 2003 SAN People
5 * Copyright (C) 2003 ATMEL
Stelian Popfa506a92008-01-31 21:15:53 +00006 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 *
Stelian Popfa506a92008-01-31 21:15:53 +000012 */
Stelian Pop177e8a52008-03-26 19:52:31 +010013
Stelian Popfa506a92008-01-31 21:15:53 +000014#ifndef __ASM_ARCH_HARDWARE_H
15#define __ASM_ARCH_HARDWARE_H
16
17#include <asm/sizes.h>
18
Stelian Pop177e8a52008-03-26 19:52:31 +010019#if defined(CONFIG_AT91RM9200)
20#include <asm/arch/at91rm9200.h>
Nicolas Ferredf486b12009-03-22 14:48:16 +010021#elif defined(CONFIG_AT91SAM9260) || defined(CONFIG_AT91SAM9G20)
Stelian Pop177e8a52008-03-26 19:52:31 +010022#include <asm/arch/at91sam9260.h>
Stelian Pop0176d432008-03-26 18:52:33 +010023#define AT91_BASE_SPI AT91SAM9260_BASE_SPI0
24#define AT91_ID_UHP AT91SAM9260_ID_UHP
25#define AT91_PMC_UHP AT91SAM926x_PMC_UHP
Stelian Pop177e8a52008-03-26 19:52:31 +010026#elif defined(CONFIG_AT91SAM9261)
27#include <asm/arch/at91sam9261.h>
Stelian Popd99a8ff2008-05-08 20:52:22 +020028#define AT91_BASE_SPI AT91SAM9261_BASE_SPI0
29#define AT91_ID_UHP AT91SAM9261_ID_UHP
30#define AT91_PMC_UHP AT91SAM926x_PMC_UHP
Stelian Pop177e8a52008-03-26 19:52:31 +010031#elif defined(CONFIG_AT91SAM9263)
32#include <asm/arch/at91sam9263.h>
Stelian Pop8e429b32008-05-08 18:52:23 +020033#define AT91_BASE_SPI AT91SAM9263_BASE_SPI0
34#define AT91_ID_UHP AT91SAM9263_ID_UHP
35#define AT91_PMC_UHP AT91SAM926x_PMC_UHP
Stelian Pop177e8a52008-03-26 19:52:31 +010036#elif defined(CONFIG_AT91SAM9RL)
37#include <asm/arch/at91sam9rl.h>
Stelian Pop2118ebb2008-05-08 18:52:25 +020038#define AT91_BASE_SPI AT91SAM9RL_BASE_SPI
39#define AT91_ID_UHP AT91SAM9RL_ID_UHP
Stelian Pop177e8a52008-03-26 19:52:31 +010040#elif defined(CONFIG_AT91CAP9)
41#include <asm/arch/at91cap9.h>
Stelian Pop177e8a52008-03-26 19:52:31 +010042#define AT91_BASE_SPI AT91CAP9_BASE_SPI0
43#define AT91_ID_UHP AT91CAP9_ID_UHP
44#define AT91_PMC_UHP AT91CAP9_PMC_UHP
45#elif defined(CONFIG_AT91X40)
46#include <asm/arch/at91x40.h>
47#else
48#error "Unsupported AT91 processor"
49#endif
Stelian Popfa506a92008-01-31 21:15:53 +000050
Ilko Ilievf0a2c7b2009-04-16 21:30:48 +020051/* External Memory Map */
52#define AT91_CHIPSELECT_0 0x10000000
53#define AT91_CHIPSELECT_1 0x20000000
54#define AT91_CHIPSELECT_2 0x30000000
55#define AT91_CHIPSELECT_3 0x40000000
56#define AT91_CHIPSELECT_4 0x50000000
57#define AT91_CHIPSELECT_5 0x60000000
58#define AT91_CHIPSELECT_6 0x70000000
59#define AT91_CHIPSELECT_7 0x80000000
60
61/* SDRAM */
62#ifdef CONFIG_DRAM_BASE
63#define AT91_SDRAM_BASE CONFIG_DRAM_BASE
64#else
65#define AT91_SDRAM_BASE AT91_CHIPSELECT_1
66#endif
67
Jean-Christophe PLAGNIOL-VILLARDdc39ae92009-04-16 21:30:44 +020068/* Clocks */
69#define AT91_SLOW_CLOCK 32768 /* slow clock */
70
Stelian Popfa506a92008-01-31 21:15:53 +000071#endif