mbed library sources. Supersedes mbed-src.
Fork of mbed by
targets/hal/TARGET_ONSEMI/TARGET_NCS36510/flash_map.h
- Committer:
- <>
- Date:
- 2016-09-02
- Revision:
- 144:ef7eb2e8f9f7
- Child:
- 147:30b64687e01f
File content as of revision 144:ef7eb2e8f9f7:
/** ****************************************************************************** * @file flash_map.h * @brief Flash controller HW register map * @internal * @author ON Semiconductor * $Rev: 2686 $ * $Date: 2014-01-23 13:31:54 +0530 (Thu, 23 Jan 2014) $ ****************************************************************************** * @copyright (c) 2012 ON Semiconductor. All rights reserved. * ON Semiconductor is supplying this software for use with ON Semiconductor * processor based microcontrollers only. * * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. * ON SEMICONDUCTOR SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, * INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. * @endinternal * * @ingroup flash * * @details * <p> * Flash controller HW register map description * </p> * */ #ifndef FLASH_MAP_H_ #define FLASH_MAP_H_ #include "architecture.h" /** Flash Control HW Structure Overlay */ typedef struct { union { struct { __I uint32_t FLASH_A_BUSY:1; /**< Busy A */ __I uint32_t FLASH_B_BUSY:1; /**< Busy B */ __I uint32_t FLASH_A_UNLOCK:1; /**< Unlock A */ __I uint32_t FLASH_B_UNLOCK:1; /**< Unlock B */ __I uint32_t FLASH_ERROR:3; /**< 000 No Error, 111 Attempt to access an array while it is busy powering up, 001 Attempt to erase bootloader in the field, 010 Attempt to access array during erase, 100 Attempt to access array during write */ } BITS; __I uint32_t WORD; } STATUS; union { struct { __IO uint32_t FLASHB_PD:1; __IO uint32_t FLASHA_PD:1; __IO uint32_t REMAP:1; __IO uint32_t WR_INT_EN:1; __IO uint32_t ERASE_INT_EN:1; __IO uint32_t ERROR_INT_EN:1; __IO uint32_t WRITE_BLOCK:1; } BITS; __IO uint32_t WORD; } CONTROL; union { struct { __IO uint32_t PAGEERASE:1; /**< Erase a single page */ __IO uint32_t MASSERASE:1; /**< MASS Erase */ } BITS; __IO uint32_t WORD; } COMMAND; __IO uint32_t ADDR; __IO uint32_t UNLOCK1; __IO uint32_t UNLOCKA; __IO uint32_t UNLOCKB; union { struct { __I uint32_t INT_PEND:1; // Interrupt pending __I uint32_t INT_TYPE:3; // Interrupt type } BITS; __I uint32_t WORD; } INT_STATUS; } FlashReg_t, *FlashReg_pt; #endif /* FLASH_MAP_H_ */