stm32f429 discovery 评估板 Linux 开发
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
配置repo文件的权限
chmod a+x repo
配置默认REPO_URL(可以添加到 ~/.bashrc 文件末尾)
export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'
mkdir stm32f429_disc_linux
cd stm32f429_disc_linux
repo init -u git@gitee.com:stm32f429-disco-linux/manifest.git -b master
repo sync
cd stm32f429_disc_linux
. build/envsetup.sh
./build_stm32f429_disc_linux.sh all
kernel message:
~ # .[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.11.12-g2d7aeadb539d (lisongze@gerrit.lisongze.cn) (gcc version 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496] (GNU Tools for ARM Embedded Processors) ) #2 PREEMPT Wed Feb 12 23:52:43 CST 2020
[ 0.000000] CPU: ARMv7-M [410fc241] revision 1 (ARMv7M), cr=00000000
[ 0.000000] CPU: unknown data cache, unknown instruction cache
[ 0.000000] OF: fdt: Machine model: STMicroelectronics STM32F429i-DISCO board
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping off. Total pages: 2032
[ 0.000000] Kernel command line: root=/dev/ram
[ 0.000000] PID hash table entries: 32 (order: -5, 128 bytes)
[ 0.000000] Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.000000] Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.000000] Memory: 7816K/8192K available (1065K kernel code, 100K rwdata, 352K rodata, 59K init, 106K bss, 376K reserved, 0K cma-reserved)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0x00000000 - 0x00001000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0x00000000 - 0xffffffff (4095 MB)
[ 0.000000] lowmem : 0x90000000 - 0x90800000 ( 8 MB)
[ 0.000000] .text : 0x08008000 - 0x0816a740 (1418 kB)
[ 0.000000] .init : 0x9000a000 - 0x9000d000 ( 12 kB)
[ 0.000000] .data : 0x90008000 - 0x90024000 ( 112 kB)
[ 0.000000] .bss : 0x90024000 - 0x9003e928 ( 107 kB)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] Build-time adjustment of leaf fanout to 32.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] /soc/interrupt-controller@40013c00: 23 External IRQs detected
[ 0.000000] clocksource: arm_system_timer: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 355517175 ns
[ 0.000000] ARM System timer initialized as clocksource
[ 0.000000] /soc/timer@40000c00: STM32 clockevent driver initialized (32 bits)
[ 0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 21474836475000000ns
[ 0.010000] Calibrating delay loop... 110.48 BogoMIPS (lpj=552448)
[ 0.100000] pid_max: default: 4096 minimum: 301
[ 0.100000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.100000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.110000] devtmpfs: initialized
[ 0.150000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.150000] pinctrl core: initialized pinctrl subsystem
[ 0.230000] stm32-dma 40026000.dma-controller: STM32 DMA driver registered
[ 0.240000] stm32-dma 40026400.dma-controller: STM32 DMA driver registered
[ 0.240000] clocksource: Switched to clocksource arm_system_timer
[ 0.750000] workingset: timestamp_bits=30 max_order=11 bucket_order=0
[ 0.790000] io scheduler noop registered (default)
[ 0.790000] io scheduler mq-deadline registered
[ 0.790000] stm32f429-pinctrl soc:pin-controller: GPIOA bank added
[ 0.790000] stm32f429-pinctrl soc:pin-controller: GPIOB bank added
[ 0.790000] stm32f429-pinctrl soc:pin-controller: GPIOC bank added
[ 0.800000] stm32f429-pinctrl soc:pin-controller: GPIOD bank added
[ 0.810000] stm32f429-pinctrl soc:pin-controller: GPIOE bank added
[ 0.810000] stm32f429-pinctrl soc:pin-controller: GPIOF bank added
[ 0.810000] stm32f429-pinctrl soc:pin-controller: GPIOG bank added
[ 0.810000] stm32f429-pinctrl soc:pin-controller: GPIOH bank added
[ 0.810000] stm32f429-pinctrl soc:pin-controller: GPIOI bank added
[ 0.810000] stm32f429-pinctrl soc:pin-controller: GPIOJ bank added
[ 0.820000] stm32f429-pinctrl soc:pin-controller: GPIOK bank added
[ 0.820000] stm32f429-pinctrl soc:pin-controller: Pinctrl STM32 initialized
[ 0.820000] STM32 USART driver initialized
[ 0.820000] 40011000.serial: ttyS0 at MMIO 0x40011000 (irq = 32, base_baud = 5250000) is a stm32-usart
[ 1.190000] console [ttyS0] enabled
[ 1.200000] stm32_rtc 40002800.rtc: rtc core: registered 40002800.rtc as rtc0
[ 1.210000] stm32_rtc 40002800.rtc: Date/Time must be initialized
[ 1.230000] input: gpio_keys as /devices/platform/gpio_keys/input/input0
[ 1.240000] stm32_rtc 40002800.rtc: setting system clock to 2000-01-01 01:19:23 UTC (946689563)
[ 1.250000] Freeing unused kernel memory: 12K
[ 1.260000] This architecture does not have kernel memory protection.
can't run '/sbin/swapon': No such file or directory
[ 1.600000] random: fast init done
Saving random seed: OK
hello stm32 linux!
_ _ _ _ _________ _ _
| |__ ___| | | ___ ___| |_ _ __ ___ |___ /___ \ | (_)_ __ _ ___ __
| '_ \ / _ \ | |/ _ \ / __| __| '_ ` _ \ |_ \ __) | | | | '_ \| | | \ \/ /
| | | | __/ | | (_) | \__ \ |_| | | | | |___) / __/ | | | | | | |_| |> <
|_| |_|\___|_|_|\___/ |___/\__|_| |_| |_|____/_____| |_|_|_| |_|\__,_/_/\_\
Welcome to Buildroot
buildroot login: root
Jan 1 01:19:53 login[39]: root login on 'console'
~ # ls
~ # cd /
/ # ls
bin init linuxrc opt run tmp
dev lib media proc sbin usr
etc lib32 mnt root sys var
/ #