在烧写完NT98315的SDK后,进入板子运行其案例代码报错common init fail,于是根据文档手册发现是没有执行vg_boot这个脚本,在执行脚本后发现每次都卡死在一个地方,那串口查看发现一直输出信息[ 696.434363] .[ 696.448491] wait EP0 to provide its hdal memory
卡死地方在
boot_ver=v1.1
chipver=`head -1 /proc/pmu/chipver`
chipid=`echo $chipver | cut -c 1-4`
echo -----------------------------------------------------------
echo " Boot $boot_ver, 9$chipid ($chipver), NVR_8CH_4K2K"
echo -----------------------------------------------------------
echo "/sbin/mdev" > /proc/sys/kernel/hotplug
modprobe frammap
cat /proc/frammap/ddr_info
modprobe log log_ksize=4096 crash_notify=/mnt/mtd/crash.sh #crash to execute /mnt/mtd/crash.sh
echo /tmp > /proc/videograph/dumplog #change log path to /tmp
modprobe ddr_monitor
modprobe ms max_channels=8
modprobe em max_channels=8
modprobe lcd_codec
modprobe flcd300-common
modprobe flcd300-pip suspend_state=1
modprobe flcd200-common
modprobe flcd200-pip suspend_state=1
modprobe flcd200-pip1 suspend_state=1
modprobe nvt_hdmi20
modprobe vpe536_drv
modprobe vpe536 mod_init=1 max_chip_num=1 max_eng_num=1 max_minor_num=255 max_dce_2d_num=0 max_md_lv_num=16 max_total_cam_ch=24
#modprobe vpe316 max_chip_num=1 max_eng_num=1 max_minor_num=255 max_total_cam_ch=10
modprobe dsp
modprobe audio_drv
modprobe adda301
modprobe h26xenc h26x_enc_max_width=2560 h26x_enc_max_height=1440 max_total_cam_ch=20
modprobe decoder
#此处往后都执行不到,就卡这了
modprobe hevc_dec h265d_max_width=2560 h265d_max_height=1440 max_total_cam_ch=20
modprobe favc_dec h264d_max_width=2560 h264d_max_height=1440 max_total_cam_ch=16
modprobe fmcp_drv
modprobe fmjpeg_drv
modprobe osg idn=32 mem=1000 max_pattern_width=720 max_pattern_height=480 max_minor_num=64
modprobe gs max_channels=8
modprobe gm2d
modprobe usr_proc
modprobe vpd quiet=0 max_channels=8
mdev -s
devmem 0xfc400034 32 0x0C041604 # DDR Grant--> CH3:VPE536 CH2:H265D CH1:LCD310 CH0:H264/JPEG/VPE316/OSG
devmem 0xfc400038 32 0x080C0606 # DDR Grant--> CH7:VCAP CH6:H265E CH5:CPU/CEVA CH4:CNN
devmem 0xfe000024 # Read to check LCD310 hi priority (bit 5)
devmem 0xfda00744 32 0x80000000 # LCD310 DDR request
devmem 0xfda00748 32 0x00800020 # LCD310 dma threshold
devmem 0xfda0074C 32 0x00800020 # LCD310 dma threshold
devmem 0xfda00750 32 0x00800020 # LCD310 dma threshold
devmem 0xfda00754 32 0x00800020 # LCD310 dma threshold
devmem 0xfda00758 32 0x00800020 # LCD310 dma threshold
devmem 0xfda0075c 32 0x00800020 # LCD310 dma threshold
# Syntax: module_init [dtb_file] [is_dump_dts] [is_init_videocap] [is_init_videoout] [is_init_audio]
/mnt/mtd/module_init /mnt/mtd/cfg_NVR_8CH_4K2K.dtb 0 0 1 1 &
#echo 22 1 > /proc/vcap316/vcap0/vcap0.0/cfg/global # BIT[0]:DDR0 BIT[1]:DDR1
#echo 21 1 > /proc/vcap316/vcap0/vcap0.0/cfg/global # BIT[0]:DDR0 BIT[1]:DDR1
root@NVTEVM:/mnt/mtd/image$ ./vg_boot.sh
[ 1813.380339] frammap: loading out-of-tree module taints kernel.
[ 1813.388288] Frammap: Add chipid:0, ddrid:0, mem_base=0x3000000, mem_sz=0x1800000, align_size=4K, mtype=0.
Boot v1.1, [ 1813.398554]
98315 (83150004)[ 1813.402921] SDK version: master
, NVR_8CH_4K2K
[ 1813.407399]
[ 1813.411821] Frammap:version 3.1.1, and the system has 1 DDRs.
[ 1813.424440] g_pcie_shmem_sz = 0x10000
[ 1813.429656] pcie_sys_init: share memory address: 0x3010000, size: 0x10000
d[ 1813.437649] pcie_sys_init: update share memory paddr:0x83010000 to EP0
dr name: frammap[ 1813.445649] pcie_sys: ddr0, hdal_base base:0x2f800000, size:0x10800000
0(mtype: cma_mem[ 1813.453542] pcie_sys: ddr1, hdal_base base:0x0, size:0x1f800000
)
chipid: 0
[ 1813.460978] rc_dmac030 irq: 20
ddrid: 0
base:[ 1813.465363] pcie_sys_init, driver version: 1.2.13.
0x3000000
end: 0x4800000
si[ 1813.473585] log.ko v1.59: Oct 26 2020 12:13:32 (mmap 0xade80000 size 0x78000)
ze: 0x1800000 by[ 1813.482450]
[ 1813.482450] LOG base 0xac000000(ddr0) size 4096K (start pointer 0x7f022818)
tes
memory allo[ 1813.491222] PAGE_OFFSET(0x80000000) VMALLOC START(0xb0000000) HZ(100)
cated: 0x0 bytes
memory free: 0x1800000 bytes
max available [ 1813.503352] , CH#5 matched -> AWADDR:0x2DDC3080, AWID:0x0011
[ 1813.510104] start dump stack
[ 1813.512960] finish dump stack
slice: 0x1800000[ 1813.516088] DDR_Monitor fc400000.ddr_mon: is ready!
bytes
memory a[ 1813.522216] NVT DDR Monitor Driver Version: 1.0.0
llocate count: 0[ 1813.528874] DDR_Monitor fc500000.ddr_mon: is ready!
clear address[ 1813.534460] NVT DDR Monitor Driver Version: 1.0.0
: 0x3000000
dirty pages: 0
clear pages: 6144[ 1813.543892] ms: module license 'NVT' taints kernel.
size alignment: 0x1000
gl[ 1813.551175] ms.ko v2.25 Oct 26 2020 12:13:43
obal DDR mapping:
Global DDR:0 ==> chip0, local ddrid:0
Global DDR:1 ==> chi[ 1813.561953] em.ko v1.121 Oct 26 2020 12:13:09
p0, local ddrid:[ 1813.568080] em_user v1.2 Oct 26 2020 12:13:08
1
Global DDR:2[ 1813.573597] Start EM thread 0(em_callback) with nice -20
==> chip1, loca[ 1813.580289] Start EM putjob (em_putjob) with nice -20
l ddrid:2
Global DDR:3 ==> chip2, local ddrid:[ 1813.589431] lcd_codec driver version: 1.0.
3
Global DDR:4 ==> chip3, local ddrid:4
hd[ 1813.598419]
[ 1813.598419] LCD300 platform: Hook NA51039 driver.
al_base: 0x2f800000, hdal_size: 0x10800000
[ 1813.610952] lcd300: suspend_state:1
[ 1813.618267]
[ 1813.618267] LCD210 platform: Hook NA51039 driver.
[ 1813.629552] LCD200:0: suspend_state:1
[ 1813.638192] LCD200:1: suspend_state:1
[ 1813.646030] hdmi20_init, phy_trim_val:0xd
[ 1813.650481] HDMI(fec00000.hdmi20): paddr:0xfec00000, vaddr:0xb949d000, drv version:1.0.22.
[ 1813.658883] Register codec nvthdmi-1440x900_RGB.
[ 1813.663559] Register codec nvthdmi-1920x1200_RGB.
[ 1813.668313] Register codec nvthdmi-1680x1050_RGB.
[ 1813.673079] Register codec nvthdmi-480P_RGB.
[ 1813.677398] Register codec nvthdmi-576P_RGB.
[ 1813.681730] Register codec nvthdmi1-1024x768_RGB.
[ 1813.686481] Register codec nvthdmi-1280x1024_RGB.
[ 1813.691237] Register codec nvthdmi-1600x1200_RGB.
[ 1813.695988] Register codec nvthdmi-1920x1080_RGB.
[ 1813.700743] Register codec nvthdmi-2560x1440x60_RGB.
[ 1813.705751] Register codec nvthdmi-1280x720_RGB.
[ 1813.710421] Register codec nvthdmi-3840x2160_RGB.
[ 1813.715171] Register codec nvthdmi-1920x1080x50_RGB.
[ 1813.720187] Register codec nvthdmi-3840x2160x25_RGB.
[ 1813.725195] hdmi20 driver version:1.0.22
[ 1813.733127] reference width/stx align to 16x, flag = 0
[ 1813.738778] VPE536(drv): Driver[Ver: 1.4.28] init ok, Chip Ver[0x20180731]
[ 1813.754079] vpe536_module_initial:vpe536lib Version: 0.9.141 Oct 26 2020 12:13:35
[ 1813.781096] adda301.0 version(1.00.01)
[ 1813.802430] H26X Encoder v0.1.48, built @ Oct 26 2020 12:13:13
[ 1813.813408] Decoder v1.0.10[ 1813.816012] , built @ Oct 26 2020 12:13:07
[ 1813.829593] wait EP0 to provide its rsv memory.
[ 1813.835390] .[ 1817.828500] .
.[ 1825.828500] .
.[ 1833.828501] .
开始以为是板子SDK烧录的问题,后来好像是因为脚本没执行,但是执行脚本后一直卡死在这里
怎样能够通过vg_boot.sh执行好module_init,能够运行它SDK自带的samples
内存问题?不太懂,学习下