This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/66AK2E05:如何为具有1GB 内存的定制板更改 Linux 器件树。

Guru**** 2540720 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/603978/linux-66ak2e05-how-to-change-linux-device-tree-for-custom-board-with-1gb-of-memory

器件型号:66AK2E05

工具/软件:Linux

大家好!

我有一个基于 K2E EVM 的定制板、但上面只有1GB。

我在 u-boot 中更改存储器映射和设置、它是 startin 和 boot Linux、但不知道如何对 Linux 器件树执行相同的操作。

DTS 中的 RESERVE_MEMORY 和存储器节点不正确、无法启动电路板。

请给我一些提示。

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Vladimir、

    您需要更改的文件是 k2e-evm-cmem.dtsi、当前具有以下存储器映射:
    /{
    保留存储器{

    cmem_block_mem_0:cmem_block_mem@829000000{
    REG =<0x00000008 0x29000000 0x00000000 0x17000000>;
    无地图;
    状态="正常";
    };

    cmem_block_mem_1:cmem_block_mem@00c100000{
    REG =<0x00000000 0x0c100000 0x00000000 0x00480000>;
    无地图;
    状态="正常";
    };

    cmem_block_mem_2:cmem_block_mem@822000000{
    REG =<0x00000008 0x22000000 0x00000000 0x07000000>;
    无地图;
    状态="正常";
    };
    };

    cmem{
    兼容="ti、cmem";
    #address-cells =<1>;
    #size-cells =<0>;

    #pool-size-cells =<2>;

    状态="正常";

    cmem_block_0:cmem_block@0{
    reg =<0>;
    memory-region =<&cmem_block_mem_0>;
    cmem-buf-Pools =<1 0x00000000 0x17000000>;
    };

    cmem_block_1:cmem_block@1{
    reg =<1>;
    memory-region =<&cmem_block_mem_1>;
    };

    cmem_block_2:cmem_block@2{
    reg =<2>;
    memory-region =<&cmem_block_mem_2>;
    };
    };

    };

    &DSP_common_mpm_area{
    REG =<0x00000008 0x20000000 0x00000000 0x02000000>;
    };
    mpm_mem{(&M)
    reg =<0xa0000000 0x02000000>;
    };

    您需要重新评估存储器偏移和起始地址。

    您还在 keystone-k2e.dtsi &中具有保留存储器节点
    内存{
    REG =<0x00000000 0x8000000000 0x00000000 0x40000000>;
    };
    Keyston.dtsi 中的节点

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Yordan!
    感谢您的回答!
    您能不能给出一些注释、说明您的意思是"您需要重新评估存储器偏移和起始地址"。 ?
    所有修改只能在*。dts 和*。dtsi 文件中发生?
    我使用的是 ti-processor-sdk-linux-k2e-evm-03.03.00.04和所有相关的 k2e *。dts 文件在您的示例中并不相似。

    以下是 ti-psdk/board-support/linux 目录中 git diff 命令的输出

    diff --git a/arch/arm/boot/dts/k2e-evm-cmem.dtsi b/arch/arm/boot/dts/k2e-evm-cmem.dtsi
    索引 c233768..a83e259 100644
    -- a/arch/arm/boot/dts/k2e-evm-cmem.dtsi
    ++ b/arch/arm/boot/dts/k2e-evm-cmem.dtsi
    @@-1、7 + 1、7 @@
    /{
    保留存储器{
    cmem_block_mem_0:cmem_block_mem@830000000{
    - reg =<0x00000008 0x30000000 0x00000000 0x18000000>;
    + reg =<0x00000000 0xB4000000 0x00000000 0x2000000>;
    无地图;
    状态="正常";
    };
    @@-19、7 + 19、7 @@
    cmem_block_0:cmem_block@0{
    reg =<0>;
    memory-region =<&cmem_block_mem_0>;
    - cmem-buf-pools=<1 0x00000000 0x18000000>;
    + cmem-buf-Pools =<1 0x00000000 0x1000000>;
    };

    cmem_block_1:cmem_block@1{
    diff --git a/arch/arm/boot/dts/keystone-k2e-evm.dts b/arch/arm/boot/dts/keystone-k2e-evm.dts
    索引44389ac.a75d2d5 100644
    --- aarch/arm/boot/dts/keystone-k2e-evm.dts
    ++ b/arch/arm/boot/dts/keystone-k2e-evm.dts
    @@-23、13 +23、13 @@

    DSP_common_CMA_pool:DSP_common_CMA_pool{
    兼容="共享 dma-pool ";
    - reg =<0x00000008 0x1f800000 0x00000000 0x800000>;
    + reg =<0x00000000 0xB0000000 0x00000000 0x02000000>;
    可重复使用;
    };

    DSP_common_mpm_area:DSP_reserved_mpm_area{
    兼容="共享 dma-pool ";
    - reg =<0x00000008 0x20000000 0x00000000 0x10000000>;
    + reg =<0x00000000 0xB2000000 0x00000000 0x2000000>;
    无地图;
    状态="正常";
    };
    @@-179、13 +179、13 @@
    MDIO{(&M)
    状态="ok";
    ethphy0:以太网 phy@0{
    -兼容="Marvell、88E1514 "、"Marvell、88E1510"、"Ethe-phy-IEEE802.3-C22";
    - reg =<0>;
    +兼容="Marvell、88E1111"、"Ethe-phy-IEEE802.3-C22";
    + reg =<1>;
    };

    ethphy1:以太网 phy@1{
    -兼容="Marvell、88E1514 "、"Marvell、88E1510"、"Ethe-phy-IEEE802.3-C22";
    - reg =<1>;
    +兼容="Marvell、88E1111"、"Ethe-phy-IEEE802.3-C22";
    + reg =<2>;
    };
    };

    我的引导日志如下:

    U-Boot SPL 2017.07-RC2-脏 污(2017年6月20日- 16:20:57)
    尝试从 SPI 引导


    U-Boot 2017.07-RC2-脏 污(2017年6月20日- 16:20:57 +0300)

    CPU:66AK2Ex SR1.0
    型号:德州仪器 Keystone 2 Edison EVM
    DRAM:从静态参数配置 DDR3A。
    DDR3速度1600
    DRAM:1 GiB
    1 GiB
    SF:检测到 n25q256a、页面大小为256字节、擦除大小为4 KiB、总共32 MIB
    net:eth0:netcp@24000000
    警告:netcp@slave-1 (eth1)使用随机 MAC 地址- 7a:c1:39:71:ff:e8
    ,eth1:netcp@slave-1.
    警告:netcp@slave-2 (eth2)使用随机 MAC 地址- d6:86:0f:8b:5e:D3
    ,eth2:netcp@slave-2
    警告:netcp@slave-3 (eth3)使用随机 MAC 地址- 66:aa:73:8f:2a:90
    ,eth3:netcp@slave-3
    警告:netcp@slave-4 (eth4)使用随机 MAC 地址- 76:B2:bc:D9:56:C4
    ,eth4:netcp@slave-4
    警告:netcp@slave-5 (eth5)使用随机 MAC 地址- 02:1b:16:46:39:3b
    ,eth5:netcp@slave-5
    警告:netcp@slave-6 (eth6)使用随机 MAC 地址- fe:E3:82:19:67:1D
    ,eth6:netcp@slave-6
    警告:netcp@slave-7 (eth7)使用随机 MAC 地址- ce:fa:88:00:ca:99
    ,eth7:netcp@slave-7
    按任意键停止自动引导:0

    Netcp@24000000等待 SGMII 自动协商完成。 完成
    netcp@24000000等待 PHY 自动协商完成。 完成
    使用 netcp@24000000器件
    来自服务器192.168.0.102的 TFTP;我们的 IP 地址为192.168.0.241
    文件名'./K2-FW-initrd.cpio.gz'。
    加载地址:0x88080000
    正在加载:##########
    11.7 KiB/s
    完成
    传输的字节= 64925 (fd9d 十六进制)

    Netcp@24000000等待 SGMII 自动协商完成。 完成
    使用 netcp@24000000器件
    来自服务器192.168.0.102的 TFTP;我们的 IP 地址为192.168.0.241
    文件名"./keystone-k2e-evm.dtb"。
    加载地址:0x88000000
    正在加载:######
    2.8 MIB/s
    完成
    传输的字节= 44408 (ad78十六进制)

    Netcp@24000000等待 SGMII 自动协商完成。 完成
    使用 netcp@24000000器件
    来自服务器192.168.0.102的 TFTP;我们的 IP 地址为192.168.0.241
    文件名'./skern-k2e.bin'。
    加载地址:0x87000000
    正在加载:########
    2.6 MIB/s
    完成
    传输的字节= 32832 (8040十六进制)

    Netcp@24000000等待 SGMII 自动协商完成。 完成
    使用 netcp@24000000器件
    来自服务器192.168.0.102的 TFTP;我们的 IP 地址为192.168.0.241
    文件名'./zImage'。
    加载地址:0x82000000
    正在加载:############################################################################
    ####################################################
    ####################################################
    ####################################################
    ####################################################
    ####################################################
    ####################################################
    ####################################################
    ####################################################
    ####################################################
    ############################
    3.2 MIB/s
    完成
    传输的字节= 3482744 (352478十六进制)
    K2_BM_15。 07年6月20日发布的 SoC:k2e 内置:15:33:24

    ##已安装显示器@ 0xc1f0000、freq [20833333333333]、状态0
    ###展开的设备树 blob、88000000
    使用0x88000000处的 FDT blob 进行引导
    正在将 Ramdisk 加载到8fff0000,结束8ffd9d... 好的
    正在将设备树加载到8ffe2000,结束8ffefd77... 好的

    正在启动内核...

    [0.000000]在物理 CPU 0x0上引导 Linux
    [0.000000]正在初始化 cgroup Subsys cpuset
    [0.000000]正在初始化 cgroup 子系统 CPU
    [0.000000]正在初始化 cgroup Subsys cpuacct
    [0.000000] Linux 版本4.4.4.41-gf9f6f0db2d (Karak@Karak-u64)(gcc 版本5.3.1 20160113 (Linaro GCC 5.3-2016.02))#1 SMP 抢先于2017年6月20日15:35:54 MSK
    [0.000000] CPU:ARMv7处理器[412fc0f4]修订版4 (ARMv7)、CR=30c5387d
    [0.000000] CPU:PIPT/VIPT 非混叠数据高速缓存、PIPT 指令高速缓存
    [0.000000]机器模型:德州仪器 Keystone 2 Edison EVM
    [0.000000]保留存储器:创建了0x00000000b0000000、大小为32 mib 的 CMA 存储器池
    [0.000000]保留存储器:初始化节点 DSP_common_CMA_pool、兼容 id shared-dma-pool
    [0.000000]保留存储器:已创建 DMA 存储器池、地址为0x00000000b2000000、大小为32 mib
    [0.000000]保留存储器:已初始化节点 DSP_RESERVE_mpm_area、兼容 id shared-dma-pool
    [0.000000] CMA:保留0x00000000be800000处的24 MIB
    [0.000000]正在强制为 SMP 执行写分配高速缓存策略
    [0.000000]内存策略:数据高速缓存 writealloc
    [0.000000] psci:从 DT 探测导管方法。
    [0.000000] psci:使用 DT 中的 PSCI v0.1函数 ID
    [0.000000] PERCPU:嵌入式11页/CPU @ef6a5000 s14848 r8192 d22016 u45056
    [0.000000]在区域顺序和移动分组中构建了1个区域列表。 总页数:244032
    [0.000000]内核命令行:console=ttyS0、115200n8 rootwait=1 mtdparts=sp0.0:1m (u-boot-spl) ro、-(MISC) rootfstype=NFS root=/dev/nfs rw nfsroot=192.168.0.102:/home/karak/targetfs-swh101v、v3、TCP、rsize=4096、wsize=4096 ip=dhcp:0
    [0.000000] PID 哈希表条目:4096 (顺序:2、16384字节)
    [0.000000]条目高速缓存散列表条目:131072 (顺序:7、524288字节)
    [0.000000] inode 高速缓存散列表条目:65536 (顺序:6、262144字节)
    [0.000000]内存:906072K/983040K 可用(6579K 内核代码、255K rwdata、2272K rodata、288K init、296K BSS、 19624K 保留、57344K CMA 保留、139264K HIGHMEM)
    [0.000000]虚拟内核内存布局:
    [0.000000]矢量:0xff0000-0xff1000 (4KB)
    [0.000000] fixmap:0xc00000 - 0xc00000 (3072 KB)
    [0.000000] vmalloc:0xf0800000 - 0x800000 (240 MB)
    [0.000000]低内存:0xC0000000 - 0xf0000000 (768 MB)
    [0.000000] pkmap:bbfe00000 - 0xC0000000 (2 MB)
    [0.000000]模块:bbf000000 - bbbfe00000 (14 MB)
    [0.000000].text:0xc0008000 - 0xc08ad044 (8853KB)
    [0.000000].init:0xc08ae000 - 0xc08f6000 (288KB)
    [0.000000].data:0xc08f6000 - 0xc0935c50 (256KB)
    [0.000000].bss:0xc0937000 - 0xc09810c4 (297KB)
    [0.000000] slub:HWalign=64、order=0-3、MinObjects=0、CPU=4、Nodes=1
    [0.000000]可抢占的分层 RCU 实现。
    [0.000000]叶扇出的生成时间调整为32。
    [0.000000] RCU 将 CPU 从 NR_CPU=8限制为 nr_CPU_IDs=4。
    [0.000000] RCU:调整 RCU_Fanout_leaf = 32、nr_cpu_ids=4的几何结构
    [0.000000] NR_IRQ:16 nr_IRQ:16 16.
    [0.000000] GIC:使用分离 EOI/Deactivate 模式
    [0.000000]构建了以208.33MHz (phys)运行的 cp15计时器。
    [0.000000]时钟源:arch_sys_counter:mask:0xffffffffffffffffff max_cycles:0x300c4cdf1c、max_idle_ns:440795202901 ns
    [0.000003] sched_clock:208MHz 时为56位、分辨率为4ns、每4398046511101ns 换行一次
    [0.000012]切换到基于计时器的延迟环路、分辨率为4ns
    [0.000149] KeyStone 计时器时钟@2083333 Hz
    [0.000392]控制台:彩色虚拟设备80x30
    [0.000411]校准延迟环路(跳过)、使用计时器频率计算的值。 416.66茂物剪(lpj=2083333)
    [0.000422] pid_max:默认值:32768最小值:301
    [0.000505]安装高速缓存散列表条目:2048 (顺序:1、8192字节)
    [0.000512] mountpoint-cache 哈希表条目:2048 (顺序:1、8192字节)
    [0.000977]正在初始化 cgroup Subsys IO
    [0.000991]正在初始化 cgroup Subsys 内存
    [0.001012]正在初始化 cgroup 子系统设备
    [0.001022]初始化 cgroup Subsys 冷冻柜
    [0.001033]正在初始化 cgroup 子系统 perf_event
    [0.001042]正在初始化 cgroup 子系统 PID
    [0.001065] CPU:测试写入缓冲区一致性:好的
    [0.001255]/cpus/cpu@0缺少时钟频率属性
    [0.001281]/cpus/cpu@1缺少时钟频率属性
    [0.001306]/cpus/cpu@2缺少时钟频率属性
    [0.001332]/cpus/cpu@3缺少时钟频率属性
    [0.001341] CPU0:线程-1、CPU 0、插座0、mpidr 8000000
    [0.001371]为0x800082c0 - 0x800083f8设置静态标识映射
    [0.084730] CPU1:线程-1、CPU 1、插座0、mpidr 80000001
    [0.114777] CPU2:线程-1、CPU 2、插座0、mpidr 800002
    [0.144818] CPU3:线程-1、CPU 3、插座0、mpidr 800003.
    [0.144907]带来4个 CPU
    [0.144923] SMP:总共激活4个处理器(1666.66 BogoMips)。
    [0.144929] CPU:所有 CPU 均在 HYP 模式下启动。
    [0.144933] CPU:提供虚拟化扩展。
    [0.145325] devtmpfs:已初始化
    [0.155529] VFP 支持 v0.3:实施者41架构4第30部分变体 f rev 0
    [0.155776]时钟源:Jiffies:MASK:0xFFFFFFFF max_cycles:0xFFFFFFFF、max_idle_ns:19112604462750000 ns
    [0.156877] pinctrl 内核:已初始化 pinctrl 子系统
    [0.157488] NET:注册协议系列16.
    [0.158239] DMA:预分配256 KiB 池用于原子相干分配
    [0.180145]空闲:使用调速器梯
    [0.210165]空闲:使用调速器菜单
    [0.215967] IRQ:找不到/soc/keystone_irq@26202a0的 IRQ 域!
    [0.222749]没有 ATAG?
    [0.222772]硬件断点:找到5个(+1保留)断点和4个观察点寄存器。
    [0.222779]硬件断点:最大观察点大小为8字节。
    [0.254083]介质:Linux 介质接口:v0.10
    [0.254124] Linux 视频捕捉接口:v2.00
    [0.254155] pps_core:LinuxPPS API 版本。 1已注册
    [0.254161] pps_core:软件版本 5.3.6 -版权所有2005-2007 Rodolfo Giometti
    [0.254180] PTP 时钟支持已注册
    [0.254216] EDAC MC:版本:3.0.0
    [0.254478] ks2_MC_DDR3_ECC 21010000.EDAC:ECC 未启用、禁用 EDAC
    [0.254804]高级 Linux 声音架构驱动程序已初始化。
    [0.255468]时钟源:切换到时钟源 ARCH_SYS_COUNTER
    [0.263267] NET:注册协议系列2.
    [0.263721] TCP 建立哈希表条目:8192 (顺序:3、32768字节)
    [0.263772] TCP 绑定哈希表条目:8192 (顺序:4、65536字节)
    [0.263872] TCP:配置哈希表(建立8192 BIND 8192)
    [0.263905] UDP 哈希表条目:512 (顺序:2、16384字节)
    [0.263930] UP-Lite 哈希表条目:512 (顺序:2、16384字节)
    [0.264046] NET:注册协议系列1.
    [0.264222] RPC:注册后命名的 UNIX 套接字传输模块。
    [0.264230] RPC:注册的 UDP 传输模块。
    [0.264235] RPC:注册的 TCP 传输模块。
    [0.264240] RPC:注册的 TCP NFSv4.1反向通道传输模块。
    [0.264400]正在解压缩 initramfs...
    [0.268357]释放 initrd 内存:64K (cfff0000-d0000000)
    [0.268508]硬件性能事件:通过 armv7_cortex_a15 PMU 驱动器启用、提供7个计数器
    [0.269466] futex 散列表条目:1024 (顺序:4、65536字节)
    [0.275789] squashfs:版本4.0 (2009/01/31) Phillip Lougher
    [0.276328] NFS:注册 id_resolver 密钥类型
    [0.276346]注册了密钥类型 id_resolver
    [0.276352]注册密钥类型 id_legacy
    [0.276409] NTFS:驱动程序2.1.32 [Flags:R/O]。
    [0.277489]退回:池大小:64页
    [0.277613]块层 SCSI 通用(BSG)驱动程序0.4版已加载(主要247)
    [0.277625]已注册 IO 调度程序 NOP
    [0.277634]已登记 IO 调度程序的截止日期
    [0.277661]注册的 IO 调度程序 cfq (默认值)
    [0.277793] keyston_IRQ SoC:keyston_IRQ@26202a0:irqchip registered、nr_IRQ 28
    [0.278103] ti、keystone-SerDes 2326.phy:init FW ks2_PCIe_SerDes.bin:版本3.3.0.2c
    [0.278944] ti、keystone-SerDes 232a000.phy:init FW ks2_Gbe_SerDes.bin:版本3.3.0.2c
    [0.281208] PCI 主机桥/soc/pcie@21020000范围:
    [0.281217]未找到/soc/pcie@21020000的总线范围、使用[bus 00-ff]
    [0.281234] MEM 0x60000000...0x6ffffffff -> 0x60000000
    [0.295647] KeyStone-PCIe 21021000.PCIe:PCI 主机桥至总线0000:00
    [0.295658] PCI_BUS 0000:00:根总线资源[bus 00-ff]
    [0.29566] PCI_BUS 0000:00:根总线资源[mem 0x60000000-0x6fffffff]
    [0.295928] PCI:总线0:禁用快速背对背传输
    [0.296029] PCI:总线1:启用快速背对背传输
    [0.296084] PCI 0000:00:00.0:PCI 桥至[bus 01]
    [0.296267] pcieport 0000:00:00.0:通过 PCIe PME 中断向 PME 发送信号
    [0.297272] keystone-navigator-qmss soc:qmss@2a40000:qmgr 开始队列0、队列数8192
    [0.297395] keystone-navigator-qmss soc:qmss@2a40000:添加了 qmgr 开始队列0、队列数量8192、reg_peek f0b40000、reg_status f08fc000、reg_config f08fe000、reg_region f0b02000、 reg_push f0b80000、reg_pop f0bc0000
    [0.297679] keystone-navigator-qmss soc:qmss@2a40000:为 pdsp0下载的固件文件 ks2_qmss_pdsp_acc48.bin
    [0.297748] keystone-navigator-qmss soc:qmss@2a40000:为 pdsp3下载的固件文件 ks2_qmss_pdsp_qos.bin
    [0.297819] keystone-navigator-qmss soc:qmss@2a40000:为 pdsp7下载的固件文件 ks2_qmss_pdsp_qos.bin
    [0.298789] keystone-navigator-qmss soc:qmss@2a40000:QoS:计划端口@8096、丢弃通道@8000
    [0.300360] keystone-navigator-qmss soc:qmss@2a40000:QoS:计划端口@6496、丢弃通道@6400
    [0.302440] keystone-navigator-qmss soc:qmss@2a40000:QoS 版本0x200010b、魔术有效
    [0.302978] keystone-navigator-qmss soc:qmss@2a40000:QoS 版本0x200010b、魔术有效
    [0.304039] KeyStone 导航器 DMA SoC:knav_DMA@0:DMA DMA_GbE 寄存149个逻辑通道、流128、TX 通道数:21、Rx 通道数:91
    [0.304161] KeyStone 导航器 DMA SoC:knav_DMA@0:DMA DMA_xgbe 寄存48个逻辑通道、流32、TX 通道:16、Rx 通道:16
    [0.351857]串行:8250/16550驱动程序,10个端口,禁用 IRQ 共享
    [0.354468]控制台[ttyS0]已禁用
    [0.354512] 2530c00.serial: tmio 0x2530c00处的 ttyS0 (IRQ = 26、base_baud = 13020833)是16550A
    [1.271611]控制台[ttyS0]已启用
    [1.275818] 2531000.serial: tmio 0x2531000处的 ttyS1 (IRQ = 27、base_baud = 13020833)是16550A
    [1.285110][DRM]已初始化 DRM 1.1.0 20060810
    [1.295843] loop:模块已加载
    [1.299250] at24 0-0050:131072字节24c1024 EEPROM、可写、1字节/写入
    [1.307615] SPI_DaVinci 21000400.SPI:不支持 DMA (-19)
    [1.314201] m25p80 spi32766.0:无法识别的 JEDEC ID 字节:20、bb、19
    [1.320749] SPI_DaVinci 21000400.SPI:控制器位于0xf0b66400
    [1.326771] SPI_DaVinci 21000600.SPI:不支持 DMA (-19)
    [1.333090] SPI_DaVinci 21000600.SPI:控制器位于0xf0b68600
    [1.339109] SPI_DaVinci 21000800.SPI:不支持 DMA (-19)
    [1.345428] SPI_DaVinci 21000800.SPI:控制器、位于0xf0b6a800
    [1.351976] libphy:固定 MDIO 总线:探测
    [1.405491] DaVinci_MDIO 24200f00.MDIO:达芬奇 MDIO 修订版1.7
    [1.411577] libphy: 24200f00.mdio:探测
    [1.416251] DaVinci_MDIO 24200f00.MDIO:PHY[1]:器件24200f00.MDIO:01、驱动程序 Marvell 88E1111
    [1.424942] DaVinci_MDIO 24200f00.MDIO:PHY[2]:器件24200f00.MDIO:02、驱动程序 Marvell 88E1111
    [1.434229] ti、keystone-SerDes 232a000.phy:请求的 PHY 被禁用
    [3.452112]串行器/解串器 PLL 未锁定
    [3.967527] ti、keystone-SerDes 232a000.phy:请求的 PHY 被禁用
    [5.985492]串行器/解串器 PLL 未锁定
    [8.556983] netcp-1.0 2620110.netcp: CPT:溢出检查周期300
    [8.563334] netcp-1.0 2620110.netcp: CPTS:Ref_clk_freq:625000000 calc_mult:3435973837 calc_shift:31错误:0 nsec/秒
    [8.573955] netcp-1.0 2620110.netcp:初始化 cpsw ale 版本1.4
    [8.580403] netcp-1.0 2620110.netcp: ALE 表大小8192
    [ 8.587200] netcp-1.0 2620110.netcp:模块(netcp-xgbe)不适用于器件
    [8.594168] netcp-1.0 2620110.netcp:模块(netcp-PA)不用于器件
    [8.60101010] netcp-1.0 2620110.netcp:无 PA dt 绑定中的 IP-LUT 范围数组
    [8.610182] netcp-1.0 2620110.netcp:、对于 pdsp 0、使用 PA FW 版本03.00.02.01:0x03000201
    [8.618496] netcp-1.0 2620110.netcp:、针对 pdsp 1使用 PA FW 版本03.00.02.01:0x03000201
    [8.626768] netcp-1.0 2620110.netcp:、对于 pdsp 2、使用 PA FW 版本03.00.02.01:0x03000201
    [8.635023] netcp-1.0 2620110.netcp:、对于 pdsp 3、使用 PA FW 版本03.00.02.01:0x03000201
    [8.643295] netcp-1.0 2620110.netcp:、对于 pdsp 4、使用 PA FW 版本03.00.02.01:0x03000201
    [8.651609] netcp-1.0 2620110.netcp:、使用适用于 pdsp 5的 PA FW 版本03.00.02.01:0x03000201
    [8.659881] netcp-1.0 2620110.netcp:、对于 pdsp 6、使用 PA FW 版本03.00.02.01:0x03000201
    [8.668159] netcp-1.0 2620110.netcp:、使用适用于 pdsp 7的 PA FW 版本03.00.02.01:0x03000201
    [8.676431] netcp-1.0 2620110.netcp:、对于 pdsp 8、使用 PA FW 版本03.00.02.01:0x03000201
    [8.684687] netcp-1.0 2620110.netcp:、针对 pdsp 9使用 PA FW 版本03.00.02.01:0x03000201
    [8.692951] netcp-1.0 2620110.netcp:、使用适用于 pdsp 10的 PA FW 版本03.00.02.01:0x03000201
    [8.701305] netcp-1.0 2620110.netcp:、使用适用于 pdsp 11的 PA FW 版本03.00.02.01:0x03000201
    [8.709658] netcp-1.0 2620110.netcp:、使用适用于 pdsp 12的 PA FW 版本03.00.02.01:0x03000201
    [8.718011] netcp-1.0 2620110.netcp:、使用适用于 pdsp 13的 PA FW 版本03.00.02.01:0x03000201
    [8.726363] netcp-1.0 2620110.netcp:、针对 pdsp 14使用 PA FW 版本03.00.02.01:0x03000201
    [8.735967] netcp-1.0 2620110.netcp: rx_chan_name netrx0-pA (用于端口1)
    [8.742503] netcp-1.0 2620110.netcp: rx_chan_name netrx1-pA、用于端口2
    [8.749767] 2620738.usb_phy 电源 VCC 未找到、使用虚拟稳压器
    [8.756564]使用虚拟稳压器、未找到2620750.usb_phy 电源 VCC
    [8.763558] mousedev:PS/2鼠标设备,适用于所有鼠标
    [8.769489] i2c /dev/entries 驱动程序
    [8.774784] ledtrig-cpu:注册后指示 CPU 上的活动
    [9.085468](NULL net_device):链路断开
    [9.089646](NULL net_device):链路断开
    [9.093820](NULL net_device):链路已断开
    [9.098007](NULL net_device):链路断开
    [9.102182](NULL net_device):链路断开
    [9.106368](NULL net_device):链路断开
    [9.175465] nand:等待芯片就绪时超时
    [9.575464] nand:等待芯片就绪时超时
    [9.975464] nand:等待芯片就绪时超时
    [10.375465] nand:等待芯片就绪时超时
    [10.775464] nand:等待芯片就绪时超时
    [10.781463] Nand:找不到 NAND 器件
    [10.787317] NET:注册协议系列10.
    [10.792443] SIT:IPv6 over IPv4隧道驱动程序
    [10.797511] NET:注册协议系列17.
    [10.802100]注册的密钥类型 DNS_旋 变传感器
    [10.806508]正在注册 SWP/SWPB 仿真处理程序
    [10.812780] hctosys:无法打开 RTC 器件(rtc0)
    [10.915911] netcp-1.0 2620110.netcp eth0:链路断开
    [10.921337] pps pps0:新 PPS 源 ptp0
    [10.925355] netcp-1.0 2620110.netcp: PA2_CONFIG_INPURE_PORT_def_route:无法分配 cmd TX 数据包
    [10.934849] net eth0:模块打开失败
    [10.9399085]------ [在此处剪切]-----
    [10.943704]警告:CPU:0 PID:1 at drivers/soc/ti/knav_qmss_queue.c:751 knav_pool_destroy+0x100/0x104 ()
    [10.953360]链接的模块:
    [10.956428] CPU:0 PID:1 Comm:swapper/0未被污染4.4.4.41-gf9f6f0db2d #1
    [10.963379]硬件名称:KeyStone
    [10.966858]回溯:
    [10.96931][ ](dump_backtrace)从[ ](show_stack+0x18/0x1c)
    [10.976869] r7:c0339b2c r6:60000013 r5:00000000 r4:c090b0cc
    [10.982546][ ](show_stack)从[ ](dump_stack+0x8c/0xa0)
    [10.989760][ ](dump_stack)从[ ](warn_slESpath_common+0x88/b8)
    [10.997838] r7:c0339b2c R6:000002ef R5:00000009 R4:00000000
    [11.003511] ](warn_slowpath_common)、来自[ ](WARN_RASPEK_NULL_0x24/0x2C)
    [11.012284] R8:ef331d04 r7:ef331ea0 r6:ef331cc0 r5:00000001 r4:eebcdf90
    [11.019006][ ](warn_slowpath_null)、来自[ ](knav_pool_destroy+0x100/0x104)
    [11.027699][ ](knav_pool_destroy)从[ ](netcp_free_navigator_resources/0x200/0x2f4)
    [11.037427] R5:00000400 R4:ef331cc0
    [11.041008][ ](netcp_free_navigator_resources)、来自[ ](netcp_ne_open+0x2a4/0x4f8)
    [11.050475] R10:024000c0 R9:c08ebf40 R8:fffff4 r7:ef331ea0 R6:ef331cc0 R5:ef331800
    [11.058319] R4:ef331e98
    [11.060853][ ](netcp_ne_open)从[ ](_DEV_open+b0/0x114)
    [11.068497] R8:00000000 r7:ef331830 R6:c06c4ecc R5:00000000 R4:ef331800
    [11.075217][ ](_DEV_open)从[ ](_DEV_CHANGE_FLAGS+0x9C/0x14c)
    [11.083209] r7:00001002 R6:00000001 R5:00001003 R4:ef331800
    [11.0888888881][ ](_DEV_CHANGE_FLAGS)从[ ](DEV_CHANGE_FLAGS+0x20/0x50)
    [11.097306] R9:c08ebf40 R8:00000000 r7:ef331800 R6:00001002 R5:ef331938 R4:ef331800
    [11.105069][ ](DEV_CHANGE_FLAGS)从[ ](IP_auto_config+0x1F4/0x10f8)
    [11.113407] R9:c08ebf40 R8:c09619d4 r7:ef331800 R6:00001002 R5:00000001 R4:c08656f0
    [11.121168][ ](IP_auto_config)、来自[ ](do_one _initcall+0x98/0x1e4)
    [11.129247] R10:00000000 R9:c08ae600 R8:000000a8 r7:eebcaf80 R6:c08fb7a0 R5:c08d8674
    [11.137089] R4:c08fb7a0
    [11.139622][ ](多个_initcall)、来自[ ](kernel_init_freeed+0x1d4/0x268)
    [11.148307] R10:00000008 R9:c08ae600 R8:000000a8 r7:c08e5838 R6:c08f0bac R5:c0937000
    [11.156151] R4:c0937000
    [11.158685][ ](kernel_init_freable)从[ ](kernel_init+0x18/0xf4)
    [11.166850] R10:00000000 R9:00000000 R8:00000000 r7:00000000 R6:00000000 R5:c066e7f8
    [11.174695] R4:c0937000
    [11.177227][ ](kernel_init)、来自[ ](RET_FANK_F叉+0x14/0x2C)
    [11.184784] R5:c066e7f8 R4:00000000
    [11.188533]--[结束线迹9c7ce8b68592413]--

    非常长的内核转储、然后...

    [14.510764] IPv6:ADDRCONF (NETDEV_UP):ETH1:链路未就绪
    [24.515456]等待网络长达110秒。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好!
    您可以查看我的 DTS 文件。 我不知道必须为 DSP 和 cmem 保留多少内存。
    在这里、我的 k2e-evm-cme.dtsi reserverd-memory 部分:

    保留存储器{
    cmem_block_mem_0:cmem_block_mem@830000000{
    REG =<0x00000000 0xB0000000 0x00000000 0x07800000>;
    无地图;
    状态="正常";
    };
    };

    cmem{
    兼容="ti、cmem";
    #address-cells =<1>;
    #size-cells =<0>;

    #pool-size-cells =<2>;

    状态="正常";

    cmem_block_0:cmem_block@0{
    reg =<0>;
    memory-region =<&cmem_block_mem_0>;
    cmem-buf-Pools =<1 0x00000000 0x07800000>;
    };

    cmem_block_1:cmem_block@1{
    reg =<1>;
    SRAM =<&SRAM_cmem>;
    };
    };

    在这里、我的 keystone-k2g-evm.dts 保留存储器部分:

    保留存储器{
    #address-cells =<2>;
    大小单元格=<2>;
    范围;

    DSP_common_CMA_pool:DSP_common_CMA_pool{
    兼容="共享 dma-pool ";
    寄存器=<0x00000000 0xB7800000 0x00000000 0x800000>;
    可重复使用;
    };

    DSP_common_mpm_area:DSP_reserved_mpm_area{
    兼容="共享 dma-pool ";
    REG =<0x00000000 0xB8000000 0x00000000 0x8000000>;
    无地图;
    状态="正常";
    };
    };

    Linux 启动、但在启动后几秒钟内崩溃。 但这将是另一个问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在这里、我找到了 cmem 器件树的说明:
    software-dl.ti.com/.../group__ti___c_m_e_m.html
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Vladimir、

    此外、您还可以查看内核文档:
    documentation/devicetree/bindings/remoteproc/ti、keystone-rproc.txt
    documentation/devicetree/bindings/reserve-memory/reserved-memory.txt

    您应该小心、不要映射的内存超过物理可用的1GB。

    我从日志中看到、内核成功映射了保留区域:
    [0.000000]保留存储器:创建了0x00000000b0000000、大小为32 mib 的 CMA 存储器池
    [0.000000]保留存储器:初始化节点 DSP_common_CMA_pool、兼容 id shared-dma-pool
    [0.000000]保留存储器:已创建 DMA 存储器池、地址为0x00000000b2000000、大小为32 mib
    [0.000000]保留存储器:已初始化节点 DSP_RESERVE_mpm_area、兼容 id shared-dma-pool
    [0.000000] CMA:保留0x00000000be800000处的24 MIB

    内核在以太网部分中断... 让我再深入探究问题的根源、尝试解决问题。

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Yordan!

    感谢您的回答!

    我将尝试在电路板上显示 eth0。 在 u-boot eth0中成功工作。  

    它连接到 Marvell 88E1111 PHY、MDIO 地址为1。

    我禁用所有其他1GbE 和10GbE 配置端口、并尝试通过 NFS 装载 roottfs 来引导板。

    我假设 PA 的固件中可能存在此问题、因为每次内核尝试在 eth0上获取链接或尝试打开此接口时、我都会看到此错误消息。

    [19.113280] netcp-1.0 2620110.netcp: PA2_CONFIG_INALOW_PORT_def_route:无法分配 cmd TX 数据包

    [19.122794] net eth0:模块打开失败

    我尝试打开另一个处理器 SDK 版本、直接从 git repo 下载:

    Git:/git.ti.com/processor-sdk/processor-sdk-linux.git

    但我不清楚如何构建配置文件:tisdk_k2e-evm_defconfig、因为在目录 ti_config_fragments 中、我找不到任何用于 K2E EVM 的模板。 我尝试使用不同的分支:

     PROCESSOR-SDK-LINUX-03.01.00

     PROCESSOR-SDK-LINUX-03.02.00

     PROCESSOR-SDK-LINUX-03.03.00

     PROCESSOR-SDK-LINUX-04.00.00

    并看到如下所示的内容:

    Karak@Karak-u64 ~/embedded/processor-sdk-linux/ti_config_fragments $./defconfig_builder.sh -w./。 -l

    以下是可构建的 defconfigs 列表:

    TI_SDK_am3x_release

    TI_SDK_am4x_release

    TI_SDK_dra7x_release

    TI_SDK_OMAP2_release

    5. TI_SDK_k2g_release

    6. TI_SDK_k2hk 发布

    7. TI_SDK_KeySton_release

    8. TI_SDK_am3x_debug

    9. TI_SDK_am4x_debug

    TI_SDK_dra7x_debug

    11. TI_SDK_OMAP2_DEBUG

    12. TI_SDK_k2g_debug

    13. TI_SDK_k2hk 调试

    14. TI_SDK_keyston_debug

    15。TI_SDK_dra7x_jailhouse 发布

    没有提到任何 k2e。  从这里

    我有几个问题:

    1) 1)如何通过 defconfig_builder.sh 脚本从源代码构建 tisdk_k2e-evm_defconfig?

    2) 2)是否可以获取相关 PROCESSOR-SDK-LINUX-XX.YY 版本的固件?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    您的内核源代码中 arch/arm/configs/文件夹的内容是什么? 它应该包含 k2e EVM 的 defconfig。
    您可以尝试使用:
    使 tisdk_k2e-evm_defconfig 成为文件

    另请注意、您应使用此链接中正式发布的软件:
    www.ti.com/.../processor-sdk-k2e
    因为它专用于相应的器件。 git repos 不是经过测试的源、其中一些源可能包含正在进行中的驱动程序/配置文件等。

    此致、
    Yordan