summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: a7cf629)
raw | patch | inline | side by side (parent: a7cf629)
author | pprakash <pprakash@3e7d0a5c-36b1-4332-b55e-d4e532acd6f9> | |
Fri, 24 Jun 2011 17:33:36 +0000 (17:33 +0000) | ||
committer | pprakash <pprakash@3e7d0a5c-36b1-4332-b55e-d4e532acd6f9> | |
Fri, 24 Jun 2011 17:33:36 +0000 (17:33 +0000) |
26 files changed:
diff --git a/saDstColorkey/.project b/saDstColorkey/.project
index 8f05a8f762cb11bc52a87b4d27d5ebdf33344faa..3e6abf7758bbe7b9279d2f842fa07c3ed754e424 100644 (file)
--- a/saDstColorkey/.project
+++ b/saDstColorkey/.project
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>saGraphicsARGB</name>
+ <name>saDstColorkey</name>
<comment></comment>
<projects>
</projects>
index 7360f8a4833975daea76ccfd080bfc028e4a1db6..525750c6bec5b7063c68a49cc88e276e36e7b9a6 100644 (file)
1467 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saDstColorkey.c
- /tmp/ccExmX24.s:20 .text:00000000 $a
- /tmp/ccExmX24.s:23 .text:00000000 fill_vid_bufs
- /tmp/ccExmX24.s:111 .text:0000008c $d
+ /tmp/ccdZFQ3A.s:20 .text:00000000 $a
+ /tmp/ccdZFQ3A.s:23 .text:00000000 fill_vid_bufs
+ /tmp/ccdZFQ3A.s:111 .text:0000008c $d
.ARM.exidx:00000000 $d
- /tmp/ccExmX24.s:117 .text:00000094 $a
- /tmp/ccExmX24.s:120 .text:00000094 fill_graphics_buffer
- /tmp/ccExmX24.s:189 .text:00000100 $d
- /tmp/ccExmX24.s:193 .text:00000104 $a
- /tmp/ccExmX24.s:196 .text:00000104 main
- /tmp/ccExmX24.s:327 .text:0000022c $d
- /tmp/ccExmX24.s:344 .text:00000258 video1_threadfun
- /tmp/ccExmX24.s:939 .text:000007b8 graphics_threadfun
- /tmp/ccExmX24.s:341 .text:00000258 $a
- /tmp/ccExmX24.s:871 .text:0000071c $d
- /tmp/ccExmX24.s:903 .text:00000790 $a
- /tmp/ccExmX24.s:906 .text:00000790 set_gbobal_alpha
- /tmp/ccExmX24.s:930 .text:000007b0 $d
- /tmp/ccExmX24.s:936 .text:000007b8 $a
- /tmp/ccExmX24.s:1182 .text:00000a18 $d
- /tmp/ccExmX24.s:1198 .rodata:00000000 $d
- /tmp/ccExmX24.s:1202 .rodata:00000000 ycbcr
- /tmp/ccExmX24.s:1213 .rodata.str1.1:00000000 $d
- /tmp/ccExmX24.s:1290 .data:00000000 $d
- /tmp/ccExmX24.s:1294 .data:00000000 dev_name
- /tmp/ccExmX24.s:1300 .data:00000020 loop_count
- /tmp/ccExmX24.s:1304 .data:00000024 display_dev_name
- /tmp/ccExmX24.s:1307 .data:00000042 $d
+ /tmp/ccdZFQ3A.s:117 .text:00000094 $a
+ /tmp/ccdZFQ3A.s:120 .text:00000094 fill_graphics_buffer
+ /tmp/ccdZFQ3A.s:189 .text:00000100 $d
+ /tmp/ccdZFQ3A.s:193 .text:00000104 $a
+ /tmp/ccdZFQ3A.s:196 .text:00000104 main
+ /tmp/ccdZFQ3A.s:327 .text:0000022c $d
+ /tmp/ccdZFQ3A.s:344 .text:00000258 video1_threadfun
+ /tmp/ccdZFQ3A.s:939 .text:000007b8 graphics_threadfun
+ /tmp/ccdZFQ3A.s:341 .text:00000258 $a
+ /tmp/ccdZFQ3A.s:871 .text:0000071c $d
+ /tmp/ccdZFQ3A.s:903 .text:00000790 $a
+ /tmp/ccdZFQ3A.s:906 .text:00000790 set_gbobal_alpha
+ /tmp/ccdZFQ3A.s:930 .text:000007b0 $d
+ /tmp/ccdZFQ3A.s:936 .text:000007b8 $a
+ /tmp/ccdZFQ3A.s:1182 .text:00000a18 $d
+ /tmp/ccdZFQ3A.s:1198 .rodata:00000000 $d
+ /tmp/ccdZFQ3A.s:1202 .rodata:00000000 ycbcr
+ /tmp/ccdZFQ3A.s:1213 .rodata.str1.1:00000000 $d
+ /tmp/ccdZFQ3A.s:1290 .data:00000000 $d
+ /tmp/ccdZFQ3A.s:1294 .data:00000000 dev_name
+ /tmp/ccdZFQ3A.s:1300 .data:00000020 loop_count
+ /tmp/ccdZFQ3A.s:1304 .data:00000024 display_dev_name
+ /tmp/ccdZFQ3A.s:1307 .data:00000042 $d
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
index 498d7bb6de81d965b6be950aaa808a6d799eeec9..3c20140f1870a6c767cb75595b37ac85f9b3d2cf 100755 (executable)
--- a/saFbdevDisplay/.project
+++ b/saFbdevDisplay/.project
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>saGraphicsARGB</name>
+ <name>saFbdevDisplay</name>
<comment></comment>
<projects>
</projects>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saGraphicsARGB/Release}</value>
+ <value>${workspace_loc:/saGraphicsARGB/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
index 51d124f143b32b27e0984d731c67cbb9b4da91f3..36f2a0ccceef113a286cc08c2073c695471b85a3 100644 (file)
669 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saFbdevDisplay.c
- /tmp/ccEXGofW.s:20 .text:00000000 $a
- /tmp/ccEXGofW.s:23 .text:00000000 fill_color_bar
- /tmp/ccEXGofW.s:148 .text:000000d0 $d
+ /tmp/ccWwHLsg.s:20 .text:00000000 $a
+ /tmp/ccWwHLsg.s:23 .text:00000000 fill_color_bar
+ /tmp/ccWwHLsg.s:148 .text:000000d0 $d
.ARM.exidx:00000000 $d
- /tmp/ccEXGofW.s:153 .text:000000d8 $a
- /tmp/ccEXGofW.s:155 .text:000000d8 app_main
- /tmp/ccEXGofW.s:370 .text:000002d0 $d
- /tmp/ccEXGofW.s:392 .text:0000031c $a
- /tmp/ccEXGofW.s:395 .text:0000031c main
- /tmp/ccEXGofW.s:493 .text:000003e4 $d
- /tmp/ccEXGofW.s:502 .rodata:00000000 $d
- /tmp/ccEXGofW.s:506 .rodata:00000000 ycbcr
- /tmp/ccEXGofW.s:525 .rodata.str1.1:00000000 $d
- /tmp/ccEXGofW.s:571 .data:00000000 $d
- /tmp/ccEXGofW.s:575 .data:00000000 dev_name
- /tmp/ccEXGofW.s:581 .data:00000020 loop_count
+ /tmp/ccWwHLsg.s:153 .text:000000d8 $a
+ /tmp/ccWwHLsg.s:155 .text:000000d8 app_main
+ /tmp/ccWwHLsg.s:370 .text:000002d0 $d
+ /tmp/ccWwHLsg.s:392 .text:0000031c $a
+ /tmp/ccWwHLsg.s:395 .text:0000031c main
+ /tmp/ccWwHLsg.s:493 .text:000003e4 $d
+ /tmp/ccWwHLsg.s:502 .rodata:00000000 $d
+ /tmp/ccWwHLsg.s:506 .rodata:00000000 ycbcr
+ /tmp/ccWwHLsg.s:525 .rodata.str1.1:00000000 $d
+ /tmp/ccWwHLsg.s:571 .data:00000000 $d
+ /tmp/ccWwHLsg.s:575 .data:00000000 dev_name
+ /tmp/ccWwHLsg.s:581 .data:00000020 loop_count
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
index 498d7bb6de81d965b6be950aaa808a6d799eeec9..28d3351bdb42b5c00f4df0296717b154d1478607 100755 (executable)
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>saGraphicsARGB</name>
+ <name>saFbdevDisplayPan</name>
<comment></comment>
<projects>
</projects>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saGraphicsARGB/Release}</value>
+ <value>${workspace_loc:/saGraphicsARGB/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
diff --git a/saFbdevDisplayPan/Debug/saFbdevDisplayPan.o.lst b/saFbdevDisplayPan/Debug/saFbdevDisplayPan.o.lst
index fddc0fd36c9fa27a7baf6afa5d7c36656866d7ae..81689424d081e050776ff9e9b5fb456ddfd016df 100644 (file)
784 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saFbdevDisplayPan.c
- /tmp/ccshg6z3.s:20 .text:00000000 $a
- /tmp/ccshg6z3.s:23 .text:00000000 fill_color_bar
- /tmp/ccshg6z3.s:76 .text:00000058 $d
+ /tmp/ccuRw39g.s:20 .text:00000000 $a
+ /tmp/ccuRw39g.s:23 .text:00000000 fill_color_bar
+ /tmp/ccuRw39g.s:76 .text:00000058 $d
.ARM.exidx:00000000 $d
- /tmp/ccshg6z3.s:83 .text:0000005c $a
- /tmp/ccshg6z3.s:85 .text:0000005c app_main
- /tmp/ccshg6z3.s:466 .text:000003e0 $d
+ /tmp/ccuRw39g.s:83 .text:0000005c $a
+ /tmp/ccuRw39g.s:85 .text:0000005c app_main
+ /tmp/ccuRw39g.s:466 .text:000003e0 $d
.ARM.extab:00000000 $d
- /tmp/ccshg6z3.s:499 .text:00000458 $a
- /tmp/ccshg6z3.s:502 .text:00000458 main
- /tmp/ccshg6z3.s:600 .text:00000520 $d
- /tmp/ccshg6z3.s:609 .rodata:00000000 $d
- /tmp/ccshg6z3.s:613 .rodata:00000000 ycbcr
- /tmp/ccshg6z3.s:624 .rodata.str1.1:00000000 $d
- /tmp/ccshg6z3.s:688 .data:00000000 $d
- /tmp/ccshg6z3.s:692 .data:00000000 dev_name
- /tmp/ccshg6z3.s:698 .data:00000020 loop_count
+ /tmp/ccuRw39g.s:499 .text:00000458 $a
+ /tmp/ccuRw39g.s:502 .text:00000458 main
+ /tmp/ccuRw39g.s:600 .text:00000520 $d
+ /tmp/ccuRw39g.s:609 .rodata:00000000 $d
+ /tmp/ccuRw39g.s:613 .rodata:00000000 ycbcr
+ /tmp/ccuRw39g.s:624 .rodata.str1.1:00000000 $d
+ /tmp/ccuRw39g.s:688 .data:00000000 $d
+ /tmp/ccuRw39g.s:692 .data:00000000 dev_name
+ /tmp/ccuRw39g.s:698 .data:00000020 loop_count
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
index d936789487c59b96984c189e8b9d00039fc0101a..31518e1e341229e31acab0c9b93317f50c1a2ffe 100755 (executable)
%.o: ../%.c
@echo 'Building file: $<'
@echo 'Invoking: ARM Sourcery Linux GCC C Compiler'
- $(CROSS_COMPILE)gcc -I$(LINUXKERNEL_INSTALL_DIR)include -Os $(CFLAGS) -Wall -Wa,-adhlns="$@.lst" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -mcpu=cortex-a8 -g -gdwarf-2 -o"$@" "$<"
+ $(CROSS_COMPILE)gcc -I$(LINUXKERNEL_INSTALL_DIR)/include -Os $(CFLAGS) -Wall -Wa,-adhlns="$@.lst" -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -mcpu=cortex-a8 -g -gdwarf-2 -o"$@" "$<"
@echo 'Finished building: $<'
@echo ' '
index 498d7bb6de81d965b6be950aaa808a6d799eeec9..b9a829ce0b67a337e28dead0b82c5718775e60e1 100755 (executable)
--- a/saFbdevRotation/.project
+++ b/saFbdevRotation/.project
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>saGraphicsARGB</name>
+ <name>saFbdevRotation</name>
<comment></comment>
<projects>
</projects>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saGraphicsARGB/Release}</value>
+ <value>${workspace_loc:/saGraphicsARGB/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
diff --git a/saFbdevRotation/Debug/saFbdevRotation.o.lst b/saFbdevRotation/Debug/saFbdevRotation.o.lst
index 02ac704811e28efc239dbe5c307af398ff8ff8a4..1d4165d73981fc100fd25df07f58f805dbf1962d 100644 (file)
713 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saFbdevRotation.c
- /tmp/cciP3pRm.s:20 .text:00000000 $a
- /tmp/cciP3pRm.s:23 .text:00000000 fill_color_bar
- /tmp/cciP3pRm.s:94 .text:00000070 $d
+ /tmp/ccRUm3Uo.s:20 .text:00000000 $a
+ /tmp/ccRUm3Uo.s:23 .text:00000000 fill_color_bar
+ /tmp/ccRUm3Uo.s:94 .text:00000070 $d
.ARM.exidx:00000000 $d
- /tmp/cciP3pRm.s:99 .text:00000074 $a
- /tmp/cciP3pRm.s:102 .text:00000074 main
- /tmp/cciP3pRm.s:552 .text:000004f0 $d
- /tmp/cciP3pRm.s:580 .rodata:00000000 $d
- /tmp/cciP3pRm.s:584 .rodata:00000000 ycbcr
- /tmp/cciP3pRm.s:595 .rodata.str1.1:00000000 $d
- /tmp/cciP3pRm.s:646 .data:00000000 dev_name
- /tmp/cciP3pRm.s:647 .data:00000000 $d
+ /tmp/ccRUm3Uo.s:99 .text:00000074 $a
+ /tmp/ccRUm3Uo.s:102 .text:00000074 main
+ /tmp/ccRUm3Uo.s:552 .text:000004f0 $d
+ /tmp/ccRUm3Uo.s:580 .rodata:00000000 $d
+ /tmp/ccRUm3Uo.s:584 .rodata:00000000 ycbcr
+ /tmp/ccRUm3Uo.s:595 .rodata.str1.1:00000000 $d
+ /tmp/ccRUm3Uo.s:646 .data:00000000 dev_name
+ /tmp/ccRUm3Uo.s:647 .data:00000000 $d
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
index 498d7bb6de81d965b6be950aaa808a6d799eeec9..8f05a8f762cb11bc52a87b4d27d5ebdf33344faa 100755 (executable)
--- a/saGraphicsARGB/.project
+++ b/saGraphicsARGB/.project
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saGraphicsARGB/Release}</value>
+ <value>${workspace_loc:/saGraphicsARGB/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
index ca40a1801bcb7112d0009f50642a18ca61500bb5..8274be7fbcbd0c7bc82af8d402f44bbb4036242d 100644 (file)
1687 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saGraphicsARGB.c
- /tmp/ccik3J7W.s:20 .text:00000000 $a
- /tmp/ccik3J7W.s:23 .text:00000000 fill
- /tmp/ccik3J7W.s:173 .text:00000144 $d
+ /tmp/ccLx4blr.s:20 .text:00000000 $a
+ /tmp/ccLx4blr.s:23 .text:00000000 fill
+ /tmp/ccLx4blr.s:173 .text:00000144 $d
.ARM.exidx:00000000 $d
- /tmp/ccik3J7W.s:179 .text:00000150 $a
- /tmp/ccik3J7W.s:182 .text:00000150 main
- /tmp/ccik3J7W.s:426 .text:00000388 $d
- /tmp/ccik3J7W.s:446 .text:000003c0 video1_threadfun
- /tmp/ccik3J7W.s:1130 .text:00000a2c graphics_threadfun
- /tmp/ccik3J7W.s:443 .text:000003c0 $a
- /tmp/ccik3J7W.s:1093 .text:000009b0 $d
- /tmp/ccik3J7W.s:1127 .text:00000a2c $a
- /tmp/ccik3J7W.s:1416 .text:00000cd0 $d
+ /tmp/ccLx4blr.s:179 .text:00000150 $a
+ /tmp/ccLx4blr.s:182 .text:00000150 main
+ /tmp/ccLx4blr.s:426 .text:00000388 $d
+ /tmp/ccLx4blr.s:446 .text:000003c0 video1_threadfun
+ /tmp/ccLx4blr.s:1130 .text:00000a2c graphics_threadfun
+ /tmp/ccLx4blr.s:443 .text:000003c0 $a
+ /tmp/ccLx4blr.s:1093 .text:000009b0 $d
+ /tmp/ccLx4blr.s:1127 .text:00000a2c $a
+ /tmp/ccLx4blr.s:1416 .text:00000cd0 $d
.ARM.extab:00000000 $d
- /tmp/ccik3J7W.s:1431 .rodata.str1.1:00000000 $d
- /tmp/ccik3J7W.s:1501 .data:00000000 $d
- /tmp/ccik3J7W.s:1505 .data:00000000 vid_dev_name
- /tmp/ccik3J7W.s:1511 .data:00000020 loop_count
- /tmp/ccik3J7W.s:1515 .data:00000024 fb_dev_name
- /tmp/ccik3J7W.s:1519 .bss:00000000 $d
- /tmp/ccik3J7W.s:1524 .bss:00000000 count.4605
- /tmp/ccik3J7W.s:1528 .bss:00000004 direction.4606
- /tmp/ccik3J7W.s:1532 .bss:00000008 count1.4607
- /tmp/ccik3J7W.s:1537 .bss:0000000c graphics
- /tmp/ccik3J7W.s:1541 .bss:0006a40c video1
- /tmp/ccik3J7W.s:1518 .data:00000042 $d
+ /tmp/ccLx4blr.s:1431 .rodata.str1.1:00000000 $d
+ /tmp/ccLx4blr.s:1501 .data:00000000 $d
+ /tmp/ccLx4blr.s:1505 .data:00000000 vid_dev_name
+ /tmp/ccLx4blr.s:1511 .data:00000020 loop_count
+ /tmp/ccLx4blr.s:1515 .data:00000024 fb_dev_name
+ /tmp/ccLx4blr.s:1519 .bss:00000000 $d
+ /tmp/ccLx4blr.s:1524 .bss:00000000 count.4605
+ /tmp/ccLx4blr.s:1528 .bss:00000004 direction.4606
+ /tmp/ccLx4blr.s:1532 .bss:00000008 count1.4607
+ /tmp/ccLx4blr.s:1537 .bss:0000000c graphics
+ /tmp/ccLx4blr.s:1541 .bss:0006a40c video1
+ /tmp/ccLx4blr.s:1518 .data:00000042 $d
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
diff --git a/saMmapDisplay/.project b/saMmapDisplay/.project
index b84c667695512d2345fff90abc6590947b729780..7031998a928b550a2d395bfd4fffe968a70e5043 100755 (executable)
--- a/saMmapDisplay/.project
+++ b/saMmapDisplay/.project
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saMmapDisplay/Release}</value>
+ <value>${workspace_loc:/saMmapDisplay/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
index 6694cc742e699f9ee684c1f25a22edade123096d..aee11b340e357fe24ad2c22f5e014d28b545a581 100644 (file)
1037 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saMmapDisplay.c
- /tmp/ccTFNjqh.s:20 .text:00000000 $a
- /tmp/ccTFNjqh.s:23 .text:00000000 color_bar
- /tmp/ccTFNjqh.s:103 .text:00000084 $d
+ /tmp/cch86aZd.s:20 .text:00000000 $a
+ /tmp/cch86aZd.s:23 .text:00000000 color_bar
+ /tmp/cch86aZd.s:103 .text:00000084 $d
.ARM.exidx:00000000 $d
- /tmp/ccTFNjqh.s:107 .text:00000088 $a
- /tmp/ccTFNjqh.s:109 .text:00000088 releaseDisplay
- /tmp/ccTFNjqh.s:151 .text:000000dc $d
- /tmp/ccTFNjqh.s:160 .text:000000e8 $a
- /tmp/ccTFNjqh.s:163 .text:000000e8 app_main
- /tmp/ccTFNjqh.s:666 .text:00000520 $d
- /tmp/ccTFNjqh.s:701 .text:000005a0 $a
- /tmp/ccTFNjqh.s:704 .text:000005a0 main
- /tmp/ccTFNjqh.s:817 .text:00000694 $d
- /tmp/ccTFNjqh.s:828 .rodata:00000000 $d
- /tmp/ccTFNjqh.s:832 .rodata:00000000 ycbcr
- /tmp/ccTFNjqh.s:843 .rodata.str1.1:00000000 $d
- /tmp/ccTFNjqh.s:890 .data:00000000 $d
- /tmp/ccTFNjqh.s:894 .data:00000000 numbuffers
- /tmp/ccTFNjqh.s:898 .data:00000004 display_dev_name
- /tmp/ccTFNjqh.s:904 .data:00000024 loop_count
- /tmp/ccTFNjqh.s:907 .bss:00000000 $d
- /tmp/ccTFNjqh.s:911 .bss:00000000 display_buff_info
- /tmp/ccTFNjqh.s:915 .bss:00000024 display_fd
- /tmp/ccTFNjqh.s:919 .bss:00000028 is_perf_en
+ /tmp/cch86aZd.s:107 .text:00000088 $a
+ /tmp/cch86aZd.s:109 .text:00000088 releaseDisplay
+ /tmp/cch86aZd.s:151 .text:000000dc $d
+ /tmp/cch86aZd.s:160 .text:000000e8 $a
+ /tmp/cch86aZd.s:163 .text:000000e8 app_main
+ /tmp/cch86aZd.s:666 .text:00000520 $d
+ /tmp/cch86aZd.s:701 .text:000005a0 $a
+ /tmp/cch86aZd.s:704 .text:000005a0 main
+ /tmp/cch86aZd.s:817 .text:00000694 $d
+ /tmp/cch86aZd.s:828 .rodata:00000000 $d
+ /tmp/cch86aZd.s:832 .rodata:00000000 ycbcr
+ /tmp/cch86aZd.s:843 .rodata.str1.1:00000000 $d
+ /tmp/cch86aZd.s:890 .data:00000000 $d
+ /tmp/cch86aZd.s:894 .data:00000000 numbuffers
+ /tmp/cch86aZd.s:898 .data:00000004 display_dev_name
+ /tmp/cch86aZd.s:904 .data:00000024 loop_count
+ /tmp/cch86aZd.s:907 .bss:00000000 $d
+ /tmp/cch86aZd.s:911 .bss:00000000 display_buff_info
+ /tmp/cch86aZd.s:915 .bss:00000024 display_fd
+ /tmp/cch86aZd.s:919 .bss:00000028 is_perf_en
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
index 68a2da266b7db49b73e2e062ed5f18cf661838df..7af4c79696c38c69290573e71ac336736082b59a 100644 (file)
--- a/saMmapLoopback/.project
+++ b/saMmapLoopback/.project
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saMmapLoopback/Release}</value>
+ <value>${workspace_loc:/saMmapLoopback/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
index a3ff388d155a41aa7f9a3cdee8974159b87cc0c6..5a4147aaf6df3d97344197607104802e905108fb 100644 (file)
145 .loc 1 702 0
146 00d0 78329FE5 ldr r3, .L38+28
703:../saMmapLoopback.c **** control.value = 90;
- 704:../saMmapLoopback.c **** //control.value = 0;
- 705:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_S_CTRL, &control);
- 147 .loc 1 705 0
+ 704:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_S_CTRL, &control);
+ 147 .loc 1 704 0
148 00d4 000095E5 ldr r0, [r5, #0]
149 00d8 C8208DE2 add r2, sp, #200
150 00dc 70129FE5 ldr r1, .L38+32
153 .loc 1 703 0
154 00e4 5A30A0E3 mov r3, #90
155 00e8 CC308DE5 str r3, [sp, #204]
- 156 .loc 1 705 0
+ 156 .loc 1 704 0
157 00ec FEFFFFEB bl ioctl
- 706:../saMmapLoopback.c **** if (ret < 0) {
- 158 .loc 1 706 0
+ 705:../saMmapLoopback.c **** if (ret < 0) {
+ 158 .loc 1 705 0
159 00f0 000050E3 cmp r0, #0
160 00f4 060000AA bge .L31
161 00f8 020000EA b .L37
165 0100 50029FE5 ldr r0, .L38+36
166 0104 260000EA b .L34
167 .L37:
- 707:../saMmapLoopback.c **** perror("VIDIOC_S_CTRL");
- 168 .loc 1 707 0
+ 706:../saMmapLoopback.c **** perror("VIDIOC_S_CTRL");
+ 168 .loc 1 706 0
169 0108 4C029FE5 ldr r0, .L38+40
170 .LVL6:
171 .L33:
176 .loc 1 677 0
177 0114 044085E2 add r4, r5, #4
178 .LVL8:
- 708:../saMmapLoopback.c **** goto ERROR;
- 709:../saMmapLoopback.c **** }
- 710:../saMmapLoopback.c ****
- 711:../saMmapLoopback.c **** /* Get the format */
- 712:../saMmapLoopback.c **** fmt->type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 179 .loc 1 712 0
+ 707:../saMmapLoopback.c **** goto ERROR;
+ 708:../saMmapLoopback.c **** }
+ 709:../saMmapLoopback.c ****
+ 710:../saMmapLoopback.c **** /* Get the format */
+ 711:../saMmapLoopback.c **** fmt->type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 179 .loc 1 711 0
180 0118 0260A0E3 mov r6, #2
- 713:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_G_FMT, fmt);
- 181 .loc 1 713 0
+ 712:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_G_FMT, fmt);
+ 181 .loc 1 712 0
182 011c 000095E5 ldr r0, [r5, #0]
- 183 .loc 1 712 0
+ 183 .loc 1 711 0
184 0120 046085E5 str r6, [r5, #4]
- 185 .loc 1 713 0
+ 185 .loc 1 712 0
186 0124 0420A0E1 mov r2, r4
187 0128 30129FE5 ldr r1, .L38+44
188 012c FEFFFFEB bl ioctl
- 714:../saMmapLoopback.c **** if (ret < 0) {
- 189 .loc 1 714 0
+ 713:../saMmapLoopback.c **** if (ret < 0) {
+ 189 .loc 1 713 0
190 0130 000050E3 cmp r0, #0
191 0134 130000BA blt .L36
192 .L17:
- 715:../saMmapLoopback.c **** perror("VIDIOC_G_FMT");
- 716:../saMmapLoopback.c **** goto ERROR;
- 717:../saMmapLoopback.c **** }
- 718:../saMmapLoopback.c ****
- 719:../saMmapLoopback.c **** fmt->fmt.pix.width = display->width;
- 193 .loc 1 719 0
+ 714:../saMmapLoopback.c **** perror("VIDIOC_G_FMT");
+ 715:../saMmapLoopback.c **** goto ERROR;
+ 716:../saMmapLoopback.c **** }
+ 717:../saMmapLoopback.c ****
+ 718:../saMmapLoopback.c **** fmt->fmt.pix.width = display->width;
+ 193 .loc 1 718 0
194 0138 181195E5 ldr r1, [r5, #280]
- 720:../saMmapLoopback.c **** fmt->fmt.pix.height = display->height;
- 721:../saMmapLoopback.c **** fmt->fmt.pix.pixelformat = DEF_PIX_FMT;
- 722:../saMmapLoopback.c **** fmt->type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 723:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_S_FMT, fmt);
- 195 .loc 1 723 0
+ 719:../saMmapLoopback.c **** fmt->fmt.pix.height = display->height;
+ 720:../saMmapLoopback.c **** fmt->fmt.pix.pixelformat = DEF_PIX_FMT;
+ 721:../saMmapLoopback.c **** fmt->type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 722:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_S_FMT, fmt);
+ 195 .loc 1 722 0
196 013c 0420A0E1 mov r2, r4
- 197 .loc 1 720 0
+ 197 .loc 1 719 0
198 0140 1C3195E5 ldr r3, [r5, #284]
- 199 .loc 1 721 0
+ 199 .loc 1 720 0
200 0144 18729FE5 ldr r7, .L38+48
- 201 .loc 1 719 0
+ 201 .loc 1 718 0
202 0148 081085E5 str r1, [r5, #8]
- 203 .loc 1 720 0
+ 203 .loc 1 719 0
204 014c 0C3085E5 str r3, [r5, #12]
- 205 .loc 1 721 0
+ 205 .loc 1 720 0
206 0150 107085E5 str r7, [r5, #16]
- 207 .loc 1 722 0
+ 207 .loc 1 721 0
208 0154 046085E5 str r6, [r5, #4]
- 209 .loc 1 723 0
+ 209 .loc 1 722 0
210 0158 000095E5 ldr r0, [r5, #0]
211 015c 04129FE5 ldr r1, .L38+52
212 0160 FEFFFFEB bl ioctl
- 724:../saMmapLoopback.c **** if (ret < 0) {
- 213 .loc 1 724 0
+ 723:../saMmapLoopback.c **** if (ret < 0) {
+ 213 .loc 1 723 0
214 0164 000050E3 cmp r0, #0
- 725:../saMmapLoopback.c **** perror("VIDIOC_S_FMT");
- 215 .loc 1 725 0
+ 724:../saMmapLoopback.c **** perror("VIDIOC_S_FMT");
+ 215 .loc 1 724 0
216 0168 FC019FB5 ldrlt r0, .L38+56
- 217 .loc 1 724 0
+ 217 .loc 1 723 0
218 016c E6FFFFBA blt .L33
- 726:../saMmapLoopback.c **** goto ERROR;
- 727:../saMmapLoopback.c **** }
- 728:../saMmapLoopback.c ****
- 729:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_G_FMT, fmt);
- 219 .loc 1 729 0
+ 725:../saMmapLoopback.c **** goto ERROR;
+ 726:../saMmapLoopback.c **** }
+ 727:../saMmapLoopback.c ****
+ 728:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_G_FMT, fmt);
+ 219 .loc 1 728 0
220 0170 0420A0E1 mov r2, r4
221 0174 000095E5 ldr r0, [r5, #0]
222 0178 E0119FE5 ldr r1, .L38+44
223 017c FEFFFFEB bl ioctl
- 730:../saMmapLoopback.c **** if (ret < 0) {
- 224 .loc 1 730 0
+ 729:../saMmapLoopback.c **** if (ret < 0) {
+ 224 .loc 1 729 0
225 0180 000050E3 cmp r0, #0
226 0184 010000AA bge .L19
227 .L36:
- 731:../saMmapLoopback.c **** perror("VIDIOC_G_FMT");
- 228 .loc 1 731 0
+ 730:../saMmapLoopback.c **** perror("VIDIOC_G_FMT");
+ 228 .loc 1 730 0
229 0188 E0019FE5 ldr r0, .L38+60
230 018c DEFFFFEA b .L33
231 .L19:
- 732:../saMmapLoopback.c **** goto ERROR;
- 733:../saMmapLoopback.c **** }
- 734:../saMmapLoopback.c ****
- 735:../saMmapLoopback.c **** if (fmt->fmt.pix.pixelformat != DEF_PIX_FMT) {
- 232 .loc 1 735 0
+ 731:../saMmapLoopback.c **** goto ERROR;
+ 732:../saMmapLoopback.c **** }
+ 733:../saMmapLoopback.c ****
+ 734:../saMmapLoopback.c **** if (fmt->fmt.pix.pixelformat != DEF_PIX_FMT) {
+ 232 .loc 1 734 0
233 0190 103095E5 ldr r3, [r5, #16]
234 0194 070053E1 cmp r3, r7
235 0198 0300000A beq .L20
- 736:../saMmapLoopback.c **** printf("%s: Requested pixel format not supported\n",
- 236 .loc 1 736 0
+ 735:../saMmapLoopback.c **** printf("%s: Requested pixel format not supported\n",
+ 236 .loc 1 735 0
237 019c D0119FE5 ldr r1, .L38+64
238 01a0 D0019FE5 ldr r0, .L38+68
239 .L34:
240 01a4 FEFFFFEB bl printf
241 01a8 5C0000EA b .L13
242 .L20:
- 737:../saMmapLoopback.c **** CAPTURE_NAME);
- 738:../saMmapLoopback.c **** goto ERROR;
- 739:../saMmapLoopback.c **** }
- 740:../saMmapLoopback.c ****
- 741:../saMmapLoopback.c **** /* Buffer allocation
- 742:../saMmapLoopback.c **** * Buffer can be allocated either from capture driver or
- 743:../saMmapLoopback.c **** * user pointer can be used
- 744:../saMmapLoopback.c **** */
- 745:../saMmapLoopback.c **** /* Request for MAX_BUFFER input buffers. As far as Physically contiguous
- 746:../saMmapLoopback.c **** * memory is available, driver can allocate as many buffers as
- 747:../saMmapLoopback.c **** * possible. If memory is not available, it returns number of
- 748:../saMmapLoopback.c **** * buffers it has allocated in count member of reqbuf.
- 749:../saMmapLoopback.c **** * HERE count = number of buffer to be allocated.
- 750:../saMmapLoopback.c **** * type = type of device for which buffers are to be allocated.
- 751:../saMmapLoopback.c **** * memory = type of the buffers requested i.e. driver allocated or
- 752:../saMmapLoopback.c **** * user pointer */
- 753:../saMmapLoopback.c **** reqbuf.count = display->num_bufs;
- 243 .loc 1 753 0
+ 736:../saMmapLoopback.c **** CAPTURE_NAME);
+ 737:../saMmapLoopback.c **** goto ERROR;
+ 738:../saMmapLoopback.c **** }
+ 739:../saMmapLoopback.c ****
+ 740:../saMmapLoopback.c **** /* Buffer allocation
+ 741:../saMmapLoopback.c **** * Buffer can be allocated either from capture driver or
+ 742:../saMmapLoopback.c **** * user pointer can be used
+ 743:../saMmapLoopback.c **** */
+ 744:../saMmapLoopback.c **** /* Request for MAX_BUFFER input buffers. As far as Physically contiguous
+ 745:../saMmapLoopback.c **** * memory is available, driver can allocate as many buffers as
+ 746:../saMmapLoopback.c **** * possible. If memory is not available, it returns number of
+ 747:../saMmapLoopback.c **** * buffers it has allocated in count member of reqbuf.
+ 748:../saMmapLoopback.c **** * HERE count = number of buffer to be allocated.
+ 749:../saMmapLoopback.c **** * type = type of device for which buffers are to be allocated.
+ 750:../saMmapLoopback.c **** * memory = type of the buffers requested i.e. driver allocated or
+ 751:../saMmapLoopback.c **** * user pointer */
+ 752:../saMmapLoopback.c **** reqbuf.count = display->num_bufs;
+ 243 .loc 1 752 0
244 01ac 143195E5 ldr r3, [r5, #276]
- 754:../saMmapLoopback.c **** reqbuf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 755:../saMmapLoopback.c **** reqbuf.memory = V4L2_MEMORY_MMAP;
- 756:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_REQBUFS, &reqbuf);
- 245 .loc 1 756 0
+ 753:../saMmapLoopback.c **** reqbuf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 754:../saMmapLoopback.c **** reqbuf.memory = V4L2_MEMORY_MMAP;
+ 755:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_REQBUFS, &reqbuf);
+ 245 .loc 1 755 0
246 01b0 B4208DE2 add r2, sp, #180
247 01b4 000095E5 ldr r0, [r5, #0]
248 01b8 BC119FE5 ldr r1, .L38+72
- 249 .loc 1 753 0
+ 249 .loc 1 752 0
250 01bc B4308DE5 str r3, [sp, #180]
- 251 .loc 1 755 0
+ 251 .loc 1 754 0
252 01c0 0130A0E3 mov r3, #1
- 253 .loc 1 754 0
+ 253 .loc 1 753 0
254 01c4 B8608DE5 str r6, [sp, #184]
- 255 .loc 1 755 0
+ 255 .loc 1 754 0
256 01c8 BC308DE5 str r3, [sp, #188]
- 257 .loc 1 756 0
+ 257 .loc 1 755 0
258 01cc FEFFFFEB bl ioctl
- 757:../saMmapLoopback.c **** if (ret < 0) {
- 259 .loc 1 757 0
+ 756:../saMmapLoopback.c **** if (ret < 0) {
+ 259 .loc 1 756 0
260 01d0 000050E3 cmp r0, #0
- 758:../saMmapLoopback.c **** perror("Cannot allocate memory");
- 261 .loc 1 758 0
+ 757:../saMmapLoopback.c **** perror("Cannot allocate memory");
+ 261 .loc 1 757 0
262 01d4 A4019FB5 ldrlt r0, .L38+76
- 263 .loc 1 757 0
+ 263 .loc 1 756 0
264 01d8 CBFFFFBA blt .L33
- 759:../saMmapLoopback.c **** goto ERROR;
- 760:../saMmapLoopback.c **** }
- 761:../saMmapLoopback.c **** /* Store the numbfer of buffers allocated */
- 762:../saMmapLoopback.c **** display->num_bufs = reqbuf.count;
- 265 .loc 1 762 0
+ 758:../saMmapLoopback.c **** goto ERROR;
+ 759:../saMmapLoopback.c **** }
+ 760:../saMmapLoopback.c **** /* Store the numbfer of buffers allocated */
+ 761:../saMmapLoopback.c **** display->num_bufs = reqbuf.count;
+ 265 .loc 1 761 0
266 01dc B4309DE5 ldr r3, [sp, #180]
- 763:../saMmapLoopback.c **** printf("%s: Number of requested buffers = %d\n", DISPLAY_NAME,
- 764:../saMmapLoopback.c **** display->num_bufs);
- 765:../saMmapLoopback.c ****
- 766:../saMmapLoopback.c **** memset(&buf, 0, sizeof(buf));
- 267 .loc 1 766 0
+ 762:../saMmapLoopback.c **** printf("%s: Number of requested buffers = %d\n", DISPLAY_NAME,
+ 763:../saMmapLoopback.c **** display->num_bufs);
+ 764:../saMmapLoopback.c ****
+ 765:../saMmapLoopback.c **** memset(&buf, 0, sizeof(buf));
+ 267 .loc 1 765 0
268 01e0 0040A0E3 mov r4, #0
269 .LVL9:
270 01e4 98719FE5 ldr r7, .L38+80
- 271 .loc 1 763 0
+ 271 .loc 1 762 0
272 01e8 4C119FE5 ldr r1, .L38+8
273 01ec 0320A0E1 mov r2, r3
- 274 .loc 1 762 0
+ 274 .loc 1 761 0
275 01f0 143185E5 str r3, [r5, #276]
- 276 .loc 1 763 0
+ 276 .loc 1 762 0
277 01f4 8C019FE5 ldr r0, .L38+84
- 278 .loc 1 766 0
+ 278 .loc 1 765 0
279 01f8 0760A0E1 mov r6, r7
- 280 .loc 1 763 0
+ 280 .loc 1 762 0
281 01fc FEFFFFEB bl printf
- 282 .loc 1 766 0
+ 282 .loc 1 765 0
283 0200 70008DE2 add r0, sp, #112
284 0204 0410A0E1 mov r1, r4
285 0208 4420A0E3 mov r2, #68
287 0210 2E0000EA b .L22
288 .LVL10:
289 .L28:
- 767:../saMmapLoopback.c ****
- 768:../saMmapLoopback.c **** /* Mmap the buffers
- 769:../saMmapLoopback.c **** * To access driver allocated buffer in application space, they have
- 770:../saMmapLoopback.c **** * to be mmapped in the application space using mmap system call */
- 771:../saMmapLoopback.c **** for (i = 0; i < display->num_bufs; i++) {
- 772:../saMmapLoopback.c **** /* Query physical address of the buffers */
- 773:../saMmapLoopback.c **** buf.type = reqbuf.type;
- 290 .loc 1 773 0
+ 766:../saMmapLoopback.c ****
+ 767:../saMmapLoopback.c **** /* Mmap the buffers
+ 768:../saMmapLoopback.c **** * To access driver allocated buffer in application space, they have
+ 769:../saMmapLoopback.c **** * to be mmapped in the application space using mmap system call */
+ 770:../saMmapLoopback.c **** for (i = 0; i < display->num_bufs; i++) {
+ 771:../saMmapLoopback.c **** /* Query physical address of the buffers */
+ 772:../saMmapLoopback.c **** buf.type = reqbuf.type;
+ 290 .loc 1 772 0
291 0214 B8309DE5 ldr r3, [sp, #184]
- 774:../saMmapLoopback.c **** buf.index = i;
- 775:../saMmapLoopback.c **** buf.memory = reqbuf.memory;
- 776:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_QUERYBUF, &buf);
- 292 .loc 1 776 0
+ 773:../saMmapLoopback.c **** buf.index = i;
+ 774:../saMmapLoopback.c **** buf.memory = reqbuf.memory;
+ 775:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_QUERYBUF, &buf);
+ 292 .loc 1 775 0
293 0218 000095E5 ldr r0, [r5, #0]
- 294 .loc 1 774 0
+ 294 .loc 1 773 0
295 021c 70408DE5 str r4, [sp, #112]
- 296 .loc 1 773 0
+ 296 .loc 1 772 0
297 0220 74308DE5 str r3, [sp, #116]
- 298 .loc 1 775 0
+ 298 .loc 1 774 0
299 0224 BC309DE5 ldr r3, [sp, #188]
300 0228 A0308DE5 str r3, [sp, #160]
- 301 .loc 1 776 0
+ 301 .loc 1 775 0
302 022c FEFFFFEB bl ioctl
- 777:../saMmapLoopback.c **** if (ret < 0) {
- 778:../saMmapLoopback.c **** perror("VIDIOC_QUERYCAP");
- 779:../saMmapLoopback.c **** display->num_bufs = i;
- 780:../saMmapLoopback.c **** goto ERROR1;
- 781:../saMmapLoopback.c **** }
- 782:../saMmapLoopback.c ****
- 783:../saMmapLoopback.c **** /* Mmap the buffers in application space */
- 784:../saMmapLoopback.c **** display_buff_info[i].length = buf.length;
- 785:../saMmapLoopback.c **** display_buff_info[i].index = i;
- 786:../saMmapLoopback.c **** display_buff_info[i].start = mmap(NULL, buf.length,
- 303 .loc 1 786 0
+ 776:../saMmapLoopback.c **** if (ret < 0) {
+ 777:../saMmapLoopback.c **** perror("VIDIOC_QUERYCAP");
+ 778:../saMmapLoopback.c **** display->num_bufs = i;
+ 779:../saMmapLoopback.c **** goto ERROR1;
+ 780:../saMmapLoopback.c **** }
+ 781:../saMmapLoopback.c ****
+ 782:../saMmapLoopback.c **** /* Mmap the buffers in application space */
+ 783:../saMmapLoopback.c **** display_buff_info[i].length = buf.length;
+ 784:../saMmapLoopback.c **** display_buff_info[i].index = i;
+ 785:../saMmapLoopback.c **** display_buff_info[i].start = mmap(NULL, buf.length,
+ 303 .loc 1 785 0
304 0230 0130A0E3 mov r3, #1
305 0234 0320A0E3 mov r2, #3
- 306 .loc 1 777 0
+ 306 .loc 1 776 0
307 0238 000050E3 cmp r0, #0
- 308 .loc 1 786 0
+ 308 .loc 1 785 0
309 023c 0000A0E3 mov r0, #0
- 310 .loc 1 777 0
+ 310 .loc 1 776 0
311 0240 040000AA bge .L23
- 312 .loc 1 778 0
+ 312 .loc 1 777 0
313 0244 FC009FE5 ldr r0, .L38+20
314 0248 FEFFFFEB bl perror
315 .L32:
- 316 .loc 1 779 0
+ 316 .loc 1 778 0
317 024c 144185E5 str r4, [r5, #276]
318 .L26:
319 0250 0040A0E3 mov r4, #0
321 0254 2C0000EA b .L24
322 .LVL12:
323 .L23:
- 324 .loc 1 784 0
+ 324 .loc 1 783 0
325 0258 A8109DE5 ldr r1, [sp, #168]
- 326 .loc 1 785 0
+ 326 .loc 1 784 0
327 025c 084006E5 str r4, [r6, #-8]
- 328 .loc 1 784 0
+ 328 .loc 1 783 0
329 0260 041006E5 str r1, [r6, #-4]
- 330 .loc 1 786 0
+ 330 .loc 1 785 0
331 0264 A4C09DE5 ldr ip, [sp, #164]
332 0268 00E095E5 ldr lr, [r5, #0]
333 026c 04C08DE5 str ip, [sp, #4]
334 0270 00E08DE5 str lr, [sp, #0]
335 0274 FEFFFFEB bl mmap
- 787:../saMmapLoopback.c **** PROT_READ | PROT_WRITE, MAP_SHARED, display->display_fd,
- 788:../saMmapLoopback.c **** buf.m.offset);
- 789:../saMmapLoopback.c ****
- 790:../saMmapLoopback.c **** if (display_buff_info[i].start == MAP_FAILED) {
- 791:../saMmapLoopback.c **** printf("Cannot mmap = %d buffer\n", i);
- 792:../saMmapLoopback.c **** display->num_bufs = i;
- 793:../saMmapLoopback.c **** goto ERROR1;
- 794:../saMmapLoopback.c **** }
- 795:../saMmapLoopback.c **** memset((void *) display_buff_info[i].start, 0x80,
- 336 .loc 1 795 0
+ 786:../saMmapLoopback.c **** PROT_READ | PROT_WRITE, MAP_SHARED, display->display_fd,
+ 787:../saMmapLoopback.c **** buf.m.offset);
+ 788:../saMmapLoopback.c ****
+ 789:../saMmapLoopback.c **** if (display_buff_info[i].start == MAP_FAILED) {
+ 790:../saMmapLoopback.c **** printf("Cannot mmap = %d buffer\n", i);
+ 791:../saMmapLoopback.c **** display->num_bufs = i;
+ 792:../saMmapLoopback.c **** goto ERROR1;
+ 793:../saMmapLoopback.c **** }
+ 794:../saMmapLoopback.c **** memset((void *) display_buff_info[i].start, 0x80,
+ 336 .loc 1 794 0
337 0278 8010A0E3 mov r1, #128
- 338 .loc 1 790 0
+ 338 .loc 1 789 0
339 027c 010070E3 cmn r0, #1
- 340 .loc 1 786 0
+ 340 .loc 1 785 0
341 0280 000086E5 str r0, [r6, #0]
- 342 .loc 1 790 0
+ 342 .loc 1 789 0
343 0284 0300001A bne .L25
- 344 .loc 1 791 0
+ 344 .loc 1 790 0
345 0288 0410A0E1 mov r1, r4
346 028c F8009FE5 ldr r0, .L38+88
347 0290 FEFFFFEB bl printf
348 0294 ECFFFFEA b .L32
349 .L25:
- 350 .loc 1 795 0
+ 350 .loc 1 794 0
351 0298 042016E5 ldr r2, [r6, #-4]
- 352 .loc 1 771 0
+ 352 .loc 1 770 0
353 029c 0840A0E1 mov r4, r8
- 354 .loc 1 795 0
+ 354 .loc 1 794 0
355 02a0 FEFFFFEB bl memset
- 796:../saMmapLoopback.c **** display_buff_info[i].length);
- 797:../saMmapLoopback.c ****
- 798:../saMmapLoopback.c **** /* Enqueue buffers
- 799:../saMmapLoopback.c **** * Before starting streaming, all the buffers needs to be
- 800:../saMmapLoopback.c **** * en-queued in the driver incoming queue. These buffers will
- 801:../saMmapLoopback.c **** * be used by thedrive for storing captured frames. */
- 802:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_QBUF, &buf);
- 356 .loc 1 802 0
+ 795:../saMmapLoopback.c **** display_buff_info[i].length);
+ 796:../saMmapLoopback.c ****
+ 797:../saMmapLoopback.c **** /* Enqueue buffers
+ 798:../saMmapLoopback.c **** * Before starting streaming, all the buffers needs to be
+ 799:../saMmapLoopback.c **** * en-queued in the driver incoming queue. These buffers will
+ 800:../saMmapLoopback.c **** * be used by thedrive for storing captured frames. */
+ 801:../saMmapLoopback.c **** ret = ioctl(display->display_fd, VIDIOC_QBUF, &buf);
+ 356 .loc 1 801 0
357 02a4 0A20A0E1 mov r2, sl
358 02a8 000095E5 ldr r0, [r5, #0]
359 02ac 0C6086E2 add r6, r6, #12
360 02b0 D8109FE5 ldr r1, .L38+92
361 02b4 FEFFFFEB bl ioctl
- 803:../saMmapLoopback.c **** if (ret < 0) {
- 362 .loc 1 803 0
+ 802:../saMmapLoopback.c **** if (ret < 0) {
+ 362 .loc 1 802 0
363 02b8 000050E3 cmp r0, #0
364 02bc 030000AA bge .L22
- 804:../saMmapLoopback.c **** perror("VIDIOC_QBUF");
- 365 .loc 1 804 0
+ 803:../saMmapLoopback.c **** perror("VIDIOC_QBUF");
+ 365 .loc 1 803 0
366 02c0 CC009FE5 ldr r0, .L38+96
367 02c4 FEFFFFEB bl perror
- 805:../saMmapLoopback.c **** display->num_bufs = i + 1;
- 368 .loc 1 805 0
+ 804:../saMmapLoopback.c **** display->num_bufs = i + 1;
+ 368 .loc 1 804 0
369 02c8 148185E5 str r8, [r5, #276]
370 02cc DFFFFFEA b .L26
371 .L22:
- 372 .loc 1 771 0
+ 372 .loc 1 770 0
373 02d0 143195E5 ldr r3, [r5, #276]
- 374 .loc 1 776 0
+ 374 .loc 1 775 0
375 02d4 70A08DE2 add sl, sp, #112
376 02d8 B8109FE5 ldr r1, .L38+100
377 02dc 018084E2 add r8, r4, #1
378 .LVL13:
- 379 .loc 1 771 0
+ 379 .loc 1 770 0
380 02e0 030054E1 cmp r4, r3
- 381 .loc 1 776 0
+ 381 .loc 1 775 0
382 02e4 0A20A0E1 mov r2, sl
- 383 .loc 1 771 0
+ 383 .loc 1 770 0
384 02e8 C9FFFF3A bcc .L28
385 .LVL14:
- 806:../saMmapLoopback.c **** goto ERROR1;
- 807:../saMmapLoopback.c **** }
- 808:../saMmapLoopback.c **** }
- 809:../saMmapLoopback.c **** printf("%s: Init done successfully\n\n", DISPLAY_NAME);
- 386 .loc 1 809 0
+ 805:../saMmapLoopback.c **** goto ERROR1;
+ 806:../saMmapLoopback.c **** }
+ 807:../saMmapLoopback.c **** }
+ 808:../saMmapLoopback.c **** printf("%s: Init done successfully\n\n", DISPLAY_NAME);
+ 386 .loc 1 808 0
387 02ec A8009FE5 ldr r0, .L38+104
388 02f0 44109FE5 ldr r1, .L38+8
389 02f4 FEFFFFEB bl printf
391 02fc 0A0000EA b .L11
392 .LVL15:
393 .L29:
- 810:../saMmapLoopback.c **** return 0;
- 811:../saMmapLoopback.c ****
- 812:../saMmapLoopback.c **** ERROR1:
- 813:../saMmapLoopback.c **** for (j = 0; j < display->num_bufs; j++)
- 814:../saMmapLoopback.c **** munmap(display_buff_info[j].start,
- 394 .loc 1 814 0
+ 809:../saMmapLoopback.c **** return 0;
+ 810:../saMmapLoopback.c ****
+ 811:../saMmapLoopback.c **** ERROR1:
+ 812:../saMmapLoopback.c **** for (j = 0; j < display->num_bufs; j++)
+ 813:../saMmapLoopback.c **** munmap(display_buff_info[j].start,
+ 394 .loc 1 813 0
395 0300 0C0017E5 ldr r0, [r7, #-12]
396 0304 101017E5 ldr r1, [r7, #-16]
397 0308 FEFFFFEB bl munmap
398 .L24:
- 399 .loc 1 813 0
+ 399 .loc 1 812 0
400 030c 143195E5 ldr r3, [r5, #276]
401 0310 0C7087E2 add r7, r7, #12
402 0314 030054E1 cmp r4, r3
404 031c F7FFFF3A bcc .L29
405 .LVL16:
406 .L13:
- 815:../saMmapLoopback.c **** display_buff_info[j].length);
- 816:../saMmapLoopback.c **** ERROR:
- 817:../saMmapLoopback.c **** close(display->display_fd);
- 407 .loc 1 817 0
+ 814:../saMmapLoopback.c **** display_buff_info[j].length);
+ 815:../saMmapLoopback.c **** ERROR:
+ 816:../saMmapLoopback.c **** close(display->display_fd);
+ 407 .loc 1 816 0
408 0320 000095E5 ldr r0, [r5, #0]
409 0324 FEFFFFEB bl close
410 .L35:
411 0328 0000E0E3 mvn r0, #0
412 .LVL17:
413 .L11:
- 818:../saMmapLoopback.c **** return -1;
- 819:../saMmapLoopback.c **** }
- 414 .loc 1 819 0
+ 817:../saMmapLoopback.c **** return -1;
+ 818:../saMmapLoopback.c **** }
+ 414 .loc 1 818 0
415 032c D4D08DE2 add sp, sp, #212
416 0330 F085BDE8 ldmfd sp!, {r4, r5, r6, r7, r8, sl, pc}
417 .L39:
455 main:
456 .fnstart
457 .LFB15:
- 820:../saMmapLoopback.c ****
- 821:../saMmapLoopback.c **** static void usage(void)
- 822:../saMmapLoopback.c **** {
- 823:../saMmapLoopback.c **** printf("Usage: saMmapLoopback [-i <tvp input>] [-h help]");
- 824:../saMmapLoopback.c **** printf("\t[-i <S-Vid/CVBS>] : 0: CVBS 1 - S-Video\n");
- 825:../saMmapLoopback.c **** }
- 826:../saMmapLoopback.c **** static int timeval_subtract(struct timeval *result, struct timeval *x,
- 827:../saMmapLoopback.c **** struct timeval *y)
- 828:../saMmapLoopback.c **** {
- 829:../saMmapLoopback.c **** /* Perform the carry for the later subtraction by updating y.
- 830:../saMmapLoopback.c **** * */
- 831:../saMmapLoopback.c **** if (x->tv_usec < y->tv_usec) {
- 832:../saMmapLoopback.c **** int nsec = (y->tv_usec - x->tv_usec) /
- 833:../saMmapLoopback.c **** 1000000 + 1;
- 834:../saMmapLoopback.c **** y->tv_usec -= 1000000 * nsec;
- 835:../saMmapLoopback.c **** y->tv_sec += nsec;
- 836:../saMmapLoopback.c **** }
- 837:../saMmapLoopback.c **** if (x->tv_usec - y->tv_usec > 1000000) {
- 838:../saMmapLoopback.c **** int nsec = (x->tv_usec - y->tv_usec) /
- 839:../saMmapLoopback.c **** 1000000;
- 840:../saMmapLoopback.c **** y->tv_usec += 1000000 * nsec;
- 841:../saMmapLoopback.c **** y->tv_sec -= nsec;
- 842:../saMmapLoopback.c **** }
- 843:../saMmapLoopback.c ****
- 844:../saMmapLoopback.c **** /* Compute the time remaining to wait.
- 845:../saMmapLoopback.c **** tv_usec is certainly positive. */
- 846:../saMmapLoopback.c **** result->tv_sec = x->tv_sec - y->tv_sec;
- 847:../saMmapLoopback.c **** result->tv_usec = x->tv_usec - y->tv_usec;
- 848:../saMmapLoopback.c ****
- 849:../saMmapLoopback.c **** /* Return 1 if result is
- 850:../saMmapLoopback.c **** * negative. */
- 851:../saMmapLoopback.c **** return x->tv_sec < y->tv_sec;
- 852:../saMmapLoopback.c **** }
- 853:../saMmapLoopback.c ****
- 854:../saMmapLoopback.c **** int main(int argc, char *argv[])
- 855:../saMmapLoopback.c **** {
- 458 .loc 1 855 0
+ 819:../saMmapLoopback.c ****
+ 820:../saMmapLoopback.c **** static void usage(void)
+ 821:../saMmapLoopback.c **** {
+ 822:../saMmapLoopback.c **** printf("Usage: saMmapLoopback [-i <tvp input>] [-h help]");
+ 823:../saMmapLoopback.c **** printf("\t[-i <S-Vid/CVBS>] : 0: CVBS 1 - S-Video\n");
+ 824:../saMmapLoopback.c **** }
+ 825:../saMmapLoopback.c **** static int timeval_subtract(struct timeval *result, struct timeval *x,
+ 826:../saMmapLoopback.c **** struct timeval *y)
+ 827:../saMmapLoopback.c **** {
+ 828:../saMmapLoopback.c **** /* Perform the carry for the later subtraction by updating y.
+ 829:../saMmapLoopback.c **** * */
+ 830:../saMmapLoopback.c **** if (x->tv_usec < y->tv_usec) {
+ 831:../saMmapLoopback.c **** int nsec = (y->tv_usec - x->tv_usec) /
+ 832:../saMmapLoopback.c **** 1000000 + 1;
+ 833:../saMmapLoopback.c **** y->tv_usec -= 1000000 * nsec;
+ 834:../saMmapLoopback.c **** y->tv_sec += nsec;
+ 835:../saMmapLoopback.c **** }
+ 836:../saMmapLoopback.c **** if (x->tv_usec - y->tv_usec > 1000000) {
+ 837:../saMmapLoopback.c **** int nsec = (x->tv_usec - y->tv_usec) /
+ 838:../saMmapLoopback.c **** 1000000;
+ 839:../saMmapLoopback.c **** y->tv_usec += 1000000 * nsec;
+ 840:../saMmapLoopback.c **** y->tv_sec -= nsec;
+ 841:../saMmapLoopback.c **** }
+ 842:../saMmapLoopback.c ****
+ 843:../saMmapLoopback.c **** /* Compute the time remaining to wait.
+ 844:../saMmapLoopback.c **** tv_usec is certainly positive. */
+ 845:../saMmapLoopback.c **** result->tv_sec = x->tv_sec - y->tv_sec;
+ 846:../saMmapLoopback.c **** result->tv_usec = x->tv_usec - y->tv_usec;
+ 847:../saMmapLoopback.c ****
+ 848:../saMmapLoopback.c **** /* Return 1 if result is
+ 849:../saMmapLoopback.c **** * negative. */
+ 850:../saMmapLoopback.c **** return x->tv_sec < y->tv_sec;
+ 851:../saMmapLoopback.c **** }
+ 852:../saMmapLoopback.c ****
+ 853:../saMmapLoopback.c **** int main(int argc, char *argv[])
+ 854:../saMmapLoopback.c **** {
+ 458 .loc 1 854 0
459 @ args = 0, pretend = 0, frame = 6368
460 @ frame_needed = 0, uses_anonymous_args = 0
461 .LVL18:
468 .pad #44
469 03a8 2CD04DE2 sub sp, sp, #44
470 .LCFI5:
- 471 .loc 1 855 0
+ 471 .loc 1 854 0
472 03ac 0060A0E1 mov r6, r0
- 856:../saMmapLoopback.c **** char shortoptions[] = "s:l:n:i:h:";
- 857:../saMmapLoopback.c **** int i = 0, ret = 0, a, c, index;
- 858:../saMmapLoopback.c **** unsigned int loop_cnt = MAXLOOPCOUNT;
- 859:../saMmapLoopback.c **** struct media_dev media;
- 860:../saMmapLoopback.c **** struct capture_dev capture;
- 861:../saMmapLoopback.c **** struct v4l2_control control;
- 862:../saMmapLoopback.c **** struct display_dev display;
- 863:../saMmapLoopback.c **** struct timeval before, after, result;
- 864:../saMmapLoopback.c ****
- 865:../saMmapLoopback.c **** memset(&media, 0, sizeof(struct media_dev));
- 473 .loc 1 865 0
+ 855:../saMmapLoopback.c **** char shortoptions[] = "s:l:n:i:h:";
+ 856:../saMmapLoopback.c **** int i = 0, ret = 0, a, c, index;
+ 857:../saMmapLoopback.c **** unsigned int loop_cnt = MAXLOOPCOUNT;
+ 858:../saMmapLoopback.c **** struct media_dev media;
+ 859:../saMmapLoopback.c **** struct capture_dev capture;
+ 860:../saMmapLoopback.c **** struct v4l2_control control;
+ 861:../saMmapLoopback.c **** struct display_dev display;
+ 862:../saMmapLoopback.c **** struct timeval before, after, result;
+ 863:../saMmapLoopback.c ****
+ 864:../saMmapLoopback.c **** memset(&media, 0, sizeof(struct media_dev));
+ 473 .loc 1 864 0
474 03b0 28408DE2 add r4, sp, #40
- 475 .loc 1 856 0
+ 475 .loc 1 855 0
476 03b4 620D8DE2 add r0, sp, #6272
477 .LVL19:
- 478 .loc 1 865 0
+ 478 .loc 1 864 0
479 03b8 184044E2 sub r4, r4, #24
- 480 .loc 1 856 0
+ 480 .loc 1 855 0
481 03bc 0B20A0E3 mov r2, #11
- 482 .loc 1 855 0
+ 482 .loc 1 854 0
483 03c0 0150A0E1 mov r5, r1
- 484 .loc 1 856 0
+ 484 .loc 1 855 0
485 03c4 2D0080E2 add r0, r0, #45
486 03c8 681F9FE5 ldr r1, .L182
487 .LVL20:
- 866:../saMmapLoopback.c **** memset(&capture, 0, sizeof(struct capture_dev));
- 867:../saMmapLoopback.c **** memset(&display, 0, sizeof(struct display_dev));
- 868:../saMmapLoopback.c ****
- 869:../saMmapLoopback.c **** /* Setup default init for all devices */
- 870:../saMmapLoopback.c **** /* Media */
- 871:../saMmapLoopback.c **** media.input_source = 0; /* default to tvp5146 */
- 872:../saMmapLoopback.c **** /* Capture */
- 873:../saMmapLoopback.c **** capture.num_bufs = CAPTURE_MAX_BUFFER;
- 874:../saMmapLoopback.c **** /* Display */
- 875:../saMmapLoopback.c **** display.num_bufs = DISPLAY_MAX_BUFFER;
- 488 .loc 1 875 0
+ 865:../saMmapLoopback.c **** memset(&capture, 0, sizeof(struct capture_dev));
+ 866:../saMmapLoopback.c **** memset(&display, 0, sizeof(struct display_dev));
+ 867:../saMmapLoopback.c ****
+ 868:../saMmapLoopback.c **** /* Setup default init for all devices */
+ 869:../saMmapLoopback.c **** /* Media */
+ 870:../saMmapLoopback.c **** media.input_source = 0; /* default to tvp5146 */
+ 871:../saMmapLoopback.c **** /* Capture */
+ 872:../saMmapLoopback.c **** capture.num_bufs = CAPTURE_MAX_BUFFER;
+ 873:../saMmapLoopback.c **** /* Display */
+ 874:../saMmapLoopback.c **** display.num_bufs = DISPLAY_MAX_BUFFER;
+ 488 .loc 1 874 0
489 03cc FA3FA0E3 mov r3, #1000
490 03d0 08308DE5 str r3, [sp, #8]
491 .LVL21:
- 492 .loc 1 856 0
+ 492 .loc 1 855 0
493 03d4 FEFFFFEB bl memcpy
- 494 .loc 1 865 0
+ 494 .loc 1 864 0
495 03d8 0010A0E3 mov r1, #0
496 03dc 1C2401E3 movw r2, #5148
497 03e0 0400A0E1 mov r0, r4
- 498 .loc 1 875 0
+ 498 .loc 1 874 0
499 03e4 017A8DE2 add r7, sp, #4096
- 500 .loc 1 865 0
+ 500 .loc 1 864 0
501 03e8 FEFFFFEB bl memset
- 502 .loc 1 866 0
+ 502 .loc 1 865 0
503 03ec 050B8DE2 add r0, sp, #5120
504 03f0 380080E2 add r0, r0, #56
505 03f4 0010A0E3 mov r1, #0
506 03f8 492FA0E3 mov r2, #292
507 03fc 0C0040E2 sub r0, r0, #12
508 0400 FEFFFFEB bl memset
- 509 .loc 1 867 0
+ 509 .loc 1 866 0
510 0404 550D8DE2 add r0, sp, #5440
511 0408 122EA0E3 mov r2, #288
512 040c 100080E2 add r0, r0, #16
513 0410 0010A0E3 mov r1, #0
514 0414 FEFFFFEB bl memset
- 515 .loc 1 873 0
+ 515 .loc 1 872 0
516 0418 0320A0E3 mov r2, #3
- 517 .loc 1 871 0
+ 517 .loc 1 870 0
518 041c 0030A0E3 mov r3, #0
- 519 .loc 1 875 0
+ 519 .loc 1 874 0
520 0420 642687E5 str r2, [r7, #1636]
- 521 .loc 1 871 0
+ 521 .loc 1 870 0
522 0424 043084E5 str r3, [r4, #4]
- 523 .loc 1 873 0
+ 523 .loc 1 872 0
524 0428 442587E5 str r2, [r7, #1348]
525 .LVL22:
526 .L157:
- 876:../saMmapLoopback.c ****
- 877:../saMmapLoopback.c **** for (;;) {
- 878:../saMmapLoopback.c **** c = getopt_long(argc, argv, shortoptions, (void *) NULL,
- 527 .loc 1 878 0
+ 875:../saMmapLoopback.c ****
+ 876:../saMmapLoopback.c **** for (;;) {
+ 877:../saMmapLoopback.c **** c = getopt_long(argc, argv, shortoptions, (void *) NULL,
+ 527 .loc 1 877 0
528 042c 622D8DE2 add r2, sp, #6272
529 0430 0600A0E1 mov r0, r6
530 .LVL23:
535 0444 20C08CE2 add ip, ip, #32
536 0448 00C08DE5 str ip, [sp, #0]
537 044c FEFFFFEB bl getopt_long
- 879:../saMmapLoopback.c **** &index);
- 880:../saMmapLoopback.c **** if (-1 == c)
- 538 .loc 1 880 0
+ 878:../saMmapLoopback.c **** &index);
+ 879:../saMmapLoopback.c **** if (-1 == c)
+ 538 .loc 1 879 0
539 0450 010070E3 cmn r0, #1
540 .LVL24:
541 0454 E0BE9F05 ldreq fp, .L182+4
545 0460 3800000A beq .L43
546 .LVL26:
547 .L42:
- 881:../saMmapLoopback.c **** break;
- 882:../saMmapLoopback.c **** switch (c) {
- 548 .loc 1 882 0
+ 880:../saMmapLoopback.c **** break;
+ 881:../saMmapLoopback.c **** switch (c) {
+ 548 .loc 1 881 0
549 0464 530050E3 cmp r0, #83
550 0468 1400000A beq .L48
551 046c 090000CA bgt .L49
574 04b8 730050E3 cmp r0, #115
575 04bc 1800001A bne .L44
576 .L48:
- 883:../saMmapLoopback.c **** case 0:
- 884:../saMmapLoopback.c **** break;
- 885:../saMmapLoopback.c **** case 's':
- 886:../saMmapLoopback.c **** case 'S':
- 887:../saMmapLoopback.c **** media.input_source = atoi(optarg);
- 577 .loc 1 887 0
+ 882:../saMmapLoopback.c **** case 0:
+ 883:../saMmapLoopback.c **** break;
+ 884:../saMmapLoopback.c **** case 's':
+ 885:../saMmapLoopback.c **** case 'S':
+ 886:../saMmapLoopback.c **** media.input_source = atoi(optarg);
+ 577 .loc 1 886 0
578 04c0 783E9FE5 ldr r3, .L182+8
579 04c4 000093E5 ldr r0, [r3, #0]
580 .LVL27:
585 04d8 D3FFFFEA b .L157
586 .LVL28:
587 .L46:
- 888:../saMmapLoopback.c **** break;
- 889:../saMmapLoopback.c **** case 'l':
- 890:../saMmapLoopback.c **** case 'L':
- 891:../saMmapLoopback.c **** loop_cnt = atoi(optarg);
- 588 .loc 1 891 0
+ 887:../saMmapLoopback.c **** break;
+ 888:../saMmapLoopback.c **** case 'l':
+ 889:../saMmapLoopback.c **** case 'L':
+ 890:../saMmapLoopback.c **** loop_cnt = atoi(optarg);
+ 588 .loc 1 890 0
589 04dc 5C3E9FE5 ldr r3, .L182+8
590 04e0 000093E5 ldr r0, [r3, #0]
591 .LVL29:
595 04ec CEFFFFEA b .L157
596 .LVL31:
597 .L47:
- 892:../saMmapLoopback.c **** break;
- 893:../saMmapLoopback.c **** case 'n':
- 894:../saMmapLoopback.c **** case 'N':
- 895:../saMmapLoopback.c **** capture.num_bufs = display.num_bufs = atoi(optarg);
- 598 .loc 1 895 0
+ 891:../saMmapLoopback.c **** break;
+ 892:../saMmapLoopback.c **** case 'n':
+ 893:../saMmapLoopback.c **** case 'N':
+ 894:../saMmapLoopback.c **** capture.num_bufs = display.num_bufs = atoi(optarg);
+ 598 .loc 1 894 0
599 04f0 483E9FE5 ldr r3, .L182+8
600 04f4 000093E5 ldr r0, [r3, #0]
601 .LVL32:
606 0508 C7FFFFEA b .L157
607 .LVL33:
608 .L179:
- 896:../saMmapLoopback.c **** break;
- 897:../saMmapLoopback.c **** case 'i':
- 898:../saMmapLoopback.c **** case 'I':
- 899:../saMmapLoopback.c **** capture.tvp_input = atoi(optarg);
- 609 .loc 1 899 0
+ 895:../saMmapLoopback.c **** break;
+ 896:../saMmapLoopback.c **** case 'i':
+ 897:../saMmapLoopback.c **** case 'I':
+ 898:../saMmapLoopback.c **** capture.tvp_input = atoi(optarg);
+ 609 .loc 1 898 0
610 050c 2C3E9FE5 ldr r3, .L182+8
611 0510 000093E5 ldr r0, [r3, #0]
612 .LVL34:
618 .L44:
619 .LBB25:
620 .LBB26:
- 621 .loc 1 823 0
+ 621 .loc 1 822 0
622 0524 180E9FE5 ldr r0, .L182+12
623 .LVL36:
624 0528 FEFFFFEB bl printf
- 625 .loc 1 824 0
+ 625 .loc 1 823 0
626 052c 140E9FE5 ldr r0, .L182+16
627 0530 FEFFFFEB bl puts
628 .LBE26:
629 .LBE25:
- 900:../saMmapLoopback.c **** break;
- 901:../saMmapLoopback.c **** case 'h':
- 902:../saMmapLoopback.c **** case 'H':
- 903:../saMmapLoopback.c **** default:
- 904:../saMmapLoopback.c **** usage();
- 905:../saMmapLoopback.c **** exit(1);
- 630 .loc 1 905 0
+ 899:../saMmapLoopback.c **** break;
+ 900:../saMmapLoopback.c **** case 'h':
+ 901:../saMmapLoopback.c **** case 'H':
+ 902:../saMmapLoopback.c **** default:
+ 903:../saMmapLoopback.c **** usage();
+ 904:../saMmapLoopback.c **** exit(1);
+ 630 .loc 1 904 0
631 0534 0100A0E3 mov r0, #1
632 0538 FEFFFFEB bl exit
633 .LVL37:
634 .L52:
- 906:../saMmapLoopback.c **** }
- 907:../saMmapLoopback.c ****
- 908:../saMmapLoopback.c **** }
- 909:../saMmapLoopback.c **** for(i = 0; i < capture.num_bufs; i++) {
- 635 .loc 1 909 0
+ 905:../saMmapLoopback.c **** }
+ 906:../saMmapLoopback.c ****
+ 907:../saMmapLoopback.c **** }
+ 908:../saMmapLoopback.c **** for(i = 0; i < capture.num_bufs; i++) {
+ 635 .loc 1 908 0
636 053c 011081E2 add r1, r1, #1
- 910:../saMmapLoopback.c **** capture_buff_info[i].start = NULL;
- 637 .loc 1 910 0
+ 909:../saMmapLoopback.c **** capture_buff_info[i].start = NULL;
+ 637 .loc 1 909 0
638 0540 0030A0E3 mov r3, #0
639 0544 0C3002E5 str r3, [r2, #-12]
640 .LVL38:
641 .L43:
- 642 .loc 1 909 0
+ 642 .loc 1 908 0
643 0548 010A8DE2 add r0, sp, #4096
644 .LVL39:
645 054c 0C2082E2 add r2, r2, #12
652 0564 0920A0E1 mov r2, r9
653 0568 020000EA b .L53
654 .L54:
- 911:../saMmapLoopback.c **** }
- 912:../saMmapLoopback.c **** for(i = 0; i < display.num_bufs; i++) {
- 655 .loc 1 912 0
+ 910:../saMmapLoopback.c **** }
+ 911:../saMmapLoopback.c **** for(i = 0; i < display.num_bufs; i++) {
+ 655 .loc 1 911 0
656 056c 011081E2 add r1, r1, #1
- 913:../saMmapLoopback.c **** display_buff_info[i].start = NULL;
- 657 .loc 1 913 0
+ 912:../saMmapLoopback.c **** display_buff_info[i].start = NULL;
+ 657 .loc 1 912 0
658 0570 0030A0E3 mov r3, #0
659 0574 0C3002E5 str r3, [r2, #-12]
660 .L53:
- 661 .loc 1 912 0
+ 661 .loc 1 911 0
662 0578 017A8DE2 add r7, sp, #4096
663 057c 0C2082E2 add r2, r2, #12
664 0580 643697E5 ldr r3, [r7, #1636]
665 0584 030051E1 cmp r1, r3
666 0588 F7FFFF3A bcc .L54
- 914:../saMmapLoopback.c **** }
- 915:../saMmapLoopback.c **** /*
- 916:../saMmapLoopback.c **** * Initialization section
- 917:../saMmapLoopback.c **** * In case of Media-Controller compliant device: Setup Links
- 918:../saMmapLoopback.c **** * Initialize capture and display devices.
- 919:../saMmapLoopback.c **** * Here one capture channel is opened and input and standard is
- 920:../saMmapLoopback.c **** * detected on that channel.
- 921:../saMmapLoopback.c **** * Display channel is opened with the same standard that is detected at
- 922:../saMmapLoopback.c **** * capture channel.
- 923:../saMmapLoopback.c **** * */
- 924:../saMmapLoopback.c **** #if defined (CONFIG_OMAP3530)
- 925:../saMmapLoopback.c **** /* Open the Media device */
- 926:../saMmapLoopback.c **** ret = media_device_open(&media);
- 667 .loc 1 926 0
+ 913:../saMmapLoopback.c **** }
+ 914:../saMmapLoopback.c **** /*
+ 915:../saMmapLoopback.c **** * Initialization section
+ 916:../saMmapLoopback.c **** * In case of Media-Controller compliant device: Setup Links
+ 917:../saMmapLoopback.c **** * Initialize capture and display devices.
+ 918:../saMmapLoopback.c **** * Here one capture channel is opened and input and standard is
+ 919:../saMmapLoopback.c **** * detected on that channel.
+ 920:../saMmapLoopback.c **** * Display channel is opened with the same standard that is detected at
+ 921:../saMmapLoopback.c **** * capture channel.
+ 922:../saMmapLoopback.c **** * */
+ 923:../saMmapLoopback.c **** #if defined (CONFIG_OMAP3530)
+ 924:../saMmapLoopback.c **** /* Open the Media device */
+ 925:../saMmapLoopback.c **** ret = media_device_open(&media);
+ 667 .loc 1 925 0
668 058c 28808DE2 add r8, sp, #40
669 0590 188048E2 sub r8, r8, #24
670 0594 0800A0E1 mov r0, r8
671 0598 99FEFFEB bl media_device_open
672 .LVL41:
- 927:../saMmapLoopback.c **** if (ret < 0)
- 673 .loc 1 927 0
+ 926:../saMmapLoopback.c **** if (ret < 0)
+ 673 .loc 1 926 0
674 059c 000050E3 cmp r0, #0
675 .LVL42:
676 05a0 C20400BA blt .L55
1181 .L80:
1182 .LBE59:
1183 .LBE63:
- 928:../saMmapLoopback.c **** return ret;
- 929:../saMmapLoopback.c ****
- 930:../saMmapLoopback.c **** ret = enumerate_all_entities(&media);
- 931:../saMmapLoopback.c **** if (ret < 0)
- 932:../saMmapLoopback.c **** goto err_0;
- 933:../saMmapLoopback.c ****
- 934:../saMmapLoopback.c **** /* Setup Links */
- 935:../saMmapLoopback.c **** ret = setup_media_links(&media);
- 936:../saMmapLoopback.c **** if (ret < 0)
- 1184 .loc 1 936 0
+ 927:../saMmapLoopback.c **** return ret;
+ 928:../saMmapLoopback.c ****
+ 929:../saMmapLoopback.c **** ret = enumerate_all_entities(&media);
+ 930:../saMmapLoopback.c **** if (ret < 0)
+ 931:../saMmapLoopback.c **** goto err_0;
+ 932:../saMmapLoopback.c ****
+ 933:../saMmapLoopback.c **** /* Setup Links */
+ 934:../saMmapLoopback.c **** ret = setup_media_links(&media);
+ 935:../saMmapLoopback.c **** if (ret < 0)
+ 1184 .loc 1 935 0
1185 09c4 000054E3 cmp r4, #0
1186 09c8 B20300BA blt .L63
1187 .L82:
- 937:../saMmapLoopback.c **** goto err_0;
- 938:../saMmapLoopback.c ****
- 939:../saMmapLoopback.c **** media_device_close(media.media_fd);
- 1188 .loc 1 939 0
+ 936:../saMmapLoopback.c **** goto err_0;
+ 937:../saMmapLoopback.c ****
+ 938:../saMmapLoopback.c **** media_device_close(media.media_fd);
+ 1188 .loc 1 938 0
1189 09cc 0C3B9FE5 ldr r3, .L182+424
1190 09d0 63ED8DE2 add lr, sp, #6336
1191 09d4 28E08EE2 add lr, lr, #40
1465 .L86:
1466 .LBE82:
1467 .LBE66:
- 940:../saMmapLoopback.c **** #endif
- 941:../saMmapLoopback.c **** /* Open the capture device */
- 942:../saMmapLoopback.c **** ret = open_video_dev((const char *)CAPTURE_DEVICE, &capture.capture_fd);
- 943:../saMmapLoopback.c **** if (ret < 0)
- 944:../saMmapLoopback.c **** goto err_1;
- 945:../saMmapLoopback.c ****
- 946:../saMmapLoopback.c **** ret = get_current_capture_format(media.input_source, &capture);
- 947:../saMmapLoopback.c **** if (ret < 0)
- 948:../saMmapLoopback.c **** goto err_1;
- 949:../saMmapLoopback.c ****
- 950:../saMmapLoopback.c **** /* Make width/height capture = display*/
- 951:../saMmapLoopback.c **** display.width = capture.width;
- 1468 .loc 1 951 0
+ 939:../saMmapLoopback.c **** #endif
+ 940:../saMmapLoopback.c **** /* Open the capture device */
+ 941:../saMmapLoopback.c **** ret = open_video_dev((const char *)CAPTURE_DEVICE, &capture.capture_fd);
+ 942:../saMmapLoopback.c **** if (ret < 0)
+ 943:../saMmapLoopback.c **** goto err_1;
+ 944:../saMmapLoopback.c ****
+ 945:../saMmapLoopback.c **** ret = get_current_capture_format(media.input_source, &capture);
+ 946:../saMmapLoopback.c **** if (ret < 0)
+ 947:../saMmapLoopback.c **** goto err_1;
+ 948:../saMmapLoopback.c ****
+ 949:../saMmapLoopback.c **** /* Make width/height capture = display*/
+ 950:../saMmapLoopback.c **** display.width = capture.width;
+ 1468 .loc 1 950 0
1469 0c60 017A8DE2 add r7, sp, #4096
1470 .LBB83:
1471 .loc 1 356 0
1472 0c64 0210A0E3 mov r1, #2
1473 0c68 90079FE5 ldr r0, .L182+200
1474 .LBE83:
- 1475 .loc 1 951 0
+ 1475 .loc 1 950 0
1476 0c6c 483597E5 ldr r3, [r7, #1352]
1477 0c70 683687E5 str r3, [r7, #1640]
- 952:../saMmapLoopback.c **** display.height = capture.height;
- 1478 .loc 1 952 0
+ 951:../saMmapLoopback.c **** display.height = capture.height;
+ 1478 .loc 1 951 0
1479 0c74 4C3597E5 ldr r3, [r7, #1356]
1480 0c78 6C3687E5 str r3, [r7, #1644]
1481 .LBB102:
1755 0ea8 FEFFFFEB bl printf
1756 .LBE84:
1757 .LBE102:
- 953:../saMmapLoopback.c ****
- 954:../saMmapLoopback.c **** #if defined (CONFIG_OMAP3530)
- 955:../saMmapLoopback.c **** /*
- 956:../saMmapLoopback.c **** * Now set the detected format at each pad
- 957:../saMmapLoopback.c **** */
- 958:../saMmapLoopback.c **** ret = set_subdev_format(&media, &capture);
- 959:../saMmapLoopback.c **** if (ret < 0)
- 1758 .loc 1 959 0
+ 952:../saMmapLoopback.c ****
+ 953:../saMmapLoopback.c **** #if defined (CONFIG_OMAP3530)
+ 954:../saMmapLoopback.c **** /*
+ 955:../saMmapLoopback.c **** * Now set the detected format at each pad
+ 956:../saMmapLoopback.c **** */
+ 957:../saMmapLoopback.c **** ret = set_subdev_format(&media, &capture);
+ 958:../saMmapLoopback.c **** if (ret < 0)
+ 1758 .loc 1 958 0
1759 0eac 000055E3 cmp r5, #0
1760 0eb0 180200BA blt .L99
1761 0eb4 040000EA b .L108
2091 1144 FEFFFFEB bl printf
2092 .LBE105:
2093 .LBE104:
- 960:../saMmapLoopback.c **** goto err_2;
- 961:../saMmapLoopback.c **** #endif
- 962:../saMmapLoopback.c **** ret = capture_prepare_streaming(&capture);
- 963:../saMmapLoopback.c **** if(ret < 0)
- 964:../saMmapLoopback.c **** goto err_3;
- 965:../saMmapLoopback.c ****
- 966:../saMmapLoopback.c **** /* open display channel */
- 967:../saMmapLoopback.c **** ret = display_prepare_streaming(&display);
- 2094 .loc 1 967 0
+ 959:../saMmapLoopback.c **** goto err_2;
+ 960:../saMmapLoopback.c **** #endif
+ 961:../saMmapLoopback.c **** ret = capture_prepare_streaming(&capture);
+ 962:../saMmapLoopback.c **** if(ret < 0)
+ 963:../saMmapLoopback.c **** goto err_3;
+ 964:../saMmapLoopback.c ****
+ 965:../saMmapLoopback.c **** /* open display channel */
+ 966:../saMmapLoopback.c **** ret = display_prepare_streaming(&display);
+ 2094 .loc 1 966 0
2095 1148 550D8DE2 add r0, sp, #5440
2096 114c 100080E2 add r0, r0, #16
2097 1150 C1FBFFEB bl display_prepare_streaming
- 968:../saMmapLoopback.c **** if(ret < 0) {
- 2098 .loc 1 968 0
+ 967:../saMmapLoopback.c **** if(ret < 0) {
+ 2098 .loc 1 967 0
2099 1154 000050E3 cmp r0, #0
2100 1158 0E0000AA bge .L160
2101 115c 090000EA b .L181
2122 .L181:
2123 .LBE128:
2124 .LBE129:
- 969:../saMmapLoopback.c **** printf("Error in opening display device\n");
- 2125 .loc 1 969 0
+ 968:../saMmapLoopback.c **** printf("Error in opening display device\n");
+ 2125 .loc 1 968 0
2126 1188 DC029FE5 ldr r0, .L182+308
2127 118c FEFFFFEB bl puts
2128 .LVL95:
2132 1194 4B0100EA b .L128
2133 .LVL97:
2134 .L160:
- 970:../saMmapLoopback.c **** goto err_4;
- 971:../saMmapLoopback.c **** }
- 972:../saMmapLoopback.c ****
- 973:../saMmapLoopback.c **** /* run section
- 974:../saMmapLoopback.c **** * STEP2:
- 975:../saMmapLoopback.c **** * Here display and capture channels are started for streaming. After
- 976:../saMmapLoopback.c **** * this capture device will start capture frames into enqueued
- 977:../saMmapLoopback.c **** * buffers and display device will start displaying buffers from
- 978:../saMmapLoopback.c **** * the qneueued buffers */
- 979:../saMmapLoopback.c ****
- 980:../saMmapLoopback.c **** /* Start Streaming. on display device */
- 981:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 2135 .loc 1 981 0
+ 969:../saMmapLoopback.c **** goto err_4;
+ 970:../saMmapLoopback.c **** }
+ 971:../saMmapLoopback.c ****
+ 972:../saMmapLoopback.c **** /* run section
+ 973:../saMmapLoopback.c **** * STEP2:
+ 974:../saMmapLoopback.c **** * Here display and capture channels are started for streaming. After
+ 975:../saMmapLoopback.c **** * this capture device will start capture frames into enqueued
+ 976:../saMmapLoopback.c **** * buffers and display device will start displaying buffers from
+ 977:../saMmapLoopback.c **** * the qneueued buffers */
+ 978:../saMmapLoopback.c ****
+ 979:../saMmapLoopback.c **** /* Start Streaming. on display device */
+ 980:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 2135 .loc 1 980 0
2136 1198 634D8DE2 add r4, sp, #6336
2137 .LVL98:
- 982:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_STREAMON, &a);
- 2138 .loc 1 982 0
+ 981:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_STREAMON, &a);
+ 2138 .loc 1 981 0
2139 119c 013A8DE2 add r3, sp, #4096
- 2140 .loc 1 981 0
+ 2140 .loc 1 980 0
2141 11a0 284084E2 add r4, r4, #40
2142 11a4 0260A0E3 mov r6, #2
- 2143 .loc 1 982 0
+ 2143 .loc 1 981 0
2144 11a8 500593E5 ldr r0, [r3, #1360]
- 2145 .loc 1 981 0
+ 2145 .loc 1 980 0
2146 11ac 046024E5 str r6, [r4, #-4]!
2147 .LVL99:
- 2148 .loc 1 982 0
+ 2148 .loc 1 981 0
2149 11b0 0420A0E1 mov r2, r4
2150 11b4 B4129FE5 ldr r1, .L182+312
2151 11b8 FEFFFFEB bl ioctl
- 983:../saMmapLoopback.c **** if (ret < 0) {
- 2152 .loc 1 983 0
+ 982:../saMmapLoopback.c **** if (ret < 0) {
+ 2152 .loc 1 982 0
2153 11bc 000050E3 cmp r0, #0
2154 11c0 0B0000BA blt .L170
2155 .L129:
- 984:../saMmapLoopback.c **** perror("VIDIOC_STREAMON");
- 985:../saMmapLoopback.c **** goto err_4;
- 986:../saMmapLoopback.c **** }
- 987:../saMmapLoopback.c **** printf("%s: Stream on...\n", DISPLAY_NAME);
- 988:../saMmapLoopback.c ****
- 989:../saMmapLoopback.c **** /* Start Streaming. on capture device */
- 990:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_CAPTURE;
- 991:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_STREAMON, &a);
- 2156 .loc 1 991 0
+ 983:../saMmapLoopback.c **** perror("VIDIOC_STREAMON");
+ 984:../saMmapLoopback.c **** goto err_4;
+ 985:../saMmapLoopback.c **** }
+ 986:../saMmapLoopback.c **** printf("%s: Stream on...\n", DISPLAY_NAME);
+ 987:../saMmapLoopback.c ****
+ 988:../saMmapLoopback.c **** /* Start Streaming. on capture device */
+ 989:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_CAPTURE;
+ 990:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_STREAMON, &a);
+ 2156 .loc 1 990 0
2157 11c4 017A8DE2 add r7, sp, #4096
- 2158 .loc 1 987 0
+ 2158 .loc 1 986 0
2159 11c8 C4129FE5 ldr r1, .L182+348
2160 11cc A0029FE5 ldr r0, .L182+316
- 2161 .loc 1 990 0
+ 2161 .loc 1 989 0
2162 11d0 0150A0E3 mov r5, #1
- 2163 .loc 1 987 0
+ 2163 .loc 1 986 0
2164 11d4 FEFFFFEB bl printf
- 2165 .loc 1 991 0
+ 2165 .loc 1 990 0
2166 11d8 0420A0E1 mov r2, r4
2167 11dc 2C0497E5 ldr r0, [r7, #1068]
2168 11e0 88129FE5 ldr r1, .L182+312
- 2169 .loc 1 990 0
+ 2169 .loc 1 989 0
2170 11e4 E45887E5 str r5, [r7, #2276]
2171 .LVL100:
- 2172 .loc 1 991 0
+ 2172 .loc 1 990 0
2173 11e8 FEFFFFEB bl ioctl
- 992:../saMmapLoopback.c **** if (ret < 0) {
- 2174 .loc 1 992 0
+ 991:../saMmapLoopback.c **** if (ret < 0) {
+ 2174 .loc 1 991 0
2175 11ec 000050E3 cmp r0, #0
2176 11f0 010000AA bge .L131
2177 .LVL101:
2178 .L170:
- 993:../saMmapLoopback.c **** perror("VIDIOC_STREAMON");
- 2179 .loc 1 993 0
+ 992:../saMmapLoopback.c **** perror("VIDIOC_STREAMON");
+ 2179 .loc 1 992 0
2180 11f4 7C029FE5 ldr r0, .L182+320
2181 11f8 E70000EA b .L169
2182 .LVL102:
2183 .L131:
- 994:../saMmapLoopback.c **** goto err_4;
- 995:../saMmapLoopback.c **** }
- 996:../saMmapLoopback.c **** printf("%s: Stream on...\n", CAPTURE_NAME);
- 2184 .loc 1 996 0
+ 993:../saMmapLoopback.c **** goto err_4;
+ 994:../saMmapLoopback.c **** }
+ 995:../saMmapLoopback.c **** printf("%s: Stream on...\n", CAPTURE_NAME);
+ 2184 .loc 1 995 0
2185 11fc A0129FE5 ldr r1, .L182+364
- 997:../saMmapLoopback.c ****
- 998:../saMmapLoopback.c **** /* Set the display buffers for queuing and dqueueing operation */
- 999:../saMmapLoopback.c **** display.display_buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
-1000:../saMmapLoopback.c **** display.display_buf.index = 0;
- 2186 .loc 1 1000 0
+ 996:../saMmapLoopback.c ****
+ 997:../saMmapLoopback.c **** /* Set the display buffers for queuing and dqueueing operation */
+ 998:../saMmapLoopback.c **** display.display_buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 999:../saMmapLoopback.c **** display.display_buf.index = 0;
+ 2186 .loc 1 999 0
2187 1200 0040A0E3 mov r4, #0
- 2188 .loc 1 996 0
+ 2188 .loc 1 995 0
2189 1204 68029FE5 ldr r0, .L182+316
-1001:../saMmapLoopback.c **** display.display_buf.memory = V4L2_MEMORY_MMAP;
-1002:../saMmapLoopback.c ****
-1003:../saMmapLoopback.c **** /* Set the capture buffers for queuing and dqueueing operation */
-1004:../saMmapLoopback.c **** capture.capture_buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
-1005:../saMmapLoopback.c **** capture.capture_buf.index = 0;
-1006:../saMmapLoopback.c **** capture.capture_buf.memory = V4L2_MEMORY_MMAP;
-1007:../saMmapLoopback.c ****
-1008:../saMmapLoopback.c **** /* One buffer is dequeued from display and capture channels.
-1009:../saMmapLoopback.c **** * Capture buffer will be copied to display buffer.
-1010:../saMmapLoopback.c **** * All two buffers are put back to respective channels.
-1011:../saMmapLoopback.c **** * This sequence is repeated in loop.
-1012:../saMmapLoopback.c **** * After completion of this loop, channels are stopped.
-1013:../saMmapLoopback.c **** */
-1014:../saMmapLoopback.c **** gettimeofday(&before, NULL);
- 2190 .loc 1 1014 0
+1000:../saMmapLoopback.c **** display.display_buf.memory = V4L2_MEMORY_MMAP;
+1001:../saMmapLoopback.c ****
+1002:../saMmapLoopback.c **** /* Set the capture buffers for queuing and dqueueing operation */
+1003:../saMmapLoopback.c **** capture.capture_buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
+1004:../saMmapLoopback.c **** capture.capture_buf.index = 0;
+1005:../saMmapLoopback.c **** capture.capture_buf.memory = V4L2_MEMORY_MMAP;
+1006:../saMmapLoopback.c ****
+1007:../saMmapLoopback.c **** /* One buffer is dequeued from display and capture channels.
+1008:../saMmapLoopback.c **** * Capture buffer will be copied to display buffer.
+1009:../saMmapLoopback.c **** * All two buffers are put back to respective channels.
+1010:../saMmapLoopback.c **** * This sequence is repeated in loop.
+1011:../saMmapLoopback.c **** * After completion of this loop, channels are stopped.
+1012:../saMmapLoopback.c **** */
+1013:../saMmapLoopback.c **** gettimeofday(&before, NULL);
+ 2190 .loc 1 1013 0
2191 1208 0470A0E1 mov r7, r4
2192 .LVL103:
- 2193 .loc 1 996 0
+ 2193 .loc 1 995 0
2194 120c FEFFFFEB bl printf
- 2195 .loc 1 999 0
+ 2195 .loc 1 998 0
2196 1210 01CA8DE2 add ip, sp, #4096
- 2197 .loc 1 1014 0
+ 2197 .loc 1 1013 0
2198 1214 630D8DE2 add r0, sp, #6336
2199 1218 0410A0E1 mov r1, r4
- 2200 .loc 1 999 0
+ 2200 .loc 1 998 0
2201 121c 24668CE5 str r6, [ip, #1572]
- 2202 .loc 1 1014 0
+ 2202 .loc 1 1013 0
2203 1220 0C0080E2 add r0, r0, #12
- 2204 .loc 1 1006 0
+ 2204 .loc 1 1005 0
2205 1224 2C558CE5 str r5, [ip, #1324]
- 2206 .loc 1 1000 0
+ 2206 .loc 1 999 0
2207 1228 20468CE5 str r4, [ip, #1568]
- 2208 .loc 1 1001 0
+ 2208 .loc 1 1000 0
2209 122c 50568CE5 str r5, [ip, #1616]
- 2210 .loc 1 1004 0
+ 2210 .loc 1 1003 0
2211 1230 00558CE5 str r5, [ip, #1280]
- 2212 .loc 1 1005 0
+ 2212 .loc 1 1004 0
2213 1234 FC448CE5 str r4, [ip, #1276]
- 2214 .loc 1 1014 0
+ 2214 .loc 1 1013 0
2215 1238 FEFFFFEB bl gettimeofday
2216 123c A90000EA b .L132
2217 .LVL104:
2218 .L139:
2219 .LBB130:
-1015:../saMmapLoopback.c **** for (i = 0; i < loop_cnt; i++) {
-1016:../saMmapLoopback.c **** int h;
-1017:../saMmapLoopback.c **** unsigned char *cap_ptr, *dis_ptr;
-1018:../saMmapLoopback.c **** /* Dequeue display buffer */
-1019:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_DQBUF, &display.display_buf);
- 2220 .loc 1 1019 0
+1014:../saMmapLoopback.c **** for (i = 0; i < loop_cnt; i++) {
+1015:../saMmapLoopback.c **** int h;
+1016:../saMmapLoopback.c **** unsigned char *cap_ptr, *dis_ptr;
+1017:../saMmapLoopback.c **** /* Dequeue display buffer */
+1018:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_DQBUF, &display.display_buf);
+ 2220 .loc 1 1018 0
2221 1240 01EA8DE2 add lr, sp, #4096
2222 1244 162C8DE2 add r2, sp, #5632
2223 1248 202082E2 add r2, r2, #32
2224 124c 28129FE5 ldr r1, .L182+324
2225 1250 50059EE5 ldr r0, [lr, #1360]
2226 1254 FEFFFFEB bl ioctl
-1020:../saMmapLoopback.c **** if (ret < 0) {
- 2227 .loc 1 1020 0
+1019:../saMmapLoopback.c **** if (ret < 0) {
+ 2227 .loc 1 1019 0
2228 1258 000050E3 cmp r0, #0
2229 125c 070000BA blt .L171
2230 .L133:
-1021:../saMmapLoopback.c **** perror("VIDIOC_DQBUF");
-1022:../saMmapLoopback.c **** goto err_4;
-1023:../saMmapLoopback.c **** }
-1024:../saMmapLoopback.c ****
-1025:../saMmapLoopback.c **** /* Dequeue capture buffer */
-1026:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_DQBUF, &capture.capture_buf);
- 2231 .loc 1 1026 0
+1020:../saMmapLoopback.c **** perror("VIDIOC_DQBUF");
+1021:../saMmapLoopback.c **** goto err_4;
+1022:../saMmapLoopback.c **** }
+1023:../saMmapLoopback.c ****
+1024:../saMmapLoopback.c **** /* Dequeue capture buffer */
+1025:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_DQBUF, &capture.capture_buf);
+ 2231 .loc 1 1025 0
2232 1260 011A8DE2 add r1, sp, #4096
2233 1264 532D8DE2 add r2, sp, #5312
2234 1268 3C2082E2 add r2, r2, #60
2235 126c 2C0491E5 ldr r0, [r1, #1068]
2236 1270 04129FE5 ldr r1, .L182+324
2237 1274 FEFFFFEB bl ioctl
-1027:../saMmapLoopback.c **** if (ret < 0) {
- 2238 .loc 1 1027 0
+1026:../saMmapLoopback.c **** if (ret < 0) {
+ 2238 .loc 1 1026 0
2239 1278 000050E3 cmp r0, #0
2240 127c 010000AA bge .L134
2241 .L171:
-1028:../saMmapLoopback.c **** perror("VIDIOC_DQBUF");
- 2242 .loc 1 1028 0
+1027:../saMmapLoopback.c **** perror("VIDIOC_DQBUF");
+ 2242 .loc 1 1027 0
2243 1280 F8019FE5 ldr r0, .L182+328
2244 1284 C40000EA b .L169
2245 .L134:
-1029:../saMmapLoopback.c **** goto err_4;
-1030:../saMmapLoopback.c **** }
-1031:../saMmapLoopback.c ****
-1032:../saMmapLoopback.c **** cap_ptr = (unsigned char*)capture_buff_info[capture.capture_buf.index].start;
- 2246 .loc 1 1032 0
+1028:../saMmapLoopback.c **** goto err_4;
+1029:../saMmapLoopback.c **** }
+1030:../saMmapLoopback.c ****
+1031:../saMmapLoopback.c **** cap_ptr = (unsigned char*)capture_buff_info[capture.capture_buf.index].start;
+ 2246 .loc 1 1031 0
2247 1288 013A8DE2 add r3, sp, #4096
2248 128c F0019FE5 ldr r0, .L182+332
2249 1290 0C10A0E3 mov r1, #12
-1033:../saMmapLoopback.c **** dis_ptr = (unsigned char*)display_buff_info[display.display_buf.index].start;
- 2250 .loc 1 1033 0
+1032:../saMmapLoopback.c **** dis_ptr = (unsigned char*)display_buff_info[display.display_buf.index].start;
+ 2250 .loc 1 1032 0
2251 1294 0060A0E3 mov r6, #0
- 2252 .loc 1 1032 0
+ 2252 .loc 1 1031 0
2253 1298 FC2493E5 ldr r2, [r3, #1276]
- 2254 .loc 1 1033 0
+ 2254 .loc 1 1032 0
2255 129c 203693E5 ldr r3, [r3, #1568]
- 2256 .loc 1 1032 0
+ 2256 .loc 1 1031 0
2257 12a0 910222E0 mla r2, r1, r2, r0
- 2258 .loc 1 1033 0
+ 2258 .loc 1 1032 0
2259 12a4 910323E0 mla r3, r1, r3, r0
- 2260 .loc 1 1032 0
+ 2260 .loc 1 1031 0
2261 12a8 2C5092E5 ldr r5, [r2, #44]
- 2262 .loc 1 1033 0
+ 2262 .loc 1 1032 0
2263 12ac 084093E5 ldr r4, [r3, #8]
2264 12b0 0B0000EA b .L135
2265 .L136:
-1034:../saMmapLoopback.c **** for (h = 0; h < display.height; h++) {
-1035:../saMmapLoopback.c **** memcpy(dis_ptr, cap_ptr, display.width * 2);
- 2266 .loc 1 1035 0
+1033:../saMmapLoopback.c **** for (h = 0; h < display.height; h++) {
+1034:../saMmapLoopback.c **** memcpy(dis_ptr, cap_ptr, display.width * 2);
+ 2266 .loc 1 1034 0
2267 12b4 01CA8DE2 add ip, sp, #4096
2268 12b8 0400A0E1 mov r0, r4
2269 12bc 0510A0E1 mov r1, r5
- 2270 .loc 1 1034 0
+ 2270 .loc 1 1033 0
2271 12c0 016086E2 add r6, r6, #1
- 2272 .loc 1 1035 0
+ 2272 .loc 1 1034 0
2273 12c4 68269CE5 ldr r2, [ip, #1640]
2274 12c8 8220A0E1 mov r2, r2, asl #1
2275 12cc FEFFFFEB bl memcpy
-1036:../saMmapLoopback.c **** cap_ptr += capture.width * 2;
- 2276 .loc 1 1036 0
+1035:../saMmapLoopback.c **** cap_ptr += capture.width * 2;
+ 2276 .loc 1 1035 0
2277 12d0 01EA8DE2 add lr, sp, #4096
2278 12d4 48359EE5 ldr r3, [lr, #1352]
2279 12d8 835085E0 add r5, r5, r3, asl #1
-1037:../saMmapLoopback.c **** dis_ptr += display.width * 2;
- 2280 .loc 1 1037 0
+1036:../saMmapLoopback.c **** dis_ptr += display.width * 2;
+ 2280 .loc 1 1036 0
2281 12dc 68369EE5 ldr r3, [lr, #1640]
2282 12e0 834084E0 add r4, r4, r3, asl #1
2283 .L135:
- 2284 .loc 1 1034 0
+ 2284 .loc 1 1033 0
2285 12e4 010A8DE2 add r0, sp, #4096
2286 12e8 6C3690E5 ldr r3, [r0, #1644]
2287 12ec 030056E1 cmp r6, r3
2288 12f0 EFFFFF3A bcc .L136
-1038:../saMmapLoopback.c **** }
-1039:../saMmapLoopback.c ****
-1040:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_QBUF, &capture.capture_buf);
- 2289 .loc 1 1040 0
+1037:../saMmapLoopback.c **** }
+1038:../saMmapLoopback.c ****
+1039:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_QBUF, &capture.capture_buf);
+ 2289 .loc 1 1039 0
2290 12f4 532D8DE2 add r2, sp, #5312
2291 12f8 2C0490E5 ldr r0, [r0, #1068]
2292 12fc 3C2082E2 add r2, r2, #60
2293 1300 58119FE5 ldr r1, .L182+296
2294 1304 FEFFFFEB bl ioctl
-1041:../saMmapLoopback.c **** if (ret < 0) {
- 2295 .loc 1 1041 0
+1040:../saMmapLoopback.c **** if (ret < 0) {
+ 2295 .loc 1 1040 0
2296 1308 000050E3 cmp r0, #0
2297 130c 070000BA blt .L173
2298 .L137:
-1042:../saMmapLoopback.c **** perror("VIDIOC_QBUF");
-1043:../saMmapLoopback.c **** goto err_4;
-1044:../saMmapLoopback.c **** }
-1045:../saMmapLoopback.c ****
-1046:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_QBUF, &display.display_buf);
- 2299 .loc 1 1046 0
+1041:../saMmapLoopback.c **** perror("VIDIOC_QBUF");
+1042:../saMmapLoopback.c **** goto err_4;
+1043:../saMmapLoopback.c **** }
+1044:../saMmapLoopback.c ****
+1045:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_QBUF, &display.display_buf);
+ 2299 .loc 1 1045 0
2300 1310 011A8DE2 add r1, sp, #4096
2301 1314 162C8DE2 add r2, sp, #5632
2302 1318 202082E2 add r2, r2, #32
2303 131c 500591E5 ldr r0, [r1, #1360]
2304 1320 38119FE5 ldr r1, .L182+296
2305 1324 FEFFFFEB bl ioctl
-1047:../saMmapLoopback.c **** if (ret < 0) {
- 2306 .loc 1 1047 0
+1046:../saMmapLoopback.c **** if (ret < 0) {
+ 2306 .loc 1 1046 0
2307 1328 000050E3 cmp r0, #0
2308 132c 6C0000AA bge .L138
2309 .L173:
-1048:../saMmapLoopback.c **** perror("VIDIOC_QBUF");
- 2310 .loc 1 1048 0
+1047:../saMmapLoopback.c **** perror("VIDIOC_QBUF");
+ 2310 .loc 1 1047 0
2311 1330 2C019FE5 ldr r0, .L182+300
2312 1334 980000EA b .L169
2313 .L183:
2422 14e0 28E7FFFF .word -6360
2423 .L138:
2424 .LBE130:
- 2425 .loc 1 1015 0
+ 2425 .loc 1 1014 0
2426 14e4 017087E2 add r7, r7, #1
2427 .LVL105:
2428 .L132:
2430 14ec 020057E1 cmp r7, r2
2431 14f0 52FFFF3A bcc .L139
2432 .LVL106:
-1049:../saMmapLoopback.c **** goto err_4;
-1050:../saMmapLoopback.c **** }
-1051:../saMmapLoopback.c **** }
-1052:../saMmapLoopback.c **** gettimeofday(&after, NULL);
- 2433 .loc 1 1052 0
+1048:../saMmapLoopback.c **** goto err_4;
+1049:../saMmapLoopback.c **** }
+1050:../saMmapLoopback.c **** }
+1051:../saMmapLoopback.c **** gettimeofday(&after, NULL);
+ 2433 .loc 1 1051 0
2434 14f4 630D8DE2 add r0, sp, #6336
2435 14f8 0010A0E3 mov r1, #0
2436 14fc 040080E2 add r0, r0, #4
-1053:../saMmapLoopback.c ****
-1054:../saMmapLoopback.c **** /* Set video display rotation back to 0 degree */
-1055:../saMmapLoopback.c ****
-1056:../saMmapLoopback.c **** control.id = V4L2_CID_ROTATE;
- 2437 .loc 1 1056 0
+1052:../saMmapLoopback.c ****
+1053:../saMmapLoopback.c **** /* Set video display rotation back to 0 degree */
+1054:../saMmapLoopback.c **** control.id = V4L2_CID_ROTATE;
+ 2437 .loc 1 1054 0
2438 1500 017A8DE2 add r7, sp, #4096
2439 .LVL107:
- 2440 .loc 1 1052 0
+ 2440 .loc 1 1051 0
2441 1504 FEFFFFEB bl gettimeofday
-1057:../saMmapLoopback.c **** control.value = 0;
-1058:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_S_CTRL, &control);
- 2442 .loc 1 1058 0
+1055:../saMmapLoopback.c **** control.value = 0;
+1056:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_S_CTRL, &control);
+ 2442 .loc 1 1056 0
2443 1508 013A8DE2 add r3, sp, #4096
2444 150c 632D8DE2 add r2, sp, #6336
2445 1510 90101FE5 ldr r1, .L182+336
2446 1514 500593E5 ldr r0, [r3, #1360]
2447 1518 142082E2 add r2, r2, #20
- 2448 .loc 1 1056 0
+ 2448 .loc 1 1054 0
2449 151c 98301FE5 ldr r3, .L182+340
2450 1520 D43887E5 str r3, [r7, #2260]
- 2451 .loc 1 1057 0
+ 2451 .loc 1 1055 0
2452 1524 0030A0E3 mov r3, #0
2453 1528 D83887E5 str r3, [r7, #2264]
- 2454 .loc 1 1058 0
+ 2454 .loc 1 1056 0
2455 152c FEFFFFEB bl ioctl
-1059:../saMmapLoopback.c **** if (ret < 0) {
- 2456 .loc 1 1059 0
+1057:../saMmapLoopback.c **** if (ret < 0) {
+ 2456 .loc 1 1057 0
2457 1530 000050E3 cmp r0, #0
-1060:../saMmapLoopback.c **** perror("VIDIOC_S_CTRL");
- 2458 .loc 1 1060 0
+1058:../saMmapLoopback.c **** perror("VIDIOC_S_CTRL");
+ 2458 .loc 1 1058 0
2459 1534 AC001FB5 ldrlt r0, .L182+344
- 2460 .loc 1 1059 0
+ 2460 .loc 1 1057 0
2461 1538 170000BA blt .L169
-1061:../saMmapLoopback.c **** goto err_4;
-1062:../saMmapLoopback.c **** }
-1063:../saMmapLoopback.c ****
-1064:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 2462 .loc 1 1064 0
+1059:../saMmapLoopback.c **** goto err_4;
+1060:../saMmapLoopback.c **** }
+1061:../saMmapLoopback.c ****
+1062:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 2462 .loc 1 1062 0
2463 153c 634D8DE2 add r4, sp, #6336
2464 .LVL108:
-1065:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_STREAMOFF, &a);
- 2465 .loc 1 1065 0
+1063:../saMmapLoopback.c **** ret = ioctl(display.display_fd, VIDIOC_STREAMOFF, &a);
+ 2465 .loc 1 1063 0
2466 1540 01CA8DE2 add ip, sp, #4096
- 2467 .loc 1 1064 0
+ 2467 .loc 1 1062 0
2468 1544 284084E2 add r4, r4, #40
2469 1548 0230A0E3 mov r3, #2
- 2470 .loc 1 1065 0
+ 2470 .loc 1 1063 0
2471 154c 50059CE5 ldr r0, [ip, #1360]
- 2472 .loc 1 1064 0
+ 2472 .loc 1 1062 0
2473 1550 043024E5 str r3, [r4, #-4]!
2474 .LVL109:
- 2475 .loc 1 1065 0
+ 2475 .loc 1 1063 0
2476 1554 0420A0E1 mov r2, r4
2477 1558 C4101FE5 ldr r1, .L182+356
2478 155c FEFFFFEB bl ioctl
-1066:../saMmapLoopback.c **** if (ret < 0) {
- 2479 .loc 1 1066 0
+1064:../saMmapLoopback.c **** if (ret < 0) {
+ 2479 .loc 1 1064 0
2480 1560 000050E3 cmp r0, #0
2481 1564 0B0000BA blt .L172
2482 .L141:
-1067:../saMmapLoopback.c **** perror("VIDIOC_STREAMOFF");
-1068:../saMmapLoopback.c **** goto err_4;
-1069:../saMmapLoopback.c **** }
-1070:../saMmapLoopback.c **** printf("\n%s: Stream off!!\n", DISPLAY_NAME);
- 2483 .loc 1 1070 0
+1065:../saMmapLoopback.c **** perror("VIDIOC_STREAMOFF");
+1066:../saMmapLoopback.c **** goto err_4;
+1067:../saMmapLoopback.c **** }
+1068:../saMmapLoopback.c **** printf("\n%s: Stream off!!\n", DISPLAY_NAME);
+ 2483 .loc 1 1068 0
2484 1568 DC101FE5 ldr r1, .L182+348
2485 156c DC001FE5 ldr r0, .L182+352
2486 1570 FEFFFFEB bl printf
-1071:../saMmapLoopback.c ****
-1072:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_CAPTURE;
-1073:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_STREAMOFF, &a);
- 2487 .loc 1 1073 0
+1069:../saMmapLoopback.c ****
+1070:../saMmapLoopback.c **** a = V4L2_BUF_TYPE_VIDEO_CAPTURE;
+1071:../saMmapLoopback.c **** ret = ioctl(capture.capture_fd, VIDIOC_STREAMOFF, &a);
+ 2487 .loc 1 1071 0
2488 1574 01EA8DE2 add lr, sp, #4096
- 2489 .loc 1 1072 0
+ 2489 .loc 1 1070 0
2490 1578 0130A0E3 mov r3, #1
- 2491 .loc 1 1073 0
+ 2491 .loc 1 1071 0
2492 157c 0420A0E1 mov r2, r4
2493 1580 2C049EE5 ldr r0, [lr, #1068]
2494 1584 F0101FE5 ldr r1, .L182+356
- 2495 .loc 1 1072 0
+ 2495 .loc 1 1070 0
2496 1588 E4388EE5 str r3, [lr, #2276]
2497 .LVL110:
- 2498 .loc 1 1073 0
+ 2498 .loc 1 1071 0
2499 158c FEFFFFEB bl ioctl
-1074:../saMmapLoopback.c **** if (ret < 0) {
- 2500 .loc 1 1074 0
+1072:../saMmapLoopback.c **** if (ret < 0) {
+ 2500 .loc 1 1072 0
2501 1590 000050E3 cmp r0, #0
2502 1594 020000AA bge .L142
2503 .LVL111:
2504 .L172:
-1075:../saMmapLoopback.c **** perror("VIDIOC_STREAMOFF");
- 2505 .loc 1 1075 0
+1073:../saMmapLoopback.c **** perror("VIDIOC_STREAMOFF");
+ 2505 .loc 1 1073 0
2506 1598 00011FE5 ldr r0, .L182+360
2507 .LVL112:
2508 .L169:
2510 15a0 FAFEFFEA b .L130
2511 .LVL113:
2512 .L142:
-1076:../saMmapLoopback.c **** goto err_4;
-1077:../saMmapLoopback.c **** }
-1078:../saMmapLoopback.c **** printf("%s: Stream off!!\n", CAPTURE_NAME);
- 2513 .loc 1 1078 0
+1074:../saMmapLoopback.c **** goto err_4;
+1075:../saMmapLoopback.c **** }
+1076:../saMmapLoopback.c **** printf("%s: Stream off!!\n", CAPTURE_NAME);
+ 2513 .loc 1 1076 0
2514 15a4 08111FE5 ldr r1, .L182+364
2515 .LBB131:
2516 .LBB133:
- 2517 .loc 1 831 0
+ 2517 .loc 1 830 0
2518 15a8 017A8DE2 add r7, sp, #4096
2519 .LBE133:
2520 .LBE131:
- 2521 .loc 1 1078 0
+ 2521 .loc 1 1076 0
2522 15ac 0C011FE5 ldr r0, .L182+368
2523 15b0 FEFFFFEB bl printf
-1079:../saMmapLoopback.c ****
-1080:../saMmapLoopback.c **** printf("\nLoopback Successful\n\n");
- 2524 .loc 1 1080 0
+1077:../saMmapLoopback.c ****
+1078:../saMmapLoopback.c **** printf("\nLoopback Successful\n\n");
+ 2524 .loc 1 1078 0
2525 15b4 10011FE5 ldr r0, .L182+372
2526 15b8 FEFFFFEB bl puts
-1081:../saMmapLoopback.c **** printf("Timing Analysis:\n");
- 2527 .loc 1 1081 0
+1079:../saMmapLoopback.c **** printf("Timing Analysis:\n");
+ 2527 .loc 1 1079 0
2528 15bc 14011FE5 ldr r0, .L182+376
2529 15c0 FEFFFFEB bl puts
-1082:../saMmapLoopback.c **** printf("----------------\n");
- 2530 .loc 1 1082 0
+1080:../saMmapLoopback.c **** printf("----------------\n");
+ 2530 .loc 1 1080 0
2531 15c4 18011FE5 ldr r0, .L182+380
2532 15c8 FEFFFFEB bl puts
-1083:../saMmapLoopback.c **** printf("Before Time:\t%lu %lu\n",before.tv_sec, before.tv_usec);
- 2533 .loc 1 1083 0
+1081:../saMmapLoopback.c **** printf("Before Time:\t%lu %lu\n",before.tv_sec, before.tv_usec);
+ 2533 .loc 1 1081 0
2534 15cc 010A8DE2 add r0, sp, #4096
2535 15d0 CC1890E5 ldr r1, [r0, #2252]
2536 15d4 D02890E5 ldr r2, [r0, #2256]
2537 15d8 28011FE5 ldr r0, .L182+384
2538 15dc FEFFFFEB bl printf
-1084:../saMmapLoopback.c **** printf("After Time:\t%lu %lu\n",after.tv_sec, after.tv_usec);
- 2539 .loc 1 1084 0
+1082:../saMmapLoopback.c **** printf("After Time:\t%lu %lu\n",after.tv_sec, after.tv_usec);
+ 2539 .loc 1 1082 0
2540 15e0 012A8DE2 add r2, sp, #4096
2541 15e4 30011FE5 ldr r0, .L182+388
2542 15e8 C41892E5 ldr r1, [r2, #2244]
2544 15f0 FEFFFFEB bl printf
2545 .LBB137:
2546 .LBB132:
- 2547 .loc 1 831 0
+ 2547 .loc 1 830 0
2548 15f4 C83897E5 ldr r3, [r7, #2248]
2549 15f8 D04897E5 ldr r4, [r7, #2256]
2550 15fc 040053E1 cmp r3, r4
2551 1600 0A0000AA bge .L143
2552 .LBB135:
- 2553 .loc 1 833 0
+ 2553 .loc 1 832 0
2554 1604 040063E0 rsb r0, r3, r4
2555 1608 4C111FE5 ldr r1, .L182+396
2556 160c FEFFFFEB bl __aeabi_idiv
- 2557 .loc 1 835 0
+ 2557 .loc 1 834 0
2558 1610 01CA8DE2 add ip, sp, #4096
2559 1614 CC389CE5 ldr r3, [ip, #2252]
- 2560 .loc 1 833 0
+ 2560 .loc 1 832 0
2561 1618 010080E2 add r0, r0, #1
2562 .LVL114:
- 2563 .loc 1 835 0
+ 2563 .loc 1 834 0
2564 161c 003083E0 add r3, r3, r0
2565 1620 CC388CE5 str r3, [ip, #2252]
- 2566 .loc 1 834 0
+ 2566 .loc 1 833 0
2567 1624 6C311FE5 ldr r3, .L182+392
2568 1628 934020E0 mla r0, r3, r0, r4
2569 .LVL115:
2570 162c D0088CE5 str r0, [ip, #2256]
2571 .L143:
2572 .LBE135:
- 2573 .loc 1 837 0
+ 2573 .loc 1 836 0
2574 1630 01EA8DE2 add lr, sp, #4096
2575 1634 78411FE5 ldr r4, .L182+396
2576 1638 D0589EE5 ldr r5, [lr, #2256]
2580 1644 040050E1 cmp r0, r4
2581 1648 070000DA ble .L144
2582 .LBB134:
- 2583 .loc 1 839 0
+ 2583 .loc 1 838 0
2584 164c 0410A0E1 mov r1, r4
2585 1650 FEFFFFEB bl __aeabi_idiv
- 2586 .loc 1 841 0
+ 2586 .loc 1 840 0
2587 1654 011A8DE2 add r1, sp, #4096
2588 1658 CC3891E5 ldr r3, [r1, #2252]
- 2589 .loc 1 840 0
+ 2589 .loc 1 839 0
2590 165c 945022E0 mla r2, r4, r0, r5
- 2591 .loc 1 841 0
+ 2591 .loc 1 840 0
2592 1660 033060E0 rsb r3, r0, r3
2593 1664 CC3881E5 str r3, [r1, #2252]
- 2594 .loc 1 840 0
+ 2594 .loc 1 839 0
2595 1668 D02881E5 str r2, [r1, #2256]
2596 .L144:
2597 .LBE134:
- 2598 .loc 1 846 0
+ 2598 .loc 1 845 0
2599 166c 012A8DE2 add r2, sp, #4096
2600 .LBE132:
2601 .LBE137:
-1085:../saMmapLoopback.c **** timeval_subtract(&result, &after, &before);
-1086:../saMmapLoopback.c **** printf("Result Time:\t%ld %ld\n",result.tv_sec, result.tv_usec);
- 2602 .loc 1 1086 0
+1083:../saMmapLoopback.c **** timeval_subtract(&result, &after, &before);
+1084:../saMmapLoopback.c **** printf("Result Time:\t%ld %ld\n",result.tv_sec, result.tv_usec);
+ 2602 .loc 1 1084 0
2603 1670 B0011FE5 ldr r0, .L182+400
2604 .LBB138:
2605 .LBB136:
- 2606 .loc 1 846 0
+ 2606 .loc 1 845 0
2607 1674 CC3892E5 ldr r3, [r2, #2252]
2608 1678 C44892E5 ldr r4, [r2, #2244]
2609 167c 044063E0 rsb r4, r3, r4
2610 .LBE136:
2611 .LBE138:
- 2612 .loc 1 1086 0
+ 2612 .loc 1 1084 0
2613 1680 D03892E5 ldr r3, [r2, #2256]
2614 1684 C82892E5 ldr r2, [r2, #2248]
2615 1688 0410A0E1 mov r1, r4
2616 168c 022063E0 rsb r2, r3, r2
2617 1690 FEFFFFEB bl printf
-1087:../saMmapLoopback.c **** printf("Calculated Frame Rate:\t%ld Fps\n\n", loop_cnt/result.tv_sec);
- 2618 .loc 1 1087 0
+1085:../saMmapLoopback.c **** printf("Calculated Frame Rate:\t%ld Fps\n\n", loop_cnt/result.tv_sec);
+ 2618 .loc 1 1085 0
2619 1694 0410A0E1 mov r1, r4
2620 1698 08009DE5 ldr r0, [sp, #8]
2621 169c FEFFFFEB bl __aeabi_uidiv
2625 16ac B7FEFFEA b .L130
2626 .LVL117:
2627 .L145:
-1088:../saMmapLoopback.c ****
-1089:../saMmapLoopback.c **** err_4:
-1090:../saMmapLoopback.c **** /* Un-map the buffers */
-1091:../saMmapLoopback.c **** for (i = 0; i < display.num_bufs; i++) {
- 2628 .loc 1 1091 0
+1086:../saMmapLoopback.c ****
+1087:../saMmapLoopback.c **** err_4:
+1088:../saMmapLoopback.c **** /* Un-map the buffers */
+1089:../saMmapLoopback.c **** for (i = 0; i < display.num_bufs; i++) {
+ 2628 .loc 1 1089 0
2629 16b0 014084E2 add r4, r4, #1
-1092:../saMmapLoopback.c **** munmap(display_buff_info[i].start,
- 2630 .loc 1 1092 0
+1090:../saMmapLoopback.c **** munmap(display_buff_info[i].start,
+ 2630 .loc 1 1090 0
2631 16b4 0C0019E5 ldr r0, [r9, #-12]
2632 16b8 101019E5 ldr r1, [r9, #-16]
2633 16bc FEFFFFEB bl munmap
-1093:../saMmapLoopback.c **** display_buff_info[i].length);
-1094:../saMmapLoopback.c **** display_buff_info[i].start = NULL;
- 2634 .loc 1 1094 0
+1091:../saMmapLoopback.c **** display_buff_info[i].length);
+1092:../saMmapLoopback.c **** display_buff_info[i].start = NULL;
+ 2634 .loc 1 1092 0
2635 16c0 0030A0E3 mov r3, #0
2636 16c4 0C3009E5 str r3, [r9, #-12]
2637 .L128:
- 2638 .loc 1 1091 0
+ 2638 .loc 1 1089 0
2639 16c8 017A8DE2 add r7, sp, #4096
2640 16cc 0C9089E2 add r9, r9, #12
2641 16d0 643697E5 ldr r3, [r7, #1636]
2642 16d4 030054E1 cmp r4, r3
2643 16d8 F4FFFF3A bcc .L145
-1095:../saMmapLoopback.c **** }
-1096:../saMmapLoopback.c ****
-1097:../saMmapLoopback.c **** /* Close the file handle */
-1098:../saMmapLoopback.c **** close(display.display_fd);
- 2644 .loc 1 1098 0
+1093:../saMmapLoopback.c **** }
+1094:../saMmapLoopback.c ****
+1095:../saMmapLoopback.c **** /* Close the file handle */
+1096:../saMmapLoopback.c **** close(display.display_fd);
+ 2644 .loc 1 1096 0
2645 16dc 500597E5 ldr r0, [r7, #1360]
2646 16e0 FEFFFFEB bl close
2647 .LVL118:
2650 .LVL119:
2651 16e8 050000EA b .L146
2652 .L147:
-1099:../saMmapLoopback.c **** err_3:
-1100:../saMmapLoopback.c **** /* Un-map the buffers */
-1101:../saMmapLoopback.c **** for (i = 0; i < capture.num_bufs; i++) {
- 2653 .loc 1 1101 0
+1097:../saMmapLoopback.c **** err_3:
+1098:../saMmapLoopback.c **** /* Un-map the buffers */
+1099:../saMmapLoopback.c **** for (i = 0; i < capture.num_bufs; i++) {
+ 2653 .loc 1 1099 0
2654 16ec 014084E2 add r4, r4, #1
-1102:../saMmapLoopback.c **** munmap(capture_buff_info[i].start,
- 2655 .loc 1 1102 0
+1100:../saMmapLoopback.c **** munmap(capture_buff_info[i].start,
+ 2655 .loc 1 1100 0
2656 16f0 0C001BE5 ldr r0, [fp, #-12]
2657 16f4 10101BE5 ldr r1, [fp, #-16]
2658 16f8 FEFFFFEB bl munmap
-1103:../saMmapLoopback.c **** capture_buff_info[i].length);
-1104:../saMmapLoopback.c **** capture_buff_info[i].start = NULL;
- 2659 .loc 1 1104 0
+1101:../saMmapLoopback.c **** capture_buff_info[i].length);
+1102:../saMmapLoopback.c **** capture_buff_info[i].start = NULL;
+ 2659 .loc 1 1102 0
2660 16fc 0030A0E3 mov r3, #0
2661 1700 0C300BE5 str r3, [fp, #-12]
2662 .L146:
- 2663 .loc 1 1101 0
+ 2663 .loc 1 1099 0
2664 1704 01CA8DE2 add ip, sp, #4096
2665 1708 0CB08BE2 add fp, fp, #12
2666 170c 44359CE5 ldr r3, [ip, #1348]
2875 .L63:
2876 .LBE155:
2877 .LBE141:
-1105:../saMmapLoopback.c **** }
-1106:../saMmapLoopback.c **** err_2:
-1107:../saMmapLoopback.c **** /* Close the file handle */
-1108:../saMmapLoopback.c **** close_video_dev(capture.capture_fd);
-1109:../saMmapLoopback.c **** err_1:
-1110:../saMmapLoopback.c **** #if defined (CONFIG_OMAP3530)
-1111:../saMmapLoopback.c **** /*TODO: Must reset the media before exiting here */
-1112:../saMmapLoopback.c **** reset_media_links(&media);
-1113:../saMmapLoopback.c **** err_0:
-1114:../saMmapLoopback.c **** media_device_close(media.media_fd);
- 2878 .loc 1 1114 0
+1103:../saMmapLoopback.c **** }
+1104:../saMmapLoopback.c **** err_2:
+1105:../saMmapLoopback.c **** /* Close the file handle */
+1106:../saMmapLoopback.c **** close_video_dev(capture.capture_fd);
+1107:../saMmapLoopback.c **** err_1:
+1108:../saMmapLoopback.c **** #if defined (CONFIG_OMAP3530)
+1109:../saMmapLoopback.c **** /*TODO: Must reset the media before exiting here */
+1110:../saMmapLoopback.c **** reset_media_links(&media);
+1111:../saMmapLoopback.c **** err_0:
+1112:../saMmapLoopback.c **** media_device_close(media.media_fd);
+ 2878 .loc 1 1112 0
2879 1898 C0331FE5 ldr r3, .L182+424
2880 189c 637D8DE2 add r7, sp, #6336
2881 18a0 287087E2 add r7, r7, #40
2885 .LVL135:
2886 .L55:
2887 .LVL136:
-1115:../saMmapLoopback.c **** #endif
-1116:../saMmapLoopback.c **** return 0;
-1117:../saMmapLoopback.c **** }
- 2888 .loc 1 1117 0
+1113:../saMmapLoopback.c **** #endif
+1114:../saMmapLoopback.c **** return 0;
+1115:../saMmapLoopback.c **** }
+ 2888 .loc 1 1115 0
2889 18b0 ECD08DE2 add sp, sp, #236
2890 18b4 06DB8DE2 add sp, sp, #6144
2891 18b8 F08FBDE8 ldmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc}
3179 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saMmapLoopback.c
- /tmp/cc9Ksqr8.s:20 .text:00000000 $a
- /tmp/cc9Ksqr8.s:22 .text:00000000 media_device_close
+ /tmp/ccLJ4Btn.s:20 .text:00000000 $a
+ /tmp/ccLJ4Btn.s:22 .text:00000000 media_device_close
.ARM.exidx:00000000 $d
- /tmp/cc9Ksqr8.s:38 .text:00000004 $a
- /tmp/cc9Ksqr8.s:40 .text:00000004 media_device_open
- /tmp/cc9Ksqr8.s:81 .text:0000004c $d
- /tmp/cc9Ksqr8.s:88 .text:0000005c $a
- /tmp/cc9Ksqr8.s:90 .text:0000005c display_prepare_streaming
- /tmp/cc9Ksqr8.s:420 .text:00000334 $d
- /tmp/cc9Ksqr8.s:452 .text:000003a0 $a
- /tmp/cc9Ksqr8.s:455 .text:000003a0 main
- /tmp/cc9Ksqr8.s:2316 .text:00001338 $d
- /tmp/cc9Ksqr8.s:2426 .text:000014e4 $a
+ /tmp/ccLJ4Btn.s:38 .text:00000004 $a
+ /tmp/ccLJ4Btn.s:40 .text:00000004 media_device_open
+ /tmp/ccLJ4Btn.s:81 .text:0000004c $d
+ /tmp/ccLJ4Btn.s:88 .text:0000005c $a
+ /tmp/ccLJ4Btn.s:90 .text:0000005c display_prepare_streaming
+ /tmp/ccLJ4Btn.s:420 .text:00000334 $d
+ /tmp/ccLJ4Btn.s:452 .text:000003a0 $a
+ /tmp/ccLJ4Btn.s:455 .text:000003a0 main
+ /tmp/ccLJ4Btn.s:2316 .text:00001338 $d
+ /tmp/ccLJ4Btn.s:2426 .text:000014e4 $a
.ARM.extab:00000000 $d
- /tmp/cc9Ksqr8.s:2897 .rodata.str1.1:00000000 $d
- /tmp/cc9Ksqr8.s:3061 .bss:00000000 $d
- /tmp/cc9Ksqr8.s:3065 .bss:00000000 display_buff_info
- /tmp/cc9Ksqr8.s:3069 .bss:00000024 capture_buff_info
- /tmp/cc9Ksqr8.s:3183 .debug_loc:00000000 $d
+ /tmp/ccLJ4Btn.s:2897 .rodata.str1.1:00000000 $d
+ /tmp/ccLJ4Btn.s:3061 .bss:00000000 $d
+ /tmp/ccLJ4Btn.s:3065 .bss:00000000 display_buff_info
+ /tmp/ccLJ4Btn.s:3069 .bss:00000024 capture_buff_info
+ /tmp/ccLJ4Btn.s:3183 .debug_loc:00000000 $d
UNDEFINED SYMBOLS
close
index f860e6034798d63b5921df65d3eb28338a0bf0b3..76e911970546693f39146627a5c1b97da0377946 100755 (executable)
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saScalingDisplay/Release}</value>
+ <value>${workspace_loc:/saScalingDisplay/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
diff --git a/saScalingDisplay/Debug/saScalingDisplay.o.lst b/saScalingDisplay/Debug/saScalingDisplay.o.lst
index 2034bc704aa245b87ce3b28838b8caea469737dc..dddd758f17c8abcfecf79e4f082b3fa7843c8c7a 100644 (file)
1336 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saScalingDisplay.c
- /tmp/ccFTYZCR.s:20 .text:00000000 $a
- /tmp/ccFTYZCR.s:22 .text:00000000 set_scaling
- /tmp/ccFTYZCR.s:183 .text:00000144 $d
+ /tmp/cc7eby7S.s:20 .text:00000000 $a
+ /tmp/cc7eby7S.s:22 .text:00000000 set_scaling
+ /tmp/cc7eby7S.s:183 .text:00000144 $d
.ARM.exidx:00000000 $d
- /tmp/ccFTYZCR.s:196 .text:0000016c $a
- /tmp/ccFTYZCR.s:198 .text:0000016c open_display
- /tmp/ccFTYZCR.s:245 .text:000001c0 $d
- /tmp/ccFTYZCR.s:253 .text:000001d4 $a
- /tmp/ccFTYZCR.s:255 .text:000001d4 get_format
- /tmp/ccFTYZCR.s:318 .text:00000248 $d
- /tmp/ccFTYZCR.s:324 .text:00000254 $a
- /tmp/ccFTYZCR.s:326 .text:00000254 startDisplay
- /tmp/ccFTYZCR.s:366 .text:00000298 $d
- /tmp/ccFTYZCR.s:372 .text:000002a4 $a
- /tmp/ccFTYZCR.s:374 .text:000002a4 stopDisplay
- /tmp/ccFTYZCR.s:414 .text:000002e8 $d
- /tmp/ccFTYZCR.s:420 .text:000002f4 $a
- /tmp/ccFTYZCR.s:422 .text:000002f4 setup_buffers
- /tmp/ccFTYZCR.s:682 .text:00000508 $d
+ /tmp/cc7eby7S.s:196 .text:0000016c $a
+ /tmp/cc7eby7S.s:198 .text:0000016c open_display
+ /tmp/cc7eby7S.s:245 .text:000001c0 $d
+ /tmp/cc7eby7S.s:253 .text:000001d4 $a
+ /tmp/cc7eby7S.s:255 .text:000001d4 get_format
+ /tmp/cc7eby7S.s:318 .text:00000248 $d
+ /tmp/cc7eby7S.s:324 .text:00000254 $a
+ /tmp/cc7eby7S.s:326 .text:00000254 startDisplay
+ /tmp/cc7eby7S.s:366 .text:00000298 $d
+ /tmp/cc7eby7S.s:372 .text:000002a4 $a
+ /tmp/cc7eby7S.s:374 .text:000002a4 stopDisplay
+ /tmp/cc7eby7S.s:414 .text:000002e8 $d
+ /tmp/cc7eby7S.s:420 .text:000002f4 $a
+ /tmp/cc7eby7S.s:422 .text:000002f4 setup_buffers
+ /tmp/cc7eby7S.s:682 .text:00000508 $d
*COM*:00000044 buf
- /tmp/ccFTYZCR.s:696 .text:00000534 $a
- /tmp/ccFTYZCR.s:698 .text:00000534 releaseDisplay
- /tmp/ccFTYZCR.s:740 .text:00000588 $d
- /tmp/ccFTYZCR.s:746 .text:00000594 $a
- /tmp/ccFTYZCR.s:749 .text:00000594 main
- /tmp/ccFTYZCR.s:1020 .text:000007ac $d
- /tmp/ccFTYZCR.s:1039 .rodata:00000000 $d
- /tmp/ccFTYZCR.s:1043 .rodata:00000000 ycbcr
- /tmp/ccFTYZCR.s:1054 .rodata.str1.1:00000000 $d
- /tmp/ccFTYZCR.s:1093 .data:00000000 $d
- /tmp/ccFTYZCR.s:1097 .data:00000000 display_dev_name
- /tmp/ccFTYZCR.s:1103 .data:00000020 numbuffers
- /tmp/ccFTYZCR.s:1107 .data:00000024 loop_count
- /tmp/ccFTYZCR.s:1110 .bss:00000000 $d
- /tmp/ccFTYZCR.s:1114 .bss:00000000 display_fd
- /tmp/ccFTYZCR.s:1118 .bss:00000004 display_buff_info
- /tmp/ccFTYZCR.s:1122 .bss:00000028 dispwidth
- /tmp/ccFTYZCR.s:1126 .bss:0000002c dispheight
- /tmp/ccFTYZCR.s:1130 .bss:00000030 sizeimage
+ /tmp/cc7eby7S.s:696 .text:00000534 $a
+ /tmp/cc7eby7S.s:698 .text:00000534 releaseDisplay
+ /tmp/cc7eby7S.s:740 .text:00000588 $d
+ /tmp/cc7eby7S.s:746 .text:00000594 $a
+ /tmp/cc7eby7S.s:749 .text:00000594 main
+ /tmp/cc7eby7S.s:1020 .text:000007ac $d
+ /tmp/cc7eby7S.s:1039 .rodata:00000000 $d
+ /tmp/cc7eby7S.s:1043 .rodata:00000000 ycbcr
+ /tmp/cc7eby7S.s:1054 .rodata.str1.1:00000000 $d
+ /tmp/cc7eby7S.s:1093 .data:00000000 $d
+ /tmp/cc7eby7S.s:1097 .data:00000000 display_dev_name
+ /tmp/cc7eby7S.s:1103 .data:00000020 numbuffers
+ /tmp/cc7eby7S.s:1107 .data:00000024 loop_count
+ /tmp/cc7eby7S.s:1110 .bss:00000000 $d
+ /tmp/cc7eby7S.s:1114 .bss:00000000 display_fd
+ /tmp/cc7eby7S.s:1118 .bss:00000004 display_buff_info
+ /tmp/cc7eby7S.s:1122 .bss:00000028 dispwidth
+ /tmp/cc7eby7S.s:1126 .bss:0000002c dispheight
+ /tmp/cc7eby7S.s:1130 .bss:00000030 sizeimage
UNDEFINED SYMBOLS
ioctl
diff --git a/saSrcColorkey/.project b/saSrcColorkey/.project
index 3baed1b9d08c4eb40726ba73811f675e447e2ebc..879c38256189d3e488d6a96f74dc468fe6d151de 100755 (executable)
--- a/saSrcColorkey/.project
+++ b/saSrcColorkey/.project
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saSrcColorkey/Release}</value>
+ <value>${workspace_loc:/saSrcColorkey/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
index 439997a6387249489f1a429e43e9b4fcd0152823..20ace69bc3d3898eadbc62873f2af59d55467fe8 100644 (file)
1430 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saSrcColorkey.c
- /tmp/cc1zkw6B.s:20 .text:00000000 $a
- /tmp/cc1zkw6B.s:23 .text:00000000 main
- /tmp/cc1zkw6B.s:155 .text:00000128 $d
- /tmp/cc1zkw6B.s:498 .text:00000420 video1_threadfun
- /tmp/cc1zkw6B.s:172 .text:00000154 graphics_threadfun
+ /tmp/cck6MpAF.s:20 .text:00000000 $a
+ /tmp/cck6MpAF.s:23 .text:00000000 main
+ /tmp/cck6MpAF.s:155 .text:00000128 $d
+ /tmp/cck6MpAF.s:498 .text:00000420 video1_threadfun
+ /tmp/cck6MpAF.s:172 .text:00000154 graphics_threadfun
.ARM.exidx:00000000 $d
- /tmp/cc1zkw6B.s:170 .text:00000154 $a
- /tmp/cc1zkw6B.s:481 .text:000003f0 $d
- /tmp/cc1zkw6B.s:496 .text:00000420 $a
- /tmp/cc1zkw6B.s:1188 .text:00000a34 $d
- /tmp/cc1zkw6B.s:1222 .rodata:00000000 $d
- /tmp/cc1zkw6B.s:1226 .rodata:00000000 ycbcr
- /tmp/cc1zkw6B.s:1237 .rodata.str1.1:00000000 $d
- /tmp/cc1zkw6B.s:1309 .data:00000000 $d
- /tmp/cc1zkw6B.s:1313 .data:00000000 display_dev_name
- /tmp/cc1zkw6B.s:1319 .data:00000020 loop_count
- /tmp/cc1zkw6B.s:1323 .data:00000024 dev_name
- /tmp/cc1zkw6B.s:1326 .data:00000042 $d
+ /tmp/cck6MpAF.s:170 .text:00000154 $a
+ /tmp/cck6MpAF.s:481 .text:000003f0 $d
+ /tmp/cck6MpAF.s:496 .text:00000420 $a
+ /tmp/cck6MpAF.s:1188 .text:00000a34 $d
+ /tmp/cck6MpAF.s:1222 .rodata:00000000 $d
+ /tmp/cck6MpAF.s:1226 .rodata:00000000 ycbcr
+ /tmp/cck6MpAF.s:1237 .rodata.str1.1:00000000 $d
+ /tmp/cck6MpAF.s:1309 .data:00000000 $d
+ /tmp/cck6MpAF.s:1313 .data:00000000 display_dev_name
+ /tmp/cck6MpAF.s:1319 .data:00000020 loop_count
+ /tmp/cck6MpAF.s:1323 .data:00000024 dev_name
+ /tmp/cck6MpAF.s:1326 .data:00000042 $d
UNDEFINED SYMBOLS
memcpy
index 5f3c9a855063d2cb0b733790d310d3acdceae39b..5f22c18010def94fa8b12393f683648f0d5f461e 100755 (executable)
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saUserPtrLoopback/Release}</value>
+ <value>${workspace_loc:/saUserPtrLoopback/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
diff --git a/saUserPtrLoopback/Debug/saUserPtrLoopback.o.lst b/saUserPtrLoopback/Debug/saUserPtrLoopback.o.lst
index f57b3c849fd9786592d3b5bd7af89f639fc79d40..51ceb9c34932a377237c9f71ec4599d8a249bb48 100644 (file)
3416 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saUserPtrLoopback.c
- /tmp/ccZkVXcn.s:20 .text:00000000 $a
- /tmp/ccZkVXcn.s:22 .text:00000000 media_device_close
+ /tmp/cc414pAh.s:20 .text:00000000 $a
+ /tmp/cc414pAh.s:22 .text:00000000 media_device_close
.ARM.exidx:00000000 $d
- /tmp/ccZkVXcn.s:38 .text:00000004 $a
- /tmp/ccZkVXcn.s:40 .text:00000004 media_device_open
- /tmp/ccZkVXcn.s:81 .text:0000004c $d
- /tmp/ccZkVXcn.s:88 .text:0000005c $a
- /tmp/ccZkVXcn.s:90 .text:0000005c set_subdev_format
- /tmp/ccZkVXcn.s:312 .text:0000022c $d
- /tmp/ccZkVXcn.s:323 .text:00000248 $a
- /tmp/ccZkVXcn.s:326 .text:00000248 main
- /tmp/ccZkVXcn.s:2186 .text:000011cc $d
- /tmp/ccZkVXcn.s:2297 .text:00001380 $a
+ /tmp/cc414pAh.s:38 .text:00000004 $a
+ /tmp/cc414pAh.s:40 .text:00000004 media_device_open
+ /tmp/cc414pAh.s:81 .text:0000004c $d
+ /tmp/cc414pAh.s:88 .text:0000005c $a
+ /tmp/cc414pAh.s:90 .text:0000005c set_subdev_format
+ /tmp/cc414pAh.s:312 .text:0000022c $d
+ /tmp/cc414pAh.s:323 .text:00000248 $a
+ /tmp/cc414pAh.s:326 .text:00000248 main
+ /tmp/cc414pAh.s:2186 .text:000011cc $d
+ /tmp/cc414pAh.s:2297 .text:00001380 $a
.ARM.extab:00000000 $d
- /tmp/ccZkVXcn.s:3123 .rodata.str1.1:00000000 $d
- /tmp/ccZkVXcn.s:3296 .bss:00000000 $d
- /tmp/ccZkVXcn.s:3300 .bss:00000000 capture_buff_info
- /tmp/ccZkVXcn.s:3304 .bss:00000048 display_buff_info
- /tmp/ccZkVXcn.s:3308 .bss:00000090 video2_buff_info
- /tmp/ccZkVXcn.s:3420 .debug_loc:00000000 $d
+ /tmp/cc414pAh.s:3123 .rodata.str1.1:00000000 $d
+ /tmp/cc414pAh.s:3296 .bss:00000000 $d
+ /tmp/cc414pAh.s:3300 .bss:00000000 capture_buff_info
+ /tmp/cc414pAh.s:3304 .bss:00000048 display_buff_info
+ /tmp/cc414pAh.s:3308 .bss:00000090 video2_buff_info
+ /tmp/cc414pAh.s:3420 .debug_loc:00000000 $d
UNDEFINED SYMBOLS
close
index b04b352337651574a05dddc3fca6d6aa931b3c5c..e32d3521ed0a55a17afde81818e5b71c7352ce39 100755 (executable)
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saUserptrDisplay/Release}</value>
+ <value>${workspace_loc:/saUserptrDisplay/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
diff --git a/saUserptrDisplay/Debug/saUserptrDisplay.o.lst b/saUserptrDisplay/Debug/saUserptrDisplay.o.lst
index 6e36858836d014c9513b7f98e21d497b5f328254..bfa5feb27b62e7dfdfc0f46961dcb0f536cb0d70 100644 (file)
1031 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saUserptrDisplay.c
- /tmp/ccVTlXsk.s:20 .text:00000000 $a
- /tmp/ccVTlXsk.s:22 .text:00000000 color_bar
- /tmp/ccVTlXsk.s:95 .text:00000078 $d
+ /tmp/ccvbeCzV.s:20 .text:00000000 $a
+ /tmp/ccvbeCzV.s:22 .text:00000000 color_bar
+ /tmp/ccvbeCzV.s:95 .text:00000078 $d
.ARM.exidx:00000000 $d
- /tmp/ccVTlXsk.s:102 .text:0000007c $a
- /tmp/ccVTlXsk.s:104 .text:0000007c app_main
- /tmp/ccVTlXsk.s:623 .text:00000540 $d
- /tmp/ccVTlXsk.s:659 .text:000005c4 $a
- /tmp/ccVTlXsk.s:662 .text:000005c4 main
- /tmp/ccVTlXsk.s:825 .text:00000700 $d
- /tmp/ccVTlXsk.s:835 .rodata:00000000 $d
- /tmp/ccVTlXsk.s:839 .rodata:00000000 ycbcr
- /tmp/ccVTlXsk.s:850 .rodata.str1.1:00000000 $d
- /tmp/ccVTlXsk.s:901 .data:00000000 $d
- /tmp/ccVTlXsk.s:905 .data:00000000 display_dev_name
- /tmp/ccVTlXsk.s:910 .data:0000001e fbdev_driver_name
- /tmp/ccVTlXsk.s:916 .data:00000034 loop_count
- /tmp/ccVTlXsk.s:919 .bss:00000000 $d
- /tmp/ccVTlXsk.s:923 .bss:00000000 display_fd
- /tmp/ccVTlXsk.s:927 .bss:00000004 fbdev_fd
- /tmp/ccVTlXsk.s:931 .bss:00000008 is_perf_en
- /tmp/ccVTlXsk.s:935 .bss:0000000c display_buff_info
+ /tmp/ccvbeCzV.s:102 .text:0000007c $a
+ /tmp/ccvbeCzV.s:104 .text:0000007c app_main
+ /tmp/ccvbeCzV.s:623 .text:00000540 $d
+ /tmp/ccvbeCzV.s:659 .text:000005c4 $a
+ /tmp/ccvbeCzV.s:662 .text:000005c4 main
+ /tmp/ccvbeCzV.s:825 .text:00000700 $d
+ /tmp/ccvbeCzV.s:835 .rodata:00000000 $d
+ /tmp/ccvbeCzV.s:839 .rodata:00000000 ycbcr
+ /tmp/ccvbeCzV.s:850 .rodata.str1.1:00000000 $d
+ /tmp/ccvbeCzV.s:901 .data:00000000 $d
+ /tmp/ccvbeCzV.s:905 .data:00000000 display_dev_name
+ /tmp/ccvbeCzV.s:910 .data:0000001e fbdev_driver_name
+ /tmp/ccvbeCzV.s:916 .data:00000034 loop_count
+ /tmp/ccvbeCzV.s:919 .bss:00000000 $d
+ /tmp/ccvbeCzV.s:923 .bss:00000000 display_fd
+ /tmp/ccvbeCzV.s:927 .bss:00000004 fbdev_fd
+ /tmp/ccvbeCzV.s:931 .bss:00000008 is_perf_en
+ /tmp/ccvbeCzV.s:935 .bss:0000000c display_buff_info
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
index b1d183212a9079c31336ee8ecea17015a55ab9f9..c14ca8251364de4c53382486103f9b22138ef004 100755 (executable)
--- a/saV4L2Rotation/.project
+++ b/saV4L2Rotation/.project
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/saV4L2Rotation/Release}</value>
+ <value>${workspace_loc:/saV4L2Rotation/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
index e3b2e7fb92a5b73c84d8267ff65b12a29070337c..d9393d4693ca5582956033de06ddefa7db5fdf77 100644 (file)
1401 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saV4L2Rotation.c
- /tmp/ccZPuv1t.s:20 .text:00000000 $a
- /tmp/ccZPuv1t.s:22 .text:00000000 color_bar
- /tmp/ccZPuv1t.s:101 .text:00000084 $d
+ /tmp/ccnGX2uk.s:20 .text:00000000 $a
+ /tmp/ccnGX2uk.s:22 .text:00000000 color_bar
+ /tmp/ccnGX2uk.s:101 .text:00000084 $d
.ARM.exidx:00000000 $d
- /tmp/ccZPuv1t.s:105 .text:00000088 $a
- /tmp/ccZPuv1t.s:107 .text:00000088 set_format
- /tmp/ccZPuv1t.s:184 .text:0000011c $d
- /tmp/ccZPuv1t.s:193 .text:00000134 $a
- /tmp/ccZPuv1t.s:195 .text:00000134 get_format
- /tmp/ccZPuv1t.s:258 .text:000001a8 $d
- /tmp/ccZPuv1t.s:264 .text:000001b4 $a
- /tmp/ccZPuv1t.s:266 .text:000001b4 startDisplay
- /tmp/ccZPuv1t.s:306 .text:000001f8 $d
- /tmp/ccZPuv1t.s:312 .text:00000204 $a
- /tmp/ccZPuv1t.s:314 .text:00000204 stopDisplay
- /tmp/ccZPuv1t.s:354 .text:00000248 $d
- /tmp/ccZPuv1t.s:360 .text:00000254 $a
- /tmp/ccZPuv1t.s:362 .text:00000254 set_rotation
- /tmp/ccZPuv1t.s:408 .text:0000029c $d
- /tmp/ccZPuv1t.s:415 .text:000002ac $a
- /tmp/ccZPuv1t.s:417 .text:000002ac setup_buffers
- /tmp/ccZPuv1t.s:609 .text:0000044c $d
+ /tmp/ccnGX2uk.s:105 .text:00000088 $a
+ /tmp/ccnGX2uk.s:107 .text:00000088 set_format
+ /tmp/ccnGX2uk.s:184 .text:0000011c $d
+ /tmp/ccnGX2uk.s:193 .text:00000134 $a
+ /tmp/ccnGX2uk.s:195 .text:00000134 get_format
+ /tmp/ccnGX2uk.s:258 .text:000001a8 $d
+ /tmp/ccnGX2uk.s:264 .text:000001b4 $a
+ /tmp/ccnGX2uk.s:266 .text:000001b4 startDisplay
+ /tmp/ccnGX2uk.s:306 .text:000001f8 $d
+ /tmp/ccnGX2uk.s:312 .text:00000204 $a
+ /tmp/ccnGX2uk.s:314 .text:00000204 stopDisplay
+ /tmp/ccnGX2uk.s:354 .text:00000248 $d
+ /tmp/ccnGX2uk.s:360 .text:00000254 $a
+ /tmp/ccnGX2uk.s:362 .text:00000254 set_rotation
+ /tmp/ccnGX2uk.s:408 .text:0000029c $d
+ /tmp/ccnGX2uk.s:415 .text:000002ac $a
+ /tmp/ccnGX2uk.s:417 .text:000002ac setup_buffers
+ /tmp/ccnGX2uk.s:609 .text:0000044c $d
*COM*:00000044 buf
- /tmp/ccZPuv1t.s:622 .text:00000474 $a
- /tmp/ccZPuv1t.s:624 .text:00000474 open_display
- /tmp/ccZPuv1t.s:671 .text:000004c8 $d
- /tmp/ccZPuv1t.s:679 .text:000004dc $a
- /tmp/ccZPuv1t.s:681 .text:000004dc releaseDisplay
- /tmp/ccZPuv1t.s:723 .text:00000530 $d
- /tmp/ccZPuv1t.s:730 .text:0000053c $a
- /tmp/ccZPuv1t.s:733 .text:0000053c main
- /tmp/ccZPuv1t.s:1050 .text:000007d8 $d
- /tmp/ccZPuv1t.s:1071 .rodata:00000000 $d
- /tmp/ccZPuv1t.s:1075 .rodata:00000000 ycbcr
- /tmp/ccZPuv1t.s:1086 .rodata.str1.1:00000000 $d
- /tmp/ccZPuv1t.s:1124 .data:00000000 $d
- /tmp/ccZPuv1t.s:1128 .data:00000000 numbuffers
- /tmp/ccZPuv1t.s:1132 .data:00000004 display_dev_name
- /tmp/ccZPuv1t.s:1138 .data:00000024 loop_count
- /tmp/ccZPuv1t.s:1141 .bss:00000000 $d
- /tmp/ccZPuv1t.s:1145 .bss:00000000 display_fd
- /tmp/ccZPuv1t.s:1149 .bss:00000004 display_buff_info
- /tmp/ccZPuv1t.s:1153 .bss:00000028 dispwidth
- /tmp/ccZPuv1t.s:1157 .bss:0000002c dispheight
- /tmp/ccZPuv1t.s:1161 .bss:00000030 sizeimage
+ /tmp/ccnGX2uk.s:622 .text:00000474 $a
+ /tmp/ccnGX2uk.s:624 .text:00000474 open_display
+ /tmp/ccnGX2uk.s:671 .text:000004c8 $d
+ /tmp/ccnGX2uk.s:679 .text:000004dc $a
+ /tmp/ccnGX2uk.s:681 .text:000004dc releaseDisplay
+ /tmp/ccnGX2uk.s:723 .text:00000530 $d
+ /tmp/ccnGX2uk.s:730 .text:0000053c $a
+ /tmp/ccnGX2uk.s:733 .text:0000053c main
+ /tmp/ccnGX2uk.s:1050 .text:000007d8 $d
+ /tmp/ccnGX2uk.s:1071 .rodata:00000000 $d
+ /tmp/ccnGX2uk.s:1075 .rodata:00000000 ycbcr
+ /tmp/ccnGX2uk.s:1086 .rodata.str1.1:00000000 $d
+ /tmp/ccnGX2uk.s:1124 .data:00000000 $d
+ /tmp/ccnGX2uk.s:1128 .data:00000000 numbuffers
+ /tmp/ccnGX2uk.s:1132 .data:00000004 display_dev_name
+ /tmp/ccnGX2uk.s:1138 .data:00000024 loop_count
+ /tmp/ccnGX2uk.s:1141 .bss:00000000 $d
+ /tmp/ccnGX2uk.s:1145 .bss:00000000 display_fd
+ /tmp/ccnGX2uk.s:1149 .bss:00000004 display_buff_info
+ /tmp/ccnGX2uk.s:1153 .bss:00000028 dispwidth
+ /tmp/ccnGX2uk.s:1157 .bss:0000002c dispheight
+ /tmp/ccnGX2uk.s:1161 .bss:00000030 sizeimage
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0
index 7fad9ab389e762b3db4407e7be9bf17793d31d18..5a971f73b8f374d7ed494f847e13ea2ec9c7b516 100644 (file)
68:../saVideoARGB.c **** #define NUMBUFFERS 2
69:../saVideoARGB.c **** #define IMG_WIDTH 400
70:../saVideoARGB.c **** #define IMG_HEIGHT 272
- 71:../saVideoARGB.c **** #define OMAP_BMP_FILE1 "/usr/share/matrix/images/omap1.rgb"
- 72:../saVideoARGB.c **** #define OMAP_BMP_FILE2 "/usr/share/matrix/images/omap.rgb"
- 73:../saVideoARGB.c **** #define LOOPCOUNT 30
- 74:../saVideoARGB.c ****
- 75:../saVideoARGB.c **** #ifdef CONFIG_OMAP3530
- 76:../saVideoARGB.c **** char dev_name[2][20] = { "/dev/video7", "/dev/video8" };
- 77:../saVideoARGB.c **** #else
- 78:../saVideoARGB.c **** char dev_name[2][20] = { "/dev/video1", "/dev/video2" };
- 79:../saVideoARGB.c **** #endif
- 80:../saVideoARGB.c ****
- 81:../saVideoARGB.c **** static unsigned int loop_count = LOOPCOUNT;
- 82:../saVideoARGB.c **** static unsigned int video1[IMG_WIDTH][IMG_HEIGHT];
- 83:../saVideoARGB.c **** static unsigned int video2[IMG_WIDTH][IMG_HEIGHT];
- 84:../saVideoARGB.c ****
- 85:../saVideoARGB.c **** struct buf_info {
- 86:../saVideoARGB.c **** unsigned int length;
- 87:../saVideoARGB.c **** char *start;
- 88:../saVideoARGB.c **** };
- 89:../saVideoARGB.c ****
- 90:../saVideoARGB.c **** static void fill(void *start, unsigned int w, unsigned int h,unsigned int flag)
- 91:../saVideoARGB.c **** {
- 26 .loc 1 91 0
+ 71:../saVideoARGB.c **** //define OMAP_BMP_FILE1 "omap1.rgb"
+ 72:../saVideoARGB.c **** #define OMAP_BMP_FILE1 "tex.svg"
+ 73:../saVideoARGB.c **** //define OMAP_BMP_FILE2 "omap.rgb"
+ 74:../saVideoARGB.c **** #define OMAP_BMP_FILE2 "tex.svg"
+ 75:../saVideoARGB.c **** #define LOOPCOUNT 30
+ 76:../saVideoARGB.c ****
+ 77:../saVideoARGB.c **** #ifdef CONFIG_OMAP3530
+ 78:../saVideoARGB.c **** char dev_name[2][20] = { "/dev/video7", "/dev/video8" };
+ 79:../saVideoARGB.c **** #else
+ 80:../saVideoARGB.c **** char dev_name[2][20] = { "/dev/video1", "/dev/video2" };
+ 81:../saVideoARGB.c **** #endif
+ 82:../saVideoARGB.c ****
+ 83:../saVideoARGB.c **** static unsigned int loop_count = LOOPCOUNT;
+ 84:../saVideoARGB.c **** static unsigned int video1[IMG_WIDTH][IMG_HEIGHT];
+ 85:../saVideoARGB.c **** static unsigned int video2[IMG_WIDTH][IMG_HEIGHT];
+ 86:../saVideoARGB.c ****
+ 87:../saVideoARGB.c **** struct buf_info {
+ 88:../saVideoARGB.c **** unsigned int length;
+ 89:../saVideoARGB.c **** char *start;
+ 90:../saVideoARGB.c **** };
+ 91:../saVideoARGB.c ****
+ 92:../saVideoARGB.c **** static void fill(void *start, unsigned int w, unsigned int h,unsigned int flag)
+ 93:../saVideoARGB.c **** {
+ 26 .loc 1 93 0
27 @ args = 0, pretend = 0, frame = 0
28 @ frame_needed = 0, uses_anonymous_args = 0
29 .LVL0:
- 92:../saVideoARGB.c **** int i, j;
- 93:../saVideoARGB.c **** static int count = 0;
- 94:../saVideoARGB.c **** static int direction = 0;
- 95:../saVideoARGB.c ****
- 96:../saVideoARGB.c **** if(flag == 1) {
- 30 .loc 1 96 0
+ 94:../saVideoARGB.c **** int i, j;
+ 95:../saVideoARGB.c **** static int count = 0;
+ 96:../saVideoARGB.c **** static int direction = 0;
+ 97:../saVideoARGB.c ****
+ 98:../saVideoARGB.c **** if(flag == 1) {
+ 30 .loc 1 98 0
31 0000 010053E3 cmp r3, #1
- 32 .loc 1 91 0
+ 32 .loc 1 93 0
33 0004 F04F2DE9 stmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
34 .save {r4, r5, r6, r7, r8, r9, sl, fp, lr}
35 .LCFI0:
- 36 .loc 1 91 0
+ 36 .loc 1 93 0
37 0008 0370A0E1 mov r7, r3
38 000c 0160A0E1 mov r6, r1
39 0010 02B0A0E1 mov fp, r2
- 40 .loc 1 96 0
+ 40 .loc 1 98 0
41 0014 1200001A bne .L2
42 .LVL1:
- 97:../saVideoARGB.c **** if(count >= 250 || (count <= 0 && direction)) {
- 43 .loc 1 97 0
+ 99:../saVideoARGB.c **** if(count >= 250 || (count <= 0 && direction)) {
+ 43 .loc 1 99 0
44 0018 E0309FE5 ldr r3, .L15
45 001c 00C093E5 ldr ip, [r3, #0]
46 0020 F9005CE3 cmp ip, #249
51 0034 000053E3 cmp r3, #0
52 0038 0300000A beq .L4
53 .L3:
- 98:../saVideoARGB.c **** direction = ~direction;
- 54 .loc 1 98 0
+ 100:../saVideoARGB.c **** direction = ~direction;
+ 54 .loc 1 100 0
55 003c BC209FE5 ldr r2, .L15
56 0040 043092E5 ldr r3, [r2, #4]
57 0044 0330E0E1 mvn r3, r3
58 0048 043082E5 str r3, [r2, #4]
59 .LVL2:
60 .L4:
- 99:../saVideoARGB.c **** }
- 100:../saVideoARGB.c **** if(!direction)
- 61 .loc 1 100 0
+ 101:../saVideoARGB.c **** }
+ 102:../saVideoARGB.c **** if(!direction)
+ 61 .loc 1 102 0
62 004c AC209FE5 ldr r2, .L15
63 0050 043092E5 ldr r3, [r2, #4]
64 0054 000053E3 cmp r3, #0
- 101:../saVideoARGB.c **** count+=25;
- 65 .loc 1 101 0
+ 103:../saVideoARGB.c **** count+=25;
+ 65 .loc 1 103 0
66 0058 19308C02 addeq r3, ip, #25
- 102:../saVideoARGB.c **** else
- 103:../saVideoARGB.c **** count-=25;
- 67 .loc 1 103 0
+ 104:../saVideoARGB.c **** else
+ 105:../saVideoARGB.c **** count-=25;
+ 67 .loc 1 105 0
68 005c 19304C12 subne r3, ip, #25
69 0060 003082E5 str r3, [r2, #0]
70 .LVL3:
71 .L2:
- 104:../saVideoARGB.c **** }
- 105:../saVideoARGB.c **** unsigned int *ptr = (unsigned int *)start;
- 106:../saVideoARGB.c **** ptr += w* (h-1) ;
- 107:../saVideoARGB.c **** for(i = 0 ; i < h ; i ++) {
- 108:../saVideoARGB.c **** for (j = 0 ; j < w ; j ++) {
- 109:../saVideoARGB.c **** if(flag == 1) {
- 110:../saVideoARGB.c **** *ptr = ((video2[i][j] & 0x00FFFFFF) |
- 111:../saVideoARGB.c **** count << 24);
- 112:../saVideoARGB.c **** } else if (flag == 0) {
- 113:../saVideoARGB.c **** *ptr = video1[i][j];
- 114:../saVideoARGB.c **** }
- 115:../saVideoARGB.c **** ptr ++;
- 116:../saVideoARGB.c **** }
- 117:../saVideoARGB.c **** ptr -= 2*w;
- 72 .loc 1 117 0
+ 106:../saVideoARGB.c **** }
+ 107:../saVideoARGB.c **** unsigned int *ptr = (unsigned int *)start;
+ 108:../saVideoARGB.c **** ptr += w* (h-1) ;
+ 109:../saVideoARGB.c **** for(i = 0 ; i < h ; i ++) {
+ 110:../saVideoARGB.c **** for (j = 0 ; j < w ; j ++) {
+ 111:../saVideoARGB.c **** if(flag == 1) {
+ 112:../saVideoARGB.c **** *ptr = ((video2[i][j] & 0x00FFFFFF) |
+ 113:../saVideoARGB.c **** count << 24);
+ 114:../saVideoARGB.c **** } else if (flag == 0) {
+ 115:../saVideoARGB.c **** *ptr = video1[i][j];
+ 116:../saVideoARGB.c **** }
+ 117:../saVideoARGB.c **** ptr ++;
+ 118:../saVideoARGB.c **** }
+ 119:../saVideoARGB.c **** ptr -= 2*w;
+ 72 .loc 1 119 0
73 0064 8631A0E1 mov r3, r6, asl #3
- 74 .loc 1 106 0
+ 74 .loc 1 108 0
75 0068 0681A0E1 mov r8, r6, asl #2
- 76 .loc 1 117 0
+ 76 .loc 1 119 0
77 006c 009063E2 rsb r9, r3, #0
- 78 .loc 1 110 0
+ 78 .loc 1 112 0
79 0070 88309FE5 ldr r3, .L15
- 80 .loc 1 106 0
+ 80 .loc 1 108 0
81 0074 07214BE2 sub r2, fp, #-1073741823
- 82 .loc 1 117 0
+ 82 .loc 1 119 0
83 0078 0050A0E3 mov r5, #0
84 .LVL4:
- 85 .loc 1 110 0
+ 85 .loc 1 112 0
86 007c 003093E5 ldr r3, [r3, #0]
- 87 .loc 1 106 0
+ 87 .loc 1 108 0
88 0080 920824E0 mla r4, r2, r8, r0
89 .LVL5:
- 90 .loc 1 110 0
+ 90 .loc 1 112 0
91 0084 03ACA0E1 mov sl, r3, asl #24
92 0088 110000EA b .L6
93 .LVL6:
94 .L9:
- 95 .loc 1 109 0
+ 95 .loc 1 111 0
96 008c 010057E3 cmp r7, #1
- 97 .loc 1 110 0
+ 97 .loc 1 112 0
98 0090 00309205 ldreq r3, [r2, #0]
99 0094 FF34C303 biceq r3, r3, #-16777216
100 0098 03308A01 orreq r3, sl, r3
- 101 .loc 1 109 0
+ 101 .loc 1 111 0
102 009c 0200000A beq .L14
- 103 .loc 1 112 0
+ 103 .loc 1 114 0
104 00a0 000057E3 cmp r7, #0
105 00a4 0100001A bne .L8
- 106 .loc 1 113 0
+ 106 .loc 1 115 0
107 00a8 003090E5 ldr r3, [r0, #0]
108 .L14:
109 00ac 0C3084E7 str r3, [r4, ip]
110 .L8:
- 111 .loc 1 108 0
+ 111 .loc 1 110 0
112 00b0 011081E2 add r1, r1, #1
113 00b4 04C08CE2 add ip, ip, #4
114 00b8 042082E2 add r2, r2, #4
116 .L11:
117 00c0 060051E1 cmp r1, r6
118 00c4 F0FFFF3A bcc .L9
- 119 .loc 1 91 0
+ 119 .loc 1 93 0
120 00c8 083089E0 add r3, r9, r8
- 121 .loc 1 107 0
+ 121 .loc 1 109 0
122 00cc 015085E2 add r5, r5, #1
- 123 .loc 1 91 0
+ 123 .loc 1 93 0
124 00d0 034084E0 add r4, r4, r3
125 .LVL7:
126 .L6:
- 127 .loc 1 107 0
+ 127 .loc 1 109 0
128 00d4 0B0055E1 cmp r5, fp
129 00d8 F08FBD28 ldmcsfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc}
130 00dc 113DA0E3 mov r3, #1088
152 main:
153 .fnstart
154 .LFB6:
- 118:../saVideoARGB.c **** }
- 119:../saVideoARGB.c ****
- 120:../saVideoARGB.c **** }
+ 120:../saVideoARGB.c **** }
121:../saVideoARGB.c ****
- 122:../saVideoARGB.c **** /* Thread for video2 streaming */
- 123:../saVideoARGB.c **** static void * video2_threadfun(void *ptr)
- 124:../saVideoARGB.c **** {
- 125:../saVideoARGB.c **** int mode = O_RDWR, ret, j, i;
- 126:../saVideoARGB.c **** int fd, a, numbuffers = NUMBUFFERS, ch_no = *(int*)ptr;
- 127:../saVideoARGB.c **** struct v4l2_requestbuffers req;
- 128:../saVideoARGB.c **** struct v4l2_buffer buf;
- 129:../saVideoARGB.c **** struct buf_info *buff_info;
- 130:../saVideoARGB.c **** struct v4l2_format fmt;
- 131:../saVideoARGB.c **** struct v4l2_crop crop;
- 132:../saVideoARGB.c ****
- 133:../saVideoARGB.c **** /* Open the video2 device */
- 134:../saVideoARGB.c **** fd = open((const char *)dev_name[ch_no], mode);
- 135:../saVideoARGB.c **** if (fd <= 0) {
- 136:../saVideoARGB.c **** printf("Cannot open = %s device\n", dev_name[ch_no]);
- 137:../saVideoARGB.c **** exit(0);
- 138:../saVideoARGB.c **** }
- 139:../saVideoARGB.c ****
- 140:../saVideoARGB.c **** /* Get the format before setting and
- 141:../saVideoARGB.c **** * set only required parameters */
- 142:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 143:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
- 144:../saVideoARGB.c **** if (ret < 0) {
- 145:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
- 146:../saVideoARGB.c **** close(fd);
- 147:../saVideoARGB.c **** exit(0);
- 148:../saVideoARGB.c **** }
- 149:../saVideoARGB.c **** /* Set the image size and pixel format*/
- 150:../saVideoARGB.c **** fmt.fmt.pix.width = IMG_WIDTH;
- 151:../saVideoARGB.c **** fmt.fmt.pix.height = IMG_HEIGHT;
- 152:../saVideoARGB.c **** fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_RGB32;
- 153:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
- 154:../saVideoARGB.c **** if (ret < 0) {
- 155:../saVideoARGB.c **** perror("VIDIOC_S_FMT\n");
- 156:../saVideoARGB.c **** close(fd);
- 157:../saVideoARGB.c **** exit(0);
- 158:../saVideoARGB.c **** }
- 159:../saVideoARGB.c **** /* Get the crop before setting and
- 160:../saVideoARGB.c **** * set only required parameters */
- 161:../saVideoARGB.c **** crop.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 162:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_CROP, &crop);
- 163:../saVideoARGB.c **** if (ret < 0) {
- 164:../saVideoARGB.c **** perror("VIDIOC_G_CROP\n");
- 165:../saVideoARGB.c **** close(fd);
- 166:../saVideoARGB.c **** exit(0);
- 167:../saVideoARGB.c **** }
- 168:../saVideoARGB.c **** /* Set the Cropping parameters */
- 169:../saVideoARGB.c **** crop.c.left = 0;
- 170:../saVideoARGB.c **** crop.c.top = 0;
- 171:../saVideoARGB.c **** crop.c.width = IMG_WIDTH;
- 172:../saVideoARGB.c **** crop.c.height = IMG_HEIGHT;
- 173:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_CROP, &crop);
- 174:../saVideoARGB.c **** if (ret < 0) {
- 175:../saVideoARGB.c **** perror("VIDIOC_S_CROP\n");
- 176:../saVideoARGB.c **** close(fd);
- 177:../saVideoARGB.c **** exit(0);
- 178:../saVideoARGB.c **** }
- 179:../saVideoARGB.c ****
- 180:../saVideoARGB.c **** /* Get the window parameters before setting
- 181:../saVideoARGB.c **** * and set only required parameters */
- 182:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OVERLAY;
- 183:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
- 184:../saVideoARGB.c **** if (ret < 0) {
- 185:../saVideoARGB.c **** perror("VIDIOC_G_FMT 2\n");
- 186:../saVideoARGB.c **** close(fd);
- 187:../saVideoARGB.c **** exit(0);
- 188:../saVideoARGB.c **** }
- 189:../saVideoARGB.c **** /* Set the window size */
- 190:../saVideoARGB.c **** fmt.fmt.win.w.left =0 ;
- 191:../saVideoARGB.c **** fmt.fmt.win.w.top = 0;
- 192:../saVideoARGB.c **** fmt.fmt.win.w.width = IMG_WIDTH;
- 193:../saVideoARGB.c **** fmt.fmt.win.w.height = IMG_HEIGHT;
- 194:../saVideoARGB.c **** fmt.fmt.win.global_alpha = 255;
- 195:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
- 196:../saVideoARGB.c **** if (ret < 0) {
- 197:../saVideoARGB.c **** perror("VIDIOC_S_FMT 2\n");
- 198:../saVideoARGB.c **** close(fd);
- 199:../saVideoARGB.c **** exit(0);
- 200:../saVideoARGB.c **** }
- 201:../saVideoARGB.c ****
- 202:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 203:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
- 204:../saVideoARGB.c **** if (ret < 0) {
- 205:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
- 206:../saVideoARGB.c **** close(fd);
- 207:../saVideoARGB.c **** exit(0);
- 208:../saVideoARGB.c **** }
- 209:../saVideoARGB.c ****
- 210:../saVideoARGB.c **** /* Request the buffers from the driver */
- 211:../saVideoARGB.c **** /* req.memory can be user memory also */
- 212:../saVideoARGB.c **** req.count = numbuffers;
- 213:../saVideoARGB.c **** req.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 214:../saVideoARGB.c **** req.memory = V4L2_MEMORY_MMAP;
- 215:../saVideoARGB.c ****
- 216:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_REQBUFS, &req);
- 217:../saVideoARGB.c **** if (ret < 0) {
- 218:../saVideoARGB.c **** perror("cannot allocate memory\n");
- 219:../saVideoARGB.c **** close(fd);
- 220:../saVideoARGB.c **** exit(0);
- 221:../saVideoARGB.c **** }
- 222:../saVideoARGB.c ****
- 223:../saVideoARGB.c **** buff_info =
- 224:../saVideoARGB.c **** (struct buf_info *) malloc(sizeof(struct buf_info) *
- 225:../saVideoARGB.c **** req.count);
- 226:../saVideoARGB.c **** if (!buff_info) {
- 227:../saVideoARGB.c **** printf("cannot allocate memory for buff_info\n");
- 228:../saVideoARGB.c **** close(fd);
- 229:../saVideoARGB.c **** exit(0);
- 230:../saVideoARGB.c **** }
- 231:../saVideoARGB.c ****
- 232:../saVideoARGB.c **** /* Query to get the physical address of the allocated
- 233:../saVideoARGB.c **** * buffers and get the virtual address of the buffer by
- 234:../saVideoARGB.c **** * passing the physical address to mmap call of the driver
- 235:../saVideoARGB.c **** */
- 236:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
- 237:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 238:../saVideoARGB.c **** buf.index = i;
- 239:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QUERYBUF, &buf);
- 240:../saVideoARGB.c **** if (ret < 0) {
- 241:../saVideoARGB.c **** perror("VIDIOC_QUERYCAP\n");
- 242:../saVideoARGB.c **** for (j = 0; j < i; j++)
- 243:../saVideoARGB.c **** munmap(buff_info[j].start,
- 244:../saVideoARGB.c **** buff_info[j].length);
- 245:../saVideoARGB.c **** close(fd);
- 246:../saVideoARGB.c **** exit(0);
- 247:../saVideoARGB.c **** }
- 248:../saVideoARGB.c **** buff_info[i].length = buf.length;
- 249:../saVideoARGB.c **** buff_info[i].start =
- 250:../saVideoARGB.c **** mmap(NULL, buf.length, PROT_READ | PROT_WRITE,
- 251:../saVideoARGB.c **** MAP_SHARED, fd, buf.m.offset);
- 252:../saVideoARGB.c ****
- 253:../saVideoARGB.c **** if ((unsigned int) buff_info[i].start ==
- 254:../saVideoARGB.c **** MAP_SHARED) {
- 255:../saVideoARGB.c **** printf("Cannot mmap = %d buffer\n", i);
- 256:../saVideoARGB.c **** for (j = 0; j < i; j++)
- 257:../saVideoARGB.c **** munmap(buff_info[j].start,
- 258:../saVideoARGB.c **** buff_info[j].length);
- 259:../saVideoARGB.c **** close(fd);
- 260:../saVideoARGB.c **** exit(0);
- 261:../saVideoARGB.c **** }
- 262:../saVideoARGB.c **** memset(buff_info[i].start, 0x80, buff_info[i].length);
- 263:../saVideoARGB.c **** /* Fill the buffer with the RGB data and Alpha value*/
- 264:../saVideoARGB.c **** fill(buff_info[i].start, fmt.fmt.pix.width,
- 265:../saVideoARGB.c **** fmt.fmt.pix.height, 1);
- 266:../saVideoARGB.c **** }
- 267:../saVideoARGB.c ****
- 268:../saVideoARGB.c **** memset(&buf, 0, sizeof(buf));
+ 122:../saVideoARGB.c **** }
+ 123:../saVideoARGB.c ****
+ 124:../saVideoARGB.c **** /* Thread for video2 streaming */
+ 125:../saVideoARGB.c **** static void * video2_threadfun(void *ptr)
+ 126:../saVideoARGB.c **** {
+ 127:../saVideoARGB.c **** int mode = O_RDWR, ret, j, i;
+ 128:../saVideoARGB.c **** int fd, a, numbuffers = NUMBUFFERS, ch_no = *(int*)ptr;
+ 129:../saVideoARGB.c **** struct v4l2_requestbuffers req;
+ 130:../saVideoARGB.c **** struct v4l2_buffer buf;
+ 131:../saVideoARGB.c **** struct buf_info *buff_info;
+ 132:../saVideoARGB.c **** struct v4l2_format fmt;
+ 133:../saVideoARGB.c **** struct v4l2_crop crop;
+ 134:../saVideoARGB.c ****
+ 135:../saVideoARGB.c **** /* Open the video2 device */
+ 136:../saVideoARGB.c **** fd = open((const char *)dev_name[ch_no], mode);
+ 137:../saVideoARGB.c **** if (fd <= 0) {
+ 138:../saVideoARGB.c **** printf("Cannot open = %s device\n", dev_name[ch_no]);
+ 139:../saVideoARGB.c **** exit(0);
+ 140:../saVideoARGB.c **** }
+ 141:../saVideoARGB.c ****
+ 142:../saVideoARGB.c **** /* Get the format before setting and
+ 143:../saVideoARGB.c **** * set only required parameters */
+ 144:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 145:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
+ 146:../saVideoARGB.c **** if (ret < 0) {
+ 147:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
+ 148:../saVideoARGB.c **** close(fd);
+ 149:../saVideoARGB.c **** exit(0);
+ 150:../saVideoARGB.c **** }
+ 151:../saVideoARGB.c **** /* Set the image size and pixel format*/
+ 152:../saVideoARGB.c **** fmt.fmt.pix.width = IMG_WIDTH;
+ 153:../saVideoARGB.c **** fmt.fmt.pix.height = IMG_HEIGHT;
+ 154:../saVideoARGB.c **** fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_RGB32;
+ 155:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
+ 156:../saVideoARGB.c **** if (ret < 0) {
+ 157:../saVideoARGB.c **** perror("VIDIOC_S_FMT\n");
+ 158:../saVideoARGB.c **** close(fd);
+ 159:../saVideoARGB.c **** exit(0);
+ 160:../saVideoARGB.c **** }
+ 161:../saVideoARGB.c **** /* Get the crop before setting and
+ 162:../saVideoARGB.c **** * set only required parameters */
+ 163:../saVideoARGB.c **** crop.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 164:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_CROP, &crop);
+ 165:../saVideoARGB.c **** if (ret < 0) {
+ 166:../saVideoARGB.c **** perror("VIDIOC_G_CROP\n");
+ 167:../saVideoARGB.c **** close(fd);
+ 168:../saVideoARGB.c **** exit(0);
+ 169:../saVideoARGB.c **** }
+ 170:../saVideoARGB.c **** /* Set the Cropping parameters */
+ 171:../saVideoARGB.c **** crop.c.left = 0;
+ 172:../saVideoARGB.c **** crop.c.top = 0;
+ 173:../saVideoARGB.c **** crop.c.width = IMG_WIDTH;
+ 174:../saVideoARGB.c **** crop.c.height = IMG_HEIGHT;
+ 175:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_CROP, &crop);
+ 176:../saVideoARGB.c **** if (ret < 0) {
+ 177:../saVideoARGB.c **** perror("VIDIOC_S_CROP\n");
+ 178:../saVideoARGB.c **** close(fd);
+ 179:../saVideoARGB.c **** exit(0);
+ 180:../saVideoARGB.c **** }
+ 181:../saVideoARGB.c ****
+ 182:../saVideoARGB.c **** /* Get the window parameters before setting
+ 183:../saVideoARGB.c **** * and set only required parameters */
+ 184:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OVERLAY;
+ 185:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
+ 186:../saVideoARGB.c **** if (ret < 0) {
+ 187:../saVideoARGB.c **** perror("VIDIOC_G_FMT 2\n");
+ 188:../saVideoARGB.c **** close(fd);
+ 189:../saVideoARGB.c **** exit(0);
+ 190:../saVideoARGB.c **** }
+ 191:../saVideoARGB.c **** /* Set the window size */
+ 192:../saVideoARGB.c **** fmt.fmt.win.w.left =0 ;
+ 193:../saVideoARGB.c **** fmt.fmt.win.w.top = 0;
+ 194:../saVideoARGB.c **** fmt.fmt.win.w.width = IMG_WIDTH;
+ 195:../saVideoARGB.c **** fmt.fmt.win.w.height = IMG_HEIGHT;
+ 196:../saVideoARGB.c **** fmt.fmt.win.global_alpha = 255;
+ 197:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
+ 198:../saVideoARGB.c **** if (ret < 0) {
+ 199:../saVideoARGB.c **** perror("VIDIOC_S_FMT 2\n");
+ 200:../saVideoARGB.c **** close(fd);
+ 201:../saVideoARGB.c **** exit(0);
+ 202:../saVideoARGB.c **** }
+ 203:../saVideoARGB.c ****
+ 204:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 205:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
+ 206:../saVideoARGB.c **** if (ret < 0) {
+ 207:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
+ 208:../saVideoARGB.c **** close(fd);
+ 209:../saVideoARGB.c **** exit(0);
+ 210:../saVideoARGB.c **** }
+ 211:../saVideoARGB.c ****
+ 212:../saVideoARGB.c **** /* Request the buffers from the driver */
+ 213:../saVideoARGB.c **** /* req.memory can be user memory also */
+ 214:../saVideoARGB.c **** req.count = numbuffers;
+ 215:../saVideoARGB.c **** req.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 216:../saVideoARGB.c **** req.memory = V4L2_MEMORY_MMAP;
+ 217:../saVideoARGB.c ****
+ 218:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_REQBUFS, &req);
+ 219:../saVideoARGB.c **** if (ret < 0) {
+ 220:../saVideoARGB.c **** perror("cannot allocate memory\n");
+ 221:../saVideoARGB.c **** close(fd);
+ 222:../saVideoARGB.c **** exit(0);
+ 223:../saVideoARGB.c **** }
+ 224:../saVideoARGB.c ****
+ 225:../saVideoARGB.c **** buff_info =
+ 226:../saVideoARGB.c **** (struct buf_info *) malloc(sizeof(struct buf_info) *
+ 227:../saVideoARGB.c **** req.count);
+ 228:../saVideoARGB.c **** if (!buff_info) {
+ 229:../saVideoARGB.c **** printf("cannot allocate memory for buff_info\n");
+ 230:../saVideoARGB.c **** close(fd);
+ 231:../saVideoARGB.c **** exit(0);
+ 232:../saVideoARGB.c **** }
+ 233:../saVideoARGB.c ****
+ 234:../saVideoARGB.c **** /* Query to get the physical address of the allocated
+ 235:../saVideoARGB.c **** * buffers and get the virtual address of the buffer by
+ 236:../saVideoARGB.c **** * passing the physical address to mmap call of the driver
+ 237:../saVideoARGB.c **** */
+ 238:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
+ 239:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 240:../saVideoARGB.c **** buf.index = i;
+ 241:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QUERYBUF, &buf);
+ 242:../saVideoARGB.c **** if (ret < 0) {
+ 243:../saVideoARGB.c **** perror("VIDIOC_QUERYCAP\n");
+ 244:../saVideoARGB.c **** for (j = 0; j < i; j++)
+ 245:../saVideoARGB.c **** munmap(buff_info[j].start,
+ 246:../saVideoARGB.c **** buff_info[j].length);
+ 247:../saVideoARGB.c **** close(fd);
+ 248:../saVideoARGB.c **** exit(0);
+ 249:../saVideoARGB.c **** }
+ 250:../saVideoARGB.c **** buff_info[i].length = buf.length;
+ 251:../saVideoARGB.c **** buff_info[i].start =
+ 252:../saVideoARGB.c **** mmap(NULL, buf.length, PROT_READ | PROT_WRITE,
+ 253:../saVideoARGB.c **** MAP_SHARED, fd, buf.m.offset);
+ 254:../saVideoARGB.c ****
+ 255:../saVideoARGB.c **** if ((unsigned int) buff_info[i].start ==
+ 256:../saVideoARGB.c **** MAP_SHARED) {
+ 257:../saVideoARGB.c **** printf("Cannot mmap = %d buffer\n", i);
+ 258:../saVideoARGB.c **** for (j = 0; j < i; j++)
+ 259:../saVideoARGB.c **** munmap(buff_info[j].start,
+ 260:../saVideoARGB.c **** buff_info[j].length);
+ 261:../saVideoARGB.c **** close(fd);
+ 262:../saVideoARGB.c **** exit(0);
+ 263:../saVideoARGB.c **** }
+ 264:../saVideoARGB.c **** memset(buff_info[i].start, 0x80, buff_info[i].length);
+ 265:../saVideoARGB.c **** /* Fill the buffer with the RGB data and Alpha value*/
+ 266:../saVideoARGB.c **** fill(buff_info[i].start, fmt.fmt.pix.width,
+ 267:../saVideoARGB.c **** fmt.fmt.pix.height, 1);
+ 268:../saVideoARGB.c **** }
269:../saVideoARGB.c ****
- 270:../saVideoARGB.c **** /* Enqueue buffers */
- 271:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
- 272:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 273:../saVideoARGB.c **** buf.index = i;
- 274:../saVideoARGB.c **** buf.memory = V4L2_MEMORY_MMAP;
- 275:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
- 276:../saVideoARGB.c **** if (ret < 0) {
- 277:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
- 278:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
- 279:../saVideoARGB.c **** munmap(buff_info[j].start,
- 280:../saVideoARGB.c **** buff_info[j].length);
- 281:../saVideoARGB.c **** exit(0);
- 282:../saVideoARGB.c **** }
- 283:../saVideoARGB.c **** }
- 284:../saVideoARGB.c ****
- 285:../saVideoARGB.c **** a = 0;
- 286:../saVideoARGB.c **** /* Start stream on */
- 287:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMON, &a);
- 288:../saVideoARGB.c **** if (ret < 0) {
- 289:../saVideoARGB.c **** perror("VIDIOC_STREAMON\n");
- 290:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
- 291:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
- 292:../saVideoARGB.c **** exit(0);
- 293:../saVideoARGB.c **** }
- 294:../saVideoARGB.c ****
- 295:../saVideoARGB.c **** /* Forever loop for streaming*/
- 296:../saVideoARGB.c **** for(i = 0 ; i < loop_count ;i ++) {
- 297:../saVideoARGB.c **** /* dqueue the already filled buffers */
- 298:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_DQBUF, &buf);
- 299:../saVideoARGB.c **** if(ret < 0){
- 300:../saVideoARGB.c **** perror("VIDIOC_DQBUF\n");
- 301:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
- 302:../saVideoARGB.c **** munmap(buff_info[j].start, buff_info[j].length);
- 303:../saVideoARGB.c **** close(fd);
- 304:../saVideoARGB.c **** exit(0);
- 305:../saVideoARGB.c **** }
- 306:../saVideoARGB.c **** /* Everytime fill the buffer with the different alpha value to
- 307:../saVideoARGB.c **** * view transperency
- 308:../saVideoARGB.c **** */
- 309:../saVideoARGB.c **** fill(buff_info[buf.index].start, fmt.fmt.pix.width,
- 310:../saVideoARGB.c **** fmt.fmt.pix.height, 1);
- 311:../saVideoARGB.c **** /* Enqueue the filled buffer */
- 312:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
- 313:../saVideoARGB.c **** if(ret < 0){
- 314:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
- 315:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
- 316:../saVideoARGB.c **** munmap(buff_info[j].start,
- 317:../saVideoARGB.c **** buff_info[j].length);
- 318:../saVideoARGB.c **** close(fd);
- 319:../saVideoARGB.c **** exit(0);
- 320:../saVideoARGB.c **** }
- 321:../saVideoARGB.c **** sleep(1);
- 322:../saVideoARGB.c **** }
- 323:../saVideoARGB.c ****
- 324:../saVideoARGB.c **** /* Put off streaming
- 325:../saVideoARGB.c **** * This will never execute as steaming is forever loop
- 326:../saVideoARGB.c **** */
- 327:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMOFF, &a);
- 328:../saVideoARGB.c **** if (ret < 0) {
- 329:../saVideoARGB.c **** perror("VIDIOC_STREAMOFF\n");
- 330:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
- 331:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
- 332:../saVideoARGB.c **** close(fd);
- 333:../saVideoARGB.c **** exit(0);
- 334:../saVideoARGB.c **** }
- 335:../saVideoARGB.c **** /* Unmap the buffers */
- 336:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
- 337:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
- 338:../saVideoARGB.c **** close(fd);
- 339:../saVideoARGB.c **** return 0;
- 340:../saVideoARGB.c **** }
- 341:../saVideoARGB.c ****
- 342:../saVideoARGB.c **** /* Thread for video1 streaming */
- 343:../saVideoARGB.c **** static void *video1_threadfun(void *ptr)
- 344:../saVideoARGB.c **** {
- 345:../saVideoARGB.c **** int mode = O_RDWR, ret, j, i;
- 346:../saVideoARGB.c **** int fd, a, numbuffers = NUMBUFFERS, ch_no = *(int*)ptr;
- 347:../saVideoARGB.c **** struct v4l2_requestbuffers req;
- 348:../saVideoARGB.c **** struct v4l2_buffer buf;
- 349:../saVideoARGB.c **** struct buf_info *buff_info;
- 350:../saVideoARGB.c **** struct v4l2_format fmt;
- 351:../saVideoARGB.c **** struct v4l2_crop crop;
- 352:../saVideoARGB.c **** struct v4l2_framebuffer framebuffer;
- 353:../saVideoARGB.c ****
- 354:../saVideoARGB.c **** /* Open the video1 device */
- 355:../saVideoARGB.c **** fd = open((const char *)dev_name[ch_no], mode);
- 356:../saVideoARGB.c **** if (fd <= 0) {
- 357:../saVideoARGB.c **** printf("Cannot open = %s device\n", dev_name[ch_no]);
- 358:../saVideoARGB.c **** exit(0);
- 359:../saVideoARGB.c **** }
- 360:../saVideoARGB.c ****
- 361:../saVideoARGB.c **** /* Get the flags related to color keying and alpha blending */
- 362:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_G_FBUF, &framebuffer);
- 363:../saVideoARGB.c **** if (ret < 0) {
- 364:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
- 365:../saVideoARGB.c **** return 0;
- 366:../saVideoARGB.c ****
- 367:../saVideoARGB.c **** }
- 368:../saVideoARGB.c **** if(framebuffer.capability & V4L2_FBUF_CAP_LOCAL_ALPHA) {
- 369:../saVideoARGB.c **** framebuffer.flags |= V4L2_FBUF_FLAG_LOCAL_ALPHA;
- 370:../saVideoARGB.c **** framebuffer.flags &= ~ (V4L2_FBUF_FLAG_CHROMAKEY |
- 371:../saVideoARGB.c **** V4L2_FBUF_FLAG_SRC_CHROMAKEY);
- 372:../saVideoARGB.c ****
- 373:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_S_FBUF, &framebuffer);
- 374:../saVideoARGB.c **** if (ret < 0) {
- 375:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
- 376:../saVideoARGB.c **** return 0;
- 377:../saVideoARGB.c ****
- 378:../saVideoARGB.c **** }
+ 270:../saVideoARGB.c **** memset(&buf, 0, sizeof(buf));
+ 271:../saVideoARGB.c ****
+ 272:../saVideoARGB.c **** /* Enqueue buffers */
+ 273:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
+ 274:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 275:../saVideoARGB.c **** buf.index = i;
+ 276:../saVideoARGB.c **** buf.memory = V4L2_MEMORY_MMAP;
+ 277:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
+ 278:../saVideoARGB.c **** if (ret < 0) {
+ 279:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
+ 280:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
+ 281:../saVideoARGB.c **** munmap(buff_info[j].start,
+ 282:../saVideoARGB.c **** buff_info[j].length);
+ 283:../saVideoARGB.c **** exit(0);
+ 284:../saVideoARGB.c **** }
+ 285:../saVideoARGB.c **** }
+ 286:../saVideoARGB.c ****
+ 287:../saVideoARGB.c **** a = 0;
+ 288:../saVideoARGB.c **** /* Start stream on */
+ 289:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMON, &a);
+ 290:../saVideoARGB.c **** if (ret < 0) {
+ 291:../saVideoARGB.c **** perror("VIDIOC_STREAMON\n");
+ 292:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
+ 293:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
+ 294:../saVideoARGB.c **** exit(0);
+ 295:../saVideoARGB.c **** }
+ 296:../saVideoARGB.c ****
+ 297:../saVideoARGB.c **** /* Forever loop for streaming*/
+ 298:../saVideoARGB.c **** for(i = 0 ; i < loop_count ;i ++) {
+ 299:../saVideoARGB.c **** /* dqueue the already filled buffers */
+ 300:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_DQBUF, &buf);
+ 301:../saVideoARGB.c **** if(ret < 0){
+ 302:../saVideoARGB.c **** perror("VIDIOC_DQBUF\n");
+ 303:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
+ 304:../saVideoARGB.c **** munmap(buff_info[j].start, buff_info[j].length);
+ 305:../saVideoARGB.c **** close(fd);
+ 306:../saVideoARGB.c **** exit(0);
+ 307:../saVideoARGB.c **** }
+ 308:../saVideoARGB.c **** /* Everytime fill the buffer with the different alpha value to
+ 309:../saVideoARGB.c **** * view transperency
+ 310:../saVideoARGB.c **** */
+ 311:../saVideoARGB.c **** fill(buff_info[buf.index].start, fmt.fmt.pix.width,
+ 312:../saVideoARGB.c **** fmt.fmt.pix.height, 1);
+ 313:../saVideoARGB.c **** /* Enqueue the filled buffer */
+ 314:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
+ 315:../saVideoARGB.c **** if(ret < 0){
+ 316:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
+ 317:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
+ 318:../saVideoARGB.c **** munmap(buff_info[j].start,
+ 319:../saVideoARGB.c **** buff_info[j].length);
+ 320:../saVideoARGB.c **** close(fd);
+ 321:../saVideoARGB.c **** exit(0);
+ 322:../saVideoARGB.c **** }
+ 323:../saVideoARGB.c **** sleep(1);
+ 324:../saVideoARGB.c **** }
+ 325:../saVideoARGB.c ****
+ 326:../saVideoARGB.c **** /* Put off streaming
+ 327:../saVideoARGB.c **** * This will never execute as steaming is forever loop
+ 328:../saVideoARGB.c **** */
+ 329:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMOFF, &a);
+ 330:../saVideoARGB.c **** if (ret < 0) {
+ 331:../saVideoARGB.c **** perror("VIDIOC_STREAMOFF\n");
+ 332:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
+ 333:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
+ 334:../saVideoARGB.c **** close(fd);
+ 335:../saVideoARGB.c **** exit(0);
+ 336:../saVideoARGB.c **** }
+ 337:../saVideoARGB.c **** /* Unmap the buffers */
+ 338:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
+ 339:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
+ 340:../saVideoARGB.c **** close(fd);
+ 341:../saVideoARGB.c **** return 0;
+ 342:../saVideoARGB.c **** }
+ 343:../saVideoARGB.c ****
+ 344:../saVideoARGB.c **** /* Thread for video1 streaming */
+ 345:../saVideoARGB.c **** static void *video1_threadfun(void *ptr)
+ 346:../saVideoARGB.c **** {
+ 347:../saVideoARGB.c **** int mode = O_RDWR, ret, j, i;
+ 348:../saVideoARGB.c **** int fd, a, numbuffers = NUMBUFFERS, ch_no = *(int*)ptr;
+ 349:../saVideoARGB.c **** struct v4l2_requestbuffers req;
+ 350:../saVideoARGB.c **** struct v4l2_buffer buf;
+ 351:../saVideoARGB.c **** struct buf_info *buff_info;
+ 352:../saVideoARGB.c **** struct v4l2_format fmt;
+ 353:../saVideoARGB.c **** struct v4l2_crop crop;
+ 354:../saVideoARGB.c **** struct v4l2_framebuffer framebuffer;
+ 355:../saVideoARGB.c ****
+ 356:../saVideoARGB.c **** /* Open the video1 device */
+ 357:../saVideoARGB.c **** fd = open((const char *)dev_name[ch_no], mode);
+ 358:../saVideoARGB.c **** if (fd <= 0) {
+ 359:../saVideoARGB.c **** printf("Cannot open = %s device\n", dev_name[ch_no]);
+ 360:../saVideoARGB.c **** exit(0);
+ 361:../saVideoARGB.c **** }
+ 362:../saVideoARGB.c ****
+ 363:../saVideoARGB.c **** /* Get the flags related to color keying and alpha blending */
+ 364:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_G_FBUF, &framebuffer);
+ 365:../saVideoARGB.c **** if (ret < 0) {
+ 366:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
+ 367:../saVideoARGB.c **** return 0;
+ 368:../saVideoARGB.c ****
+ 369:../saVideoARGB.c **** }
+ 370:../saVideoARGB.c **** if(framebuffer.capability & V4L2_FBUF_CAP_LOCAL_ALPHA) {
+ 371:../saVideoARGB.c **** framebuffer.flags |= V4L2_FBUF_FLAG_LOCAL_ALPHA;
+ 372:../saVideoARGB.c **** framebuffer.flags &= ~ (V4L2_FBUF_FLAG_CHROMAKEY |
+ 373:../saVideoARGB.c **** V4L2_FBUF_FLAG_SRC_CHROMAKEY);
+ 374:../saVideoARGB.c ****
+ 375:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_S_FBUF, &framebuffer);
+ 376:../saVideoARGB.c **** if (ret < 0) {
+ 377:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
+ 378:../saVideoARGB.c **** return 0;
379:../saVideoARGB.c ****
- 380:../saVideoARGB.c **** }
+ 380:../saVideoARGB.c **** }
381:../saVideoARGB.c ****
- 382:../saVideoARGB.c **** /* Get format before setting and
- 383:../saVideoARGB.c **** * set only required parameters */
- 384:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 385:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
- 386:../saVideoARGB.c **** if (ret < 0) {
- 387:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
- 388:../saVideoARGB.c **** close(fd);
- 389:../saVideoARGB.c **** exit(0);
- 390:../saVideoARGB.c **** }
- 391:../saVideoARGB.c **** /* Set the image size pixel format and device type*/
- 392:../saVideoARGB.c **** fmt.fmt.pix.width = IMG_WIDTH;
- 393:../saVideoARGB.c **** fmt.fmt.pix.height = IMG_HEIGHT;
- 394:../saVideoARGB.c **** /* Video1 does not support ARGB so it takes * RGB32 as unpack RGB24 */
- 395:../saVideoARGB.c **** fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_RGB32;
- 396:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
- 397:../saVideoARGB.c **** if (ret < 0) {
- 398:../saVideoARGB.c **** perror("VIDIOC_S_FMT\n");
- 399:../saVideoARGB.c **** close(fd);
- 400:../saVideoARGB.c **** exit(0);
- 401:../saVideoARGB.c **** }
- 402:../saVideoARGB.c ****
- 403:../saVideoARGB.c **** /* Get the parameters before setting */
- 404:../saVideoARGB.c **** crop.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 405:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_CROP, &crop);
- 406:../saVideoARGB.c **** if (ret < 0) {
- 407:../saVideoARGB.c **** perror("VIDIOC_G_CROP\n");
- 408:../saVideoARGB.c **** close(fd);
- 409:../saVideoARGB.c **** exit(0);
- 410:../saVideoARGB.c **** }
- 411:../saVideoARGB.c **** /* Set the Cropping parameters */
- 412:../saVideoARGB.c **** crop.c.left = 0;
- 413:../saVideoARGB.c **** crop.c.top = 0;
- 414:../saVideoARGB.c **** crop.c.width = IMG_WIDTH;
- 415:../saVideoARGB.c **** crop.c.height = IMG_HEIGHT;
- 416:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_CROP, &crop);
- 417:../saVideoARGB.c **** if (ret < 0) {
- 418:../saVideoARGB.c **** perror("VIDIOC_S_CROP\n");
- 419:../saVideoARGB.c **** close(fd);
- 420:../saVideoARGB.c **** exit(0);
- 421:../saVideoARGB.c **** }
- 422:../saVideoARGB.c ****
- 423:../saVideoARGB.c **** /* Get the window before setting and
- 424:../saVideoARGB.c **** * set only required parameters
- 425:../saVideoARGB.c **** */
- 426:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OVERLAY;
- 427:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
- 428:../saVideoARGB.c **** if (ret < 0) {
- 429:../saVideoARGB.c **** perror("VIDIOC_G_FMT 2\n");
- 430:../saVideoARGB.c **** close(fd);
- 431:../saVideoARGB.c **** exit(0);
- 432:../saVideoARGB.c **** }
- 433:../saVideoARGB.c **** /* Set the window size */
- 434:../saVideoARGB.c **** fmt.fmt.win.w.left = 0;
- 435:../saVideoARGB.c **** fmt.fmt.win.w.top = 0;
- 436:../saVideoARGB.c **** fmt.fmt.win.w.width = IMG_WIDTH;
- 437:../saVideoARGB.c **** fmt.fmt.win.w.height = IMG_HEIGHT;
- 438:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
- 439:../saVideoARGB.c **** if (ret < 0) {
- 440:../saVideoARGB.c **** perror("VIDIOC_S_FMT 2\n");
- 441:../saVideoARGB.c **** close(fd);
- 442:../saVideoARGB.c **** exit(0);
- 443:../saVideoARGB.c **** }
- 444:../saVideoARGB.c ****
- 445:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 446:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
- 447:../saVideoARGB.c **** if (ret < 0) {
- 448:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
- 449:../saVideoARGB.c **** close(fd);
- 450:../saVideoARGB.c **** exit(0);
- 451:../saVideoARGB.c **** }
- 452:../saVideoARGB.c ****
- 453:../saVideoARGB.c **** /* Request buffers from driver
- 454:../saVideoARGB.c **** * Buffer can be driver allocated type MMAP
- 455:../saVideoARGB.c **** * or userptr
- 456:../saVideoARGB.c **** */
- 457:../saVideoARGB.c **** req.count = numbuffers;
- 458:../saVideoARGB.c **** req.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 459:../saVideoARGB.c **** req.memory = V4L2_MEMORY_MMAP;
- 460:../saVideoARGB.c ****
- 461:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_REQBUFS, &req);
- 462:../saVideoARGB.c **** if (ret < 0) {
- 463:../saVideoARGB.c **** perror("cannot allocate memory\n");
- 464:../saVideoARGB.c **** close(fd);
- 465:../saVideoARGB.c **** exit(0);
- 466:../saVideoARGB.c **** }
- 467:../saVideoARGB.c ****
- 468:../saVideoARGB.c **** buff_info =
- 469:../saVideoARGB.c **** (struct buf_info *) malloc(sizeof(struct buf_info) *
- 470:../saVideoARGB.c **** req.count);
- 471:../saVideoARGB.c **** if (!buff_info) {
- 472:../saVideoARGB.c **** printf("cannot allocate memory for buff_info\n");
- 473:../saVideoARGB.c **** close(fd);
- 474:../saVideoARGB.c **** exit(0);
- 475:../saVideoARGB.c **** }
- 476:../saVideoARGB.c **** /* Query the buffer to get the physical address of the allocated
- 477:../saVideoARGB.c **** * buffers and get the virtual address of the buffer by
- 478:../saVideoARGB.c **** * passing the physical address to mmap call of the driver
- 479:../saVideoARGB.c **** */
- 480:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
- 481:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 482:../saVideoARGB.c **** buf.index = i;
- 483:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QUERYBUF, &buf);
- 484:../saVideoARGB.c **** if (ret < 0) {
- 485:../saVideoARGB.c **** perror("VIDIOC_QUERYCAP\n");
- 486:../saVideoARGB.c **** for (j = 0; j < i; j++)
- 487:../saVideoARGB.c **** munmap(buff_info[j].start,
- 488:../saVideoARGB.c **** buff_info[j].length);
- 489:../saVideoARGB.c **** close(fd);
- 490:../saVideoARGB.c **** exit(0);
- 491:../saVideoARGB.c **** }
- 492:../saVideoARGB.c **** buff_info[i].length = buf.length;
- 493:../saVideoARGB.c **** buff_info[i].start =
- 494:../saVideoARGB.c **** mmap(NULL, buf.length, PROT_READ | PROT_WRITE,
- 495:../saVideoARGB.c **** MAP_SHARED, fd, buf.m.offset);
- 496:../saVideoARGB.c ****
- 497:../saVideoARGB.c **** if ((unsigned int) buff_info[i].start ==
- 498:../saVideoARGB.c **** MAP_SHARED) {
- 499:../saVideoARGB.c **** printf("Cannot mmap = %d buffer\n", i);
- 500:../saVideoARGB.c **** for (j = 0; j < i; j++)
- 501:../saVideoARGB.c **** munmap(buff_info[j].start,
- 502:../saVideoARGB.c **** buff_info[j].length);
- 503:../saVideoARGB.c **** close(fd);
- 504:../saVideoARGB.c **** exit(0);
- 505:../saVideoARGB.c **** }
- 506:../saVideoARGB.c **** memset(buff_info[i].start, 0x80, buff_info[i].length);
- 507:../saVideoARGB.c **** /* Initially fill the buffers */
- 508:../saVideoARGB.c **** fill(buff_info[i].start, fmt.fmt.pix.width,
- 509:../saVideoARGB.c **** fmt.fmt.pix.height, 0);
- 510:../saVideoARGB.c **** }
- 511:../saVideoARGB.c ****
- 512:../saVideoARGB.c **** memset(&buf, 0, sizeof(buf));
+ 382:../saVideoARGB.c **** }
+ 383:../saVideoARGB.c ****
+ 384:../saVideoARGB.c **** /* Get format before setting and
+ 385:../saVideoARGB.c **** * set only required parameters */
+ 386:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 387:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
+ 388:../saVideoARGB.c **** if (ret < 0) {
+ 389:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
+ 390:../saVideoARGB.c **** close(fd);
+ 391:../saVideoARGB.c **** exit(0);
+ 392:../saVideoARGB.c **** }
+ 393:../saVideoARGB.c **** /* Set the image size pixel format and device type*/
+ 394:../saVideoARGB.c **** fmt.fmt.pix.width = IMG_WIDTH;
+ 395:../saVideoARGB.c **** fmt.fmt.pix.height = IMG_HEIGHT;
+ 396:../saVideoARGB.c **** /* Video1 does not support ARGB so it takes * RGB32 as unpack RGB24 */
+ 397:../saVideoARGB.c **** fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_RGB32;
+ 398:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
+ 399:../saVideoARGB.c **** if (ret < 0) {
+ 400:../saVideoARGB.c **** perror("VIDIOC_S_FMT\n");
+ 401:../saVideoARGB.c **** close(fd);
+ 402:../saVideoARGB.c **** exit(0);
+ 403:../saVideoARGB.c **** }
+ 404:../saVideoARGB.c ****
+ 405:../saVideoARGB.c **** /* Get the parameters before setting */
+ 406:../saVideoARGB.c **** crop.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 407:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_CROP, &crop);
+ 408:../saVideoARGB.c **** if (ret < 0) {
+ 409:../saVideoARGB.c **** perror("VIDIOC_G_CROP\n");
+ 410:../saVideoARGB.c **** close(fd);
+ 411:../saVideoARGB.c **** exit(0);
+ 412:../saVideoARGB.c **** }
+ 413:../saVideoARGB.c **** /* Set the Cropping parameters */
+ 414:../saVideoARGB.c **** crop.c.left = 0;
+ 415:../saVideoARGB.c **** crop.c.top = 0;
+ 416:../saVideoARGB.c **** crop.c.width = IMG_WIDTH;
+ 417:../saVideoARGB.c **** crop.c.height = IMG_HEIGHT;
+ 418:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_CROP, &crop);
+ 419:../saVideoARGB.c **** if (ret < 0) {
+ 420:../saVideoARGB.c **** perror("VIDIOC_S_CROP\n");
+ 421:../saVideoARGB.c **** close(fd);
+ 422:../saVideoARGB.c **** exit(0);
+ 423:../saVideoARGB.c **** }
+ 424:../saVideoARGB.c ****
+ 425:../saVideoARGB.c **** /* Get the window before setting and
+ 426:../saVideoARGB.c **** * set only required parameters
+ 427:../saVideoARGB.c **** */
+ 428:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OVERLAY;
+ 429:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
+ 430:../saVideoARGB.c **** if (ret < 0) {
+ 431:../saVideoARGB.c **** perror("VIDIOC_G_FMT 2\n");
+ 432:../saVideoARGB.c **** close(fd);
+ 433:../saVideoARGB.c **** exit(0);
+ 434:../saVideoARGB.c **** }
+ 435:../saVideoARGB.c **** /* Set the window size */
+ 436:../saVideoARGB.c **** fmt.fmt.win.w.left = 0;
+ 437:../saVideoARGB.c **** fmt.fmt.win.w.top = 0;
+ 438:../saVideoARGB.c **** fmt.fmt.win.w.width = IMG_WIDTH;
+ 439:../saVideoARGB.c **** fmt.fmt.win.w.height = IMG_HEIGHT;
+ 440:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_S_FMT, &fmt);
+ 441:../saVideoARGB.c **** if (ret < 0) {
+ 442:../saVideoARGB.c **** perror("VIDIOC_S_FMT 2\n");
+ 443:../saVideoARGB.c **** close(fd);
+ 444:../saVideoARGB.c **** exit(0);
+ 445:../saVideoARGB.c **** }
+ 446:../saVideoARGB.c ****
+ 447:../saVideoARGB.c **** fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 448:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_G_FMT, &fmt);
+ 449:../saVideoARGB.c **** if (ret < 0) {
+ 450:../saVideoARGB.c **** perror("VIDIOC_G_FMT\n");
+ 451:../saVideoARGB.c **** close(fd);
+ 452:../saVideoARGB.c **** exit(0);
+ 453:../saVideoARGB.c **** }
+ 454:../saVideoARGB.c ****
+ 455:../saVideoARGB.c **** /* Request buffers from driver
+ 456:../saVideoARGB.c **** * Buffer can be driver allocated type MMAP
+ 457:../saVideoARGB.c **** * or userptr
+ 458:../saVideoARGB.c **** */
+ 459:../saVideoARGB.c **** req.count = numbuffers;
+ 460:../saVideoARGB.c **** req.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 461:../saVideoARGB.c **** req.memory = V4L2_MEMORY_MMAP;
+ 462:../saVideoARGB.c ****
+ 463:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_REQBUFS, &req);
+ 464:../saVideoARGB.c **** if (ret < 0) {
+ 465:../saVideoARGB.c **** perror("cannot allocate memory\n");
+ 466:../saVideoARGB.c **** close(fd);
+ 467:../saVideoARGB.c **** exit(0);
+ 468:../saVideoARGB.c **** }
+ 469:../saVideoARGB.c ****
+ 470:../saVideoARGB.c **** buff_info =
+ 471:../saVideoARGB.c **** (struct buf_info *) malloc(sizeof(struct buf_info) *
+ 472:../saVideoARGB.c **** req.count);
+ 473:../saVideoARGB.c **** if (!buff_info) {
+ 474:../saVideoARGB.c **** printf("cannot allocate memory for buff_info\n");
+ 475:../saVideoARGB.c **** close(fd);
+ 476:../saVideoARGB.c **** exit(0);
+ 477:../saVideoARGB.c **** }
+ 478:../saVideoARGB.c **** /* Query the buffer to get the physical address of the allocated
+ 479:../saVideoARGB.c **** * buffers and get the virtual address of the buffer by
+ 480:../saVideoARGB.c **** * passing the physical address to mmap call of the driver
+ 481:../saVideoARGB.c **** */
+ 482:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
+ 483:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 484:../saVideoARGB.c **** buf.index = i;
+ 485:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QUERYBUF, &buf);
+ 486:../saVideoARGB.c **** if (ret < 0) {
+ 487:../saVideoARGB.c **** perror("VIDIOC_QUERYCAP\n");
+ 488:../saVideoARGB.c **** for (j = 0; j < i; j++)
+ 489:../saVideoARGB.c **** munmap(buff_info[j].start,
+ 490:../saVideoARGB.c **** buff_info[j].length);
+ 491:../saVideoARGB.c **** close(fd);
+ 492:../saVideoARGB.c **** exit(0);
+ 493:../saVideoARGB.c **** }
+ 494:../saVideoARGB.c **** buff_info[i].length = buf.length;
+ 495:../saVideoARGB.c **** buff_info[i].start =
+ 496:../saVideoARGB.c **** mmap(NULL, buf.length, PROT_READ | PROT_WRITE,
+ 497:../saVideoARGB.c **** MAP_SHARED, fd, buf.m.offset);
+ 498:../saVideoARGB.c ****
+ 499:../saVideoARGB.c **** if ((unsigned int) buff_info[i].start ==
+ 500:../saVideoARGB.c **** MAP_SHARED) {
+ 501:../saVideoARGB.c **** printf("Cannot mmap = %d buffer\n", i);
+ 502:../saVideoARGB.c **** for (j = 0; j < i; j++)
+ 503:../saVideoARGB.c **** munmap(buff_info[j].start,
+ 504:../saVideoARGB.c **** buff_info[j].length);
+ 505:../saVideoARGB.c **** close(fd);
+ 506:../saVideoARGB.c **** exit(0);
+ 507:../saVideoARGB.c **** }
+ 508:../saVideoARGB.c **** memset(buff_info[i].start, 0x80, buff_info[i].length);
+ 509:../saVideoARGB.c **** /* Initially fill the buffers */
+ 510:../saVideoARGB.c **** fill(buff_info[i].start, fmt.fmt.pix.width,
+ 511:../saVideoARGB.c **** fmt.fmt.pix.height, 0);
+ 512:../saVideoARGB.c **** }
513:../saVideoARGB.c ****
- 514:../saVideoARGB.c **** /* Enqueue buffers */
- 515:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
- 516:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
- 517:../saVideoARGB.c **** buf.index = i;
- 518:../saVideoARGB.c **** buf.memory = V4L2_MEMORY_MMAP;
- 519:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
- 520:../saVideoARGB.c **** if (ret < 0) {
- 521:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
- 522:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
- 523:../saVideoARGB.c **** munmap(buff_info[j].start,
- 524:../saVideoARGB.c **** buff_info[j].length);
- 525:../saVideoARGB.c **** exit(0);
- 526:../saVideoARGB.c **** }
- 527:../saVideoARGB.c **** }
- 528:../saVideoARGB.c **** /* Start streamon */
- 529:../saVideoARGB.c **** a = 0;
- 530:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMON, &a);
- 531:../saVideoARGB.c **** if (ret < 0) {
- 532:../saVideoARGB.c **** perror("VIDIOC_STREAMON\n");
- 533:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
- 534:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
- 535:../saVideoARGB.c **** exit(0);
- 536:../saVideoARGB.c **** }
- 537:../saVideoARGB.c ****
- 538:../saVideoARGB.c **** /* Forever looop for streaming */
- 539:../saVideoARGB.c **** for(i = 0 ; i < LOOPCOUNT ;i ++) {
- 540:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_DQBUF, &buf);
- 541:../saVideoARGB.c **** if(ret < 0){
- 542:../saVideoARGB.c **** perror("VIDIOC_DQBUF\n");
- 543:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
- 544:../saVideoARGB.c **** munmap(buff_info[j].start, buff_info[j].length);
- 545:../saVideoARGB.c **** close(fd);
- 546:../saVideoARGB.c **** exit(0);
- 547:../saVideoARGB.c **** }
- 548:../saVideoARGB.c **** /* Filling the buffer without alpha value since video1 does not
- 549:../saVideoARGB.c **** * support ARGB. Here the alpha value is not changing hence
- 550:../saVideoARGB.c **** * this is filling buffer with same value each time.
- 551:../saVideoARGB.c **** */
- 552:../saVideoARGB.c **** fill(buff_info[buf.index].start, fmt.fmt.pix.width,
- 553:../saVideoARGB.c **** fmt.fmt.pix.height, 0);
- 554:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
- 555:../saVideoARGB.c **** if(ret < 0){
- 556:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
- 557:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
- 558:../saVideoARGB.c **** munmap(buff_info[j].start, buff_info[j].length);
- 559:../saVideoARGB.c **** close(fd);
- 560:../saVideoARGB.c **** exit(0);
- 561:../saVideoARGB.c **** }
- 562:../saVideoARGB.c **** sleep(1);
- 563:../saVideoARGB.c **** }
- 564:../saVideoARGB.c ****
- 565:../saVideoARGB.c **** /* Streaming off */
- 566:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMOFF, &a);
- 567:../saVideoARGB.c **** if (ret < 0) {
- 568:../saVideoARGB.c **** perror("VIDIOC_STREAMOFF\n");
- 569:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
- 570:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
- 571:../saVideoARGB.c **** close(fd);
- 572:../saVideoARGB.c **** exit(0);
- 573:../saVideoARGB.c **** }
- 574:../saVideoARGB.c **** /* Unmap all the buffers */
- 575:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
- 576:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
- 577:../saVideoARGB.c ****
- 578:../saVideoARGB.c **** /* Get the flags related to color keying and alpha blending */
- 579:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_G_FBUF, &framebuffer);
- 580:../saVideoARGB.c **** if (ret < 0) {
- 581:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
- 582:../saVideoARGB.c **** return 0;
- 583:../saVideoARGB.c ****
- 584:../saVideoARGB.c **** }
+ 514:../saVideoARGB.c **** memset(&buf, 0, sizeof(buf));
+ 515:../saVideoARGB.c ****
+ 516:../saVideoARGB.c **** /* Enqueue buffers */
+ 517:../saVideoARGB.c **** for (i = 0; i < req.count; i++) {
+ 518:../saVideoARGB.c **** buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT;
+ 519:../saVideoARGB.c **** buf.index = i;
+ 520:../saVideoARGB.c **** buf.memory = V4L2_MEMORY_MMAP;
+ 521:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
+ 522:../saVideoARGB.c **** if (ret < 0) {
+ 523:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
+ 524:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
+ 525:../saVideoARGB.c **** munmap(buff_info[j].start,
+ 526:../saVideoARGB.c **** buff_info[j].length);
+ 527:../saVideoARGB.c **** exit(0);
+ 528:../saVideoARGB.c **** }
+ 529:../saVideoARGB.c **** }
+ 530:../saVideoARGB.c **** /* Start streamon */
+ 531:../saVideoARGB.c **** a = 0;
+ 532:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMON, &a);
+ 533:../saVideoARGB.c **** if (ret < 0) {
+ 534:../saVideoARGB.c **** perror("VIDIOC_STREAMON\n");
+ 535:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
+ 536:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
+ 537:../saVideoARGB.c **** exit(0);
+ 538:../saVideoARGB.c **** }
+ 539:../saVideoARGB.c ****
+ 540:../saVideoARGB.c **** /* Forever looop for streaming */
+ 541:../saVideoARGB.c **** for(i = 0 ; i < LOOPCOUNT ;i ++) {
+ 542:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_DQBUF, &buf);
+ 543:../saVideoARGB.c **** if(ret < 0){
+ 544:../saVideoARGB.c **** perror("VIDIOC_DQBUF\n");
+ 545:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
+ 546:../saVideoARGB.c **** munmap(buff_info[j].start, buff_info[j].length);
+ 547:../saVideoARGB.c **** close(fd);
+ 548:../saVideoARGB.c **** exit(0);
+ 549:../saVideoARGB.c **** }
+ 550:../saVideoARGB.c **** /* Filling the buffer without alpha value since video1 does not
+ 551:../saVideoARGB.c **** * support ARGB. Here the alpha value is not changing hence
+ 552:../saVideoARGB.c **** * this is filling buffer with same value each time.
+ 553:../saVideoARGB.c **** */
+ 554:../saVideoARGB.c **** fill(buff_info[buf.index].start, fmt.fmt.pix.width,
+ 555:../saVideoARGB.c **** fmt.fmt.pix.height, 0);
+ 556:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_QBUF, &buf);
+ 557:../saVideoARGB.c **** if(ret < 0){
+ 558:../saVideoARGB.c **** perror("VIDIOC_QBUF\n");
+ 559:../saVideoARGB.c **** for (j = 0; j < req.count; j++)
+ 560:../saVideoARGB.c **** munmap(buff_info[j].start, buff_info[j].length);
+ 561:../saVideoARGB.c **** close(fd);
+ 562:../saVideoARGB.c **** exit(0);
+ 563:../saVideoARGB.c **** }
+ 564:../saVideoARGB.c **** sleep(1);
+ 565:../saVideoARGB.c **** }
+ 566:../saVideoARGB.c ****
+ 567:../saVideoARGB.c **** /* Streaming off */
+ 568:../saVideoARGB.c **** ret = ioctl(fd, VIDIOC_STREAMOFF, &a);
+ 569:../saVideoARGB.c **** if (ret < 0) {
+ 570:../saVideoARGB.c **** perror("VIDIOC_STREAMOFF\n");
+ 571:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
+ 572:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
+ 573:../saVideoARGB.c **** close(fd);
+ 574:../saVideoARGB.c **** exit(0);
+ 575:../saVideoARGB.c **** }
+ 576:../saVideoARGB.c **** /* Unmap all the buffers */
+ 577:../saVideoARGB.c **** for (i = 0; i < req.count; i++)
+ 578:../saVideoARGB.c **** munmap(buff_info[i].start, buff_info[i].length);
+ 579:../saVideoARGB.c ****
+ 580:../saVideoARGB.c **** /* Get the flags related to color keying and alpha blending */
+ 581:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_G_FBUF, &framebuffer);
+ 582:../saVideoARGB.c **** if (ret < 0) {
+ 583:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
+ 584:../saVideoARGB.c **** return 0;
585:../saVideoARGB.c ****
- 586:../saVideoARGB.c **** /* Check if device capable of alpha blending */
- 587:../saVideoARGB.c **** if(framebuffer.capability & V4L2_FBUF_CAP_LOCAL_ALPHA) {
- 588:../saVideoARGB.c **** framebuffer.flags &= ~V4L2_FBUF_FLAG_LOCAL_ALPHA;
- 589:../saVideoARGB.c ****
- 590:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_S_FBUF, &framebuffer);
- 591:../saVideoARGB.c **** if (ret < 0) {
- 592:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
- 593:../saVideoARGB.c **** return 0;
- 594:../saVideoARGB.c ****
- 595:../saVideoARGB.c **** }
+ 586:../saVideoARGB.c **** }
+ 587:../saVideoARGB.c ****
+ 588:../saVideoARGB.c **** /* Check if device capable of alpha blending */
+ 589:../saVideoARGB.c **** if(framebuffer.capability & V4L2_FBUF_CAP_LOCAL_ALPHA) {
+ 590:../saVideoARGB.c **** framebuffer.flags &= ~V4L2_FBUF_FLAG_LOCAL_ALPHA;
+ 591:../saVideoARGB.c ****
+ 592:../saVideoARGB.c **** ret = ioctl (fd, VIDIOC_S_FBUF, &framebuffer);
+ 593:../saVideoARGB.c **** if (ret < 0) {
+ 594:../saVideoARGB.c **** perror ("VIDIOC_S_FBUF");
+ 595:../saVideoARGB.c **** return 0;
596:../saVideoARGB.c ****
- 597:../saVideoARGB.c **** }
+ 597:../saVideoARGB.c **** }
598:../saVideoARGB.c ****
- 599:../saVideoARGB.c **** close(fd);
- 600:../saVideoARGB.c **** return 0;
- 601:../saVideoARGB.c **** }
- 602:../saVideoARGB.c ****
- 603:../saVideoARGB.c **** static void usage(void)
- 604:../saVideoARGB.c **** {
- 605:../saVideoARGB.c **** printf("Usage:saV4L2Rotation [-d <device node>][-l <loop coult>][-h help]");
- 606:../saVideoARGB.c **** printf("\t[-l <loop count>] : Loop Count, default to 500\n" \
- 607:../saVideoARGB.c **** "[-h <help>] : Help\n");
- 608:../saVideoARGB.c **** }
- 609:../saVideoARGB.c **** int main(int argc, char *argv[])
- 610:../saVideoARGB.c **** {
- 155 .loc 1 610 0
+ 599:../saVideoARGB.c **** }
+ 600:../saVideoARGB.c ****
+ 601:../saVideoARGB.c **** close(fd);
+ 602:../saVideoARGB.c **** return 0;
+ 603:../saVideoARGB.c **** }
+ 604:../saVideoARGB.c ****
+ 605:../saVideoARGB.c **** static void usage(void)
+ 606:../saVideoARGB.c **** {
+ 607:../saVideoARGB.c **** printf("Usage:saV4L2Rotation [-d <device node>][-l <loop coult>][-h help]");
+ 608:../saVideoARGB.c **** printf("\t[-l <loop count>] : Loop Count, default to 500\n" \
+ 609:../saVideoARGB.c **** "[-h <help>] : Help\n");
+ 610:../saVideoARGB.c **** }
+ 611:../saVideoARGB.c **** int main(int argc, char *argv[])
+ 612:../saVideoARGB.c **** {
+ 155 .loc 1 612 0
156 @ args = 0, pretend = 0, frame = 280
157 @ frame_needed = 0, uses_anonymous_args = 0
158 .LVL9:
162 .pad #292
163 0110 49DF4DE2 sub sp, sp, #292
164 .LCFI2:
- 165 .loc 1 610 0
+ 165 .loc 1 612 0
166 0114 0050A0E1 mov r5, r0
- 611:../saVideoARGB.c **** char shortoptions[] = "h:d:l:";
- 167 .loc 1 611 0
+ 613:../saVideoARGB.c **** char shortoptions[] = "h:d:l:";
+ 167 .loc 1 613 0
168 0118 410F8DE2 add r0, sp, #260
169 .LVL10:
- 170 .loc 1 610 0
+ 170 .loc 1 612 0
171 011c 0140A0E1 mov r4, r1
- 172 .loc 1 611 0
+ 172 .loc 1 613 0
173 0120 010080E2 add r0, r0, #1
174 0124 54129FE5 ldr r1, .L39
175 .LVL11:
176 0128 0720A0E3 mov r2, #7
177 012c FEFFFFEB bl memcpy
- 612:../saVideoARGB.c **** int ret1, ret2, ch_no1=0, ch_no2=1;
- 178 .loc 1 612 0
+ 614:../saVideoARGB.c **** int ret1, ret2, ch_no1=0, ch_no2=1;
+ 178 .loc 1 614 0
179 0130 0030A0E3 mov r3, #0
180 0134 1C318DE5 str r3, [sp, #284]
181 .LVL12:
183 013c 18318DE5 str r3, [sp, #280]
184 .LVL13:
185 .L35:
- 613:../saVideoARGB.c **** pthread_t t1, t2;
- 614:../saVideoARGB.c **** int i, j, c, index;
- 615:../saVideoARGB.c **** FILE * file_r;
- 616:../saVideoARGB.c **** char red,green,blue;
- 617:../saVideoARGB.c **** unsigned int val;
- 618:../saVideoARGB.c **** char str[250];
- 619:../saVideoARGB.c ****
- 620:../saVideoARGB.c **** for (;;) {
- 621:../saVideoARGB.c **** c = getopt_long(argc, argv, shortoptions, (void *) NULL,
- 186 .loc 1 621 0
+ 615:../saVideoARGB.c **** pthread_t t1, t2;
+ 616:../saVideoARGB.c **** int i, j, c, index;
+ 617:../saVideoARGB.c **** FILE * file_r;
+ 618:../saVideoARGB.c **** char red,green,blue;
+ 619:../saVideoARGB.c **** unsigned int val;
+ 620:../saVideoARGB.c **** char str[250];
+ 621:../saVideoARGB.c ****
+ 622:../saVideoARGB.c **** for (;;) {
+ 623:../saVideoARGB.c **** c = getopt_long(argc, argv, shortoptions, (void *) NULL,
+ 186 .loc 1 623 0
187 0140 412F8DE2 add r2, sp, #260
188 0144 0500A0E1 mov r0, r5
189 .LVL14:
193 0154 43CF8DE2 add ip, sp, #268
194 0158 00C08DE5 str ip, [sp, #0]
195 015c FEFFFFEB bl getopt_long
- 622:../saVideoARGB.c **** &index);
- 623:../saVideoARGB.c **** if (-1 == c)
- 196 .loc 1 623 0
+ 624:../saVideoARGB.c **** &index);
+ 625:../saVideoARGB.c **** if (-1 == c)
+ 196 .loc 1 625 0
197 0160 010070E3 cmn r0, #1
198 .LVL15:
199 0164 1200000A beq .L19
- 624:../saVideoARGB.c **** break;
- 625:../saVideoARGB.c **** switch (c) {
- 200 .loc 1 625 0
+ 626:../saVideoARGB.c **** break;
+ 627:../saVideoARGB.c **** switch (c) {
+ 200 .loc 1 627 0
201 0168 4C0050E3 cmp r0, #76
202 016c 0400000A beq .L21
203 0170 6C0050E3 cmp r0, #108
206 017c EFFFFF0A beq .L35
207 0180 050000EA b .L38
208 .L21:
- 626:../saVideoARGB.c **** case 0:
- 627:../saVideoARGB.c **** break;
- 628:../saVideoARGB.c **** case 'l':
- 629:../saVideoARGB.c **** case 'L':
- 630:../saVideoARGB.c **** loop_count = atoi(optarg);
- 209 .loc 1 630 0
+ 628:../saVideoARGB.c **** case 0:
+ 629:../saVideoARGB.c **** break;
+ 630:../saVideoARGB.c **** case 'l':
+ 631:../saVideoARGB.c **** case 'L':
+ 632:../saVideoARGB.c **** loop_count = atoi(optarg);
+ 209 .loc 1 632 0
210 0184 F8319FE5 ldr r3, .L39+4
211 0188 000093E5 ldr r0, [r3, #0]
212 .LVL16:
218 .L38:
219 .LBB4:
220 .LBB5:
- 221 .loc 1 605 0
+ 221 .loc 1 607 0
222 019c E8019FE5 ldr r0, .L39+12
223 .LVL18:
224 01a0 FEFFFFEB bl printf
- 225 .loc 1 606 0
+ 225 .loc 1 608 0
226 01a4 E4019FE5 ldr r0, .L39+16
227 01a8 FEFFFFEB bl puts
228 .LBE5:
229 .LBE4:
- 631:../saVideoARGB.c **** break;
- 632:../saVideoARGB.c **** default:
- 633:../saVideoARGB.c **** case 'h':
- 634:../saVideoARGB.c **** case 'H':
- 635:../saVideoARGB.c **** usage();
- 636:../saVideoARGB.c **** exit(1);
- 230 .loc 1 636 0
+ 633:../saVideoARGB.c **** break;
+ 634:../saVideoARGB.c **** default:
+ 635:../saVideoARGB.c **** case 'h':
+ 636:../saVideoARGB.c **** case 'H':
+ 637:../saVideoARGB.c **** usage();
+ 638:../saVideoARGB.c **** exit(1);
+ 230 .loc 1 638 0
231 01ac 0100A0E3 mov r0, #1
232 01b0 FEFFFFEB bl exit
233 .LVL19:
234 .L19:
- 637:../saVideoARGB.c **** }
- 638:../saVideoARGB.c **** }
- 639:../saVideoARGB.c ****
- 640:../saVideoARGB.c **** strcpy(str, "echo ""gfx e:0"" > /sys/devices/platform/omapdss/overlay0/enabled");
- 235 .loc 1 640 0
+ 639:../saVideoARGB.c **** }
+ 640:../saVideoARGB.c **** }
+ 641:../saVideoARGB.c ****
+ 642:../saVideoARGB.c **** strcpy(str, "echo ""gfx e:0"" > /sys/devices/platform/omapdss/overlay0/enabled");
+ 235 .loc 1 642 0
236 01b4 0C408DE2 add r4, sp, #12
237 .LVL20:
238 01b8 D4119FE5 ldr r1, .L39+20
240 01c0 0400A0E1 mov r0, r4
241 .LVL21:
242 01c4 FEFFFFEB bl strcpy
- 641:../saVideoARGB.c ****
- 642:../saVideoARGB.c **** /* Disable Graphics pipeline for this demo.
- 643:../saVideoARGB.c **** * So that it does not create show the past buffer
- 644:../saVideoARGB.c **** */
- 645:../saVideoARGB.c **** if(system(str)) {
- 243 .loc 1 645 0
+ 643:../saVideoARGB.c ****
+ 644:../saVideoARGB.c **** /* Disable Graphics pipeline for this demo.
+ 645:../saVideoARGB.c **** * So that it does not create show the past buffer
+ 646:../saVideoARGB.c **** */
+ 647:../saVideoARGB.c **** if(system(str)) {
+ 243 .loc 1 647 0
244 01c8 0400A0E1 mov r0, r4
245 01cc FEFFFFEB bl system
246 01d0 000050E3 cmp r0, #0
247 01d4 0100000A beq .L22
- 646:../saVideoARGB.c **** printf("Failed to dislable graphics pipeline\n");
- 248 .loc 1 646 0
+ 648:../saVideoARGB.c **** printf("Failed to dislable graphics pipeline\n");
+ 248 .loc 1 648 0
249 01d8 B8019FE5 ldr r0, .L39+24
250 01dc FEFFFFEB bl puts
251 .L22:
- 647:../saVideoARGB.c **** }
- 648:../saVideoARGB.c **** /* Open the file for the video1 and store the
- 649:../saVideoARGB.c **** * RGB values in buffer
- 650:../saVideoARGB.c **** */
- 651:../saVideoARGB.c **** file_r = fopen(OMAP_BMP_FILE1, "r");
- 252 .loc 1 651 0
+ 649:../saVideoARGB.c **** }
+ 650:../saVideoARGB.c **** /* Open the file for the video1 and store the
+ 651:../saVideoARGB.c **** * RGB values in buffer
+ 652:../saVideoARGB.c **** */
+ 653:../saVideoARGB.c **** file_r = fopen(OMAP_BMP_FILE1, "r");
+ 252 .loc 1 653 0
253 01e0 B4019FE5 ldr r0, .L39+28
254 01e4 B4119FE5 ldr r1, .L39+32
255 01e8 FEFFFFEB bl fopen
- 652:../saVideoARGB.c **** if(file_r == NULL) {
- 256 .loc 1 652 0
+ 654:../saVideoARGB.c **** if(file_r == NULL) {
+ 256 .loc 1 654 0
257 01ec 008050E2 subs r8, r0, #0
258 .LVL22:
259 01f0 0070A013 movne r7, #0
260 .LVL23:
- 653:../saVideoARGB.c **** printf("Unable to open video1 file\n");
- 261 .loc 1 653 0
+ 655:../saVideoARGB.c **** printf("Unable to open video1 file\n");
+ 261 .loc 1 655 0
262 01f4 A8019F05 ldreq r0, .L39+36
- 263 .loc 1 652 0
+ 263 .loc 1 654 0
264 01f8 1500001A bne .L24
265 01fc 220000EA b .L37
266 .LVL24:
267 .L26:
- 654:../saVideoARGB.c **** return -1;
- 655:../saVideoARGB.c **** }
- 656:../saVideoARGB.c **** /* Read the entire image in an array */
- 657:../saVideoARGB.c **** for(i = 0 ; i < IMG_HEIGHT ; i++) {
- 658:../saVideoARGB.c **** for(j = 0 ; j < IMG_WIDTH ; j++) {
- 659:../saVideoARGB.c **** blue = fgetc (file_r);
- 268 .loc 1 659 0
+ 656:../saVideoARGB.c **** return -1;
+ 657:../saVideoARGB.c **** }
+ 658:../saVideoARGB.c **** /* Read the entire image in an array */
+ 659:../saVideoARGB.c **** for(i = 0 ; i < IMG_HEIGHT ; i++) {
+ 660:../saVideoARGB.c **** for(j = 0 ; j < IMG_WIDTH ; j++) {
+ 661:../saVideoARGB.c **** blue = fgetc (file_r);
+ 268 .loc 1 661 0
269 0200 0800A0E1 mov r0, r8
- 270 .loc 1 658 0
+ 270 .loc 1 660 0
271 0204 016086E2 add r6, r6, #1
- 272 .loc 1 659 0
+ 272 .loc 1 661 0
273 0208 FEFFFFEB bl fgetc
274 020c 0040A0E1 mov r4, r0
- 660:../saVideoARGB.c **** green = fgetc (file_r);
- 275 .loc 1 660 0
+ 662:../saVideoARGB.c **** green = fgetc (file_r);
+ 275 .loc 1 662 0
276 0210 0800A0E1 mov r0, r8
277 0214 FEFFFFEB bl fgetc
- 661:../saVideoARGB.c **** red = fgetc (file_r);
- 662:../saVideoARGB.c **** val = (0 << 24) |(red << 16) | (green << 8) |
- 663:../saVideoARGB.c **** (blue << 0);
- 664:../saVideoARGB.c **** video1[i][j] = val;
- 278 .loc 1 664 0
+ 663:../saVideoARGB.c **** red = fgetc (file_r);
+ 664:../saVideoARGB.c **** val = (0 << 24) |(red << 16) | (green << 8) |
+ 665:../saVideoARGB.c **** (blue << 0);
+ 666:../saVideoARGB.c **** video1[i][j] = val;
+ 278 .loc 1 666 0
279 0218 7440EFE6 uxtb r4, r4
- 280 .loc 1 660 0
+ 280 .loc 1 662 0
281 021c 0050A0E1 mov r5, r0
282 .LVL25:
- 283 .loc 1 661 0
+ 283 .loc 1 663 0
284 0220 0800A0E1 mov r0, r8
285 0224 FEFFFFEB bl fgetc
- 286 .loc 1 664 0
+ 286 .loc 1 666 0
287 0228 7550EFE6 uxtb r5, r5
- 288 .loc 1 658 0
+ 288 .loc 1 660 0
289 022c 190E56E3 cmp r6, #400
- 290 .loc 1 664 0
+ 290 .loc 1 666 0
291 0230 0554A0E1 mov r5, r5, asl #8
292 0234 7000EFE6 uxtb r0, r0
293 0238 005885E1 orr r5, r5, r0, asl #16
294 023c 045085E1 orr r5, r5, r4
295 0240 04508AE4 str r5, [sl], #4
- 296 .loc 1 658 0
+ 296 .loc 1 660 0
297 0244 EDFFFF1A bne .L26
- 298 .loc 1 657 0
+ 298 .loc 1 659 0
299 0248 017087E2 add r7, r7, #1
300 024c 110E57E3 cmp r7, #272
301 0250 0400000A beq .L27
308 0264 E5FFFFEA b .L26
309 .LVL27:
310 .L27:
- 665:../saVideoARGB.c **** }
- 666:../saVideoARGB.c ****
- 667:../saVideoARGB.c **** }
- 668:../saVideoARGB.c **** fclose(file_r);
- 311 .loc 1 668 0
+ 667:../saVideoARGB.c **** }
+ 668:../saVideoARGB.c ****
+ 669:../saVideoARGB.c **** }
+ 670:../saVideoARGB.c **** fclose(file_r);
+ 311 .loc 1 670 0
312 0268 0800A0E1 mov r0, r8
313 026c FEFFFFEB bl fclose
- 669:../saVideoARGB.c ****
- 670:../saVideoARGB.c **** /* Open the file for video2 and store the RGB
- 671:../saVideoARGB.c **** * value in buffer
- 672:../saVideoARGB.c **** */
- 673:../saVideoARGB.c **** file_r = fopen(OMAP_BMP_FILE2,"r");
- 314 .loc 1 673 0
- 315 0270 34019FE5 ldr r0, .L39+44
+ 671:../saVideoARGB.c ****
+ 672:../saVideoARGB.c **** /* Open the file for video2 and store the RGB
+ 673:../saVideoARGB.c **** * value in buffer
+ 674:../saVideoARGB.c **** */
+ 675:../saVideoARGB.c **** file_r = fopen(OMAP_BMP_FILE2,"r");
+ 314 .loc 1 675 0
+ 315 0270 24019FE5 ldr r0, .L39+28
316 0274 24119FE5 ldr r1, .L39+32
317 0278 FEFFFFEB bl fopen
- 674:../saVideoARGB.c **** if(file_r == NULL) {
- 318 .loc 1 674 0
+ 676:../saVideoARGB.c **** if(file_r == NULL) {
+ 318 .loc 1 676 0
319 027c 008050E2 subs r8, r0, #0
320 .LVL28:
321 0280 0070A013 movne r7, #0
322 .LVL29:
323 0284 1800001A bne .L29
- 675:../saVideoARGB.c **** printf("Unable to open video2 file\n");
- 324 .loc 1 675 0
- 325 0288 20019FE5 ldr r0, .L39+48
+ 677:../saVideoARGB.c **** printf("Unable to open video2 file\n");
+ 324 .loc 1 677 0
+ 325 0288 1C019FE5 ldr r0, .L39+44
326 .LVL30:
327 .L37:
328 028c FEFFFFEB bl puts
330 0294 370000EA b .L25
331 .LVL31:
332 .L30:
- 676:../saVideoARGB.c **** return -1;
- 677:../saVideoARGB.c **** }
- 678:../saVideoARGB.c **** for(i = 0 ; i < IMG_HEIGHT ; i++) {
- 679:../saVideoARGB.c **** for(j = 0 ; j < IMG_WIDTH ; j++) {
- 680:../saVideoARGB.c **** blue = fgetc (file_r);
- 333 .loc 1 680 0
+ 678:../saVideoARGB.c **** return -1;
+ 679:../saVideoARGB.c **** }
+ 680:../saVideoARGB.c **** for(i = 0 ; i < IMG_HEIGHT ; i++) {
+ 681:../saVideoARGB.c **** for(j = 0 ; j < IMG_WIDTH ; j++) {
+ 682:../saVideoARGB.c **** blue = fgetc (file_r);
+ 333 .loc 1 682 0
334 0298 0800A0E1 mov r0, r8
- 335 .loc 1 679 0
+ 335 .loc 1 681 0
336 029c 016086E2 add r6, r6, #1
- 337 .loc 1 680 0
+ 337 .loc 1 682 0
338 02a0 FEFFFFEB bl fgetc
339 02a4 0040A0E1 mov r4, r0
- 681:../saVideoARGB.c **** green = fgetc (file_r);
- 340 .loc 1 681 0
+ 683:../saVideoARGB.c **** green = fgetc (file_r);
+ 340 .loc 1 683 0
341 02a8 0800A0E1 mov r0, r8
342 02ac FEFFFFEB bl fgetc
- 682:../saVideoARGB.c **** red = fgetc (file_r);
- 683:../saVideoARGB.c **** val = (0 << 24) | (red << 16) | (green << 8) |
- 684:../saVideoARGB.c **** (blue << 0);
- 685:../saVideoARGB.c **** video2[i][j] = val;
- 343 .loc 1 685 0
+ 684:../saVideoARGB.c **** red = fgetc (file_r);
+ 685:../saVideoARGB.c **** val = (0 << 24) | (red << 16) | (green << 8) |
+ 686:../saVideoARGB.c **** (blue << 0);
+ 687:../saVideoARGB.c **** video2[i][j] = val;
+ 343 .loc 1 687 0
344 02b0 7440EFE6 uxtb r4, r4
- 345 .loc 1 681 0
+ 345 .loc 1 683 0
346 02b4 0050A0E1 mov r5, r0
- 347 .loc 1 682 0
+ 347 .loc 1 684 0
348 02b8 0800A0E1 mov r0, r8
349 02bc FEFFFFEB bl fgetc
- 350 .loc 1 685 0
+ 350 .loc 1 687 0
351 02c0 7550EFE6 uxtb r5, r5
- 352 .loc 1 679 0
+ 352 .loc 1 681 0
353 02c4 190E56E3 cmp r6, #400
- 354 .loc 1 685 0
+ 354 .loc 1 687 0
355 02c8 0554A0E1 mov r5, r5, asl #8
356 02cc 7000EFE6 uxtb r0, r0
357 02d0 005885E1 orr r5, r5, r0, asl #16
358 02d4 045085E1 orr r5, r5, r4
359 02d8 04508AE4 str r5, [sl], #4
- 360 .loc 1 679 0
+ 360 .loc 1 681 0
361 02dc EDFFFF1A bne .L30
- 362 .loc 1 678 0
+ 362 .loc 1 680 0
363 02e0 017087E2 add r7, r7, #1
364 02e4 110E57E3 cmp r7, #272
365 02e8 0400000A beq .L31
366 .L29:
- 367 02ec C0309FE5 ldr r3, .L39+52
+ 367 02ec BC309FE5 ldr r3, .L39+48
368 02f0 112DA0E3 mov r2, #1088
369 02f4 0060A0E3 mov r6, #0
370 02f8 92372AE0 mla sl, r2, r7, r3
371 02fc E5FFFFEA b .L30
372 .L31:
- 686:../saVideoARGB.c **** }
- 687:../saVideoARGB.c **** }
- 688:../saVideoARGB.c **** fclose(file_r);
- 373 .loc 1 688 0
+ 688:../saVideoARGB.c **** }
+ 689:../saVideoARGB.c **** }
+ 690:../saVideoARGB.c **** fclose(file_r);
+ 373 .loc 1 690 0
374 0300 0800A0E1 mov r0, r8
- 689:../saVideoARGB.c ****
- 690:../saVideoARGB.c **** /* Two threads are created. one thread displays RGB24 unpacked image
- 691:../saVideoARGB.c **** * into video1 pipeline and other thread displays ARGB image into
- 692:../saVideoARGB.c **** * video2 pipeline */
- 693:../saVideoARGB.c **** /* Create threads for Video1 and Video2 streaming*/
- 694:../saVideoARGB.c **** ret1 = pthread_create(&t1, NULL, video1_threadfun, &ch_no1);
- 695:../saVideoARGB.c **** ret2 = pthread_create(&t2, NULL, video2_threadfun, &ch_no2);
- 696:../saVideoARGB.c **** pthread_join(t1, NULL);
- 697:../saVideoARGB.c **** pthread_join(t2, NULL);
- 698:../saVideoARGB.c ****
- 699:../saVideoARGB.c **** strcpy(str,"echo ""gfx e:1"" > /sys/devices/platform/omapdss/overlay0/enabled");
- 375 .loc 1 699 0
+ 691:../saVideoARGB.c ****
+ 692:../saVideoARGB.c **** /* Two threads are created. one thread displays RGB24 unpacked image
+ 693:../saVideoARGB.c **** * into video1 pipeline and other thread displays ARGB image into
+ 694:../saVideoARGB.c **** * video2 pipeline */
+ 695:../saVideoARGB.c **** /* Create threads for Video1 and Video2 streaming*/
+ 696:../saVideoARGB.c **** ret1 = pthread_create(&t1, NULL, video1_threadfun, &ch_no1);
+ 697:../saVideoARGB.c **** ret2 = pthread_create(&t2, NULL, video2_threadfun, &ch_no2);
+ 698:../saVideoARGB.c **** pthread_join(t1, NULL);
+ 699:../saVideoARGB.c **** pthread_join(t2, NULL);
+ 700:../saVideoARGB.c ****
+ 701:../saVideoARGB.c **** strcpy(str,"echo ""gfx e:1"" > /sys/devices/platform/omapdss/overlay0/enabled");
+ 375 .loc 1 701 0
376 0304 0C408DE2 add r4, sp, #12
- 377 .loc 1 688 0
+ 377 .loc 1 690 0
378 0308 FEFFFFEB bl fclose
- 379 .loc 1 694 0
+ 379 .loc 1 696 0
380 030c 0010A0E3 mov r1, #0
- 381 0310 A0209FE5 ldr r2, .L39+56
+ 381 0310 9C209FE5 ldr r2, .L39+52
382 0314 473F8DE2 add r3, sp, #284
383 0318 450F8DE2 add r0, sp, #276
- 384 .loc 1 699 0
+ 384 .loc 1 701 0
385 031c 014044E2 sub r4, r4, #1
- 386 .loc 1 694 0
+ 386 .loc 1 696 0
387 0320 FEFFFFEB bl pthread_create
- 388 .loc 1 695 0
- 389 0324 90209FE5 ldr r2, .L39+60
+ 388 .loc 1 697 0
+ 389 0324 8C209FE5 ldr r2, .L39+56
390 0328 463F8DE2 add r3, sp, #280
391 032c 0010A0E3 mov r1, #0
392 0330 110E8DE2 add r0, sp, #272
393 0334 FEFFFFEB bl pthread_create
- 394 .loc 1 696 0
+ 394 .loc 1 698 0
395 0338 0010A0E3 mov r1, #0
396 033c 14019DE5 ldr r0, [sp, #276]
397 .LVL32:
398 0340 FEFFFFEB bl pthread_join
- 399 .loc 1 697 0
+ 399 .loc 1 699 0
400 0344 0010A0E3 mov r1, #0
401 0348 10019DE5 ldr r0, [sp, #272]
402 .LVL33:
403 034c FEFFFFEB bl pthread_join
- 404 .loc 1 699 0
- 405 0350 68109FE5 ldr r1, .L39+64
+ 404 .loc 1 701 0
+ 405 0350 64109FE5 ldr r1, .L39+60
406 0354 0400A0E1 mov r0, r4
407 0358 FEFFFFEB bl strcpy
- 700:../saVideoARGB.c ****
- 701:../saVideoARGB.c **** /* Disable Graphics pipeline for this demo.
- 702:../saVideoARGB.c **** * So that it does not create show the past buffer
- 703:../saVideoARGB.c **** */
- 704:../saVideoARGB.c **** if(system(str)) {
- 408 .loc 1 704 0
+ 702:../saVideoARGB.c ****
+ 703:../saVideoARGB.c **** /* Disable Graphics pipeline for this demo.
+ 704:../saVideoARGB.c **** * So that it does not create show the past buffer
+ 705:../saVideoARGB.c **** */
+ 706:../saVideoARGB.c **** if(system(str)) {
+ 408 .loc 1 706 0
409 035c 0400A0E1 mov r0, r4
410 0360 FEFFFFEB bl system
411 0364 000050E3 cmp r0, #0
412 0368 0200000A beq .L25
- 705:../saVideoARGB.c **** printf("Failed to dislable graphics pipeline\n");
- 413 .loc 1 705 0
+ 707:../saVideoARGB.c **** printf("Failed to dislable graphics pipeline\n");
+ 413 .loc 1 707 0
414 036c 24009FE5 ldr r0, .L39+24
415 0370 FEFFFFEB bl puts
416 0374 0000A0E3 mov r0, #0
417 .LVL34:
418 .L25:
- 706:../saVideoARGB.c **** }
- 707:../saVideoARGB.c ****
- 708:../saVideoARGB.c **** return 0;
- 709:../saVideoARGB.c **** }
- 419 .loc 1 709 0
+ 708:../saVideoARGB.c **** }
+ 709:../saVideoARGB.c ****
+ 710:../saVideoARGB.c **** return 0;
+ 711:../saVideoARGB.c **** }
+ 419 .loc 1 711 0
420 0378 49DF8DE2 add sp, sp, #292
421 037c F085BDE8 ldmfd sp!, {r4, r5, r6, r7, r8, sl, pc}
422 .L40:
423 .align 2
424 .L39:
- 425 0380 A4010000 .word .LC0
+ 425 0380 67010000 .word .LC0
426 0384 00000000 .word optarg
427 0388 00000000 .word .LANCHOR2
428 038c 00000000 .word .LC1
@@ -1129,1511 +1131,1501 @@
430 0394 86000000 .word .LC3
431 0398 C4000000 .word .LC4
432 039c E9000000 .word .LC5
- 433 03a0 0C010000 .word .LC6
- 434 03a4 0E010000 .word .LC7
+ 433 03a0 F1000000 .word .LC6
+ 434 03a4 F3000000 .word .LC7
435 03a8 08A40600 .word .LANCHOR1+1456
- 436 03ac 29010000 .word .LC8
- 437 03b0 4B010000 .word .LC9
- 438 03b4 08000000 .word .LANCHOR0+8
- 439 03b8 00000000 .word video1_threadfun
- 440 03bc 00000000 .word video2_threadfun
- 441 03c0 66010000 .word .LC10
- 442 .LFE6:
- 443 .fnend
- 445 .align 2
- 447 video2_threadfun:
- 448 .fnstart
- 449 .LFB3:
- 450 .loc 1 124 0
- 451 @ args = 0, pretend = 0, frame = 320
- 452 @ frame_needed = 0, uses_anonymous_args = 0
- 453 .LVL35:
- 454 .loc 1 134 0
- 455 03c4 000090E5 ldr r0, [r0, #0]
- 456 .LVL36:
- 457 03c8 1420A0E3 mov r2, #20
- 458 03cc 28359FE5 ldr r3, .L87
- 459 03d0 0210A0E3 mov r1, #2
- 460 .loc 1 124 0
- 461 03d4 F0452DE9 stmfd sp!, {r4, r5, r6, r7, r8, sl, lr}
- 462 .save {r4, r5, r6, r7, r8, sl, lr}
- 463 .LCFI3:
- 464 .pad #332
- 465 03d8 53DF4DE2 sub sp, sp, #332
- 466 .LCFI4:
- 467 .loc 1 134 0
- 468 03dc 923024E0 mla r4, r2, r0, r3
- 469 03e0 0400A0E1 mov r0, r4
- 470 03e4 FEFFFFEB bl open
- 471 .loc 1 135 0
- 472 03e8 006050E2 subs r6, r0, #0
- 473 .LVL37:
- 474 03ec 030000CA bgt .L42
- 475 .loc 1 136 0
- 476 03f0 0410A0E1 mov r1, r4
- 477 03f4 04059FE5 ldr r0, .L87+4
- 478 03f8 FEFFFFEB bl printf
- 479 03fc 0B0000EA b .L82
- 480 .L42:
- 481 .loc 1 142 0
- 482 0400 525F8DE2 add r5, sp, #328
- 483 0404 02A0A0E3 mov sl, #2
- 484 .loc 1 143 0
- 485 0408 F4149FE5 ldr r1, .L87+8
- 486 .loc 1 142 0
- 487 040c 3CA125E5 str sl, [r5, #-316]!
- 488 .loc 1 143 0
- 489 0410 0520A0E1 mov r2, r5
- 490 0414 FEFFFFEB bl ioctl
- 491 .loc 1 144 0
- 492 0418 000050E3 cmp r0, #0
- 493 041c 050000AA bge .L43
- 494 .loc 1 145 0
- 495 0420 E0049FE5 ldr r0, .L87+12
- 496 .L86:
- 497 0424 FEFFFFEB bl perror
- 498 .LVL38:
- 499 .L84:
- 500 .loc 1 146 0
- 501 0428 0600A0E1 mov r0, r6
- 502 042c FEFFFFEB bl close
- 503 .LVL39:
- 504 .L82:
- 505 .loc 1 147 0
- 506 0430 0000A0E3 mov r0, #0
- 507 .L83:
- 508 0434 FEFFFFEB bl exit
- 509 .LVL40:
- 510 .L43:
- 511 .loc 1 152 0
- 512 0438 CC349FE5 ldr r3, .L87+16
- 513 .loc 1 153 0
- 514 043c 0600A0E1 mov r0, r6
- 515 0440 C8149FE5 ldr r1, .L87+20
- 516 0444 0520A0E1 mov r2, r5
- 517 .loc 1 150 0
- 518 0448 198EA0E3 mov r8, #400
- 519 .loc 1 151 0
- 520 044c 117EA0E3 mov r7, #272
- 521 .loc 1 150 0
- 522 0450 10808DE5 str r8, [sp, #16]
- 523 .loc 1 152 0
- 524 0454 18308DE5 str r3, [sp, #24]
- 525 .loc 1 151 0
- 526 0458 14708DE5 str r7, [sp, #20]
- 527 .loc 1 153 0
- 528 045c FEFFFFEB bl ioctl
- 529 .loc 1 154 0
- 530 0460 000050E3 cmp r0, #0
- 531 .loc 1 155 0
- 532 0464 A8049FB5 ldrlt r0, .L87+24
- 533 .loc 1 154 0
- 534 0468 EDFFFFBA blt .L86
- 535 .loc 1 161 0
- 536 046c 524F8DE2 add r4, sp, #328
- 537 .loc 1 162 0
- 538 0470 0600A0E1 mov r0, r6
- 539 0474 9C149FE5 ldr r1, .L87+28
- 540 .loc 1 161 0
- 541 0478 2CA024E5 str sl, [r4, #-44]!
- 542 .loc 1 162 0
- 543 047c 0420A0E1 mov r2, r4
- 544 0480 FEFFFFEB bl ioctl
- 545 .loc 1 163 0
- 546 0484 000050E3 cmp r0, #0
- 547 .loc 1 164 0
- 548 0488 8C049FB5 ldrlt r0, .L87+32
- 549 .loc 1 163 0
- 550 048c E4FFFFBA blt .L86
- 551 .loc 1 173 0
- 552 0490 0420A0E1 mov r2, r4
- 553 0494 0600A0E1 mov r0, r6
- 554 0498 80149FE5 ldr r1, .L87+36
- 555 .loc 1 169 0
- 556 049c 0040A0E3 mov r4, #0
- 557 .loc 1 171 0
- 558 04a0 28818DE5 str r8, [sp, #296]
- 559 .loc 1 169 0
- 560 04a4 20418DE5 str r4, [sp, #288]
- 561 .loc 1 170 0
- 562 04a8 24418DE5 str r4, [sp, #292]
- 563 .loc 1 172 0
- 564 04ac 2C718DE5 str r7, [sp, #300]
- 565 .loc 1 173 0
- 566 04b0 FEFFFFEB bl ioctl
- 567 .loc 1 174 0
- 568 04b4 040050E1 cmp r0, r4
- 569 .loc 1 175 0
- 570 04b8 64049FB5 ldrlt r0, .L87+40
- 571 .loc 1 174 0
- 572 04bc 280000BA blt .L85
- 573 .loc 1 183 0
- 574 04c0 0600A0E1 mov r0, r6
- 575 04c4 38149FE5 ldr r1, .L87+8
- 576 04c8 0520A0E1 mov r2, r5
- 577 .loc 1 182 0
- 578 04cc 0330A0E3 mov r3, #3
- 579 04d0 0C308DE5 str r3, [sp, #12]
- 580 .loc 1 183 0
- 581 04d4 FEFFFFEB bl ioctl
- 582 .loc 1 184 0
- 583 04d8 000050E3 cmp r0, #0
- 584 .loc 1 185 0
- 585 04dc 44049FB5 ldrlt r0, .L87+44
- 586 .loc 1 184 0
- 587 04e0 1F0000BA blt .L85
- 588 .loc 1 195 0
- 589 04e4 0600A0E1 mov r0, r6
- 590 04e8 20149FE5 ldr r1, .L87+20
- 591 04ec 0520A0E1 mov r2, r5
- 592 .loc 1 194 0
- 593 04f0 0030E0E3 mvn r3, #0
- 594 .loc 1 192 0
- 595 04f4 18808DE5 str r8, [sp, #24]
- 596 .loc 1 193 0
- 597 04f8 1C708DE5 str r7, [sp, #28]
- 598 .loc 1 194 0
- 599 04fc 3430CDE5 strb r3, [sp, #52]
- 600 .loc 1 190 0
- 601 0500 10408DE5 str r4, [sp, #16]
- 602 .loc 1 191 0
- 603 0504 14408DE5 str r4, [sp, #20]
- 604 .loc 1 195 0
- 605 0508 FEFFFFEB bl ioctl
- 606 .loc 1 196 0
- 607 050c 000050E3 cmp r0, #0
- 608 .loc 1 197 0
- 609 0510 14049FB5 ldrlt r0, .L87+48
- 610 .loc 1 196 0
- 611 0514 120000BA blt .L85
- 612 .loc 1 203 0
- 613 0518 0520A0E1 mov r2, r5
- 614 051c 0600A0E1 mov r0, r6
- 615 0520 DC139FE5 ldr r1, .L87+8
- 616 .loc 1 202 0
- 617 0524 0CA08DE5 str sl, [sp, #12]
- 618 .loc 1 203 0
- 619 0528 FEFFFFEB bl ioctl
- 620 .loc 1 204 0
- 621 052c 000050E3 cmp r0, #0
- 622 .loc 1 205 0
- 623 0530 D0039FB5 ldrlt r0, .L87+12
- 624 .loc 1 204 0
- 625 0534 0A0000BA blt .L85
- 626 .loc 1 216 0
- 627 0538 0600A0E1 mov r0, r6
- 628 053c EC139FE5 ldr r1, .L87+52
- 629 0540 132E8DE2 add r2, sp, #304
- 630 .loc 1 214 0
- 631 0544 0130A0E3 mov r3, #1
- 632 .loc 1 213 0
- 633 0548 34A18DE5 str sl, [sp, #308]
- 634 .loc 1 212 0
- 635 054c 30A18DE5 str sl, [sp, #304]
- 636 .loc 1 214 0
- 637 0550 38318DE5 str r3, [sp, #312]
- 638 .loc 1 216 0
- 639 0554 FEFFFFEB bl ioctl
- 640 .loc 1 217 0
- 641 0558 000050E3 cmp r0, #0
- 642 055c 050000AA bge .L50
- 643 .loc 1 218 0
- 644 0560 CC039FE5 ldr r0, .L87+56
- 645 .L85:
- 646 0564 FEFFFFEB bl perror
- 647 .loc 1 219 0
- 648 0568 0600A0E1 mov r0, r6
- 649 056c FEFFFFEB bl close
- 650 .loc 1 220 0
- 651 0570 0400A0E1 mov r0, r4
- 652 0574 AEFFFFEA b .L83
- 653 .L50:
- 654 .loc 1 223 0
- 655 0578 30019DE5 ldr r0, [sp, #304]
- 656 057c 8001A0E1 mov r0, r0, asl #3
- 657 0580 FEFFFFEB bl malloc
- 658 .loc 1 226 0
- 659 0584 008050E2 subs r8, r0, #0
- 660 0588 0070A013 movne r7, #0
- 661 .LVL41:
- 662 058c 0750A011 movne r5, r7
- 663 0590 3E00001A bne .L52
- 664 .loc 1 227 0
- 665 0594 9C039FE5 ldr r0, .L87+60
- 666 0598 FEFFFFEB bl puts
- 667 059c A1FFFFEA b .L84
- 668 .L59:
- 669 .loc 1 239 0
- 670 05a0 0020A0E1 mov r2, r0
- 671 05a4 90139FE5 ldr r1, .L87+64
- 672 05a8 0600A0E1 mov r0, r6
- 673 .loc 1 237 0
- 674 05ac 0230A0E3 mov r3, #2
- 675 .loc 1 238 0
- 676 05b0 D8708DE5 str r7, [sp, #216]
- 677 .loc 1 237 0
- 678 05b4 DC308DE5 str r3, [sp, #220]
- 679 .loc 1 239 0
- 680 05b8 FEFFFFEB bl ioctl
- 681 .loc 1 240 0
- 682 05bc 000050E3 cmp r0, #0
- 683 05c0 0D0000AA bge .L53
- 684 .loc 1 241 0
- 685 05c4 74039FE5 ldr r0, .L87+68
- 686 05c8 0050A0E3 mov r5, #0
- 687 .LVL42:
- 688 05cc FEFFFFEB bl perror
- 689 05d0 0540A0E1 mov r4, r5
- 690 05d4 050000EA b .L54
- 691 .L55:
- 692 .loc 1 243 0
- 693 05d8 043088E0 add r3, r8, r4
- 694 05dc 041098E7 ldr r1, [r8, r4]
- 695 .loc 1 242 0
- 696 05e0 015085E2 add r5, r5, #1
- 697 05e4 084084E2 add r4, r4, #8
- 698 .loc 1 243 0
- 699 05e8 040093E5 ldr r0, [r3, #4]
- 700 05ec FEFFFFEB bl munmap
- 701 .L54:
- 702 .loc 1 242 0
- 703 05f0 070055E1 cmp r5, r7
- 704 05f4 F7FFFFBA blt .L55
- 705 05f8 8AFFFFEA b .L84
- 706 .LVL43:
- 707 .L53:
- 708 .loc 1 248 0
- 709 05fc 10119DE5 ldr r1, [sp, #272]
- 710 0600 0840A0E1 mov r4, r8
- 711 .loc 1 249 0
- 712 0604 0000A0E3 mov r0, #0
- 713 0608 0320A0E3 mov r2, #3
- 714 060c 0130A0E3 mov r3, #1
- 715 .loc 1 248 0
- 716 0610 0510A4E7 str r1, [r4, r5]!
- 717 .loc 1 249 0
- 718 0614 0CC19DE5 ldr ip, [sp, #268]
- 719 0618 40108DE8 stmia sp, {r6, ip} @ phole stm
- 720 061c FEFFFFEB bl mmap
- 721 .loc 1 253 0
- 722 0620 010050E3 cmp r0, #1
- 723 .loc 1 249 0
- 724 0624 040084E5 str r0, [r4, #4]
- 725 .loc 1 253 0
- 726 0628 0E00001A bne .L56
- 727 .loc 1 255 0
- 728 062c 10039FE5 ldr r0, .L87+72
- 729 0630 0710A0E1 mov r1, r7
- 730 0634 0050A0E3 mov r5, #0
- 731 .LVL44:
- 732 0638 FEFFFFEB bl printf
- 733 063c 0540A0E1 mov r4, r5
- 734 0640 050000EA b .L57
- 735 .L58:
- 736 .loc 1 257 0
- 737 0644 043088E0 add r3, r8, r4
- 738 0648 041098E7 ldr r1, [r8, r4]
- 739 .loc 1 256 0
- 740 064c 015085E2 add r5, r5, #1
- 741 0650 084084E2 add r4, r4, #8
- 742 .loc 1 257 0
- 743 0654 040093E5 ldr r0, [r3, #4]
- 744 0658 FEFFFFEB bl munmap
- 745 .L57:
- 746 .loc 1 256 0
- 747 065c 070055E1 cmp r5, r7
- 748 0660 F7FFFFBA blt .L58
- 749 0664 6FFFFFEA b .L84
- 750 .LVL45:
- 751 .L56:
- 752 .loc 1 262 0
- 753 0668 052098E7 ldr r2, [r8, r5]
- 754 066c 8010A0E3 mov r1, #128
- 755 0670 FEFFFFEB bl memset
- 756 .loc 1 264 0
- 757 0674 0130A0E3 mov r3, #1
- 758 0678 040094E5 ldr r0, [r4, #4]
- 759 .loc 1 236 0
- 760 067c 037087E0 add r7, r7, r3
- 761 .loc 1 264 0
- 762 0680 10109DE5 ldr r1, [sp, #16]
- 763 .loc 1 236 0
- 764 0684 085085E2 add r5, r5, #8
- 765 .loc 1 264 0
- 766 0688 14209DE5 ldr r2, [sp, #20]
- 767 068c 5BFEFFEB bl fill
- 768 .L52:
- 769 .loc 1 236 0
- 770 0690 30319DE5 ldr r3, [sp, #304]
- 771 0694 D8008DE2 add r0, sp, #216
- 772 0698 030057E1 cmp r7, r3
- 773 069c BFFFFF3A bcc .L59
- 774 .loc 1 268 0
- 775 06a0 0010A0E3 mov r1, #0
- 776 06a4 4420A0E3 mov r2, #68
- 777 06a8 0140A0E1 mov r4, r1
- 778 .LVL46:
- 779 06ac FEFFFFEB bl memset
- 780 06b0 1A0000EA b .L60
- 781 .L64:
- 782 .loc 1 275 0
- 783 06b4 0600A0E1 mov r0, r6
- 784 06b8 88129FE5 ldr r1, .L87+76
- 785 06bc D8208DE2 add r2, sp, #216
- 786 .loc 1 272 0
- 787 06c0 0230A0E3 mov r3, #2
- 788 .loc 1 273 0
- 789 06c4 D8408DE5 str r4, [sp, #216]
- 790 .loc 1 272 0
- 791 06c8 DC308DE5 str r3, [sp, #220]
- 792 .loc 1 274 0
- 793 06cc 0130A0E3 mov r3, #1
- 794 06d0 08318DE5 str r3, [sp, #264]
- 795 .loc 1 275 0
- 796 06d4 FEFFFFEB bl ioctl
- 797 .loc 1 276 0
- 798 06d8 000050E3 cmp r0, #0
- 799 06dc 0E0000AA bge .L61
- 800 .loc 1 277 0
- 801 06e0 64029FE5 ldr r0, .L87+80
- 802 06e4 0050A0E3 mov r5, #0
- 803 .LVL47:
- 804 06e8 FEFFFFEB bl perror
- 805 06ec 0540A0E1 mov r4, r5
- 806 .LVL48:
- 807 06f0 050000EA b .L62
- 808 .L63:
- 809 .loc 1 279 0
- 810 06f4 043088E0 add r3, r8, r4
- 811 06f8 041098E7 ldr r1, [r8, r4]
- 812 .loc 1 278 0
- 813 06fc 015085E2 add r5, r5, #1
- 814 0700 084084E2 add r4, r4, #8
- 815 .loc 1 279 0
- 816 0704 040093E5 ldr r0, [r3, #4]
- 817 0708 FEFFFFEB bl munmap
- 818 .L62:
- 819 .loc 1 278 0
- 820 070c 30319DE5 ldr r3, [sp, #304]
- 821 0710 030055E1 cmp r5, r3
- 822 0714 F6FFFF3A bcc .L63
- 823 0718 44FFFFEA b .L82
- 824 .LVL49:
- 825 .L61:
- 826 .loc 1 271 0
- 827 071c 014084E2 add r4, r4, #1
- 828 .L60:
- 829 0720 30319DE5 ldr r3, [sp, #304]
- 830 0724 030054E1 cmp r4, r3
- 831 0728 E1FFFF3A bcc .L64
- 832 .loc 1 285 0
- 833 072c 522F8DE2 add r2, sp, #328
- 834 0730 0040A0E3 mov r4, #0
- 835 .LVL50:
- 836 .loc 1 287 0
- 837 0734 0600A0E1 mov r0, r6
- 838 0738 10129FE5 ldr r1, .L87+84
- 839 .loc 1 285 0
- 840 073c 044022E5 str r4, [r2, #-4]!
- 841 .LVL51:
- 842 .loc 1 287 0
- 843 0740 FEFFFFEB bl ioctl
- 844 .loc 1 288 0
- 845 0744 040050E1 cmp r0, r4
- 846 0748 420000AA bge .L66
- 847 .loc 1 289 0
- 848 074c 00029FE5 ldr r0, .L87+88
- 849 0750 0450A0E1 mov r5, r4
- 850 .LVL52:
- 851 0754 FEFFFFEB bl perror
- 852 0758 050000EA b .L67
- 853 .L68:
- 854 .loc 1 291 0
- 855 075c 043088E0 add r3, r8, r4
- 856 0760 041098E7 ldr r1, [r8, r4]
- 857 .loc 1 290 0
- 858 0764 015085E2 add r5, r5, #1
- 859 0768 084084E2 add r4, r4, #8
- 860 .loc 1 291 0
- 861 076c 040093E5 ldr r0, [r3, #4]
- 862 0770 FEFFFFEB bl munmap
- 863 .L67:
- 864 .loc 1 290 0
- 865 0774 30319DE5 ldr r3, [sp, #304]
- 866 0778 030055E1 cmp r5, r3
- 867 077c F6FFFF3A bcc .L68
- 868 0780 2AFFFFEA b .L82
- 869 .LVL53:
- 870 .L75:
- 871 .loc 1 298 0
- 872 0784 D8508DE2 add r5, sp, #216
- 873 0788 0600A0E1 mov r0, r6
- 874 078c C4119FE5 ldr r1, .L87+92
- 875 0790 0520A0E1 mov r2, r5
- 876 0794 FEFFFFEB bl ioctl
- 877 .loc 1 299 0
- 878 0798 000050E3 cmp r0, #0
- 879 079c 0E0000AA bge .L69
- 880 .loc 1 300 0
- 881 07a0 B4019FE5 ldr r0, .L87+96
- 882 07a4 0050A0E3 mov r5, #0
- 883 .LVL54:
- 884 07a8 FEFFFFEB bl perror
- 885 07ac 0540A0E1 mov r4, r5
- 886 .LVL55:
- 887 07b0 050000EA b .L70
- 888 .L71:
- 889 .loc 1 302 0
- 890 07b4 043088E0 add r3, r8, r4
- 891 07b8 041098E7 ldr r1, [r8, r4]
- 892 .loc 1 301 0
- 893 07bc 015085E2 add r5, r5, #1
- 894 07c0 084084E2 add r4, r4, #8
- 895 .loc 1 302 0
- 896 07c4 040093E5 ldr r0, [r3, #4]
- 897 07c8 FEFFFFEB bl munmap
- 898 .L70:
- 899 .loc 1 301 0
- 900 07cc 30319DE5 ldr r3, [sp, #304]
- 901 07d0 030055E1 cmp r5, r3
- 902 07d4 F6FFFF3A bcc .L71
- 903 07d8 12FFFFEA b .L84
- 904 .LVL56:
- 905 .L69:
- 906 .loc 1 309 0
- 907 07dc D8009DE5 ldr r0, [sp, #216]
- 908 07e0 0130A0E3 mov r3, #1
- 909 07e4 10109DE5 ldr r1, [sp, #16]
- 910 07e8 14209DE5 ldr r2, [sp, #20]
- 911 07ec 800188E0 add r0, r8, r0, asl #3
- 912 07f0 040090E5 ldr r0, [r0, #4]
- 913 07f4 01FEFFEB bl fill
- 914 .loc 1 312 0
- 915 07f8 0600A0E1 mov r0, r6
- 916 07fc 0520A0E1 mov r2, r5
- 917 0800 40119FE5 ldr r1, .L87+76
- 918 0804 FEFFFFEB bl ioctl
- 919 .loc 1 313 0
- 920 0808 000050E3 cmp r0, #0
- 921 080c 0E0000AA bge .L72
- 922 .loc 1 314 0
- 923 0810 34019FE5 ldr r0, .L87+80
- 924 0814 0050A0E3 mov r5, #0
- 925 .LVL57:
- 926 0818 FEFFFFEB bl perror
- 927 081c 0540A0E1 mov r4, r5
- 928 .LVL58:
- 929 0820 050000EA b .L73
- 930 .L74:
- 931 .loc 1 316 0
- 932 0824 043088E0 add r3, r8, r4
- 933 0828 041098E7 ldr r1, [r8, r4]
- 934 .loc 1 315 0
- 935 082c 015085E2 add r5, r5, #1
- 936 0830 084084E2 add r4, r4, #8
- 937 .loc 1 316 0
- 938 0834 040093E5 ldr r0, [r3, #4]
- 939 0838 FEFFFFEB bl munmap
- 940 .L73:
- 941 .loc 1 315 0
- 942 083c 30319DE5 ldr r3, [sp, #304]
- 943 0840 030055E1 cmp r5, r3
- 944 0844 F6FFFF3A bcc .L74
- 945 0848 F6FEFFEA b .L84
- 946 .LVL59:
- 947 .L72:
- 948 .loc 1 321 0
- 949 084c 0100A0E3 mov r0, #1
- 950 .loc 1 296 0
- 951 0850 004084E0 add r4, r4, r0
- 952 .loc 1 321 0
- 953 0854 FEFFFFEB bl sleep
- 954 .L66:
- 955 .loc 1 296 0
- 956 0858 00319FE5 ldr r3, .L87+100
- 957 085c 003093E5 ldr r3, [r3, #0]
- 958 0860 030054E1 cmp r4, r3
- 959 0864 C6FFFF3A bcc .L75
- 960 .loc 1 327 0
- 961 0868 0600A0E1 mov r0, r6
- 962 086c F0109FE5 ldr r1, .L87+104
- 963 0870 512F8DE2 add r2, sp, #324
- 964 0874 FEFFFFEB bl ioctl
- 965 .loc 1 328 0
- 966 0878 000050E3 cmp r0, #0
- 967 087c 0050A0A3 movge r5, #0
- 968 .LVL60:
- 969 0880 0540A0A1 movge r4, r5
- 970 0884 140000AA bge .L77
- 971 .loc 1 329 0
- 972 0888 D8009FE5 ldr r0, .L87+108
- 973 088c 0050A0E3 mov r5, #0
- 974 .LVL61:
- 975 0890 FEFFFFEB bl perror
- 976 0894 0540A0E1 mov r4, r5
- 977 0898 050000EA b .L78
- 978 .L79:
- 979 .loc 1 331 0
- 980 089c 043088E0 add r3, r8, r4
- 981 08a0 041098E7 ldr r1, [r8, r4]
- 982 .loc 1 330 0
- 983 08a4 015085E2 add r5, r5, #1
- 984 08a8 084084E2 add r4, r4, #8
- 985 .loc 1 331 0
- 986 08ac 040093E5 ldr r0, [r3, #4]
- 987 08b0 FEFFFFEB bl munmap
- 988 .L78:
- 989 .loc 1 330 0
- 990 08b4 30319DE5 ldr r3, [sp, #304]
- 991 08b8 030055E1 cmp r5, r3
- 992 08bc F6FFFF3A bcc .L79
- 993 08c0 D8FEFFEA b .L84
- 994 .L80:
- 995 .loc 1 337 0
- 996 08c4 043088E0 add r3, r8, r4
- 997 08c8 041098E7 ldr r1, [r8, r4]
- 998 .loc 1 336 0
- 999 08cc 015085E2 add r5, r5, #1
- 1000 08d0 084084E2 add r4, r4, #8
- 1001 .loc 1 337 0
- 1002 08d4 040093E5 ldr r0, [r3, #4]
- 1003 08d8 FEFFFFEB bl munmap
- 1004 .L77:
- 1005 .loc 1 336 0
- 1006 08dc 30319DE5 ldr r3, [sp, #304]
- 1007 08e0 030055E1 cmp r5, r3
- 1008 08e4 F6FFFF3A bcc .L80
- 1009 .loc 1 338 0
- 1010 08e8 0600A0E1 mov r0, r6
- 1011 08ec FEFFFFEB bl close
- 1012 .loc 1 340 0
- 1013 08f0 0000A0E3 mov r0, #0
- 1014 08f4 53DF8DE2 add sp, sp, #332
- 1015 08f8 F085BDE8 ldmfd sp!, {r4, r5, r6, r7, r8, sl, pc}
- 1016 .L88:
- 1017 .align 2
- 1018 .L87:
- 1019 08fc 04000000 .word .LANCHOR2+4
- 1020 0900 AB010000 .word .LC11
- 1021 0904 0456CCC0 .word -1060350460
- 1022 0908 C4010000 .word .LC12
- 1023 090c 52474234 .word 876758866
- 1024 0910 0556CCC0 .word -1060350459
- 1025 0914 D2010000 .word .LC13
- 1026 0918 3B5614C0 .word -1072409029
- 1027 091c E0010000 .word .LC14
- 1028 0920 3C561440 .word 1075074620
- 1029 0924 EF010000 .word .LC15
- 1030 0928 FE010000 .word .LC16
- 1031 092c 0E020000 .word .LC17
- 1032 0930 085614C0 .word -1072409080
- 1033 0934 1E020000 .word .LC18
- 1034 0938 36020000 .word .LC19
- 1035 093c 095644C0 .word -1069263351
- 1036 0940 5B020000 .word .LC20
- 1037 0944 6C020000 .word .LC21
- 1038 0948 0F5644C0 .word -1069263345
- 1039 094c 85020000 .word .LC22
- 1040 0950 12560440 .word 1074026002
- 1041 0954 92020000 .word .LC23
- 1042 0958 115644C0 .word -1069263343
- 1043 095c A3020000 .word .LC24
- 1044 0960 00000000 .word .LANCHOR2
- 1045 0964 13560440 .word 1074026003
- 1046 0968 B1020000 .word .LC25
- 1047 .LFE3:
- 1048 .fnend
- 1050 .align 2
- 1052 video1_threadfun:
- 1053 .fnstart
- 1054 .LFB4:
- 1055 .loc 1 344 0
- 1056 @ args = 0, pretend = 0, frame = 360
- 1057 @ frame_needed = 0, uses_anonymous_args = 0
- 1058 .LVL62:
- 1059 .loc 1 355 0
- 1060 096c 000090E5 ldr r0, [r0, #0]
- 1061 .LVL63:
- 1062 0970 1420A0E3 mov r2, #20
- 1063 0974 CC359FE5 ldr r3, .L141
- 1064 0978 0210A0E3 mov r1, #2
- 1065 .loc 1 344 0
- 1066 097c F0452DE9 stmfd sp!, {r4, r5, r6, r7, r8, sl, lr}
- 1067 .save {r4, r5, r6, r7, r8, sl, lr}
- 1068 .LCFI5:
- 1069 .pad #372
- 1070 0980 5DDF4DE2 sub sp, sp, #372
- 1071 .LCFI6:
- 1072 .loc 1 355 0
- 1073 0984 923024E0 mla r4, r2, r0, r3
- 1074 0988 0400A0E1 mov r0, r4
- 1075 098c FEFFFFEB bl open
- 1076 .loc 1 356 0
- 1077 0990 006050E2 subs r6, r0, #0
- 1078 .LVL64:
- 1079 0994 030000CA bgt .L90
- 1080 .loc 1 357 0
- 1081 0998 0410A0E1 mov r1, r4
- 1082 099c A8059FE5 ldr r0, .L141+4
- 1083 09a0 FEFFFFEB bl printf
- 1084 09a4 1F0000EA b .L136
- 1085 .L90:
- 1086 .loc 1 362 0
- 1087 09a8 464F8DE2 add r4, sp, #280
- 1088 09ac 9C159FE5 ldr r1, .L141+8
- 1089 09b0 0420A0E1 mov r2, r4
- 1090 09b4 FEFFFFEB bl ioctl
- 1091 .loc 1 363 0
- 1092 09b8 000050E3 cmp r0, #0
- 1093 09bc 590100BA blt .L135
- 1094 .L91:
- 1095 .loc 1 368 0
- 1096 09c0 18319DE5 ldr r3, [sp, #280]
- 1097 09c4 100013E3 tst r3, #16
- 1098 09c8 0900000A beq .L93
- 1099 .loc 1 370 0
- 1100 09cc 1C319DE5 ldr r3, [sp, #284]
- 1101 .loc 1 373 0
- 1102 09d0 0420A0E1 mov r2, r4
- 1103 09d4 0600A0E1 mov r0, r6
- 1104 09d8 74159FE5 ldr r1, .L141+12
- 1105 .loc 1 370 0
- 1106 09dc 083083E3 orr r3, r3, #8
- 1107 09e0 4430C3E3 bic r3, r3, #68
- 1108 09e4 1C318DE5 str r3, [sp, #284]
- 1109 .loc 1 373 0
- 1110 09e8 FEFFFFEB bl ioctl
- 1111 .loc 1 374 0
- 1112 09ec 000050E3 cmp r0, #0
- 1113 09f0 4C0100BA blt .L135
- 1114 .L93:
- 1115 .loc 1 384 0
- 1116 09f4 175E8DE2 add r5, sp, #368
- 1117 09f8 02A0A0E3 mov sl, #2
- 1118 .loc 1 385 0
- 1119 09fc 0600A0E1 mov r0, r6
- 1120 0a00 50159FE5 ldr r1, .L141+16
- 1121 .loc 1 384 0
- 1122 0a04 68A125E5 str sl, [r5, #-360]!
- 1123 .loc 1 385 0
- 1124 0a08 0520A0E1 mov r2, r5
- 1125 0a0c FEFFFFEB bl ioctl
- 1126 .loc 1 386 0
- 1127 0a10 000050E3 cmp r0, #0
- 1128 0a14 050000AA bge .L94
- 1129 .loc 1 387 0
- 1130 0a18 3C059FE5 ldr r0, .L141+20
- 1131 .L140:
- 1132 0a1c FEFFFFEB bl perror
- 1133 .LVL65:
- 1134 .L138:
- 1135 .loc 1 388 0
- 1136 0a20 0600A0E1 mov r0, r6
- 1137 0a24 FEFFFFEB bl close
- 1138 .LVL66:
- 1139 .L136:
- 1140 .loc 1 389 0
- 1141 0a28 0000A0E3 mov r0, #0
- 1142 .LVL67:
- 1143 .L137:
- 1144 0a2c FEFFFFEB bl exit
- 1145 .LVL68:
- 1146 .L94:
- 1147 .loc 1 395 0
- 1148 0a30 28359FE5 ldr r3, .L141+24
- 1149 .loc 1 396 0
- 1150 0a34 0600A0E1 mov r0, r6
- 1151 0a38 24159FE5 ldr r1, .L141+28
- 1152 0a3c 0520A0E1 mov r2, r5
- 1153 .loc 1 392 0
- 1154 0a40 198EA0E3 mov r8, #400
- 1155 .loc 1 393 0
- 1156 0a44 117EA0E3 mov r7, #272
- 1157 .loc 1 392 0
- 1158 0a48 0C808DE5 str r8, [sp, #12]
- 1159 .loc 1 395 0
- 1160 0a4c 14308DE5 str r3, [sp, #20]
- 1161 .loc 1 393 0
- 1162 0a50 10708DE5 str r7, [sp, #16]
- 1163 .loc 1 396 0
- 1164 0a54 FEFFFFEB bl ioctl
- 1165 .loc 1 397 0
- 1166 0a58 000050E3 cmp r0, #0
- 1167 .loc 1 398 0
- 1168 0a5c 04059FB5 ldrlt r0, .L141+32
- 1169 .loc 1 397 0
- 1170 0a60 EDFFFFBA blt .L140
- 1171 .loc 1 404 0
- 1172 0a64 174E8DE2 add r4, sp, #368
- 1173 .loc 1 405 0
- 1174 0a68 0600A0E1 mov r0, r6
- 1175 0a6c F8149FE5 ldr r1, .L141+36
- 1176 .loc 1 404 0
- 1177 0a70 2CA024E5 str sl, [r4, #-44]!
- 1178 .loc 1 405 0
- 1179 0a74 0420A0E1 mov r2, r4
- 1180 0a78 FEFFFFEB bl ioctl
- 1181 .loc 1 406 0
- 1182 0a7c 000050E3 cmp r0, #0
- 1183 .loc 1 407 0
- 1184 0a80 E8049FB5 ldrlt r0, .L141+40
- 1185 .loc 1 406 0
- 1186 0a84 E4FFFFBA blt .L140
- 1187 .loc 1 416 0
- 1188 0a88 0420A0E1 mov r2, r4
- 1189 0a8c 0600A0E1 mov r0, r6
- 1190 0a90 DC149FE5 ldr r1, .L141+44
- 1191 .loc 1 412 0
- 1192 0a94 0040A0E3 mov r4, #0
- 1193 .loc 1 414 0
- 1194 0a98 50818DE5 str r8, [sp, #336]
- 1195 .loc 1 412 0
- 1196 0a9c 48418DE5 str r4, [sp, #328]
- 1197 .loc 1 413 0
- 1198 0aa0 4C418DE5 str r4, [sp, #332]
- 1199 .loc 1 415 0
- 1200 0aa4 54718DE5 str r7, [sp, #340]
- 1201 .loc 1 416 0
- 1202 0aa8 FEFFFFEB bl ioctl
- 1203 .loc 1 417 0
- 1204 0aac 040050E1 cmp r0, r4
- 1205 .loc 1 418 0
- 1206 0ab0 C0049FB5 ldrlt r0, .L141+48
- 1207 .loc 1 417 0
- 1208 0ab4 260000BA blt .L139
- 1209 .loc 1 427 0
- 1210 0ab8 0600A0E1 mov r0, r6
- 1211 0abc 94149FE5 ldr r1, .L141+16
- 1212 0ac0 0520A0E1 mov r2, r5
- 1213 .loc 1 426 0
- 1214 0ac4 0330A0E3 mov r3, #3
- 1215 0ac8 08308DE5 str r3, [sp, #8]
- 1216 .loc 1 427 0
- 1217 0acc FEFFFFEB bl ioctl
- 1218 .loc 1 428 0
- 1219 0ad0 000050E3 cmp r0, #0
- 1220 .loc 1 429 0
- 1221 0ad4 A0049FB5 ldrlt r0, .L141+52
- 1222 .loc 1 428 0
- 1223 0ad8 1D0000BA blt .L139
- 1224 .loc 1 438 0
- 1225 0adc 0600A0E1 mov r0, r6
- 1226 0ae0 7C149FE5 ldr r1, .L141+28
- 1227 0ae4 0520A0E1 mov r2, r5
- 1228 .loc 1 436 0
- 1229 0ae8 14808DE5 str r8, [sp, #20]
- 1230 .loc 1 437 0
- 1231 0aec 18708DE5 str r7, [sp, #24]
- 1232 .loc 1 434 0
- 1233 0af0 0C408DE5 str r4, [sp, #12]
- 1234 .loc 1 435 0
- 1235 0af4 10408DE5 str r4, [sp, #16]
- 1236 .loc 1 438 0
- 1237 0af8 FEFFFFEB bl ioctl
- 1238 .loc 1 439 0
- 1239 0afc 000050E3 cmp r0, #0
- 1240 .loc 1 440 0
- 1241 0b00 78049FB5 ldrlt r0, .L141+56
- 1242 .loc 1 439 0
- 1243 0b04 120000BA blt .L139
- 1244 .loc 1 446 0
- 1245 0b08 0520A0E1 mov r2, r5
- 1246 0b0c 0600A0E1 mov r0, r6
- 1247 0b10 40149FE5 ldr r1, .L141+16
- 1248 .loc 1 445 0
- 1249 0b14 08A08DE5 str sl, [sp, #8]
- 1250 .loc 1 446 0
- 1251 0b18 FEFFFFEB bl ioctl
- 1252 .loc 1 447 0
- 1253 0b1c 000050E3 cmp r0, #0
- 1254 .loc 1 448 0
- 1255 0b20 34049FB5 ldrlt r0, .L141+20
- 1256 .loc 1 447 0
- 1257 0b24 0A0000BA blt .L139
- 1258 .loc 1 461 0
- 1259 0b28 0600A0E1 mov r0, r6
- 1260 0b2c 50149FE5 ldr r1, .L141+60
- 1261 0b30 562F8DE2 add r2, sp, #344
- 1262 .loc 1 459 0
- 1263 0b34 0130A0E3 mov r3, #1
- 1264 .loc 1 458 0
- 1265 0b38 5CA18DE5 str sl, [sp, #348]
- 1266 .loc 1 457 0
- 1267 0b3c 58A18DE5 str sl, [sp, #344]
- 1268 .loc 1 459 0
- 1269 0b40 60318DE5 str r3, [sp, #352]
- 1270 .loc 1 461 0
- 1271 0b44 FEFFFFEB bl ioctl
- 1272 .loc 1 462 0
- 1273 0b48 000050E3 cmp r0, #0
- 1274 0b4c 050000AA bge .L101
- 1275 .loc 1 463 0
- 1276 0b50 30049FE5 ldr r0, .L141+64
- 1277 .L139:
- 1278 0b54 FEFFFFEB bl perror
- 1279 .loc 1 464 0
- 1280 0b58 0600A0E1 mov r0, r6
- 1281 0b5c FEFFFFEB bl close
- 1282 .loc 1 465 0
- 1283 0b60 0400A0E1 mov r0, r4
- 1284 0b64 B0FFFFEA b .L137
- 1285 .L101:
- 1286 .loc 1 468 0
- 1287 0b68 58019DE5 ldr r0, [sp, #344]
- 1288 0b6c 8001A0E1 mov r0, r0, asl #3
- 1289 0b70 FEFFFFEB bl malloc
- 1290 .loc 1 471 0
- 1291 0b74 008050E2 subs r8, r0, #0
- 1292 0b78 0470A011 movne r7, r4
- 1293 .LVL69:
- 1294 0b7c 0750A011 movne r5, r7
- 1295 0b80 4100001A bne .L103
- 1296 .loc 1 472 0
- 1297 0b84 00049FE5 ldr r0, .L141+68
- 1298 0b88 FEFFFFEB bl puts
- 1299 .loc 1 473 0
- 1300 0b8c 0600A0E1 mov r0, r6
- 1301 0b90 FEFFFFEB bl close
- 1302 .loc 1 474 0
- 1303 0b94 0800A0E1 mov r0, r8
- 1304 0b98 A3FFFFEA b .L137
- 1305 .L110:
- 1306 .loc 1 483 0
- 1307 0b9c 0020A0E1 mov r2, r0
- 1308 0ba0 E8139FE5 ldr r1, .L141+72
- 1309 0ba4 0600A0E1 mov r0, r6
- 1310 .loc 1 481 0
- 1311 0ba8 0230A0E3 mov r3, #2
- 1312 .loc 1 482 0
- 1313 0bac D4708DE5 str r7, [sp, #212]
- 1314 .loc 1 481 0
- 1315 0bb0 D8308DE5 str r3, [sp, #216]
- 1316 .loc 1 483 0
- 1317 0bb4 FEFFFFEB bl ioctl
- 1318 .loc 1 484 0
- 1319 0bb8 000050E3 cmp r0, #0
- 1320 0bbc 0D0000AA bge .L104
- 1321 .loc 1 485 0
- 1322 0bc0 CC039FE5 ldr r0, .L141+76
- 1323 0bc4 0050A0E3 mov r5, #0
- 1324 .LVL70:
- 1325 0bc8 FEFFFFEB bl perror
- 1326 0bcc 0540A0E1 mov r4, r5
- 1327 0bd0 050000EA b .L105
- 1328 .L106:
- 1329 .loc 1 487 0
- 1330 0bd4 043088E0 add r3, r8, r4
- 1331 0bd8 041098E7 ldr r1, [r8, r4]
- 1332 .loc 1 486 0
- 1333 0bdc 015085E2 add r5, r5, #1
- 1334 0be0 084084E2 add r4, r4, #8
- 1335 .loc 1 487 0
- 1336 0be4 040093E5 ldr r0, [r3, #4]
- 1337 0be8 FEFFFFEB bl munmap
- 1338 .L105:
- 1339 .loc 1 486 0
- 1340 0bec 070055E1 cmp r5, r7
- 1341 0bf0 F7FFFFBA blt .L106
- 1342 0bf4 89FFFFEA b .L138
- 1343 .LVL71:
- 1344 .L104:
- 1345 .loc 1 492 0
- 1346 0bf8 0C119DE5 ldr r1, [sp, #268]
- 1347 0bfc 0840A0E1 mov r4, r8
- 1348 .loc 1 493 0
- 1349 0c00 0000A0E3 mov r0, #0
- 1350 0c04 0320A0E3 mov r2, #3
- 1351 0c08 0130A0E3 mov r3, #1
- 1352 .loc 1 492 0
- 1353 0c0c 0510A4E7 str r1, [r4, r5]!
- 1354 .loc 1 493 0
- 1355 0c10 08C19DE5 ldr ip, [sp, #264]
- 1356 0c14 40108DE8 stmia sp, {r6, ip} @ phole stm
- 1357 0c18 FEFFFFEB bl mmap
- 1358 .loc 1 497 0
- 1359 0c1c 010050E3 cmp r0, #1
- 1360 .loc 1 493 0
- 1361 0c20 040084E5 str r0, [r4, #4]
- 1362 .loc 1 497 0
- 1363 0c24 0E00001A bne .L107
- 1364 .loc 1 499 0
- 1365 0c28 68039FE5 ldr r0, .L141+80
- 1366 0c2c 0710A0E1 mov r1, r7
- 1367 0c30 0050A0E3 mov r5, #0
- 1368 .LVL72:
- 1369 0c34 FEFFFFEB bl printf
- 1370 0c38 0540A0E1 mov r4, r5
- 1371 0c3c 050000EA b .L108
- 1372 .L109:
- 1373 .loc 1 501 0
- 1374 0c40 043088E0 add r3, r8, r4
- 1375 0c44 041098E7 ldr r1, [r8, r4]
- 1376 .loc 1 500 0
- 1377 0c48 015085E2 add r5, r5, #1
- 1378 0c4c 084084E2 add r4, r4, #8
- 1379 .loc 1 501 0
- 1380 0c50 040093E5 ldr r0, [r3, #4]
- 1381 0c54 FEFFFFEB bl munmap
- 1382 .L108:
- 1383 .loc 1 500 0
- 1384 0c58 070055E1 cmp r5, r7
- 1385 0c5c F7FFFFBA blt .L109
- 1386 0c60 6EFFFFEA b .L138
- 1387 .LVL73:
- 1388 .L107:
- 1389 .loc 1 506 0
- 1390 0c64 052098E7 ldr r2, [r8, r5]
- 1391 0c68 8010A0E3 mov r1, #128
- 1392 0c6c FEFFFFEB bl memset
- 1393 .loc 1 508 0
- 1394 0c70 040094E5 ldr r0, [r4, #4]
- 1395 0c74 0C109DE5 ldr r1, [sp, #12]
- 1396 0c78 0030A0E3 mov r3, #0
- 1397 0c7c 10209DE5 ldr r2, [sp, #16]
- 1398 .loc 1 480 0
- 1399 0c80 017087E2 add r7, r7, #1
- 1400 .loc 1 508 0
- 1401 0c84 DDFCFFEB bl fill
- 1402 .loc 1 480 0
- 1403 0c88 085085E2 add r5, r5, #8
- 1404 .L103:
- 1405 0c8c 58319DE5 ldr r3, [sp, #344]
- 1406 0c90 D4008DE2 add r0, sp, #212
- 1407 0c94 030057E1 cmp r7, r3
- 1408 0c98 BFFFFF3A bcc .L110
- 1409 .loc 1 512 0
- 1410 0c9c 0010A0E3 mov r1, #0
- 1411 0ca0 4420A0E3 mov r2, #68
- 1412 0ca4 0140A0E1 mov r4, r1
- 1413 .LVL74:
- 1414 0ca8 FEFFFFEB bl memset
- 1415 0cac 1A0000EA b .L111
- 1416 .L115:
- 1417 .loc 1 519 0
- 1418 0cb0 0600A0E1 mov r0, r6
- 1419 0cb4 E0129FE5 ldr r1, .L141+84
- 1420 0cb8 D4208DE2 add r2, sp, #212
- 1421 .loc 1 516 0
- 1422 0cbc 0230A0E3 mov r3, #2
- 1423 .loc 1 517 0
- 1424 0cc0 D4408DE5 str r4, [sp, #212]
- 1425 .loc 1 516 0
- 1426 0cc4 D8308DE5 str r3, [sp, #216]
- 1427 .loc 1 518 0
- 1428 0cc8 0130A0E3 mov r3, #1
- 1429 0ccc 04318DE5 str r3, [sp, #260]
- 1430 .loc 1 519 0
- 1431 0cd0 FEFFFFEB bl ioctl
- 1432 .loc 1 520 0
- 1433 0cd4 000050E3 cmp r0, #0
- 1434 0cd8 0E0000AA bge .L112
- 1435 .loc 1 521 0
- 1436 0cdc BC029FE5 ldr r0, .L141+88
- 1437 0ce0 0050A0E3 mov r5, #0
- 1438 .LVL75:
- 1439 0ce4 FEFFFFEB bl perror
- 1440 0ce8 0540A0E1 mov r4, r5
- 1441 .LVL76:
- 1442 0cec 050000EA b .L113
- 1443 .L114:
- 1444 .loc 1 523 0
- 1445 0cf0 043088E0 add r3, r8, r4
- 1446 0cf4 041098E7 ldr r1, [r8, r4]
- 1447 .loc 1 522 0
- 1448 0cf8 015085E2 add r5, r5, #1
- 1449 0cfc 084084E2 add r4, r4, #8
- 1450 .loc 1 523 0
- 1451 0d00 040093E5 ldr r0, [r3, #4]
- 1452 0d04 FEFFFFEB bl munmap
- 1453 .L113:
- 1454 .loc 1 522 0
- 1455 0d08 58319DE5 ldr r3, [sp, #344]
- 1456 0d0c 030055E1 cmp r5, r3
- 1457 0d10 F6FFFF3A bcc .L114
- 1458 0d14 43FFFFEA b .L136
- 1459 .LVL77:
- 1460 .L112:
- 1461 .loc 1 515 0
- 1462 0d18 014084E2 add r4, r4, #1
- 1463 .L111:
- 1464 0d1c 58319DE5 ldr r3, [sp, #344]
- 1465 0d20 030054E1 cmp r4, r3
- 1466 0d24 E1FFFF3A bcc .L115
- 1467 .loc 1 529 0
- 1468 0d28 172E8DE2 add r2, sp, #368
- 1469 0d2c 0040A0E3 mov r4, #0
- 1470 .LVL78:
- 1471 .loc 1 530 0
- 1472 0d30 0600A0E1 mov r0, r6
- 1473 0d34 68129FE5 ldr r1, .L141+92
- 1474 .loc 1 529 0
- 1475 0d38 044022E5 str r4, [r2, #-4]!
- 1476 .LVL79:
- 1477 .loc 1 530 0
- 1478 0d3c FEFFFFEB bl ioctl
- 1479 .loc 1 531 0
- 1480 0d40 040050E1 cmp r0, r4
- 1481 0d44 0D0000AA bge .L125
- 1482 .loc 1 532 0
- 1483 0d48 58029FE5 ldr r0, .L141+96
- 1484 0d4c 0450A0E1 mov r5, r4
- 1485 .LVL80:
- 1486 0d50 FEFFFFEB bl perror
- 1487 0d54 050000EA b .L117
- 1488 .L118:
- 1489 .loc 1 534 0
- 1490 0d58 043088E0 add r3, r8, r4
- 1491 0d5c 041098E7 ldr r1, [r8, r4]
- 1492 .loc 1 533 0
- 1493 0d60 015085E2 add r5, r5, #1
- 1494 0d64 084084E2 add r4, r4, #8
- 1495 .loc 1 534 0
- 1496 0d68 040093E5 ldr r0, [r3, #4]
- 1497 0d6c FEFFFFEB bl munmap
- 1498 .L117:
- 1499 .loc 1 533 0
- 1500 0d70 58319DE5 ldr r3, [sp, #344]
- 1501 0d74 030055E1 cmp r5, r3
- 1502 0d78 F6FFFF3A bcc .L118
- 1503 0d7c 29FFFFEA b .L136
- 1504 .LVL81:
- 1505 .L125:
- 1506 .loc 1 540 0
- 1507 0d80 D4508DE2 add r5, sp, #212
- 1508 0d84 0600A0E1 mov r0, r6
- 1509 0d88 1C129FE5 ldr r1, .L141+100
- 1510 0d8c 0520A0E1 mov r2, r5
- 1511 0d90 FEFFFFEB bl ioctl
- 1512 .loc 1 541 0
- 1513 0d94 000050E3 cmp r0, #0
- 1514 0d98 0E0000AA bge .L119
- 1515 .loc 1 542 0
- 1516 0d9c 0C029FE5 ldr r0, .L141+104
- 1517 0da0 0050A0E3 mov r5, #0
- 1518 .LVL82:
- 1519 0da4 FEFFFFEB bl perror
- 1520 0da8 0540A0E1 mov r4, r5
- 1521 .LVL83:
- 1522 0dac 050000EA b .L120
- 1523 .L121:
- 1524 .loc 1 544 0
- 1525 0db0 043088E0 add r3, r8, r4
- 1526 0db4 041098E7 ldr r1, [r8, r4]
- 1527 .loc 1 543 0
- 1528 0db8 015085E2 add r5, r5, #1
- 1529 0dbc 084084E2 add r4, r4, #8
- 1530 .loc 1 544 0
- 1531 0dc0 040093E5 ldr r0, [r3, #4]
- 1532 0dc4 FEFFFFEB bl munmap
- 1533 .L120:
- 1534 .loc 1 543 0
- 1535 0dc8 58319DE5 ldr r3, [sp, #344]
- 1536 0dcc 030055E1 cmp r5, r3
- 1537 0dd0 F6FFFF3A bcc .L121
- 1538 0dd4 11FFFFEA b .L138
- 1539 .LVL84:
- 1540 .L119:
- 1541 .loc 1 552 0
- 1542 0dd8 D4009DE5 ldr r0, [sp, #212]
- 1543 0ddc 0030A0E3 mov r3, #0
- 1544 0de0 0C109DE5 ldr r1, [sp, #12]
- 1545 0de4 10209DE5 ldr r2, [sp, #16]
- 1546 0de8 800188E0 add r0, r8, r0, asl #3
- 1547 0dec 040090E5 ldr r0, [r0, #4]
- 1548 0df0 82FCFFEB bl fill
- 1549 .loc 1 554 0
- 1550 0df4 0600A0E1 mov r0, r6
- 1551 0df8 0520A0E1 mov r2, r5
- 1552 0dfc 98119FE5 ldr r1, .L141+84
- 1553 0e00 FEFFFFEB bl ioctl
- 1554 .loc 1 555 0
- 1555 0e04 000050E3 cmp r0, #0
- 1556 0e08 0E0000AA bge .L122
- 1557 .loc 1 556 0
- 1558 0e0c 8C019FE5 ldr r0, .L141+88
- 1559 0e10 0050A0E3 mov r5, #0
- 1560 .LVL85:
- 1561 0e14 FEFFFFEB bl perror
- 1562 0e18 0540A0E1 mov r4, r5
- 1563 .LVL86:
- 1564 0e1c 050000EA b .L123
- 1565 .L124:
- 1566 .loc 1 558 0
- 1567 0e20 043088E0 add r3, r8, r4
- 1568 0e24 041098E7 ldr r1, [r8, r4]
- 1569 .loc 1 557 0
- 1570 0e28 015085E2 add r5, r5, #1
- 1571 0e2c 084084E2 add r4, r4, #8
- 1572 .loc 1 558 0
- 1573 0e30 040093E5 ldr r0, [r3, #4]
- 1574 0e34 FEFFFFEB bl munmap
- 1575 .L123:
- 1576 .loc 1 557 0
- 1577 0e38 58319DE5 ldr r3, [sp, #344]
- 1578 0e3c 030055E1 cmp r5, r3
- 1579 0e40 F6FFFF3A bcc .L124
- 1580 0e44 F5FEFFEA b .L138
- 1581 .LVL87:
- 1582 .L122:
- 1583 .loc 1 539 0
- 1584 0e48 014084E2 add r4, r4, #1
- 1585 .loc 1 562 0
- 1586 0e4c 0100A0E3 mov r0, #1
- 1587 0e50 FEFFFFEB bl sleep
- 1588 .loc 1 539 0
- 1589 0e54 1E0054E3 cmp r4, #30
- 1590 0e58 C8FFFF1A bne .L125
- 1591 .loc 1 566 0
- 1592 0e5c 0600A0E1 mov r0, r6
- 1593 0e60 4C119FE5 ldr r1, .L141+108
- 1594 0e64 5B2F8DE2 add r2, sp, #364
- 1595 0e68 FEFFFFEB bl ioctl
- 1596 .loc 1 567 0
- 1597 0e6c 000050E3 cmp r0, #0
- 1598 0e70 0050A0A3 movge r5, #0
- 1599 .LVL88:
- 1600 0e74 0540A0A1 movge r4, r5
- 1601 0e78 140000AA bge .L127
- 1602 .loc 1 568 0
- 1603 0e7c 34019FE5 ldr r0, .L141+112
- 1604 0e80 0050A0E3 mov r5, #0
- 1605 .LVL89:
- 1606 0e84 FEFFFFEB bl perror
- 1607 0e88 0540A0E1 mov r4, r5
- 1608 0e8c 050000EA b .L128
- 1609 .L129:
- 1610 .loc 1 570 0
- 1611 0e90 043088E0 add r3, r8, r4
- 1612 0e94 041098E7 ldr r1, [r8, r4]
- 1613 .loc 1 569 0
- 1614 0e98 015085E2 add r5, r5, #1
- 1615 0e9c 084084E2 add r4, r4, #8
- 1616 .loc 1 570 0
- 1617 0ea0 040093E5 ldr r0, [r3, #4]
- 1618 0ea4 FEFFFFEB bl munmap
- 1619 .L128:
- 1620 .loc 1 569 0
- 1621 0ea8 58319DE5 ldr r3, [sp, #344]
- 1622 0eac 030055E1 cmp r5, r3
- 1623 0eb0 F6FFFF3A bcc .L129
- 1624 0eb4 D9FEFFEA b .L138
- 1625 .L130:
- 1626 .loc 1 576 0
- 1627 0eb8 043088E0 add r3, r8, r4
- 1628 0ebc 041098E7 ldr r1, [r8, r4]
- 1629 .loc 1 575 0
- 1630 0ec0 015085E2 add r5, r5, #1
- 1631 0ec4 084084E2 add r4, r4, #8
- 1632 .loc 1 576 0
- 1633 0ec8 040093E5 ldr r0, [r3, #4]
- 1634 0ecc FEFFFFEB bl munmap
- 1635 .L127:
- 1636 .loc 1 575 0
- 1637 0ed0 58319DE5 ldr r3, [sp, #344]
- 1638 0ed4 030055E1 cmp r5, r3
- 1639 0ed8 F6FFFF3A bcc .L130
- 1640 .loc 1 579 0
- 1641 0edc 464F8DE2 add r4, sp, #280
- 1642 0ee0 0600A0E1 mov r0, r6
- 1643 0ee4 64109FE5 ldr r1, .L141+8
- 1644 0ee8 0420A0E1 mov r2, r4
- 1645 0eec FEFFFFEB bl ioctl
- 1646 .loc 1 580 0
- 1647 0ef0 000050E3 cmp r0, #0
- 1648 0ef4 0B0000BA blt .L135
- 1649 .L131:
- 1650 .loc 1 587 0
- 1651 0ef8 18319DE5 ldr r3, [sp, #280]
- 1652 0efc 100013E3 tst r3, #16
- 1653 0f00 0B00000A beq .L132
- 1654 .loc 1 588 0
- 1655 0f04 1C319DE5 ldr r3, [sp, #284]
- 1656 .loc 1 590 0
- 1657 0f08 0420A0E1 mov r2, r4
- 1658 0f0c 0600A0E1 mov r0, r6
- 1659 0f10 3C109FE5 ldr r1, .L141+12
- 1660 .loc 1 588 0
- 1661 0f14 0830C3E3 bic r3, r3, #8
- 1662 0f18 1C318DE5 str r3, [sp, #284]
- 1663 .loc 1 590 0
- 1664 0f1c FEFFFFEB bl ioctl
- 1665 .loc 1 591 0
- 1666 0f20 000050E3 cmp r0, #0
- 1667 0f24 020000AA bge .L132
- 1668 .L135:
- 1669 .loc 1 592 0
- 1670 0f28 8C009FE5 ldr r0, .L141+116
- 1671 0f2c FEFFFFEB bl perror
- 1672 0f30 010000EA b .L92
- 1673 .L132:
- 1674 .loc 1 599 0
- 1675 0f34 0600A0E1 mov r0, r6
- 1676 0f38 FEFFFFEB bl close
- 1677 .L92:
- 1678 .loc 1 601 0
- 1679 0f3c 0000A0E3 mov r0, #0
- 1680 0f40 5DDF8DE2 add sp, sp, #372
- 1681 0f44 F085BDE8 ldmfd sp!, {r4, r5, r6, r7, r8, sl, pc}
- 1682 .L142:
- 1683 .align 2
- 1684 .L141:
- 1685 0f48 04000000 .word .LANCHOR2+4
- 1686 0f4c AB010000 .word .LC11
- 1687 0f50 0A562C80 .word -2144578038
- 1688 0f54 0B562C40 .word 1076647435
- 1689 0f58 0456CCC0 .word -1060350460
- 1690 0f5c C4010000 .word .LC12
- 1691 0f60 52474234 .word 876758866
- 1692 0f64 0556CCC0 .word -1060350459
- 1693 0f68 D2010000 .word .LC13
- 1694 0f6c 3B5614C0 .word -1072409029
- 1695 0f70 E0010000 .word .LC14
- 1696 0f74 3C561440 .word 1075074620
- 1697 0f78 EF010000 .word .LC15
- 1698 0f7c FE010000 .word .LC16
- 1699 0f80 0E020000 .word .LC17
- 1700 0f84 085614C0 .word -1072409080
- 1701 0f88 1E020000 .word .LC18
- 1702 0f8c 36020000 .word .LC19
- 1703 0f90 095644C0 .word -1069263351
- 1704 0f94 5B020000 .word .LC20
- 1705 0f98 6C020000 .word .LC21
- 1706 0f9c 0F5644C0 .word -1069263345
- 1707 0fa0 85020000 .word .LC22
- 1708 0fa4 12560440 .word 1074026002
- 1709 0fa8 92020000 .word .LC23
- 1710 0fac 115644C0 .word -1069263343
- 1711 0fb0 A3020000 .word .LC24
- 1712 0fb4 13560440 .word 1074026003
- 1713 0fb8 B1020000 .word .LC25
- 1714 0fbc C3020000 .word .LC26
- 1715 .LFE4:
- 1716 .fnend
- 1718 .global dev_name
- 1719 .section .rodata.str1.1,"aMS",%progbits,1
- 1720 .LC1:
- 1721 0000 55736167 .ascii "Usage:saV4L2Rotation [-d <device node>][-l <loop co"
- 1721 653A7361
- 1721 56344C32
- 1721 526F7461
- 1721 74696F6E
- 1722 0033 756C743E .ascii "ult>][-h help]\000"
- 1722 5D5B2D68
- 1722 2068656C
- 1722 705D00
- 1723 .LC2:
- 1724 0042 095B2D6C .ascii "\011[-l <loop count>]\011: Loop Count, default to 5"
- 1724 203C6C6F
- 1724 6F702063
- 1724 6F756E74
- 1724 3E5D093A
- 1725 006f 30300A5B .ascii "00\012[-h <help>]\011\011: Help\000"
- 1725 2D68203C
- 1725 68656C70
- 1725 3E5D0909
- 1725 3A204865
- 1726 .LC3:
- 1727 0086 6563686F .ascii "echo gfx e:0 > /sys/devices/platform/omapdss/overla"
- 1727 20676678
- 1727 20653A30
- 1727 203E202F
- 1727 7379732F
- 1728 00b9 79302F65 .ascii "y0/enabled\000"
- 1728 6E61626C
- 1728 656400
- 1729 .LC4:
- 1730 00c4 4661696C .ascii "Failed to dislable graphics pipeline\000"
- 1730 65642074
- 1730 6F206469
- 1730 736C6162
- 1730 6C652067
- 1731 .LC5:
- 1732 00e9 2F757372 .ascii "/usr/share/matrix/images/omap1.rgb\000"
- 1732 2F736861
- 1732 72652F6D
- 1732 61747269
- 1732 782F696D
- 1733 .LC6:
- 1734 010c 7200 .ascii "r\000"
- 1735 .LC7:
- 1736 010e 556E6162 .ascii "Unable to open video1 file\000"
- 1736 6C652074
- 1736 6F206F70
- 1736 656E2076
- 1736 6964656F
- 1737 .LC8:
- 1738 0129 2F757372 .ascii "/usr/share/matrix/images/omap.rgb\000"
- 1738 2F736861
- 1738 72652F6D
- 1738 61747269
- 1738 782F696D
- 1739 .LC9:
- 1740 014b 556E6162 .ascii "Unable to open video2 file\000"
- 1740 6C652074
- 1740 6F206F70
- 1740 656E2076
- 1740 6964656F
- 1741 .LC10:
- 1742 0166 6563686F .ascii "echo gfx e:1 > /sys/devices/platform/omapdss/overla"
- 1742 20676678
- 1742 20653A31
- 1742 203E202F
- 1742 7379732F
- 1743 0199 79302F65 .ascii "y0/enabled\000"
- 1743 6E61626C
- 1743 656400
- 1744 .LC0:
- 1745 01a4 683A643A .ascii "h:d:l:\000"
- 1745 6C3A00
- 1746 .LC11:
- 1747 01ab 43616E6E .ascii "Cannot open = %s device\012\000"
- 1747 6F74206F
- 1747 70656E20
- 1747 3D202573
- 1747 20646576
- 1748 .LC12:
- 1749 01c4 56494449 .ascii "VIDIOC_G_FMT\012\000"
- 1749 4F435F47
- 1749 5F464D54
- 1749 0A00
- 1750 .LC13:
- 1751 01d2 56494449 .ascii "VIDIOC_S_FMT\012\000"
- 1751 4F435F53
- 1751 5F464D54
- 1751 0A00
- 1752 .LC14:
- 1753 01e0 56494449 .ascii "VIDIOC_G_CROP\012\000"
- 1753 4F435F47
- 1753 5F43524F
- 1753 500A00
- 1754 .LC15:
- 1755 01ef 56494449 .ascii "VIDIOC_S_CROP\012\000"
- 1755 4F435F53
- 1755 5F43524F
- 1755 500A00
- 1756 .LC16:
- 1757 01fe 56494449 .ascii "VIDIOC_G_FMT 2\012\000"
- 1757 4F435F47
- 1757 5F464D54
- 1757 20320A00
- 1758 .LC17:
- 1759 020e 56494449 .ascii "VIDIOC_S_FMT 2\012\000"
- 1759 4F435F53
- 1759 5F464D54
- 1759 20320A00
- 1760 .LC18:
- 1761 021e 63616E6E .ascii "cannot allocate memory\012\000"
- 1761 6F742061
- 1761 6C6C6F63
- 1761 61746520
- 1761 6D656D6F
- 1762 .LC19:
- 1763 0236 63616E6E .ascii "cannot allocate memory for buff_info\000"
- 1763 6F742061
- 1763 6C6C6F63
- 1763 61746520
- 1763 6D656D6F
- 1764 .LC20:
- 1765 025b 56494449 .ascii "VIDIOC_QUERYCAP\012\000"
- 1765 4F435F51
- 1765 55455259
- 1765 4341500A
- 1765 00
- 1766 .LC21:
- 1767 026c 43616E6E .ascii "Cannot mmap = %d buffer\012\000"
- 1767 6F74206D
- 1767 6D617020
- 1767 3D202564
- 1767 20627566
- 1768 .LC22:
- 1769 0285 56494449 .ascii "VIDIOC_QBUF\012\000"
- 1769 4F435F51
- 1769 4255460A
- 1769 00
- 1770 .LC23:
- 1771 0292 56494449 .ascii "VIDIOC_STREAMON\012\000"
- 1771 4F435F53
- 1771 54524541
- 1771 4D4F4E0A
- 1771 00
- 1772 .LC24:
- 1773 02a3 56494449 .ascii "VIDIOC_DQBUF\012\000"
- 1773 4F435F44
- 1773 51425546
- 1773 0A00
- 1774 .LC25:
- 1775 02b1 56494449 .ascii "VIDIOC_STREAMOFF\012\000"
- 1775 4F435F53
- 1775 54524541
- 1775 4D4F4646
- 1775 0A00
- 1776 .LC26:
- 1777 02c3 56494449 .ascii "VIDIOC_S_FBUF\000"
- 1777 4F435F53
- 1777 5F464255
- 1777 4600
- 1778 .data
- 1779 .align 2
- 1780 .LANCHOR2 = . + 0
- 1783 loop_count:
- 1784 0000 1E000000 .word 30
- 1787 dev_name:
- 1788 0004 2F646576 .ascii "/dev/video7\000"
- 1788 2F766964
- 1788 656F3700
- 1789 0010 00000000 .space 8
- 1789 00000000
- 1790 0018 2F646576 .ascii "/dev/video8\000"
- 1790 2F766964
- 1790 656F3800
- 1791 0024 00000000 .space 8
- 1791 00000000
- 1792 .bss
- 1793 .align 2
- 1794 .LANCHOR0 = . + 0
- 1795 .LANCHOR1 = . + 433752
- 1798 count.4501:
- 1799 0000 00000000 .space 4
- 1802 direction.4502:
- 1803 0004 00000000 .space 4
- 1806 video2:
- 1807 0008 00000000 .space 435200
- 1807 00000000
- 1807 00000000
- 1807 00000000
- 1807 00000000
- 1810 video1:
- 1811 6a408 00000000 .space 435200
- 1811 00000000
- 1811 00000000
- 1811 00000000
- 1811 00000000
- 1948 .Letext0:
+ 436 03ac 0E010000 .word .LC8
+ 437 03b0 08000000 .word .LANCHOR0+8
+ 438 03b4 00000000 .word video1_threadfun
+ 439 03b8 00000000 .word video2_threadfun
+ 440 03bc 29010000 .word .LC9
+ 441 .LFE6:
+ 442 .fnend
+ 444 .align 2
+ 446 video2_threadfun:
+ 447 .fnstart
+ 448 .LFB3:
+ 449 .loc 1 126 0
+ 450 @ args = 0, pretend = 0, frame = 320
+ 451 @ frame_needed = 0, uses_anonymous_args = 0
+ 452 .LVL35:
+ 453 .loc 1 136 0
+ 454 03c0 000090E5 ldr r0, [r0, #0]
+ 455 .LVL36:
+ 456 03c4 1420A0E3 mov r2, #20
+ 457 03c8 28359FE5 ldr r3, .L87
+ 458 03cc 0210A0E3 mov r1, #2
+ 459 .loc 1 126 0
+ 460 03d0 F0452DE9 stmfd sp!, {r4, r5, r6, r7, r8, sl, lr}
+ 461 .save {r4, r5, r6, r7, r8, sl, lr}
+ 462 .LCFI3:
+ 463 .pad #332
+ 464 03d4 53DF4DE2 sub sp, sp, #332
+ 465 .LCFI4:
+ 466 .loc 1 136 0
+ 467 03d8 923024E0 mla r4, r2, r0, r3
+ 468 03dc 0400A0E1 mov r0, r4
+ 469 03e0 FEFFFFEB bl open
+ 470 .loc 1 137 0
+ 471 03e4 006050E2 subs r6, r0, #0
+ 472 .LVL37:
+ 473 03e8 030000CA bgt .L42
+ 474 .loc 1 138 0
+ 475 03ec 0410A0E1 mov r1, r4
+ 476 03f0 04059FE5 ldr r0, .L87+4
+ 477 03f4 FEFFFFEB bl printf
+ 478 03f8 0B0000EA b .L82
+ 479 .L42:
+ 480 .loc 1 144 0
+ 481 03fc 525F8DE2 add r5, sp, #328
+ 482 0400 02A0A0E3 mov sl, #2
+ 483 .loc 1 145 0
+ 484 0404 F4149FE5 ldr r1, .L87+8
+ 485 .loc 1 144 0
+ 486 0408 3CA125E5 str sl, [r5, #-316]!
+ 487 .loc 1 145 0
+ 488 040c 0520A0E1 mov r2, r5
+ 489 0410 FEFFFFEB bl ioctl
+ 490 .loc 1 146 0
+ 491 0414 000050E3 cmp r0, #0
+ 492 0418 050000AA bge .L43
+ 493 .loc 1 147 0
+ 494 041c E0049FE5 ldr r0, .L87+12
+ 495 .L86:
+ 496 0420 FEFFFFEB bl perror
+ 497 .LVL38:
+ 498 .L84:
+ 499 .loc 1 148 0
+ 500 0424 0600A0E1 mov r0, r6
+ 501 0428 FEFFFFEB bl close
+ 502 .LVL39:
+ 503 .L82:
+ 504 .loc 1 149 0
+ 505 042c 0000A0E3 mov r0, #0
+ 506 .L83:
+ 507 0430 FEFFFFEB bl exit
+ 508 .LVL40:
+ 509 .L43:
+ 510 .loc 1 154 0
+ 511 0434 CC349FE5 ldr r3, .L87+16
+ 512 .loc 1 155 0
+ 513 0438 0600A0E1 mov r0, r6
+ 514 043c C8149FE5 ldr r1, .L87+20
+ 515 0440 0520A0E1 mov r2, r5
+ 516 .loc 1 152 0
+ 517 0444 198EA0E3 mov r8, #400
+ 518 .loc 1 153 0
+ 519 0448 117EA0E3 mov r7, #272
+ 520 .loc 1 152 0
+ 521 044c 10808DE5 str r8, [sp, #16]
+ 522 .loc 1 154 0
+ 523 0450 18308DE5 str r3, [sp, #24]
+ 524 .loc 1 153 0
+ 525 0454 14708DE5 str r7, [sp, #20]
+ 526 .loc 1 155 0
+ 527 0458 FEFFFFEB bl ioctl
+ 528 .loc 1 156 0
+ 529 045c 000050E3 cmp r0, #0
+ 530 .loc 1 157 0
+ 531 0460 A8049FB5 ldrlt r0, .L87+24
+ 532 .loc 1 156 0
+ 533 0464 EDFFFFBA blt .L86
+ 534 .loc 1 163 0
+ 535 0468 524F8DE2 add r4, sp, #328
+ 536 .loc 1 164 0
+ 537 046c 0600A0E1 mov r0, r6
+ 538 0470 9C149FE5 ldr r1, .L87+28
+ 539 .loc 1 163 0
+ 540 0474 2CA024E5 str sl, [r4, #-44]!
+ 541 .loc 1 164 0
+ 542 0478 0420A0E1 mov r2, r4
+ 543 047c FEFFFFEB bl ioctl
+ 544 .loc 1 165 0
+ 545 0480 000050E3 cmp r0, #0
+ 546 .loc 1 166 0
+ 547 0484 8C049FB5 ldrlt r0, .L87+32
+ 548 .loc 1 165 0
+ 549 0488 E4FFFFBA blt .L86
+ 550 .loc 1 175 0
+ 551 048c 0420A0E1 mov r2, r4
+ 552 0490 0600A0E1 mov r0, r6
+ 553 0494 80149FE5 ldr r1, .L87+36
+ 554 .loc 1 171 0
+ 555 0498 0040A0E3 mov r4, #0
+ 556 .loc 1 173 0
+ 557 049c 28818DE5 str r8, [sp, #296]
+ 558 .loc 1 171 0
+ 559 04a0 20418DE5 str r4, [sp, #288]
+ 560 .loc 1 172 0
+ 561 04a4 24418DE5 str r4, [sp, #292]
+ 562 .loc 1 174 0
+ 563 04a8 2C718DE5 str r7, [sp, #300]
+ 564 .loc 1 175 0
+ 565 04ac FEFFFFEB bl ioctl
+ 566 .loc 1 176 0
+ 567 04b0 040050E1 cmp r0, r4
+ 568 .loc 1 177 0
+ 569 04b4 64049FB5 ldrlt r0, .L87+40
+ 570 .loc 1 176 0
+ 571 04b8 280000BA blt .L85
+ 572 .loc 1 185 0
+ 573 04bc 0600A0E1 mov r0, r6
+ 574 04c0 38149FE5 ldr r1, .L87+8
+ 575 04c4 0520A0E1 mov r2, r5
+ 576 .loc 1 184 0
+ 577 04c8 0330A0E3 mov r3, #3
+ 578 04cc 0C308DE5 str r3, [sp, #12]
+ 579 .loc 1 185 0
+ 580 04d0 FEFFFFEB bl ioctl
+ 581 .loc 1 186 0
+ 582 04d4 000050E3 cmp r0, #0
+ 583 .loc 1 187 0
+ 584 04d8 44049FB5 ldrlt r0, .L87+44
+ 585 .loc 1 186 0
+ 586 04dc 1F0000BA blt .L85
+ 587 .loc 1 197 0
+ 588 04e0 0600A0E1 mov r0, r6
+ 589 04e4 20149FE5 ldr r1, .L87+20
+ 590 04e8 0520A0E1 mov r2, r5
+ 591 .loc 1 196 0
+ 592 04ec 0030E0E3 mvn r3, #0
+ 593 .loc 1 194 0
+ 594 04f0 18808DE5 str r8, [sp, #24]
+ 595 .loc 1 195 0
+ 596 04f4 1C708DE5 str r7, [sp, #28]
+ 597 .loc 1 196 0
+ 598 04f8 3430CDE5 strb r3, [sp, #52]
+ 599 .loc 1 192 0
+ 600 04fc 10408DE5 str r4, [sp, #16]
+ 601 .loc 1 193 0
+ 602 0500 14408DE5 str r4, [sp, #20]
+ 603 .loc 1 197 0
+ 604 0504 FEFFFFEB bl ioctl
+ 605 .loc 1 198 0
+ 606 0508 000050E3 cmp r0, #0
+ 607 .loc 1 199 0
+ 608 050c 14049FB5 ldrlt r0, .L87+48
+ 609 .loc 1 198 0
+ 610 0510 120000BA blt .L85
+ 611 .loc 1 205 0
+ 612 0514 0520A0E1 mov r2, r5
+ 613 0518 0600A0E1 mov r0, r6
+ 614 051c DC139FE5 ldr r1, .L87+8
+ 615 .loc 1 204 0
+ 616 0520 0CA08DE5 str sl, [sp, #12]
+ 617 .loc 1 205 0
+ 618 0524 FEFFFFEB bl ioctl
+ 619 .loc 1 206 0
+ 620 0528 000050E3 cmp r0, #0
+ 621 .loc 1 207 0
+ 622 052c D0039FB5 ldrlt r0, .L87+12
+ 623 .loc 1 206 0
+ 624 0530 0A0000BA blt .L85
+ 625 .loc 1 218 0
+ 626 0534 0600A0E1 mov r0, r6
+ 627 0538 EC139FE5 ldr r1, .L87+52
+ 628 053c 132E8DE2 add r2, sp, #304
+ 629 .loc 1 216 0
+ 630 0540 0130A0E3 mov r3, #1
+ 631 .loc 1 215 0
+ 632 0544 34A18DE5 str sl, [sp, #308]
+ 633 .loc 1 214 0
+ 634 0548 30A18DE5 str sl, [sp, #304]
+ 635 .loc 1 216 0
+ 636 054c 38318DE5 str r3, [sp, #312]
+ 637 .loc 1 218 0
+ 638 0550 FEFFFFEB bl ioctl
+ 639 .loc 1 219 0
+ 640 0554 000050E3 cmp r0, #0
+ 641 0558 050000AA bge .L50
+ 642 .loc 1 220 0
+ 643 055c CC039FE5 ldr r0, .L87+56
+ 644 .L85:
+ 645 0560 FEFFFFEB bl perror
+ 646 .loc 1 221 0
+ 647 0564 0600A0E1 mov r0, r6
+ 648 0568 FEFFFFEB bl close
+ 649 .loc 1 222 0
+ 650 056c 0400A0E1 mov r0, r4
+ 651 0570 AEFFFFEA b .L83
+ 652 .L50:
+ 653 .loc 1 225 0
+ 654 0574 30019DE5 ldr r0, [sp, #304]
+ 655 0578 8001A0E1 mov r0, r0, asl #3
+ 656 057c FEFFFFEB bl malloc
+ 657 .loc 1 228 0
+ 658 0580 008050E2 subs r8, r0, #0
+ 659 0584 0070A013 movne r7, #0
+ 660 .LVL41:
+ 661 0588 0750A011 movne r5, r7
+ 662 058c 3E00001A bne .L52
+ 663 .loc 1 229 0
+ 664 0590 9C039FE5 ldr r0, .L87+60
+ 665 0594 FEFFFFEB bl puts
+ 666 0598 A1FFFFEA b .L84
+ 667 .L59:
+ 668 .loc 1 241 0
+ 669 059c 0020A0E1 mov r2, r0
+ 670 05a0 90139FE5 ldr r1, .L87+64
+ 671 05a4 0600A0E1 mov r0, r6
+ 672 .loc 1 239 0
+ 673 05a8 0230A0E3 mov r3, #2
+ 674 .loc 1 240 0
+ 675 05ac D8708DE5 str r7, [sp, #216]
+ 676 .loc 1 239 0
+ 677 05b0 DC308DE5 str r3, [sp, #220]
+ 678 .loc 1 241 0
+ 679 05b4 FEFFFFEB bl ioctl
+ 680 .loc 1 242 0
+ 681 05b8 000050E3 cmp r0, #0
+ 682 05bc 0D0000AA bge .L53
+ 683 .loc 1 243 0
+ 684 05c0 74039FE5 ldr r0, .L87+68
+ 685 05c4 0050A0E3 mov r5, #0
+ 686 .LVL42:
+ 687 05c8 FEFFFFEB bl perror
+ 688 05cc 0540A0E1 mov r4, r5
+ 689 05d0 050000EA b .L54
+ 690 .L55:
+ 691 .loc 1 245 0
+ 692 05d4 043088E0 add r3, r8, r4
+ 693 05d8 041098E7 ldr r1, [r8, r4]
+ 694 .loc 1 244 0
+ 695 05dc 015085E2 add r5, r5, #1
+ 696 05e0 084084E2 add r4, r4, #8
+ 697 .loc 1 245 0
+ 698 05e4 040093E5 ldr r0, [r3, #4]
+ 699 05e8 FEFFFFEB bl munmap
+ 700 .L54:
+ 701 .loc 1 244 0
+ 702 05ec 070055E1 cmp r5, r7
+ 703 05f0 F7FFFFBA blt .L55
+ 704 05f4 8AFFFFEA b .L84
+ 705 .LVL43:
+ 706 .L53:
+ 707 .loc 1 250 0
+ 708 05f8 10119DE5 ldr r1, [sp, #272]
+ 709 05fc 0840A0E1 mov r4, r8
+ 710 .loc 1 251 0
+ 711 0600 0000A0E3 mov r0, #0
+ 712 0604 0320A0E3 mov r2, #3
+ 713 0608 0130A0E3 mov r3, #1
+ 714 .loc 1 250 0
+ 715 060c 0510A4E7 str r1, [r4, r5]!
+ 716 .loc 1 251 0
+ 717 0610 0CC19DE5 ldr ip, [sp, #268]
+ 718 0614 40108DE8 stmia sp, {r6, ip} @ phole stm
+ 719 0618 FEFFFFEB bl mmap
+ 720 .loc 1 255 0
+ 721 061c 010050E3 cmp r0, #1
+ 722 .loc 1 251 0
+ 723 0620 040084E5 str r0, [r4, #4]
+ 724 .loc 1 255 0
+ 725 0624 0E00001A bne .L56
+ 726 .loc 1 257 0
+ 727 0628 10039FE5 ldr r0, .L87+72
+ 728 062c 0710A0E1 mov r1, r7
+ 729 0630 0050A0E3 mov r5, #0
+ 730 .LVL44:
+ 731 0634 FEFFFFEB bl printf
+ 732 0638 0540A0E1 mov r4, r5
+ 733 063c 050000EA b .L57
+ 734 .L58:
+ 735 .loc 1 259 0
+ 736 0640 043088E0 add r3, r8, r4
+ 737 0644 041098E7 ldr r1, [r8, r4]
+ 738 .loc 1 258 0
+ 739 0648 015085E2 add r5, r5, #1
+ 740 064c 084084E2 add r4, r4, #8
+ 741 .loc 1 259 0
+ 742 0650 040093E5 ldr r0, [r3, #4]
+ 743 0654 FEFFFFEB bl munmap
+ 744 .L57:
+ 745 .loc 1 258 0
+ 746 0658 070055E1 cmp r5, r7
+ 747 065c F7FFFFBA blt .L58
+ 748 0660 6FFFFFEA b .L84
+ 749 .LVL45:
+ 750 .L56:
+ 751 .loc 1 264 0
+ 752 0664 052098E7 ldr r2, [r8, r5]
+ 753 0668 8010A0E3 mov r1, #128
+ 754 066c FEFFFFEB bl memset
+ 755 .loc 1 266 0
+ 756 0670 0130A0E3 mov r3, #1
+ 757 0674 040094E5 ldr r0, [r4, #4]
+ 758 .loc 1 238 0
+ 759 0678 037087E0 add r7, r7, r3
+ 760 .loc 1 266 0
+ 761 067c 10109DE5 ldr r1, [sp, #16]
+ 762 .loc 1 238 0
+ 763 0680 085085E2 add r5, r5, #8
+ 764 .loc 1 266 0
+ 765 0684 14209DE5 ldr r2, [sp, #20]
+ 766 0688 5CFEFFEB bl fill
+ 767 .L52:
+ 768 .loc 1 238 0
+ 769 068c 30319DE5 ldr r3, [sp, #304]
+ 770 0690 D8008DE2 add r0, sp, #216
+ 771 0694 030057E1 cmp r7, r3
+ 772 0698 BFFFFF3A bcc .L59
+ 773 .loc 1 270 0
+ 774 069c 0010A0E3 mov r1, #0
+ 775 06a0 4420A0E3 mov r2, #68
+ 776 06a4 0140A0E1 mov r4, r1
+ 777 .LVL46:
+ 778 06a8 FEFFFFEB bl memset
+ 779 06ac 1A0000EA b .L60
+ 780 .L64:
+ 781 .loc 1 277 0
+ 782 06b0 0600A0E1 mov r0, r6
+ 783 06b4 88129FE5 ldr r1, .L87+76
+ 784 06b8 D8208DE2 add r2, sp, #216
+ 785 .loc 1 274 0
+ 786 06bc 0230A0E3 mov r3, #2
+ 787 .loc 1 275 0
+ 788 06c0 D8408DE5 str r4, [sp, #216]
+ 789 .loc 1 274 0
+ 790 06c4 DC308DE5 str r3, [sp, #220]
+ 791 .loc 1 276 0
+ 792 06c8 0130A0E3 mov r3, #1
+ 793 06cc 08318DE5 str r3, [sp, #264]
+ 794 .loc 1 277 0
+ 795 06d0 FEFFFFEB bl ioctl
+ 796 .loc 1 278 0
+ 797 06d4 000050E3 cmp r0, #0
+ 798 06d8 0E0000AA bge .L61
+ 799 .loc 1 279 0
+ 800 06dc 64029FE5 ldr r0, .L87+80
+ 801 06e0 0050A0E3 mov r5, #0
+ 802 .LVL47:
+ 803 06e4 FEFFFFEB bl perror
+ 804 06e8 0540A0E1 mov r4, r5
+ 805 .LVL48:
+ 806 06ec 050000EA b .L62
+ 807 .L63:
+ 808 .loc 1 281 0
+ 809 06f0 043088E0 add r3, r8, r4
+ 810 06f4 041098E7 ldr r1, [r8, r4]
+ 811 .loc 1 280 0
+ 812 06f8 015085E2 add r5, r5, #1
+ 813 06fc 084084E2 add r4, r4, #8
+ 814 .loc 1 281 0
+ 815 0700 040093E5 ldr r0, [r3, #4]
+ 816 0704 FEFFFFEB bl munmap
+ 817 .L62:
+ 818 .loc 1 280 0
+ 819 0708 30319DE5 ldr r3, [sp, #304]
+ 820 070c 030055E1 cmp r5, r3
+ 821 0710 F6FFFF3A bcc .L63
+ 822 0714 44FFFFEA b .L82
+ 823 .LVL49:
+ 824 .L61:
+ 825 .loc 1 273 0
+ 826 0718 014084E2 add r4, r4, #1
+ 827 .L60:
+ 828 071c 30319DE5 ldr r3, [sp, #304]
+ 829 0720 030054E1 cmp r4, r3
+ 830 0724 E1FFFF3A bcc .L64
+ 831 .loc 1 287 0
+ 832 0728 522F8DE2 add r2, sp, #328
+ 833 072c 0040A0E3 mov r4, #0
+ 834 .LVL50:
+ 835 .loc 1 289 0
+ 836 0730 0600A0E1 mov r0, r6
+ 837 0734 10129FE5 ldr r1, .L87+84
+ 838 .loc 1 287 0
+ 839 0738 044022E5 str r4, [r2, #-4]!
+ 840 .LVL51:
+ 841 .loc 1 289 0
+ 842 073c FEFFFFEB bl ioctl
+ 843 .loc 1 290 0
+ 844 0740 040050E1 cmp r0, r4
+ 845 0744 420000AA bge .L66
+ 846 .loc 1 291 0
+ 847 0748 00029FE5 ldr r0, .L87+88
+ 848 074c 0450A0E1 mov r5, r4
+ 849 .LVL52:
+ 850 0750 FEFFFFEB bl perror
+ 851 0754 050000EA b .L67
+ 852 .L68:
+ 853 .loc 1 293 0
+ 854 0758 043088E0 add r3, r8, r4
+ 855 075c 041098E7 ldr r1, [r8, r4]
+ 856 .loc 1 292 0
+ 857 0760 015085E2 add r5, r5, #1
+ 858 0764 084084E2 add r4, r4, #8
+ 859 .loc 1 293 0
+ 860 0768 040093E5 ldr r0, [r3, #4]
+ 861 076c FEFFFFEB bl munmap
+ 862 .L67:
+ 863 .loc 1 292 0
+ 864 0770 30319DE5 ldr r3, [sp, #304]
+ 865 0774 030055E1 cmp r5, r3
+ 866 0778 F6FFFF3A bcc .L68
+ 867 077c 2AFFFFEA b .L82
+ 868 .LVL53:
+ 869 .L75:
+ 870 .loc 1 300 0
+ 871 0780 D8508DE2 add r5, sp, #216
+ 872 0784 0600A0E1 mov r0, r6
+ 873 0788 C4119FE5 ldr r1, .L87+92
+ 874 078c 0520A0E1 mov r2, r5
+ 875 0790 FEFFFFEB bl ioctl
+ 876 .loc 1 301 0
+ 877 0794 000050E3 cmp r0, #0
+ 878 0798 0E0000AA bge .L69
+ 879 .loc 1 302 0
+ 880 079c B4019FE5 ldr r0, .L87+96
+ 881 07a0 0050A0E3 mov r5, #0
+ 882 .LVL54:
+ 883 07a4 FEFFFFEB bl perror
+ 884 07a8 0540A0E1 mov r4, r5
+ 885 .LVL55:
+ 886 07ac 050000EA b .L70
+ 887 .L71:
+ 888 .loc 1 304 0
+ 889 07b0 043088E0 add r3, r8, r4
+ 890 07b4 041098E7 ldr r1, [r8, r4]
+ 891 .loc 1 303 0
+ 892 07b8 015085E2 add r5, r5, #1
+ 893 07bc 084084E2 add r4, r4, #8
+ 894 .loc 1 304 0
+ 895 07c0 040093E5 ldr r0, [r3, #4]
+ 896 07c4 FEFFFFEB bl munmap
+ 897 .L70:
+ 898 .loc 1 303 0
+ 899 07c8 30319DE5 ldr r3, [sp, #304]
+ 900 07cc 030055E1 cmp r5, r3
+ 901 07d0 F6FFFF3A bcc .L71
+ 902 07d4 12FFFFEA b .L84
+ 903 .LVL56:
+ 904 .L69:
+ 905 .loc 1 311 0
+ 906 07d8 D8009DE5 ldr r0, [sp, #216]
+ 907 07dc 0130A0E3 mov r3, #1
+ 908 07e0 10109DE5 ldr r1, [sp, #16]
+ 909 07e4 14209DE5 ldr r2, [sp, #20]
+ 910 07e8 800188E0 add r0, r8, r0, asl #3
+ 911 07ec 040090E5 ldr r0, [r0, #4]
+ 912 07f0 02FEFFEB bl fill
+ 913 .loc 1 314 0
+ 914 07f4 0600A0E1 mov r0, r6
+ 915 07f8 0520A0E1 mov r2, r5
+ 916 07fc 40119FE5 ldr r1, .L87+76
+ 917 0800 FEFFFFEB bl ioctl
+ 918 .loc 1 315 0
+ 919 0804 000050E3 cmp r0, #0
+ 920 0808 0E0000AA bge .L72
+ 921 .loc 1 316 0
+ 922 080c 34019FE5 ldr r0, .L87+80
+ 923 0810 0050A0E3 mov r5, #0
+ 924 .LVL57:
+ 925 0814 FEFFFFEB bl perror
+ 926 0818 0540A0E1 mov r4, r5
+ 927 .LVL58:
+ 928 081c 050000EA b .L73
+ 929 .L74:
+ 930 .loc 1 318 0
+ 931 0820 043088E0 add r3, r8, r4
+ 932 0824 041098E7 ldr r1, [r8, r4]
+ 933 .loc 1 317 0
+ 934 0828 015085E2 add r5, r5, #1
+ 935 082c 084084E2 add r4, r4, #8
+ 936 .loc 1 318 0
+ 937 0830 040093E5 ldr r0, [r3, #4]
+ 938 0834 FEFFFFEB bl munmap
+ 939 .L73:
+ 940 .loc 1 317 0
+ 941 0838 30319DE5 ldr r3, [sp, #304]
+ 942 083c 030055E1 cmp r5, r3
+ 943 0840 F6FFFF3A bcc .L74
+ 944 0844 F6FEFFEA b .L84
+ 945 .LVL59:
+ 946 .L72:
+ 947 .loc 1 323 0
+ 948 0848 0100A0E3 mov r0, #1
+ 949 .loc 1 298 0
+ 950 084c 004084E0 add r4, r4, r0
+ 951 .loc 1 323 0
+ 952 0850 FEFFFFEB bl sleep
+ 953 .L66:
+ 954 .loc 1 298 0
+ 955 0854 00319FE5 ldr r3, .L87+100
+ 956 0858 003093E5 ldr r3, [r3, #0]
+ 957 085c 030054E1 cmp r4, r3
+ 958 0860 C6FFFF3A bcc .L75
+ 959 .loc 1 329 0
+ 960 0864 0600A0E1 mov r0, r6
+ 961 0868 F0109FE5 ldr r1, .L87+104
+ 962 086c 512F8DE2 add r2, sp, #324
+ 963 0870 FEFFFFEB bl ioctl
+ 964 .loc 1 330 0
+ 965 0874 000050E3 cmp r0, #0
+ 966 0878 0050A0A3 movge r5, #0
+ 967 .LVL60:
+ 968 087c 0540A0A1 movge r4, r5
+ 969 0880 140000AA bge .L77
+ 970 .loc 1 331 0
+ 971 0884 D8009FE5 ldr r0, .L87+108
+ 972 0888 0050A0E3 mov r5, #0
+ 973 .LVL61:
+ 974 088c FEFFFFEB bl perror
+ 975 0890 0540A0E1 mov r4, r5
+ 976 0894 050000EA b .L78
+ 977 .L79:
+ 978 .loc 1 333 0
+ 979 0898 043088E0 add r3, r8, r4
+ 980 089c 041098E7 ldr r1, [r8, r4]
+ 981 .loc 1 332 0
+ 982 08a0 015085E2 add r5, r5, #1
+ 983 08a4 084084E2 add r4, r4, #8
+ 984 .loc 1 333 0
+ 985 08a8 040093E5 ldr r0, [r3, #4]
+ 986 08ac FEFFFFEB bl munmap
+ 987 .L78:
+ 988 .loc 1 332 0
+ 989 08b0 30319DE5 ldr r3, [sp, #304]
+ 990 08b4 030055E1 cmp r5, r3
+ 991 08b8 F6FFFF3A bcc .L79
+ 992 08bc D8FEFFEA b .L84
+ 993 .L80:
+ 994 .loc 1 339 0
+ 995 08c0 043088E0 add r3, r8, r4
+ 996 08c4 041098E7 ldr r1, [r8, r4]
+ 997 .loc 1 338 0
+ 998 08c8 015085E2 add r5, r5, #1
+ 999 08cc 084084E2 add r4, r4, #8
+ 1000 .loc 1 339 0
+ 1001 08d0 040093E5 ldr r0, [r3, #4]
+ 1002 08d4 FEFFFFEB bl munmap
+ 1003 .L77:
+ 1004 .loc 1 338 0
+ 1005 08d8 30319DE5 ldr r3, [sp, #304]
+ 1006 08dc 030055E1 cmp r5, r3
+ 1007 08e0 F6FFFF3A bcc .L80
+ 1008 .loc 1 340 0
+ 1009 08e4 0600A0E1 mov r0, r6
+ 1010 08e8 FEFFFFEB bl close
+ 1011 .loc 1 342 0
+ 1012 08ec 0000A0E3 mov r0, #0
+ 1013 08f0 53DF8DE2 add sp, sp, #332
+ 1014 08f4 F085BDE8 ldmfd sp!, {r4, r5, r6, r7, r8, sl, pc}
+ 1015 .L88:
+ 1016 .align 2
+ 1017 .L87:
+ 1018 08f8 04000000 .word .LANCHOR2+4
+ 1019 08fc 6E010000 .word .LC10
+ 1020 0900 0456CCC0 .word -1060350460
+ 1021 0904 87010000 .word .LC11
+ 1022 0908 52474234 .word 876758866
+ 1023 090c 0556CCC0 .word -1060350459
+ 1024 0910 95010000 .word .LC12
+ 1025 0914 3B5614C0 .word -1072409029
+ 1026 0918 A3010000 .word .LC13
+ 1027 091c 3C561440 .word 1075074620
+ 1028 0920 B2010000 .word .LC14
+ 1029 0924 C1010000 .word .LC15
+ 1030 0928 D1010000 .word .LC16
+ 1031 092c 085614C0 .word -1072409080
+ 1032 0930 E1010000 .word .LC17
+ 1033 0934 F9010000 .word .LC18
+ 1034 0938 095644C0 .word -1069263351
+ 1035 093c 1E020000 .word .LC19
+ 1036 0940 2F020000 .word .LC20
+ 1037 0944 0F5644C0 .word -1069263345
+ 1038 0948 48020000 .word .LC21
+ 1039 094c 12560440 .word 1074026002
+ 1040 0950 55020000 .word .LC22
+ 1041 0954 115644C0 .word -1069263343
+ 1042 0958 66020000 .word .LC23
+ 1043 095c 00000000 .word .LANCHOR2
+ 1044 0960 13560440 .word 1074026003
+ 1045 0964 74020000 .word .LC24
+ 1046 .LFE3:
+ 1047 .fnend
+ 1049 .align 2
+ 1051 video1_threadfun:
+ 1052 .fnstart
+ 1053 .LFB4:
+ 1054 .loc 1 346 0
+ 1055 @ args = 0, pretend = 0, frame = 360
+ 1056 @ frame_needed = 0, uses_anonymous_args = 0
+ 1057 .LVL62:
+ 1058 .loc 1 357 0
+ 1059 0968 000090E5 ldr r0, [r0, #0]
+ 1060 .LVL63:
+ 1061 096c 1420A0E3 mov r2, #20
+ 1062 0970 CC359FE5 ldr r3, .L141
+ 1063 0974 0210A0E3 mov r1, #2
+ 1064 .loc 1 346 0
+ 1065 0978 F0452DE9 stmfd sp!, {r4, r5, r6, r7, r8, sl, lr}
+ 1066 .save {r4, r5, r6, r7, r8, sl, lr}
+ 1067 .LCFI5:
+ 1068 .pad #372
+ 1069 097c 5DDF4DE2 sub sp, sp, #372
+ 1070 .LCFI6:
+ 1071 .loc 1 357 0
+ 1072 0980 923024E0 mla r4, r2, r0, r3
+ 1073 0984 0400A0E1 mov r0, r4
+ 1074 0988 FEFFFFEB bl open
+ 1075 .loc 1 358 0
+ 1076 098c 006050E2 subs r6, r0, #0
+ 1077 .LVL64:
+ 1078 0990 030000CA bgt .L90
+ 1079 .loc 1 359 0
+ 1080 0994 0410A0E1 mov r1, r4
+ 1081 0998 A8059FE5 ldr r0, .L141+4
+ 1082 099c FEFFFFEB bl printf
+ 1083 09a0 1F0000EA b .L136
+ 1084 .L90:
+ 1085 .loc 1 364 0
+ 1086 09a4 464F8DE2 add r4, sp, #280
+ 1087 09a8 9C159FE5 ldr r1, .L141+8
+ 1088 09ac 0420A0E1 mov r2, r4
+ 1089 09b0 FEFFFFEB bl ioctl
+ 1090 .loc 1 365 0
+ 1091 09b4 000050E3 cmp r0, #0
+ 1092 09b8 590100BA blt .L135
+ 1093 .L91:
+ 1094 .loc 1 370 0
+ 1095 09bc 18319DE5 ldr r3, [sp, #280]
+ 1096 09c0 100013E3 tst r3, #16
+ 1097 09c4 0900000A beq .L93
+ 1098 .loc 1 372 0
+ 1099 09c8 1C319DE5 ldr r3, [sp, #284]
+ 1100 .loc 1 375 0
+ 1101 09cc 0420A0E1 mov r2, r4
+ 1102 09d0 0600A0E1 mov r0, r6
+ 1103 09d4 74159FE5 ldr r1, .L141+12
+ 1104 .loc 1 372 0
+ 1105 09d8 083083E3 orr r3, r3, #8
+ 1106 09dc 4430C3E3 bic r3, r3, #68
+ 1107 09e0 1C318DE5 str r3, [sp, #284]
+ 1108 .loc 1 375 0
+ 1109 09e4 FEFFFFEB bl ioctl
+ 1110 .loc 1 376 0
+ 1111 09e8 000050E3 cmp r0, #0
+ 1112 09ec 4C0100BA blt .L135
+ 1113 .L93:
+ 1114 .loc 1 386 0
+ 1115 09f0 175E8DE2 add r5, sp, #368
+ 1116 09f4 02A0A0E3 mov sl, #2
+ 1117 .loc 1 387 0
+ 1118 09f8 0600A0E1 mov r0, r6
+ 1119 09fc 50159FE5 ldr r1, .L141+16
+ 1120 .loc 1 386 0
+ 1121 0a00 68A125E5 str sl, [r5, #-360]!
+ 1122 .loc 1 387 0
+ 1123 0a04 0520A0E1 mov r2, r5
+ 1124 0a08 FEFFFFEB bl ioctl
+ 1125 .loc 1 388 0
+ 1126 0a0c 000050E3 cmp r0, #0
+ 1127 0a10 050000AA bge .L94
+ 1128 .loc 1 389 0
+ 1129 0a14 3C059FE5 ldr r0, .L141+20
+ 1130 .L140:
+ 1131 0a18 FEFFFFEB bl perror
+ 1132 .LVL65:
+ 1133 .L138:
+ 1134 .loc 1 390 0
+ 1135 0a1c 0600A0E1 mov r0, r6
+ 1136 0a20 FEFFFFEB bl close
+ 1137 .LVL66:
+ 1138 .L136:
+ 1139 .loc 1 391 0
+ 1140 0a24 0000A0E3 mov r0, #0
+ 1141 .LVL67:
+ 1142 .L137:
+ 1143 0a28 FEFFFFEB bl exit
+ 1144 .LVL68:
+ 1145 .L94:
+ 1146 .loc 1 397 0
+ 1147 0a2c 28359FE5 ldr r3, .L141+24
+ 1148 .loc 1 398 0
+ 1149 0a30 0600A0E1 mov r0, r6
+ 1150 0a34 24159FE5 ldr r1, .L141+28
+ 1151 0a38 0520A0E1 mov r2, r5
+ 1152 .loc 1 394 0
+ 1153 0a3c 198EA0E3 mov r8, #400
+ 1154 .loc 1 395 0
+ 1155 0a40 117EA0E3 mov r7, #272
+ 1156 .loc 1 394 0
+ 1157 0a44 0C808DE5 str r8, [sp, #12]
+ 1158 .loc 1 397 0
+ 1159 0a48 14308DE5 str r3, [sp, #20]
+ 1160 .loc 1 395 0
+ 1161 0a4c 10708DE5 str r7, [sp, #16]
+ 1162 .loc 1 398 0
+ 1163 0a50 FEFFFFEB bl ioctl
+ 1164 .loc 1 399 0
+ 1165 0a54 000050E3 cmp r0, #0
+ 1166 .loc 1 400 0
+ 1167 0a58 04059FB5 ldrlt r0, .L141+32
+ 1168 .loc 1 399 0
+ 1169 0a5c EDFFFFBA blt .L140
+ 1170 .loc 1 406 0
+ 1171 0a60 174E8DE2 add r4, sp, #368
+ 1172 .loc 1 407 0
+ 1173 0a64 0600A0E1 mov r0, r6
+ 1174 0a68 F8149FE5 ldr r1, .L141+36
+ 1175 .loc 1 406 0
+ 1176 0a6c 2CA024E5 str sl, [r4, #-44]!
+ 1177 .loc 1 407 0
+ 1178 0a70 0420A0E1 mov r2, r4
+ 1179 0a74 FEFFFFEB bl ioctl
+ 1180 .loc 1 408 0
+ 1181 0a78 000050E3 cmp r0, #0
+ 1182 .loc 1 409 0
+ 1183 0a7c E8049FB5 ldrlt r0, .L141+40
+ 1184 .loc 1 408 0
+ 1185 0a80 E4FFFFBA blt .L140
+ 1186 .loc 1 418 0
+ 1187 0a84 0420A0E1 mov r2, r4
+ 1188 0a88 0600A0E1 mov r0, r6
+ 1189 0a8c DC149FE5 ldr r1, .L141+44
+ 1190 .loc 1 414 0
+ 1191 0a90 0040A0E3 mov r4, #0
+ 1192 .loc 1 416 0
+ 1193 0a94 50818DE5 str r8, [sp, #336]
+ 1194 .loc 1 414 0
+ 1195 0a98 48418DE5 str r4, [sp, #328]
+ 1196 .loc 1 415 0
+ 1197 0a9c 4C418DE5 str r4, [sp, #332]
+ 1198 .loc 1 417 0
+ 1199 0aa0 54718DE5 str r7, [sp, #340]
+ 1200 .loc 1 418 0
+ 1201 0aa4 FEFFFFEB bl ioctl
+ 1202 .loc 1 419 0
+ 1203 0aa8 040050E1 cmp r0, r4
+ 1204 .loc 1 420 0
+ 1205 0aac C0049FB5 ldrlt r0, .L141+48
+ 1206 .loc 1 419 0
+ 1207 0ab0 260000BA blt .L139
+ 1208 .loc 1 429 0
+ 1209 0ab4 0600A0E1 mov r0, r6
+ 1210 0ab8 94149FE5 ldr r1, .L141+16
+ 1211 0abc 0520A0E1 mov r2, r5
+ 1212 .loc 1 428 0
+ 1213 0ac0 0330A0E3 mov r3, #3
+ 1214 0ac4 08308DE5 str r3, [sp, #8]
+ 1215 .loc 1 429 0
+ 1216 0ac8 FEFFFFEB bl ioctl
+ 1217 .loc 1 430 0
+ 1218 0acc 000050E3 cmp r0, #0
+ 1219 .loc 1 431 0
+ 1220 0ad0 A0049FB5 ldrlt r0, .L141+52
+ 1221 .loc 1 430 0
+ 1222 0ad4 1D0000BA blt .L139
+ 1223 .loc 1 440 0
+ 1224 0ad8 0600A0E1 mov r0, r6
+ 1225 0adc 7C149FE5 ldr r1, .L141+28
+ 1226 0ae0 0520A0E1 mov r2, r5
+ 1227 .loc 1 438 0
+ 1228 0ae4 14808DE5 str r8, [sp, #20]
+ 1229 .loc 1 439 0
+ 1230 0ae8 18708DE5 str r7, [sp, #24]
+ 1231 .loc 1 436 0
+ 1232 0aec 0C408DE5 str r4, [sp, #12]
+ 1233 .loc 1 437 0
+ 1234 0af0 10408DE5 str r4, [sp, #16]
+ 1235 .loc 1 440 0
+ 1236 0af4 FEFFFFEB bl ioctl
+ 1237 .loc 1 441 0
+ 1238 0af8 000050E3 cmp r0, #0
+ 1239 .loc 1 442 0
+ 1240 0afc 78049FB5 ldrlt r0, .L141+56
+ 1241 .loc 1 441 0
+ 1242 0b00 120000BA blt .L139
+ 1243 .loc 1 448 0
+ 1244 0b04 0520A0E1 mov r2, r5
+ 1245 0b08 0600A0E1 mov r0, r6
+ 1246 0b0c 40149FE5 ldr r1, .L141+16
+ 1247 .loc 1 447 0
+ 1248 0b10 08A08DE5 str sl, [sp, #8]
+ 1249 .loc 1 448 0
+ 1250 0b14 FEFFFFEB bl ioctl
+ 1251 .loc 1 449 0
+ 1252 0b18 000050E3 cmp r0, #0
+ 1253 .loc 1 450 0
+ 1254 0b1c 34049FB5 ldrlt r0, .L141+20
+ 1255 .loc 1 449 0
+ 1256 0b20 0A0000BA blt .L139
+ 1257 .loc 1 463 0
+ 1258 0b24 0600A0E1 mov r0, r6
+ 1259 0b28 50149FE5 ldr r1, .L141+60
+ 1260 0b2c 562F8DE2 add r2, sp, #344
+ 1261 .loc 1 461 0
+ 1262 0b30 0130A0E3 mov r3, #1
+ 1263 .loc 1 460 0
+ 1264 0b34 5CA18DE5 str sl, [sp, #348]
+ 1265 .loc 1 459 0
+ 1266 0b38 58A18DE5 str sl, [sp, #344]
+ 1267 .loc 1 461 0
+ 1268 0b3c 60318DE5 str r3, [sp, #352]
+ 1269 .loc 1 463 0
+ 1270 0b40 FEFFFFEB bl ioctl
+ 1271 .loc 1 464 0
+ 1272 0b44 000050E3 cmp r0, #0
+ 1273 0b48 050000AA bge .L101
+ 1274 .loc 1 465 0
+ 1275 0b4c 30049FE5 ldr r0, .L141+64
+ 1276 .L139:
+ 1277 0b50 FEFFFFEB bl perror
+ 1278 .loc 1 466 0
+ 1279 0b54 0600A0E1 mov r0, r6
+ 1280 0b58 FEFFFFEB bl close
+ 1281 .loc 1 467 0
+ 1282 0b5c 0400A0E1 mov r0, r4
+ 1283 0b60 B0FFFFEA b .L137
+ 1284 .L101:
+ 1285 .loc 1 470 0
+ 1286 0b64 58019DE5 ldr r0, [sp, #344]
+ 1287 0b68 8001A0E1 mov r0, r0, asl #3
+ 1288 0b6c FEFFFFEB bl malloc
+ 1289 .loc 1 473 0
+ 1290 0b70 008050E2 subs r8, r0, #0
+ 1291 0b74 0470A011 movne r7, r4
+ 1292 .LVL69:
+ 1293 0b78 0750A011 movne r5, r7
+ 1294 0b7c 4100001A bne .L103
+ 1295 .loc 1 474 0
+ 1296 0b80 00049FE5 ldr r0, .L141+68
+ 1297 0b84 FEFFFFEB bl puts
+ 1298 .loc 1 475 0
+ 1299 0b88 0600A0E1 mov r0, r6
+ 1300 0b8c FEFFFFEB bl close
+ 1301 .loc 1 476 0
+ 1302 0b90 0800A0E1 mov r0, r8
+ 1303 0b94 A3FFFFEA b .L137
+ 1304 .L110:
+ 1305 .loc 1 485 0
+ 1306 0b98 0020A0E1 mov r2, r0
+ 1307 0b9c E8139FE5 ldr r1, .L141+72
+ 1308 0ba0 0600A0E1 mov r0, r6
+ 1309 .loc 1 483 0
+ 1310 0ba4 0230A0E3 mov r3, #2
+ 1311 .loc 1 484 0
+ 1312 0ba8 D4708DE5 str r7, [sp, #212]
+ 1313 .loc 1 483 0
+ 1314 0bac D8308DE5 str r3, [sp, #216]
+ 1315 .loc 1 485 0
+ 1316 0bb0 FEFFFFEB bl ioctl
+ 1317 .loc 1 486 0
+ 1318 0bb4 000050E3 cmp r0, #0
+ 1319 0bb8 0D0000AA bge .L104
+ 1320 .loc 1 487 0
+ 1321 0bbc CC039FE5 ldr r0, .L141+76
+ 1322 0bc0 0050A0E3 mov r5, #0
+ 1323 .LVL70:
+ 1324 0bc4 FEFFFFEB bl perror
+ 1325 0bc8 0540A0E1 mov r4, r5
+ 1326 0bcc 050000EA b .L105
+ 1327 .L106:
+ 1328 .loc 1 489 0
+ 1329 0bd0 043088E0 add r3, r8, r4
+ 1330 0bd4 041098E7 ldr r1, [r8, r4]
+ 1331 .loc 1 488 0
+ 1332 0bd8 015085E2 add r5, r5, #1
+ 1333 0bdc 084084E2 add r4, r4, #8
+ 1334 .loc 1 489 0
+ 1335 0be0 040093E5 ldr r0, [r3, #4]
+ 1336 0be4 FEFFFFEB bl munmap
+ 1337 .L105:
+ 1338 .loc 1 488 0
+ 1339 0be8 070055E1 cmp r5, r7
+ 1340 0bec F7FFFFBA blt .L106
+ 1341 0bf0 89FFFFEA b .L138
+ 1342 .LVL71:
+ 1343 .L104:
+ 1344 .loc 1 494 0
+ 1345 0bf4 0C119DE5 ldr r1, [sp, #268]
+ 1346 0bf8 0840A0E1 mov r4, r8
+ 1347 .loc 1 495 0
+ 1348 0bfc 0000A0E3 mov r0, #0
+ 1349 0c00 0320A0E3 mov r2, #3
+ 1350 0c04 0130A0E3 mov r3, #1
+ 1351 .loc 1 494 0
+ 1352 0c08 0510A4E7 str r1, [r4, r5]!
+ 1353 .loc 1 495 0
+ 1354 0c0c 08C19DE5 ldr ip, [sp, #264]
+ 1355 0c10 40108DE8 stmia sp, {r6, ip} @ phole stm
+ 1356 0c14 FEFFFFEB bl mmap
+ 1357 .loc 1 499 0
+ 1358 0c18 010050E3 cmp r0, #1
+ 1359 .loc 1 495 0
+ 1360 0c1c 040084E5 str r0, [r4, #4]
+ 1361 .loc 1 499 0
+ 1362 0c20 0E00001A bne .L107
+ 1363 .loc 1 501 0
+ 1364 0c24 68039FE5 ldr r0, .L141+80
+ 1365 0c28 0710A0E1 mov r1, r7
+ 1366 0c2c 0050A0E3 mov r5, #0
+ 1367 .LVL72:
+ 1368 0c30 FEFFFFEB bl printf
+ 1369 0c34 0540A0E1 mov r4, r5
+ 1370 0c38 050000EA b .L108
+ 1371 .L109:
+ 1372 .loc 1 503 0
+ 1373 0c3c 043088E0 add r3, r8, r4
+ 1374 0c40 041098E7 ldr r1, [r8, r4]
+ 1375 .loc 1 502 0
+ 1376 0c44 015085E2 add r5, r5, #1
+ 1377 0c48 084084E2 add r4, r4, #8
+ 1378 .loc 1 503 0
+ 1379 0c4c 040093E5 ldr r0, [r3, #4]
+ 1380 0c50 FEFFFFEB bl munmap
+ 1381 .L108:
+ 1382 .loc 1 502 0
+ 1383 0c54 070055E1 cmp r5, r7
+ 1384 0c58 F7FFFFBA blt .L109
+ 1385 0c5c 6EFFFFEA b .L138
+ 1386 .LVL73:
+ 1387 .L107:
+ 1388 .loc 1 508 0
+ 1389 0c60 052098E7 ldr r2, [r8, r5]
+ 1390 0c64 8010A0E3 mov r1, #128
+ 1391 0c68 FEFFFFEB bl memset
+ 1392 .loc 1 510 0
+ 1393 0c6c 040094E5 ldr r0, [r4, #4]
+ 1394 0c70 0C109DE5 ldr r1, [sp, #12]
+ 1395 0c74 0030A0E3 mov r3, #0
+ 1396 0c78 10209DE5 ldr r2, [sp, #16]
+ 1397 .loc 1 482 0
+ 1398 0c7c 017087E2 add r7, r7, #1
+ 1399 .loc 1 510 0
+ 1400 0c80 DEFCFFEB bl fill
+ 1401 .loc 1 482 0
+ 1402 0c84 085085E2 add r5, r5, #8
+ 1403 .L103:
+ 1404 0c88 58319DE5 ldr r3, [sp, #344]
+ 1405 0c8c D4008DE2 add r0, sp, #212
+ 1406 0c90 030057E1 cmp r7, r3
+ 1407 0c94 BFFFFF3A bcc .L110
+ 1408 .loc 1 514 0
+ 1409 0c98 0010A0E3 mov r1, #0
+ 1410 0c9c 4420A0E3 mov r2, #68
+ 1411 0ca0 0140A0E1 mov r4, r1
+ 1412 .LVL74:
+ 1413 0ca4 FEFFFFEB bl memset
+ 1414 0ca8 1A0000EA b .L111
+ 1415 .L115:
+ 1416 .loc 1 521 0
+ 1417 0cac 0600A0E1 mov r0, r6
+ 1418 0cb0 E0129FE5 ldr r1, .L141+84
+ 1419 0cb4 D4208DE2 add r2, sp, #212
+ 1420 .loc 1 518 0
+ 1421 0cb8 0230A0E3 mov r3, #2
+ 1422 .loc 1 519 0
+ 1423 0cbc D4408DE5 str r4, [sp, #212]
+ 1424 .loc 1 518 0
+ 1425 0cc0 D8308DE5 str r3, [sp, #216]
+ 1426 .loc 1 520 0
+ 1427 0cc4 0130A0E3 mov r3, #1
+ 1428 0cc8 04318DE5 str r3, [sp, #260]
+ 1429 .loc 1 521 0
+ 1430 0ccc FEFFFFEB bl ioctl
+ 1431 .loc 1 522 0
+ 1432 0cd0 000050E3 cmp r0, #0
+ 1433 0cd4 0E0000AA bge .L112
+ 1434 .loc 1 523 0
+ 1435 0cd8 BC029FE5 ldr r0, .L141+88
+ 1436 0cdc 0050A0E3 mov r5, #0
+ 1437 .LVL75:
+ 1438 0ce0 FEFFFFEB bl perror
+ 1439 0ce4 0540A0E1 mov r4, r5
+ 1440 .LVL76:
+ 1441 0ce8 050000EA b .L113
+ 1442 .L114:
+ 1443 .loc 1 525 0
+ 1444 0cec 043088E0 add r3, r8, r4
+ 1445 0cf0 041098E7 ldr r1, [r8, r4]
+ 1446 .loc 1 524 0
+ 1447 0cf4 015085E2 add r5, r5, #1
+ 1448 0cf8 084084E2 add r4, r4, #8
+ 1449 .loc 1 525 0
+ 1450 0cfc 040093E5 ldr r0, [r3, #4]
+ 1451 0d00 FEFFFFEB bl munmap
+ 1452 .L113:
+ 1453 .loc 1 524 0
+ 1454 0d04 58319DE5 ldr r3, [sp, #344]
+ 1455 0d08 030055E1 cmp r5, r3
+ 1456 0d0c F6FFFF3A bcc .L114
+ 1457 0d10 43FFFFEA b .L136
+ 1458 .LVL77:
+ 1459 .L112:
+ 1460 .loc 1 517 0
+ 1461 0d14 014084E2 add r4, r4, #1
+ 1462 .L111:
+ 1463 0d18 58319DE5 ldr r3, [sp, #344]
+ 1464 0d1c 030054E1 cmp r4, r3
+ 1465 0d20 E1FFFF3A bcc .L115
+ 1466 .loc 1 531 0
+ 1467 0d24 172E8DE2 add r2, sp, #368
+ 1468 0d28 0040A0E3 mov r4, #0
+ 1469 .LVL78:
+ 1470 .loc 1 532 0
+ 1471 0d2c 0600A0E1 mov r0, r6
+ 1472 0d30 68129FE5 ldr r1, .L141+92
+ 1473 .loc 1 531 0
+ 1474 0d34 044022E5 str r4, [r2, #-4]!
+ 1475 .LVL79:
+ 1476 .loc 1 532 0
+ 1477 0d38 FEFFFFEB bl ioctl
+ 1478 .loc 1 533 0
+ 1479 0d3c 040050E1 cmp r0, r4
+ 1480 0d40 0D0000AA bge .L125
+ 1481 .loc 1 534 0
+ 1482 0d44 58029FE5 ldr r0, .L141+96
+ 1483 0d48 0450A0E1 mov r5, r4
+ 1484 .LVL80:
+ 1485 0d4c FEFFFFEB bl perror
+ 1486 0d50 050000EA b .L117
+ 1487 .L118:
+ 1488 .loc 1 536 0
+ 1489 0d54 043088E0 add r3, r8, r4
+ 1490 0d58 041098E7 ldr r1, [r8, r4]
+ 1491 .loc 1 535 0
+ 1492 0d5c 015085E2 add r5, r5, #1
+ 1493 0d60 084084E2 add r4, r4, #8
+ 1494 .loc 1 536 0
+ 1495 0d64 040093E5 ldr r0, [r3, #4]
+ 1496 0d68 FEFFFFEB bl munmap
+ 1497 .L117:
+ 1498 .loc 1 535 0
+ 1499 0d6c 58319DE5 ldr r3, [sp, #344]
+ 1500 0d70 030055E1 cmp r5, r3
+ 1501 0d74 F6FFFF3A bcc .L118
+ 1502 0d78 29FFFFEA b .L136
+ 1503 .LVL81:
+ 1504 .L125:
+ 1505 .loc 1 542 0
+ 1506 0d7c D4508DE2 add r5, sp, #212
+ 1507 0d80 0600A0E1 mov r0, r6
+ 1508 0d84 1C129FE5 ldr r1, .L141+100
+ 1509 0d88 0520A0E1 mov r2, r5
+ 1510 0d8c FEFFFFEB bl ioctl
+ 1511 .loc 1 543 0
+ 1512 0d90 000050E3 cmp r0, #0
+ 1513 0d94 0E0000AA bge .L119
+ 1514 .loc 1 544 0
+ 1515 0d98 0C029FE5 ldr r0, .L141+104
+ 1516 0d9c 0050A0E3 mov r5, #0
+ 1517 .LVL82:
+ 1518 0da0 FEFFFFEB bl perror
+ 1519 0da4 0540A0E1 mov r4, r5
+ 1520 .LVL83:
+ 1521 0da8 050000EA b .L120
+ 1522 .L121:
+ 1523 .loc 1 546 0
+ 1524 0dac 043088E0 add r3, r8, r4
+ 1525 0db0 041098E7 ldr r1, [r8, r4]
+ 1526 .loc 1 545 0
+ 1527 0db4 015085E2 add r5, r5, #1
+ 1528 0db8 084084E2 add r4, r4, #8
+ 1529 .loc 1 546 0
+ 1530 0dbc 040093E5 ldr r0, [r3, #4]
+ 1531 0dc0 FEFFFFEB bl munmap
+ 1532 .L120:
+ 1533 .loc 1 545 0
+ 1534 0dc4 58319DE5 ldr r3, [sp, #344]
+ 1535 0dc8 030055E1 cmp r5, r3
+ 1536 0dcc F6FFFF3A bcc .L121
+ 1537 0dd0 11FFFFEA b .L138
+ 1538 .LVL84:
+ 1539 .L119:
+ 1540 .loc 1 554 0
+ 1541 0dd4 D4009DE5 ldr r0, [sp, #212]
+ 1542 0dd8 0030A0E3 mov r3, #0
+ 1543 0ddc 0C109DE5 ldr r1, [sp, #12]
+ 1544 0de0 10209DE5 ldr r2, [sp, #16]
+ 1545 0de4 800188E0 add r0, r8, r0, asl #3
+ 1546 0de8 040090E5 ldr r0, [r0, #4]
+ 1547 0dec 83FCFFEB bl fill
+ 1548 .loc 1 556 0
+ 1549 0df0 0600A0E1 mov r0, r6
+ 1550 0df4 0520A0E1 mov r2, r5
+ 1551 0df8 98119FE5 ldr r1, .L141+84
+ 1552 0dfc FEFFFFEB bl ioctl
+ 1553 .loc 1 557 0
+ 1554 0e00 000050E3 cmp r0, #0
+ 1555 0e04 0E0000AA bge .L122
+ 1556 .loc 1 558 0
+ 1557 0e08 8C019FE5 ldr r0, .L141+88
+ 1558 0e0c 0050A0E3 mov r5, #0
+ 1559 .LVL85:
+ 1560 0e10 FEFFFFEB bl perror
+ 1561 0e14 0540A0E1 mov r4, r5
+ 1562 .LVL86:
+ 1563 0e18 050000EA b .L123
+ 1564 .L124:
+ 1565 .loc 1 560 0
+ 1566 0e1c 043088E0 add r3, r8, r4
+ 1567 0e20 041098E7 ldr r1, [r8, r4]
+ 1568 .loc 1 559 0
+ 1569 0e24 015085E2 add r5, r5, #1
+ 1570 0e28 084084E2 add r4, r4, #8
+ 1571 .loc 1 560 0
+ 1572 0e2c 040093E5 ldr r0, [r3, #4]
+ 1573 0e30 FEFFFFEB bl munmap
+ 1574 .L123:
+ 1575 .loc 1 559 0
+ 1576 0e34 58319DE5 ldr r3, [sp, #344]
+ 1577 0e38 030055E1 cmp r5, r3
+ 1578 0e3c F6FFFF3A bcc .L124
+ 1579 0e40 F5FEFFEA b .L138
+ 1580 .LVL87:
+ 1581 .L122:
+ 1582 .loc 1 541 0
+ 1583 0e44 014084E2 add r4, r4, #1
+ 1584 .loc 1 564 0
+ 1585 0e48 0100A0E3 mov r0, #1
+ 1586 0e4c FEFFFFEB bl sleep
+ 1587 .loc 1 541 0
+ 1588 0e50 1E0054E3 cmp r4, #30
+ 1589 0e54 C8FFFF1A bne .L125
+ 1590 .loc 1 568 0
+ 1591 0e58 0600A0E1 mov r0, r6
+ 1592 0e5c 4C119FE5 ldr r1, .L141+108
+ 1593 0e60 5B2F8DE2 add r2, sp, #364
+ 1594 0e64 FEFFFFEB bl ioctl
+ 1595 .loc 1 569 0
+ 1596 0e68 000050E3 cmp r0, #0
+ 1597 0e6c 0050A0A3 movge r5, #0
+ 1598 .LVL88:
+ 1599 0e70 0540A0A1 movge r4, r5
+ 1600 0e74 140000AA bge .L127
+ 1601 .loc 1 570 0
+ 1602 0e78 34019FE5 ldr r0, .L141+112
+ 1603 0e7c 0050A0E3 mov r5, #0
+ 1604 .LVL89:
+ 1605 0e80 FEFFFFEB bl perror
+ 1606 0e84 0540A0E1 mov r4, r5
+ 1607 0e88 050000EA b .L128
+ 1608 .L129:
+ 1609 .loc 1 572 0
+ 1610 0e8c 043088E0 add r3, r8, r4
+ 1611 0e90 041098E7 ldr r1, [r8, r4]
+ 1612 .loc 1 571 0
+ 1613 0e94 015085E2 add r5, r5, #1
+ 1614 0e98 084084E2 add r4, r4, #8
+ 1615 .loc 1 572 0
+ 1616 0e9c 040093E5 ldr r0, [r3, #4]
+ 1617 0ea0 FEFFFFEB bl munmap
+ 1618 .L128:
+ 1619 .loc 1 571 0
+ 1620 0ea4 58319DE5 ldr r3, [sp, #344]
+ 1621 0ea8 030055E1 cmp r5, r3
+ 1622 0eac F6FFFF3A bcc .L129
+ 1623 0eb0 D9FEFFEA b .L138
+ 1624 .L130:
+ 1625 .loc 1 578 0
+ 1626 0eb4 043088E0 add r3, r8, r4
+ 1627 0eb8 041098E7 ldr r1, [r8, r4]
+ 1628 .loc 1 577 0
+ 1629 0ebc 015085E2 add r5, r5, #1
+ 1630 0ec0 084084E2 add r4, r4, #8
+ 1631 .loc 1 578 0
+ 1632 0ec4 040093E5 ldr r0, [r3, #4]
+ 1633 0ec8 FEFFFFEB bl munmap
+ 1634 .L127:
+ 1635 .loc 1 577 0
+ 1636 0ecc 58319DE5 ldr r3, [sp, #344]
+ 1637 0ed0 030055E1 cmp r5, r3
+ 1638 0ed4 F6FFFF3A bcc .L130
+ 1639 .loc 1 581 0
+ 1640 0ed8 464F8DE2 add r4, sp, #280
+ 1641 0edc 0600A0E1 mov r0, r6
+ 1642 0ee0 64109FE5 ldr r1, .L141+8
+ 1643 0ee4 0420A0E1 mov r2, r4
+ 1644 0ee8 FEFFFFEB bl ioctl
+ 1645 .loc 1 582 0
+ 1646 0eec 000050E3 cmp r0, #0
+ 1647 0ef0 0B0000BA blt .L135
+ 1648 .L131:
+ 1649 .loc 1 589 0
+ 1650 0ef4 18319DE5 ldr r3, [sp, #280]
+ 1651 0ef8 100013E3 tst r3, #16
+ 1652 0efc 0B00000A beq .L132
+ 1653 .loc 1 590 0
+ 1654 0f00 1C319DE5 ldr r3, [sp, #284]
+ 1655 .loc 1 592 0
+ 1656 0f04 0420A0E1 mov r2, r4
+ 1657 0f08 0600A0E1 mov r0, r6
+ 1658 0f0c 3C109FE5 ldr r1, .L141+12
+ 1659 .loc 1 590 0
+ 1660 0f10 0830C3E3 bic r3, r3, #8
+ 1661 0f14 1C318DE5 str r3, [sp, #284]
+ 1662 .loc 1 592 0
+ 1663 0f18 FEFFFFEB bl ioctl
+ 1664 .loc 1 593 0
+ 1665 0f1c 000050E3 cmp r0, #0
+ 1666 0f20 020000AA bge .L132
+ 1667 .L135:
+ 1668 .loc 1 594 0
+ 1669 0f24 8C009FE5 ldr r0, .L141+116
+ 1670 0f28 FEFFFFEB bl perror
+ 1671 0f2c 010000EA b .L92
+ 1672 .L132:
+ 1673 .loc 1 601 0
+ 1674 0f30 0600A0E1 mov r0, r6
+ 1675 0f34 FEFFFFEB bl close
+ 1676 .L92:
+ 1677 .loc 1 603 0
+ 1678 0f38 0000A0E3 mov r0, #0
+ 1679 0f3c 5DDF8DE2 add sp, sp, #372
+ 1680 0f40 F085BDE8 ldmfd sp!, {r4, r5, r6, r7, r8, sl, pc}
+ 1681 .L142:
+ 1682 .align 2
+ 1683 .L141:
+ 1684 0f44 04000000 .word .LANCHOR2+4
+ 1685 0f48 6E010000 .word .LC10
+ 1686 0f4c 0A562C80 .word -2144578038
+ 1687 0f50 0B562C40 .word 1076647435
+ 1688 0f54 0456CCC0 .word -1060350460
+ 1689 0f58 87010000 .word .LC11
+ 1690 0f5c 52474234 .word 876758866
+ 1691 0f60 0556CCC0 .word -1060350459
+ 1692 0f64 95010000 .word .LC12
+ 1693 0f68 3B5614C0 .word -1072409029
+ 1694 0f6c A3010000 .word .LC13
+ 1695 0f70 3C561440 .word 1075074620
+ 1696 0f74 B2010000 .word .LC14
+ 1697 0f78 C1010000 .word .LC15
+ 1698 0f7c D1010000 .word .LC16
+ 1699 0f80 085614C0 .word -1072409080
+ 1700 0f84 E1010000 .word .LC17
+ 1701 0f88 F9010000 .word .LC18
+ 1702 0f8c 095644C0 .word -1069263351
+ 1703 0f90 1E020000 .word .LC19
+ 1704 0f94 2F020000 .word .LC20
+ 1705 0f98 0F5644C0 .word -1069263345
+ 1706 0f9c 48020000 .word .LC21
+ 1707 0fa0 12560440 .word 1074026002
+ 1708 0fa4 55020000 .word .LC22
+ 1709 0fa8 115644C0 .word -1069263343
+ 1710 0fac 66020000 .word .LC23
+ 1711 0fb0 13560440 .word 1074026003
+ 1712 0fb4 74020000 .word .LC24
+ 1713 0fb8 86020000 .word .LC25
+ 1714 .LFE4:
+ 1715 .fnend
+ 1717 .global dev_name
+ 1718 .section .rodata.str1.1,"aMS",%progbits,1
+ 1719 .LC1:
+ 1720 0000 55736167 .ascii "Usage:saV4L2Rotation [-d <device node>][-l <loop co"
+ 1720 653A7361
+ 1720 56344C32
+ 1720 526F7461
+ 1720 74696F6E
+ 1721 0033 756C743E .ascii "ult>][-h help]\000"
+ 1721 5D5B2D68
+ 1721 2068656C
+ 1721 705D00
+ 1722 .LC2:
+ 1723 0042 095B2D6C .ascii "\011[-l <loop count>]\011: Loop Count, default to 5"
+ 1723 203C6C6F
+ 1723 6F702063
+ 1723 6F756E74
+ 1723 3E5D093A
+ 1724 006f 30300A5B .ascii "00\012[-h <help>]\011\011: Help\000"
+ 1724 2D68203C
+ 1724 68656C70
+ 1724 3E5D0909
+ 1724 3A204865
+ 1725 .LC3:
+ 1726 0086 6563686F .ascii "echo gfx e:0 > /sys/devices/platform/omapdss/overla"
+ 1726 20676678
+ 1726 20653A30
+ 1726 203E202F
+ 1726 7379732F
+ 1727 00b9 79302F65 .ascii "y0/enabled\000"
+ 1727 6E61626C
+ 1727 656400
+ 1728 .LC4:
+ 1729 00c4 4661696C .ascii "Failed to dislable graphics pipeline\000"
+ 1729 65642074
+ 1729 6F206469
+ 1729 736C6162
+ 1729 6C652067
+ 1730 .LC5:
+ 1731 00e9 7465782E .ascii "tex.svg\000"
+ 1731 73766700
+ 1732 .LC6:
+ 1733 00f1 7200 .ascii "r\000"
+ 1734 .LC7:
+ 1735 00f3 556E6162 .ascii "Unable to open video1 file\000"
+ 1735 6C652074
+ 1735 6F206F70
+ 1735 656E2076
+ 1735 6964656F
+ 1736 .LC8:
+ 1737 010e 556E6162 .ascii "Unable to open video2 file\000"
+ 1737 6C652074
+ 1737 6F206F70
+ 1737 656E2076
+ 1737 6964656F
+ 1738 .LC9:
+ 1739 0129 6563686F .ascii "echo gfx e:1 > /sys/devices/platform/omapdss/overla"
+ 1739 20676678
+ 1739 20653A31
+ 1739 203E202F
+ 1739 7379732F
+ 1740 015c 79302F65 .ascii "y0/enabled\000"
+ 1740 6E61626C
+ 1740 656400
+ 1741 .LC0:
+ 1742 0167 683A643A .ascii "h:d:l:\000"
+ 1742 6C3A00
+ 1743 .LC10:
+ 1744 016e 43616E6E .ascii "Cannot open = %s device\012\000"
+ 1744 6F74206F
+ 1744 70656E20
+ 1744 3D202573
+ 1744 20646576
+ 1745 .LC11:
+ 1746 0187 56494449 .ascii "VIDIOC_G_FMT\012\000"
+ 1746 4F435F47
+ 1746 5F464D54
+ 1746 0A00
+ 1747 .LC12:
+ 1748 0195 56494449 .ascii "VIDIOC_S_FMT\012\000"
+ 1748 4F435F53
+ 1748 5F464D54
+ 1748 0A00
+ 1749 .LC13:
+ 1750 01a3 56494449 .ascii "VIDIOC_G_CROP\012\000"
+ 1750 4F435F47
+ 1750 5F43524F
+ 1750 500A00
+ 1751 .LC14:
+ 1752 01b2 56494449 .ascii "VIDIOC_S_CROP\012\000"
+ 1752 4F435F53
+ 1752 5F43524F
+ 1752 500A00
+ 1753 .LC15:
+ 1754 01c1 56494449 .ascii "VIDIOC_G_FMT 2\012\000"
+ 1754 4F435F47
+ 1754 5F464D54
+ 1754 20320A00
+ 1755 .LC16:
+ 1756 01d1 56494449 .ascii "VIDIOC_S_FMT 2\012\000"
+ 1756 4F435F53
+ 1756 5F464D54
+ 1756 20320A00
+ 1757 .LC17:
+ 1758 01e1 63616E6E .ascii "cannot allocate memory\012\000"
+ 1758 6F742061
+ 1758 6C6C6F63
+ 1758 61746520
+ 1758 6D656D6F
+ 1759 .LC18:
+ 1760 01f9 63616E6E .ascii "cannot allocate memory for buff_info\000"
+ 1760 6F742061
+ 1760 6C6C6F63
+ 1760 61746520
+ 1760 6D656D6F
+ 1761 .LC19:
+ 1762 021e 56494449 .ascii "VIDIOC_QUERYCAP\012\000"
+ 1762 4F435F51
+ 1762 55455259
+ 1762 4341500A
+ 1762 00
+ 1763 .LC20:
+ 1764 022f 43616E6E .ascii "Cannot mmap = %d buffer\012\000"
+ 1764 6F74206D
+ 1764 6D617020
+ 1764 3D202564
+ 1764 20627566
+ 1765 .LC21:
+ 1766 0248 56494449 .ascii "VIDIOC_QBUF\012\000"
+ 1766 4F435F51
+ 1766 4255460A
+ 1766 00
+ 1767 .LC22:
+ 1768 0255 56494449 .ascii "VIDIOC_STREAMON\012\000"
+ 1768 4F435F53
+ 1768 54524541
+ 1768 4D4F4E0A
+ 1768 00
+ 1769 .LC23:
+ 1770 0266 56494449 .ascii "VIDIOC_DQBUF\012\000"
+ 1770 4F435F44
+ 1770 51425546
+ 1770 0A00
+ 1771 .LC24:
+ 1772 0274 56494449 .ascii "VIDIOC_STREAMOFF\012\000"
+ 1772 4F435F53
+ 1772 54524541
+ 1772 4D4F4646
+ 1772 0A00
+ 1773 .LC25:
+ 1774 0286 56494449 .ascii "VIDIOC_S_FBUF\000"
+ 1774 4F435F53
+ 1774 5F464255
+ 1774 4600
+ 1775 .data
+ 1776 .align 2
+ 1777 .LANCHOR2 = . + 0
+ 1780 loop_count:
+ 1781 0000 1E000000 .word 30
+ 1784 dev_name:
+ 1785 0004 2F646576 .ascii "/dev/video7\000"
+ 1785 2F766964
+ 1785 656F3700
+ 1786 0010 00000000 .space 8
+ 1786 00000000
+ 1787 0018 2F646576 .ascii "/dev/video8\000"
+ 1787 2F766964
+ 1787 656F3800
+ 1788 0024 00000000 .space 8
+ 1788 00000000
+ 1789 .bss
+ 1790 .align 2
+ 1791 .LANCHOR0 = . + 0
+ 1792 .LANCHOR1 = . + 433752
+ 1795 count.4501:
+ 1796 0000 00000000 .space 4
+ 1799 direction.4502:
+ 1800 0004 00000000 .space 4
+ 1803 video2:
+ 1804 0008 00000000 .space 435200
+ 1804 00000000
+ 1804 00000000
+ 1804 00000000
+ 1804 00000000
+ 1807 video1:
+ 1808 6a408 00000000 .space 435200
+ 1808 00000000
+ 1808 00000000
+ 1808 00000000
+ 1808 00000000
+ 1945 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 saVideoARGB.c
- /tmp/ccS63qx8.s:20 .text:00000000 $a
- /tmp/ccS63qx8.s:22 .text:00000000 fill
- /tmp/ccS63qx8.s:143 .text:00000100 $d
+ /tmp/ccSU6f1M.s:20 .text:00000000 $a
+ /tmp/ccSU6f1M.s:22 .text:00000000 fill
+ /tmp/ccSU6f1M.s:143 .text:00000100 $d
.ARM.exidx:00000000 $d
- /tmp/ccS63qx8.s:149 .text:0000010c $a
- /tmp/ccS63qx8.s:152 .text:0000010c main
- /tmp/ccS63qx8.s:425 .text:00000380 $d
- /tmp/ccS63qx8.s:1052 .text:0000096c video1_threadfun
- /tmp/ccS63qx8.s:447 .text:000003c4 video2_threadfun
+ /tmp/ccSU6f1M.s:149 .text:0000010c $a
+ /tmp/ccSU6f1M.s:152 .text:0000010c main
+ /tmp/ccSU6f1M.s:425 .text:00000380 $d
+ /tmp/ccSU6f1M.s:1051 .text:00000968 video1_threadfun
+ /tmp/ccSU6f1M.s:446 .text:000003c0 video2_threadfun
.ARM.extab:00000000 $d
- /tmp/ccS63qx8.s:445 .text:000003c4 $a
- /tmp/ccS63qx8.s:1019 .text:000008fc $d
- /tmp/ccS63qx8.s:1050 .text:0000096c $a
- /tmp/ccS63qx8.s:1685 .text:00000f48 $d
- /tmp/ccS63qx8.s:1787 .data:00000004 dev_name
- /tmp/ccS63qx8.s:1721 .rodata.str1.1:00000000 $d
- /tmp/ccS63qx8.s:1779 .data:00000000 $d
- /tmp/ccS63qx8.s:1783 .data:00000000 loop_count
- /tmp/ccS63qx8.s:1793 .bss:00000000 $d
- /tmp/ccS63qx8.s:1798 .bss:00000000 count.4501
- /tmp/ccS63qx8.s:1802 .bss:00000004 direction.4502
- /tmp/ccS63qx8.s:1806 .bss:00000008 video2
- /tmp/ccS63qx8.s:1810 .bss:0006a408 video1
+ /tmp/ccSU6f1M.s:444 .text:000003c0 $a
+ /tmp/ccSU6f1M.s:1018 .text:000008f8 $d
+ /tmp/ccSU6f1M.s:1049 .text:00000968 $a
+ /tmp/ccSU6f1M.s:1684 .text:00000f44 $d
+ /tmp/ccSU6f1M.s:1784 .data:00000004 dev_name
+ /tmp/ccSU6f1M.s:1720 .rodata.str1.1:00000000 $d
+ /tmp/ccSU6f1M.s:1776 .data:00000000 $d
+ /tmp/ccSU6f1M.s:1780 .data:00000000 loop_count
+ /tmp/ccSU6f1M.s:1790 .bss:00000000 $d
+ /tmp/ccSU6f1M.s:1795 .bss:00000000 count.4501
+ /tmp/ccSU6f1M.s:1799 .bss:00000004 direction.4502
+ /tmp/ccSU6f1M.s:1803 .bss:00000008 video2
+ /tmp/ccSU6f1M.s:1807 .bss:0006a408 video1
UNDEFINED SYMBOLS
__aeabi_unwind_cpp_pr0