summaryrefslogtreecommitdiff
path: root/boards/at91sam9rl-ek/at91sam9rl64/chip.h
blob: dcc7e1255b95d8176dac631f0248db954370eb95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
/* ----------------------------------------------------------------------------
 *         ATMEL Microcontroller Software Support 
 * ----------------------------------------------------------------------------
 * Copyright (c) 2008, Atmel Corporation
 *
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * - Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the disclaimer below.
 *
 * Atmel's name may not be used to endorse or promote products derived from
 * this software without specific prior written permission.
 *
 * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
 * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
 * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 * ----------------------------------------------------------------------------
 */
 
//------------------------------------------------------------------------------
/// \unit
/// !Purpose
///
/// Definition of AT91SAM9RL64 characteristics and features
///
/// !Usage
/// -# For ARM core feature, see "AT91SAM9RL64 - ARM core features".
/// -# For IP features, see "AT91SAM9RL64 - IP features".
/// -# For misc, see "AT91SAM9RL64 - Misc".
//------------------------------------------------------------------------------
 
#ifndef CHIP_H 
#define CHIP_H

//------------------------------------------------------------------------------
//         Headers
//------------------------------------------------------------------------------

//------------------------------------------------------------------------------
//         Definitions
//------------------------------------------------------------------------------

//------------------------------------------------------------------------------
/// \page "AT91SAM9RL64 - ARM core features"
/// This page lists several characteristics related to the ARM core
///

//ARM core features

/// ARM core definition.
#define arm926ej_s

/// family definition.
#define at91sam9rl

/// temporary define, to be removed
#define CP15_PRESENT

//------------------------------------------------------------------------------
/// \page "AT91SAM9RL64 - IP features"
/// This page lists several characteristics related to the embedded IP
///

//IP FEATURES

// DMA channels number
#define CHIP_DMA_CHANNEL_NUM   2

/// Indicates chip has an UDP High Speed. 
#define CHIP_USB_UDPHS 

/// Indicates chip has an internal pull-up. 
#define CHIP_USB_PULLUP_INTERNAL 

/// Number of USB endpoints 
#define CHIP_USB_NUMENDPOINTS 7 

/// Endpoints max paxcket size 
#define CHIP_USB_ENDPOINTS_MAXPACKETSIZE(i) \
   ((i == 0) ? 64 : \
   ((i == 1) ? 1024 : \
   ((i == 2) ? 1024 : \
   ((i == 3) ? 1024 : \
   ((i == 4) ? 1024 : \
   ((i == 5) ? 1024 : \
   ((i == 6) ? 1024 : 0 )))))))

/// Endpoints Number of Bank 
#define CHIP_USB_ENDPOINTS_BANKS(i) \
   ((i == 0) ? 1 : \
   ((i == 1) ? 2 : \
   ((i == 2) ? 2 : \
   ((i == 3) ? 3 : \
   ((i == 4) ? 3 : \
   ((i == 5) ? 3 : \
   ((i == 6) ? 3 : 0 )))))))

/// Endpoints max paxcket size 
#define CHIP_USB_ENDPOINTS_DMA(i) \
   ((i == 1) ? 1 : \
   ((i == 2) ? 1 : \
   ((i == 3) ? 1 : \
   ((i == 4) ? 1 : \
   ((i == 5) ? 1 : \
   ((i == 6) ? 1 : 0 ))))))

//------------------------------------------------------------------------------
/// \page "AT91SAM9RL64 - Misc "
/// This page lists misc features
///

//Misc 

#endif //#ifndef CHIP_H

personal git repositories of Harald Welte. Your mileage may vary