1 /* 2 * Copyright (c) 2021, STMicroelectronics - All Rights Reserved 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef STM32CUBEPROGRAMMER_H 8 #define STM32CUBEPROGRAMMER_H 9 10 #include <stdint.h> 11 12 #include <usb_dfu.h> 13 14 /* Phase definition */ 15 #define PHASE_FLASHLAYOUT 0U 16 #define PHASE_SSBL 3U 17 #define PHASE_CMD 0xF1U 18 #define PHASE_RESET 0xFFU 19 20 /* Functions provided by plat */ 21 uint8_t usb_dfu_get_phase(uint8_t alt); 22 23 int stm32cubeprog_usb_load(struct usb_handle *usb_core_handle, 24 uintptr_t ssbl_base, 25 size_t ssbl_len); 26 27 int stm32cubeprog_uart_load(uintptr_t instance, uintptr_t base, size_t len); 28 29 #endif /* STM32CUBEPROGRAMMER_H */ 30