sanmaoljh

sanmaoljh

0个粉丝

32

问答

0

专栏

0

资料

sanmaoljh  发布于  2018-03-09 18:59:25
采纳率 0%
32个问答
3461

hi3536平台下uboot如何访问2片spi nand

 
本帖最后由 sanmaoljh 于 2018-3-9 19:08 编辑

环境:hi3536 +

问题描述:hi3536平台下uboot如何访问2片spi nand,uboot默认是从cs1的spi nand启动,想在uboot的cs0上的spi nand备份大约200M左右的文件系统镜像,
                 从原理图看出,uboot只能2选1访问其中一个nand,现在默认是可以访问cs1的nand,如何可以访问cs0的spi nand,进行nand read 或者nand write操                  作, 想在uboot中,使用nand read或者nand write操作nand1(cs1)或者nand0(cs0),怎么修改代码?


现在修改这个函数
static void hisnfc100_select_chip(struct mtd_info *mtd, int chipselect)
{
        struct nand_chip *chip = mtd->priv;
        struct hisnfc_host *host = chip->priv;

        if (chipselect < 0)
                return;

        if (chipselect > CONFIG_HISNFC100_MAX_CHIP)
                DBG_BUG("invalid chipselect: %d\n", chipselect);

        host->cmd_option.chipselect = chipselect + 1;  可以指定nand1或者nand0,但是我需要动态修改参数,

        switch (chip->state) {
        case FL_ERASING:
                host->cmd_option.last_cmd = NAND_CMD_ERASE1;
                break;

        case FL_WRITING:
                host->cmd_option.last_cmd = NAND_CMD_PAGEPROG;
                break;

        default:
                break;
        }
}

可以指定nand1或者nand0,但是我需要动态修改参数,比如nand read 片选芯片0或者1 xxx  --->hisnfc100_select_chip(mtd, 0或者1)来选中需要操作的芯片,应该如何修改,谢谢!




我来回答
回答2个
时间排序
认可量排序

sanmaoljh

0个粉丝

32

问答

0

专栏

0

资料

sanmaoljh 2018-03-19 11:17:54
认可0
自己顶一下,怎么没有朋友遇到过相同情况呢?

qn1514448727

0个粉丝

11

问答

0

专栏

0

资料

qn1514448727 2018-03-21 14:20:28
认可0
很高深的问题!
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区