发 帖  
原厂入驻New
发烧友10周年庆典,全网超值优惠来袭!千元现金券,下单抽奖赶紧参与》》
[问答] OMAP3530目标板执行video_copy例程出错在哪里?
2019-8-23 11:40:10  132 OMAP3530 芯片 例程
分享
板子用的天漠的SBC8100,OMAP3530的芯片,256M DDR SDRAM
                                                                                       256M NAND FLASH

DVSDK是从ti网上下载的,编译codec engine 中的 video_copy例程,在主机上可以正确编译,将相关组件放到开发板上运行出错,不知道错在哪里?
运行情况如下:
        [root@OMAP3EVM 1]# ./loadmodules.sh
CMEMK module: built on Sep 22 2009 at 10:44:38
  Reference Linux version 2.6.29
  File /db/rtree/install/trees/products/davincisw-h44x/imports/dvsdk_COMMON/dvsdk_3_00_02_44/linuxutils_2_24_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
ioremap_nocache(0x90000000, 50331648)=0xd3000000
allocated heap buffer 0xd3000000 of size 0x2cac000
cmem initialized 3 pools between 0x90000000 and 0x93000000
DSPLINK Module (1.61.03) created on Date: Apr 16 2009 Time: 18:31:36
mknod: /dev/dsplink: File exists
[root@OMAP3EVM 1]# ls -a
.                 app_local.xv5T    in.dat            sdmak.ko
..                app_remote.xv5T   loadmodules.sh    unloadmodules.sh
all.x64P          cmemk.ko          lpm_omap3530.ko
app_local.x64P    dsplinkk.ko       out.dat
[root@OMAP3EVM 1]# ./app_local.x64P
./app_local.x64P: line 8: syntax error: word unexpected (expecting ")")
[root@OMAP3EVM 1]# ./app_local.xv5T
@0x000971ae:[T:0x4001cfb0] ti.sdo.ce.examples.apps.video_copy.siUnhandLED fault: external abort on non-linefetch (0x1818) at 0x40022000
nglecpu - main> ti.sdo.ce.examples.apps.video_copy.singlecpu
@0x000973d4:[T:0x4001cfb0] ti.sdo.ce.examples.apps.video_copy.singlecpu - App-> Application started.
Bus error
[root@OMAP3EVM 1]# ./app_remote.xv5T
@0x000b222c:[T:0x4001cfb0] ti.sdo.ce.examples.apps.video_copy.singlecpu - main> ti.sdo.ce.examples.apps.video_copy.singlecpu
@0x000b26d2:[T:0x4001cfb0] ti.sdo.ce.examples.apps.video_copy.singlecpu - App-> Application started.
Unhandled fault: external abort on non-linefetch (0x1818) at 0x4001f000
之前loadmodules.sh不能正确加载,手动修改了cmemk的地址,难道loadmodules.sh还是没有设置对? 还是别的哪方面的问题?
刚接触不久,小白一个,希望各位多多帮助!
0
2019-8-23 11:40:10   评论 分享淘帖
13 个讨论
能不能贴下你的kernel boot args
                                                                         如果我的回答解决了您的问题,请确认答案,谢谢!:)
2019-8-23 11:53:11 评论

举报

jvwueurw 发表于 2019-8-23 13:32
能不能贴下你的kernel boot args
                                                                         如果我的回答解决了您的问题,请确认答案,谢谢!:)

Texas Instruments X-Loader 1.41                                                                      
Starting OS Bootloader...
U-Boot 1.3.3-svn (May  5 2010 - 13:10:34)
OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
SBC8100 Board + LPDDR/NAND
DRAM:  256 MB
NAND:  256 MiB
Using default environment
Display-bmp: 480 x 272  with 256 colors
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  0
NAND read: device 0 offset 0x280000, size 0x300000
3145728 bytes read: OK
## Booting kernel from Legacy Image at 80300000 ...
  Image Name:   Linux-2.6.29-rc3-omap1
  Image Type:   ARM Linux Kernel Image (uncompressed)
  Data Size:    2212312 Bytes =  2.1 MB
  Load Address: 80008000
  Entry Point:  80008000
  Verifying Checksum ... OK
  Loading Kernel Image ... OK
OK
Starting kernel ...
Uncompressing Linux............................................................................................................................................... done, booting.
Linux version 2.6.29-rc3-omap1 (luofc@TIOP) (gcc version 4.2.1 (CodeSourcery Sourcery G++ Lite 2007q3-51)) #1 Fri Jul 9 16:06:20 CST 2010
CPU: ARMv7 Processor [411fc083] revision 3 (ARMv7), cr=10c5387f
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
Machine: OMAP3 SBC8100
Ignoring unrecognised tag 0x54410008
Memory policy: ECC disabled, Data cache writeback
OMAP3530 ES3.1 (full speed SGX, IVA2)
SRAM: Mapped pa 0x40200000 to va 0xd7000000 size: 0x100000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
Kernel command line: console=ttyS2,115200n8 ubi.mtd=4 root=ubi0:rootfs rootfstype=ubifs video=omapfb:mode:4.3inch_LCD
Clocking rate (Crystal/DPLL/MPU core): 26.0/266/500 MHz
IVA2 clocking rate: 360 MHz
Reprogramming SDRC
dpll3_m2_clk rate change failed: -22
GPMC revision 5.0
IRQ: Found an INTC at 0xd8200000 (revision 4.0) with 96 interrupts
Total of 96 interrupts on 1 active controller
OMAP34xx GPIO hardware version 2.5
PID hash table entries: 1024 (order: 10, 4096 bytes)
OMAP clockevent source: GPTIMER1 at 32768 Hz
Console: colour dummy device 80x30
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 128MB 128MB = 256MB total
Memory: 254976KB available (4072K code, 371K data, 164K init)
Calibrating delay loop... 499.92 BogoMIPS (lpj=1949696)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 520 bytes
NET: Registered protocol family 16
omap3evmdc: Driver registration complete
OMAP DMA hardware revision 4.0
USB: No board-specific platform config found
OMAP DSS rev 2.0
OMAP DISPC rev 3.0
OMAP VENC rev 2
OMAP DSI rev 1.0
bio: create slab <bio-0> at 0
i2c_omap i2c_omap.1: bus 1 rev3.12 at 2600 kHz
twl4030: PIH (irq 7) chaining IRQs 368..375
twl4030: power (irq 373) chaining IRQs 376..383
twl4030: gpio (irq 368) chaining IRQs 384..401
i2c_omap i2c_omap.2: bus 2 rev3.12 at 400 kHz
i2c_omap i2c_omap.3: bus 3 rev3.12 at 400 kHz
SCSI subsystem initialized
twl4030_usb twl4030_usb: Initialized TWL4030 USB module
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
musb_hdrc: version 6.0, musb-dma, peripheral, debug=0
musb_hdrc: USB Peripheral mode controller at d80ab000 using DMA, IRQ 92
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
NET: Registered protocol family 1
OMAP35x Linux PSP version 02.01.03.11 (OMAP3EVM)
NetWinder Floating Point Emulator V0.97 (double precision)
VFS: Disk quotas dquot_6.5.2
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
JFFS2 version 2.2. (NAND) �© 2001-2006 Red Hat, Inc.
msgmni has been set to 498
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
Generic Backlight Driver Initialized.
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
serial8250.0: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
serial8250.0: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16654
console [ttyS2] enabled
brd: module loaded
loop: module loaded
dm9000 Ethernet Driver, V1.31
eth0 (dm9000): not using net_device_ops yet
eth0: dm9000a at d08b2000,d08b6400 IRQ 185 MAC: 00:11:22:33:44:55 (chip)
Linux video capture interface: v2.00
tvp514x 2-005d: Registered to v4l2 master omap34xxcam!!
usbcore: registered new interface driver uvcvideo
USB Video Class driver (v0.1.0)
i2c /dev entries driver
Driver 'sd' needs updating - please use bus_type methods
omap2-nand driver initializing
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xba (Micron NAND 256MiB 1,8V 16-bit)
Creating 5 MTD partitions on "omap2-nand.0":
0x000000000000-0x000000080000 : "X-Loader"
0x000000080000-0x000000260000 : "U-Boot"
0x000000260000-0x000000280000 : "U-Boot Env"
0x000000280000-0x000000680000 : "Kernel"
0x000000680000-0x000010000000 : "File System"
UBI: attaching mtd4 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    129024 bytes
UBI: smallest flash I/O unit:    2048
UBI: sub-page size:              512
UBI: VID header offset:          512 (aligned 512)
UBI: data offset:                2048
UBI: attached mtd4 to ubi0
UBI: MTD device name:            "File System"
UBI: MTD device size:            249 MiB
UBI: number of good PEBs:        1996
UBI: number of bad PEBs:         0
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     1
UBI: available PEBs:             0
UBI: total number of reserved PEBs: 1996
UBI: number of PEBs reserved for bad PEB handling: 19
UBI: max/mean erase counter: 2/1
usbmon: debugfs is not available
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
UBI: background thread "ubi_bgt0d" started, PID 407
ehci-omap ehci-omap.0: new USB bus registered, assigned bus number 1
ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
g_ether gadget: using random self ethernet address
g_ether gadget: using random host ethernet address
usb0: MAC f2:c2:9b:db:f0:48
usb0: HOST MAC ba:a2:7a:a9:2a:8c
g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
g_ether gadget: g_ether ready
input: omap_twl4030keypad as /class/input/input0
ads7846 spi2.0: touchscreen, irq 187
input: ADS784x Touchscreen as /class/input/input1
twl4030_rtc twl4030_rtc: rtc core: registered twl4030_rtc as rtc0
twl4030_rtc twl4030_rtc: Power up reset detected.
twl4030_rtc twl4030_rtc: Enabling TWL4030-RTC.
OMAP Watchdog Timer Rev 0x31: initial timeout 60 sec
cpuidle: using governor ladder
cpuidle: using governor menu
register sdio_ti_driver is OK!
Registered led device: led0
Registered led device: led1
usb 1-1: new high speed USB device using ehci-omap and address 2
Registered led device: led2
mmc1: new SDIO card at address 0001
Registered led device: led3
ti_sdio_probe: Add glue driver
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.19.
No device for DAI twl4030
No device for DAI twl4030 Voice
No device for DAI omap-mcbsp-dai-0
No device for DAI omap-mcbsp-dai-1
No device for DAI omap-mcbsp-dai-2
No device for DAI omap-mcbsp-dai-3
No device for DAI omap-mcbsp-dai-4
TWL4030 Audio Codec init
asoc: twl4030 <-> omap-mcbsp-dai-0 mapping ok
usb 1-1: config 1 has an invalid descriptor of length 0, skipping remainder of the config
usb 1-1: config 1 interface 0 altsetting 1 has 0 endpoint descriptors, different from the interface descriptor's value: 1
ALSA device list:
 #0: omap3evm (twl4030)
TCP cubic registered
NET: Registered protocol family 17
NET: Registered protocol family 15
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
Power Management for TI OMAP3.
usb 1-1: configuration #1 chosen from 1 choice
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
SmartReflex driver initialized
VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 1
omapfb: using mode 4.3inch_LCD
Console: switching to colour frame buffer device 60x34
GPIO-153 autorequested
omap-dss DISPC error: Requested pixel clock not possible with the current OMAP2_DSS_MIN_FCK_PER_PCK setting. Turning the constraint off.
tvp514x 2-005d: tvp5146m2 found at 0xba (OMAP I2C adapter)
hub 1-1:1.0: activate --> -2
omap34xxcam omap34xxcam: video0 is now omap3/tvp514x//
Display already enabled
Display already enabled
Buffer Size = 3686400
omap_vout: registered and initialized                   video device 1 [v4l2]
Buffer Size = 3686400
omap_vout: registered and initialized                   video device 2 [v4l2]
display->updated
twl4030_rtc twl4030_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
UBIFS: recovery needed
UBIFS: recovery completed
UBIFS: mounted UBI device 0, volume 0, name "rootfs"
UBIFS: file system size:   103348224 bytes (100926 KiB, 98 MiB, 801 LEBs)
UBIFS: journal size:       9033728 bytes (8822 KiB, 8 MiB, 71 LEBs)
UBIFS: media format:       4 (latest is 4)
UBIFS: default compressor: lzo
UBIFS: reserved for root:  0 bytes (0 KiB)
VFS: Mounted root (ubifs filesystem) on device 252:1.
Freeing init memory: 164K
init started: BusyBox v1.9.1 (2008-10-17 18:20:44 IST)
starting pid 482, tty '': '/etc/init.d/rcS'
   System initialization...
   Hostname       : OMAP3EVM
   Filesystem     : v1.0.2
   Kernel release : Linux 2.6.29-rc3-omap1
   Kernel version : #1 Fri Jul 9 16:06:20 CST 2010
Mounting /proc             : [SUCCESS]
Mounting /sys              : [SUCCESS]
Mounting /dev              : [SUCCESS]
Mounting /dev/pts          : [SUCCESS]
Enabling hot-plug          : [SUCCESS]
Populating /dev            : [SUCCESS]
Mounting other filesystems : [SUCCESS]
Starting syslogd           : [SUCCESS]
Starting telnetd           : Jan  1 00:00:01 OMAP3EVM syslog.info syslogd started: BusyBox v1.9.1
[SUCCESS]
eth0: link down
System initialization complete.
start aging test...
interval = 86400 second
Please press Enter to activate this console.
2019-8-23 12:08:05 评论

举报

这是板子上NAND FLASH固化的嵌入式Linux,会不会这个板子上的Linux系统不合适?需要特定的Linux,比如MontaVista Linux什么的?
2019-8-23 12:24:43 评论

举报

nmmmma 发表于 2019-8-23 14:03
这是板子上NAND FLASH固化的嵌入式Linux,会不会这个板子上的Linux系统不合适?需要特定的Linux,比如MontaVista Linux什么的?

我看了下,板子上固化的Linux,使用了整个0x80000000~0x90000000 的空间,我给cmem的地址,是在0x9000000以后的地址段分配的,是不是这也是不对的?大致要怎么改呢,特别是板子上的Linux要怎么改吗?谢谢了!
2019-8-23 12:36:32 评论

举报

你好,我觉得你这个问题应该就是arm和dsp的cmem共享内存地址分配错误了,呵呵dvsdk单单在linux比起在android下使用简单多了,你的地址分配 loadmodules.sh 可以参考dvsdk目录下面的/dvsdk/codec-engine_2_26_02_11/examples/apps/system_files/OMAP3530/,然后关键是设好botargs 中的mem,我的
mem=68M@0x80000000mem=128M@0x88000000,预留了60M给dsp和arm共享通信,实际在loadmodules,sh申请了大概是10M,希望对你有帮助
可以参考http://community.csdn.net/
2019-8-23 12:48:45 评论

举报

feiyu25 发表于 2019-8-23 14:27
你好,我觉得你这个问题应该就是arm和dsp的cmem共享内存地址分配错误了,呵呵dvsdk单单在linux比起在android下使用简单多了,你的地址分配 loadmodules.sh 可以参考dvsdk目录下面的/dvsdk/codec-engine_2_26_02_11/examples/apps/system_files/OMAP3530/,然后关键是设好botargs 中的mem,我的
mem=68M@0x80000000mem=128M@0 ...

忘了说下我的内存也是256M ,0x8到0x9也就刚好256,所以你去外面申请当然没用根本没有空间了啊,这个我之前也干过这种傻事
2019-8-23 13:03:03 评论

举报

feiyu25 发表于 2019-8-23 14:27
你好,我觉得你这个问题应该就是arm和dsp的cmem共享内存地址分配错误了,呵呵dvsdk单单在linux比起在android下使用简单多了,你的地址分配 loadmodules.sh 可以参考dvsdk目录下面的/dvsdk/codec-engine_2_26_02_11/examples/apps/system_files/OMAP3530/,然后关键是设好botargs 中的mem,我的
mem=68M@0x80000000mem=128M@0 ...

botargs 中的mem 在哪设置,是在开发板的源码里吗? 那需要重新编译内核并烧到板子上吗?
2019-8-23 13:18:59 评论

举报

feiyu25 发表于 2019-8-23 14:42
忘了说下我的内存也是256M ,0x8到0x9也就刚好256,所以你去外面申请当然没用根本没有空间了啊,这个我之前也干过这种傻事

谢谢了,呵呵!刚接触,好多都不了解~
2019-8-23 13:32:22 评论

举报

nmmmma 发表于 2019-8-23 14:58
botargs 中的mem 在哪设置,是在开发板的源码里吗? 那需要重新编译内核并烧到板子上吗?

这个在uboot启动的参数设置啊,没弄过吗
2019-8-23 13:45:09 评论

举报

feiyu25 发表于 2019-8-23 15:24
这个在uboot启动的参数设置啊,没弄过吗

网上搜了下,知道怎么设置了,谢了呵
2019-8-23 14:04:50 评论

举报

nmmmma 发表于 2019-8-23 15:43
网上搜了下,知道怎么设置了,谢了呵

你是怎么设置的啊
2019-8-23 14:15:41 评论

举报

feiyu25 发表于 2019-8-23 14:27
你好,我觉得你这个问题应该就是arm和dsp的cmem共享内存地址分配错误了,呵呵dvsdk单单在linux比起在android下使用简单多了,你的地址分配 loadmodules.sh 可以参考dvsdk目录下面的/dvsdk/codec-engine_2_26_02_11/examples/apps/system_files/OMAP3530/,然后关键是设好botargs 中的mem,我的
mem=68M@0x80000000mem=128M@0 ...

不好意思,我想问下,你是怎么设置botargs中的mem的
2019-8-23 14:30:07 评论

举报

wtrwefsdf 发表于 2019-8-23 16:09
不好意思,我想问下,你是怎么设置botargs中的mem的

参考TI的官网bootargs
2019-8-23 14:46:32 评论

举报

只有小组成员才能发言,加入小组>>

732个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /10 下一条

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