2023-03-06 21:21:00 +01:00
|
|
|
/**
|
|
|
|
******************************************************************************
|
|
|
|
* File Name : STM32DMA.hpp
|
|
|
|
******************************************************************************
|
2024-06-11 19:38:14 +02:00
|
|
|
* This file is generated by TouchGFX Generator 4.23.2. Please, do not edit!
|
2023-03-06 21:21:00 +01:00
|
|
|
******************************************************************************
|
|
|
|
* @attention
|
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* Copyright (c) 2024 STMicroelectronics.
|
2023-03-06 21:21:00 +01:00
|
|
|
* All rights reserved.
|
|
|
|
*
|
|
|
|
* This software is licensed under terms that can be found in the LICENSE file
|
|
|
|
* in the root directory of this software component.
|
|
|
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
|
|
|
*
|
|
|
|
******************************************************************************
|
|
|
|
*/
|
|
|
|
#ifndef STM32DMA_HPP
|
|
|
|
#define STM32DMA_HPP
|
|
|
|
|
2024-06-11 19:38:14 +02:00
|
|
|
#include <touchgfx/hal/BlitOp.hpp>
|
2023-03-06 21:21:00 +01:00
|
|
|
#include <touchgfx/hal/DMA.hpp>
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @class STM32DMA
|
|
|
|
*
|
|
|
|
* @brief This class specializes DMA_Interface for the STM32 processors.
|
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @see touchgfx::DMA_Interface
|
2023-03-06 21:21:00 +01:00
|
|
|
*/
|
|
|
|
class STM32DMA : public touchgfx::DMA_Interface
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
/**
|
|
|
|
* @fn STM32DMA::STM32DMA();
|
|
|
|
*
|
|
|
|
* @brief Default constructor.
|
|
|
|
*/
|
|
|
|
STM32DMA();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @fn touchgfx::BlitOperations STM32DMA::getBlitCaps();
|
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @brief No blit operations supported by this DMA implementation.
|
2023-03-06 21:21:00 +01:00
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @return Zero (no blit ops supported).
|
2023-03-06 21:21:00 +01:00
|
|
|
*/
|
|
|
|
virtual touchgfx::BlitOperations getBlitCaps();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @fn virtual void STM32DMA::setupDataCopy(const touchgfx::BlitOp& blitOp);
|
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @brief Asserts if used.
|
2023-03-06 21:21:00 +01:00
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @param blitOp The blit operation to be performed by this DMA instance.
|
2023-03-06 21:21:00 +01:00
|
|
|
*/
|
|
|
|
virtual void setupDataCopy(const touchgfx::BlitOp& blitOp);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @fn virtual void STM32DMA::setupDataFill(const touchgfx::BlitOp& blitOp);
|
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @brief Asserts if used.
|
2023-03-06 21:21:00 +01:00
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @param blitOp The blit operation to be performed by this DMA instance.
|
2023-03-06 21:21:00 +01:00
|
|
|
*/
|
|
|
|
virtual void setupDataFill(const touchgfx::BlitOp& blitOp);
|
|
|
|
|
|
|
|
/**
|
2024-06-11 19:38:14 +02:00
|
|
|
* @fn virtual void STM32DMA::signalDMAInterrupt();
|
2023-03-06 21:21:00 +01:00
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @brief Does nothing.
|
2023-03-06 21:21:00 +01:00
|
|
|
*/
|
2024-06-11 19:38:14 +02:00
|
|
|
virtual void signalDMAInterrupt()
|
|
|
|
{
|
|
|
|
}
|
2023-03-06 21:21:00 +01:00
|
|
|
|
|
|
|
/**
|
2024-06-11 19:38:14 +02:00
|
|
|
* @fn virtual void STM32DMA::flush();
|
2023-03-06 21:21:00 +01:00
|
|
|
*
|
2024-06-11 19:38:14 +02:00
|
|
|
* @brief Block until all DMA transfers are complete. Since this particular DMA does not do
|
|
|
|
* anything, return immediately.
|
2023-03-06 21:21:00 +01:00
|
|
|
*/
|
2024-06-11 19:38:14 +02:00
|
|
|
virtual void flush()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
private:
|
|
|
|
touchgfx::LockFreeDMA_Queue q;
|
|
|
|
touchgfx::BlitOp b;
|
2023-03-06 21:21:00 +01:00
|
|
|
};
|
2024-06-11 19:38:14 +02:00
|
|
|
#endif // TOUCHGFX_NODMA_HPP
|
2023-03-06 21:21:00 +01:00
|
|
|
|
|
|
|
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|