From ca1f8ac53e4af7c72a36f294fb720a3f63cac34d Mon Sep 17 00:00:00 2001 From: patacongo Date: Thu, 26 Nov 2009 00:18:22 +0000 Subject: Numerous fixes for basic STM32 SDIO DMA access git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2279 42af7a65-404d-4744-a932-0658087f49c3 --- nuttx/arch/arm/src/common/up_initialize.c | 13 +++++++++++++ nuttx/arch/arm/src/common/up_internal.h | 3 +++ 2 files changed, 16 insertions(+) (limited to 'nuttx/arch/arm/src/common') diff --git a/nuttx/arch/arm/src/common/up_initialize.c b/nuttx/arch/arm/src/common/up_initialize.c index 995a319e6..d12a23de1 100644 --- a/nuttx/arch/arm/src/common/up_initialize.c +++ b/nuttx/arch/arm/src/common/up_initialize.c @@ -124,6 +124,19 @@ void up_initialize(void) up_irqinitialize(); + /* Initialize the DMA subsystem if the weak function stm32_dmainitialize has been + * brought into the build + */ + +#ifdef CONFIG_ARCH_DMA +#ifdef CONFIG_HAVE_WEAKFUNCTIONS + if (up_dmainitialize) +#endif + { + up_dmainitialize(); + } +#endif + /* Initialize the system timer interrupt */ #if !defined(CONFIG_SUPPRESS_INTERRUPTS) && !defined(CONFIG_SUPPRESS_TIMER_INTS) diff --git a/nuttx/arch/arm/src/common/up_internal.h b/nuttx/arch/arm/src/common/up_internal.h index ee5864794..9abf4a0b6 100644 --- a/nuttx/arch/arm/src/common/up_internal.h +++ b/nuttx/arch/arm/src/common/up_internal.h @@ -156,6 +156,9 @@ extern void up_boot(void); extern void up_copystate(uint32 *dest, uint32 *src); extern void up_decodeirq(uint32 *regs); extern void up_irqinitialize(void); +#ifdef CONFIG_ARCH_DMA +extern void weak_function up_dmainitialize(void); +#endif extern int up_saveusercontext(uint32 *saveregs); extern void up_fullcontextrestore(uint32 *restoreregs) __attribute__ ((noreturn)); extern void up_switchcontext(uint32 *saveregs, uint32 *restoreregs); -- cgit v1.2.3