![]() |
Kinetis Bootloader
2.0.0
Common bootloader for Kinetis devices
|
Typedefs | |
| typedef int32_t | status_t |
| Type used for all status and error return values. | |
Enumerations | |
| enum | _status_groups { kStatusGroup_Generic = 0, kStatusGroup_FLASH = 1, kStatusGroup_LPSPI = 4, kStatusGroup_FLEXIO_SPI = 5, kStatusGroup_DSPI = 6, kStatusGroup_FLEXIO_UART = 7, kStatusGroup_FLEXIO_I2C = 8, kStatusGroup_LPI2C = 9, kStatusGroup_UART = 10, kStatusGroup_I2C = 11, kStatusGroup_LPSCI = 12, kStatusGroup_LPUART = 13, kStatusGroup_SPI = 14, kStatusGroup_XRDC = 15, kStatusGroup_SEMA42 = 16, kStatusGroup_SDHC = 17, kStatusGroup_SDMMC = 18, kStatusGroup_SAI = 19, kStatusGroup_MCG = 20, kStatusGroup_SCG = 21, kStatusGroup_SDSPI = 22, kStatusGroup_FLEXIO_I2S = 23, kStatusGroup_SDRAMC = 35, kStatusGroup_POWER = 39, kStatusGroup_ENET = 40, kStatusGroup_PHY = 41, kStatusGroup_TRGMUX = 42, kStatusGroup_SMARTCARD = 43, kStatusGroup_LMEM = 44, kStatusGroup_QSPI = 45, kStatusGroup_DMA = 50, kStatusGroup_EDMA = 51, kStatusGroup_DMAMGR = 52, kStatusGroup_FLEXCAN = 53, kStatusGroup_LTC = 54, kStatusGroup_FLEXIO_CAMERA = 55, kStatusGroup_NOTIFIER = 98, kStatusGroup_DebugConsole = 99, kStatusGroup_ApplicationRangeStart = 100 } |
| Status group numbers. More... | |
| enum | _generic_status { kStatus_Success = MAKE_STATUS(kStatusGroup_Generic, 0), kStatus_Fail = MAKE_STATUS(kStatusGroup_Generic, 1), kStatus_ReadOnly = MAKE_STATUS(kStatusGroup_Generic, 2), kStatus_OutOfRange = MAKE_STATUS(kStatusGroup_Generic, 3), kStatus_InvalidArgument = MAKE_STATUS(kStatusGroup_Generic, 4), kStatus_Timeout = MAKE_STATUS(kStatusGroup_Generic, 5), kStatus_NoTransferInProgress = MAKE_STATUS(kStatusGroup_Generic, 6), kStatus_Success = MAKE_STATUS(kStatusGroupGeneric, 0), kStatus_Fail = MAKE_STATUS(kStatusGroupGeneric, 1), kStatus_ReadOnly = MAKE_STATUS(kStatusGroupGeneric, 2), kStatus_OutOfRange = MAKE_STATUS(kStatusGroupGeneric, 3), kStatus_InvalidArgument = MAKE_STATUS(kStatusGroupGeneric, 4) } |
| Generic status return codes. | |
Functions | |
| static void | EnableIRQ (IRQn_Type interrupt) |
| Enable specific interrupt. More... | |
| static void | DisableIRQ (IRQn_Type interrupt) |
| Disable specific interrupt. More... | |
| static uint32_t | DisableGlobalIRQ (void) |
| Disable the global IRQ. More... | |
| static void | EnableGlobalIRQ (uint32_t primask) |
| Enaable the global IRQ. More... | |
| void | InstallIRQHandler (IRQn_Type irq, uint32_t irqHandler) |
| install IRQ handler More... | |
| enum _status_groups |
Status group numbers.
|
inlinestatic |
Disable the global IRQ.
Disable the global interrupt and return the current primask register. User is required to provided the primask register for the EnableGlobalIRQ().
|
inlinestatic |
Disable specific interrupt.
Disable the interrupt not routed from intmux.
| interrupt | The IRQ number. |
|
inlinestatic |
Enaable the global IRQ.
Set the primask register with the provided primask value but not just enable the primask. The idea is for the convinience of integration of RTOS. some RTOS get its own management mechanism of primask. User is required to use the EnableGlobalIRQ() and DisableGlobalIRQ() in pair.
| primask | value of primask register to be restored. The primask value is supposed to be provided by the DisableGlobalIRQ(). |
|
inlinestatic |
Enable specific interrupt.
Enable the interrupt not routed from intmux.
| interrupt | The IRQ number. |
| void InstallIRQHandler | ( | IRQn_Type | irq, |
| uint32_t | irqHandler | ||
| ) |
install IRQ handler
| irq | IRQ number |
| irqHandler | IRQ handler address |