]>
Commit | Line | Data |
---|---|---|
5da627a4 WD |
1 | /* |
2 | * (C) Copyright 2003 | |
3 | * Steven Scholz, imc Measurement & Control, steven.scholz@imc-berlin.de | |
4 | * | |
5 | * (C) Copyright 2002 | |
6 | * Rich Ireland, Enterasys Networks, rireland@enterasys.com. | |
7 | * | |
1a459660 | 8 | * SPDX-License-Identifier: GPL-2.0+ |
5da627a4 WD |
9 | */ |
10 | ||
11 | #ifndef _ACEX1K_H_ | |
12 | #define _ACEX1K_H_ | |
13 | ||
14 | #include <altera.h> | |
15 | ||
e6a857da WD |
16 | extern int ACEX1K_load(Altera_desc *desc, const void *image, size_t size); |
17 | extern int ACEX1K_dump(Altera_desc *desc, const void *buf, size_t bsize); | |
18 | extern int ACEX1K_info(Altera_desc *desc); | |
5da627a4 | 19 | |
e6a857da WD |
20 | extern int CYC2_load(Altera_desc *desc, const void *image, size_t size); |
21 | extern int CYC2_dump(Altera_desc *desc, const void *buf, size_t bsize); | |
22 | extern int CYC2_info(Altera_desc *desc); | |
f0ff4692 | 23 | |
5da627a4 WD |
24 | /* Slave Serial Implementation function table */ |
25 | typedef struct { | |
26 | Altera_pre_fn pre; | |
27 | Altera_config_fn config; | |
28 | Altera_clk_fn clk; | |
29 | Altera_status_fn status; | |
30 | Altera_done_fn done; | |
31 | Altera_data_fn data; | |
32 | Altera_abort_fn abort; | |
33 | Altera_post_fn post; | |
5da627a4 WD |
34 | } Altera_ACEX1K_Passive_Serial_fns; |
35 | ||
f0ff4692 SR |
36 | /* Slave Serial Implementation function table */ |
37 | typedef struct { | |
38 | Altera_pre_fn pre; | |
39 | Altera_config_fn config; | |
40 | Altera_status_fn status; | |
41 | Altera_done_fn done; | |
42 | Altera_write_fn write; | |
43 | Altera_abort_fn abort; | |
44 | Altera_post_fn post; | |
f0ff4692 SR |
45 | } Altera_CYC2_Passive_Serial_fns; |
46 | ||
5da627a4 WD |
47 | /* Device Image Sizes |
48 | *********************************************************************/ | |
49 | /* ACEX1K */ | |
50 | /* FIXME: Which size do we mean? | |
51 | * Datasheet says 1337000/8=167125Bytes, | |
52 | * Filesize of an *.rbf file is 166965 Bytes | |
53 | */ | |
54 | #if 0 | |
53677ef1 | 55 | #define Altera_EP1K100_SIZE 1337000/8 /* 167125 Bytes */ |
5da627a4 | 56 | #endif |
53677ef1 | 57 | #define Altera_EP1K100_SIZE (166965*8) |
5da627a4 | 58 | |
b64b8a0b AS |
59 | #define Altera_EP2C8_SIZE 247942 |
60 | #define Altera_EP2C20_SIZE 586562 | |
f0ff4692 | 61 | #define Altera_EP2C35_SIZE 883905 |
20a9f8e2 | 62 | #define Altera_EP3C5_SIZE 368011 /* .rbf size in bytes */ |
f0ff4692 | 63 | |
5da627a4 WD |
64 | /* Descriptor Macros |
65 | *********************************************************************/ | |
66 | /* ACEX1K devices */ | |
67 | #define Altera_EP1K100_DESC(iface, fn_table, cookie) \ | |
68 | { Altera_ACEX1K, iface, Altera_EP1K100_SIZE, fn_table, cookie } | |
69 | ||
70 | #endif /* _ACEX1K_H_ */ |