Merge pull request #9520 from tannewt/rp2350_audio_crash
Switch to pico-sdk style interrupt names.
This commit is contained in:
commit
26f682d83a
5 changed files with 14 additions and 37 deletions
|
|
@ -145,7 +145,10 @@ $(INC_CYW43) \
|
|||
# Pico specific configuration
|
||||
CFLAGS += \
|
||||
-DRASPBERRYPI \
|
||||
-DLIB_PICO_MULTICORE=1 \
|
||||
-DPICO_NO_HARDWARE=0 \
|
||||
-DPICO_ON_DEVICE=1 \
|
||||
-DPICO_BUILD=1 \
|
||||
-DPICO_NO_BINARY_INFO=0 \
|
||||
-DPICO_TIME_DEFAULT_ALARM_POOL_DISABLED=0 \
|
||||
-DPICO_DIVIDER_CALL_IDIV0=0 \
|
||||
|
|
@ -153,7 +156,6 @@ CFLAGS += \
|
|||
-DPICO_DIVIDER_HARDWARE=1 \
|
||||
-DPICO_DOUBLE_ROM=1 \
|
||||
-DPICO_FLOAT_ROM=1 \
|
||||
-DLIB_PICO_MULTICORE=1 \
|
||||
-DPICO_BITS_IN_RAM=0 \
|
||||
-DPICO_DIVIDER_IN_RAM=0 \
|
||||
-DPICO_DOUBLE_PROPAGATE_NANS=0 \
|
||||
|
|
@ -177,7 +179,9 @@ CFLAGS += \
|
|||
-DCFG_TUD_CDC_RX_BUFSIZE=256 \
|
||||
-DCFG_TUD_MIDI_TX_BUFSIZE=128 \
|
||||
-DCFG_TUD_CDC_TX_BUFSIZE=256 \
|
||||
-DCFG_TUD_MSC_BUFSIZE=1024
|
||||
-DCFG_TUD_MSC_BUFSIZE=1024 \
|
||||
-DPICO_RP2040_USB_DEVICE_UFRAME_FIX=1 \
|
||||
-DPICO_RP2040_USB_DEVICE_ENUMERATION_FIX=1 \
|
||||
|
||||
# option to override default optimization level, set in boards/$(BOARD)/mpconfigboard.mk
|
||||
CFLAGS += $(OPTIMIZATION_FLAGS)
|
||||
|
|
|
|||
|
|
@ -16,6 +16,8 @@
|
|||
#include "py/runtime.h"
|
||||
|
||||
#include "src/rp2_common/hardware_irq/include/hardware/irq.h"
|
||||
#include "hardware/regs/intctrl.h" // For isr_ macro.
|
||||
|
||||
|
||||
#if CIRCUITPY_AUDIOCORE
|
||||
|
||||
|
|
@ -459,7 +461,7 @@ static void dma_callback_fun(void *arg) {
|
|||
}
|
||||
}
|
||||
|
||||
void isr_dma_0(void) {
|
||||
void __not_in_flash_func(isr_dma_0)(void) {
|
||||
for (size_t i = 0; i < NUM_DMA_CHANNELS; i++) {
|
||||
uint32_t mask = 1 << i;
|
||||
if ((dma_hw->intr & mask) == 0) {
|
||||
|
|
|
|||
|
|
@ -1,32 +1,3 @@
|
|||
#pragma once
|
||||
|
||||
#include "pico-sdk-configboard.h"
|
||||
|
||||
// alphabetized
|
||||
#define LIB_CMSIS_CORE (1)
|
||||
#define LIB_PICO_BINARY_INFO (0)
|
||||
#define LIB_PICO_PRINTF_NONE (0)
|
||||
#define LIB_PICO_PRINTF_PICO (0)
|
||||
#define LIB_PICO_STDIO_SEMIHOSTING (0)
|
||||
#define LIB_PICO_STDIO_UART (0)
|
||||
#define LIB_PICO_STDIO_USB (0)
|
||||
#define PICO_DIVIDER_DISABLE_INTERRUPTS (0)
|
||||
#define PICO_DOUBLE_SUPPORT_ROM_V1 (1)
|
||||
#define PICO_ENTER_USB_BOOT_ON_EXIT (0)
|
||||
#define PICO_FLOAT_SUPPORT_ROM_V1 (1)
|
||||
#define PICO_IE_26_29_UNCHANGED_ON_RESET (0)
|
||||
#define PICO_INT64_OPS_IN_RAM (0)
|
||||
#define PICO_NO_HARDWARE (0)
|
||||
#define PICO_ON_DEVICE (1)
|
||||
#define PICO_PRINTF_ALWAYS_INCLUDED (1)
|
||||
#define PICO_RP2040_USB_DEVICE_ENUMERATION_FIX (1)
|
||||
#define PICO_RP2040_USB_DEVICE_UFRAME_FIX (1)
|
||||
#define PICO_STDIO_IGNORE_NESTED_STDOUT (0)
|
||||
#define PICO_USE_CRT_PRINTF (0)
|
||||
#define PICO_USE_OPTIMISTIC_SBRK (0)
|
||||
// Stack guards cause a hard fault when 32 bytes around the stack bottom are
|
||||
// accessed. These backtraces aren't always helpful and this conflicts with our
|
||||
// own stack checking.
|
||||
#define PICO_USE_STACK_GUARDS (0)
|
||||
|
||||
#include "include/cmsis/rename_exceptions.h"
|
||||
|
|
|
|||
|
|
@ -11,9 +11,9 @@
|
|||
#ifndef _PICO_VERSION_H
|
||||
#define _PICO_VERSION_H
|
||||
|
||||
#define PICO_SDK_VERSION_MAJOR 1
|
||||
#define PICO_SDK_VERSION_MINOR 2
|
||||
#define PICO_SDK_VERSION_MAJOR 2
|
||||
#define PICO_SDK_VERSION_MINOR 0
|
||||
#define PICO_SDK_VERSION_REVISION 0
|
||||
#define PICO_SDK_VERSION_STRING "1.2.0"
|
||||
#define PICO_SDK_VERSION_STRING "2.0.0"
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -510,8 +510,8 @@ void port_idle_until_interrupt(void) {
|
|||
/**
|
||||
* \brief Default interrupt handler for unused IRQs.
|
||||
*/
|
||||
extern void HardFault_Handler(void); // provide a prototype to avoid a missing-prototypes diagnostic
|
||||
__attribute__((used)) void __not_in_flash_func(HardFault_Handler)(void) {
|
||||
extern void isr_hardfault(void); // provide a prototype to avoid a missing-prototypes diagnostic
|
||||
__attribute__((used)) void __not_in_flash_func(isr_hardfault)(void) {
|
||||
// Only safe mode from core 0 which is running CircuitPython. Core 1 faulting
|
||||
// should not be fatal to CP. (Fingers crossed.)
|
||||
if (get_core_num() == 0) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue