Merge pull request #1554 from openmv/jpeg_callbacks

imlib: Enable hardware JPEG callbacks.
This commit is contained in:
Ibrahim Abdelkader 2022-02-26 03:04:48 +02:00 committed by GitHub
commit 3551d6d280
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 4 deletions

View File

@ -164,7 +164,7 @@
#define USE_HAL_I2C_REGISTER_CALLBACKS 0U /* I2C register callback disabled */
#define USE_HAL_I2S_REGISTER_CALLBACKS 0U /* I2S register callback disabled */
#define USE_HAL_IRDA_REGISTER_CALLBACKS 0U /* IRDA register callback disabled */
#define USE_HAL_JPEG_REGISTER_CALLBACKS 0U /* JPEG register callback disabled */
#define USE_HAL_JPEG_REGISTER_CALLBACKS 1U /* JPEG register callback disabled */
#define USE_HAL_LPTIM_REGISTER_CALLBACKS 0U /* LPTIM register callback disabled */
#define USE_HAL_LTDC_REGISTER_CALLBACKS 0U /* LTDC register callback disabled */
#define USE_HAL_MDIOS_REGISTER_CALLBACKS 0U /* MDIOS register callback disabled */

View File

@ -194,7 +194,7 @@
#define USE_HAL_I2C_REGISTER_CALLBACKS 0U /* I2C register callback disabled */
#define USE_HAL_I2S_REGISTER_CALLBACKS 0U /* I2S register callback disabled */
#define USE_HAL_IRDA_REGISTER_CALLBACKS 0U /* IRDA register callback disabled */
#define USE_HAL_JPEG_REGISTER_CALLBACKS 0U /* JPEG register callback disabled */
#define USE_HAL_JPEG_REGISTER_CALLBACKS 1U /* JPEG register callback disabled */
#define USE_HAL_LPTIM_REGISTER_CALLBACKS 0U /* LPTIM register callback disabled */
#define USE_HAL_LTDC_REGISTER_CALLBACKS 0U /* LTDC register callback disabled */
#define USE_HAL_MDIOS_REGISTER_CALLBACKS 0U /* MDIO register callback disabled */

View File

@ -1006,13 +1006,13 @@ void jpeg_mdma_irq_handler()
HAL_MDMA_IRQHandler(&JPEG_MDMA_Handle_Out);
}
void HAL_JPEG_GetDataCallback(JPEG_HandleTypeDef *hjpeg, uint32_t NbDecodedData)
static void jpeg_get_data_callback(JPEG_HandleTypeDef *hjpeg, uint32_t NbDecodedData)
{
HAL_JPEG_Pause(hjpeg, JPEG_PAUSE_RESUME_INPUT);
JPEG_input_paused = true;
}
void HAL_JPEG_DataReadyCallback(JPEG_HandleTypeDef *hjpeg, uint8_t *pDataOut, uint32_t OutDataLength)
static void jpeg_data_ready_callback(JPEG_HandleTypeDef *hjpeg, uint8_t *pDataOut, uint32_t OutDataLength)
{
// We have received this much data.
JPEG_out_data_length += OutDataLength;
@ -1226,6 +1226,10 @@ void imlib_jpeg_compress_init()
{
JPEG_Handle.Instance = JPEG;
HAL_JPEG_Init(&JPEG_Handle);
// Register JPEG callbacks.
HAL_JPEG_RegisterGetDataCallback(&JPEG_Handle, jpeg_get_data_callback);
HAL_JPEG_RegisterDataReadyCallback(&JPEG_Handle, jpeg_data_ready_callback);
NVIC_SetPriority(JPEG_IRQn, IRQ_PRI_JPEG);
HAL_NVIC_EnableIRQ(JPEG_IRQn);