newlib/libgloss/bfin/include/defBF506F.h

103 lines
3.8 KiB
C

/*
* The authors hereby grant permission to use, copy, modify, distribute,
* and license this software and its documentation for any purpose, provided
* that existing copyright notices are retained in all copies and that this
* notice is included verbatim in any distributions. No written agreement,
* license, or royalty fee is required for any of the authorized uses.
* Modifications to this software may be copyrighted by their authors
* and need not follow the licensing terms described here, provided that
* the new terms are clearly indicated on the first page of each file where
* they apply.
*/
/*
** This include file contains a list of macro "defines" to enable programs
** to use symbolic names for register-access and bit-manipulation for the
** ADSP-BF506F processor.
**
** Copyright (C) 2009 Analog Devices Inc., All Rights Reserved.
*/
#ifndef _DEF_BF506F_H
#define _DEF_BF506F_H
#ifdef _MISRA_RULES
#pragma diag(push)
#pragma diag(suppress:misra_rule_5_1:"ADI header disables rule 5.1 which bars use of long identifiers (>31 chars).")
#endif /* _MISRA_RULES */
/* Include all Core registers and bit definitions */
#include <def_LPBlackfin.h>
/* Include defBF50x_base.h for the set of #defines that are
** common to all ADSP-BF50x processors
*/
#include <defBF50x_base.h>
/*
** Define the set of macros that are specific to the ADSP-BF506F processor
*/
/* Flash commands */
#define FLASH_CMD_BLOCK_LOCK_CONFIRM 0x01
#define FLASH_CMD_SET_CONFIG_CONFIRM 0x03
#define FLASH_CMD_ALT_PROGRAM_SETUP 0x10
#define FLASH_CMD_BLOCK_ERASE_SETUP 0x20
#define FLASH_CMD_BLOCK_LOCKDOWN_CONFIRM 0x2F
#define FLASH_CMD_ENH_FACT_PROG_SETUP 0x30
#define FLASH_CMD_DOUBLE_WORD_PROG_SETUP 0x35
#define FLASH_CMD_PROGRAM_SETUP 0x40
#define FLASH_CMD_CLEAR_STATUS 0x50
#define FLASH_CMD_QUAD_WORD_PROG_SETUP 0x56
#define FLASH_CMD_BLOCK_LOCK_SETUP 0x60
#define FLASH_CMD_BLOCK_UNLOCK_SETUP 0x60
#define FLASH_CMD_BLOCK_LOCKDOWN_SETUP 0x60
#define FLASH_CMD_SET_CONFIG_SETUP 0x60
#define FLASH_CMD_READ_STATUS 0x70
#define FLASH_CMD_QUAD_ENH_PROG_SETUP 0x75
#define FLASH_CMD_READ_ELECTRONIC_SIG 0x90
#define FLASH_CMD_READ_CFI_QUERY 0x98
#define FLASH_CMD_PROGRAM_SUSPEND 0xB0
#define FLASH_CMD_ERASE_SUSPEND 0xB0
#define FLASH_CMD_PROTECTION_REG_PROGRAM 0xC0
#define FLASH_CMD_PROGRAM_RESUME 0xD0
#define FLASH_CMD_ERASE_RESUME 0xD0
#define FLASH_CMD_BLOCK_ERASE_CONFIRM 0xD0
#define FLASH_CMD_BLOCK_UNLOCK_CONFIRM 0xD0
#define FLASH_CMD_ENH_FACT_PROG_CONFIRM 0xD0
#define FLASH_CMD_READ_ARRAY 0xFF
/* Bit definitions for Flash Configuration Register */
#define FLASH_CR_ASYNC_READ 0x8000
#define FLASH_CR_XLAT_5 0x2800
#define FLASH_CR_XLAT_4 0x2000
#define FLASH_CR_XLAT_3 0x1800
#define FLASH_CR_XLAT_2 0x1000
#define FLASH_CR_WAIT_HIGH 0x0400
#define FLASH_CR_DATA_HOLD 0x0200
#define FLASH_CR_WAIT_ONE 0x0100
#define FLASH_CR_BURST_SEQ 0x0080
#define FLASH_CR_CLK_RISE 0x0040
#define FLASH_CR_WRAP_DIS 0x0008
#define FLASH_CR_BURST_CONT 0x0007
#define FLASH_CR_BURST_16 0x0003
#define FLASH_CR_BURST_8 0x0002
#define FLASH_CR_BURST_4 0x0001
/* Bit definitions for Flash Status Register */
#define FLASH_SR_PRG_ERASE_READY 0x0080
#define FLASH_SR_ERASE_SUSPENDED 0x0040
#define FLASH_SR_ERASE_ERROR 0x0020
#define FLASH_SR_PRG_ERROR 0x0010
#define FLASH_SR_VPP_INVALID_ABORT 0x0008
#define FLASH_SR_PRG_SUSPENDED 0x0004
#define FLASH_SR_BLK_PROT_ABORT 0x0002
#define FLASH_SR_BNK_WRITE 0x0001
#ifdef _MISRA_RULES
#pragma diag(pop)
#endif /* _MISRA_RULES */
#endif /* _DEF_BF506F_H */