mirror of
https://github.com/mytechnotalent/Embedded-Hacking.git
synced 2026-07-30 15:49:03 +02:00
Public function docstrings belong exclusively in .h headers per coding convention. Only static helper functions and static variables retain docstrings in .c files. Removed 413 duplicate docstrings across 185 files (15 CBM + 15 C SDK projects). All 30 projects rebuild with zero errors.
52 lines
1.4 KiB
C
52 lines
1.4 KiB
C
/**
|
|
******************************************************************************
|
|
* @file rp2350_reset_handler.c
|
|
* @author Kevin Thomas
|
|
* @brief Reset handler implementation for RP2350.
|
|
*
|
|
* Entry point after power-on or system reset. Initializes the
|
|
* stack, XOSC, subsystem resets, UART, PWM, then
|
|
* branches to main().
|
|
*
|
|
******************************************************************************
|
|
* @attention
|
|
*
|
|
* Copyright (c) 2026 Kevin Thomas.
|
|
* All rights reserved.
|
|
*
|
|
* This software is licensed under terms that can be found in the LICENSE file
|
|
* in the root directory of this software component.
|
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
|
*
|
|
******************************************************************************
|
|
*/
|
|
|
|
#include "rp2350_reset_handler.h"
|
|
#include "rp2350_stack.h"
|
|
#include "rp2350_xosc.h"
|
|
#include "rp2350_reset.h"
|
|
#include "rp2350_uart.h"
|
|
#include "rp2350_pwm.h"
|
|
|
|
extern int main(void);
|
|
|
|
void _late_init(void)
|
|
{
|
|
pwm_release_reset();
|
|
pwm_init();
|
|
}
|
|
|
|
void __attribute__((naked, noreturn)) Reset_Handler(void)
|
|
{
|
|
__asm__ volatile (
|
|
"bl stack_init\n\t"
|
|
"bl xosc_init\n\t"
|
|
"bl xosc_enable_peri_clk\n\t"
|
|
"bl reset_init_subsystem\n\t"
|
|
"bl uart_release_reset\n\t"
|
|
"bl uart_init\n\t"
|
|
"bl _late_init\n\t"
|
|
"b main\n\t"
|
|
);
|
|
}
|