'Virtual Call' of vPortEndScheduler()

jwestmoreland wrote on Saturday, May 20, 2006:

Jeff,

MSP430 - IAR port - done by me.:wink:

Note - the stuff posted on my web-site doesn’t use DMA.  I’m not sure if this has something to do with it or not at this point - I’m beginning to think it is more core to the port - something I’ve overlooked, left out, etc.

Feel free to go to my web-site and download one of the ports - or both - and check out the code for yourself.  The demos. written for both boards on my site ran for weeks (more than 1 month actually) before I powered them off - so I know the ports - for what they are - are stable.  Meaning the core code is very stable - or as stable as it can get in this world at least.  With that known - it has to be what is different - correct?  (Ah, Sherlock strikes again!)

I have one target that uses 3 DMA channels without IRQ’s (they said it couldn’t be done - but alas!) that will run basically forever like my demo. ports.  The port with 2 DMA Channels - one using IRQ’s - is the one that will croak intermittently.

I have to conclude that something about my DMA IRQ isn’t correct - or maybe more precisely something about my port makes my DMA IRQ incorrect.  I can run a similar scenario but at lower performance using RCV UART IRQ’s - but my system spends too much time in UART RCV IRQ’s which I’m trying to minimize.  With DMA enabled - the performance is nice - I can get burst throughputs with DMA at 1MB - that’s right - 1 MEGA BAUD.  Not bad for the tiny MSP430.  Of course I’ve done some things to enhance this - but nothing that breaks the architecture of FreeRTOS.

Thanks In Advance,
John W.