文章目录

  • 一、github代理下载
  • 二、Uboot
    • 1.uboot下载
    • 2.uboot的基本结构
    • 3.uboot配置屏幕
    • 4.修改可以从tf卡启动
    • 5.配置
    • 6.编译
    • 6.烧录测试
      • 1.进入 fel 模式使用 sunxi-fel 工具烧录
        • 1.基本命令
        • 2.有两种方式进行程序下载:
      • 2.烧录到TF/SD卡
    • 7.uboot启动信息
  • 三、主线linxu编译与烧录
    • 1.下载
    • 2.修改顶层Makefile
    • 3.编译
      • 1.不修改Makefile
      • 2.修改Makefile
    • 4.编译之后生成文件
  • 四、Buildroot
    • 1.下载
    • 2.配置
    • 3.编译
    • 4.生成的文件
  • 五、GParted分区工具
  • 六、烧录全部流程
    • 0.准备阶段
      • 1.拷贝uboot
      • 2.拷贝zImage和dtb
      • 3.rootfs
    • 4.img文件夹
    • 5.查看挂载tf卡
    • 1.烧录uboot
    • 2.烧录zImage和dtb
    • 3.烧录rootfs
    • 4.查看启动信息

一、github代理下载

在我们编译的过程中需要去github中下载程序,但是速度非常慢,这里我们就可以用一个代理去下载,速度会稍微快一点。

可以将本来的

git clone https://github.com/xxx.git

改成:

git clone https://github.com.cnpmjs.org/xxx.git

这样通过代理可以比较轻松地加速。

二、Uboot

1.uboot下载

//普通

git clone https://github.com.cnpmjs.org/Lichee-Pi/u-boot.git -b v3s-current

//支持spi flash

git clone https://github.com.cnpmjs.org/Lichee-Pi/u-boot.git -b v3s-spi-experimental

这里我们使用的是普通版本。


下载过程可能有点慢,大家稍微等一下

上述就是下载完成,下载完成后会在当前目录生成u-boot

2.uboot的基本结构

├── api 存放uboot提供的API接口函数
├── arch 平台相关的部分我们只需要关心这个目录下的ARM文件夹
│ ├──arm
│ │ └──cpu
│ │ │ └──armv7
│ │ └──dts
│ │ │ └──*.dts 存放设备的dts,也就是设备配置相关的引脚信息
├── board 对于不同的平台的开发板对应的代码
├── cmd 顾名思义,大部分的命令的实现都在这个文件夹下面。
├── common 公共的代码
├── configs 各个板子的对应的配置文件都在里面,我们的Lichee配置也在里面
├── disk 对磁盘的一些操作都在这个文件夹里面,例如分区等。
├── doc 参考文档,这里面有很多跟平台等相关的使用文档。
├── drivers 各式各样的驱动文件都在这里面
├── dts 一种树形结构(device tree)这个应该是uboot新的语法
├── examples 官方给出的一些样例程序
├── fs 文件系统,uboot会用到的一些文件系统
├── include 头文件,所有的头文件都在这个文件夹下面
├── lib 一些常用的库文件在这个文件夹下面
├── Licenses 这个其实跟编译无关了,就是一些license的声明
├── net 网络相关的,需要用的小型网络协议栈
├── post 上电自检程序
├── scripts 编译脚本和Makefile文件
├── spl second program loader,即相当于二级uboot启动。
├── test 小型的单元测试程序。
└── tools 里面有很多uboot常用的工具。

3.uboot配置屏幕

//不同屏幕不同配置(配置文件在configs文件夹下)--------------------------------------
//默认
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LicheePi_Zero_defconfig
//4.3寸屏
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LicheePi_Zero_480x272LCD_defconfig
//5寸屏
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LicheePi_Zero_800x480LCD_defconfig

这里我们使用的是5寸屏幕

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LicheePi_Zero_800x480LCD_defconfig

4.修改可以从tf卡启动

如果不修改这个,后面添加的内核和文件系统都不能启动,但是uboot可以启动(这个真是血的教训)
修改 include/configs/sun8i.h, 使u-boot可以直接从tf卡启动:

 vim include/configs/sun8i.h

#define CONFIG_BOOTCOMMAND   "setenv bootm_boot_mode sec; " \"load mmc 0:1 0x41000000 zImage; "  \"load mmc 0:1 0x41800000 sun8i-v3s-licheepi-zero-dock.dtb; " \"bootz 0x41000000 - 0x41800000;"#define CONFIG_BOOTARGS      "console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 earlyprintk rw  vt.global_cursor_default=0"

5.配置

这一步我们暂时先不用配置

make ARCH=arm menuconfig

6.编译

ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make -j4


生成的uboot就在这个目录下面

6.烧录测试

1.进入 fel 模式使用 sunxi-fel 工具烧录

关于这个工具的安装,请看连接:暂时还没有写

1.基本命令

//检查是否可以探测到芯片信息:

sudo sunxi-fel -l


//确认是否成功进入fel模式:

sudo sunxi-fel ver

2.有两种方式进行程序下载:

烧录到RAM中去执行,以 uboot file-with-spl形式进行(单次运行,测试时个人推荐(需要先用上面的指令测试连接成功)

sudo sunxi-fel uboot u-boot-sunxi-with-spl.bin

烧录到 spi-flash (开机自启)

sunxi-fel -p spiflash-write 0 u-boot-sunxi-with-spl.bin

注意:如果烧录到 spi-flash ,需要修改 include/configs/sun8i.h ,从flash引导系统

2.烧录到TF/SD卡

TF卡中的系统镜像一般分为三个区:

boot区或者引导区 - 该部分没有文件系统而是直接将二进制的bootloader(uboot)文件直接写入。
linux内核区 - fat文件系统,存放linux内核、内核参数文件还有设备数dtb文件。
rootfs分区 - 用来存放根文件系统和用户数据等,一般是ext4文件分区格式

ls /dev/sd*


//删除TF/SD的分区信息

sudo dd if=/dev/zero of=/dev/sdb bs=512K count=1


//烧录到TF卡(u-boot-sunxi-with-spl.bin在uboot根目录下)

sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdb bs=1024 seek=8

7.uboot启动信息

U-Boot SPL 2017.01-rc2-00057-g32ab1804cd (Jul 16 2021 - 01:55:39)
DRAM: 64 MiB
Trying to boot from FELU-Boot 2017.01-rc2-00057-g32ab1804cd (Jul 16 2021 - 01:55:39 -0400) Allwinner TechnologyCPU:   Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM:  64 MiB
MMC:   SUNXI SD/MMC: 0
Card did not respond to voltage select!
*** Warning - MMC init failed, using default environmentSetting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In:    serial@01c28000
Out:   serial@01c28000
Err:   serial@01c28000U-Boot 2017.01-rc2-00057-g32ab1804cd (Jul 16 2021 - 01:55:39 -0400) Allwinner TechnologyCPU:   Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM:  64 MiB
MMC:   SUNXI SD/MMC: 0
Card did not respond to voltage select!
*** Warning - MMC init failed, using default environmentSetting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In:    serial@01c28000
Out:   serial@01c28000
Err:   serial@01c28000
Net:   No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot:  0
Card did not respond to voltage select!
starting USB...
No controllers found
USB is stopped. Please issue 'usb start' first.
starting USB...
No controllers found
No ethernet found.
missing environment variable: pxeuuid
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-sunxi
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default
No ethernet found.
Config file not found
starting USB...
No controllers found
No ethernet found.
No ethernet found.
=> <INTERRUPT>
=>

三、主线linxu编译与烧录

1.下载

# 默认是zero-4.10.y分支:
git clone https://github.com/Lichee-Pi/linux.git# 或者`zero-4.13.y`对网卡的支持更好
git clone -b zero-4.13.y https://github.com/Lichee-Pi/linux.git# 或者使用最新的内核:
git clone -b zero-5.2.y https://github.com/Lichee-Pi/linux.git

这里使用zero-4.10.y`
下载很慢

解压

2.修改顶层Makefile

在内核根目录下的Makefile364行修改默认编译器,可以直接用make编译:

# ARCH      ?= $(SUBARCH)
ARCH        ?= arm
CROSS_COMPILE   ?= arm-linux-gnueabihf-


修改后

3.编译

1.不修改Makefile

make ARCH=arm licheepi_zero_defconfig

make ARCH=arm menuconfig   #add bluethooth, etc.
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j16

大概十分钟

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j16 INSTALL_MOD_PATH=out modules

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j16 INSTALL_MOD_PATH=out modules_install

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- dtbs

2.修改Makefile

sudo make licheepi_zero_defconfig

sudo make menuconfig   #add bluethooth, etc
sudo make -j16

如果不行,使用

sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j16

还是不行的话。先用sudo -i获取root权限
再执行
编译时间15:02-15:12大概十分钟

make -j16 INSTALL_MOD_PATH=out modules

make -j16 INSTALL_MOD_PATH=out modules_install

make dtbs

4.编译之后生成文件

编译完成后,zImage在arch/arm/boot/下,驱动模块在out/下。
设备树文件在arch/arm/boot/dts/下。
普通板的设备树:sun8i-v3s-licheepi-zero.dtb
dock板的设备树:sun8i-v3s-licheepi-zero-dock.dtb
LCD_480x272的设备树:sun8i-v3s-licheepi-zero-with-480x272-lcd.dtb
LCD_800x480的设备树:sun8i-v3s-licheepi-zero-with-800x480-lcd.dtb

这里提醒一下,zero-4.10.y的不生成后面两个dtb文件
最新的zero-5.2.y这几个文件都生成。

四、Buildroot

1.下载

wget https://buildroot.org/downloads/buildroot-2019.08.tar.gz



解压

tar xvf buildroot-2019.08.tar.gz&&cd buildroot-2019.08/

2.配置

make menuconfig


需要配置下面两个地方



配置下面那个配置需要先查看编译工具链的信息。
查询编译工具链所在位置:

which arm-linux-gnueabihf-gcc


读取编译工具链里的内核版本:
编译工具链内核头文件是

cat /usr/local/arm/gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/include/linux/version.h

可以从中读取内核版本。

263680的二进制为0x40600,则对应的内核版本号为4.6.0。

根据上面获取的编译工具的信息可知我们应该配置为

/usr/local/arm/gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf/
$(ARCH)-linux-gnueabihf
6.3.x
4.6.x

还可以设置主机名,root密码,配置自己需要的软件包等,后续再更新。

3.编译

make


如果编译不成功
要先sudo make clean
再sudo make
编译需要好久好久,请慢慢等待。
17:00-17:34大概半个小时左右

4.生成的文件

编译完成后,生成的根文件系统在 output/images/rootfs.tar。

五、GParted分区工具

这里介绍一个分区工具,分区时间有点慢(不知道是不是我操作有问题)
在Ububtu software下载
下载这个工具


分区

卸载并且删除所有分区

分配两个分区



大概时间20:48-22:36

六、烧录全部流程

0.准备阶段

为了后续的操作方便,我们可以新建一个文件夹,把所有需要的东西都拷贝到一个文件夹

mkdir img

1.拷贝uboot

 cp u-boot/u-boot-sunxi-with-spl.bin img/

2.拷贝zImage和dtb

cp linux/arch/arm/boot/zImage img/
cp linux/arch/arm/boot/dts/sun8i-v3s-licheepi-zero* img/

3.rootfs

cp buildroot-2019.08/output/images/rootfs.tar img/

4.img文件夹

查看img目录

5.查看挂载tf卡

df -lh

1.烧录uboot

sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdb bs=1024 seek=8

2.烧录zImage和dtb

直接拷贝kernel 设备树拷贝到BOOT也就是/media/luatao/BOOT

cp sun8i-v3s-licheepi-zero* /media/luatao/BOOT
cp zImage /media/luatao/BOOT


3.烧录rootfs

解压文件系统到/media/luatao/rootfs

tar vxf rootfs.tar -C/media/luatao/rootfs



弹出SD卡

4.查看启动信息

U-Boot SPL 2017.01-rc2-00075-gec3f3ba-dirty (Dec 15 2017 - 14:00:51)
DRAM: 64 MiB
Trying to boot from MMC1U-Boot 2017.01-rc2-00075-gec3f3ba-dirty (Dec 15 2017 - 14:00:51 +0800) Allwinner TechnologyCPU:   Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM:  64 MiB
MMC:   SUNXI SD/MMC: 0
SF: unrecognized JEDEC id bytes: 00, 00, 00
*** Warning - spi_flash_probe() failed, using default environmentSetting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In:    serial@01c28000
Out:   serial@01c28000
Err:   serial@01c28000U-Boot 2017.01-rc2-00075-gec3f3ba-dirty (Dec 15 2017 - 14:00:51 +0800) Allwinner TechnologyCPU:   Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM:  64 MiB
MMC:   SUNXI SD/MMC: 0
SF: unrecognized JEDEC id bytes: 00, 00, 00
*** Warning - spi_flash_probe() failed, using default environmentSetting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In:    serial@01c28000
Out:   serial@01c28000
Err:   serial@01c28000
Net:   phy interface0
eth0: ethernet@1c30000
starting USB...
No controllers found
Hit any key to stop autoboot:  0
reading zImage
4016104 bytes read in 633 ms (6.1 MiB/s)
reading sun8i-v3s-licheepi-zero-dock.dtb
11803 bytes read in 27 ms (426.8 KiB/s)
## Flattened Device Tree blob at 41800000Booting using the fdt blob at 0x41800000Loading Device Tree to 42dfa000, end 42dffe1a ... OKStarting kernel ...[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.13.0-licheepi-zero+ (hexing@ubuntu) (gcc version 4.8.4 (Ubuntu/Linaro 4.8.4-2ubuntu1~14.04.1)) #46 SMP Fri Dec 15 14:36:43 CST 2017
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Lichee Pi Zero with Dock
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] percpu: Embedded 16 pages/cpu @c3de6000 s33920 r8192 d23424 u65536
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 15883
[    0.000000] Kernel command line: console=ttyS0,115200 panic=5 mtdparts=spi32766.0:1M(uboot),64k(dtb),4M(kernel),-(rootfs) rootwait root=/dev/mmcblk0p2 earlyprintk rw  vt.global_cursor_default=0
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 53572K/64036K available (6144K kernel code, 222K rwdata, 1480K rodata, 1024K init, 266K bss, 10464K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xc4000000 - 0xff800000   ( 952 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc3e89000   (  62 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0700000   (7136 kB)
[    0.000000]       .init : 0xc0900000 - 0xc0a00000   (1024 kB)
[    0.000000]       .data : 0xc0a00000 - 0xc0a37b00   ( 223 kB)
[    0.000000]        .bss : 0xc0a3ebec - 0xc0a8153c   ( 267 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  RCU event tracing is enabled.
[    0.000000]  RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=1.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000007] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000018] Switching to timer-based delay loop, resolution 41ns
[    0.000188] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000422] Console: colour dummy device 80x30
[    0.000459] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.000474] pid_max: default: 32768 minimum: 301
[    0.000599] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000614] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.001218] CPU: Testing write buffer coherency: ok
[    0.001598] /cpus/cpu@0 missing clock-frequency property
[    0.001623] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.002054] Setting up static identity map for 0x40100000 - 0x40100060
[    0.002230] Hierarchical SRCU implementation.
[    0.002724] smp: Bringing up secondary CPUs ...
[    0.002740] smp: Brought up 1 node, 1 CPU
[    0.002749] SMP: Total of 1 processors activated (48.00 BogoMIPS).
[    0.002756] CPU: All CPU(s) started in SVC mode.
[    0.003512] devtmpfs: initialized
[    0.006650] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.006951] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.006976] futex hash table entries: 256 (order: 2, 16384 bytes)
[    0.007148] pinctrl core: initialized pinctrl subsystem
[    0.008026] random: get_random_u32 called from bucket_table_alloc+0xf0/0x250 with crng_init=0
[    0.008168] NET: Registered protocol family 16
[    0.008653] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.009784] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.009802] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.023276] SCSI subsystem initialized
[    0.023585] usbcore: registered new interface driver usbfs
[    0.023657] usbcore: registered new interface driver hub
[    0.023758] usbcore: registered new device driver usb
[    0.024013] pps_core: LinuxPPS API ver. 1 registered
[    0.024023] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.024047] PTP clock support registered
[    0.024277] Advanced Linux Sound Architecture Driver Initialized.
[    0.026154] clocksource: Switched to clocksource arch_sys_counter
[    0.036943] NET: Registered protocol family 2
[    0.037534] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.037569] TCP bind hash table entries: 1024 (order: 1, 8192 bytes)
[    0.037593] TCP: Hash tables configured (established 1024 bind 1024)
[    0.037719] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.037768] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.037984] NET: Registered protocol family 1
[    0.038579] RPC: Registered named UNIX socket transport module.
[    0.038601] RPC: Registered udp transport module.
[    0.038606] RPC: Registered tcp transport module.
[    0.038612] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.040590] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[    0.049527] NFS: Registering the id_resolver key type
[    0.049590] Key type id_resolver registered
[    0.049597] Key type id_legacy registered
[    0.049647] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    0.051113] random: fast init done
[    0.053920] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[    0.053944] io scheduler noop registered
[    0.053952] io scheduler deadline registered
[    0.054203] io scheduler cfq registered (default)
[    0.054216] io scheduler mq-deadline registered
[    0.054223] io scheduler kyber registered
[    0.058574] sun8i-v3s-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[    0.127533] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[    0.130805] console [ttyS0] disabled
[    0.151079] 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 36, base_baud = 1500000) is a U6_16550A
[    0.741786] console [ttyS0] enabled
[    0.749956] m25p80 spi32766.0: unrecognized JEDEC id bytes: 00, 00, 00
[    0.756614] m25p80: probe of spi32766.0 failed with error -2
[    0.762826] libphy: Fixed MDIO Bus: probed
[    0.767575] dwmac-sun8i 1c30000.ethernet: PTP uses main clock
[    0.773370] dwmac-sun8i 1c30000.ethernet: No regulator found
[    0.779150] dwmac-sun8i 1c30000.ethernet: Will use internal PHY
[    0.785144] dwmac-sun8i 1c30000.ethernet: Current syscon value is not the default 148000 (expect 38000)
[    0.794721] dwmac-sun8i 1c30000.ethernet: Chain mode enabled
[    0.800414] dwmac-sun8i 1c30000.ethernet: No HW DMA feature register supported
[    0.807643] dwmac-sun8i 1c30000.ethernet: Normal descriptors
[    0.813296] dwmac-sun8i 1c30000.ethernet: RX Checksum Offload Engine supported
[    0.820522] dwmac-sun8i 1c30000.ethernet: COE Type 2
[    0.825482] dwmac-sun8i 1c30000.ethernet: TX Checksum insertion supported
[    0.832451] libphy: stmmac: probed
[    0.837774] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.844312] ehci-platform: EHCI generic platform driver
[    0.849950] ehci-platform 1c1a000.usb: EHCI Host Controller
[    0.855568] ehci-platform 1c1a000.usb: new USB bus registered, assigned bus number 1
[    0.863542] ehci-platform 1c1a000.usb: irq 26, io mem 0x01c1a000
[    0.896170] ehci-platform 1c1a000.usb: USB 2.0 started, EHCI 1.00
[    0.903426] hub 1-0:1.0: USB hub found
[    0.907382] hub 1-0:1.0: 1 port detected
[    0.911876] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    0.918170] ohci-platform: OHCI generic platform driver
[    0.923746] ohci-platform 1c1a400.usb: Generic Platform OHCI controller
[    0.930479] ohci-platform 1c1a400.usb: new USB bus registered, assigned bus number 2
[    0.938436] ohci-platform 1c1a400.usb: irq 27, io mem 0x01c1a400
[    1.011289] hub 2-0:1.0: USB hub found
[    1.015130] hub 2-0:1.0: 1 port detected
[    1.022767] udc-core: couldn't find an available UDC - added [g_cdc] to list of pending drivers
[    1.032365] input: 1c22800.lradc as /devices/platform/soc/1c22800.lradc/input/input0
[    1.041387] sun6i-rtc 1c20400.rtc: rtc core: registered rtc-sun6i as rtc0
[    1.048298] sun6i-rtc 1c20400.rtc: RTC enabled
[    1.052847] i2c /dev entries driver
[    1.057885] input: ns2009_ts as /devices/platform/soc/1c2ac00.i2c/i2c-0/0-0048/input/input1
[    1.067372] sunxi-wdt 1c20ca0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[    1.136203] sunxi-mmc 1c0f000.mmc: base:0xc407b000 irq:23
[    1.184334] mmc0: host does not support reading read-only switch, assuming write-enable
[    1.195256] mmc0: new high speed SDHC card at address aaaa
[    1.201268] sunxi-mmc 1c10000.mmc: base:0xc423b000 irq:24
[    1.207709] usbcore: registered new interface driver usbhid
[    1.213287] usbhid: USB HID core driver
[    1.218083] mmcblk0: mmc0:aaaa SL16G 14.8 GiB
[    1.224670] sun4i-codec 1c22c00.codec: ASoC: /soc/codec-analog@01c23000 not registered
[    1.232725] sun4i-codec 1c22c00.codec: Failed to register our card
[    1.239213]  mmcblk0: p1 p2
[    1.247454] NET: Registered protocol family 17
[    1.252021] Key type dns_resolver registered
[    1.256569] Registering SWP/SWPB emulation handler
[    1.265868] simple-framebuffer 43e89000.framebuffer: framebuffer at 0x43e89000, 0x177000 bytes, mapped to 0xc4400000
[    1.276588] simple-framebuffer 43e89000.framebuffer: format=x8r8g8b8, mode=800x480x32, linelength=3200
[    1.292824] Console: switching to colour frame buffer device 100x30
[    1.305274] simple-framebuffer 43e89000.framebuffer: fb0: simplefb registered!
[    1.313867] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[    1.325310] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[    1.331158] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 3
[    1.340272] hub 3-0:1.0: USB hub found
[    1.344145] hub 3-0:1.0: 1 port detected
[    1.349491] using random self ethernet address
[    1.353981] using random host ethernet address
[    1.360601] usb0: HOST MAC 36:46:0b:77:c4:98
[    1.364922] usb0: MAC 02:84:ea:32:ee:57
[    1.368928] g_cdc gadget: CDC Composite Gadget, version: King Kamehameha Day 2008
[    1.376445] g_cdc gadget: g_cdc ready
[    1.382784] sun4i-codec 1c22c00.codec: Codec <-> 1c22c00.codec mapping ok
[    1.391300] sun6i-rtc 1c20400.rtc: setting system clock to 1970-01-01 00:00:10 UTC (10)
[    1.399633] vcc5v0: disabling
[    1.402610] ALSA device list:
[    1.405574]   #0: V3s Audio Codec
[    1.410817] EXT4-fs (mmcblk0p2): couldn't mount as ext3 due to feature incompatibilities
[    1.420016] EXT4-fs (mmcblk0p2): couldn't mount as ext2 due to feature incompatibilities
[    1.607296] EXT4-fs (mmcblk0p2): recovery complete
[    1.614102] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    1.622326] VFS: Mounted root (ext4 filesystem) on device 179:2.
[    1.630681] devtmpfs: mounted
[    1.634957] Freeing unused kernel memory: 1024K
[    1.755742] EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered
Starting syslogd: OK
Starting klogd: OK
Running sysctl: OK
Initializing random number generator... done.
Starting network: OKWelcome to Buildroot
buildroot login:


后面这张图不是前面的配置出来的,但是差不多,后面的这个就是文件系统不一样,编译了qt5,还有一个测试程序,多出来一个aa.mp4,其他的应该都差不多了。

v3S编译大全(uboot 主线linux buildroot)相关推荐

  1. 全志V3S荔枝派zero10分钟制作TF启动卡,主线Linux,主线u-boot(超过10分钟博主直播吃奥利奥!!!)

    一,初学者(比如我)刚拿到zero时,一定是一脸懵逼的,无从下手的,通过几篇代佬们写的文章+官网资料,了解了几种启动方式 1.Camdriod 官方SDK 2.主线Uboot + Bsp 内核 3.主 ...

  2. 全志v3s学习笔记(5)——主线Linux编译与烧录

    一.安装交叉编译环境 交叉编译环境跟uboot使用的一样. 参考:arm-linux-gnueabihf 交叉编译工具链安装 二.下载linux源码 # 默认是zero-4.10.y分支: git c ...

  3. 荔枝派Zero | 全志V3s 开发教程(一) 烧录系统镜像的方法以及如何烧录主线Linux系统镜像

    荔枝派Zero | 全志V3s 开发教程(一) 荔枝派Zero的开发教程: http://zero.lichee.pro/系统开发/type.html 刚开始尝试编译Camdroid官方SDK,最终浪 ...

  4. RK3568开发笔记(四):在虚拟机上使用SDK编译制作uboot、kernel和buildroot镜像

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/125844240 红胖子网络科技博文大全:开发技术集合( ...

  5. NanoPi NEO Air使用七:获取并编译U-boot和Linux的源码

    NanoPi NEO Air使用一:介绍 NanoPi NEO Air使用二:固件烧录 NanoPi NEO Air使用三:OverlayFS.CPU温度和频率.wifi.蓝牙.npi-config ...

  6. 制作 小 linux 教程,【NanoPi NEO Plus2开发板试用体验】编译uboot和linux制作最小根文件系统制作刷机包---详细教程...

    二.Linux命令基础 1.查找文件 查找a.c的文件 find -name "a.c" 在当前目录搜索a字样的文件 grep "a" *-nR2.解压 解压t ...

  7. Mastering Embedded Linux Programming 学习 (二)在百问网157开发板上,编译构建u-boot

    Mastering Embedded Linux Programming 学习 (二)在百问网157开发板上,编译构建u-boot 一.下载u-boot源码 git clone https://git ...

  8. 全志v3s linux 编译,全志 V3S 编译运行 xboot 笔记

    全志 V3S 编译运行 xboot 笔记 目录 1. 目的 2. 环境准备 3. 下载 3.1 fel 模式进入 3.2 sunxi-fel 工具的使用 3.3 烧录 4. 串口打印 5. 总结 1. ...

  9. 全志v3s linux 编译,全志V3S 编译运行xboot笔记

    全志V3S 编译运行xboot笔记 [toc] 1.目的 现在手上有一块V3S的板子,想将其用起来.现在来记录一下这个过程.记录一下荔枝派zero的使用流程. 2.环境准备 首先需要clone代码 g ...

最新文章

  1. heroku_了解如何使用Heroku部署全栈Web应用程序
  2. 20个非常有用的Java程序片段
  3. matlab中的i=1 length,黄伟建:matlab for i=1:length(y) 什么意思
  4. 使用Silverlight for Embedded开发绚丽的界面(1)
  5. iOS:多个单元格的删除(方法二):
  6. 几个复制表结构和表数据的方法
  7. SAP评估级别 Valuation Area
  8. Laravel深入学习10 - 里氏替换原则
  9. react.js 从零开始(五)React 中事件的用法
  10. [Reverse] - 百度杯”CTF比赛 2017 二月场-CrackMe-1
  11. 网络中典型协议--(DNS,输入url后, 发生的事情. ,ICMP,NAT)
  12. 新突破!CVPR2019接收论文:新的基于自编码变换的无监督表示学习方法—AET
  13. mysql 默认事务隔离级别_一文读懂MySQL的事务隔离级别及MVCC机制
  14. 直击标贝科技WAIC2019:深耕语音合成与数据服务 助力语音场景完美落地
  15. 电脑连接示波器读取数据
  16. 系统运维哪些事儿之正常状态
  17. input中name和id的区别
  18. 逍遥模拟器1 android,逍遥安卓模拟器5.1.1
  19. java浏览器下载进度条,在浏览器中异步下载文件监听下载进度
  20. 易优CMS插件-站长必备易优CMS插件

热门文章

  1. 33篇大数据治理文章打包送,技术+案例一应俱全!大数据
  2. 东方博宜OJ 1391 - 【入门】公交卡充值问题?
  3. android原生调用nextjs方法,nextjs踩坑
  4. c语言typedef结构体_typedef在C中具有结构的示例
  5. 事务,什么是事务,为何用事务?
  6. 关于MVVM与MVI
  7. 服务器系统linux下载软件,Linux服务器管理系统一键安装包(wdcp Lanmp)
  8. WidsMob Retoucher Mac(全能修图软件) v2.4破解版
  9. 麒麟操作系统软件更新灾难连篇之二:QQ罢工
  10. 原生js实现拖拽功能