[DONE] The New STM32F429/F439

This forum is dedicated to feedback, discussions about ongoing or future developments, ideas and suggestions regarding the ChibiOS projects are welcome. This forum is NOT for support.
User avatar
Tectu
Posts: 1225
Joined: Thu May 10, 2012 9:50 am

Re: [TODO] The New STM32F429/F439

Post by Tectu »

Giovanni wrote:The demo does not yet initialize the SDRAM and the LCD.

Any updates on this, Giovanni?


~ Tectu
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: [DONE] The New STM32F429/F439

Post by Giovanni »

Not yet, there are too many bug fixes waiting and I have to empty the queue and make a release first. You may do a temporary initialization in board.c using the ST code in the meanwhile.

Giovanni
User avatar
Tectu
Posts: 1225
Joined: Thu May 10, 2012 9:50 am

Re: [DONE] The New STM32F429/F439

Post by Tectu »

Is it possible to copy paste the ST code when I enable the STDLIB in the Makefile?


~ Tectu
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: [DONE] The New STM32F429/F439

Post by Giovanni »

You can add to the Makefile just the modules you need, not the whole thing.

Giovanni
TechNick
Posts: 1
Joined: Fri Nov 22, 2013 10:45 am

Re: [DONE] The New STM32F429/F439

Post by TechNick »

hi guys,

played a bit with your port to the stm32f429. great job!

but maybe you need to adapt the vectors.s-file. the last irq-handler in your file is the one for the fpu. according to the startup-file from st the f429/439-line has 9 additional interrupts. noticed this while porting seggers emwin from the freertos-example to chibios, because it uses dma2d.


greetings
nick
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: [DONE] The New STM32F429/F439

Post by Giovanni »

Hi,

Thanks for finding, fixed in repository.

Giovanni
trepidacious
Posts: 58
Joined: Mon Jan 21, 2013 3:36 pm
Been thanked: 1 time

Re: [DONE] The New STM32F429/F439

Post by trepidacious »

Hi,

I'm just trying out a 427 on my own board, the port is looking great so far, there are quite a lot of peripherals used on there so it should be good testing. I'm also looking forward to finding out whether the DCMI DMA errata is really fixed, which I should be able to do soon ;)

I did notice that the .ld file for the 429 defines the whole DMA-able SRAM as one region "ram", whereas on the 407 this was mapped as separate "ram" and "ethram" regions for the 112KiB and 16KiB SRAM regions. One big region seems much more convenient, but I was wondering whether the SRAM can always be treated this way, for example for DMA transfers etc.?

I've been reading through the datasheet and reference manual, and I can't really find anything that seems relevant, except that the DMA controller apparently has separate bus connections for the 3 regions, not sure what the significance is, I guess putting buffers for use by different DMA controllers in different regions might help performance, but I'm not too bothered about this.

Ben.
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: [DONE] The New STM32F429/F439

Post by Giovanni »

There are 3 separate regions and many combinations plus the external memory so I decided to support the most simple solution. An application so advanced that would require attention to such details, almost certainly, would also require a custom scatter file.

Giovanni
User avatar
TexZK
Posts: 57
Joined: Sat Sep 22, 2012 7:06 pm

Re: [DONE] The New STM32F429/F439

Post by TexZK »

You forget that there is also a CCM, so the memory regions are actually 4 :geek: Of course each of these regions is better suited for some purposes. Splitting them inside a custom linker script is rather easy anyway, so that you can partition them the best way for your application requirements, as it isn't easy to provide a good default linker script.
trepidacious
Posts: 58
Joined: Mon Jan 21, 2013 3:36 pm
Been thanked: 1 time

Re: [DONE] The New STM32F429/F439

Post by trepidacious »

You're right, I was omitting the CCM since that has a clear difference with the DMA, but I wasn't clear on the significance of the non-CCM SRAM regions. On the 407 I used a custom linker script to use the ethram specifically for some large DMA buffers, so I was sure nothing would run across a boundary. I guess on the 427 I'll just define another region, and manually assign stuff to that as well.

One drawback of that approach is that (AFAICT) there is no static initialisation of variables except in the first "ram" region. This was a bit of a surprise when I first ran into it, so it would be quite handy to have one big ram region that all supported static initialisation. I've not looked into it but my understanding is that this could alternatively be addressed in startup code that handled multiple regions.
Post Reply