USART DFU timeout issue-STM32F446RET6 controller

Hi Team
I am trying to do UART bootloader, using cli command.
The MCU used is STM32F446RET6 and dev kit used is nucleo-f446re.I am using USART1, for printf and cli command with interrupt. CLI command is used to enter system memory /bootloader but as shared above the programmer is not giving timeout error.
void jump_to_bootloader(void)
{
void (*SysMemBootJump)(void);
//system address defined
volatile uint32_t addr = 0x1FFF0000;
// //introduce delay before switcing to bootloader after printf.
// HAL_Delay(200);
//disable all interrupt request and stop SysTick
__disable_irq();
// SysTick->CTRL = 0;
// SysTick->VAL = 0;
//
// __HAL_RCC_SYSCFG_CLK_ENABLE();
// SYSCFG->MEMRMP = 0x01;
//Deinit HAL and all peripheral
// HAL_UART_DeInit(&huart1);
//reset uart pins and gpio
// __HAL_RCC_USART1_FORCE_RESET();
// __HAL_RCC_USART1_RELEASE_RESET();
// HAL_GPIO_DeInit(GPIOA,GPIO_PIN_9 | GPIO_PIN_10);
HAL_RCC_DeInit();
HAL_DeInit();
// Disable all interrupts in NVIC
// for(int i =0; i <8 ; i++) {
// NVIC -> ICER[i] = 0xFFFFFFFF;
// NVIC->ICPR[i] = 0xFFFFFFFF;
// }
//set msp
__set_MSP(*(uint32_t*)addr);
//jump system_memory
SysMemBootJump = (void (*)(void))(*(uint32_t*)(addr + 4));
SysMemBootJump();
while(1)
;
}
Hardware connection - NUCLEO PA9,PA10-UART1 connected to FTDI cable,USB cable connected for power supply the nucleo board which is used for STLINK.
