aboutsummaryrefslogtreecommitdiff
path: root/projects/bootloader/stm-init.c
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2017-05-28 17:57:35 -0400
committerRob Austein <sra@hactrn.net>2017-05-28 17:57:35 -0400
commita93c94f554667564393216fe984b46e686c825b3 (patch)
treed21a051c44b68a186bce625c27fb63da997d0001 /projects/bootloader/stm-init.c
parenta57dda190d26721ab74ab4821f010811dd93cf5f (diff)
Stub out hal_allocate_static_memory() to avoid linker error.
This is a quick fix, so that we can get on with testing the ks9 branch changes. A better fix in the long run might be to add a third keystore ("ks_pin_read_only", or some such) which implemented the bare minimum interface that the bootloader needs and left everything else unimplemented. This would require a bit of refactoring the current PIN code to make it work right with both the bootloader's abbreivated keystore and the normal token keystore. Probably worth doing, but a bit of a can of worms, so postponing for now.
Diffstat (limited to 'projects/bootloader/stm-init.c')
0 files changed, 0 insertions, 0 deletions
> 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220



























































































































































































































                                                                                  
/**
******************************************************************************
* @file    GPIO/GPIO_IOToggle/Src/stm32f4xx_it.c
* @author  MCD Application Team
* @version V1.0.1
* @date    26-February-2014
* @brief   Main Interrupt Service Routines.
*          This file provides template for all exceptions handler and
*          peripherals interrupt service routine.
******************************************************************************
* @attention
*
* <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*   1. Redistributions of source code must retain the above copyright notice,
*      this list of conditions and the following disclaimer.
*   2. Redistributions in binary form must reproduce the above copyright notice,
*      this list of conditions and the following disclaimer in the documentation
*      and/or other materials provided with the distribution.
*   3. Neither the name of STMicroelectronics nor the names of its contributors
*      may be used to endorse or promote products derived from this software
*      without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
*/

#include "stm-init.h"
#include "stm-uart.h"

/******************************************************************************/
/*            Cortex-M4 Processor Exceptions Handlers                         */
/******************************************************************************/

/*
 * We define these to make debugging easier, because otherwise gdb reports
 * HardFault_Handler as WWDG_IRQHandler.
 */

/**
 * @brief   This function handles NMI exception.
 * @param  None
 * @retval None
 */
void NMI_Handler(void)
{
}

/**
 * @brief  This function handles Hard Fault exception.
 * @param  None
 * @retval None
 */
void HardFault_Handler(void)
{
    /* Go to infinite loop when Hard Fault exception occurs */
    while (1) { ; }
}

/**
 * @brief  This function handles Memory Manage exception.
 * @param  None
 * @retval None
 */
void MemManage_Handler(void)
{
    /* Go to infinite loop when Memory Manage exception occurs */
    while (1) { ; }
}

/**
 * @brief  This function handles Bus Fault exception.
 * @param  None
 * @retval None
 */
void BusFault_Handler(void)
{
    /* Go to infinite loop when Bus Fault exception occurs */
    while (1) { ; }
}

/**
 * @brief  This function handles Usage Fault exception.
 * @param  None
 * @retval None
 */
void UsageFault_Handler(void)
{
    /* Go to infinite loop when Usage Fault exception occurs */
    while (1) { ; }
}


/**
 * @brief  This function handles SVCall exception.
 * @param  None
 * @retval None
 */
void SVC_Handler(void)
{
}

/**
 * @brief  This function handles Debug Monitor exception.
 * @param  None
 * @retval None
 */
void DebugMon_Handler(void)
{
}

/**
 * @brief  This function handles PendSVC exception.
 * @param  None
 * @retval None
 */
void PendSV_Handler(void)
{
}

/**
 * @brief  This function handles SysTick Handler.
 * @param  None
 * @retval None
 */
void SysTick_Handler(void)
{
    HAL_IncTick();
}

/******************************************************************************/
/*                 STM32F4xx Peripherals Interrupt Handlers                   */
/*  Add here the Interrupt Handler for the used peripheral(s) (PPP), for the  */
/*  available peripheral interrupt handler's name please refer to the startup */
/*  file (startup_stm32f4xx.s).                                               */
/******************************************************************************/

/**
* @brief This function handles DMA1 stream5 global interrupt.
*/
void DMA1_Stream5_IRQHandler(void)
{
    HAL_DMA_IRQHandler(&hdma_usart_user_rx);
}

/**
* @brief This function handles DMA2 stream2 global interrupt.
*/
void DMA2_Stream2_IRQHandler(void)
{
    HAL_DMA_IRQHandler(&hdma_usart_mgmt_rx);
}

/**
 * @brief  This function handles UART interrupt request.
 * @param  None
 * @retval None
 * @Note   HAL_UART_IRQHandler will call HAL_UART_RxCpltCallback in main.c.
 */
void USART1_IRQHandler(void)
{
    HAL_UART_IRQHandler(&huart_mgmt);
}

/**
 * @brief  This function handles UART interrupt request.
 * @param  None
 * @retval None
 * @Note   HAL_UART_IRQHandler will call HAL_UART_RxCpltCallback in main.c.
 */
void USART2_IRQHandler(void)
{
    HAL_UART_IRQHandler(&huart_user);
}

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
    extern void HAL_UART1_RxCpltCallback(UART_HandleTypeDef *huart);
    extern void HAL_UART2_RxCpltCallback(UART_HandleTypeDef *huart);

    if (huart->Instance == USART1)
        HAL_UART1_RxCpltCallback(huart);

    else if (huart->Instance == USART2)
        HAL_UART2_RxCpltCallback(huart);
}

/**
  * @brief  Rx Transfer completed callbacks.
  * @param  huart: pointer to a UART_HandleTypeDef structure that contains
  *                the configuration information for the specified UART module.
  * @retval None
  */
__weak void HAL_UART1_RxCpltCallback(UART_HandleTypeDef *huart)
{
  /* NOTE: This function Should not be modified, when the callback is needed,
           the HAL_UART_TxCpltCallback could be implemented in the user file
   */
}

__weak void HAL_UART2_RxCpltCallback(UART_HandleTypeDef *huart)
{
  /* NOTE: This function Should not be modified, when the callback is needed,
           the HAL_UART_TxCpltCallback could be implemented in the user file
   */
}

/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/