比如国产gd兆易的spi nand flash
离线
比如国产gd兆易的spi nand flash
主线内核支不支持不清楚,
全志官方SDK里面有支持。
离线
didi 说:比如国产gd兆易的spi nand flash
主线内核支不支持不清楚,
全志官方SDK里面有支持。
酱紫,不如用emmc了, 但是emmc价格太贵,nand flash又要处理坏块, spi nor又太慢, 蛋疼。。。
离线
主线linux 5.0以上就支持 spi nand了,只是 uboot 有点麻烦。
离线
uboot需要SPL魔改,改完还是可以的
离线
uboot需要SPL魔改,改完还是可以的
请问有修改方法吗?
最近编辑记录 ffplay (2019-10-30 18:25:18)
离线
晕哥提到过,spl分页写对就行,改改spi flash驱动就可以了
离线
晕哥提到过,spl分页写对就行,改改spi flash驱动就可以了
然后在 u-boot 加载 zImage 和 dtb 那个地方需要修改吗?如果需要, 应该怎么修改呢?
离线
shaoxi2010 说:晕哥提到过,spl分页写对就行,改改spi flash驱动就可以了
然后在 u-boot 加载 zImage 和 dtb 那个地方需要修改吗?如果需要, 应该怎么修改呢?
我不确定你用的那个版本的uboot,在2019.07月版本,内部的sunxi-spi驱动,其在V3s下时钟源使用源为外部24M晶振,所有你最高可以设置到24M,需要修改时钟源到外设pll上,就可以设置到100M模式,然后全志的寄存器可以用Dwords访问,默认是bytes模式,效率比较低,完成SPI驱动修改后,在改下uboot的设备树就ok了,应该很清楚了吧。继续魔改可以启动SPI双线摸索,实测DMA速度还不如CPU,就没什么好改的了。单线优化的好uboot还是有4M/s左右的速度的。
离线
@shaoxi2010 感谢解答, 现在我的情况是, 使用spi nand, spi & u-boot 都跑起来了, 但是不知道如何读取 spi nand 上的数据, 比如zImage & dtb, 这里需要怎么修改 u-boot 代码呢?
离线
@shaoxi2010 感谢解答, 现在我的情况是, 使用spi nand, spi & u-boot 都跑起来了, 但是不知道如何读取 spi nand 上的数据, 比如zImage & dtb, 这里需要怎么修改 u-boot 代码呢?
首先确保你的uboot在2018.11版本之后,然后开启uboot内选项
CONFIG_CMD_MTD=y
CONFIG_MTD=y
CONFIG_MTD_SPI_NAND=y
CONFIG_SPI=y
CONFIG_DM_SPI=y
CONFIG_SPI_MEM=y
CONFIG_SPI_SUNXI=y
修改设备树
&spi0 {
pinctrl-0 = <&spi0_pins>;
pinctrl-names = "default";
status = "okay";
flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "spi-nand";
reg = <0>;
spi-max-frequency = <50000000>;
}
最后在使用uboot下的MTD命令就好了,不是NAND命令
mtd erase spi-nand0 就可以擦掉全部内容了
mtd read spi-nand0 0x81000000 0x1c0000 0x0400000
PS:你还要去确认SPINAND驱动支持你的芯片不,不支持还要继续魔改
离线
感谢楼上的兄弟, 晚点就试一试 ^_^
离线
真好, 新版的SPI NAND都直接支持SPI NAND了。
离线
板子马上到,我也试试看
离线
感谢楼上的兄弟, 晚点就试一试 ^_^
兄弟,你最终成功了没,贴个教程上来~
离线
感谢楼上的兄弟, 晚点就试一试 ^_^
兄弟搞得怎么样了? 有没有成功?
离线
感谢楼上的兄弟, 晚点就试一试 ^_^
大佬测试的怎么样了
离线
可以参考一些单片机上面对NAND FLASH的操作。比如ThreadX里面的模块。相当稳
离线
大佬们 v3s + spi nand flash的uboot如何配置呀 有链接教程嘛
离线
FLASH烧录了启动不了呢
离线