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/TMS320DM8148:VPSS 失效导致 DSP 内核中断禁用

Guru**** 2548220 points
Other Parts Discussed in Thread: ADS7846, TPS65910, THS8200

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/585774/linux-tms320dm8148-vpss-fail-lead-to-dsp-core-interrupt-disable

器件型号:TMS320DM8148
主题中讨论的其他器件:ADS7846TPS65910THS8200

工具/软件:Linux

我在 DM8148定制板中遇到了这个 strage 问题。

通常 ,程序在 A8 -Linux 中作为 GUI 运行,BIOS/6程序在 DSP 内核中运行。 DSP 程序 每1ms 发生一次来自 FPGA 的扩展中断。

它在我的大部分时间都可以正常工作。

有时 、我发现 DSP 中断 被禁用。 连接 VPSS 失败。

当这种情况发生时,dmesg 会显示 每 10-50ms 发生一次 VPSS 的日志失败。

它说: "未能设置绑定的 venc " 或"未能启用 venc "(我忘了记录相关消息,只是记住 末尾的"venc"一词)  

 发生此 VPSS 错误时、Linux 的 GUI 程序和窗口管理器看起来很好。

在我找到此消息后,我停止 VPSS 模块,并且在 VPSS 停止后,DSP 程序似乎正常运行。

VPSS 模块似乎会在错误时对 CPU 执行一些操作(可能会全局停止 NVIC)、以防 DSP 当时丢失中断。  

如何调试此问题?

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

    您好!

    您使用的是哪个软件版本?

    此致、

    Anuj

    Pathpartner Technology Pvt Ltd.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我使用随 EZSDK-5.05、SYSLINK-2.02一起提供的 Linux 内核2.6.37-psp4。
    系统使用 Ubuntu 12.04 for ARM (Armel)。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Biao Yang:

    我不太熟悉 DM8148 EZSDK。
    但是、如果您可以从引导开始发布完整日志、直到遇到错误、我们可以研究这些问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的关注! 我解决了这个问题! 我通过更改 VPSS init 脚本来解决了这个问题!

    我上传日志和脚本(一个文件中的新的已修复版本和旧的问题版本)。 保持您可以配置问题的根源。

    我认为中断处理代码有一些错误。 它在 ARM 和 DSP 中长时间阻止外部 int。   

    我发现当我插入 USB 磁盘 时,DSP 内核中会出现相同的问题(外部 INT 被阻止)。   当电路板工作时、我必须警告用户不要执行 USB 插入和文件复制

    //dmesg 日志

    Linux 版本2.6.37 (kzw@kzw-虚拟机)(gcc 版本4.3.3 (Sourcery G++ Lite 2009q1-203))#5 Tue Jun 7 15:06:16 CST 2016
    CPU:ARMv7处理器[413fc082]修订版2 (ARMv7)、CR=10c53c7f
    CPU:VIPT 非混叠数据高速缓存、VIPT 别名指令高速缓存
    机器:ct8148
    TI81xx:在-1386217472上保留 VRAM 大小= 106954752
    存储器策略:ECC 禁用、数据高速缓存写回
    OMAP 芯片为 TI8148 3.0
    SRAM:映射 PA 0x402f1000到 va 0xfe400000大小:0xf000
    在节点0上合计页:145920
    FREE_Area_init_node:节点0、pgdat c05a5a5c、node_mem_map c05e0000
     正常区域:用于 memmap 的704页
     正常区域:保留0页
     正常区域:89408页,LIFO 批处理:15
     HIGHMEM 区域:用于 memmap 的952页
     HIGHMEM 区域:54856页、LIFO 批处理:15
    pcpu-alloc:s0 r0 d32768 u32768 alloc=1*32768
    pcpu-alloc:[0] 0
    在区域顺序和移动分组中构建1个区域列表。  总页数:144264
    内核命令行:root=/dev/mmcblk0p3 rootfstype=ext4 rw wait ip=off console=ttyO0、115200n8 mem=352M mem=320M@0x9FC00000 notifyk.vpssm3_Sram=0xBF900000 vmalloc=500m vrd=102M ti814xfb.v1m=481m、inity=0=intryl、intry1:rk=0=48m=ink.ink=1、inspy1、intry=0=ink=ink.ink=v1、intry1
    [0.000000]   PID 哈希表条目:2048 (顺序:1、8192字节)
    [0.000000]   条目高速缓存散列表条目:65536 (顺序:6、262144字节)
    [0.000000]   inode 高速缓存散列表条目:32768 (顺序:5、131072字节)
    [0.000000]   内存:352MB 218MB =总共570MB
    [0.000000]   内存:571840k/571840k 可用、116288k 保留、2232322K HIGHMEM
    [0.000000]   虚拟内核内存布局:
    [0.000000]       矢量 :0xff0000-0xff1000  (4KB)   
    [0.000000]       fixmap :0xFF00000 - 0xFFE0000  (896 KB)
    [0.000000]       DMA    :0xc00000 - 0xce00000  (  2 MB)
    [0.000000]       vmalloc:0xd6800000 - 0xf8000000  (536 MB)
    [0.000000]       低内存 :0xC0000000 - 0xD6000000  (352MB)
    [0.000000]       pkmap  :bbfe00000 - 0xC0000000  (  2 MB)
    [0.000000]       模块:bbf000000 - bbbfe00000  ( 14 MB)
    [0.000000]         .init:0xc0008000 - 0xc0034000  (176 KB)
    [0.000000]         .text:0xc0034000 - 0xc0560000  (5296 KB)
    [0.000000]         .data:0xc0560000 - 0xc05a6400  (281KB)
    [0.000000]   slub:Genslabs=11、HWalign=64、order=0-3、MinObjects=0、CPU=1、 节点= 1
    [0.000000]   NR_IRQ:375
    [0.000000]   omap_hwmod:GPIO2:软复位失败(等待10000 usec)
    [0.000000]   omap_hwmod:gpio3:软复位失败(等待10000 usec)
    [0.000000]   omap_hwmod:GPIO4:软复位失败(等待10000 usec)
    [0.000000]   IRQ:在0xfa200000 (修订版5.0)处找到具有128个中断的 INTC
    [0.000000]   在1个活动控制器上总共有128个中断
    [0.000000]   GPMC 版本6.0
    [0.000000]   尝试为 IRQ368安装中断处理程序
    [0.000000]   尝试为 IRQ369安装中断处理程序
    [0.000000]   尝试安装 IRQ370的中断处理程序
    [0.000000]   尝试为 IRQ371安装中断处理程序
    [0.000000]   尝试为 IRQ372安装中断处理程序
    [0.000000]   尝试为 IRQ373安装中断处理程序
    [0.000000]   尝试为 IRQ374安装中断处理程序
    [0.000000]   尝试为 IRQ375安装类型控制
    [0.000000]   尝试为 IRQ375设置 IRQ 标志
    [0.000000]   OMAP 时钟事件源:20000000Hz 时的 GPTIMER1
    [0.000000]   控制台:彩色虚拟设备80x30
    [0.000000]   校准延迟环路... 999.42茂物剪(lpj=4997120)
    [0.260000]   pid_max:默认值:32768最小值:301
    [0.260000]   安全框架已初始化
    [0.260000]   安装高速缓存散列表条目:512
    [0.260000]   CPU:测试写入缓冲区一致性:好的
    [0.260000]   devtmpfs:已初始化
    [0.260000]   OMAP-VOLTGE_EARLY_INIT:未添加电压驱动器支持
    [0.260000]   稳压器:内核版本0.5
    [0.260000]   稳压器:虚拟:
    [0.260000]   NET:注册协议系列16.
    [0.260000]   OMAP GPIO 硬件版本0.1
    [0.260000]   OMAP GPIO 硬件版本0.1
    [0.260000]   OMAP GPIO 硬件版本0.1
    [0.260000]   OMAP GPIO 硬件版本0.1
    [0.260000]   omap_mux_init:添加分区:#1:内核、标志:4.
    [0.260000]   已注册的 ti814x_VPSS 器件
    [0.260000]   寄存式 TI814x 片上 HDMI 器件
    [0.260000]   00000630 000008e9 00000634 9dfdf6a0
    [0.270000]   注册的 ti81xx_vidout 器件
    [0.280000]   bio:创建层块 为0
    [0.280000]   SCSI 子系统已初始化
    [0.280000]   usbcore:注册的新接口驱动程序 usbfs
    [0.280000]   usbcore:注册的新接口驱动程序集线器
    [0.280000]   usbcore:注册的新设备驱动程序 USB
    [0.280000]   USBSS 修订版本4ea2080b
    [0.280000]   OMAP_i2c OMAP-i2c.1:总线1修订版4.0、频率为400kHz
    [0.300000]   OMAP-i2c OMAP-i2c.2:总线2修订版4.0、频率为400kHz
    [0.320000]   OMAP_i2c OMAP-i2c.4:总线4修订版4.0、频率为400kHz
    [0.320000]   高级 Linux 声音架构驱动程序1.0.23版。
    [0.320000]   切换到时钟源 gp 计时器
    [0.320000]   musb-hdrc:6.0版、主机、调试=0
    [0.320000]   musb-hdrc musb-hdrc.0:DMA 类型:PIO
    [0.320000]   MUSB 控制器-0修订版4ea20800
    [0.320000]   usb2phy:计算值 rxcalib(15) DAC (33 15 16)
    [0.320000]   usb2phy:覆盖计算值 rxcalib(15) DAC (33 15 16)
    [0.320000]   usb2phy_config:musb (0) rxcalib Done、rxcalb 读取值6f70df86
    [0.320000]   musb-hdrc:ConfigData=0xde (UTMI-8、dyn FIFO、大容量组合、大容量分离、HB-ISO Rx、 HB-ISO Tx、SoftConn)
    [0.320000]   musb-hdrc:MHDRC RTL 版本2.0
    [0.320000]   musb-hdrc:设置 fifo_mode 4.
    [0.320000]   musb-hdrc:28/31最大 EP、16384/16384存储器
    [0.320000]   musb-hdrc musb-hdrc.0:MUSB HDRC 主机驱动程序
    [0.320000]   musb-hdrc musb-hdrc.0:已注册新 USB 总线、分配的总线编号1
    [0.320000]   USB USB1:找到新的 USB 器件、idVendor=1d6b、idProduct=0002
    [0.320000]   USB USB1:新 USB 器件字符串:MFR=3、Product=2、SerialNumber=1
    [0.320000]   USB USB1:产品:MUSB HDRC 主机驱动程序
    [0.320000]   USB USB1:制造商:Linux 2.6.37 musb-hcd
    [0.320000]   USB USB1:串行编号:musb-hdrc.0
    [0.330000]   集线器1-0:1.0:找到 USB 集线器
    [0.330000]   集线器1-0:1.0:检测到1个端口
    [0.330000]   musb-hdrc musb-hdrc.0:使用 PIO 的 d681e000上的 USB 主机模式控制器、IRQ 18
    [0.330000]   注册/proc/driver/musb_hdrc.0
    [0.330000]   musb-hdrc musb-hdrc.1:DMA 类型:PIO
    [0.330000]   MUSB CONTROLLER-1修订版4ea20800
    [0.330000]   usb2phy:计算值 rxcalib(15) DAC (22 13 14)
    [0.330000]   usb2phy:覆盖计算值 rxcalib(15) DAC (22 13 14)
    [0.330000]   usb2phy_config:musb (1) rxcalib Done、rxcalb 读取值6f6b5b76
    [0.330000]   musb-hdrc:ConfigData=0xde (UTMI-8、dyn FIFO、大容量组合、大容量分离、HB-ISO Rx、 HB-ISO Tx、SoftConn)
    [0.330000]   musb-hdrc:MHDRC RTL 版本2.0
    [0.330000]   musb-hdrc:设置 fifo_mode 4.
    [0.330000]   musb-hdrc:28/31最大 EP、16384/16384存储器
    [0.330000]   musb-hdrc musb-hdrc.1:MUSB HDRC 主机驱动程序
    [0.330000]   musb-hdrc musb-hdrc.1:新的 USB 总线已注册、分配的总线编号2
    [0.330000]   USB USB2:找到新的 USB 设备、idVendor=1d6b、idProduct=0002
    [0.330000]   USB USB2:新 USB 器件字符串:MFR=3、Product=2、SerialNumber=1
    [0.330000]   USB USB2:产品:MUSB HDRC 主机驱动程序
    [0.330000]   USB USB2:制造商:Linux 2.6.37 musb-hcd
    [0.330000]   USB USB2:Serial Number:musb-hdrc.1.
    [0.330000]   集线器2-0:1.0:找到 USB 集线器
    [0.330000]   集线器2-0:1.0:检测到1个端口
    [0.330000]   musb-hdrc musb-hdrc.1:d6822800上的 USB 主机模式控制器、使用 PIO、IRQ 19
    [0.330000]   注册/proc/driver/musb_hdrc.1
    [0.330000]   NET:注册协议系列2.
    [0.330000]   IP 路由高速缓存散列表条目:16384 (顺序:4、65536字节)
    [0.330000]   TCP 建立哈希表条目:65536 (顺序:7、524288字节)
    [0.330000]   TCP 绑定哈希表条目:65536 (顺序:6、262144字节)
    [0.330000]   TCP:已配置哈希表(建立65536 BIND 65536)
    [0.330000]   TCP 注册
    [0.330000]   UDP 哈希表条目:256 (顺序:0、4096字节)
    [0.330000]   UP-Lite 哈希表条目:256 (顺序:0、4096字节)
    [0.330000]   NET:注册协议系列1.
    [0.330000]   RPC:注册的 UDP 传输模块。
    [0.330000]   RPC:注册的 TCP 传输模块。
    [0.330000]   RPC:注册的 TCP NFSv4 4.1反向通道传输模块。
    [0.330000]   NetWinder 浮点仿真器 V0.97 (双精度)
    [0.330000]   PMU:已注册类型为0的新 PMU 器件
    [0.330000]   OMAP-iommu OMAP-iommu.0:已注册 Ducati
    [0.330000]   OMAP-iommu OMAP-iommu.1:已注册系统
    [0.410000]   HIGHMEM 退回池大小:64页
    [0.410000]   NTFS 驱动程序2.1.29 [Flags:R/W]。
    [0.410000]   JFFS2版本2.2。 (NAND)\xffffffc2\xffffffffa9\xffffffffffa9 2001-2006 Red Hat, Inc.
    [0.42000]   熔丝初始化(API 版本7.15)
    [0.42000]   msgmni 已设置为680
    [0.42000]   已注册 IO 调度程序 NOP
    [0.42000]   已登记 IO 调度程序的最后期限
    [0.42000]   已注册 IO 调度程序 cfq (默认值)
    [0.500000]   [DRM]已初始化 DRM 1.1.0 20060810
    [0.500000]   串行:8250/16550驱动程序,4个端口,启用 IRQ 共享
    [0.500000]   OMAP-UART.0:MMIO 0x48020000 (IRQ = 72)处的 ttyO0是 OMAP UART0
    启用[1.260000]   控制台[ttyO0]
    [1.260000]   OMAP-UART.1:MMIO 0x48022000 (IRQ = 73)上的 ttyO1是 OMAP UART1
    [1.270000]   将 GPIO 46配置为 OMAP UART1的 RTS 信号
    [1.270000]   OMAP-UART.2:MMIO 0x48024000 (IRQ = 74)处的 ttyO2是 OMAP UART2
    [1.280000]   OMAP-UART.3:MMIO 0x481a6000 (IRQ = 44)上的 ttyO3是 OMAP UART3
    [1.290000]   OMAP_UART.4:MMIO 0x481a8000 (IRQ = 45)上的 ttyO4是 OMAP UART4
    [1.290000]   OMAP-UART.5:MMIO 0x481aa000 (IRQ = 46)处的 ttyO5是 OMAP UART5
    [1.310000]   返修:模块已加载
    [1.310000]   循环:模块已加载
    [1.320000]   m25p80 spi1.0:找到 mx25l3205d、预期 m25p80
    [1.320000]   m25p80 spi1.0:mx25l3205d (4096 KB)
    [1.330000]   在"SPI_FLASH"上创建6个 MTD 分区:
    [1.330000]   0x000000000000-0x000000020000:"U-引导-最小值"
    [1.340000]   0x00000002000-0x000000060000:"U-Boot"
    [1.340000]   0x000000060000-0x000000070000:"U-Boot ENV"
    [1.350000]   0x000000070000-0x000000080000:"Mac"
    [1.360000]   0x000000080000-0x000000090000:"保留"
    [1.360000]   0x000000090000-0x000000400000:“Recovery (恢复)”
    [1.370000]   m25p80 spi3.1:找到 fm25v10、预期 m25p80
    [1.370000]   m25p80 spi3.1:fm25v10 (128KB)
    [1.380000]   在"SPI_FLASH"上创建1个 MTD 分区:
    [1.380000]   0x000000000000-0x000000020000:"fm25v10_FRAM"
    [1.390000]   USB 2-1:使用 musb-hdrc 和地址2的新型高速 USB 器件
    [1.450000]   DaVinci_MDIO DaVinci_MDIO.0:达芬奇 MDIO 修订版本1.6
    [   1.450000] DaVinci_MDIO DaVinci_MDIO.0:检测到的 phy 掩码 FFFFFFFE
    [1.460000]   DaVinci_MDIO.0:探测
    [   1.460000] DaVinci_MDIO DaVinci_MDIO.0:PHY[0]:器件0:00、驱动程序未知
    [1.470000]   usbcore:注册了新接口驱动程序 CDC_ETher
    [1.480000]   usbcore:注册的新接口驱动程序 dm9601
    [1.480000]   正在初始化 USB 大容量存储驱动程序...
    [1.490000]   usbcore:注册的新接口驱动程序 USB 存储
    [1.490000]   已注册 USB 海量存储支持。
    [1.500000]   鼠标:PS/2鼠标设备适用于所有鼠标
    [1.500000]   ads7846 spi2.0:触摸屏、IRQ 274
    [1.510000]   输入:ADS7846触摸屏作为/devices/platform/omap2_mcspi.2/spi2.0/input/input0
    [1.520000]   输入:tps65910_pwrbutton 作为/devices/platform/omap/omap_i2c.1/i2c-1/1-002d/tps65910-pwrbutton/input/input1
    [1.530000]   RTC-pcf8563 1-0051:找到芯片、驱动程序版本0.4.3
    [1.540000]   RTC-pcf8563 1-0051:RTC 内核:将 RTC-pcf8563注册为 rtc0
    [1.540000]   i2c /dev/entries 驱动程序
    [1.550000]   Linux 视频捕捉接口:v2.00
    [1.550000]   usbcore:注册的新接口驱动程序 uvcvideo
    [1.560000]   USB 视频类驱动程序(v1.0.0)
    [1.560000]   寄存式 LED 器件:USr0
    [1.560000]   寄存式 LED 器件:USR1
    [1.560000]   寄存式 LED 器件:USR2
    [1.560000]   寄存式 LED 器件:USr3
    [1.560000]   寄存式 LED 器件:USr4
    [1.560000]   寄存式 LED 器件:USr5
    [1.560000]   notify_init:通知为  物理地址 bbf900000处的远程 proc id 2创建的驱动程序
    [1.570000]   usbcore:注册的新接口驱动程序 snd-usb-audio
    [1.580000]   ASOC:HDMI-DAI-CODEC <-> HDMI-DAI 映射正常
    [1.590000]   ALSA 器件列表:
    [1.590000]     #0:TI81XX EVM
    [1.590000]   TCP 立方注册
    [1.600000]   NET:注册协议系列17.
    [1.600000]   lib80211:IEEE802.11驱动程序的常见例程
    [1.610000]   lib80211_crypt:注册算法'NULL'
    [1.610000]   lib80211_crypt:注册算法'WEEP'
    [1.610000]   lib80211_crypt:注册算法'CCMP'
    [1.610000]   lib80211_crypt:注册算法"TKIP"
    [1.610000]   注册 DNS_旋 变传感器密钥类型
    [1.610000]   VFP 支持 v0.3:实施者41架构3第30部分版本 c 版本3
    [1.620000]   OMAP_VOLTAGE_LARD_INIT:未添加电压驱动器支持
    [1.630000]   TI81XX 的电源管理。
    [1.630000]   CPsw:禁用 CPRGMII 内部延迟。
    [1.640000]   检测到 MACID=a0:F6:FD:9d:E9:08
    [1.640000]   RTC-pcf8563 1-0051:将系统时钟设置为2017-04-06 15:37:47 UTC (1493067)
    [1.650000]   正在等待根设备/dev/mmcblk0p3...
    [1.660000]   USB 2-1:找到新的 USB 器件、idVendor=0409、idProduct=005A
    [1.670000]   USB 2-1:新 USB 器件字符串:MFR=0、Product=0、SerialNumber=0
    [1.670000]   集线器2-1:1.0:找到 USB 集线器
    [1.680000]   集线器2-1:1.0:检测到4个端口
    [1.720000]   mmc0:地址为0001的新型高速 MMC 卡
    [1.720000]   mmcblk0:mmc0:0001 S10004 3.56 GiB
    [1.730000]    mmcblk0:P1 P2 P3
    [1.840000]   EXT4-FS (mmcblk0p3):警告:达到最大安装计数、建议运行 e2fsck
    [1.850000]   EXT4-FS (mmcblk0p3):恢复完成
    [   1.850000] EXT4-FS (mmcblk0p3):已安装文件系统、具有已订购数据模式。 OPTS:(空)
    [1.860000]   VFS:在设备179:3上安装了根(ext4文件系统)。
    [1.870000]   devtmpfs:已安装
    [1.870000]   释放初始化内存:176K
    [2.720000]   <30>udevd[133]:开始版本175
    [4.110000]    
    [4.110000]   找到 CPSW phy:id 为:0x4dd074
    [4.120000]   找不到 PHY 0:01
    [5.410000]   EXT4-FS (mmcblk0p2):警告:达到最大安装计数、建议运行 e2fsck
    [5.410000]   EXT4-FS (mmcblk0p2):恢复完成
    [5.410000]   EXT4-FS (mmcblk0p2):已安装文件系统、具有有序数据模式。 OPTS:(空)
    [7.770000]   FPGA_INIT ()
    [7.770000]   SYSCLK_OUT:0x82
    [7.770000]   clk1 mux:0x0
    [7.770000]   GPMC 版本6.0
    [7.770000]   GPMC 配置 0x10
    [7.770000]   以8周期速度获得 CS1、地址= 1000000
    [7.770000]   GPMC_CS_CONFIG7值0xf41
    [7.770000]   以8周期速度获得 CS2、地址= 2000000
    [7.770000]   GPMC_CS2_CONFIG7值0xf42--size 0X10000
    [7.770000]   得到 CS3,地址= 3000000,速度 为10个周期
    [7.770000]   GPMC_CS3_CONFIG7值0xf43--size 0X10000
    [7.770000]   将测试 m3 CS3
    [7.770000]   m3芯片 ID 为0x216
    [7.830000]   usbcore:注册的新接口驱动程序 usbhid
    [7.830000]   usbhid:USB HID 内核驱动程序
    [8.140000]   SysLink 版本:2.00.05.85
    [8.140000]   SysLink 模块创建日期:2013年4月24日时间:15:38:22
    [8.290000]   CMEMK 模块:构建于2013年4月24日15:38:17
    [8.290000]     参考 Linux 2.6.37版
    [8.290000]     文件/opt/d500/ti-ezsdk_dm814x-evm_5_03_01_15/component-sources/linuxutils_3_21_00_04/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
    [8.290000]   CMEM 范围与内核物理重叠-允许重叠
    [8.290000]   CMEM PHYS_START (0x96000000)与内核重叠(0x80000000 -> 0xa3a00000)
    [8.290000]   已分配大小为0x2000000的堆缓冲器0xDE000000
    [8.290000]   堆回退已启用-如果池缓冲区不可用、将尝试堆
    [8.290000]   cmemk 已初始化
    [14.230000]  INIT:因 TERM 信号而导致故障安全主过程(440)失败
    [15.560000]  VPSS_GRPX:请在继续之前停止 grpx0。
    [15.590000]  VPSS_DCTRL:无法禁用 venc。
    [15.600000]  VPSS_DCTRL:无法禁用 venc。
    [15.630000]  VPSS_DCTRL:无法禁用 venc。
    [15.640000]  VPSS_DCTRL:无法禁用 venc。
    [15.660000]  VPSS_DCTRL:无法禁用 venc。
    [15.680000]  VPSS_DCTRL:无法禁用 venc。

    ########################################################################################################################

    //my init 脚本

    ########################################################################################################################

    /bin/sh
    insmod /lib/modules/2.6.37/kernel/drivers/char/gpmc/fpgamlink.ko
    insmod /lib/modules/2.6.37/kernel/drivers/hid/usbhid/usbhid.ko
    insmod /lib/modules/2.6.37/kernel/drivers/dsp/syslink.ko
    直至[-e /dev/syslinkipc_ProcMgr ]&&[-e /dev/syslinkipc_ClientNotifyMgr ];
    操作
    睡眠0.1
    完成
    insmod /lib/modules/2.6.37/kernel/drivers/dsp/cmemk.ko phys_start=0x96000000 phys_end=0x97ffff allowOverlap=1 useHeapIfPoolUnavailable =1
    /etc/init.d/ti-codec-setup hdvicp2 start
    /usr/bin/vpdma-abort
    /etc/init.d/ti-codec-setup VPSS 开始    
    insmod /lib/modules/2.6.37/kernel/drivers/video/ti81xx/vpss/vpss.ko sbufaddr=0xBFB00000
    直至[-e /sys/devices/platform/vpss/graphics0 ]&&[-e /sys/devices/platform/vpss/display1 ];
    操作
    睡眠0.1
    完成
    回显"0">/sys/devices/platform/vpss/graphics0/enabled
    回显"0">/sys/devices/platform/vpss/graphics1/enabled
    回显"0">/sys/devices/platform/vpss/graphics2/enabled
    回显"0">/sys/devices/platform/vpss/display0/enabled
    回显"0">/sys/devices/platform/vpss/display1/enabled
    回显"0">/sys/devices/platform/vpss/display2/enabled
    insmod /lib/modules/2.6.37/kernel/drivers/video/ti81xx/ti81xxfb/ti81xxfb.ko vram=0:32M、1:16M、2:16M
    /usr/bin/prcm_config_app
    #"将 fb1配置为 LCD"
    回显"1">/sys/devices/platform/vpss/display1/enabled
    回显"1:dvo2">/sys/devices/platform/vpss/graphics0/nodes
    回显"0">/sys/devices/platform/vpss/display1/enabled
    回波"1080P-60">/sys/devices/platform/vpss/display1/mode
    回显"triplediscrete、rgb888">/sys/devices/platform/vpss/display1/output
    echo '65、1024/20/160/136、768/3/29/6、1'>/sys/devices/platform/vpss/display1/timings
    回显"1">/sys/devices/platform/vpss/display1/enabled
    fbset -xres 1024 -yres 768 -vxres 1024 -vyres 768 -fb /dev/fb0
    回显"1">/sys/devices/platform/vpss/graphics0/enabled
    退出


    ##################################
    旧负载驱动器
    描述"DM814x 固件和模块"

    在虚拟文件系统上启动
    在运行级别[06]上停止

    脚本
       回显"加载8148的固件"
       #加载 syslink 并等待 syslink 加载完成
       回显"load syslink"
       kernelname=`/bin/uname -r`
       insmod /lib/modules /"${kernelname}"/kernel/drivers/dsp/syslink.ko
       
       直至[-e /dev/syslinkipc_ProcMgr ]&&[-e /dev/syslinkipc_ClientNotifyMgr ];
       操作
         睡眠0.1
       完成
       睡眠1.
       # LVDS BL
       Echo 1 >/sys/class/gpio/gpio19/value
       
       ECHO "VPSS 开始"
       
       加载 VPSS 固件
       /usr/bin/vpdma-abort
       /etc/init.d/ti-codec-setup VPSS 开始       

       # TODO:加载 VPSS 模块之前,我们真的需要在这里等待吗????
       #睡眠2.

       #加载显示内核模块
       insmod /lib/modules "${kernelname}"/kernel/drivers/video/ti81xx/vpss/vpss.ko sbufaddr=0xBFB00000
       modprobe ths8200
       modprobe ti81xxhdmi
       modprobe ti81xx
       insmod /lib/modules /"${kernelname}"/kernel/drivers/video/ti81xx/ti81xxfb/ti81xxfb.ko vram=0:32M、1:16M、2:16M
       modprobe ti81xxfb vram=0:32M、1:16M、2:16M

       initctl emit VPSS 加载

       #重置 IVA
       /usr/bin/prcm_config_app

       #加载 HDVICP2固件
       /etc/init.d/ti-codec-setup hdvicp2启动

       #加载 DSP 固件
       /etc/init.d/ti-codec-setup DSP 启动

       回显"将 fb1配置为 LCD"
       回显"1:dvo2">/sys/devices/platform/vpss/graphics0/nodes
       回显"0">/sys/devices/platform/vpss/display1/enabled
       #echo 800x600@60>/sys/devices/platform/vpss/display1/mode    
       #echo "aclk/aclkdiv2/aclkdiff">/sys/devices/platform/vpss/display1/clksrc
       回波"1080P-60">/sys/devices/platform/vpss/display1/mode
       #echo single/double/doubledle/tripleferedic,rgb888/yuv444p/yuv422spuv、(0/1)/(0/1)/(0/1)/(0/1)>/sys/devices/platform/vpss/display1/output
       #第一个部分是同步模式、第二个部分是输出数据格式、最后一部分是 DE/FID/HS/VS 的极性、1:ACTIVE_LOW (反相)、0:ACTIVE_HIGH (NON_INVERed)。
       回显"triplediscrete、rgb888">/sys/devices/platform/vpss/display1/output
       #Modeline "1920x1080/148.50 1920 2008 2052 2200 1080 1084 1088 1125 -HSync -VSync
       #echo '148500、1920/88/44.1080/4/36/5,1'>/sys/devices/platform/vpss/display1/timings
       #148500:显示像素时钟(KHz)
       1920:显示宽度
       88:水平前沿
       148:水平后沿
       #44:水平同步宽度
       1080:显示高度
       4:垂直前沿
       36:垂直后沿
       5:垂直同步宽度
       1:渐进输出
       //M121GNX2 R1型号"1024x768" 65.00 1024 1048 1184 1344 768 771 777 806 -HSync -VSync
       echo '65、1024/20/160/136、768/3/29/6、1'>/sys/devices/platform/vpss/display1/timings
       回显"1">/sys/devices/platform/vpss/display1/enabled
       fbset -xres 1024 -yres 768 -vxres 1024 -vyres 768 -fb /dev/fb0
       fbset ----时序
       
       #加载特定于编解码器的内核模块
       insmod /lib/modules /"${kernelname}"/kernel/drivers/dsp/cmemk.ko phys_start=0x96000000 phys_end=0x97ffffolowoverlap=1 useHeapIfPoolUnavailable =1
       modprobe cmemk phys_start=0x96000000 phys_end=0x97ffffff allowOverlap=1 useHeapIfPoolUnavailable =1
       modprobe rfxtiling
       #insmod /lib/modules /"${kernelname}"/kernel/drivers/dsp/rfxtiling.ko
       initctl emit 固件已加载
       
       
       insmod /lib/modules /"${kernelname}"/kernel/drivers/char/gpmc/fpgamlink.ko
       调制探针 FPGA
       modprobe uinput
       modprobe usbhid
       insmod /lib/modules /"${kernelname}"/kernel/drivers/hid/usbhid/usbhid.ko
       #insmod /lib/modules /"${kernelname}"/kernel/drivers/gpu/drm/drm_kms_helper.ko
       #insmod /lib/modules /"${kernelname}"/kernel/drivers/gpu/drm/ti81xx/ti81xx.ko
    结束脚本