You can easily run the mainline linux on stm32f429 and any other MMU-less mcu. I've ran the mainline linux kernel on the stm32h743 (it's also MMU-less like stm32f4).
But the only problem is your development board doesn't have an external dram.
For running linux you need at least 4MB of RAM.
So I recommend you to buy Evaluation board with STM32F429NI MCU. Also this evalution board has an sdcard slot.
Steps to run linux on your board:
- download the u-boot and linux kernel and busybox.
- build the u-boot and linux kernel and busybox (for creating rootfs with busybox follow this guide).
- flash u-boot into the stm32 internal flash memory
- make your sdcard ready (make a 20MB fat partition and make a large ext4 partition)
- copy the boot files into the sdcard (the dtb file of your board and the zImage of your kernel to the fat partition and copy the rootfs to the ext4 partition).
- use u-boot commands to load DTB and zImage into the dram and boot the kernel.
some useful and nessesary u-boot commands:
- use "fatload" command to load the DTB and zImage e.g. (fatload mmc 0:1 ${kernel_addr_r} zImage).
- use "setenv bootargs" command to set the bootargs e.g. (setenv bootargs console=ttySTM0,115200n8 root=/dev/mmcblk0p2 rw rootwait loglevel=7 init=/linuxrc).
- use "bootz" command to boot the kernel e.g. (bootz ${kernel_addr_r} - ${fdt_addr_r}).
PS: uClinux is old and useless. don't use it when u can use the latest mainline linux kernel.