芯路恒电子技术论坛

 找回密码
 立即注册
热搜: 合集
查看: 6517|回复: 1

【AC590】Nand分区和设备树修改

[复制链接]
  • TA的每日心情
    慵懒
    2021-2-24 10:16
  • 428

    主题

    811

    帖子

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    16107
    QQ
    发表于 2020-5-8 15:58:02 | 显示全部楼层 |阅读模式

    设备树修改Nand和分区

    要点1,要适配内核,5.0的内核,需要修改nand控制器的兼容属性为
    1. compatible =  "altr,socfpga-denali-nand";
    复制代码


    要点2,添加分区信息


    1.      partition@reserved {
    2.                 label = "reserved";
    3.                 reg = <0x0 0x300000>;
    4.      };
    5.   
    6.      partition@dtb {
    7.                 label = "dtb";
    8.                 reg = <0x300000 0x100000>;
    9.      };
    10.   
    11.      partition@kernel {
    12.                 label = "kernel";
    13.                 reg = <0x400000 0x600000>;
    14.      };
    15.   
    16.      partition@rbf {
    17.                 label = "rbf";
    18.                 reg = <0xA00000 0x600000>;
    19.      };
    20.   
    21.      partition@rootfs {
    22.                 label = "rootfs";
    23.                 reg = <0x1000000  0x1F000000>;
    24.      };
    复制代码


    修改好的设备树为:


    1. hps_0_nand0:  flash@0xff900000{

    2.      compatible = "altr,socfpga-denali-nand";
    3.      reg = <0xff900000 0x00010000>,
    4.             <0xffb80000 0x00010000>;
    5.      reg-names = "nand_data", "denali_reg";   /* embeddedsw.dts.params.reg-names type  STRING */
    6.      interrupt-parent = <&hps_0_arm_gic_0>;
    7.      interrupts = <0 144 4>;
    8.      clocks = <&nand_clk>;
    9.      #address-cells = <1>;              /*  embeddedsw.dts.params.#address-cells type NUMBER */
    10.      #size-cells = <1>;         /*  embeddedsw.dts.params.#size-cells type NUMBER */
    11.      status = "okay";          /*  embeddedsw.dts.params.status type STRING */
    12.      bank-width = <2>;
    13.      device-width = <1>;
    14.   
    15.      partition@reserved {
    16.                 label = "reserved";
    17.                 reg = <0x0 0x300000>;
    18.      };
    19.   
    20.      partition@dtb {
    21.                 label = "dtb";
    22.                 reg = <0x300000 0x100000>;
    23.      };
    24.   
    25.      partition@kernel {
    26.                 label = "kernel";
    27.                 reg = <0x400000 0x600000>;
    28.      };
    29.   
    30.      partition@rbf {
    31.                 label = "rbf";
    32.                 reg = <0xA00000 0x600000>;
    33.      };
    34.   
    35.      partition@rootfs {
    36.                 label = "rootfs";
    37.                 reg = <0x1000000  0x1F000000>;
    38.      };

    39. }; //end flash@0xff900000  (hps_0_nand0)
    复制代码


    如果不修改,报错信息大概如下,意思是说挂不上文件系统,原因是因为nand挂不上。
    nand分区错误.png

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2021-2-24 10:16
  • 428

    主题

    811

    帖子

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    16107
    QQ
     楼主| 发表于 2023-4-20 18:31:14 | 显示全部楼层
    注意,从网站复制的内容会被加入很多空格换行,记得全部删除,尤其是compatible =  "altr,socfpga-denali-nand";
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|小黑屋|Archiver|芯路恒电子技术论坛 |鄂ICP备2021003648号

    GMT+8, 2024-11-21 18:19 , Processed in 0.112100 second(s), 34 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

    快速回复 返回顶部 返回列表