]> sourceware.org Git - newlib-cygwin.git/blob - libgloss/bfin/include/defBF504F.h
libgloss: bfin: add support for bf50x processors
[newlib-cygwin.git] / libgloss / bfin / include / defBF504F.h
1 /*
2 * The authors hereby grant permission to use, copy, modify, distribute,
3 * and license this software and its documentation for any purpose, provided
4 * that existing copyright notices are retained in all copies and that this
5 * notice is included verbatim in any distributions. No written agreement,
6 * license, or royalty fee is required for any of the authorized uses.
7 * Modifications to this software may be copyrighted by their authors
8 * and need not follow the licensing terms described here, provided that
9 * the new terms are clearly indicated on the first page of each file where
10 * they apply.
11 */
12
13 /*
14 ** This include file contains a list of macro "defines" to enable programs
15 ** to use symbolic names for register-access and bit-manipulation for the
16 ** ADSP-BF504F processor.
17 **
18 ** Copyright (C) 2009 Analog Devices Inc., All Rights Reserved.
19 */
20
21 #ifndef _DEF_BF504F_H
22 #define _DEF_BF504F_H
23
24 #ifdef _MISRA_RULES
25 #pragma diag(push)
26 #pragma diag(suppress:misra_rule_5_1:"ADI header disables rule 5.1 which bars use of long identifiers (>31 chars).")
27 #endif /* _MISRA_RULES */
28
29 /* Include all Core registers and bit definitions */
30 #include <def_LPBlackfin.h>
31
32 /* Include defBF50x_base.h for the set of #defines that are
33 ** common to all ADSP-BF50x processors
34 */
35 #include <defBF50x_base.h>
36
37 /* Define the set of macros that are specific to the ADSP-BF504F processor */
38
39
40 /* Flash commands */
41 #define FLASH_CMD_BLOCK_LOCK_CONFIRM 0x01
42 #define FLASH_CMD_SET_CONFIG_CONFIRM 0x03
43 #define FLASH_CMD_ALT_PROGRAM_SETUP 0x10
44 #define FLASH_CMD_BLOCK_ERASE_SETUP 0x20
45 #define FLASH_CMD_BLOCK_LOCKDOWN_CONFIRM 0x2F
46 #define FLASH_CMD_ENH_FACT_PROG_SETUP 0x30
47 #define FLASH_CMD_DOUBLE_WORD_PROG_SETUP 0x35
48 #define FLASH_CMD_PROGRAM_SETUP 0x40
49 #define FLASH_CMD_CLEAR_STATUS 0x50
50 #define FLASH_CMD_QUAD_WORD_PROG_SETUP 0x56
51 #define FLASH_CMD_BLOCK_LOCK_SETUP 0x60
52 #define FLASH_CMD_BLOCK_UNLOCK_SETUP 0x60
53 #define FLASH_CMD_BLOCK_LOCKDOWN_SETUP 0x60
54 #define FLASH_CMD_SET_CONFIG_SETUP 0x60
55 #define FLASH_CMD_READ_STATUS 0x70
56 #define FLASH_CMD_QUAD_ENH_PROG_SETUP 0x75
57 #define FLASH_CMD_READ_ELECTRONIC_SIG 0x90
58 #define FLASH_CMD_READ_CFI_QUERY 0x98
59 #define FLASH_CMD_PROGRAM_SUSPEND 0xB0
60 #define FLASH_CMD_ERASE_SUSPEND 0xB0
61 #define FLASH_CMD_PROTECTION_REG_PROGRAM 0xC0
62 #define FLASH_CMD_PROGRAM_RESUME 0xD0
63 #define FLASH_CMD_ERASE_RESUME 0xD0
64 #define FLASH_CMD_BLOCK_ERASE_CONFIRM 0xD0
65 #define FLASH_CMD_BLOCK_UNLOCK_CONFIRM 0xD0
66 #define FLASH_CMD_ENH_FACT_PROG_CONFIRM 0xD0
67 #define FLASH_CMD_READ_ARRAY 0xFF
68
69 /* Bit definitions for Flash Configuration Register */
70 #define FLASH_CR_ASYNC_READ 0x8000
71 #define FLASH_CR_XLAT_5 0x2800
72 #define FLASH_CR_XLAT_4 0x2000
73 #define FLASH_CR_XLAT_3 0x1800
74 #define FLASH_CR_XLAT_2 0x1000
75 #define FLASH_CR_WAIT_HIGH 0x0400
76 #define FLASH_CR_DATA_HOLD 0x0200
77 #define FLASH_CR_WAIT_ONE 0x0100
78 #define FLASH_CR_BURST_SEQ 0x0080
79 #define FLASH_CR_CLK_RISE 0x0040
80 #define FLASH_CR_WRAP_DIS 0x0008
81 #define FLASH_CR_BURST_CONT 0x0007
82 #define FLASH_CR_BURST_16 0x0003
83 #define FLASH_CR_BURST_8 0x0002
84 #define FLASH_CR_BURST_4 0x0001
85
86 /* Bit definitions for Flash Status Register */
87 #define FLASH_SR_PRG_ERASE_READY 0x0080
88 #define FLASH_SR_ERASE_SUSPENDED 0x0040
89 #define FLASH_SR_ERASE_ERROR 0x0020
90 #define FLASH_SR_PRG_ERROR 0x0010
91 #define FLASH_SR_VPP_INVALID_ABORT 0x0008
92 #define FLASH_SR_PRG_SUSPENDED 0x0004
93 #define FLASH_SR_BLK_PROT_ABORT 0x0002
94 #define FLASH_SR_BNK_WRITE 0x0001
95
96 #ifdef _MISRA_RULES
97 #pragma diag(pop)
98 #endif /* _MISRA_RULES */
99
100 #endif /* _DEF_BF504F_H */
This page took 0.039841 seconds and 5 git commands to generate.