尊敬的出口:
我正在尝试配置4G DDR CMA。 需要您的帮助来检查如何配置 CMA 地址、谢谢。
当 I 配置如下所示:
linux,cma {
status = "okay";
};
linux_cma_region: linux-cma-buffers@8a0000000 {
compatible = "shared-dma-pool";
status = "okay";
reusable;
reg = <0x09 0xa0000000 0x00 0x18000000>;
linux,cma-default;
};
登录如下:
[ 0.185822] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 764504178s [ 0.195809] futex hash table entries: 512 (order: 3, 32768 bytes, linear) [ 0.216667] ------------[ cut here ]------------ [ 0.221394] WARNING: CPU: 0 PID: 1 at mm/cma.c:110 cma_init_reserved_areas+0x68/0x20c [ 0.229413] Modules linked in: [ 0.232532] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.1.46-00005-g1971a00d7542 #4 [ 0.240355] Hardware name: Texas Instruments J721S2 EVM (DT) [ 0.246134] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 0.253245] pc : cma_init_reserved_areas+0x68/0x20c [ 0.258226] lr : cma_init_reserved_areas+0x78/0x20c [ 0.263206] sp : ffff80000941bd50 [ 0.266584] x29: ffff80000941bd50 x28: 0000000000000000 x27: ffff8000090400c8 [ 0.273877] x26: ffff800008fd01f0 x25: ffff8000093d2578 x24: 0000000000000001 [ 0.281169] x23: ffff800008fd0000 x22: fffffc0000000000 x21: 00000000009a0000 [ 0.288459] x20: 00000000000ffe00 x19: ffff8000093d25e0 x18: 000000000002e9ca [ 0.295750] x17: 6d202c6666666666 x16: 6666667830203a73 x15: 0000000000000000 [ 0.303041] x14: 0000000000000001 x13: 0000000000000002 x12: ffff800009379350 [ 0.310331] x11: ffff800009379330 x10: 0000000000000000 x9 : fffffc0020b31708 [ 0.317622] x8 : fffffc0020b04601 x7 : 0000000000000006 x6 : ffff8008768b0000 [ 0.324912] x5 : ffff80000941bcc0 x4 : ffff800009378500 x3 : ffff00087f9c6940 [ 0.332203] x2 : ffff00087f9c6600 x1 : 0000000000000000 x0 : 0000000000000000 [ 0.339494] Call trace: [ 0.341985] cma_init_reserved_areas+0x68/0x20c [ 0.346611] do_one_initcall+0x54/0x1d0 [ 0.350527] kernel_init_freeable+0x218/0x284 [ 0.354974] kernel_init+0x24/0x130 [ 0.358537] ret_from_fork+0x10/0x20 [ 0.362185] ---[ end trace 0000000000000000 ]--- [ 0.366928] Unable to handle kernel paging request at virtual address fffffc0024800000 [ 0.375021] Mem abort info: [ 0.377866] ESR = 0x0000000096000006 [ 0.381692] EC = 0x25: DABT (current EL), IL = 32 bits [ 0.387117] SET = 0, FnV = 0 [ 0.390229] EA = 0, S1PTW = 0 [ 0.393432] FSC = 0x06: level 2 translation fault [ 0.398412] Data abort info: [ 0.401346] ISV = 0, ISS = 0x00000006 [ 0.405259] CM = 0, WnR = 0 [ 0.408283] swapper pgtable: 4k pages, 48-bit VAs, pgdp=000000008303f000 [ 0.415129] [fffffc0024800000] pgd=10000008ff9c5003, p4d=10000008ff9c5003, pud=10000008ff9c4003, 0 [ 0.425980] Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP [ 0.432381] Modules linked in: [ 0.435495] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G W 6.1.46-00005-g1971a00d75424 [ 0.444827] Hardware name: Texas Instruments J721S2 EVM (DT) [ 0.450604] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 0.457715] pc : cma_init_reserved_areas+0x98/0x20c [ 0.462696] lr : cma_init_reserved_areas+0x78/0x20c [ 0.467675] sp : ffff80000941bd50 [ 0.471053] x29: ffff80000941bd50 x28: 0000000000000000 x27: ffff8000090400c8 [ 0.478344] x26: ffff800008fd01f0 x25: ffff8000093d2578 x24: 0000000000000001 [ 0.485635] x23: ffff800008fd0000 x22: fffffc0000000000 x21: 00000000009a0000 [ 0.492926] x20: 00000000000ffe00 x19: ffff8000093d25e0 x18: 000000000002e9ca [ 0.500217] x17: 6d202c6666666666 x16: 6666667830203a73 x15: 0000000000000000 [ 0.507508] x14: 0000000000000001 x13: 0000000000000002 x12: ffff800009379350 [ 0.514798] x11: ffff800009379330 x10: 0000000000000000 x9 : fffffc0020b31708 [ 0.522089] x8 : fffffc0020b04601 x7 : 0000000000000006 x6 : 0000000000000640 [ 0.529379] x5 : ffff80000941bcc0 x4 : 00000000009a0001 x3 : ffff00087f9c6940 [ 0.536670] x2 : ffff00087f9c6600 x1 : 0000000000000000 x0 : 0000000024800000 [ 0.543961] Call trace: [ 0.546450] cma_init_reserved_areas+0x98/0x20c [ 0.551076] do_one_initcall+0x54/0x1d0 [ 0.554989] kernel_init_freeable+0x218/0x284 [ 0.559435] kernel_init+0x24/0x130 [ 0.562994] ret_from_fork+0x10/0x20 [ 0.566642] Code: 9107c2fa 910006a4 cb8032a0 d37ae400 (f8766805) [ 0.572865] ---[ end trace 0000000000000000 ]--- [ 0.577586] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b [ 0.585407] SMP: stopping secondary CPUs [ 0.589412] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b ]---
此致、
张弗雷迪