Small MDMA improvement.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@15539 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
parent
b40bae71c9
commit
bbb6eb43a8
|
@ -66,12 +66,13 @@ static struct {
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
static void mdma_serve_interrupt(const stm32_mdma_channel_t *mdmachp) {
|
static void mdma_serve_interrupt(const stm32_mdma_channel_t *mdmachp) {
|
||||||
uint32_t flags;
|
uint32_t flags, eflags;
|
||||||
|
|
||||||
flags = mdmachp->channel->CISR;
|
flags = mdmachp->channel->CISR;
|
||||||
|
eflags = mdmachp->channel->CESR;
|
||||||
mdmachp->channel->CIFCR = flags;
|
mdmachp->channel->CIFCR = flags;
|
||||||
if (mdmachp->func != NULL) {
|
if (mdmachp->func != NULL) {
|
||||||
mdmachp->func(mdmachp->param, flags);
|
mdmachp->func(mdmachp->param, flags | (eflags << 16));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -277,7 +277,8 @@
|
||||||
* @brief STM32 MDMA ISR function type.
|
* @brief STM32 MDMA ISR function type.
|
||||||
*
|
*
|
||||||
* @param[in] p parameter for the registered function
|
* @param[in] p parameter for the registered function
|
||||||
* @param[in] flags content of the CISR register
|
* @param[in] flags content of the CISR register in the lower 16 bits,
|
||||||
|
* content of the CESR register in the upper 16 bits
|
||||||
*/
|
*/
|
||||||
typedef void (*stm32_mdmaisr_t)(void *p, uint32_t flags);
|
typedef void (*stm32_mdmaisr_t)(void *p, uint32_t flags);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue