Permalink
Browse files

Update master branch to next

  • Loading branch information...
Dom Cobley
Dom Cobley committed Dec 27, 2012
1 parent 83e1597 commit 9852ce28826889e50c4d6786b942f51bccccac54
Showing with 9,301 additions and 1,518 deletions.
  1. +16 −4 CMakeLists.txt
  2. +4 −1 helpers/v3d/v3d_ver.h
  3. +7 −1 helpers/vc_image/metadata_fourcc.h
  4. +2 −1 helpers/vc_image/vc_image.h
  5. +7 −6 host_applications/linux/apps/gencmd/gencmd.c
  6. +2 −3 host_applications/linux/apps/hello_pi/hello_tiger/CMakeLists.txt
  7. +270 −63 host_applications/linux/apps/tvservice/tvservice.c
  8. +24 −16 host_support/include/vc_debug_sym.h
  9. +1 −0 interface/khronos/common/khrn_int_common.h
  10. +22 −3 interface/khronos/common/linux/khrn_client_rpc_linux.c
  11. +669 −360 interface/khronos/wf/wfc_client.c
  12. +17 −20 interface/khronos/wf/wfc_client_ipc.c
  13. +177 −26 interface/khronos/wf/wfc_client_server_api.c
  14. +616 −194 interface/khronos/wf/wfc_client_stream.c
  15. +9 −2 interface/khronos/wf/wfc_client_stream.h
  16. +83 −1 interface/khronos/wf/wfc_int.h
  17. +75 −10 interface/khronos/wf/wfc_ipc.h
  18. +78 −14 interface/khronos/wf/wfc_server_api.h
  19. +2 −0 interface/mmal/core/CMakeLists.txt
  20. +35 −5 interface/mmal/core/mmal_buffer.c
  21. +11 −0 interface/mmal/core/mmal_buffer_private.h
  22. +802 −0 interface/mmal/core/mmal_clock.c
  23. +205 −0 interface/mmal/core/mmal_clock_private.h
  24. +98 −14 interface/mmal/core/mmal_component.c
  25. +7 −0 interface/mmal/core/mmal_component_private.h
  26. +7 −1 interface/mmal/core/mmal_format.c
  27. +15 −0 interface/mmal/core/mmal_pool.c
  28. +196 −23 interface/mmal/core/mmal_port.c
  29. +584 −0 interface/mmal/core/mmal_port_clock.c
  30. +141 −0 interface/mmal/core/mmal_port_private.h
  31. +15 −4 interface/mmal/core/mmal_queue.c
  32. +49 −0 interface/mmal/mmal_buffer.h
  33. +98 −0 interface/mmal/mmal_clock.h
  34. +3 −0 interface/mmal/mmal_common.h
  35. +7 −1 interface/mmal/mmal_component.h
  36. +105 −0 interface/mmal/mmal_encodings.h
  37. +20 −3 interface/mmal/mmal_format.h
  38. +3 −3 interface/mmal/mmal_logging.h
  39. +57 −2 interface/mmal/mmal_parameters.h
  40. +64 −0 interface/mmal/mmal_parameters_audio.h
  41. +184 −1 interface/mmal/mmal_parameters_camera.h
  42. +77 −0 interface/mmal/mmal_parameters_clock.h
  43. +37 −1 interface/mmal/mmal_parameters_common.h
  44. +115 −6 interface/mmal/mmal_parameters_video.h
  45. +10 −0 interface/mmal/mmal_pool.h
  46. +3 −1 interface/mmal/mmal_port.h
  47. +3 −0 interface/mmal/mmal_types.h
  48. +2 −0 interface/mmal/util/CMakeLists.txt
  49. +28 −10 interface/mmal/util/mmal_connection.c
  50. +4 −0 interface/mmal/util/mmal_connection.h
  51. +279 −68 interface/mmal/util/mmal_graph.c
  52. +28 −2 interface/mmal/util/mmal_graph.h
  53. +351 −3 interface/mmal/util/mmal_il.c
  54. +76 −1 interface/mmal/util/mmal_il.h
  55. +218 −0 interface/mmal/util/mmal_list.c
  56. +94 −21 interface/mmal/util/mmal_list.h
  57. +3 −2 interface/mmal/util/mmal_param_convert.c
  58. +7 −0 interface/mmal/util/mmal_param_convert.h
  59. +24 −1 interface/mmal/util/mmal_util.c
  60. +9 −1 interface/mmal/util/mmal_util.h
  61. +77 −8 interface/mmal/util/mmal_util_params.c
  62. +68 −2 interface/mmal/util/mmal_util_params.h
  63. +150 −0 interface/mmal/util/mmal_util_rational.c
  64. +118 −0 interface/mmal/util/mmal_util_rational.h
  65. +1 −1 interface/mmal/vc/CMakeLists.txt
  66. +209 −40 interface/mmal/vc/mmal_vc_api.c
  67. +12 −3 interface/mmal/vc/mmal_vc_api.h
  68. +77 −0 interface/mmal/vc/mmal_vc_api_drm.c
  69. +29 −0 interface/{vcos/pthreads/vchost_config.h → mmal/vc/mmal_vc_api_drm.h}
  70. +135 −42 interface/mmal/vc/mmal_vc_client.c
  71. +2 −1 interface/mmal/vc/mmal_vc_client_priv.h
  72. +6 −0 interface/mmal/vc/mmal_vc_msgnames.c
  73. +45 −6 interface/mmal/vc/mmal_vc_msgs.h
  74. +11 −5 interface/mmal/vc/mmal_vc_opaque_alloc.c
  75. +5 −0 interface/mmal/vc/mmal_vc_opaque_alloc.h
  76. +12 −2 interface/mmal/vc/mmal_vc_shm.c
  77. +2 −0 interface/peer/vc_touchsrv_defs.h
  78. +6 −0 interface/vchi/connections/connection.h
  79. +2 −0 interface/vchi/message_drivers/message.h
  80. +16 −1 interface/vchi/vchi.h
  81. +4 −0 interface/vchi/vchi_cfg.h
  82. +1 −0 interface/vchi/vchi_cfg_internal.h
  83. +2 −0 interface/vchi/vchi_common.h
  84. +7 −5 interface/vchiq_arm/vchiq_cfg.h
  85. +51 −26 interface/vchiq_arm/vchiq_if.h
  86. +3 −3 interface/vchiq_arm/vchiq_ioctl.h
  87. +181 −132 interface/vchiq_arm/vchiq_lib.c
  88. +279 −33 interface/vchiq_arm/vchiq_test.c
  89. +3 −1 interface/vchiq_arm/vchiq_test.h
  90. +5 −0 interface/vchiq_arm/vchiq_util.c
  91. +2 −1 interface/vchiq_arm/vchiq_util.h
  92. +8 −0 interface/vcos/generic/vcos_abort.c
  93. +38 −0 interface/vcos/generic/vcos_generic_safe_string.c
  94. +2 −0 interface/vcos/generic/vcos_msgqueue.c
  95. +5 −0 interface/vcos/pthreads/vcos_futex_mutex.h
  96. +4 −0 interface/vcos/pthreads/vcos_platform.h
  97. +4 −0 interface/vcos/pthreads/vcos_platform_types.h
  98. +47 −0 interface/vcos/user_nodefs.h
  99. +37 −16 interface/vcos/vcos_assert.h
  100. +4 −0 interface/vcos/vcos_blockpool.h
  101. +4 −0 interface/vcos/vcos_isr.h
  102. +4 −0 interface/vcos/vcos_legacy_isr.h
  103. +4 −0 interface/vcos/vcos_mempool.h
  104. +4 −0 interface/vcos/vcos_named_semaphore.h
  105. +4 −0 interface/vcos/vcos_queue.h
  106. +4 −0 interface/vcos/vcos_quickslow_mutex.h
  107. +4 −0 interface/vcos/vcos_reentrant_mutex.h
  108. +4 −0 interface/vcos/vcos_tls.h
  109. +1 −0 interface/vcos/vcos_types.h
  110. +4 −0 interface/vctypes/vc_display_types.h
  111. +2 −0 interface/vctypes/vc_image_types.h
  112. +83 −5 interface/vmcs_host/khronos/IL/OMX_Broadcom.h
  113. +6 −0 interface/vmcs_host/khronos/IL/OMX_IVCommon.h
  114. +7 −0 interface/vmcs_host/khronos/IL/OMX_Image.h
  115. +25 −2 interface/vmcs_host/khronos/IL/OMX_Index.h
  116. +6 −6 interface/vmcs_host/khronos/IL/OMX_Video.h
  117. +2 −2 interface/vmcs_host/linux/vcfiled/vcfiled.c
  118. +2 −0 interface/vmcs_host/linux/vcfiled/vcfiled_check.c
  119. +12 −5 interface/vmcs_host/linux/vcfilesys.c
  120. +61 −0 interface/vmcs_host/linux/vchost_config.h
  121. +9 −9 interface/vmcs_host/vc_cecservice.h
  122. +70 −0 interface/vmcs_host/vc_cma.h
  123. +2 −0 interface/vmcs_host/vc_dispmanx.h
  124. +9 −0 interface/vmcs_host/vc_dispmanx_types.h
  125. +2 −0 interface/vmcs_host/vc_dispservice_x_defs.h
  126. +3 −0 interface/vmcs_host/vc_fileservice_defs.h
  127. +70 −21 interface/vmcs_host/vc_hdmi.h
  128. +30 −0 interface/vmcs_host/vc_hdmi_property.h
  129. +2 −0 interface/vmcs_host/vc_hostreq_defs.h
  130. +8 −0 interface/vmcs_host/vc_ilcs_defs.h
  131. +51 −0 interface/vmcs_host/vc_imageconv_defs.h
  132. +25 −5 interface/vmcs_host/vc_sdtv.h
  133. +35 −17 interface/vmcs_host/vc_tvservice.h
  134. +49 −20 interface/vmcs_host/vc_tvservice_defs.h
  135. +2 −0 interface/vmcs_host/vc_vchi_audioserv_defs.h
  136. +11 −11 interface/vmcs_host/vc_vchi_cecservice.c
  137. +4 −3 interface/vmcs_host/vc_vchi_dispmanx.c
  138. +42 −15 interface/vmcs_host/vc_vchi_filesys.c
  139. +4 −1 interface/vmcs_host/vc_vchi_gencmd.c
  140. +209 −106 interface/vmcs_host/vc_vchi_tvservice.c
  141. +2 −0 interface/vmcs_host/vcfilesys_defs.h
  142. +2 −0 interface/vmcs_host/vcgencmd.h
  143. +12 −3 interface/vmcs_host/vcilcs.c
  144. +2 −0 interface/vmcs_host/vcilcs.h
  145. +2 −0 interface/vmcs_host/vcilcs_common.h
  146. +21 −0 makefiles/cmake/toolchains/bcm2708-glibc-linux.cmake
  147. +357 −0 middleware/imageconv/imageconv.h
  148. +68 −0 middleware/khronos/ext/egl_khr_image.h
  149. +4 −29 middleware/khronos/wf/wfc_server_stream.h
  150. +3 −1 vcfw/logging/logging.h
  151. +71 −18 vcfw/rtos/common/rtos_common_mem.h
  152. +42 −10 vcfw/rtos/rtos.h
  153. +9 −0 vcinclude/common.h
  154. +1 −2 vcinclude/vcore.h
View
@@ -3,7 +3,11 @@ cmake_minimum_required(VERSION 2.8)
project(vmcs_host_apps)
set(BUILD_MMAL TRUE)
-set(BUILD_MMAL_APPS FALSE)
+if (ALL_APPS)
+ set(BUILD_MMAL_APPS TRUE)
+else()
+ set(BUILD_MMAL_APPS FALSE)
+endif()
set(vmcs_root ${PROJECT_SOURCE_DIR})
get_filename_component(VIDEOCORE_ROOT . ABSOLUTE)
@@ -39,7 +43,7 @@ add_definitions(-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE)
# do we actually need this?
add_definitions(-D__VIDEOCORE4__)
-
+add_definitions(-DTV_SUPPORTED_MODE_NO_DEPRECATED)
# add_definitions(-DKHRONOS_CLIENT_LOGGING)
@@ -59,8 +63,10 @@ if(BUILD_MMAL)
include_directories(interface/mmal)
add_subdirectory(interface/mmal)
endif()
+if(BUILD_MMAL_APPS)
+ add_subdirectory(containers)
+endif()
-#add_subdirectory(containers)
add_subdirectory(middleware/openmaxil)
# 3d demo code
@@ -84,7 +90,9 @@ add_subdirectory(interface/usbdk)
# VMCS Host Applications
#add_subdirectory(host_applications/framework)
-#add_subdirectory(host_applications/vmcs)
+if(BUILD_MMAL_APPS)
+ add_subdirectory(host_applications/vmcs)
+endif()
# add_subdirectory(interface/vchiq/test/win32)
@@ -95,6 +103,10 @@ add_subdirectory(interface/usbdk)
# add linux apps
add_subdirectory(host_applications/linux)
+# Debug sym for mmal-vc-diag and vcdbg
+#add_subdirectory(host_applications/linux/libs/debug_sym)
+
+
set(vmcs_host_apps_VERSION_MAJOR 1)
set(vmcs_host_apps_VERSION_MINOR 0)
View
@@ -45,8 +45,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#elif defined(__BCM2708B0__)
/* 2708 b0 */
#define V3D_REVISION 2
+ #elif defined(__BCM2708C0__) || defined(__BCM2708C1__)
+ /* 2708 c0/1 */
+ #define V3D_REVISION 3
#else
- /* fiji */
+ /* capri */
#define V3D_REVISION 6
#endif
#endif
@@ -55,6 +55,7 @@ typedef enum {
METADATA_AGC_DEBUG = ('A'<<24)+('G'<<16)+('C'<<8)+('D'), // 'AGCD' struct ISP_TUNER_BRCM_AGC_DEBUG_T in /middleware/ISP/tuner/isp_tuner_agc.h
METADATA_FOCUS_REGION = ('F'<<24)+('R'<<16)+('G'<<8)+('N'), // 'FRGN' struct ISP_TUNER_BRCM_AF_STATISTICS_PARAMS_T in /middleware/ISP/tuner/isp_tuner_brcm_common.h
METADATA_FOCUS_WOI = ('F'<<24)+('W'<<16)+('O'<<8)+('I'), // 'FWOI' struct ISP_WOI_METADATA_T in /middleware/ISP/tuner/isp_tuner_ctrl.h
+ METADATA_FOCUS_CAF = ('F'<<24)+('C'<<16)+('A'<<8)+('F'), // 'FCAF' struct ISP_CAF_METADATA_T in /middleware/ISP/tuner/isp_tuner_ctrl.h
METADATA_AUTOFOCUS = ( 0 <<24)+( 0 <<16)+('A'<<8)+('F'), // '\x00\x00AF' struct ISP_AF_METADATA_T in /middleware/ISP/tuner/isp_tuner_ctrl.h
METADATA_EV = ('E'<<24)+('V'<<16)+('M'<<8)+('D'), // 'EVMD' struct ISP_TUNER_BRCM_EV_METADATA_T in /middleware/ISP/tuner/isp_tuner_brcm_common.h
METADATA_ISP = ('I'<<24)+('S'<<16)+('P'<<8)+('M'), // 'ISPM' struct ISP_ISP_METADATA_T in /middleware/ISP/tuner/isp_tuner_ctrl.h
@@ -64,7 +65,8 @@ typedef enum {
METADATA_SCENEDETECTION = ( 0 <<24)+('A'<<16)+('S'<<8)+('D'), // '\x00ASD' struct ASD_METADATA_T defined in /middleware/camplus/sw/asd_metadata.h
METADATA_TUNER_SYNC = ('S'<<24)+('Y'<<16)+('N'<<8)+('C'), // 'SYNC' NULL data, just adds the item header.
METADATA_DARK_FRAME_CORRECT = ('D'<<24)+('F'<<16)+('R'<<8)+('C'), // 'DFRC' 5 byte literal string "dfrc"
- METADATA_DARK_FRAME_SUB = ('D'<<24)+('F'<<16)+('S'<<8)+('B'), // 'DFSB' 3 byte literal string "on"
+ METADATA_DARK_FRAME_SUB = ('D'<<24)+('F'<<16)+('S'<<8)+('B'), // 'DFSB' 3 byte literal string "on"
+ METADATA_TUNER_DROP_FRAME = ('T'<<24)+('D'<<16)+('R'<<8)+('P'),
METADATA_ABL = ( 0 <<24)+('A'<<16)+('B'<<8)+('L'), // '\x00ABL' struct ISP_TUNER_BRCM_BLACK_LEVEL_ABL_T defined in /middleware/ISP/tuner/isp_tuner_brcm_black_level.h
METADATA_DRC = ( 0 <<24)+('D'<<16)+('R'<<8)+('C'), // 'DRC' struct DRC_METADATA_T defined in /middleware/camplus/sw/drc/drc.h
METADATA_REGISTRATION = ( 0 <<24)+('R'<<16)+('E'<<8)+('G'), // 'REG' struct REGISTRATION_OFFSETS_T defined in /middleware/camplus/sw/registration/registration.h
@@ -96,6 +98,10 @@ typedef enum {
METADATA_ACUTE_AWB_LOG = ('A'<<24)+('E'<<16)+('L'<<8)+('C'), // 'AELC' : ISP_ACUTE_AWB_LOG
METADATA_DF = ( 0 <<24)+( 0<<16)+('D'<<8)+('F'), // '\x00\x00DF' : DF_METADATA_T defined in /middleware/camplus/sw/df/df_metadata.h
METADATA_MAGIC_MEASURE = ('S'<<24)+('S'<<16)+('M'<<8) + ('M'), // 'SSMM' : A statistic from the ISP used to determine the JPEG quality setting for a certain customer.
+ METADATA_SNAPSHOT_JPEG_QUANTISER = ('S'<<24)+('S'<<16)+('J'<<8) + ('S'), // 'SSJQ' : The size of the snapshot frame when JPEG-encoded.
+
+ METADATA_SUPPLEMENTARY_INFO = ('S'<<24)+('U'<<16)+('P'<<8) + ('P'), // 'SUPP' : Supplimentary info defined in /codecs/video/hw/enc/venc_supplementary_info.h
+
METADATA_UNKNOWN = ('U'<<24)+('N'<<16)+('K'<<8)+('N') // 'UNKN'
} METADATA_CODE_T;
@@ -135,6 +135,7 @@ extern "C" {
VC_IMAGE_YUVINFO_CSC_SMPTE_240M = 5, /* Society of Motion Picture and Television Engineers 240M (1999) */
VC_IMAGE_YUVINFO_CSC_ITUR_BT470_2_M = 6, /* ITU-R BT.470-2 System M */
VC_IMAGE_YUVINFO_CSC_ITUR_BT470_2_BG = 7, /* ITU-R BT.470-2 System B,G */
+ VC_IMAGE_YUVINFO_CSC_JPEG_JFIF_Y16_255 = 8, /* JPEG JFIF, but with 16..255 luma */
VC_IMAGE_YUVINFO_CSC_CUSTOM = 15, /* Custom colour matrix follows header */
VC_IMAGE_YUVINFO_CSC_SMPTE_170M = VC_IMAGE_YUVINFO_CSC_ITUR_BT601,
@@ -157,7 +158,7 @@ extern "C" {
bits should be zero and enforce this in vc_image functions to catch people
who aren't initialising the VC_IMAGE_T structure nicely; update when other
bits are added */
-#define VC_IMAGE_INFO_VALIDBITS 0x9F07
+#define VC_IMAGE_INFO_VALIDBITS 0x9F0F
/* Define the bits of info used to denote the colourspace */
#define VC_IMAGE_INFO_COLOURSPACE 0x0F
@@ -40,7 +40,7 @@ int main( int argc, char **argv )
{
int instNum = 0;
VCHI_INSTANCE_T vchi_instance;
- VCHI_CONNECTION_T *vchi_connection;
+ VCHI_CONNECTION_T *vchi_connection = NULL;
if ( argc > 1 )
{
@@ -73,32 +73,33 @@ int main( int argc, char **argv )
{
int i = 1;
char buffer[ 1024 ];
+ size_t buffer_offset = 0;
clock_t before=0, after=0;
double time_diff;
uint32_t show_time = 0;
int ret;
//reset the string
- strcpy( buffer, "" );
+ buffer[0] = '\0';
//first, strip out a potential leading -t
if( strcmp( argv[1], "-t" ) == 0 )
{
show_time = 1;
i++;
- }
+ }
for (; i <= argc-1; i++)
{
- strcat( buffer, argv[i] );
- strcat( buffer, " " );
+ buffer_offset = vcos_safe_strcpy( buffer, argv[i], sizeof(buffer), buffer_offset );
+ buffer_offset = vcos_safe_strcpy( buffer, " ", sizeof(buffer), buffer_offset );
}
if( show_time )
before = clock();
//send the gencmd for the argument
- if (( ret = vc_gencmd_send( buffer )) != 0 )
+ if (( ret = vc_gencmd_send( "%s", buffer )) != 0 )
{
printf( "vc_gencmd_send returned %d\n", ret );
}
@@ -1,10 +1,9 @@
set(EXEC hello_tiger.bin)
-set(SRCS tiger.c main.c)
+set(SRCS main.c tiger.c)
+add_definitions(-D__RASPBERRYPI__)
add_executable(${EXEC} ${SRCS})
target_link_libraries(${EXEC} ${HELLO_PI_LIBS})
-add_definitions(-D__RASPBERRYPI__)
-
install(TARGETS ${EXEC}
RUNTIME DESTINATION bin)
Oops, something went wrong.

0 comments on commit 9852ce2

Please sign in to comment.