Index: firmware/App/Controllers/DrainPump.c =================================================================== diff -u -rc081112c61e0d85854e8f1e604ac7f1f37c2ec02 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/App/Controllers/DrainPump.c (.../DrainPump.c) (revision c081112c61e0d85854e8f1e604ac7f1f37c2ec02) +++ firmware/App/Controllers/DrainPump.c (.../DrainPump.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -64,7 +64,7 @@ } DRAIN_PUMP_SELF_TEST_STATE_T; // pin assignment for pump enable -#define DRAIN_PUMP_ENABLE_SPI3_PORT_MASK 0x00000020 // (CS5 - re-purposed as input GPIO) +#define DRAIN_PUMP_ENABLE_SPI3_PORT_MASK 0x00000020 // (CS5 - re-purposed as output GPIO) // drain pump enable macros #define SET_DRAIN_PUMP_ENABLE() {mibspiREG3->PC3 |= DRAIN_PUMP_ENABLE_SPI3_PORT_MASK;} #define CLR_DRAIN_PUMP_ENABLE() {mibspiREG3->PC3 &= ~DRAIN_PUMP_ENABLE_SPI3_PORT_MASK;} Index: firmware/App/Controllers/Heaters.c =================================================================== diff -u -re66245baae86e539e8470aa9739a99a2146d5f17 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision e66245baae86e539e8470aa9739a99a2146d5f17) +++ firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -546,6 +546,7 @@ // TODO for testing only. remove #ifdef DEBUG_ENABLED #ifdef ENABLE_DIP_SWITCHES +#ifndef EMC_TEST_BUILD if ( TOGGLEPRIMAYHEATER() ) { setPrimaryHeaterTargetTemperature ( 37 ); @@ -558,6 +559,7 @@ } #endif #endif +#endif // TODO remove this code for testing if ( hasStartPrimaryHeaterRequested ) Index: firmware/App/Services/FPGA.c =================================================================== diff -u -ra504d6899e709d7432af9c055db1bd1fe340d032 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/App/Services/FPGA.c (.../FPGA.c) (revision a504d6899e709d7432af9c055db1bd1fe340d032) +++ firmware/App/Services/FPGA.c (.../FPGA.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -93,8 +93,8 @@ U32 fpgaCD1Temp; ///< Reg 280. ADC RTD channel 0 - conductivity sensor 1 temperature. U32 fpgaCD2Temp; ///< Reg 284. ADC RTD channel 1 - conductivity sensor 2 temperature. - U32 fpgaTPoTemp; ///< Reg 288. ADC RTD channel 2 - conductivity sensor CPi temperature. - U32 fpgaTPiTemp; ///< Reg 292. ADC RTD channel 3 - conductivity sensor CPo temperature. + U32 fpgaTPoTemp; ///< Reg 288. ADC RTD channel 2 - conductivity sensor CPo temperature. + U32 fpgaTPiTemp; ///< Reg 292. ADC RTD channel 3 - conductivity sensor CPi temperature. U32 fpgaRTDTemp; ///< Reg 296. ADC RTD channel 4 - internal temperature. U32 fpgaTHDo; ///< Reg 300. ADC THDo channel 0 - temperature. Index: firmware/DG.dil =================================================================== diff -u -re66245baae86e539e8470aa9739a99a2146d5f17 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/DG.dil (.../DG.dil) (revision e66245baae86e539e8470aa9739a99a2146d5f17) +++ firmware/DG.dil (.../DG.dil) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -1,4 +1,4 @@ -# RM46L852PGE 06/12/20 13:22:22 +# RM46L852PGE 06/14/20 15:30:06 # ARCH=RM46L852PGE # @@ -80,7 +80,7 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_68_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_31_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_23_INT_TYPE.VALUE=IRQ -DRIVER.SYSTEM.VAR.VIM_CHANNEL_15_INT_TYPE.VALUE=FIQ +DRIVER.SYSTEM.VAR.VIM_CHANNEL_15_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.SAFETY_INIT_CCM_SELFCHECK_ENA.VALUE=0 DRIVER.SYSTEM.VAR.PMM_MEM_PD2_STATE_AVAIL.VALUE=1 DRIVER.SYSTEM.VAR.ECLK_CLKSRC.VALUE=0 @@ -358,7 +358,7 @@ DRIVER.SYSTEM.VAR.VIM_CONFIG.VALUE=TRUE DRIVER.SYSTEM.VAR.VIM_CHANNEL_101_MAPPING.VALUE=101 DRIVER.SYSTEM.VAR.VIM_CHANNEL_101_NAME.VALUE=etpwm6TripZoneInterrupt -DRIVER.SYSTEM.VAR.RAM_STACK_ABORT_LENGTH.VALUE=0x00000200 +DRIVER.SYSTEM.VAR.RAM_STACK_ABORT_LENGTH.VALUE=0x00000400 DRIVER.SYSTEM.VAR.FLASH_DATA_MAX_WAIT_STATES.VALUE=3 DRIVER.SYSTEM.VAR.FLASH_MODE.VALUE=PIPELINE DRIVER.SYSTEM.VAR.CORE_MPU_REGION_11_SUB_7_DISABLE.VALUE=0 @@ -369,7 +369,7 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_53_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_45_INT_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_45_INT_TYPE.VALUE=IRQ -DRIVER.SYSTEM.VAR.VIM_CHANNEL_40_INT_PRAGMA_ENABLE.VALUE=1 +DRIVER.SYSTEM.VAR.VIM_CHANNEL_40_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_37_INT_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_37_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_32_INT_PRAGMA_ENABLE.VALUE=0 @@ -407,7 +407,7 @@ DRIVER.SYSTEM.VAR.CORE_HANDLER_TABLE_UNDEF_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_8_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.SAFETY_INIT_PBIST_SP_SELECTED.VALUE=0 -DRIVER.SYSTEM.VAR.RAM_STACK_ABORT_BASE.VALUE=0x08003400 +DRIVER.SYSTEM.VAR.RAM_STACK_ABORT_BASE.VALUE=0x08004400 DRIVER.SYSTEM.VAR.VIM_CHANNEL_92_NAME.VALUE=etpwm2Interrupt DRIVER.SYSTEM.VAR.VIM_CHANNEL_84_NAME.VALUE=phantomInterrupt DRIVER.SYSTEM.VAR.VIM_CHANNEL_76_NAME.VALUE=phantomInterrupt @@ -435,7 +435,7 @@ DRIVER.SYSTEM.VAR.CORE_PMU_COUNTER1_EVENT.VALUE=0x11 DRIVER.SYSTEM.VAR.EFUSE_SELFTEST_ENA.VALUE=0 DRIVER.SYSTEM.VAR.CLKT_AVCLK4_DOMAIN_DISABLE.VALUE=0 -DRIVER.SYSTEM.VAR.RAM_LINK_BASE_ADDRESS.VALUE=0x08003800 +DRIVER.SYSTEM.VAR.RAM_LINK_BASE_ADDRESS.VALUE=0x08004c00 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_12_SUB_4_DISABLE.VALUE=0 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_2_SUB_7_DISABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_120_INT_ENABLE.VALUE=0 @@ -509,7 +509,7 @@ DRIVER.SYSTEM.VAR.CORE_MPU_REGION_4_END_ADDRESS.VALUE=0x0843ffff DRIVER.SYSTEM.VAR.VIM_CHANNEL_80_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_72_INT_TYPE.VALUE=IRQ -DRIVER.SYSTEM.VAR.VIM_CHANNEL_64_INT_TYPE.VALUE=FIQ +DRIVER.SYSTEM.VAR.VIM_CHANNEL_64_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_56_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_48_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_10_INT_PRAGMA_ENABLE.VALUE=0 @@ -549,14 +549,14 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_85_NAME.VALUE=phantomInterrupt DRIVER.SYSTEM.VAR.VIM_CHANNEL_77_NAME.VALUE=EMACTxIntISR DRIVER.SYSTEM.VAR.VIM_CHANNEL_69_NAME.VALUE=phantomInterrupt -DRIVER.SYSTEM.VAR.RAM_STACK_IRQ_LENGTH.VALUE=0x00001000 +DRIVER.SYSTEM.VAR.RAM_STACK_IRQ_LENGTH.VALUE=0x00002000 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_11_SUB_6_DISABLE.VALUE=0 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_7_SUB_0_DISABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_2_INT_PRAGMA_ENABLE.VALUE=1 DRIVER.SYSTEM.VAR.CLKT_RTI2_POST_SOURCE.VALUE=VCLK DRIVER.SYSTEM.VAR.CORE_MPU_REGION_9_PERMISSION_VALUE.VALUE=0x1300 DRIVER.SYSTEM.VAR.VIM_CHANNEL_5_NAME.VALUE=rtiCompare3Interrupt -DRIVER.SYSTEM.VAR.RAM_STACK_LENGTH.VALUE=0x00003800 +DRIVER.SYSTEM.VAR.RAM_STACK_LENGTH.VALUE=0x00004c00 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_2_PERMISSION.VALUE=PRIV_RO_USER_RO_EXEC DRIVER.SYSTEM.VAR.CLKT_LPO_BIAS.VALUE=true DRIVER.SYSTEM.VAR.CLKT_AVCLK3_DIVIDER1.VALUE=4 @@ -604,7 +604,7 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_98_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_31_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_23_INT_PRAGMA_ENABLE.VALUE=0 -DRIVER.SYSTEM.VAR.VIM_CHANNEL_15_INT_PRAGMA_ENABLE.VALUE=1 +DRIVER.SYSTEM.VAR.VIM_CHANNEL_15_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.PINMUX_ENABLE.VALUE=1 DRIVER.SYSTEM.VAR.PBIST_ALGO_3_4.VALUE=0 DRIVER.SYSTEM.VAR.CLKT_LPO_BIAS_VALUE.VALUE=1 @@ -628,7 +628,7 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_103_NAME.VALUE=etpwm7TripZoneInterrupt DRIVER.SYSTEM.VAR.PBIST_ALGO_16.VALUE=0 DRIVER.SYSTEM.VAR.CLKT_VCLK2_DIVIDER.VALUE=1 -DRIVER.SYSTEM.VAR.RAM_LINK_LENGTH.VALUE=0x0002c800 +DRIVER.SYSTEM.VAR.RAM_LINK_LENGTH.VALUE=0x0002b400 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_11_END_ADDRESS.VALUE=0x0802ffff DRIVER.SYSTEM.VAR.VIM_CHANNEL_30_INT_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_22_INT_ENABLE.VALUE=0 @@ -806,7 +806,7 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_27_INT_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_21_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_19_INT_ENABLE.VALUE=0 -DRIVER.SYSTEM.VAR.VIM_CHANNEL_13_INT_TYPE.VALUE=FIQ +DRIVER.SYSTEM.VAR.VIM_CHANNEL_13_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.SAFETY_INIT_ADC2_RAMPARITYCHECK_ENA.VALUE=1 DRIVER.SYSTEM.VAR.CLKT_AVCLK3_FREQ.VALUE=103.335 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_9_TYPE_VALUE.VALUE=0x0010 @@ -925,7 +925,7 @@ DRIVER.SYSTEM.VAR.SAFETY_INIT_DMA_DP_PBISTCHECK_ENA.VALUE=0x00000800 DRIVER.SYSTEM.VAR.HET_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.PBIST_ALGO_13_14.VALUE=0 -DRIVER.SYSTEM.VAR.RAM_STACK_UNDEF_BASE.VALUE=0x08003600 +DRIVER.SYSTEM.VAR.RAM_STACK_UNDEF_BASE.VALUE=0x08004800 DRIVER.SYSTEM.VAR.RAM_STACK_SVC_BASE.VALUE=0x08001000 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_9_TYPE.VALUE=DEVICE_NONSHAREABLE DRIVER.SYSTEM.VAR.VIM_CHANNEL_99_INT_PRAGMA_ENABLE.VALUE=0 @@ -951,7 +951,7 @@ DRIVER.SYSTEM.VAR.CORE_MPU_REGION_8_SUB_2_DISABLE.VALUE=0 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_3_END_ADDRESS.VALUE=0x0803ffff DRIVER.SYSTEM.VAR.CORE_MPU_REGION_1_SUB_0_DISABLE.VALUE=1 -DRIVER.SYSTEM.VAR.VIM_CHANNEL_40_INT_TYPE.VALUE=FIQ +DRIVER.SYSTEM.VAR.VIM_CHANNEL_40_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_32_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_24_INT_TYPE.VALUE=IRQ DRIVER.SYSTEM.VAR.VIM_CHANNEL_16_INT_TYPE.VALUE=IRQ @@ -1003,7 +1003,7 @@ DRIVER.SYSTEM.VAR.CORE_HANDLER_TABLE_DATA_ENTRY.VALUE=_dabort DRIVER.SYSTEM.VAR.VIM_CHANNEL_80_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_72_INT_PRAGMA_ENABLE.VALUE=0 -DRIVER.SYSTEM.VAR.VIM_CHANNEL_64_INT_PRAGMA_ENABLE.VALUE=1 +DRIVER.SYSTEM.VAR.VIM_CHANNEL_64_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_56_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_48_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.SAFETY_INIT_ADC1_DP_PBISTCHECK_ENA.VALUE=0x00000400 @@ -1062,7 +1062,7 @@ DRIVER.SYSTEM.VAR.CORE_HANDLER_TABLE_SVC_ENTRY.VALUE=_svc DRIVER.SYSTEM.VAR.VIM_CHANNEL_21_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_20_INT_ENABLE.VALUE=0 -DRIVER.SYSTEM.VAR.VIM_CHANNEL_13_INT_PRAGMA_ENABLE.VALUE=1 +DRIVER.SYSTEM.VAR.VIM_CHANNEL_13_INT_PRAGMA_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CHANNEL_12_INT_ENABLE.VALUE=0 DRIVER.SYSTEM.VAR.VIM_CONFIG_NEW.VALUE=1 DRIVER.SYSTEM.VAR.SAFETY_INIT_FTU_RAMPARITYCHECK_ENA.VALUE=0 @@ -1183,7 +1183,7 @@ DRIVER.SYSTEM.VAR.VIM_CHANNEL_23_NAME.VALUE=gioLowLevelInterrupt DRIVER.SYSTEM.VAR.VIM_CHANNEL_15_NAME.VALUE=adc1Group1Interrupt DRIVER.SYSTEM.VAR.ERRATA_WORKAROUND_15.VALUE=1 -DRIVER.SYSTEM.VAR.RAM_STACK_UNDEF_LENGTH.VALUE=0x00000200 +DRIVER.SYSTEM.VAR.RAM_STACK_UNDEF_LENGTH.VALUE=0x00000400 DRIVER.SYSTEM.VAR.RAM_STACK_SVC_LENGTH.VALUE=0x00000400 DRIVER.SYSTEM.VAR.CLKT_LPO_TRIM_OTP_LOC.VALUE=0xF00801B4 DRIVER.SYSTEM.VAR.CORE_MPU_REGION_6_SUB_6_DISABLE.VALUE=0 Index: firmware/include/sys_core.h =================================================================== diff -u -rf068446fdb7889d320ddb6ffbd58f347ce0501e7 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/include/sys_core.h (.../sys_core.h) (revision f068446fdb7889d320ddb6ffbd58f347ce0501e7) +++ firmware/include/sys_core.h (.../sys_core.h) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -90,7 +90,7 @@ * * @note: Use this macro for IRQ Mode Stack length (in bytes) */ -#define IRQ_STACK_LENGTH 0x00001000U +#define IRQ_STACK_LENGTH 0x00002000U /** @def ABORT_STACK_LENGTH * @brief ABORT Mode Stack length (in bytes) @@ -99,7 +99,7 @@ * * @note: Use this macro for ABORT Mode Stack length (in bytes) */ -#define ABORT_STACK_LENGTH 0x00000200U +#define ABORT_STACK_LENGTH 0x00000400U /** @def UNDEF_STACK_LENGTH * @brief UNDEF Mode Stack length (in bytes) @@ -108,7 +108,7 @@ * * @note: Use this macro for UNDEF Mode Stack length (in bytes) */ -#define UNDEF_STACK_LENGTH 0x00000200U +#define UNDEF_STACK_LENGTH 0x00000400U /* System Core Interface Functions */ Index: firmware/include/sys_vim.h =================================================================== diff -u -rc4434389fe6c3314c2bba98dc2f4cf737551f637 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/include/sys_vim.h (.../sys_vim.h) (revision c4434389fe6c3314c2bba98dc2f4cf737551f637) +++ firmware/include/sys_vim.h (.../sys_vim.h) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -144,9 +144,9 @@ | (uint32)((uint32)SYS_IRQ << 10U)\ | (uint32)((uint32)SYS_IRQ << 11U)\ | (uint32)((uint32)SYS_IRQ << 12U)\ - | (uint32)((uint32)SYS_FIQ << 13U)\ + | (uint32)((uint32)SYS_IRQ << 13U)\ | (uint32)((uint32)SYS_IRQ << 14U)\ - | (uint32)((uint32)SYS_FIQ << 15U)\ + | (uint32)((uint32)SYS_IRQ << 15U)\ | (uint32)((uint32)SYS_IRQ << 16U)\ | (uint32)((uint32)SYS_IRQ << 17U)\ | (uint32)((uint32)SYS_IRQ << 18U)\ @@ -172,7 +172,7 @@ | (uint32)((uint32)SYS_IRQ << 5U)\ | (uint32)((uint32)SYS_IRQ << 6U)\ | (uint32)((uint32)SYS_IRQ << 7U)\ - | (uint32)((uint32)SYS_FIQ << 8U)\ + | (uint32)((uint32)SYS_IRQ << 8U)\ | (uint32)((uint32)SYS_IRQ << 9U)\ | (uint32)((uint32)SYS_IRQ << 10U)\ | (uint32)((uint32)SYS_IRQ << 11U)\ @@ -197,7 +197,7 @@ | (uint32)((uint32)SYS_IRQ << 30U)\ | (uint32)((uint32)SYS_IRQ << 31U)) -#define VIM_FIRQPR2_CONFIGVALUE ( (uint32)((uint32)SYS_FIQ << 0U)\ +#define VIM_FIRQPR2_CONFIGVALUE ( (uint32)((uint32)SYS_IRQ << 0U)\ | (uint32)((uint32)SYS_IRQ << 1U)\ | (uint32)((uint32)SYS_IRQ << 2U)\ | (uint32)((uint32)SYS_IRQ << 3U)\ Index: firmware/source/adc.c =================================================================== diff -u -ra49bd0780d97bb4ce04a9d7b128a6e3c2df044e1 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/source/adc.c (.../adc.c) (revision a49bd0780d97bb4ce04a9d7b128a6e3c2df044e1) +++ firmware/source/adc.c (.../adc.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -988,8 +988,6 @@ /** @fn void adc1Group1Interrupt(void) * @brief ADC1 Group 1 Interrupt Handler */ -#pragma CODE_STATE(adc1Group1Interrupt, 32) -#pragma INTERRUPT(adc1Group1Interrupt, FIQ) /* SourceId : ADC_SourceId_015 */ /* DesignId : ADC_DesignId_013 */ Index: firmware/source/sci.c =================================================================== diff -u -r6d2d8f0267c57135554e5a1acaca9aef37f27949 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/source/sci.c (.../sci.c) (revision 6d2d8f0267c57135554e5a1acaca9aef37f27949) +++ firmware/source/sci.c (.../sci.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -799,8 +799,6 @@ /** @fn void sciHighLevelInterrupt(void) * @brief Level 0 Interrupt for SCI */ -#pragma CODE_STATE(sciHighLevelInterrupt, 32) -#pragma INTERRUPT(sciHighLevelInterrupt, FIQ) /* SourceId : SCI_SourceId_018 */ /* DesignId : SCI_DesignId_017 */ @@ -878,8 +876,6 @@ /** @fn void linHighLevelInterrupt(void) * @brief Level 0 Interrupt for SCILIN */ -#pragma CODE_STATE(linHighLevelInterrupt, 32) -#pragma INTERRUPT(linHighLevelInterrupt, FIQ) /* SourceId : SCI_SourceId_021 */ /* DesignId : SCI_DesignId_017 */ Index: firmware/source/sys_core.asm =================================================================== diff -u -rf068446fdb7889d320ddb6ffbd58f347ce0501e7 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/source/sys_core.asm (.../sys_core.asm) (revision f068446fdb7889d320ddb6ffbd58f347ce0501e7) +++ firmware/source/sys_core.asm (.../sys_core.asm) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -163,9 +163,9 @@ userSp .word 0x08000000+0x00001000 svcSp .word 0x08000000+0x00001000+0x00000400 fiqSp .word 0x08000000+0x00001000+0x00000400+0x00001000 -irqSp .word 0x08000000+0x00001000+0x00000400+0x00001000+0x00001000 -abortSp .word 0x08000000+0x00001000+0x00000400+0x00001000+0x00001000+0x00000200 -undefSp .word 0x08000000+0x00001000+0x00000400+0x00001000+0x00001000+0x00000200+0x00000200 +irqSp .word 0x08000000+0x00001000+0x00000400+0x00001000+0x00002000 +abortSp .word 0x08000000+0x00001000+0x00000400+0x00001000+0x00002000+0x00000400 +undefSp .word 0x08000000+0x00001000+0x00000400+0x00001000+0x00002000+0x00000400+0x00000400 .endasmfunc Index: firmware/source/sys_dma.c =================================================================== diff -u -reff7b1575f008f81b29ef906f6346fac6012d3ab -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/source/sys_dma.c (.../sys_dma.c) (revision eff7b1575f008f81b29ef906f6346fac6012d3ab) +++ firmware/source/sys_dma.c (.../sys_dma.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -454,8 +454,6 @@ * Frame transfer complete Interrupt handler for DMA channel routed to Group A * */ -#pragma CODE_STATE(dmaBTCAInterrupt, 32) -#pragma INTERRUPT(dmaBTCAInterrupt, FIQ) /* SourceId : DMA_SourceId_019 */ /* DesignId : DMA_DesignId_016 */ Index: firmware/source/sys_link.cmd =================================================================== diff -u -rf068446fdb7889d320ddb6ffbd58f347ce0501e7 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/source/sys_link.cmd (.../sys_link.cmd) (revision f068446fdb7889d320ddb6ffbd58f347ce0501e7) +++ firmware/source/sys_link.cmd (.../sys_link.cmd) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -56,8 +56,8 @@ { VECTORS (X) : origin=0x00000000 length=0x00000020 FLASH0 (RX) : origin=0x00000020 length=0x0013FFE0 - STACKS (RW) : origin=0x08000000 length=0x00003800 - RAM (RW) : origin=0x08003800 length=0x0002c800 + STACKS (RW) : origin=0x08000000 length=0x00004c00 + RAM (RW) : origin=0x08004c00 length=0x0002b400 /* USER CODE BEGIN (2) */ /* USER CODE END */ Index: firmware/source/sys_startup.c =================================================================== diff -u -reff7b1575f008f81b29ef906f6346fac6012d3ab -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/source/sys_startup.c (.../sys_startup.c) (revision eff7b1575f008f81b29ef906f6346fac6012d3ab) +++ firmware/source/sys_startup.c (.../sys_startup.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -636,6 +636,15 @@ vimInit(); /* USER CODE BEGIN (74) */ + // shuffle IRQ priorities per design requirements + vimChannelMap( 3, 40, &rtiCompare1Interrupt ); + vimChannelMap( 5, 64, &rtiCompare3Interrupt ); + vimChannelMap( 13, 3, &linHighLevelInterrupt ); + vimChannelMap( 15, 29, &adc1Group1Interrupt ); + vimChannelMap( 16, 15, &can1HighLevelInterrupt ); + vimChannelMap( 29, 13, &can1LowLevelInterrupt ); + vimChannelMap( 40, 5, &dmaBTCAInterrupt ); + vimChannelMap( 64, 16, &sciHighLevelInterrupt ); /* USER CODE END */ /* Configure system response to error conditions signaled to the ESM group1 */ Index: firmware/source/sys_vim.c =================================================================== diff -u -rc4434389fe6c3314c2bba98dc2f4cf737551f637 -r0953a2a6940f9f096fa98cc1e8a5578deab4d8ef --- firmware/source/sys_vim.c (.../sys_vim.c) (revision c4434389fe6c3314c2bba98dc2f4cf737551f637) +++ firmware/source/sys_vim.c (.../sys_vim.c) (revision 0953a2a6940f9f096fa98cc1e8a5578deab4d8ef) @@ -240,9 +240,9 @@ | (uint32)((uint32)SYS_IRQ << 10U) | (uint32)((uint32)SYS_IRQ << 11U) | (uint32)((uint32)SYS_IRQ << 12U) - | (uint32)((uint32)SYS_FIQ << 13U) + | (uint32)((uint32)SYS_IRQ << 13U) | (uint32)((uint32)SYS_IRQ << 14U) - | (uint32)((uint32)SYS_FIQ << 15U) + | (uint32)((uint32)SYS_IRQ << 15U) | (uint32)((uint32)SYS_IRQ << 16U) | (uint32)((uint32)SYS_IRQ << 17U) | (uint32)((uint32)SYS_IRQ << 18U) @@ -268,7 +268,7 @@ | (uint32)((uint32)SYS_IRQ << 5U) | (uint32)((uint32)SYS_IRQ << 6U) | (uint32)((uint32)SYS_IRQ << 7U) - | (uint32)((uint32)SYS_FIQ << 8U) + | (uint32)((uint32)SYS_IRQ << 8U) | (uint32)((uint32)SYS_IRQ << 9U) | (uint32)((uint32)SYS_IRQ << 10U) | (uint32)((uint32)SYS_IRQ << 11U) @@ -294,7 +294,7 @@ | (uint32)((uint32)SYS_IRQ << 31U); - vimREG->FIRQPR2 = (uint32)((uint32)SYS_FIQ << 0U) + vimREG->FIRQPR2 = (uint32)((uint32)SYS_IRQ << 0U) | (uint32)((uint32)SYS_IRQ << 1U) | (uint32)((uint32)SYS_IRQ << 2U) | (uint32)((uint32)SYS_IRQ << 3U)