您尚未登录。

#1 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-15 09:46:23

"这是用外部 工具链吗?"
->是的,/opt/gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabif-gcc;

然后git uboot的时候出现这样的问题怎么解决?git内核成功了,
root@Linux:/home/robert/2_try_v3s/uboot# git clone https://github.com/Lichee-Pi/u-boot.git -b v3s-spi-experimental
Cloning into 'u-boot'...
remote: Enumerating objects: 516852, done.
error: RPC failed; result=56, HTTP code = 200 MiB | 23.00 KiB/s
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

#2 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-14 20:44:57

换了一个buildroot:

root@Linux:/home/robert/v3s/buildroot-2017.08# make

toolchain-external-custom Configuring

Cannot execute cross-compiler '/opt/gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabif-gcc'
make: *** [/home/robert/v3s/buildroot-2017.08/output/build/toolchain-external-custom/.stamp_configured] Error 1

root@Linux:/home/robert/v3s/buildroot-2017.08# ls -lh /usr/bin/arm-linux-gnueabihf-gcc
lrwxrwxrwx 1 root root 27 2月 26 2014 /usr/bin/arm-linux-gnueabihf-gcc -> arm-linux-gnueabihf-gcc-4.8

#3 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-14 20:39:13

换了一个buildroot:

root@Linux:/home/robert/v3s/buildroot-2017.08# make

toolchain-external-custom Configuring

Cannot execute cross-compiler '/opt/gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabif-gcc'
make: *** [/home/robert/v3s/buildroot-2017.08/output/build/toolchain-external-custom/.stamp_configured] Error 1

#4 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-14 20:36:06

buildroot-2017.02.7这个刚make就挂了,需要 qt5base怎么搞呢??
root@Linux:/home/robert/2_try_v3s/buildroot-2017.02.7# make
Makefile:534: *** pcre is in the dependency chain of qt5base that has added it to its _DEPENDENCIES variable without selecting it or depending on it from Config.in. Stop

#5 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-13 10:20:28

晕哥 wrote:

你的flash是什么型号呢,具体出了什么错误信息?

还在研究怎么编译出来在16Mflash上的;
然后,有一个问题是:
-》”Zero的文件系统 主要分为buildroot/LEDE,emdebian两类,前者较小,可以在spi flash(16/32MB)或者小容量TF卡(64/128MB)上运行。“(来自zero wiki上的(http://zero.lichee.pro/%E7%B3%BB%E7%BB%9F%E5%BC%80%E5%8F%91/type.html))
-》具体是怎么操作的呢??buildroot/LEDE在哪里?怎么配置16Mflash的???

#6 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-12 14:37:59

flash的型号咋不对应呢???第1个对应的flash型号多,第2个对应的flash型号少?两个不是应该一样么???

第1个,
设备树配置
修改dts配置添加spi flash节点

vi arch/arm/boot/dts/sun8i-v3s-licheepi-zero.dts
添加spi节点配置:

&spi0 {
status ="okay";

mx25l25635e:mx25l25635e@0 {
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-max-frequency = <50000000>;
#address-cells = <1>;
#size-cells = <1>;
};

};
https://box.kancloud.cn/611c8c327abb212991c3d0c02b0cf6d8_954x809.jpg
这里的flash型号需要在下表之中,否则将无法识别:(注意容量也一定要对应)

static const struct spi_device_id m25p_ids[] = {
/*

  • Allow non-DT platform devices to bind to the "spi-nor" modalias, and

  • hack around the fact that the SPI core does not provide uevent

  • matching for .of_match_table
    */
    {"spi-nor"},

/*

  • Entries not used in DTs that should be safe to drop after replacing

  • them with "spi-nor" in platform data.
    */
    {"s25sl064a"}, {"w25x16"}, {"m25p10"}, {"m25px64"},

/*

  • Entries that were used in DTs without "jedec,spi-nor" fallback and

  • should be kept for backward compatibility.
    */
    {"at25df321a"}, {"at25df641"}, {"at26df081a"},
    {"mx25l4005a"}, {"mx25l1606e"}, {"mx25l6405d"}, {"mx25l12805d"},
    {"mx25l25635e"},{"mx66l51235l"},
    {"n25q064"}, {"n25q128a11"}, {"n25q128a13"}, {"n25q512a"},
    {"s25fl256s1"}, {"s25fl512s"}, {"s25sl12801"}, {"s25fl008k"},
    {"s25fl064k"},
    {"sst25vf040b"},{"sst25vf016b"},{"sst25vf032b"},{"sst25wf040"},
    {"m25p40"}, {"m25p80"}, {"m25p16"}, {"m25p32"},
    {"m25p64"}, {"m25p128"},
    {"w25x80"}, {"w25x32"}, {"w25q32"}, {"w25q32dw"},
    {"w25q80bl"}, {"w25q128"}, {"w25q256"},

/ Flashes that can't be detected using JEDEC /
{"m25p05-nonjedec"}, {"m25p10-nonjedec"}, {"m25p20-nonjedec"},
{"m25p40-nonjedec"}, {"m25p80-nonjedec"}, {"m25p16-nonjedec"},
{"m25p32-nonjedec"}, {"m25p64-nonjedec"}, {"m25p128-nonjedec"},

/ Everspin MRAMs (non-JEDEC) /
{ "mr25h256" }, / 256 Kib, 40 MHz /
{ "mr25h10" }, / 1 Mib, 40 MHz /
{ "mr25h40" }, / 4 Mib, 40 MHz /

{ },
};
退出菜单配置并编译内核和dts
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j32
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- dtbs

第2个:
uboot 对SPI flash 的识别
本文目录

uboot 对SPI flash 的识别
flash信息在

drivers/mtd/spi/spi_flash_ids.c¶
const struct spi_flash_info spi_flash_ids[] = {
{"w25p80", INFO(0xef2014, 0x0, 64 * 1024, 16, 0) },
{"w25p16", INFO(0xef2015, 0x0, 64 * 1024, 32, 0) },
{"w25p32", INFO(0xef2016, 0x0, 64 * 1024, 64, 0) },
{"w25x40", INFO(0xef3013, 0x0, 64 * 1024, 8, SECT_4K) },
{"w25x16", INFO(0xef3015, 0x0, 64 * 1024, 32, SECT_4K) },
{"w25x32", INFO(0xef3016, 0x0, 64 * 1024, 64, SECT_4K) },
{"w25x64", INFO(0xef3017, 0x0, 64 * 1024, 128, SECT_4K) },
{"w25q80bl", INFO(0xef4014, 0x0, 64 * 1024, 16, RD_FULL | WR_QPP | SECT_4K) },
{"w25q16cl", INFO(0xef4015, 0x0, 64 * 1024, 32, RD_FULL | WR_QPP | SECT_4K) },
{"w25q32bv", INFO(0xef4016, 0x0, 64 * 1024, 64, RD_FULL | WR_QPP | SECT_4K) },
{"w25q64cv", INFO(0xef4017, 0x0, 64 * 1024, 128, RD_FULL | WR_QPP | SECT_4K) },
{"w25q128bv", INFO(0xef4018, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP | SECT_4K) },
{"w25q256", INFO(0xef4019, 0x0, 64 * 1024, 512, RD_FULL | WR_QPP | SECT_4K) },
{"w25q80bw", INFO(0xef5014, 0x0, 64 * 1024, 16, RD_FULL | WR_QPP | SECT_4K) },
{"w25q16dw", INFO(0xef6015, 0x0, 64 * 1024, 32, RD_FULL | WR_QPP | SECT_4K) },
{"w25q32dw", INFO(0xef6016, 0x0, 64 * 1024, 64, RD_FULL | WR_QPP | SECT_4K) },
{"w25q64dw", INFO(0xef6017, 0x0, 64 * 1024, 128, RD_FULL | WR_QPP | SECT_4K) },
{"w25q128fw", INFO(0xef6018, 0x0, 64 * 1024, 256, RD_FULL | WR_QPP | SECT_4K) },

#define INFO(_jedec_id, _ext_id, _sector_size, _n_sectors, _flags) \
.id = { \
((_jedec_id) >> 16) & 0xff, \
((_jedec_id) >> 8) & 0xff, \
(_jedec_id) & 0xff, \
((_ext_id) >> 8) & 0xff, \
(_ext_id) & 0xff, \
}, \
.id_len = (!(_jedec_id) ? 0 : (3 + ((_ext_id) ? 2 : 0))), \
.sector_size = (_sector_size), \
.n_sectors = (_n_sectors), \
.page_size = 256, \
.flags = (_flags),

struct spi_flash_info {
/ Device name ([MANUFLETTER][DEVTYPE][DENSITY][EXTRAINFO]) /
const char *name;

/*

  • This array stores the ID bytes.

  • The first three bytes are the JEDIC ID.

  • JEDEC ID zero means "no ID" (mostly older chips).
    */
    u8 id[SPI_FLASH_MAX_ID_LEN];
    u8 id_len;

/*

  • The size listed here is what works with SPINOR_OP_SE, which isn't

  • necessarily called a "sector" by the vendor.
    */
    u32 sector_size;
    u32 n_sectors;

u16 page_size;

u16 flags;

#define SECT_4K BIT(0) / CMD_ERASE_4K works uniformly /
#define E_FSR BIT(1) / use flag status register for /
#define SST_WR BIT(2) / use SST byte/word programming /
#define WR_QPP BIT(3) / use Quad Page Program /
#define RD_QUAD BIT(4) / use Quad Read /
#define RD_DUAL BIT(5) / use Dual Read /
#define RD_QUADIO BIT(6) / use Quad IO Read /
#define RD_DUALIO BIT(7) / use Dual IO Read /
#define RD_FULL (RD_QUAD | RD_DUAL | RD_QUADIO | RD_DUALIO)
};
Next Previous

#7 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-11 10:10:39

在v3s16M的flash上能跑起来么??买的用16M的flash。怎么配置编译呢???有没有办法将编译时间缩短呢???

#8 Re: 全志 SOC » V3s buildroot 一键生成打包生成32M spi flash 镜像, jffs2 文件系统, 默认启动 Qt 模拟时钟demo, » 2019-03-11 10:02:26

psst wrote:

晕哥,有v3s 16M的文件系统吗?

现在uboot zimage 都烧写正常,能启动,但是过一会就提示 [ 1.269366] Rebooting in 5 seconds..

应该是文件系统有问题。

我用buildroot2018.08.2,按照之前帖子说明配置好了,制作bin文件的步骤如下:

tar xvf ../../images/rootfs.tar -C ../../images 文件系统默认是压缩包,需要解压吧
mkfs.jffs2 -s 0x100 -e 0x10000 -p 0xAF0000 -d ../../images/rootfs/ -o jffs2.img

dd if=/dev/zero of=flashimg.bin bs=1M count=16
dd if=../uboot-v3s-spi-experimental/u-boot-sunxi-with-spl.bin of=flashimg.bin bs=1K conv=notrunc
dd if=arch/arm/boot/dts/sun8i-v3s-licheepi-zero.dtb of=flashimg.bin bs=1K seek=1024 conv=notrunc
dd if=arch/arm/boot/zImage of=flashimg.bin bs=1K seek=1088 conv=notrunc
dd if=jffs2.img of=flashimg.bin bs=1K seek=5184 conv=notrunc

哪些地方有错误吗?

哥们你这些配置弄成功了么?用16M的flash???

#9 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-15 18:00:41

晕哥 wrote:

290qcxlf wrote:

晕哥 wrote:

  1. 16M 可以装下 Qt了

  2. 我记得账号是root, 密码是 licheepi

  3. ov5647 要用全志官方的camdroid才行 https://whycan.cn/t_1780.html, 搞MIPI/DVP摄像头,视频编解码目前只能用官方的SDK.

主线Uboot + Bsp 内核是可以支持什么摄像头比较好啊???16M flash的系统可以同时开发摄像头+qt+wifi么?

主线Uboot + Bsp 内核 支持所有bsp支持的摄像头 ov271X, ov5647, ar0330 等,
16M flash的系统可以同时开发摄像头+qt+wifi, 一般的应用足够了,
实在不行还有32M.

OK,谢谢晕哥大神,那我用sd卡先熟悉编译系统,然后再编译16M的flash启动的linux开发ov5647摄像头+qt5+wifi(rtl8188cus或者esp的),采用主线Uboot + Bsp 内核的方式,就不用坑卓开发了

#10 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-15 15:35:09

晕哥 wrote:

290qcxlf wrote:

问题1:编译16M的flash linux不能用qt写界面是么??
问题2: Debian GNU/Linux 8 LicheePi ttyS0
licheepi login: root
——》按下回车登录没有反应???
问题3:编译支持ov5647摄像头的linux系统的开发环境和主要步骤是怎样的???编sd卡启动和flash启动的步骤是一样的么???

  1. 16M 可以装下 Qt了

  2. 我记得账号是root, 密码是 licheepi

  3. ov5647 要用全志官方的camdroid才行 https://whycan.cn/t_1780.html, 搞MIPI/DVP摄像头,视频编解码目前只能用官方的SDK.

主线Uboot + Bsp 内核是可以支持什么摄像头比较好啊???16M flash的系统可以同时开发摄像头+qt+wifi么?

#11 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-15 14:07:09

晕哥 wrote:

290qcxlf wrote:

Docker开发环境可以比较好地开发使用使用摄像头吗????

新手不建议用dock.

USB摄像头?
如果是USB摄像头熟悉了前面的流程,都不是问题。

OV5647的摄像头应该咋编译16Mflash启动的Linux系统呢????

#12 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-15 11:55:54

问题1:编译16M的flash linux不能用qt写界面是么??
问题2: Debian GNU/Linux 8 LicheePi ttyS0
licheepi login: root
——》按下回车登录没有反应???
问题3:编译支持ov5647摄像头的linux系统的开发环境和主要步骤是怎样的???编sd卡启动和flash启动的步骤是一样的么???

#13 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-13 16:46:13

晕哥 wrote:

290qcxlf wrote:

编译v3s从16M的flash启动的步骤是怎样的???

首先芯片内部BROM加载spl(boot0)到SRAM,
然后spl(boot0)初始化ddr并加载spi flash里面的u-boot到 ddr,
接着u-boot载入zImage,
zImage初始化各种硬件和根文件系统并启动到shell

那先编译uboot,然后编译内核,最后编译根文件系统是么???我用ubuntu14.04真机编译有问题么???

#14 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-13 16:42:01

晕哥 wrote:

290qcxlf wrote:

编译v3s从16M的flash启动的步骤是怎样的???

首先芯片内部BROM加载spl(boot0)到SRAM,
然后spl(boot0)初始化ddr并加载spi flash里面的u-boot到 ddr,
接着u-boot载入zImage,
zImage初始化各种硬件和根文件系统并启动到shell

OK,好的。

#15 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-13 16:40:40

Docker开发环境可以比较好地开发使用使用摄像头吗????

#16 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-13 16:36:31

编译v3s的linux系统从16M的flash启动的步骤是怎样的???

#17 Re: 全志 SOC » 荔枝派Zero V3s开发板入坑记录 (TF/SD卡启动)(主线Linux,主线u-boot) » 2018-11-08 17:55:23

进入到 Device Drivers ‣ SPI Flash Support,选择Enable Driver Model for SPI flash:
-星号- Enable Driver Model for SPI flash │ │
│ │ [ ] Support sandbox SPI flash device │ │
│ │ [星号] Legacy SPI Flash Interface support │ │
│ │ [ ] SPI flash Bank/Extended address register support │ │
│ │ [ ] Atmel SPI flash support │ │
│ │ [ ] EON SPI flash support │ │
│ │ [ ] GigaDevice SPI flash support │ │
│ │ [ ] Macronix SPI flash support │ │
│ │ [ ] Spansion SPI flash support │ │
│ │ [ ] STMicro SPI flash support │ │
│ │ [ ] SST SPI flash support │ │
│ │ [星号] Winbond SPI flash support │ │
│ │ [星号] Use small 4096 B erase sectors │ │
│ │ [ ] AT45xxx DataFlash support │ │
│ │ [ ] SPI Flash MTD support

Save 以后直接退出是么????

然后遇到这个问题:
cmd/bootm.c: In function ‘do_imls_nor’:
cmd/bootm.c:327:7: error: ‘CONFIG_SYS_MAX_FLASH_BANKS’ undeclared (first use in this function)
i < CONFIG_SYS_MAX_FLASH_BANKS; ++i, ++info) {
^
cmd/bootm.c:327:7: note: each undeclared identifier is reported only once for each function it appears in
scripts/Makefile.build:280: recipe for target 'cmd/bootm.o' failed

页脚

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

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


东莞哇酷科技有限公司开发