您尚未登录。

楼主 #1 2018-01-25 13:51:43

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

购买链接: https://s.click.taobao.com/s0JIBZw
参考链接0: 买个全志arm9 F1C100s 方案的唱戏机回来拆一拆
参考链接1: F1C100s 手册
参考链接2: 看戏机(唱戏机)F1C100原理图
参考链接3: 侨德实业有限公司VS (全志C100电脑升级)流程示意图
参考链接4: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤
参考链接5: F1C100s入坑记录

参考链接A: 荔枝派Zero V3s开发板入坑记录
参考链接B: 【视频分享】制作荔枝派Zero开发板(全志V3s) TF/SD卡启动盘
参考链接C:Allwinner_F1C600_User_Manual_V1.0.pdf

1. 准备工作
    1) 安装Ubuntu14.04LTS(长支持版本),如果用虚拟机请安装vmware14(别的虚拟机都不推荐,泪的教训),  然后安装 vmware tools(不是必须,但是方便文件共享)

    2) 安装arm linux 工具链:

ubuntu14.04 x64下载这个工具链: gcc-linaro-7.2.1-2017.11-x86_64_arm-eabi.tar.xz

一般解压缩到 /usr/local/ 目录,
然后把目录 export PATH=/usr/local/gcc-linaro-7.2.1-2017.11-x86_64_arm-eabi/bin:$PATH 添加到 /etc/profile, 或者 ~/.bashrc 文件

    3) 安装git源码管理软件: 

sudo apt-get install git

    4) 其他支撑软件

2. 烧录、安装USB烧录工具sunxi-fel

git clone -b f1c100s-spiflash https://github.com/Icenowy/sunxi-tools.git
make
make install

3. u-boot
      首先获取u-boot源码:             git clone https://github.com/Icenowy/u-boot.git -b f1c100s-spiflash

默认bootcmd, bootargs在这个文件修改: include/configs/suniv.h

cd u-boot

###默认配置文件
ARCH=arm CROSS_COMPILE=arm-eabi- make licheepi_nano_spiflash_defconfig

###如果需要执行其他配置:
ARCH=arm CROSS_COMPILE=arm-eabi- make menuconfig

###执行单核编译:
ARCH=arm CROSS_COMPILE=arm-eabi- make

###或多核编译,避免cpu其他内核打酱油, j后的参数是参与编译的cpu个数:
ARCH=arm CROSS_COMPILE=arm-eabi- make -j3

4. 设备树, Linux
    获取Linux源码(zero-4.13.y分支对网卡支持比较好):  git clone https://github.com/Icenowy/linux.git -b f1c100s-480272lcd-test
    生成荔枝派Zero 默认配置文件: make  ARCH=arm CROSS_COMPILE=arm-linux- sunxi_defconfig
    设备树文件(默认不需要修改):  arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts
    编译内核:     make  ARCH=arm CROSS_COMPILE=arm-linux- -j4
    编译设备树: make  ARCH=arm CROSS_COMPILE=arm-linux- dtbs

5. 根文件系统
    1). 下载最新的buildroot稳定版本
        官方网站:   https://buildroot.org/download.html
        长支持版本:buildroot-2017.02.7.tar.gz
        最新稳定版:buildroot-2017.08.1.tar.gz

    2). 配置buildroot 参数, make menuconfig; make

        QQ20171122094600.png

        QQ20171122094653.png

        如果不会配置, 就下载下面这个文件,然后把 buildroot-v3s-20171122.zip解压后 拷贝到 buidroot目录成 .config 文件。       

     3). 执行编译, 生成文件跟文件系统。

     4). 如需构建Qt应用程序,   视频地址:  buildroot成功后如何编译Qt应用程序

5. USB烧录spi flash

6. 制作TF卡启动盘

7. 下载编译烧录xboot

  1. git clone  https://github.com/xboot/xboot.git

  2. cd xboot

  3. make CROSS_COMPILE=arm-linux- PLATFORM=arm32-f1c100s

  4. sudo sunxi-fel spiflash-write 0 output/xboot.bin





离线

楼主 #2 2018-01-26 22:56:16

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

占位





离线

楼主 #3 2018-01-26 22:56:49

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

占位





离线

楼主 #4 2018-01-26 23:00:30

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

如果用6.0以下版本的gcc编译u-boot, 会提示以下错误:

sunxi@ubuntu:/disk2/f1c100s/u-boot$ ARCH=arm CROSS_COMPILE=arm-linux- make
*** Your GCC is older than 6.0 and is not supported
make: *** [checkgcc6] Error 1

解决办法:
去这里下载工具链: Latest Bare-Metal Targeted Binary Toolchain Releases

因为我的电脑是ubuntu14.04 x64版本的,所以我下载这个工具链: gcc-linaro-7.2.1-2017.11-x86_64_arm-eabi.tar.xz

一般解压缩到 /usr/local/ 目录,
然后把目录 export PATH=/usr/local/gcc-linaro-7.2.1-2017.11-x86_64_arm-eabi/bin:$PATH 添加到 /etc/profile, 或者 ~/.bashrc 文件





离线

楼主 #5 2018-01-26 23:10:12

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

编译u-boot出现以下错误:

sunxi@ubuntu:/disk2/f1c100s/u-boot$ ARCH=arm CROSS_COMPILE=arm-eabi- make
  CHK     include/config/uboot.release
  UPD     include/config/uboot.release
  CHK     include/generated/version_autogenerated.h
  UPD     include/generated/version_autogenerated.h
  CHK     include/generated/timestamp_autogenerated.h
  UPD     include/generated/timestamp_autogenerated.h
  CC      lib/asm-offsets.s
  CHK     include/generated/generic-asm-offsets.h
  UPD     include/generated/generic-asm-offsets.h
  CC      arch/arm/lib/asm-offsets.s
  CHK     include/generated/asm-offsets.h
  UPD     include/generated/asm-offsets.h
  SHIPPED scripts/dtc/pylibfdt/libfdt.i
  PYMOD   scripts/dtc/pylibfdt/_libfdt.so
unable to execute 'swig': No such file or directory
error: command 'swig' failed with exit status 1
make[3]: *** [scripts/dtc/pylibfdt/_libfdt.so] Error 1
make[2]: *** [scripts/dtc/pylibfdt] Error 2
make[1]: *** [scripts/dtc] Error 2
make: *** [scripts] Error 2
hexing@ubuntu:/disk2/f1c100s/u-boot$ swig
The program 'swig' is currently not installed. You can install it by typing:
sudo apt-get install swig

解决方法:
sudo apt-get install swig





离线

楼主 #6 2018-01-26 23:16:19

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

u-boot如果出现以下编译错误:

sunxi@ubuntu:/disk2/f1c100s/u-boot$ ARCH=arm CROSS_COMPILE=arm-eabi- make
  CHK     include/config/uboot.release
  CHK     include/generated/version_autogenerated.h
  CHK     include/generated/timestamp_autogenerated.h
  UPD     include/generated/timestamp_autogenerated.h
  CHK     include/generated/generic-asm-offsets.h
  CHK     include/generated/asm-offsets.h
  PYMOD   scripts/dtc/pylibfdt/_libfdt.so
scripts/dtc/pylibfdt/libfdt_wrap.c:130:21: fatal error: Python.h: No such file or directory
# include <Python.h>
                     ^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
make[3]: *** [scripts/dtc/pylibfdt/_libfdt.so] Error 1
make[2]: *** [scripts/dtc/pylibfdt] Error 2
make[1]: *** [scripts/dtc] Error 2
make: *** [scripts] Error 2
hexing@ubuntu:/disk2/f1c100s/u-boot$ make clean
  CLEAN   spl/u-boot.cfg
  CLEAN   u-boot.cfg
hexing@ubuntu:/disk2/f1c100s/u-boot$ ARCH=arm CROSS_COMPILE=arm-eabi- make licheepi_nano_spiflash_defconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
hexing@ubuntu:/disk2/f1c100s/u-boot$ ARCH=arm CROSS_COMPILE=arm-eabi- make
scripts/kconfig/conf  --silentoldconfig Kconfig
  CHK     include/config.h
  CFG     u-boot.cfg
  GEN     include/autoconf.mk
  GEN     include/autoconf.mk.dep
  CFG     spl/u-boot.cfg
  GEN     spl/include/autoconf.mk
  CHK     include/config/uboot.release
  CHK     include/generated/version_autogenerated.h
  CHK     include/generated/timestamp_autogenerated.h
  UPD     include/generated/timestamp_autogenerated.h
  CC      lib/asm-offsets.s
  CHK     include/generated/generic-asm-offsets.h
  CC      arch/arm/lib/asm-offsets.s
  CHK     include/generated/asm-offsets.h
  PYMOD   scripts/dtc/pylibfdt/_libfdt.so
scripts/dtc/pylibfdt/libfdt_wrap.c:130:21: fatal error: Python.h: No such file or directory
# include <Python.h>
                     ^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
make[3]: *** [scripts/dtc/pylibfdt/_libfdt.so] Error 1
make[2]: *** [scripts/dtc/pylibfdt] Error 2
make[1]: *** [scripts/dtc] Error 2
make: *** [scripts] Error 2


解决方法:
sudo apt-get install libpython2.7-dev





离线

楼主 #7 2018-01-28 18:08:27

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

_                   _
_  _ | |___ _____ _____ _| |_
\ \/ /|  _  |  _  |  _  |_   _|  (C) 2007-2018
)  ( | |_| | |_| | |_| | | |____JIANJUN.JIANG__
/_/\_\|_____|_____|_____| |_____________________|
V2.0.2 (Jan 28 2018 - 09:14:13) - [sast-m697][SAST M697 Digital Player Based On Allwinner F1C100S]
[    0.000000] Probe device 'romdisk.0' with romdisk
[    0.000010] Probe device 'hosc' with clk-fixed
[    0.000020] Probe device 'losc' with clk-fixed
[    0.000030] Probe device 'pll-cpu' with clk-f1c100s-pll
[    0.000040] Probe device 'pll-audio' with clk-f1c100s-pll
[    0.000050] Probe device 'pll-video' with clk-f1c100s-pll
[    0.000060] Probe device 'pll-ve' with clk-f1c100s-pll
[    0.000070] Probe device 'pll-ddr' with clk-f1c100s-pll
[    0.000080] Probe device 'pll-periph' with clk-f1c100s-pll
[    0.000090] Probe device 'cpu' with clk-mux
[    0.000100] Probe device 'hclk' with clk-divider
[    0.000110] Probe device 'ahb1-pre-div' with clk-divider
[    0.000120] Probe device 'mux-ahb1' with clk-mux
[    0.000130] Probe device 'ahb1' with clk-ratio
[    0.000140] Probe device 'apb1' with clk-ratio
[    0.000150] Probe device 'gate-bus-uart0' with clk-gate
[    0.000160] Probe device 'gate-bus-uart1' with clk-gate
[    0.000170] Probe device 'gate-bus-uart2' with clk-gate
[    0.000180] Probe device 'link-uart0' with clk-link
[    0.000190] Probe device 'link-uart1' with clk-link
[    0.000200] Probe device 'link-uart2' with clk-link
[    0.000210] Probe device 'gate-bus-i2c0' with clk-gate
[    0.000220] Probe device 'gate-bus-i2c1' with clk-gate
[    0.000230] Probe device 'gate-bus-i2c2' with clk-gate
[    0.000240] Probe device 'link-i2c0' with clk-link
[    0.000250] Probe device 'link-i2c1' with clk-link
[    0.000260] Probe device 'link-i2c2' with clk-link
[    0.000270] Probe device 'gate-bus-spi0' with clk-gate
[    0.000280] Probe device 'gate-bus-spi1' with clk-gate
[    0.000290] Probe device 'link-spi0' with clk-link
[    0.000300] Probe device 'link-spi1' with clk-link
[    0.000310] Probe device 'mux-timer0' with clk-mux
[    0.000320] Probe device 'ratio-timer0' with clk-ratio
[    0.000330] Probe device 'link-timer0' with clk-link
[    0.000340] Probe device 'mux-timer1' with clk-mux
[    0.000350] Probe device 'ratio-timer1' with clk-ratio
[    0.000360] Probe device 'link-timer1' with clk-link
[    0.000370] Probe device 'mux-timer2' with clk-mux
[    0.000380] Probe device 'ratio-timer2' with clk-ratio
[    0.000390] Probe device 'link-timer2' with clk-link
[    0.000400] Probe device 'link-pwm' with clk-link
[    0.000410] Probe device 'link-wdt' with clk-link
[    0.000420] Probe device 'mux-defe' with clk-mux
[    0.000430] Probe device 'div-defe' with clk-divider
[    0.000440] Probe device 'gate-defe' with clk-gate
[    0.000450] Probe device 'gate-bus-defe' with clk-gate
[    0.000460] Probe device 'link-defe' with clk-link
[    0.000470] Probe device 'mux-debe' with clk-mux
[    0.000480] Probe device 'div-debe' with clk-divider
[    0.000490] Probe device 'gate-debe' with clk-gate
[    0.000500] Probe device 'gate-bus-debe' with clk-gate
[    0.000510] Probe device 'link-debe' with clk-link
[    0.000520] Probe device 'mux-tcon' with clk-mux
[    0.000530] Probe device 'gate-tcon' with clk-gate
[    0.000540] Probe device 'gate-bus-tcon' with clk-gate
[    0.000550] Probe device 'link-tcon' with clk-link
[    0.000560] Probe device 'reset-f1c100s.0' with reset-f1c100s
[    0.000570] Probe device 'reset-f1c100s.1' with reset-f1c100s
[    0.000580] Probe device 'reset-f1c100s.2' with reset-f1c100s
[    0.000590] Probe device 'irq-f1c100s.0' with irq-f1c100s
[    0.000600] Probe device 'irq-f1c100s-gpio.0' with irq-f1c100s-gpio
[    0.000610] Probe device 'irq-f1c100s-gpio.1' with irq-f1c100s-gpio
[    0.000620] Probe device 'irq-f1c100s-gpio.2' with irq-f1c100s-gpio
[    0.000630] Probe device 'gpio-f1c100s.0' with gpio-f1c100s
[    0.000640] Probe device 'gpio-f1c100s.1' with gpio-f1c100s
[    0.000650] Probe device 'gpio-f1c100s.2' with gpio-f1c100s
[    0.000660] Probe device 'gpio-f1c100s.3' with gpio-f1c100s
[    0.000670] Probe device 'gpio-f1c100s.4' with gpio-f1c100s
[    0.000680] Probe device 'pwm-f1c100s.0' with pwm-f1c100s
[    0.000690] Probe device 'pwm-f1c100s.1' with pwm-f1c100s
[    0.000700] Probe device 'ce-f1c100s-timer.0' with ce-f1c100s-timer
[    0.000052] Probe device 'cs-f1c100s-timer.0' with cs-f1c100s-timer
[    0.006456] Probe device 'i2c-f1c100s.0' with i2c-f1c100s
▒▒ځ   0.022901] Probe device 'uart-16550.0' with uart-16550s
[    0.028168] Probe device 'uart-16550.1' with uart-16550
[    0.033392] Probe device 'uart-16550.2' with uart-16550
[    0.038588] Probe device 'spi-f1c100s.0' with spi-f1c100s
[    0.043953] Probe device 'spi-f1c100s.1' with spi-f1c100s
[    0.049301] Fail to probe device with spi-flash
[    0.053790] Probe device 'wdog-f1c100s.0' with wdog-f1c100s
[    0.059338] Probe device 'key-f1c100s-lradc.0' with key-f1c100s-lradc
[    0.065736] Probe device 'led-gpio.0' with led-gpio
[    0.070569] Probe device 'ledtrig-heartbeat.0' with ledtrig-heartbeat
[    0.076962] Probe device 'led-pwm-bl.0' with led-pwm-bl
[    0.101522] Probe device 'fb-f1c100s.0' with fb-f1c100s
[    0.106722] Probe device 'console-uart.0' with console-uart
Press any key to stop autoboot:  0.000
xboot: /$

QQ20180128180623.png

烧了xboot 的f1c100s 程序, 背光亮了,串口输出正常, 屏幕没有显示.





离线

#8 2018-02-26 11:44:53

ming9
会员
注册时间: 2018-02-26
已发帖子: 1
积分: 1

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

晕哥:这芯片好不好买到?

离线

#9 2018-02-26 13:32:20

daydayup
会员
注册时间: 2017-10-09
已发帖子: 343
积分: 343

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

ming9 说:

晕哥:这芯片好不好买到?

据说挺好买的,大量用在mp4,老人唱戏机上面。

离线

#10 2018-02-27 07:20:55

mango
会员
所在地: 芒果派1
注册时间: 2017-12-02
已发帖子: 780
积分: 726

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

强烈关注一下






歪朵拉开源硬件: https://widora.cn
淘宝:  https://widora.taobao.com/

离线

#11 2018-04-20 17:28:02

msr06rr
会员
所在地: 苏州
注册时间: 2018-01-11
已发帖子: 180
积分: 170.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

晕哥,主线linux中的有电阻触摸驱动了吗?我编译了https://github.com/Lichee-Pi/linux中nano-4.14-exp分支的内核源码后没有发现event设备文件。

离线

楼主 #12 2018-04-20 17:34:23

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

还没测试主线呢,这两天在弄bsp linux,这个外设驱动全。





离线

#13 2018-05-29 12:10:33

zuoyi
会员
注册时间: 2018-05-29
已发帖子: 14
积分: 13.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

我按照上面的步骤编译u-boot,出现如下错误:

scripts/kconfig/conf  --silentoldconfig Kconfig

*** Error during update of the configuration.

scripts/kconfig/Makefile:46: recipe for target 'silentoldconfig' failed
make[2]: *** [silentoldconfig] Error 1
Makefile:479: recipe for target 'silentoldconfig' failed
make[1]: *** [silentoldconfig] Error 2
make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'.  Stop.


请问什么问题,
Google不出来怎么解决

离线

楼主 #14 2018-05-29 12:44:16

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

你的是什么系统,什么版本,Ubuntu14.04?





离线

#15 2018-05-29 17:05:25

zuoyi
会员
注册时间: 2018-05-29
已发帖子: 14
积分: 13.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

谢晕哥,
上面那个错误是lubuntu 14.04,下午我换成ubuntu 14.04,出现了新的错误:
wyl@wyl-VirtualBox:~/share/nano/u-boot$ ARCH=arm CROSS_COMPILE=arm-eabi- make licheepi_nano_spiflash_defconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
wyl@wyl-VirtualBox:~/share/nano/u-boot$ ARCH=arm CROSS_COMPILE=arm-eabi- make
scripts/kconfig/conf  --silentoldconfig Kconfig

*** Error during update of the configuration.

make[2]: *** [silentoldconfig] Error 1
make[1]: *** [silentoldconfig] Error 2
make: *** No rule to make target `include/config/auto.conf', needed by `include/config/uboot.release'.  Stop.

离线

楼主 #16 2018-05-30 09:14:47

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

参考链接: https://blog.csdn.net/lingran07/article/details/7644087

刚刚编译内核时出现:
*** Error during update of the configuration.

make[2]: *** [silentoldconfig] 错误 1
make[1]: *** [silentoldconfig] 错误 2
make: *** 没有规则可以创建“include/config/kernel.release”需要的目标“include/config/auto.conf”。 停止。

开始没搞懂,目标 auto.conf 也存在啊,而且不是 root 所有的,普通用户直接编译应该也没问题啊,
上网一查,说是root问题,又切换到root 编译,果然...
可能之前用root 编译,有其他文件 已经是root所有了,

知道原因后,解决这个问题的方法就很显然了:
1、切回到root去make kernel。
2、change整个kernel目录下所有文件及文件夹的权限和owner:    chown -R hm:hm android-kernel-samsung-dev

看起来应该是 用户切换问题.





离线

#17 2018-05-31 09:42:05

zuoyi
会员
注册时间: 2018-05-29
已发帖子: 14
积分: 13.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

可以编译了,
原来我是放到虚拟机共享目录的,就会出现如下问题
    scripts/kconfig/conf  --silentoldconfig Kconfig

    *** Error during update of the configuration.

    make[2]: *** [silentoldconfig] Error 1
    make[1]: *** [silentoldconfig] Error 2
    make: *** No rule to make target `include/config/auto.conf', needed by `include/config/uboot.release'.  Stop.
后来我在非共享目录编译,就可以编译过了,

离线

#18 2018-12-29 10:56:39

qinxiongxu
会员
注册时间: 2018-12-13
已发帖子: 88
积分: 75.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

晕哥 说:

购买链接: https://s.click.taobao.com/s0JIBZw
参考链接0: 买个全志arm9 F1C100s 方案的唱戏机回来拆一拆
参考链接1: F1C100s 手册
参考链接2: 看戏机(唱戏机)F1C100原理图
参考链接3: 侨德实业有限公司VS (全志C100电脑升级)流程示意图
参考链接4: 先科唱戏机(看戏机)F1C100s方案运行XBOOT大神的XBOOT系统步骤
参考链接5: F1C100s入坑记录

参考链接A: 荔枝派Zero V3s开发板入坑记录
参考链接B: 【视频分享】制作荔枝派Zero开发板(全志V3s) TF/SD卡启动盘
参考链接C:Allwinner_F1C600_User_Manual_V1.0.pdf

1. 准备工作
    1) 安装Ubuntu14.04LTS(长支持版本),如果用虚拟机请安装vmware14(别的虚拟机都不推荐,泪的教训),  然后安装 vmware tools(不是必须,但是方便文件共享)

    2) 安装arm linux 工具链:

ubuntu14.04 x64下载这个工具链: gcc-linaro-7.2.1-2017.11-x86_64_arm-eabi.tar.xz

一般解压缩到 /usr/local/ 目录,
然后把目录 export PATH=/usr/local/gcc-linaro-7.2.1-2017.11-x86_64_arm-eabi/bin:$PATH 添加到 /etc/profile, 或者 ~/.bashrc 文件

    3) 安装git源码管理软件: 

sudo apt-get install git

    4) 其他支撑软件

2. 烧录、安装USB烧录工具sunxi-fel

git clone -b f1c100s-spiflash https://github.com/Icenowy/sunxi-tools.git
make
make install

3. u-boot
      首先获取u-boot源码:             git clone https://github.com/Icenowy/u-boot.git -b f1c100s-spiflash

默认bootcmd, bootargs在这个文件修改: include/configs/suniv.h

cd u-boot

###默认配置文件
ARCH=arm CROSS_COMPILE=arm-eabi- make licheepi_nano_spiflash_defconfig

###如果需要执行其他配置:
ARCH=arm CROSS_COMPILE=arm-eabi- make menuconfig

###执行单核编译:
ARCH=arm CROSS_COMPILE=arm-eabi- make

###或多核编译,避免cpu其他内核打酱油, j后的参数是参与编译的cpu个数:
ARCH=arm CROSS_COMPILE=arm-eabi- make -j3

4. 设备树, Linux
    获取Linux源码(zero-4.13.y分支对网卡支持比较好):  git clone https://github.com/Icenowy/linux.git -b f1c100s-480272lcd-test
    生成荔枝派Zero 默认配置文件: make  ARCH=arm CROSS_COMPILE=arm-linux- sunxi_defconfig
    设备树文件(默认不需要修改):  arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts
    编译内核:     make  ARCH=arm CROSS_COMPILE=arm-linux- -j4
    编译设备树: make  ARCH=arm CROSS_COMPILE=arm-linux- dtbs

5. 根文件系统
    1). 下载最新的buildroot稳定版本
        官方网站:   https://buildroot.org/download.html
        长支持版本:buildroot-2017.02.7.tar.gz
        最新稳定版:buildroot-2017.08.1.tar.gz

    2). 配置buildroot 参数, make menuconfig; make

        https://whycan.cn/files/members/4/QQ20171122094600.png

        https://whycan.cn/files/members/4/QQ20171122094653.png

        如果不会配置, 就下载下面这个文件,然后把 buildroot-v3s-20171122.zip解压后 拷贝到 buidroot目录成 .config 文件。       

     3). 执行编译, 生成文件跟文件系统。

     4). 如需构建Qt应用程序,   视频地址:  buildroot成功后如何编译Qt应用程序

5. USB烧录spi flash

6. 制作TF卡启动盘

7. 下载编译烧录xboot

  1. git clone  https://github.com/xboot/xboot.git

  2. cd xboot

  3. make CROSS_COMPILE=arm-linux- PLATFORM=arm32-f1c100s

  4. sudo sunxi-fel spiflash-write 0 output/xboot.bin



请问下晕哥,这个链接buildroot-2017.08.1.tar.gz的buildroot用提供的config编译出来的rootfs.tar文件有多大?为啥我编译出来的有43M多,所以整个合成F1C100S的固件已经超过50M了,所以没法烧录到16MB的SPI Flash里面。

离线

楼主 #19 2018-12-29 11:02:07

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

你在 .config 文件里面把不用的软件包禁用,删除target目录, 重新make





离线

#20 2018-12-29 11:17:33

qinxiongxu
会员
注册时间: 2018-12-13
已发帖子: 88
积分: 75.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

晕哥 说:

你在 .config 文件里面把不用的软件包禁用,删除target目录, 重新make

好的,我试下,谢谢~

离线

#21 2019-01-21 18:03:23

tianjjff
会员
注册时间: 2018-12-24
已发帖子: 129
积分: 22

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

scripts/dtc/pylibfdt/Makefile:26: recipe for target 'scripts/dtc/pylibfdt/_libfdt.so' failed
make[3]: *** [scripts/dtc/pylibfdt/_libfdt.so] Error 1
scripts/Makefile.build:425: recipe for target 'scripts/dtc/pylibfdt' failed
make[2]: *** [scripts/dtc/pylibfdt] Error 2
scripts/Makefile.build:425: recipe for target 'scripts/dtc' failed
make[1]: *** [scripts/dtc] Error 2
Makefile:491: recipe for target 'scripts' failed
make: *** [scripts] Error 2
make: *** Waiting for unfinished jobs....
  CHK     include/config.h
  CFG     u-boot.cfg


请问下编译uboot出现如下错误是什么问题呢,百度了没找到解决方法

离线

楼主 #22 2019-01-21 18:28:33

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

告诉你的一个不好的消息, 百毒是搜不到的

https://whycan.cn/t_933.html

看是不是 swig 没有安装





离线

#23 2019-01-22 20:46:46

tianjjff
会员
注册时间: 2018-12-24
已发帖子: 129
积分: 22

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

晕哥 说:

告诉你的一个不好的消息, 百毒是搜不到的

https://whycan.cn/t_933.html

看是不是 swig 没有安装


我记得这个安装过了,当时显示是0个需要更新,说明已经存在了,我再卸载重新试下,谢谢晕哥

离线

#24 2019-04-27 18:58:43

视觉℡
会员
注册时间: 2019-01-29
已发帖子: 41
积分: 23
个人网站

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

感谢分享





离线

#25 2019-05-08 10:02:25

cjmgd
会员
注册时间: 2019-05-08
已发帖子: 3
积分: 3

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

学习学习

离线

#26 2019-05-09 16:15:44

qq25632619
会员
注册时间: 2019-05-09
已发帖子: 8
积分: 8

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

学习一下,正好遇到类似问题

离线

#27 2019-05-10 05:11:05

flysure
会员
注册时间: 2019-05-10
已发帖子: 3
积分: 3

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

新手报到···············





离线

#28 2019-05-10 23:42:50

Learning
会员
注册时间: 2019-05-10
已发帖子: 12
积分: 12

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

学习了。。。

linux生人,怎么默认修改串口为PA2 PA3 (串口1)? 只改dts好像不行






学无止境,回头无岸

离线

楼主 #29 2019-05-11 13:49:23

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

Learning 说:

学习了。。。

linux生人,怎么默认修改串口为PA2 PA3 (串口1)? 只改dts好像不行

1. 先改 u-boot
2. bootargs 要修改
3. linux dts 修改

参考: https://whycan.cn/t_1624.html





离线

#30 2019-05-11 15:00:18

Learning
会员
注册时间: 2019-05-10
已发帖子: 12
积分: 12

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

晕哥 说:
Learning 说:

学习了。。。

linux生人,怎么默认修改串口为PA2 PA3 (串口1)? 只改dts好像不行

1. 先改 u-boot
2. bootargs 要修改
3. linux dts 修改

参考: https://whycan.cn/t_1624.html

感谢,按参考网址的修改确实可以了
感觉tina直接修改的sys_config.fex还是相对简单方便些,
nano用来学习可以了解更多知识哈






学无止境,回头无岸

离线

楼主 #31 2019-05-11 15:04:57

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

也有很多开发者不是很喜欢全志官方那个 sys_config.fex 那个套路, 萝卜青菜吧。





离线

#32 2019-05-12 12:56:55

Learning
会员
注册时间: 2019-05-10
已发帖子: 12
积分: 12

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

100s又掉进坑了

buildroot掉坑记录:

交叉编译工具链:gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)
buildroot版本:buildroot-2019.02.2 (低版本测试有相同的问题)
Target Architecture (ARM (little endian))
Target Architecture Variant (arm926t)
ARM instruction set (Thumb)
External toolchain gcc version (7.x)
External toolchain kernel headers series (4.14.x)
External toolchain C library (musl (experimental))


Incorrect selection of kernel headers: expected 4.14.x, got 4.10.x
make[1]: *** [/work/nano/buildroot-2019.02.2/output/build/toolchain-external-custom/.stamp_configured] Error 1
make: *** [_all] Error 2

改为:
External toolchain kernel headers series (4.10.x)
External toolchain C library (glibc/eglibc)
新问题:
ln: failed to create symbolic link ‘/work/nano/buildroot-2019.02.2/output/host/arm-buildroot-linux-gnueabi/sysroot/usr/lib’: No such file or directory
make[1]: *** [/work/nano/buildroot-2019.02.2/output/build/toolchain-external-custom/.stamp_staging_installed] Error 1
make: *** [_all] Error 2

权限问题?手动复制过去编译中>>>

阔以了,权限问题

最近编辑记录 Learning (2019-05-12 14:13:28)






学无止境,回头无岸

离线

#33 2020-01-23 17:57:04

XZHDJH
会员
注册时间: 2020-01-18
已发帖子: 37
积分: 37

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

学习学习

离线

#34 2020-05-10 21:12:49

regbbs
会员
注册时间: 2020-04-06
已发帖子: 80
积分: 67.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

Learning 说:

100s又掉进坑了

buildroot掉坑记录:

交叉编译工具链:gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)
buildroot版本:buildroot-2019.02.2 (低版本测试有相同的问题)
Target Architecture (ARM (little endian))
Target Architecture Variant (arm926t)
ARM instruction set (Thumb)
External toolchain gcc version (7.x)
External toolchain kernel headers series (4.14.x)
External toolchain C library (musl (experimental))


Incorrect selection of kernel headers: expected 4.14.x, got 4.10.x
make[1]: *** [/work/nano/buildroot-2019.02.2/output/build/toolchain-external-custom/.stamp_configured] Error 1
make: *** [_all] Error 2

改为:
External toolchain kernel headers series (4.10.x)
External toolchain C library (glibc/eglibc)
新问题:
ln: failed to create symbolic link ‘/work/nano/buildroot-2019.02.2/output/host/arm-buildroot-linux-gnueabi/sysroot/usr/lib’: No such file or directory
make[1]: *** [/work/nano/buildroot-2019.02.2/output/build/toolchain-external-custom/.stamp_staging_installed] Error 1
make: *** [_all] Error 2

权限问题?手动复制过去编译中>>>

阔以了,权限问题

gcc可以直接在buildroot中选择个7.x或者8.x的,不需要用linaro也可以

离线

#35 2020-05-13 20:59:35

name272
会员
注册时间: 2020-05-13
已发帖子: 10
积分: 0

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

这个写的巨详细嘛,已经入坑!!!!

离线

#36 2020-05-20 17:54:23

SkyLine
会员
注册时间: 2020-05-20
已发帖子: 12
积分: 12

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

晕哥 说:

告诉你的一个不好的消息, 百毒是搜不到的

https://whycan.cn/t_933.html

看是不是 swig 没有安装

我也出现了提示“recipe for target 'scripts/dtc'”的问题,可是我已经安装过swig,且我的gcc版本是gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)

离线

#37 2020-05-20 18:11:37

kojjiexiao
会员
注册时间: 2020-05-20
已发帖子: 1
积分: 1

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

我也买了一个,不知道能不能直接写显示内存。

离线

#38 2020-05-29 20:04:26

jou_1703
会员
注册时间: 2019-10-13
已发帖子: 12
积分: 12

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

我也买了一块,但是eth有些什么方案呢?

离线

#39 2020-05-29 20:07:17

哇酷小二
管理员
所在地: 你猜
注册时间: 2020-04-22
已发帖子: 3,387
积分: 1902
个人网站

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

jou_1703 说:

我也买了一块,但是eth有些什么方案呢?

参考这个: https://whycan.cn/t_4580.html#p45555





离线

#40 2020-07-06 10:43:10

cqgitan
会员
注册时间: 2020-07-06
已发帖子: 3
积分: 3

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

非常好的资料,我也买了一个开发吧来学习,希望大家多帮助

离线

#41 2021-05-16 12:47:23

scy251147
会员
注册时间: 2021-05-16
已发帖子: 31
积分: 15.5

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

该评论内容与本帖子无关,鼓励各位坑友积极发言讨论与帖子有关的内容!

离线

  • 不通过:与技术无关

#42 2022-05-12 16:33:09

liozeng
会员
注册时间: 2022-04-11
已发帖子: 25
积分: 0

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

@晕哥
帖子是F1C100S,怎么后面编译buildroot又成V3S的了呢?

离线

#43 2022-05-12 17:40:59

哇酷小二
管理员
所在地: 你猜
注册时间: 2020-04-22
已发帖子: 3,387
积分: 1902
个人网站

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

liozeng 说:

@晕哥
帖子是F1C100S,怎么后面编译buildroot又成V3S的了呢?

这个帖子太老了,你看一下下面这个比较完善:

buildroot-tiny200 (F1C100/200s) 开发包近期更新内容 * 已支持DVP摄像头 *
https://whycan.com/t_5221.html





离线

#45 2023-07-31 16:15:15

大道至简
会员
注册时间: 2023-07-31
已发帖子: 7
积分: 2

Re: F1C100s入坑记录(linux kernel失败!sunxi-fel, u-boot正常。)

@zuoyi
原来是这样,我也是放到共享目录的,想着编译同步方便,没想到还有这种莫名其妙的错误~

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn