1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-02-11 07:02:41 +00:00

fixup! refactor(core): improve dma2d driver init/deinit

This commit is contained in:
cepetr 2025-02-10 15:06:36 +01:00
parent 052c85a764
commit 7410636a18
2 changed files with 8 additions and 0 deletions

View File

@ -67,17 +67,22 @@ void dma2d_init(void) {
memset(drv, 0, sizeof(dma2d_driver_t)); memset(drv, 0, sizeof(dma2d_driver_t));
drv->handle.Instance = DMA2D; drv->handle.Instance = DMA2D;
#ifdef KERNEL_MODE
__HAL_RCC_DMA2D_FORCE_RESET(); __HAL_RCC_DMA2D_FORCE_RESET();
__HAL_RCC_DMA2D_RELEASE_RESET(); __HAL_RCC_DMA2D_RELEASE_RESET();
__HAL_RCC_DMA2D_CLK_ENABLE(); __HAL_RCC_DMA2D_CLK_ENABLE();
#endif
drv->initialized = true; drv->initialized = true;
} }
void dma2d_deinit(void) { void dma2d_deinit(void) {
dma2d_driver_t* drv = &g_dma2d_driver; dma2d_driver_t* drv = &g_dma2d_driver;
#ifdef KERNEL_MODE
__HAL_RCC_DMA2D_CLK_DISABLE(); __HAL_RCC_DMA2D_CLK_DISABLE();
__HAL_RCC_DMA2D_FORCE_RESET(); __HAL_RCC_DMA2D_FORCE_RESET();
__HAL_RCC_DMA2D_RELEASE_RESET(); __HAL_RCC_DMA2D_RELEASE_RESET();
#endif
memset(drv, 0, sizeof(dma2d_driver_t)); memset(drv, 0, sizeof(dma2d_driver_t));
} }

View File

@ -45,6 +45,9 @@
#endif #endif
int main(uint32_t cmd, void *arg) { int main(uint32_t cmd, void *arg) {
// This call will be removed in the future with DMA2D syscalls.
gfx_bitblt_init();
if (cmd == 1) { if (cmd == 1) {
systask_postmortem_t *info = (systask_postmortem_t *)arg; systask_postmortem_t *info = (systask_postmortem_t *)arg;
rsod_gui(info); rsod_gui(info);