Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed-dev by
targets/TARGET_ONSEMI/TARGET_NCS36510/i2c_ipc7208_map.h@149:156823d33999, 2016-10-28 (annotated)
- Committer:
- <>
- Date:
- Fri Oct 28 11:17:30 2016 +0100
- Revision:
- 149:156823d33999
This updates the lib to the mbed lib v128
NOTE: This release includes a restructuring of the file and directory locations and thus some
include paths in your code may need updating accordingly.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
<> | 149:156823d33999 | 1 | /** |
<> | 149:156823d33999 | 2 | ****************************************************************************** |
<> | 149:156823d33999 | 3 | * @file i2c_ipc7208_map.h |
<> | 149:156823d33999 | 4 | * @brief I2C IPC 7208 HW register map |
<> | 149:156823d33999 | 5 | * @internal |
<> | 149:156823d33999 | 6 | * @author ON Semiconductor |
<> | 149:156823d33999 | 7 | * $Rev: 3324 $ |
<> | 149:156823d33999 | 8 | * $Date: 2015-03-27 17:00:28 +0530 (Fri, 27 Mar 2015) $ |
<> | 149:156823d33999 | 9 | ****************************************************************************** |
<> | 149:156823d33999 | 10 | * Copyright 2016 Semiconductor Components Industries LLC (d/b/a ON Semiconductor). |
<> | 149:156823d33999 | 11 | * All rights reserved. This software and/or documentation is licensed by ON Semiconductor |
<> | 149:156823d33999 | 12 | * under limited terms and conditions. The terms and conditions pertaining to the software |
<> | 149:156823d33999 | 13 | * and/or documentation are available at http://www.onsemi.com/site/pdf/ONSEMI_T&C.pdf |
<> | 149:156823d33999 | 14 | * (ON Semiconductor Standard Terms and Conditions of Sale, Section 8 Software) and |
<> | 149:156823d33999 | 15 | * if applicable the software license agreement. Do not use this software and/or |
<> | 149:156823d33999 | 16 | * documentation unless you have carefully read and you agree to the limited terms and |
<> | 149:156823d33999 | 17 | * conditions. By using this software and/or documentation, you agree to the limited |
<> | 149:156823d33999 | 18 | * terms and conditions. |
<> | 149:156823d33999 | 19 | * |
<> | 149:156823d33999 | 20 | * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED |
<> | 149:156823d33999 | 21 | * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF |
<> | 149:156823d33999 | 22 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. |
<> | 149:156823d33999 | 23 | * ON SEMICONDUCTOR SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, |
<> | 149:156823d33999 | 24 | * INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. |
<> | 149:156823d33999 | 25 | * @endinternal |
<> | 149:156823d33999 | 26 | * |
<> | 149:156823d33999 | 27 | * @ingroup i2c_ipc7208 |
<> | 149:156823d33999 | 28 | * |
<> | 149:156823d33999 | 29 | * @details |
<> | 149:156823d33999 | 30 | * <p> |
<> | 149:156823d33999 | 31 | * I2C IPC 7208 HW register map description |
<> | 149:156823d33999 | 32 | * </p> |
<> | 149:156823d33999 | 33 | * |
<> | 149:156823d33999 | 34 | * <h1> Reference document(s) </h1> |
<> | 149:156823d33999 | 35 | * <p> |
<> | 149:156823d33999 | 36 | * <a href="../pdf/IPC7208_I2C_APB_DS_v1P3.pdf" target="_blank"> |
<> | 149:156823d33999 | 37 | * IPC7208 APB I2C Master Design Specification v1.3 </a> |
<> | 149:156823d33999 | 38 | * </p> |
<> | 149:156823d33999 | 39 | */ |
<> | 149:156823d33999 | 40 | |
<> | 149:156823d33999 | 41 | #if defined ( __CC_ARM ) |
<> | 149:156823d33999 | 42 | #pragma anon_unions |
<> | 149:156823d33999 | 43 | #endif |
<> | 149:156823d33999 | 44 | |
<> | 149:156823d33999 | 45 | #ifndef I2C_IPC7208_MAP_H_ |
<> | 149:156823d33999 | 46 | #define I2C_IPC7208_MAP_H_ |
<> | 149:156823d33999 | 47 | |
<> | 149:156823d33999 | 48 | #include "architecture.h" |
<> | 149:156823d33999 | 49 | |
<> | 149:156823d33999 | 50 | /** I2C HW Structure Overlay */ |
<> | 149:156823d33999 | 51 | typedef struct { |
<> | 149:156823d33999 | 52 | union { |
<> | 149:156823d33999 | 53 | struct { |
<> | 149:156823d33999 | 54 | __IO uint32_t CMD_FIFO_EMPTY :1; /**< 1 = Command FIFO is empty , 0 = Command FIFO is empty */ |
<> | 149:156823d33999 | 55 | __IO uint32_t RD_FIFO_NOT_EMPTY :1; /**< 0 = Read data is not ready , 1 = Read data is ready */ |
<> | 149:156823d33999 | 56 | __IO uint32_t I2C_BUS_ERR :1; /**< 0 = No buss error occurred , 1 = buss error */ |
<> | 149:156823d33999 | 57 | __IO uint32_t RD_FIFO_UFL :1; /**< 0 = Read data FIFO is not underflowed , 1 = Read data FIFO is underflowed */ |
<> | 149:156823d33999 | 58 | __IO uint32_t CMD_FIFO_OFL :1;/**< 0 = Command FIFO is not overflowed 1 = Command FIFO is overflowed */ |
<> | 149:156823d33999 | 59 | __IO uint32_t CMD_FIFO_FULL :1; /**< 0 = Command FIFO not full , 1 = Command FIFO full */ |
<> | 149:156823d33999 | 60 | __IO uint32_t PAD :2; /**< Reserved . Always reads back 0. */ |
<> | 149:156823d33999 | 61 | } BITS; |
<> | 149:156823d33999 | 62 | __IO uint32_t WORD; |
<> | 149:156823d33999 | 63 | } STATUS; |
<> | 149:156823d33999 | 64 | __IO uint32_t RD_FIFO_REG;/**< Data from the I2C Slave to be read by the processor. */ |
<> | 149:156823d33999 | 65 | __IO uint32_t CMD_REG; /**< I2C Command Programming interface */ |
<> | 149:156823d33999 | 66 | union { |
<> | 149:156823d33999 | 67 | struct { |
<> | 149:156823d33999 | 68 | __IO uint32_t CMD_FIFO_INT :1; /**< Command FIFO empty interrupt : 0 = disable , 1 = enable */ |
<> | 149:156823d33999 | 69 | __IO uint32_t RD_FIFO_INT :1; /**< Read Data FIFO Not Empty Interrupt : 0 = disable , 1 = enable */ |
<> | 149:156823d33999 | 70 | __IO uint32_t I2C_ERR_INT :1; /**< I2C Error Interrupt : 0 = disable , 1 = enable */ |
<> | 149:156823d33999 | 71 | // __IO uint32_t PAD :4; /**< Reserved. Writes have no effect; Read as 0x00. */ |
<> | 149:156823d33999 | 72 | } BITS; |
<> | 149:156823d33999 | 73 | __IO uint32_t WORD; |
<> | 149:156823d33999 | 74 | } IER; |
<> | 149:156823d33999 | 75 | union { |
<> | 149:156823d33999 | 76 | struct { |
<> | 149:156823d33999 | 77 | __IO uint32_t CD_VAL :5; /**< I2C APB Clock Divider Value (low 5 bits). */ |
<> | 149:156823d33999 | 78 | __IO uint32_t I2C_APB_CD_EN :1; /**< 0 = I2C clock divider disable 1 = I2C clock divider enable */ |
<> | 149:156823d33999 | 79 | __IO uint32_t I2C_CLK_SRC :1; /**< I2C clock source : 0 = external clock , 1 = APB clock */ |
<> | 149:156823d33999 | 80 | __IO uint32_t I2C_MODULE_EN :1; /**< 0 = I2C disable , 1 = I2C enable */ |
<> | 149:156823d33999 | 81 | } BITS; |
<> | 149:156823d33999 | 82 | __IO uint32_t WORD; |
<> | 149:156823d33999 | 83 | } CR; |
<> | 149:156823d33999 | 84 | __IO uint32_t PRE_SCALE_REG; /* I2C APB Clock Divider Value (upper 8 bits). */ |
<> | 149:156823d33999 | 85 | } I2cIpc7208Reg_t, *I2cIpc7208Reg_pt; |
<> | 149:156823d33999 | 86 | |
<> | 149:156823d33999 | 87 | #endif /* I2C_IPC7208_MAP_H_ */ |