cancel
Showing results for 
Search instead for 
Did you mean: 

uCLinux on STM32F429I-DISCO

tmkaran
Associate II
Posted on November 13, 2013 at 10:54

Hi everybody,

I was very happy to see uCLinux port for Cortex-M4 and my favorite MCU STM32. This well done job was achieved by emcraft. So I wonder that is it possible to run uCLinux on my new toy STM32F429I-DISCO? I have started for it and some u-boot and kernel patching I finished my first job. You must known that code execution from SDRAM on STM32F4 much slower than from FLASH (~6x times slower). So in fact this core is not suitable code execution from SDRAM. But maybe you don't have any chance so you can accept this penalty. 

Than I modified the kernel to load romfs from flash, simple frame buffer driver, u-boot patching for SDRAM and LCD init functions. You can try and decide for yourself. This is boot-up and simple framebuffer demo video. 

http://youtu.be/avbnkhvZrVo

Emcraft original source git is https://github.com/EmcraftSystems (not including STM32F429I-DISCO board drivers)

Sample image attached to the post. This image contains u-boot, kernel and romfs. 

The serial console is USART3 and PC10->MCU TX, PC11->MCU RX. Don't forget that this interface has TTL levels.

#usart #stm32-uclinux-u-boot #usb-driver-p19-stm324f
65 REPLIES 65
tmkaran
Associate II
Posted on November 29, 2013 at 07:47

Hi, 

The kernel doesn't support usb hcd for STM32F4 yet. I will add the USB drivers for STM32F4 soon. Then I can share for testing.

Regards 

grzegorz23
Associate II
Posted on November 29, 2013 at 08:22

New version working fine 🙂

My suggestion:

Please add in hello_world program printf('Hello world') working on LCD.

tmkaran
Associate II
Posted on November 29, 2013 at 14:28

ok... good idea... I will add

kenkyee
Associate II
Posted on December 04, 2013 at 00:41

> Please add in hello_world program printf('Hello world') working on LCD.

Or even better...the first few lines from the ''top'' command...

tmkaran
Associate II
Posted on December 05, 2013 at 19:56

Hi guys,

Sorry for late response. I am busy nowadays. So the attached file contains startup application that is show cpu information on the TFT. It is for just testing. Console on serial port is still valid.

________________

Attachments :

uboot_kernel_romfs.zip : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006HzZ3&d=%2Fa%2F0X0000000bNn%2FGU40NWaTFZrCVwcMogi3KvP00XQg.EvDah_rTJNiS44&asPdf=false
grzegorz23
Associate II
Posted on December 06, 2013 at 11:24

Working fine:-)

BogoMIPS 168.34

CPU implementer 0x41

CPU architecture ?(11)

CPU variant 0x0

CPU part 0xc24

CPU revision 1

If you want - I can add USB keyboard support for LCD console.

sarraciro
Associate II
Posted on December 06, 2013 at 11:43

Yes, can be usefull...(imho) certly yes,

The support could include the possibility to switch from OTG (traditional keyboard) and LCD keyboard (Dvorak) in case OTG is un-connected.... (this is a cool feature).

I tryed your uboots and them work properly...

But I have to load the .hex using ST-Utility because using st-flash the programming failed...

I wrote to 0x0800 0000 but nothing....

You have experience with I-Disco + st-utils (st-texane) ???

Regards

tmkaran
Associate II
Posted on December 06, 2013 at 11:47

Great news body... I appreciated to you for your contribution. I will share the source body 

sloth
Associate
Posted on December 06, 2013 at 14:50

Hi TMK

If you need any help publishing the source then please let me know. The work you have done so fare are very impressive and I will hate to be forced to duplicate it.

Regards

Jakob

tmkaran
Associate II
Posted on December 06, 2013 at 15:18

Hi Jakob,

I am updating sources to the github rightnow and I will inform everyone who are interested after finish.