您尚未登录。

楼主 #1 2019-11-03 13:34:50

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

尝试从零构建F1C100s开发环境

本帖是尝试从零开始构建F1C100s开发环境,一步一步操作,记录开发流程方便新人爬楼,并非一下子写完,将包含一下内容:
1、使用虚拟机安装ubuntu
2、根据荔枝派教程搭建开发环境
3、编译uboot
4、编译linux内核
5、编译根文件系统
6、打包出烧写spi flash的bin文件
7、烧写验证
8、编译裸机程序

最近编辑记录 LinjieGuo (2019-11-03 13:40:24)

离线

楼主 #2 2019-11-03 13:35:22

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

1、使用虚拟机安装ubuntu
链接:获取ubuntu
链接:获取虚拟机应用
1.1 新建虚拟机向导
(1)    [勾选]安装程序光盘映像文件
(2)    个性化linux:填写自己的linux机器名称,用户名,密码,确认密码
    我这里填写为:book,book,linjie,linjie
(3) 选择安装位置
(4) 根据自己情况,分配磁盘容量
    我这里分配32GB
(5) 根据自己机器性能,自定义硬件
    内存:
    处理器:
    网络适配器:
        (1)桥接模式,ubuntu相当于一台独立的电脑,可以通过路由器连接外网。
        (2)NAT模式:ubuntu连接windows的网络,可通过windows电脑分享的网络,连接外网。
(6)    进入ubuntu安装界面,按照向导随意配置。

1.2 安装一些便捷的工具
(1) 切换到root
    sudo -i
(2) 更新源:
    apt-get update
(3) 安装ssh服务器
    apt-get install ssh
(4)    命令行输入观察ubuntu的ip:
    ifconfig    (没这个工具的话apt-get install net-tools)
    或
    ip -a
(5)    windows端下载远程工具:putty
链接:获取putty   
(6)    使用putty登陆ubuntu验证ssh服务是否正常

最近编辑记录 LinjieGuo (2019-11-03 15:51:03)

离线

楼主 #3 2019-11-03 16:40:25

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

2 根据荔枝派教程搭建开发环境
    链接:荔枝派nano的教程链接
2.1 安装交叉编译工具链
(1)新建一个文件夹存放f1c100s的开发工具
    mkdir f1c100s
    进入该文件夹
    cd f1c100s
(2)获取交叉编译工具链
    wget http://releases.linaro.org/components/toolchain/binaries/7.2-2017.11/arm-linux-gnueabi/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz
(3)解压
    tar -vxJf gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz
(4)安装
    sudo cp -r ./gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi /opt/
(5)修改环境变量
-->1.安装vim:
    sudo apt-get install vim
-->2.使用vim编辑
    sudo vim /etc/bash.bashrc
-->3.在文件末尾 添加以下内容:
    PATH="$PATH:/opt/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi/bin"
-->4.使路径生效
    source /etc/bash.bashrc
-->5.测试
    arm-linux-gnueabi-gcc -v

最近编辑记录 LinjieGuo (2019-11-03 16:58:33)

离线

楼主 #4 2019-11-03 17:37:43

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

3  编译uboot
-->安装git工具
    sudo apt-get install git
3.1 获取uboot源码
    荔枝派官方教程里,源码位于git站上,因为国内git过于慢,建议使用下载工具打包下载。
(1)打开链接 https://github.com/Lichee-Pi/u-boot
(2)选择分支:点击Branch->nano-lcd800480
(3)使用下载工具打包下载
3.2 uboot.zip解压
(1)新建文件夹uboot
    mkdir uboot
(2)解压zip文件
    unzip uboot.zip
(3)进入目录
    cd u-boot
(4)查看分支
    git branch -a
(5)切换到 Nano 分支
    git checkout nano-v2018.01
(6)编译uboot
-->1 安装make
    sudo apt install make
-->2 使用nano配置
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- licheepi_nano_spiflash_defconfig
    出现错误提示:
    ①recipe for target 'scripts/basic/fixdep' failed
    ②/bin/sh: 1: cc: not found
    安装如下工具:
    sudo apt-get install libncurses5-dev
    sudo apt-get install gcc
    继续配置命令
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- licheepi_nano_spiflash_defconfig
-->3 体验可视化配置
    make ARCH=arm menuconfig
-->4 编译
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4
    如果你的CPU支持8线程,则-j4可以修改为-j8,提高编译速度。
    -----------------------------------------------
    出现错误:
    ①recipe for target 'scripts/dtc' failed
    ②recipe for target 'scripts' failed
    -----------------------------------------------
    安装如下工具:
    apt-get install device-tree-compiler
    -----------------------------------------------
    继续编译:
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4   
    -----------------------------------------------
    依然出现错误,瞎安装:
    sudo apt-get install libncurses5-dev libncursesw5-dev
    sudo apt-get install swig python-dev python3-dev
    -----------------------------------------------
    继续编译:
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4
    居然好了。
    得到u-boot-sunxi-with-spl.bin文件。

离线

楼主 #5 2019-11-03 18:04:43

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

4 编译linux内核
4.1 获取linux内核源码
(1)打开链接:https://github.com/Icenowy/linux.git
(2)选择分支:点击Branch->f1c100s-480272
(3)打包下载
(4)传到ubuntu中,解压
    unzip f1c100s-480272lcd-test.zip
(5)下载别人配置好的配置文件
    http://dl.sipeed.com/LICHEE/Nano/SDK/config
    复制下载的文件到linux源码根目录,并改名字为".config"

(6)体验可视化配置
    make ARCH=arm menuconfig
(7)编译
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4
    -----------------------------------------------
    出现错误:
    scripts/extract-cert.c:21:10: fatal error: openssl/bio.h: 没有那个文件或目录
    安装工具:
    sudo apt-get install libssl-dev
    -----------------------------------------------
    继续编译:
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4
    成功编译,生成的 zImage 在 arch ‣ arm ‣ boot 目录下

离线

楼主 #6 2019-11-03 18:53:25

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

5 编译根文件系统
5.1 安装依赖
    apt-get install linux-headers-$(uname -r)
5.2 使用buildroot编译根文件系统
(1)获取buildroot源码
    wget https://buildroot.org/downloads/buildroot-2017.08.tar.gz
    tar xvf buildroot-2017.08.tar.gz
    cd buildroot-2017.08/
(2) 配置bulidroot
    make menuconfig
    -----------------------------------------------
Target options  --->
    Target Architecture Variant (arm926t)  --->   // arm926ejs架构
    Enable VFP extension support                  // Nano 没有 VFP单元,勾选会导致某些应用无法运行
    Target ABI (EABI)  --->
    Floating point strategy (Soft float)  --->    // 软浮点

   
(2)下载依赖工具包
    https://pan.baidu.com/s/1_tBdX9K7fOkH9JdXZ_MdiQ
    下载完之后,解压后复制到"buildroot-2017.08/dl/"下,没有dl文件夹可自行创建。

    也可以不下载此工具包,但是buildroot自动更具需求下载这些工具包也许很慢。
(3)编译
    make
    -----------------------------------------------
    出现错误:
    make[2]: g++: Command not found
    安装G++工具:
    sudo apt-get install g++
    -----------------------------------------------
    继续编译:
    编译成功!
    -----------------------------------------------

(4)查看rootfs文件的大小
    ls -l output/images/rootfs.tar

离线

楼主 #7 2019-11-04 00:09:21

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

6 打包出烧写spi flash的bin文件
    先将已经被解压过的文件,统统存放在一个文件夹里,防止干扰视线。
    mkdir Pack
    mv buildroot-2017.08.tar.gz Pack
    mv f1c100s-480272lcd-test.zip Pack
    mv gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz Pack
    mv uboot.tar Pack
    如果想保持官方路线,将当前根据官方操作流程而产生的文件打包,备用
    tar -cf UKB.tar buildroot-2017.08 gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi linux-f1c100s-480272lcd-test u-boot
    mv UKB.tar Pack
6.1 修改uboot以适配spi flashd
(1)修改源码
    在uboot源码目录下 进入 ./include/configs/,修改 suniv.h
   
#define CONFIG_BOOTCOMMAND   "sf probe 0:50000000; "                           \
                             "sf read 0x80C00000 0x100000 0x4000; "  \
                             "sf read 0x80008000 0x110000 0x400000; " \
                             "bootz 0x80008000 - 0x80C00000"
(2)更改配置
    回到 uboot 源码一级目录, 进入TUI配置
    make ARCH=arm menuconfig
    取消勾选 [] Enable a default value for bootcmd
    勾选 [v] Enable boot arguments;
    在下方一项中填入 bootargs 参数:
        console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2
       
(3)回到根目录重新编译
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4
6.2 修改dts以适配spi flash
(1)修改源码
    修改内核源码目录下的 ./arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts
将原来的&spi0{...}替换为:
&spi0 {
    pinctrl-names = "default";
    pinctrl-0 = <&spi0_pins_a>;
    status = "okay";
    spi-max-frequency = <50000000>;
    flash: w25q128@0 {
        #address-cells = <1>;
        #size-cells = <1>;
        compatible = "winbond,w25q128", "jedec,spi-nor";
        reg = <0>;   
        spi-max-frequency = <50000000>;
        partitions {
            compatible = "fixed-partitions";
            #address-cells = <1>;
            #size-cells = <1>;

            partition@0 {
                label = "u-boot";
                reg = <0x000000 0x100000>;
                read-only;
            };

            partition@100000 {
                label = "dtb";
                reg = <0x100000 0x10000>;
                read-only;
            };

            partition@110000 {
                label = "kernel";
                reg = <0x110000 0x400000>;
                read-only;
            };

            partition@510000 {
                label = "rootfs";
                reg = <0x510000 0xAF0000>;
            };
        };
    };
};   
(2)重新编译设备树
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- dtbs -j4

6.3 修改内核配置
   
(1)make ARCH=arm menuconfig
(2)勾选 File systems ‣ Miscellaneous filesystems ‣ Journalling Flash File System v2 (JFFS2) support
(3)修改源码下的 ./drivers/mtd/spi-nor.c
     vi ./drivers/mtd/spi-nor/spi-nor.c
    注释掉以下一行:
    //{ "w25q128", INFO(0xef4018, 0, 64 * 1024, 256, SECT_4K) },
    在这一行下面增加一项:
    { "w25q128", INFO(0xef4018, 0, 64 * 1024, 256, 0) },
(4)重新编译内核
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4

6.4 打包生成用于少些spiflash的bin文件   
(1)在f1c100s目录下,新建文件夹rootfs
    mkdir rootfs
(2)复制rootfs.tar到rootfs文件夹中
    cp buildroot-2017.08/output/images/rootfs.tar rootfs/
(3)解压rootfs目录下的rootfs.tar
    cd rootfs
    sudo tar -xvf rootfs.tar
(4)删除rootfs.tar
    sudo rm rootfs.tar
(5)回到f1c100s目录,编写打包命令
    cd ..
    vim BuildMyImage.sh
    填写如下内容:
#!/bin/sh
dd if=/dev/zero of=f1c100s_spiflash_16M.bin bs=1M count=16 &&\
dd if=u-boot/u-boot-sunxi-with-spl.bin of=f1c100s_spiflash_16M.bin bs=1K conv=notrunc &&\
dd if=linux-f1c100s-480272lcd-test/arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dtb of=f1c100s_spiflash_16M.bin bs=1K seek=1024 conv=notrunc &&\
dd if=linux-f1c100s-480272lcd-test/arch/arm/boot/zImage of=f1c100s_spiflash_16M.bin bs=1K seek=1088 conv=notrunc &&\
mkfs.jffs2 -s 0x100 -e 0x10000 --pad=0xAF0000 -d rootfs/ -o rootfs.jffs2 &&\
dd if=rootfs.jffs2 of=f1c100s_spiflash_16M.bin bs=1k seek=5184 conv=notrunc &&\
sync
(6)运行打包脚本
    sudo sh BuildMyImage.sh
    -----------------------------------------------
    提示错误:
    BuildMyImage.sh: 6: BuildMyImage.sh: mkfs.jffs2: not found   
    安装mtd-utils工具:
    sudo apt-get install mtd-utils
    安装过程中,有可能出现超时情况,多尝试几遍或者更换源试试。
    -----------------------------------------------
    继续运行打包脚本:
    sudo sh BuildMyImage.sh
   
    稍等片刻,打包便能完成。
   
    打包完成后,在当前目录,生成一个名为f1c100s_spiflash_16M.bin的文件。

最近编辑记录 LinjieGuo (2019-11-04 00:55:16)

离线

楼主 #8 2019-11-04 00:39:54

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

7 烧写验证
(1)参考文章:https://whycan.cn/t_444.html
编译、安装Windows版本sunxi-fel步骤 (32M spi flash补丁,支持W25Q256/MX25L256)
    安装好驱动,烧写bin文件到单板上。
(2)观察串口输出:
FluxBB bbcode 上电log
明显是存在问题,但是不知道问题出在哪里,太晚了,只能先睡觉。

最近编辑记录 LinjieGuo (2019-11-04 00:46:59)

离线

楼主 #12 2019-11-04 21:05:35

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

非常感谢晕哥的指导:
回到6.26.2 修改dts以适配spi flash
    (1)修改源码
    在uboot源码目录下 进入 ./include/configs/,修改 suniv.h
   
#define CONFIG_BOOTCOMMAND   "sf probe 0 50000000; "                           \
                             "sf read 0x80C00000 0x100000 0x4000; "  \
                             "sf read 0x80008000 0x110000 0x400000; " \
                             "bootz 0x80008000 - 0x80C00000"
   
    重新编译uboot。
    重新打包出bin文件,并烧写。
    出现以下情况,很明显,还是存在问题,贴图,:
FluxBB bbcode log2

最近编辑记录 LinjieGuo (2019-11-04 21:10:10)

离线

楼主 #14 2019-11-04 23:21:35

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

再次感谢晕哥的指导:可能是CONFIG_MTD_BLOCK没有勾上。
    在linux内核根目录: make ARCH=arm menuconfig
    进入配置界面后:
    按/
    输入CONFIG_MTD_BLOCK
    进行搜索,得到以下界面。
FluxBB bbcode 内核配置界面搜索MTD
    进入→ Device Drivers,发现 已经勾选上
    <*> Memory Technology Device (MTD) support  --->
    回车进入Memory Technology Device (MTD) support  --->
看着好像有关的选项都给勾选上。贴图:
FluxBB bbcode 内核配置界面MTDsupport
    继续回车进入 Self-contained MTD device drivers
看着好像有关的选项都给勾选上。贴图:
FluxBB bbcode 内核配置界面Self-contained_MTD_device_drivers
    保存退出,继续编译。
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4

最近编辑记录 LinjieGuo (2019-11-04 23:22:40)

离线

楼主 #15 2019-11-04 23:25:42

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

编译完毕,打包后烧写bin文件。非常遗憾,结果依旧!
FluxBB bbcode 启动log3
    观察.config里的配置项
FluxBB bbcode config中MTD配置
    文件中,可以看出,MTD_BLOCK已经配置为y,但依然没能成功启动。
    我怀疑也许是根文件系统配置的问题。夜深了,明日继续。
    算了,还是再搞搞把,这么早休息实在没劲,继续折腾。
    观察启动log,发现,卡住的地方,有一条记录:  #0: Loopback 1
    再次进入配置界面:make ARCH=arm menuconfig
    Device Drivers  --->Block devices  --->
        [v]Loopback device support,勾选,看到其他有的选项,也勾上吧,相信也无妨,贴图:
FluxBB bbcode DeviceDrivers__Blockdevices
    保存配置,继续编译。
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4
    打包后烧录验证。

最近编辑记录 LinjieGuo (2019-11-04 23:44:30)

离线

楼主 #16 2019-11-04 23:49:17

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

夜已深,凭借着12线程的能力,很快就编译完成,打包烧录进单板上。
上电后,观察log,非常遗憾,唉,我要睡觉了。因为linux跑起来了...贴图:
FluxBB bbcode 启动log4

    在这紧要关头,我居然忘记了登陆账号密码,无奈之下,只能去buildroot目录下看看账号密码了。
    make menuconfig
    System configuration  --->
    贴图:
FluxBB bbcode System_configuration界面
    原来还没有设置密码,算了,真的要休息了,明日继续。

最近编辑记录 LinjieGuo (2019-11-05 00:04:40)

离线

楼主 #19 2019-11-05 21:56:32

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

可以看出我们没有设置密码,直接输入root即可登陆,回到根目录,可以看到熟悉的根目录文件夹,如下图:
FluxBB bbcode login_root界面

最近编辑记录 LinjieGuo (2019-11-05 22:06:45)

离线

楼主 #22 2019-11-06 11:15:22

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

晕哥 说:

@aaayao 这个文件下载失败: https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.12.10.tar.xz

你可以手动下载拷贝到 dl/ 目录。

是的,这个文件复制链接,用迅雷下载,非常快,十来秒就OK了。

离线

楼主 #31 2019-11-06 20:15:45

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

(3)    测试程序
    既然linux已经能跑起来了,我们编写一个hello.c,编译看能否执行。
    cd ./rootfs
    vi hello.c
   
#include <stdio.h>

int main(void)
{
    printf("hello whycan!\r\n");
    return 0;
}

    gcc编译:gcc -o hello hello.c
    ubuntu中执行:./hello
    输出:hello whycan!
    FluxBB bbcode gcc_hellowhycan

   
    编译到目标板:arm-linux-gnueabi-gcc -o Boardhello hello.c

    因为现在没又什么方便得调试工具,直接打包进根文件系统。
    sudo sh BuildMyImage.sh
    烧录到spiflash中。
    执行程序Boardhello。提示失败,如下图:
    FluxBB bbcode ErrorBoardHello

离线

楼主 #33 2019-11-06 20:30:42

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

感谢晕哥的指点,我们操作:
    ../buildroot-2017.08/output/host/bin/arm-linux-gcc -o Boardhello2 hello.c
    依然是打包进根文件系统烧录到单板。
    执行./Boardhello2程序,观察输出。
    FluxBB bbcode BoardHelloOK
    显然是成功了!

最近编辑记录 LinjieGuo (2019-11-06 20:30:58)

离线

楼主 #38 2019-11-07 13:09:01

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

aaayao 说:
xgui 说:

双十一搬瓦工bwh可能有促销的VPS, 在这上面速度比起墙内快多了。克隆torvalds的Linux仓库最多1分钟搞定。

这个方法真好,在VPS上克隆真的非常的快啊!
https://whycan.cn/files/members/2261/QQ图片20191107090703.png
https://whycan.cn/files/members/2261/QQ图片20191107090823.png
https://whycan.cn/files/members/2261/QQ图片20191107082435.png

但是要传回本地就非常的慢了,看来要在VPS上进行编译才行了。编译好之处只传回目标文件。
https://whycan.cn/files/members/2261/QQ图片20191107090158.png


可惜现在的搬瓦工都没有以前19刀一年的了,最便宜都要49刀一年。

我的uboot是直接在腾讯云的服务器上面执行指令获取的,还算比较快,一下子就好了。

离线

楼主 #42 2019-11-07 17:53:27

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

aaayao 说:

楼主,你好:
               按照你的连接下载的内核源码目录里没有 ./arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts 这个文件啊?

https://whycan.cn/files/members/2261/QQ图片20191107135919.png

稍等,我先看看呢!我搜索了一下,这个文件是存在的,你是不是搞错了呢?dts目录下文件太多,网页里只能显示一部分文件的。
FluxBB bbcode dts_png

最近编辑记录 LinjieGuo (2019-11-07 18:17:53)

离线

楼主 #44 2019-11-07 21:46:09

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

aaayao 说:

我这个suniv-f1c100s-licheepi-nano.dts没有找到&spi0{...}段落,应该在那个位置加上去呢?

// SPDX-License-Identifier: (GPL-2.0+ OR X11)
/*
 * Copyright 2018 Icenowy Zheng <icenowy@aosc.io>
 */

/dts-v1/;
#include "suniv-f1c100s.dtsi"
#include <dt-bindings/gpio/gpio.h>

/ {
	model = "Lichee Pi Nano";
	compatible = "licheepi,licheepi-nano", "allwinner,suniv-f1c100s";

	aliases {
		serial0 = &uart0;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	panel: panel {
		compatible = "qiaodian,qd43003c0-40", "simple-panel";
		#address-cells = <1>;
		#size-cells = <0>;
		enable-gpios = <&pio 4 6 GPIO_ACTIVE_HIGH>;
		power-supply = <&reg_vcc3v3>;

 		port@0 {
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <0>;

 			panel_input: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&tcon0_out_lcd>;
			};
		};
	};

	reg_vcc3v3: vcc3v3 {
		compatible = "regulator-fixed";
		regulator-name = "vcc3v3";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
	};
};

&be0 {
	status = "okay";
};

&de {
	status = "okay";
};

&tcon0 {
	pinctrl-names = "default";
	pinctrl-0 = <&lcd_rgb666_pins>;
	status = "okay";
};

&tcon0_out {
	tcon0_out_lcd: endpoint@0 {
		reg = <0>;
		remote-endpoint = <&panel_input>;
	};
};

&mmc0 {
	vmmc-supply = <&reg_vcc3v3>;
	bus-width = <4>;
	broken-cd;
	status = "okay";
};

&uart0 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart0_pe_pins>;
	status = "okay";
};

&otg_sram {
	status = "okay";
};

&usb_otg {
	dr_mode = "otg";
	status = "okay";
};

&usbphy {
	usb0_id_det-gpio = <&pio 4 2 GPIO_ACTIVE_HIGH>; /* PE2 */
	status = "okay";
};

其实你只要稍微观察一下就知道结构了。&xx{}都放在大括号外面。

最近编辑记录 LinjieGuo (2019-11-07 21:47:06)

离线

楼主 #46 2019-11-07 23:37:40

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

aaayao 说:

加在下面这个位置,但是编译出错了。

https://whycan.cn/files/members/2261/QQ图片20191107223200.png


// SPDX-License-Identifier: (GPL-2.0+ OR X11)
/*
 * Copyright 2018 Icenowy Zheng <icenowy@aosc.io>
 */

/dts-v1/;
#include "suniv-f1c100s.dtsi"
#include <dt-bindings/gpio/gpio.h>

/ {
	model = "Lichee Pi Nano";
	compatible = "licheepi,licheepi-nano", "allwinner,suniv-f1c100s";

	aliases {
		serial0 = &uart0;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	panel: panel {
		compatible = "qiaodian,qd43003c0-40", "simple-panel";
		#address-cells = <1>;
		#size-cells = <0>;
		enable-gpios = <&pio 4 6 GPIO_ACTIVE_HIGH>;
		power-supply = <&reg_vcc3v3>;

 		port@0 {
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <0>;

 			panel_input: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&tcon0_out_lcd>;
			};
		};
	};

	reg_vcc3v3: vcc3v3 {
		compatible = "regulator-fixed";
		regulator-name = "vcc3v3";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
	};
};

&be0 {
	status = "okay";
};

&de {
	status = "okay";
};

&tcon0 {
	pinctrl-names = "default";
	pinctrl-0 = <&lcd_rgb666_pins>;
	status = "okay";
};

&tcon0_out {
	tcon0_out_lcd: endpoint@0 {
		reg = <0>;
		remote-endpoint = <&panel_input>;
	};
};

&mmc0 {
	vmmc-supply = <&reg_vcc3v3>;
	bus-width = <4>;
	broken-cd;
	status = "okay";
};

&uart0 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart0_pe_pins>;
	status = "okay";
};

&otg_sram {
	status = "okay";
};

&usb_otg {
	dr_mode = "otg";
	status = "okay";
};

&spi0 {
    pinctrl-names = "default";
    pinctrl-0 = <&spi0_pins_a>;
    status = "okay";
    spi-max-frequency = <50000000>;
    flash: w25q128@0 {
        #address-cells = <1>;
        #size-cells = <1>;
        compatible = "winbond,w25q128", "jedec,spi-nor";
        reg = <0>;   
        spi-max-frequency = <50000000>;
        partitions {
            compatible = "fixed-partitions";
            #address-cells = <1>;
            #size-cells = <1>;

            partition@0 {
                label = "u-boot";
                reg = <0x000000 0x100000>;
                read-only;
            };

            partition@100000 {
                label = "dtb";
                reg = <0x100000 0x10000>;
                read-only;
            };

            partition@110000 {
                label = "kernel";
                reg = <0x110000 0x400000>;
                read-only;
            };

            partition@510000 {
                label = "rootfs";
                reg = <0x510000 0xAF0000>;
            };
        };
    };
};   

&usbphy {
	usb0_id_det-gpio = <&pio 4 2 GPIO_ACTIVE_HIGH>; /* PE2 */
	status = "okay";
};

代码比较工具对比了一下,一模一样,我上我这边的源码给你看看把。能力有限,你多折腾几遍,/笑/哈

linux内核源码链接: https://pan.baidu.com/s/1YpbDNFXn_2QdTh8YIcF_jg 提取码:bc35

最近编辑记录 LinjieGuo (2019-11-07 23:45:47)

离线

楼主 #53 2019-11-09 00:33:35

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

xrff_z 说:

楼主你好。能不能把那个交叉编译工具链 转发一下,下了一天都没有弄下来。

链接:https://pan.baidu.com/s/1j7KIMbqPl8o1zI-VtAu2KQ 提取码:zopc

离线

楼主 #67 2019-11-10 13:27:02

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

8  编译裸机程序
    获取大神网友(达克罗德)的项目:
    帖子: https://whycan.cn/t_1457.html
   
8.1 获取裸机工程包
    下载: https://whycan.cn/files/members/729/minimal_f1c100s_framebuffer.zip
    上传到ubuntu的f1c100s目录下。
8.2 解压
    unzip minimal_f1c100s_framebuffer.zip
8.3 编译
    cd minimal_f1c100s
    make
    产生以下log:
-------------------------------------------------------
book@book-virtual-machine:~/f1c100s/minimal_f1c100s$ make
mkdir -p build/
mkdir -p build/arch/arm32/lib/
mkdir -p build/driver/
mkdir -p build/lib/
mkdir -p build/machine/
CC main.c
arm-eabi-gcc -Imachine/include -Iarch/arm32/include -Idriver/include -Ilib -march=armv5te -mtune=arm926ej-s -mfloat-abi=soft -marm -mno-thumb-interwork -g -ggdb -Wall -O3 -ffreestanding -std=gnu99 -D__ARM32_ARCH__=5 -D__ARM926EJS__ -c -MD -o build/main.o main.c
make: arm-eabi-gcc: Command not found
Makefile:104: recipe for target 'build/main.o' failed
make: *** [build/main.o] Error 127
book@book-virtual-machine:~/f1c100s/minimal_f1c100s$
-------------------------------------------------------
    处理方法
    (1)安装编译工具
        sudo apt-get install gcc-arm-none-eabi
    (2)修改Makefile
        vi Makefile
        修改"CROSS_COMPILE = arm-enbi-" --> "CROSS_COMPILE ?= arm-enbi-"
    (3) 再次编译
        CROSS_COMPILE=arm-none-eabi- make
    看起来编译出bin文件了,但是仍然有提示错误。
-------------------------------------------------------
copy from `build/firmware.elf' [elf32-littlearm] to `build/firmware.bin' [binary]
Make header information for brom booting
make: execvp: tools/mksunxi/mksunxi: 权限不够
Makefile:73: recipe for target 'build/firmware.bin' failed
make: *** [build/firmware.bin] Error 127
-------------------------------------------------------
    既然权限不够,就给他权限:
    cd tools/mksunxi
    sudo chmod 777 mksunxi
    继续编译:
    CROSS_COMPILE=arm-none-eabi- make
-------------------------------------------------------
book@book-virtual-machine:~/f1c100s/minimal_f1c100s$ CROSS_COMPILE=arm-none-eabi- make
arm-none-eabi-objcopy -v -O binary build/firmware.elf build/firmware.bin
copy from `build/firmware.elf' [elf32-littlearm] to `build/firmware.bin' [binary]
Make header information for brom booting
bootloader size= 1800
The bootloader head has been fixed
-------------------------------------------------------
8.4 烧写验证

离线

楼主 #69 2019-11-11 09:11:21

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

aaayao 说:

楼主,你好:
                能提供一下你的SPI FLASH的型号和规格书吗?我这板子估计是FLASH出问题了。

我这里用的是winband 25Q128JV50,容量为16MB,应该跟flash无关,淘宝随便买两片,容量一样即可。

离线

楼主 #78 2019-11-11 19:05:04

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

aaayao 说:

楼主,你的是NANO板子吗?FLASH是买回来就焊好的吗?

我这个是买回来要自己焊的FLASH,不知道硬件上会不会有问题?
https://whycan.cn/files/members/2261/QQ图片20191111160826.jpg

我这里有2个板子,自己做的,还有荔枝派nano,测试都是成功的呢。

离线

楼主 #81 2019-11-13 10:44:58

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

wps_90 说:

能重新打包一个放上来吗,完整能路起来的

可以的,我晚点就打包整个虚拟机上来,要过2天,到时候我上传到百度云吧。

离线

楼主 #87 2019-11-14 10:31:36

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

wps_90 说:

能重新打包一个放上来吗,完整能路起来的

配置好的VM虚拟机Ubuntu系统 链接:https://pan.baidu.com/s/17vk0_QWRNRuxwi5EZ_P-Xg 提取码:54pb

离线

楼主 #117 2019-11-30 14:10:17

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

郁郁葱葱 说:

找到地方了,第五大步的第二小步得这样设置
https://whycan.cn/files/members/2409/_15749275588763.png
系统已经成功在F1C200S的板子上运行,现在开始纠结怎么联网。

不好意思,那时候还不知道怎么上图,/捂脸

离线

楼主 #118 2019-12-01 13:01:39

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

surmountliu 说:

这个要成熟的应用,估计得要小半年的跟新,?

很有可能不更了呢?时间精力不够了。/捂脸

离线

楼主 #121 2020-01-02 14:35:09

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

三哥 说:

123456进不去

稍等,我看看。密码可能被我改成linjie了。你输入"linjie",然后回车看看。

最近编辑记录 LinjieGuo (2020-01-02 14:49:00)

离线

楼主 #123 2020-01-02 15:07:55

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

三哥 说:

是的,谢谢楼主

嗯嗯,实在不好意思,因为帖子发出来一阵子之后,无法修改了。

离线

楼主 #126 2020-01-02 15:30:35

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

三哥 说:

由于我不会在linux下烧程序到板子,我都是在windows下操作。所以我找了宿主机和客户机之间互换文件的方法,希望把编译的文件拿倒windows下烧写。具体方法见这个网页:https://www.cnblogs.com/sunev/archive/2012/03/16/2400887.html

方法很多:
(1)VMtools
(2)FTP/SFTP
(3)nfs,这个比较方便,编译完,win端刷新,写个bat命令脚本,使用sunxi-tools,相对路径烧写bin文件。
这方面的话,自行科普比较好一些。

离线

楼主 #131 2020-01-06 08:59:21

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

xiao.huang 说:

$ ls -lh output/images/
total 95M
-rw-r--r-- 1 ted ted 95M 1月   6 02:41 rootfs.tar

大神指点一下,为什么我编出来的根文件系统有 95MB?
我是想烧录到16MB spiflash,解压出来发现 gdb 和 mplayer 占了几十M;
.config文件

https://whycan.cn/files/members/2854/toolchain.png

可能我在写帖子时,忽略了一些东西取消了某些选项,晚点传配置文件上来

离线

楼主 #134 2020-01-07 09:55:26

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

LinjieGuo 说:

可能我在写帖子时,忽略了一些东西取消了某些选项,晚点传配置文件上来

现在传上来。包里面存在两个文件".config"以及"config.in"

buildroot配置文件
下载后解包看看。

最近编辑记录 LinjieGuo (2020-01-07 10:25:57)

离线

楼主 #136 2020-01-09 12:35:28

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

xiao.huang 说:

感谢@LinjieGuo
下载最新的 buildroot-2019.02.8,然后重新按上述配置就没有问题,rootfs 编出来 2MB,已经能启动到 shell 了;
接下来在想 f1c200s 能做什么呢 neutral

其实你这句话问得有些盲目了,论坛里大部分都是造轮子的资料,项目还是要按具体要求来做。自己能做什么项目呢,可用拿一个开源的项目练手。

离线

楼主 #149 2020-03-10 10:10:52

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

ghosoft 说:

编译根文件系统时候遇到问题了,   没想好怎么解决,   因为apt安装不了4.12版本的linux-header,  我是在ubuntu18.04的虚拟机中尝试编译的

zt@ubuntu:~/buildroot$ make
>>> linux-headers custom Installing to staging directory
(cd /home/zt/buildroot/output/build/linux-headers-custom; PATH="/home/zt/buildroot/output/host/bin:/home/zt/buildroot/output/host/sbin:/home/zt/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/zt/crosstool-ng:/home/zt/LicheePi/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi/bin" /usr/bin/make -j5 ARCH=arm HOSTCC="/usr/bin/gcc" HOSTCFLAGS="" HOSTCXX="/usr/bin/g++" INSTALL_HDR_PATH=/home/zt/buildroot/output/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr headers_install)
make[1]: Entering directory '/home/zt/buildroot/output/build/linux-headers-custom'
make[1]: Leaving directory '/home/zt/buildroot/output/build/linux-headers-custom'
if ! support/scripts/check-kernel-headers.sh  /home/zt/buildroot/output/host/arm-buildroot-linux-uclibcgnueabi/sysroot  4.12; then exit 1; fi
Incorrect selection of kernel headers: expected 4.12.x, got 4.19.x
package/pkg-generic.mk:266: recipe for target '/home/zt/buildroot/output/build/linux-headers-custom/.stamp_staging_installed' failed
make: *** [/home/zt/buildroot/output/build/linux-headers-custom/.stamp_staging_installed] Error 1

恐怕让您失望了,我也不知道这是什么情况!/无奈

离线

楼主 #151 2020-03-10 23:49:52

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

王佳伟 说:

谢谢楼主的分享,很详细。但是我在编译make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j4的时候出现了
binman: Node '/binman/u-boot-img': Entry contents size is 0xa6fa9 (683945) but entry size is 0x7e000 (516096)
Makefile:1148: recipe for target 'u-boot-sunxi-with-spl.bin' failed
make: *** [u-boot-sunxi-with-spl.bin] Error 1
这个错误。我也不知道是什么原因,是之前配置可视化出错了吗?

你去打开Makefile文件,看看1148行驶什么内容呢

离线

楼主 #154 2020-03-21 22:43:28

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

MK-2020 说:

感谢LinjieGuo分享,我是一个超级新手,以前全在windows上开发没怎么接触linux,最近画了个F1c200s想跟下linux,刚好过来跟楼主学一学。弄了两天终于把U-boot、linux-f1c100s-480272lcd-test和buildroot-2017.08三个编译完成。我PCB板上用的是32M的(w25q32),想问一下是不是把suniv-f1c100s-licheepi-nano.dts里配置为w25q32重新编译就可以?https://whycan.cn/files/members/2850/none.png

引用晕哥的话:"不用修改,驱动检测flash id自动识别容量!"

离线

楼主 #156 2020-03-25 10:09:01

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

willX 说:

麻烦请问,更新了dts之后,使用make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- dtbs -j4
始终无法在arch/arm/boot/dts/下生成suniv-f1c100s-licheepi-nano.dts

为了保证dts是新生成的,我将旧的suniv-f1c100s-licheepi-nano.dts删除了,使用make命令再也无法生成dts了。
折腾了两天了,感谢大神帮助。

把提示截屏放上来看看。

离线

楼主 #163 2020-03-28 09:02:41

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

IT界吴彦祖 说:

楼主写的非常详细,对新手很友好,新手难得的教程

兄弟,你这ID很狂啊

离线

楼主 #166 2020-03-29 12:23:33

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

kaixxss 说:

按照操作短接了1 4脚 怎么找不到设备呀 上电的时候看设备管理器也不会刷新 是不是硬件有问题

这是芯片本身的机制,检测到SPI Flash,SD卡,没有程序,就会进入FEL模式,FlashCS引脚接地,就是为了屏蔽SPI flash。

离线

楼主 #168 2020-03-29 14:29:10

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

下载 sunxi-tools-win32support_f1c100s(20180329).7z,解压缩, 运行 zadig-2.3.exe

点击 Options -> List All Devices:(即使你的设备显示未识别设备也可以,只要装上驱动能下载就可以了)

https://whycan.cn/files/members/3/QQ20180416161704.png

选择 WinUSB (v6.1.7600.16385)
点击 【Install WCID Driver】

https://whycan.cn/files/members/3/QQ20180416161712.png
按上面步奏装好驱动

https://whycan.cn/files/members/3/QQ20180416161717.png
装完后,sunxi-fel.exe 运行一切正常。

接下来烧录一个spi flash试一试。

最近编辑记录 LinjieGuo (2020-03-29 14:34:22)

离线

楼主 #172 2020-03-29 23:40:26

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

kaixxss 说:

按照步骤试了 还是不行
https://whycan.cn/files/members/2435/qqq.png

基本操作呢,可以关掉杀毒软件再试试,不行就换个电脑试试。

离线

楼主 #176 2020-04-19 18:16:31

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

lignin 说:

我也想玩F1C100S了,正在找相关原理图看看怎么设计,支持楼主

直接买一个荔枝派回来就可以了。不用费劲。先搞定功能再去自己画板

离线

楼主 #180 2020-04-30 21:55:58

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

Space 说:

大佬有没有RTT的教程呢?

RTT教程没有,但是开源加群交流,QQ群686338051
不是我的群,加不进不关我事喔。
不过其实很简单。开发流程是这样:
(1)下载ENV并安装,参考链接如下:
①ENV使用教程:
https://www.rt-thread.org/page/video.html
②ENV下载:
https://www.rt-thread.org/page/download.html
自己进去找,很容易找到的。
(2)下载RTT官方源码:
①官方下载页:
https://www.rt-thread.org/page/download.html
②git页面:
https://github.com/RT-Thread/rt-thread
   使用歪朵拉的加速服务下载git:
https://g.widora.cn/
(3)直接在win下解压RTT,使用ENV进入RTT_3_1_3\bsp\allwinner_tina\
(4)输入scons进行编译。(注意,只能直接编译,不能像STM32一样建议keil工程)
(5)其余自行参考这个帖子的最终结果。
https://whycan.cn/t_3877.html

最近编辑记录 LinjieGuo (2020-04-30 23:52:39)

离线

楼主 #182 2020-05-01 14:39:06

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

kq851211 说:

请问全志是怎么回事,官网上什么技术资料都找不到,找全志的开发资料好难呀

应该是为了保护代理商的利益吧,随便公开资料,很容易出现劣币 驱逐良币的情况。

离线

楼主 #183 2020-05-01 16:40:24

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

willX 说:

系统启动了,但是发现f1c200s暂时成了一个孤岛,没有网口,没有usb,
大家是怎么把测试软件、文件上传到正在f1c200s里运行的文件系统里的?

解决你的孤岛问题:https://whycan.cn/t_4266.html

离线

楼主 #185 2020-05-02 15:27:51

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

andrewchen175 说:

这才是我开始的地方,一路顺风

good luck!

离线

楼主 #188 2020-05-05 10:53:00

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

wenunit 说:

求一个VMware的安装好的Nano镜像,用了十几年的单片机,发现linux是白的不能再白了,没安装成功。

配置好的VM虚拟机Ubuntu系统 链接:https://pan.baidu.com/s/17vk0_QWRNRuxwi5EZ_P-Xg 提取码:54pb

离线

楼主 #189 2020-05-05 10:53:40

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

jiangshan00000 说:

请教个问题,开发环境是在linux下好配置,还是在windows下好配置?

都可以的,我是使用linux开启samba,然后在win下烧录。

离线

楼主 #192 2020-05-05 17:06:23

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

zhangxm_0701 说:

请教个问题,开发环境是在linux下好配置,还是在windows下好配置?

我是这样做的,开发linux应用,linux下开启Samba,然后在win下使用网络映射驱动器,直接source insight 编辑编辑代码,然后使用终端远程linux编译。编译完,在win下烧录。

也就是说,linux只负责编译。win下负责代码编写和烧录。

如果开发裸机,可以直接在win下使用keil开发。

离线

楼主 #209 2020-05-17 11:42:21

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

郝好小小 说:

系统启动了,但是发现f1c200s,没有网口,没有usb,持续观望学习中。

看第二篇文章 https://whycan.cn/t_4266.html

离线

楼主 #213 2020-05-18 10:22:01

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

tiandiyixian20 说:
MMC:   SUNXI SD/MMC: 0
SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
*** Warning - bad CRC, using default environment

Setting up a 480x272 lcd console (overscan 0x0)
In:    serial@1c25000
Out:   serial@1c25000
Err:   serial@1c25000
Net:   No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot:  0 
SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
device 0 offset 0x100000, size 0x4000
SF: 16384 bytes @ 0x100000 Read: OK
device 0 offset 0x110000, size 0x400000
SF: 4194304 bytes @ 0x110000 Read: OK
## Flattened Device Tree blob at 80c00000
   Booting using the fdt blob at 0x80c00000
   Loading Device Tree to 80e05000, end 80e0a3b5 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.2.0-licheepi-nano+ (zjf@book-virtual-machine) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #10 Mon May 18 01:03:16 CST 2020
[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] OF: fdt: Machine model: Lichee Pi Nano
[    0.000000] Memory policy: Data cache writeback
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Memory: 22696K/32768K available (6144K kernel code, 233K rwdata, 1472K rodata, 1024K init, 228K bss, 10072K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] random: get_random_bytes called from start_kernel+0x254/0x42c with crng_init=0
[    0.000047] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[    0.000127] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000709] Console: colour dummy device 80x30
[    0.000807] Calibrating delay loop... 203.16 BogoMIPS (lpj=1015808)
[    0.070245] pid_max: default: 32768 minimum: 301
[    0.070674] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.070714] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.072400] CPU: Testing write buffer coherency: ok
[    0.074424] Setting up static identity map for 0x80100000 - 0x80100058
[    0.076719] devtmpfs: initialized
[    0.084396] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.084457] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.084767] pinctrl core: initialized pinctrl subsystem
[    0.086849] NET: Registered protocol family 16
[    0.088278] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.090494] cpuidle: using governor menu
[    0.144032] SCSI subsystem initialized
[    0.144444] usbcore: registered new interface driver usbfs
[    0.144604] usbcore: registered new interface driver hub
[    0.144792] usbcore: registered new device driver usb
[    0.145298] pps_core: LinuxPPS API ver. 1 registered
[    0.145324] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.145850] Advanced Linux Sound Architecture Driver Initialized.
[    0.147573] clocksource: Switched to clocksource timer
[    0.178726] NET: Registered protocol family 2
[    0.180294] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes)
[    0.180374] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.180435] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.180483] TCP: Hash tables configured (established 1024 bind 1024)
[    0.180774] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.180835] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.181346] NET: Registered protocol family 1
[    0.183860] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.186019] Initialise system trusted keyrings
[    0.186614] workingset: timestamp_bits=30 max_order=13 bucket_order=0
[    0.207933] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.214559] Key type asymmetric registered
[    0.214596] Asymmetric key parser 'x509' registered
[    0.214781] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    0.214808] io scheduler mq-deadline registered
[    0.214825] io scheduler kyber registered
[    0.227429] suniv-f1c100s-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[    0.421545] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[    0.427394] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pe not found, using dummy regulator
[    0.429331] printk: console [ttyS0] disabled
[    0.449598] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 25, base_baud = 6250000) is a 16550A
[    0.829064] printk: console [ttyS0] enabled
[    0.837489] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator
[    0.889606] brd: module loaded
[    0.913898] loop: module loaded
[    0.918114] SCSI Media Changer driver v0.25 
[    0.923707] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pc not found, using dummy regulator
[    0.936693] m25p80 spi0.0: w25q128 (16384 Kbytes)
[    0.942461] 4 fixed-partitions partitions found on MTD device spi0.0
[    0.948941] Creating 4 MTD partitions on "spi0.0":
[    0.953754] 0x000000000000-0x000000100000 : "u-boot"
[    0.962681] 0x000000100000-0x000000110000 : "dtb"
[    0.971157] 0x000000110000-0x000000510000 : "kernel"
[    0.979945] 0x000000510000-0x000001000000 : "rootfs"
[    0.989196] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.995727] ehci-platform: EHCI generic platform driver
[    1.001387] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.007714] ohci-platform: OHCI generic platform driver
[    1.013380] usbcore: registered new interface driver usb-storage
[    1.021215] input: 1c23400.lradc as /devices/platform/soc/1c23400.lradc/input/input0
[    1.030119] i2c /dev entries driver
[    1.037778] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pf not found, using dummy regulator
[    1.075933] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB
[    1.085407] usbcore: registered new interface driver usbhid
[    1.091109] usbhid: USB HID core driver
[    1.111993] NET: Registered protocol family 17
[    1.116556] Key type dns_resolver registered
[    1.123402] Loading compiled-in X.509 certificates
[    1.138698] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator
[    1.150125] sun4i-backend 1e60000.display-backend: Couldn't find matching frontend, frontend features disabled
[    1.160956] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc0738094)
[    1.170036] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc0736cec)
[    1.177818] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    1.184421] [drm] No driver support for vblank timestamp query.
[    1.191734] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[    1.249948] Console: switching to colour frame buffer device 60x34
[    1.273157] sun4i-drm display-engine: fb0: sun4i-drmdrmfb frame buffer device
[    1.281268] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    1.299447] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    1.306225] vcc5v0: disabling
[    1.309331] ALSA device list:
[    1.312362]   #0: Loopback 1
[    1.316260] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    1.324988] cfg80211: failed to load regulatory.db
[    1.331966] VFS: Cannot open root device "mtdblock3" or unknown-block(31,3): error -19
[    1.340000] Please append a correct "root=" boot option; here are the available partitions:
[    1.348483] 0100            4096 ram0 
[    1.348493]  (driver?)
[    1.354603] 0101            4096 ram1 
[    1.354607]  (driver?)
[    1.360782] 0102            4096 ram2 
[    1.360788]  (driver?)
[    1.366930] 0103            4096 ram3 
[    1.366936]  (driver?)
[    1.373097] 0104            4096 ram4 
[    1.373104]  (driver?)
[    1.379281] 0105            4096 ram5 
[    1.379288]  (driver?)
[    1.385390] 0106            4096 ram6 
[    1.385395]  (driver?)
[    1.391552] 0107            4096 ram7 
[    1.391557]  (driver?)
[    1.397725] 0108            4096 ram8 
[    1.397733]  (driver?)
[    1.403834] 0109            4096 ram9 
[    1.403838]  (driver?)
[    1.410010] 010a            4096 ram10 
[    1.410017]  (driver?)
[    1.416240] 010b            4096 ram11 
[    1.416246]  (driver?)
[    1.422489] 010c            4096 ram12 
[    1.422495]  (driver?)
[    1.428728] 010d            4096 ram13 
[    1.428735]  (driver?)
[    1.434952] 010e            4096 ram14 
[    1.434958]  (driver?)
[    1.441203] 010f            4096 ram15 
[    1.441210]  (driver?)
[    1.447434] 1f00            1024 mtdblock0 
[    1.447441]  (driver?)
[    1.454031] 1f01              64 mtdblock1 
[    1.454037]  (driver?)
[    1.460617] 1f02            4096 mtdblock2 
[    1.460622]  (driver?)
[    1.467188] 1f03           11200 mtdblock3 
[    1.467194]  (driver?)
[    1.473780] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,3)
[    1.482120] CPU: 0 PID: 1 Comm: swapper Not tainted 5.2.0-licheepi-nano+ #10
[    1.489147] Hardware name: Allwinner suniv Family
[    1.493902] [<c010e478>] (unwind_backtrace) from [<c010ba5c>] (show_stack+0x10/0x14)
[    1.501647] [<c010ba5c>] (show_stack) from [<c0116db4>] (panic+0xe8/0x2e4)
[    1.508529] [<c0116db4>] (panic) from [<c090129c>] (mount_block_root+0x1ec/0x2e0)
[    1.516006] [<c090129c>] (mount_block_root) from [<c09016bc>] (prepare_namespace+0x158/0x1b8)
[    1.524536] [<c09016bc>] (prepare_namespace) from [<c065a670>] (kernel_init+0x8/0x110)
[    1.532452] [<c065a670>] (kernel_init) from [<c01010e0>] (ret_from_fork+0x14/0x34)
[    1.540000] Exception stack(0xc1831fb0 to 0xc1831ff8)
[    1.545051] 1fa0:                                     00000000 00000000 00000000 00000000
[    1.553218] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    1.561382] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    1.567993] Rebooting in 5 seconds..
[    7.547227] Reboot failed -- System halted

博主好,请问我这个好像是没有识别到mtd这个是啥原因,MTD有打开的
CONFIG_MTD_BLKDEVS=y
CONFIG_MTD_BLOCK=y
CONFIG_FTL=y
CONFIG_RFD_FTL=y
CONFIG_MTD_SWAP=y

试一下这个:
观察启动log,发现,卡住的地方,有一条记录:  #0: Loopback 1
    再次进入配置界面:make ARCH=arm menuconfig
    Device Drivers  --->Block devices  --->
        [v]Loopback device support,勾选,看到其他有的选项,也勾上吧,相信也无妨......
上门有这个错误记录,回去看看。不知道是否为这个原因。

最近编辑记录 LinjieGuo (2020-05-18 10:22:55)

离线

楼主 #217 2020-05-20 09:36:35

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

wjn060454 说:

您好 http://dl.sipeed.com/LICHEE/Nano/SDK/config 这个config文件请问能分享下么?今天上这个发现config文件下不了。。跟着教程走不下去了。。

稍等,我传上来
https://whycan.cn/files/members/1845/config_ok.zip
下载文件,解压zip包,然后将config_ok复制为.config文件就可以了

最近编辑记录 LinjieGuo (2020-05-20 09:45:45)

离线

楼主 #219 2020-05-20 20:28:35

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

mirkerson 说:

有裸机开发这块的资料吗,一直没接触过现在着急这方面的资料,头都大了

淘宝上有个卖代码的,1.5K,做项目可以直接购买。搜索"小淘气科技"店铺就可以了

最近编辑记录 LinjieGuo (2020-05-20 20:29:35)

离线

楼主 #225 2020-05-21 18:44:28

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

auroal1 说:

能不能把那个交叉编译工具链转发一下,下了一天都没有弄下来,好麻烦

复制链接,然后使用迅雷下载。
http://releases.linaro.org/components/toolchain/binaries/7.2-2017.11/arm-linux-gnueabi/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz

离线

楼主 #237 2020-06-05 20:00:54

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

zstein 说:

编译的rootfs太大了。哪里有精简的配置。。

可以下载我的虚拟机看看,都配置好了。

离线

楼主 #243 2020-06-09 18:18:41

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

1040122617@qq.com 说:

log打印 m25p80 spi0.0: w25q128 (16384 Kbytes)之后没有打印分区信息,最后卡在了Waiting for root device /dev/mtdblock3...请问这个怎么解决呢

回到15楼,不要着急,慢慢看。

离线

楼主 #245 2020-06-09 20:51:13

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

jason1106 说:

使用烧录命令也没啥问题 烧录的进度条也正常显示 但每次都没烧进去 都还是之前的内容 这是什么情况啊

flash虚焊吧,或者flash有问题,换一个或者补焊锡看看。
只要识别到芯片,下载软件可以对空气下载。

最近编辑记录 LinjieGuo (2020-06-09 20:51:37)

离线

楼主 #247 2020-06-10 09:08:57

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

1040122617@qq.com 说:

论坛上好多方法我都试过了,都行不通,帖子里要修改的地方我都修改了,还是不打印分区信息。

可以直接下载我配置好的虚拟机,这个地方,有2个可能:{
    ①荔枝派的坑,一个":"引发的问题
    ②15楼,配置一下有"Loopback"字眼的项
}

最近编辑记录 LinjieGuo (2020-06-10 09:09:47)

离线

楼主 #250 2020-06-12 15:01:15

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

wings 说:

换了这个工具链运行的时候显示段错误了,只是写了个helloworld
# ./hello
Segmentation fault
需要的动态库也移植了
wings@ubuntu:~/Lichee/opt$ ./compile.sh
  NEEDED               libc.so.0
不知道咋回事啊

使用buildroot里面的交叉编译工具链。参考这篇文章:
https://whycan.cn/t_4266.html

最近编辑记录 LinjieGuo (2020-06-12 15:01:45)

离线

楼主 #256 2020-06-23 14:36:30

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

hong 说:



这个情况一直存在,各种修改,,还是解决不了问题,,能指导一下吗

可以下载我打包出来的虚拟机,看看uboot/内核/根文件系统的配置与你配置的有什么不一样,我工作比较忙,也比较长时间没玩了,不好意思。

离线

楼主 #262 2020-06-28 09:26:07

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

zhou_yutao 说:

最近才开始学习f1c100s,多谢楼主分享,顺便咨询楼主,哪儿可以搞定LicheePi Nano Dock底板?想研习下声音问题!

请问你的意思是买一个Dock底板吗,荔枝派店铺能够购买的呢

最近编辑记录 LinjieGuo (2020-06-28 09:26:15)

离线

楼主 #263 2020-06-28 09:27:20

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

钢筋 说:

没有人遇到过flash芯片是xt25f128b的情况吗

我自己囤了一些25Q128,用的都是这个型号,所以你得在站里搜索一下了,我印象中是有解决办法的。

离线

楼主 #273 2020-07-24 20:38:38

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

淡定 说:

虚拟机下载了,book用户名,密码是啥呢?

不好意思,因为习惯了,密码应该是linjie

离线

楼主 #280 2020-08-11 14:24:05

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

mrcong 说:

我的是94M 合成bin100多M

可以下载我分享的虚拟机,看看配置方面有什么不一样。

离线

楼主 #284 2020-09-16 15:42:45

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

ykf232323 说:

下载UBOOT,然后解压,这个过程请详细一些,是不是需要下载到指定文件夹?否则我解压时怎么找到下载的文件?

帖子上面的所有解压命令都是解压到当前目录的。

离线

楼主 #286 2020-09-17 03:23:13

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

ykf232323 说:
LinjieGuo 说:

帖子上面的所有解压命令都是解压到当前目录的。

 

你好,UBOOT下载到指定目录吗?我用解压命令找不到文件

需要先从git上下载uboot对应分支的源码,然后,上传到ubuntu上面,才能解压。

离线

楼主 #294 2020-12-14 23:57:55

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

tang6397 说:

LinjieGuo暈哥, 下载你的虚拟机不能在我的pc机上打开,
因为它是12 *cpu, 我的pc 机8*cpu, 请求介决办法! 先谢了!

哇,明天我截个图,你看一下就明白了。虚拟机软件配置一下就可以了的。

离线

楼主 #297 2020-12-19 00:22:27

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

002.png

离线

楼主 #298 2020-12-19 00:23:02

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

修改成你自己的cpu线程数就可以了

离线

楼主 #300 2020-12-23 19:28:25

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

tang6397 说:

LinjieGuo暈哥
virtual machine setting-->hard ware-->processors-->
12*cpu-->8*cpu-->ok
open ubuntu 64.vmx-->Install Tools......
(PM 5:00-->10:00 )任务管理噐-->不允许, 12*cpu,
在VMWare里改没有用, 你的已配置环境work.zip移植不了.

看看是不是你的虚拟机软件版本问题呢,我使用得是很旧的VM 12Pro

离线

楼主 #302 2020-12-24 19:51:43

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

我明白你的意思了,因为我的是6核心12线程处理器,所以可以选择12个Core,你的不是,是不能这样选的。只能选择适合的Core数。

离线

楼主 #306 2021-01-03 17:30:49

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

qsv 说:

请教个问题,按照楼主LinjieGuo的方法编译hello.c,用的楼主的buildroot,为啥出现下列问题:
qsv@ubuntu:~/rootfs$ ../buildroot-2017.08/output/host/bin/arm-linux-gcc -o Boardhello hello.c
/home/qsv/buildroot-2017.08/output/host/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/6.4.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.27' not found (required by /home/qsv/buildroot-2017.08/output/host/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/6.4.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld)
collect2: error: ld returned 1 exit status

我也不知道。得你自己琢磨一下了。

离线

楼主 #307 2021-01-03 17:32:02

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

sechfly 说:

楼主:

我编译内核的时候会报错,

在ubuntu 和centos下都试过, 网上说更新ubuntu的内核到其他版本可以解决,试过好几个版本也都一样,你们编译没遇到这个问题吗?


make[1]: *** 正在等待未完成的任务....
In file included from ./include/linux/string.h:6:0,
                 from ./include/uapi/linux/uuid.h:22,
                 from ./include/linux/uuid.h:19,
                 from ./include/linux/mod_devicetable.h:13,
                 from scripts/mod/devicetable-offsets.c:3:
./include/linux/compiler.h:242:10: fatal error: asm/barrier.h: 没有那个文件或目录
#include <asm/barrier.h>
          ^~~~~~~~~~~~~~~
compilation terminated.
scripts/Makefile.build:150: recipe for target 'scripts/mod/devicetable-offsets.s' failed
make[2]: *** [scripts/mod/devicetable-offsets.s] Error 1
make[2]: *** 正在等待未完成的任务....
scripts/Makefile.build:575: recipe for target 'scripts/mod' failed
make[1]: *** [scripts/mod] Error 2
Makefile:556: recipe for target 'scripts' failed
make: *** [scripts] Error 2
root@sechfly-All-Series:/mnt/home/sechfly/samba/F1C100S/Code/linux-f1c100s-480272lcd-test#
root@sechfly-All-Series:/mnt/home/sechfly/samba/F1C100S/Code/linux-f1c100s-480272lcd-test#
root@sechfly-All-Series:/mnt/home/sechfly/samba/F1C100S/Code/linux-f1c100s-480272lcd-test#

没有遇到过这种问题呢!兄弟你要自己琢磨一下了。是不是文件没拉齐全

离线

楼主 #309 2021-01-12 10:02:46

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

我看到你发的贴了,但是我也不知道什么原因,应该是标准输出被重定位了吧,在帖子里等待强大的网友和无所不能的晕哥,应该晚点会回复的。

离线

楼主 #311 2021-01-12 11:22:11

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

raspberryman 说:

应该是是缺库,用静态链接,一般没有问题。

编译命令行加  -static 能不能跑?

如果是缺少库,参考这篇文章,把相关的库文件复制过来。
https://whycan.cn/t_4266.html
zero_build_001.png

最近编辑记录 LinjieGuo (2021-01-12 11:22:41)

离线

楼主 #314 2021-01-12 13:11:17

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

LinuxGo 说:

大佬 我到这步卡住了
记录了16+0 的读入
记录了16+0 的写出
16777216 bytes (17 MB, 16 MiB) copied, 0.0912342 s, 184 MB/s
记录了984+0 的读入
记录了984+0 的写出
1007616 bytes (1.0 MB, 984 KiB) copied, 0.0097831 s, 103 MB/s
记录了7+1 的读入
记录了7+1 的写出
7999 bytes (8.0 kB, 7.8 KiB) copied, 0.000651522 s, 12.3 MB/s
记录了3800+1 的读入
记录了3800+1 的写出
3891312 bytes (3.9 MB, 3.7 MiB) copied, 0.0505016 s, 77.1 MB/s
mkfs.jffs2: error!: rootfs/
            error 2 (No such file or directory)
两个错误
不知怎么办了,。,

LinjieGuo 说:

6 打包出烧写spi flash的bin文件
    先将已经被解压过的文件,统统存放在一个文件夹里,防止干扰视线。
....

用root用户看看,sudo  -i,切换到root用户。

离线

楼主 #315 2021-01-12 13:12:42

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

如果还是不行,只能上晕哥了。

离线

楼主 #318 2021-01-13 16:38:58

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

LinuxGo 说:

你好 请问这里 选择分支:点击Branch->f1c100s-480272    480272  这个版本和屏幕有关系吗?  分支里只有f1c100s-480272lcd-test 我的屏幕时800*480 也用这个分支吗?

LinjieGuo 说:

4 编译linux内核
4.1 获取linux内核源码
(1)打开链接:https://github.com/Icenowy/linux.git
...

    成功编译,生成的 zImage 在 arch ‣ arm ‣ boot 目录下

https://whycan.cn/t_3281.html#p28440

离线

楼主 #320 2021-01-13 16:55:04

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

帖子上面说了,这是个坑。

晕哥 说:

@LinjieGuo 去掉冒号, 那个地方是荔枝派文档挖的大坑。

u-boot 的 bootcmd 里面 sf probe 0:500000

上面命令行的冒号。

离线

楼主 #323 2021-01-13 17:29:59

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

看看14楼的内容,是否勾选上了。
http://whycan.com/t_3138.html#p26711

最近编辑记录 LinjieGuo (2021-01-13 17:32:03)

离线

楼主 #325 2021-01-14 14:41:02

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

LinuxGo 说:

你好 linjie 按上面的检查了一遍  都一样 还是卡在那

LinjieGuo 说:

看看14楼的内容,是否勾选上了。
http://whycan.com/t_3138.html#p26711

唯有召唤无所不能的晕哥出场了。

离线

楼主 #327 2021-01-14 15:24:55

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

恭喜恭喜,我以为你看了那个CSDN的帖子,已经改过去了呢。

离线

楼主 #330 2021-01-14 18:01:31

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

LinuxGo 说:

楼主,helloword出来了,接上液晶,液晶不正常。
Uboot启动时液晶是正常显示了个小企鹅。
文件系统全部加载完后液晶就不正常了。
这改哪边呀?

你接的LCD分辨率多少呢

离线

楼主 #332 2021-01-14 22:23:54

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

LinuxGo 说:

你好,Linjie :
我的液晶屏是800✖️480。
在哪边修改?

LinjieGuo 说:
LinuxGo 说:

楼主,helloword出来了,接上液晶,液晶不正常。
Uboot启动时液晶是正常显示了个小企鹅。
文件系统全部加载完后液晶就不正常了。
这改哪边呀?

你接的LCD分辨率多少呢

参考晕哥的评论。
http://whycan.com/t_3138.html#p28452

离线

楼主 #334 2021-01-18 16:41:14

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

编译出来,根文件系统,尺寸大的话,参考这几层的回复。
解决方法:把QT和一些没用到的库取消勾选就好了。
下面的几层回复,没有组织好,但是你要的答案,确实在里面。
http://whycan.com/t_3138.html#p31496
http://whycan.com/t_3138.html#p31627
http://whycan.com/t_3138.html#p36643

最近编辑记录 LinjieGuo (2021-01-18 16:43:44)

离线

楼主 #338 2021-03-13 10:16:56

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

LxOops 说:

楼主请问我在编译根文件系统时,出现了这个问题,该怎么解决
freadahead.c: In function 'freadahead':
freadahead.c:92:3: error: #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
   92 |  #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
      |   ^~~~~
  CC       fseek.o
  CC       fseeko.o
make[5]: *** [Makefile:1915: freadahead.o] Error 1
make[5]: *** Waiting for unfinished jobs....
fseeko.c: In function 'rpl_fseeko':
fseeko.c:110:4: error: #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."
  110 |   #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."
      |    ^~~~~
make[5]: *** [Makefile:1915: fseeko.o] Error 1
make[4]: *** [Makefile:1674: all] Error 2
make[3]: *** [Makefile:1572: all-recursive] Error 1
make[2]: *** [Makefile:1528:all] 错误 2
make[1]: *** [package/pkg-generic.mk:230:/home/windovo/buildroot-2017.08/output/build/host-m4-1.4.18/.stamp_built] 错误 2
make: *** [Makefile:79:_all] 错误 2

可能是源码没有完整下载导致的。
或者是c库没选对。

最近编辑记录 LinjieGuo (2021-03-13 10:17:20)

离线

楼主 #343 2021-04-26 14:43:12

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

raspberryman 说:

[    0.952845] Creating 4 MTD partitions on "spi0.0":
[    0.957800] 0x000000000000-0x000000100000 : "u-boot"
[    0.966748] rfd_ftl: no RFD magic found in 'u-boot'
[    0.973911] ftl_cs: FTL header not found.
[    0.979699] 0x000000100000-0x000000210000 : "dtb"
[    0.988407] rfd_ftl: no RFD magic found in 'dtb'
[    0.995293] ftl_cs: FTL header not found.
[    1.000986] 0x000000110000-0x000000620000 : "kernel"
[    1.019761] rfd_ftl: no RFD magic found in 'kernel'
[    1.027133] ftl_cs: FTL header not found.
[    1.032773] 0x000000510000-0x000001000000 : "rootfs"
[    1.066081] rfd_ftl: no RFD magic found in 'rootfs'
[    1.073276] ftl_cs: FTL header not found.

奇怪,这是什么错误?

我也不知道,要请教一下晕哥了

离线

楼主 #351 2021-10-06 15:26:19

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

@wbinchina
哈哈,不好意思,我很久没看贴了。
认真爬一下楼,有答案的。很多答案在晕哥的回复里面。

离线

楼主 #352 2021-10-06 15:51:15

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

@逍暗博
有可能是拉取资源的时候,拉少了某些东西。
可以尝试下载我上传的虚拟机,对比一下。

离线

楼主 #353 2021-10-06 15:55:14

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

配置好的VM虚拟机Ubuntu系统 链接:https://pan.baidu.com/s/17vk0_QWRNRuxwi5EZ_P-Xg 提取码:54pb

离线

楼主 #364 2022-03-15 09:05:03

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

就是小白了 说:

@LinjieGuo
这个文件是要烧写到哪个地址呢,是地址0吗,我把下面提供的虚拟机里的bin文件烧录到0地址结果出现和你第一次报错一样的错误,但是suniv.h已经是删过冒号的了。
https://whycan.com/files/members/6074/微信截图_20220310161208.png

兄弟你的Flash是什么型号呢?

离线

楼主 #372 2022-09-08 13:28:03

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

zhishang 说:

就是编译uboot的时候一直报make: *** No targets specified and no makefile found.  Stop.

我比较长时间没有关注了,你可以尝试使用我搭建好的环境,里面包含了本贴的所以内容。
配置好的VM虚拟机Ubuntu系统 链接:https://pan.baidu.com/s/17vk0_QWRNRuxwi5EZ_P-Xg 提取码:54pb

离线

楼主 #375 2022-09-14 15:57:37

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

47272078 说:

请教大神一个问题,开发环境是不是可以用树莓派的ubuntu下进行编译?

按理说是可以的,但是你要找到合适的编译工具链。。。

离线

楼主 #386 2023-07-23 01:53:18

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

123546 说:

请教一下大佬,这个最后一步烧入bin文件到单板上怎么烧入的,有没有详细步骤。

教程在晕哥这个链接
编译、安装Windows版本sunxi-fel步骤 (32M spi flash补丁,支持W25Q256/MX25L256)
https://whycan.com/t_444.html#p1130

离线

楼主 #391 2023-10-09 09:41:58

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

zzy 说:

楼主能出一个配置adb的教程吗,配置了usb后不知道咋操作了,传不了文件

参考这一篇,可以用串口直接传文件
https://whycan.com/t_4266.html

离线

楼主 #394 2023-10-15 19:21:38

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

wenjiu 说:

楼主,启动速度要多久?

这个帖子很久了,现在很难跟进了,好像是二十多秒启动完?

离线

楼主 #395 2023-10-15 19:22:13

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 585
积分: 589
个人网站

Re: 尝试从零构建F1C100s开发环境

bonito 说:

支持开源,而且是allegro格式!

我用的是荔枝派板子,你直接参考这个资料即可。

离线

页脚

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

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