整理资料二 licheepi zero BSP 内核(linux3.4) 编译教程

来源挖坑网

licheepi zero BSP 内核(linux3.4) 编译教程

https://whycan.cn/t_682.html

uboot 才用主线的uboot 所以抄袭一段文字说明:

1. 准备工作

1) 安装Ubuntu14.04LTS(长支持版本),如果用虚拟机请安装vmware14(别的虚拟机都不推荐,泪的教训),  然后安装 vmware tools(不是必须,但是方便文件共享)
    2) 安装arm linux 硬件浮点数工具链, 因为V3s支持VFPv4 浮点单元: sudo apt-get install gcc-arm-linux-gnueabihf
    3) 安装git源码管理软件:  sudo apt-get install git
    4) 其他支撑软件 sudo apt-get install device-tree-compiler (.......................)

2. u-boot

首先获取u-boot源码:             git clone https://github.com/Lichee-Pi/u-boot.git -b v3s-current
      如果你需要支持spi flash:   git clone https://github.com/Lichee-Pi/u-boot.git -b v3s-spi-experimental
cd u-boot
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make LicheePi_Zero_800x480LCD_defconfig (群主网店5寸屏)
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make LicheePi_Zero_480x272LCD_defconfig (通用4.3寸屏)
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make LicheePi_Zero_defconfig (默认)
ARCH=arm make menuconfig
执行编译:
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make
多核编译,避免cpu其他内核打酱油, J后的参数是参与编译的cpu个数:
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make -j3

3.编译 sunxi-tools

sudo apt-get install libusb-1.0-0-dev
cd tool/sunxi-tools
make

4.生成boot.scr文件

新建一个文件 boot.cmd   
写入 :
setenv bootargs console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 earlyprintk rw
setenv bootm_boot_mode sec
setenv machid 1029
load mmc 0:1 0x41000000 uImage
load mmc 0:1 0x41d00000 script.bin
bootm 0x41000000
保存 
mkimage -C none -A arm -T script -d boot.cmd boot.scr

5.生成 script.bin文件

使用我提供的sys_config.fex
../sunxi-tools/fex2bin sys_config.fex > ../pub/boot/script.bin

6.编译内核

使用我提供的 lichee_BSP_config 说明一下  这里修改了内核支持网口 支持ext4文件系统 就直接给出我配置好的。
cd linux-3.4

cp lichee_BSP_config .config

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage -j16

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

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

这时  我们要用的  uImage 在 arch/arm/boot/uImage

7.文件系统:

1). 下载最新的buildroot稳定版本
        官方网站:   https://buildroot.org/download.html
        长支持版本:buildroot-2017.02.7.tar.gz
        最新稳定版:buildroot-2017.08.1.tar.gz
    2). 配置buildroot 参数, make menuconfig; make

同 主线文件系统 的生成办法

8.打包

烧录TF卡启动盘: 
    1) 删除TF卡所有分区
    2) 将uboot写入到sd卡8k偏移处(必须8K偏移, brom龟腚的)。
        sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdX bs=1024 seek=8
    3) 建立第一个分区,前面空出8MB   大小32M(可以随意填写), 格式FAT16, 把uImage,boot.src,script.bin,拷贝到 这个分区
    4) 建立第二个分区,用尽剩余空间,格式ext4, 把buildroot产生的rootfs.tar解压到该分区根目录
        tar xvf output/images/rootfs.tar -C /挂载的tf卡第二个分区目录
以上资料我使用度盘分享(提供内核的源码和编译好的内核)
链接: https://pan.baidu.com/s/1ghlIl5D  密码:95mp

站长注:
如果上面链接失效,可以在QQ群 544762792附件下载 【全志资料下载/QianHao_V3s_BSP内核_20180111.7z


 

以下站长注:
上面的文件 QianHao_V3s_BSP内核_20180111.7z 有点问题, 缺 u-boot, boot.src 不正确.
这个软件包确实是正常的: V3s主线u-boot引导官方linux,带Qt文件系统,网卡已测试.7z

编译工具链: arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

添加到环境变量 ~/.bashrc

export PATH=/usr/local/arm-2014.05/bin/:$PATH

 

 

支持SPI flash

 

 

把 sys_config.fex 改成这样, 然后执行 sunxi-tools/fex2bin sys_config.fex uart0.dtb

烧录设备树:

sudo sunxi-fel -p spiflash-write 0x80000 uart0.dtb

 

修改启动默认参数:

#define CONFIG_BOOTCOMMAND "setenv bootm_boot_mode sec;" \
                       "setenv machid 1029;" \
                       "sf probe 0 108000000; " \
                       "sf read 0x41d00000 0x80000 0x010000;" \
                       "sf read 0x41000000 0x100000 0x300000;"\
                       "bootm 0x41000000"

#define CONFIG_BOOTARGS "console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rootfstype=jffs2 earlyprintk rw"

烧录u-boot:

sunxi-fel.exe -p spiflash-write 0 u-boot-sunxi-with-spl.bin
sunxi-fel.exe -p spiflash-write 0x80000 env.dtb
sunxi-fel.exe -p spiflash-write 0x100000 uImage
sunxi-fel.exe -p spiflash-write 0x400000 jffs2_11M.bin        //rootfs

对应内核的驱动的flash分部

.

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值