mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Wed Feb 20 22:31:08 2019 +0000
Revision:
189:f392fc9709a3
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 189:f392fc9709a3 1 /**
AnnaBridge 189:f392fc9709a3 2 ******************************************************************************
AnnaBridge 189:f392fc9709a3 3 * @file stm32l4xx_hal_gfxmmu.h
AnnaBridge 189:f392fc9709a3 4 * @author MCD Application Team
AnnaBridge 189:f392fc9709a3 5 * @brief Header file of GFXMMU HAL module.
AnnaBridge 189:f392fc9709a3 6 ******************************************************************************
AnnaBridge 189:f392fc9709a3 7 * @attention
AnnaBridge 189:f392fc9709a3 8 *
AnnaBridge 189:f392fc9709a3 9 * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
AnnaBridge 189:f392fc9709a3 10 *
AnnaBridge 189:f392fc9709a3 11 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 189:f392fc9709a3 12 * are permitted provided that the following conditions are met:
AnnaBridge 189:f392fc9709a3 13 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 189:f392fc9709a3 14 * this list of conditions and the following disclaimer.
AnnaBridge 189:f392fc9709a3 15 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 189:f392fc9709a3 16 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 189:f392fc9709a3 17 * and/or other materials provided with the distribution.
AnnaBridge 189:f392fc9709a3 18 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 189:f392fc9709a3 19 * may be used to endorse or promote products derived from this software
AnnaBridge 189:f392fc9709a3 20 * without specific prior written permission.
AnnaBridge 189:f392fc9709a3 21 *
AnnaBridge 189:f392fc9709a3 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 189:f392fc9709a3 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 189:f392fc9709a3 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 189:f392fc9709a3 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 189:f392fc9709a3 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 189:f392fc9709a3 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 189:f392fc9709a3 28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 189:f392fc9709a3 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 189:f392fc9709a3 30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 189:f392fc9709a3 31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 189:f392fc9709a3 32 *
AnnaBridge 189:f392fc9709a3 33 ******************************************************************************
AnnaBridge 189:f392fc9709a3 34 */
AnnaBridge 189:f392fc9709a3 35
AnnaBridge 189:f392fc9709a3 36 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 189:f392fc9709a3 37 #ifndef __STM32L4xx_HAL_GFXMMU_H
AnnaBridge 189:f392fc9709a3 38 #define __STM32L4xx_HAL_GFXMMU_H
AnnaBridge 189:f392fc9709a3 39
AnnaBridge 189:f392fc9709a3 40 #ifdef __cplusplus
AnnaBridge 189:f392fc9709a3 41 extern "C" {
AnnaBridge 189:f392fc9709a3 42 #endif
AnnaBridge 189:f392fc9709a3 43
AnnaBridge 189:f392fc9709a3 44 /* Includes ------------------------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 45 #include "stm32l4xx_hal_def.h"
AnnaBridge 189:f392fc9709a3 46
AnnaBridge 189:f392fc9709a3 47 #if defined(GFXMMU)
AnnaBridge 189:f392fc9709a3 48
AnnaBridge 189:f392fc9709a3 49 /** @addtogroup STM32L4xx_HAL_Driver
AnnaBridge 189:f392fc9709a3 50 * @{
AnnaBridge 189:f392fc9709a3 51 */
AnnaBridge 189:f392fc9709a3 52
AnnaBridge 189:f392fc9709a3 53 /** @addtogroup GFXMMU
AnnaBridge 189:f392fc9709a3 54 * @{
AnnaBridge 189:f392fc9709a3 55 */
AnnaBridge 189:f392fc9709a3 56
AnnaBridge 189:f392fc9709a3 57 /* Exported types ------------------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 58 /** @defgroup GFXMMU_Exported_Types GFXMMU Exported Types
AnnaBridge 189:f392fc9709a3 59 * @{
AnnaBridge 189:f392fc9709a3 60 */
AnnaBridge 189:f392fc9709a3 61
AnnaBridge 189:f392fc9709a3 62 /**
AnnaBridge 189:f392fc9709a3 63 * @brief HAL GFXMMU states definition
AnnaBridge 189:f392fc9709a3 64 */
AnnaBridge 189:f392fc9709a3 65 typedef enum
AnnaBridge 189:f392fc9709a3 66 {
AnnaBridge 189:f392fc9709a3 67 HAL_GFXMMU_STATE_RESET = 0x00U, /*!< GFXMMU not initialized */
AnnaBridge 189:f392fc9709a3 68 HAL_GFXMMU_STATE_READY = 0x01U, /*!< GFXMMU initialized and ready for use */
AnnaBridge 189:f392fc9709a3 69 }HAL_GFXMMU_StateTypeDef;
AnnaBridge 189:f392fc9709a3 70
AnnaBridge 189:f392fc9709a3 71 /**
AnnaBridge 189:f392fc9709a3 72 * @brief GFXMMU buffers structure definition
AnnaBridge 189:f392fc9709a3 73 */
AnnaBridge 189:f392fc9709a3 74 typedef struct
AnnaBridge 189:f392fc9709a3 75 {
AnnaBridge 189:f392fc9709a3 76 uint32_t Buf0Address; /*!< Physical address of buffer 0. */
AnnaBridge 189:f392fc9709a3 77 uint32_t Buf1Address; /*!< Physical address of buffer 1. */
AnnaBridge 189:f392fc9709a3 78 uint32_t Buf2Address; /*!< Physical address of buffer 2. */
AnnaBridge 189:f392fc9709a3 79 uint32_t Buf3Address; /*!< Physical address of buffer 3. */
AnnaBridge 189:f392fc9709a3 80 }GFXMMU_BuffersTypeDef;
AnnaBridge 189:f392fc9709a3 81
AnnaBridge 189:f392fc9709a3 82 /**
AnnaBridge 189:f392fc9709a3 83 * @brief GFXMMU interrupts structure definition
AnnaBridge 189:f392fc9709a3 84 */
AnnaBridge 189:f392fc9709a3 85 typedef struct
AnnaBridge 189:f392fc9709a3 86 {
AnnaBridge 189:f392fc9709a3 87 FunctionalState Activation; /*!< Interrupts enable/disable */
AnnaBridge 189:f392fc9709a3 88 uint32_t UsedInterrupts; /*!< Interrupts used.
AnnaBridge 189:f392fc9709a3 89 This parameter can be a values combination of @ref GFXMMU_Interrupts.
AnnaBridge 189:f392fc9709a3 90 @note: Usefull only when interrupts are enabled. */
AnnaBridge 189:f392fc9709a3 91 }GFXMMU_InterruptsTypeDef;
AnnaBridge 189:f392fc9709a3 92
AnnaBridge 189:f392fc9709a3 93 /**
AnnaBridge 189:f392fc9709a3 94 * @brief GFXMMU init structure definition
AnnaBridge 189:f392fc9709a3 95 */
AnnaBridge 189:f392fc9709a3 96 typedef struct
AnnaBridge 189:f392fc9709a3 97 {
AnnaBridge 189:f392fc9709a3 98 uint32_t BlocksPerLine; /*!< Number of blocks of 16 bytes per line.
AnnaBridge 189:f392fc9709a3 99 This parameter can be a value of @ref GFXMMU_BlocksPerLine. */
AnnaBridge 189:f392fc9709a3 100 uint32_t DefaultValue; /*!< Value returned when virtual memory location not physically mapped. */
AnnaBridge 189:f392fc9709a3 101 GFXMMU_BuffersTypeDef Buffers; /*!< Physical buffers addresses. */
AnnaBridge 189:f392fc9709a3 102 GFXMMU_InterruptsTypeDef Interrupts; /*!< Interrupts parameters. */
AnnaBridge 189:f392fc9709a3 103 }GFXMMU_InitTypeDef;
AnnaBridge 189:f392fc9709a3 104
AnnaBridge 189:f392fc9709a3 105 /**
AnnaBridge 189:f392fc9709a3 106 * @brief GFXMMU handle structure definition
AnnaBridge 189:f392fc9709a3 107 */
AnnaBridge 189:f392fc9709a3 108 typedef struct
AnnaBridge 189:f392fc9709a3 109 {
AnnaBridge 189:f392fc9709a3 110 GFXMMU_TypeDef *Instance; /*!< GFXMMU instance */
AnnaBridge 189:f392fc9709a3 111 GFXMMU_InitTypeDef Init; /*!< GFXMMU init parameters */
AnnaBridge 189:f392fc9709a3 112 HAL_GFXMMU_StateTypeDef State; /*!< GFXMMU state */
AnnaBridge 189:f392fc9709a3 113 __IO uint32_t ErrorCode; /*!< GFXMMU error code */
AnnaBridge 189:f392fc9709a3 114 }GFXMMU_HandleTypeDef;
AnnaBridge 189:f392fc9709a3 115
AnnaBridge 189:f392fc9709a3 116 /**
AnnaBridge 189:f392fc9709a3 117 * @brief GFXMMU LUT line structure definition
AnnaBridge 189:f392fc9709a3 118 */
AnnaBridge 189:f392fc9709a3 119 typedef struct
AnnaBridge 189:f392fc9709a3 120 {
AnnaBridge 189:f392fc9709a3 121 uint32_t LineNumber; /*!< LUT line number.
AnnaBridge 189:f392fc9709a3 122 This parameter must be a number between Min_Data = 0 and Max_Data = 1023. */
AnnaBridge 189:f392fc9709a3 123 uint32_t LineStatus; /*!< LUT line enable/disable.
AnnaBridge 189:f392fc9709a3 124 This parameter can be a value of @ref GFXMMU_LutLineStatus. */
AnnaBridge 189:f392fc9709a3 125 uint32_t FirstVisibleBlock; /*!< First visible block on this line.
AnnaBridge 189:f392fc9709a3 126 This parameter must be a number between Min_Data = 0 and Max_Data = 255. */
AnnaBridge 189:f392fc9709a3 127 uint32_t LastVisibleBlock; /*!< Last visible block on this line.
AnnaBridge 189:f392fc9709a3 128 This parameter must be a number between Min_Data = 0 and Max_Data = 255. */
AnnaBridge 189:f392fc9709a3 129 int32_t LineOffset; /*!< Offset of block 0 of the current line in physical buffer.
AnnaBridge 189:f392fc9709a3 130 This parameter must be a number between Min_Data = -4080 and Max_Data = 4190208.
AnnaBridge 189:f392fc9709a3 131 @note: Line offset has to be computed with the following formula:
AnnaBridge 189:f392fc9709a3 132 LineOffset = [(Blocks already used) - (1st visible block)]*BlockSize. */
AnnaBridge 189:f392fc9709a3 133 }GFXMMU_LutLineTypeDef;
AnnaBridge 189:f392fc9709a3 134
AnnaBridge 189:f392fc9709a3 135 /**
AnnaBridge 189:f392fc9709a3 136 * @}
AnnaBridge 189:f392fc9709a3 137 */
AnnaBridge 189:f392fc9709a3 138 /* End of exported types -----------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 139
AnnaBridge 189:f392fc9709a3 140 /* Exported constants --------------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 141 /** @defgroup GFXMMU_Exported_Constants GFXMMU Exported Constants
AnnaBridge 189:f392fc9709a3 142 * @{
AnnaBridge 189:f392fc9709a3 143 */
AnnaBridge 189:f392fc9709a3 144
AnnaBridge 189:f392fc9709a3 145 /** @defgroup GFXMMU_BlocksPerLine GFXMMU blocks per line
AnnaBridge 189:f392fc9709a3 146 * @{
AnnaBridge 189:f392fc9709a3 147 */
AnnaBridge 189:f392fc9709a3 148 #define GFXMMU_256BLOCKS 0x00000000U /*!< 256 blocks of 16 bytes per line */
AnnaBridge 189:f392fc9709a3 149 #define GFXMMU_192BLOCKS GFXMMU_CR_192BM /*!< 192 blocks of 16 bytes per line */
AnnaBridge 189:f392fc9709a3 150 /**
AnnaBridge 189:f392fc9709a3 151 * @}
AnnaBridge 189:f392fc9709a3 152 */
AnnaBridge 189:f392fc9709a3 153
AnnaBridge 189:f392fc9709a3 154 /** @defgroup GFXMMU_Interrupts GFXMMU interrupts
AnnaBridge 189:f392fc9709a3 155 * @{
AnnaBridge 189:f392fc9709a3 156 */
AnnaBridge 189:f392fc9709a3 157 #define GFXMMU_AHB_MASTER_ERROR_IT GFXMMU_CR_AMEIE /*!< AHB master error interrupt */
AnnaBridge 189:f392fc9709a3 158 #define GFXMMU_BUFFER0_OVERFLOW_IT GFXMMU_CR_B0OIE /*!< Buffer 0 overflow interrupt */
AnnaBridge 189:f392fc9709a3 159 #define GFXMMU_BUFFER1_OVERFLOW_IT GFXMMU_CR_B1OIE /*!< Buffer 1 overflow interrupt */
AnnaBridge 189:f392fc9709a3 160 #define GFXMMU_BUFFER2_OVERFLOW_IT GFXMMU_CR_B2OIE /*!< Buffer 2 overflow interrupt */
AnnaBridge 189:f392fc9709a3 161 #define GFXMMU_BUFFER3_OVERFLOW_IT GFXMMU_CR_B3OIE /*!< Buffer 3 overflow interrupt */
AnnaBridge 189:f392fc9709a3 162 /**
AnnaBridge 189:f392fc9709a3 163 * @}
AnnaBridge 189:f392fc9709a3 164 */
AnnaBridge 189:f392fc9709a3 165
AnnaBridge 189:f392fc9709a3 166 /** @defgroup GFXMMU_Error_Code GFXMMU Error Code
AnnaBridge 189:f392fc9709a3 167 * @{
AnnaBridge 189:f392fc9709a3 168 */
AnnaBridge 189:f392fc9709a3 169 #define GFXMMU_ERROR_NONE 0x00000000U /*!< No error */
AnnaBridge 189:f392fc9709a3 170 #define GFXMMU_ERROR_BUFFER0_OVERFLOW GFXMMU_SR_B0OF /*!< Buffer 0 overflow */
AnnaBridge 189:f392fc9709a3 171 #define GFXMMU_ERROR_BUFFER1_OVERFLOW GFXMMU_SR_B1OF /*!< Buffer 1 overflow */
AnnaBridge 189:f392fc9709a3 172 #define GFXMMU_ERROR_BUFFER2_OVERFLOW GFXMMU_SR_B2OF /*!< Buffer 2 overflow */
AnnaBridge 189:f392fc9709a3 173 #define GFXMMU_ERROR_BUFFER3_OVERFLOW GFXMMU_SR_B3OF /*!< Buffer 3 overflow */
AnnaBridge 189:f392fc9709a3 174 #define GFXMMU_ERROR_AHB_MASTER GFXMMU_SR_AMEF /*!< AHB master error */
AnnaBridge 189:f392fc9709a3 175 /**
AnnaBridge 189:f392fc9709a3 176 * @}
AnnaBridge 189:f392fc9709a3 177 */
AnnaBridge 189:f392fc9709a3 178
AnnaBridge 189:f392fc9709a3 179 /** @defgroup GFXMMU_LutLineStatus GFXMMU LUT line status
AnnaBridge 189:f392fc9709a3 180 * @{
AnnaBridge 189:f392fc9709a3 181 */
AnnaBridge 189:f392fc9709a3 182 #define GFXMMU_LUT_LINE_DISABLE 0x00000000U /*!< LUT line disabled */
AnnaBridge 189:f392fc9709a3 183 #define GFXMMU_LUT_LINE_ENABLE GFXMMU_LUTxL_EN /*!< LUT line enabled */
AnnaBridge 189:f392fc9709a3 184 /**
AnnaBridge 189:f392fc9709a3 185 * @}
AnnaBridge 189:f392fc9709a3 186 */
AnnaBridge 189:f392fc9709a3 187
AnnaBridge 189:f392fc9709a3 188 /**
AnnaBridge 189:f392fc9709a3 189 * @}
AnnaBridge 189:f392fc9709a3 190 */
AnnaBridge 189:f392fc9709a3 191 /* End of exported constants -------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 192
AnnaBridge 189:f392fc9709a3 193 /* Exported macros -----------------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 194 /** @defgroup GFXMMU_Exported_Macros GFXMMU Exported Macros
AnnaBridge 189:f392fc9709a3 195 * @{
AnnaBridge 189:f392fc9709a3 196 */
AnnaBridge 189:f392fc9709a3 197
AnnaBridge 189:f392fc9709a3 198 /** @brief Reset GFXMMU handle state.
AnnaBridge 189:f392fc9709a3 199 * @param __HANDLE__ GFXMMU handle.
AnnaBridge 189:f392fc9709a3 200 * @retval None
AnnaBridge 189:f392fc9709a3 201 */
AnnaBridge 189:f392fc9709a3 202 #define __HAL_GFXMMU_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_GFXMMU_STATE_RESET)
AnnaBridge 189:f392fc9709a3 203
AnnaBridge 189:f392fc9709a3 204 /**
AnnaBridge 189:f392fc9709a3 205 * @}
AnnaBridge 189:f392fc9709a3 206 */
AnnaBridge 189:f392fc9709a3 207 /* End of exported macros ----------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 208
AnnaBridge 189:f392fc9709a3 209 /* Exported functions --------------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 210 /** @addtogroup GFXMMU_Exported_Functions GFXMMU Exported Functions
AnnaBridge 189:f392fc9709a3 211 * @{
AnnaBridge 189:f392fc9709a3 212 */
AnnaBridge 189:f392fc9709a3 213
AnnaBridge 189:f392fc9709a3 214 /** @addtogroup GFXMMU_Exported_Functions_Group1 Initialization and de-initialization functions
AnnaBridge 189:f392fc9709a3 215 * @{
AnnaBridge 189:f392fc9709a3 216 */
AnnaBridge 189:f392fc9709a3 217 /* Initialization and de-initialization functions *****************************/
AnnaBridge 189:f392fc9709a3 218 HAL_StatusTypeDef HAL_GFXMMU_Init(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 219 HAL_StatusTypeDef HAL_GFXMMU_DeInit(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 220 void HAL_GFXMMU_MspInit(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 221 void HAL_GFXMMU_MspDeInit(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 222 /**
AnnaBridge 189:f392fc9709a3 223 * @}
AnnaBridge 189:f392fc9709a3 224 */
AnnaBridge 189:f392fc9709a3 225
AnnaBridge 189:f392fc9709a3 226 /** @addtogroup GFXMMU_Exported_Functions_Group2 Operations functions
AnnaBridge 189:f392fc9709a3 227 * @{
AnnaBridge 189:f392fc9709a3 228 */
AnnaBridge 189:f392fc9709a3 229 /* Operation functions ********************************************************/
AnnaBridge 189:f392fc9709a3 230 HAL_StatusTypeDef HAL_GFXMMU_ConfigLut(GFXMMU_HandleTypeDef *hgfxmmu,
AnnaBridge 189:f392fc9709a3 231 uint32_t FirstLine,
AnnaBridge 189:f392fc9709a3 232 uint32_t LinesNumber,
AnnaBridge 189:f392fc9709a3 233 uint32_t Address);
AnnaBridge 189:f392fc9709a3 234
AnnaBridge 189:f392fc9709a3 235 HAL_StatusTypeDef HAL_GFXMMU_DisableLutLines(GFXMMU_HandleTypeDef *hgfxmmu,
AnnaBridge 189:f392fc9709a3 236 uint32_t FirstLine,
AnnaBridge 189:f392fc9709a3 237 uint32_t LinesNumber);
AnnaBridge 189:f392fc9709a3 238
AnnaBridge 189:f392fc9709a3 239 HAL_StatusTypeDef HAL_GFXMMU_ConfigLutLine(GFXMMU_HandleTypeDef *hgfxmmu, GFXMMU_LutLineTypeDef *lutLine);
AnnaBridge 189:f392fc9709a3 240
AnnaBridge 189:f392fc9709a3 241 HAL_StatusTypeDef HAL_GFXMMU_ModifyBuffers(GFXMMU_HandleTypeDef *hgfxmmu, GFXMMU_BuffersTypeDef *Buffers);
AnnaBridge 189:f392fc9709a3 242
AnnaBridge 189:f392fc9709a3 243 void HAL_GFXMMU_IRQHandler(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 244
AnnaBridge 189:f392fc9709a3 245 void HAL_GFXMMU_ErrorCallback(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 246 /**
AnnaBridge 189:f392fc9709a3 247 * @}
AnnaBridge 189:f392fc9709a3 248 */
AnnaBridge 189:f392fc9709a3 249
AnnaBridge 189:f392fc9709a3 250 /** @defgroup GFXMMU_Exported_Functions_Group3 State functions
AnnaBridge 189:f392fc9709a3 251 * @{
AnnaBridge 189:f392fc9709a3 252 */
AnnaBridge 189:f392fc9709a3 253 /* State function *************************************************************/
AnnaBridge 189:f392fc9709a3 254 HAL_GFXMMU_StateTypeDef HAL_GFXMMU_GetState(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 255
AnnaBridge 189:f392fc9709a3 256 uint32_t HAL_GFXMMU_GetError(GFXMMU_HandleTypeDef *hgfxmmu);
AnnaBridge 189:f392fc9709a3 257 /**
AnnaBridge 189:f392fc9709a3 258 * @}
AnnaBridge 189:f392fc9709a3 259 */
AnnaBridge 189:f392fc9709a3 260
AnnaBridge 189:f392fc9709a3 261 /**
AnnaBridge 189:f392fc9709a3 262 * @}
AnnaBridge 189:f392fc9709a3 263 */
AnnaBridge 189:f392fc9709a3 264 /* End of exported functions -------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 265
AnnaBridge 189:f392fc9709a3 266 /* Private macros ------------------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 267 /** @defgroup GFXMMU_Private_Macros GFXMMU Private Macros
AnnaBridge 189:f392fc9709a3 268 * @{
AnnaBridge 189:f392fc9709a3 269 */
AnnaBridge 189:f392fc9709a3 270 #define IS_GFXMMU_BLOCKS_PER_LINE(VALUE) (((VALUE) == GFXMMU_256BLOCKS) || \
AnnaBridge 189:f392fc9709a3 271 ((VALUE) == GFXMMU_192BLOCKS))
AnnaBridge 189:f392fc9709a3 272
AnnaBridge 189:f392fc9709a3 273 #define IS_GFXMMU_BUFFER_ADDRESS(VALUE) (((VALUE) & 0xFU) == 0U)
AnnaBridge 189:f392fc9709a3 274
AnnaBridge 189:f392fc9709a3 275 #define IS_GFXMMU_INTERRUPTS(VALUE) (((VALUE) & 0x1FU) != 0U)
AnnaBridge 189:f392fc9709a3 276
AnnaBridge 189:f392fc9709a3 277 #define IS_GFXMMU_LUT_LINE(VALUE) ((VALUE) < 1024U)
AnnaBridge 189:f392fc9709a3 278
AnnaBridge 189:f392fc9709a3 279 #define IS_GFXMMU_LUT_LINES_NUMBER(VALUE) (((VALUE) > 0U) && ((VALUE) <= 1024U))
AnnaBridge 189:f392fc9709a3 280
AnnaBridge 189:f392fc9709a3 281 #define IS_GFXMMU_LUT_LINE_STATUS(VALUE) (((VALUE) == GFXMMU_LUT_LINE_DISABLE) || \
AnnaBridge 189:f392fc9709a3 282 ((VALUE) == GFXMMU_LUT_LINE_ENABLE))
AnnaBridge 189:f392fc9709a3 283
AnnaBridge 189:f392fc9709a3 284 #define IS_GFXMMU_LUT_BLOCK(VALUE) ((VALUE) < 256U)
AnnaBridge 189:f392fc9709a3 285
AnnaBridge 189:f392fc9709a3 286 #define IS_GFXMMU_LUT_LINE_OFFSET(VALUE) (((VALUE) >= -4080) && ((VALUE) <= 4190208))
AnnaBridge 189:f392fc9709a3 287 /**
AnnaBridge 189:f392fc9709a3 288 * @}
AnnaBridge 189:f392fc9709a3 289 */
AnnaBridge 189:f392fc9709a3 290 /* End of private macros -----------------------------------------------------*/
AnnaBridge 189:f392fc9709a3 291
AnnaBridge 189:f392fc9709a3 292 /**
AnnaBridge 189:f392fc9709a3 293 * @}
AnnaBridge 189:f392fc9709a3 294 */
AnnaBridge 189:f392fc9709a3 295
AnnaBridge 189:f392fc9709a3 296 /**
AnnaBridge 189:f392fc9709a3 297 * @}
AnnaBridge 189:f392fc9709a3 298 */
AnnaBridge 189:f392fc9709a3 299 #endif /* GFXMMU */
AnnaBridge 189:f392fc9709a3 300 #ifdef __cplusplus
AnnaBridge 189:f392fc9709a3 301 }
AnnaBridge 189:f392fc9709a3 302 #endif
AnnaBridge 189:f392fc9709a3 303
AnnaBridge 189:f392fc9709a3 304 #endif /* __STM32L4xx_HAL_GFXMMU_H */
AnnaBridge 189:f392fc9709a3 305
AnnaBridge 189:f392fc9709a3 306 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/