Skip to content

Commit d3ada6f

Browse files
author
Dom Cobley
committed
Update master branch to next
1 parent 7beaaff commit d3ada6f

File tree

2,874 files changed

+104336
-155502
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,874 files changed

+104336
-155502
lines changed

boot/bootcode.bin

0 Bytes
Binary file not shown.

boot/fixup.dat

412 Bytes
Binary file not shown.

boot/fixup_cd.dat

222 Bytes
Binary file not shown.

boot/kernel.img

86.2 KB
Binary file not shown.

boot/kernel_cutdown.img

-2.01 MB
Binary file not shown.

boot/kernel_emergency.img

79.5 KB
Binary file not shown.

boot/start.elf

175 KB
Binary file not shown.

boot/start_cd.elf

39 KB
Binary file not shown.

extra/Module.symvers

Lines changed: 5501 additions & 5315 deletions
Large diffs are not rendered by default.

extra/Module_cutdown.symvers

Lines changed: 0 additions & 5793 deletions
This file was deleted.

extra/Module_emergency.symvers

Lines changed: 4386 additions & 4155 deletions
Large diffs are not rendered by default.

extra/System.map

Lines changed: 39888 additions & 38502 deletions
Large diffs are not rendered by default.

extra/System_cutdown.map

Lines changed: 0 additions & 34108 deletions
This file was deleted.

extra/System_emergency.map

Lines changed: 42017 additions & 40585 deletions
Large diffs are not rendered by default.

extra/git_hash

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
ada8b4415ff44d535d63e4291a0eca733bc2ad0f
1+
f7aef7a72c32631b8300af33c44ba3a3421b3c0c

hardfp/opt/vc/bin/edidparser

-62 Bytes
Binary file not shown.

hardfp/opt/vc/bin/tvservice

8.39 KB
Binary file not shown.

hardfp/opt/vc/bin/vcdbg

1.49 KB
Binary file not shown.

hardfp/opt/vc/bin/vcgencmd

63 Bytes
Binary file not shown.

hardfp/opt/vc/bin/vchiq_test

851 Bytes
Binary file not shown.

hardfp/opt/vc/include/IL/OMX_Broadcom.h

Lines changed: 83 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1433,20 +1433,20 @@ IDLE, then taken back to LOADED, the profile increased and the
14331433
component taken back to IDLE.
14341434
*/
14351435

1436-
typedef enum OMX_PARAM_CAMERAUSECASE {
1436+
typedef enum OMX_CONFIG_CAMERAUSECASE {
14371437
OMX_CameraUseCaseAuto,
14381438
OMX_CameraUseCaseVideo,
14391439
OMX_CameraUseCaseStills,
14401440
OMX_CameraUseCaseKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
14411441
OMX_CameraUseCaseVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
14421442
OMX_CameraUseCaseMax = 0x7FFFFFFF
1443-
} OMX_PARAM_CAMERAUSECASE;
1443+
} OMX_CONFIG_CAMERAUSECASE;
14441444

1445-
typedef struct OMX_PARAM_CAMERAUSECASETYPE {
1445+
typedef struct OMX_CONFIG_CAMERAUSECASETYPE {
14461446
OMX_U32 nSize;
14471447
OMX_VERSIONTYPE nVersion;
1448-
OMX_PARAM_CAMERAUSECASE eUseCase;
1449-
} OMX_PARAM_CAMERAUSECASETYPE;
1448+
OMX_CONFIG_CAMERAUSECASE eUseCase;
1449+
} OMX_CONFIG_CAMERAUSECASETYPE;
14501450

14511451
/* OMX_IndexParamBrcmDisableProprietaryTunnels: Disabling proprietary tunnelling */
14521452
typedef struct OMX_PARAM_BRCMDISABLEPROPRIETARYTUNNELSTYPE {
@@ -2165,15 +2165,38 @@ typedef enum OMX_COLORSPACETYPE
21652165
OMX_COLORSPACE_JPEG_JFIF,
21662166
OMX_COLORSPACE_ITU_R_BT601,
21672167
OMX_COLORSPACE_ITU_R_BT709,
2168+
OMX_COLORSPACE_FCC,
2169+
OMX_COLORSPACE_SMPTE240M,
2170+
OMX_COLORSPACE_BT470_2_M,
2171+
OMX_COLORSPACE_BT470_2_BG,
2172+
OMX_COLORSPACE_JFIF_Y16_255,
21682173
OMX_COLORSPACE_MAX = 0x7FFFFFFF
21692174
} OMX_COLORSPACETYPE;
21702175

21712176
typedef struct OMX_PARAM_COLORSPACETYPE
21722177
{
21732178
OMX_U32 nSize;
21742179
OMX_VERSIONTYPE nVersion;
2180+
OMX_U32 nPortIndex;
21752181
OMX_COLORSPACETYPE eColorSpace;
21762182
} OMX_PARAM_COLORSPACETYPE;
2183+
2184+
typedef enum OMX_CAPTURESTATETYPE
2185+
{
2186+
OMX_NotCapturing,
2187+
OMX_CaptureStarted,
2188+
OMX_CaptureComplete,
2189+
OMX_CaptureMax = 0x7FFFFFFF
2190+
} OMX_CAPTURESTATETYPE;
2191+
2192+
typedef struct OMX_PARAM_CAPTURESTATETYPE
2193+
{
2194+
OMX_U32 nSize;
2195+
OMX_VERSIONTYPE nVersion;
2196+
OMX_U32 nPortIndex;
2197+
OMX_CAPTURESTATETYPE eCaptureState;
2198+
} OMX_PARAM_CAPTURESTATETYPE;
2199+
21772200
/*
21782201
Provides information on the colour space that's in use during image/video processing.
21792202
*/
@@ -2213,5 +2236,60 @@ This control can be used to control whether loadable modules used a dedicated me
22132236
pool or use heap allocated memory.
22142237
*/
22152238

2239+
typedef struct OMX_PARAM_BRCMCONFIGFILETYPE {
2240+
OMX_U32 nSize; /**< size of the structure in bytes, including
2241+
actual URI name */
2242+
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
2243+
OMX_U32 fileSize; /**< Size of complete file data */
2244+
} OMX_PARAM_BRCMCONFIGFILETYPE;
2245+
2246+
typedef struct OMX_PARAM_BRCMCONFIGFILECHUNKTYPE {
2247+
OMX_U32 nSize; /**< size of the structure in bytes, including
2248+
actual chunk data */
2249+
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
2250+
OMX_U32 size; /**< Number of bytes being transferred in this chunk */
2251+
OMX_U32 offset; /**< Offset of this chunk in the file */
2252+
OMX_U8 data[1]; /**< Chunk data */
2253+
} OMX_PARAM_BRCMCONFIGFILECHUNKTYPE;
2254+
2255+
typedef struct OMX_PARAM_BRCMFRAMERATERANGETYPE {
2256+
OMX_U32 nSize; /**< size of the structure in bytes, including
2257+
actual chunk data */
2258+
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
2259+
OMX_U32 nPortIndex;
2260+
OMX_U32 xFramerateLow; /**< Low end of framerate range. Q16 format */
2261+
OMX_U32 xFramerateHigh; /**< High end of framerate range. Q16 format */
2262+
} OMX_PARAM_BRCMFRAMERATERANGETYPE;
2263+
2264+
typedef struct OMX_PARAM_S32TYPE {
2265+
OMX_U32 nSize; /**< Size of this structure, in Bytes */
2266+
OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
2267+
OMX_U32 nPortIndex; /**< port that this structure applies to */
2268+
OMX_S32 nS32; /**< S32 value */
2269+
} OMX_PARAM_S32TYPE;
2270+
2271+
typedef struct OMX_PARAM_BRCMVIDEODRMPROTECTBUFFERTYPE
2272+
{
2273+
OMX_U32 nSize;
2274+
OMX_VERSIONTYPE nVersion;
2275+
2276+
OMX_U32 size_wanted; /**< Input. Zero size means internal video decoder buffer,
2277+
mem_handle and phys_addr not returned in this case */
2278+
OMX_U32 protect; /**< Input. 1 = protect, 0 = unprotect */
2279+
2280+
OMX_U32 mem_handle; /**< Output. Handle for protected buffer */
2281+
OMX_PTR phys_addr; /**< Output. Physical memory address of protected buffer */
2282+
} OMX_PARAM_BRCMVIDEODRMPROTECTBUFFERTYPE;
2283+
2284+
typedef struct OMX_CONFIG_ZEROSHUTTERLAGTYPE
2285+
{
2286+
OMX_U32 nSize;
2287+
OMX_VERSIONTYPE nVersion;
2288+
2289+
OMX_U32 bZeroShutterMode; /**< Select ZSL mode from the camera. */
2290+
OMX_U32 bConcurrentCapture; /**< Perform concurrent captures for full ZSL. */
2291+
2292+
} OMX_CONFIG_ZEROSHUTTERLAGTYPE;
2293+
22162294
#endif
22172295
/* File EOF */

hardfp/opt/vc/include/IL/OMX_IVCommon.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,9 @@ typedef enum OMX_COLOR_FORMATTYPE {
139139
OMX_COLOR_FormatYUVUV128,
140140
OMX_COLOR_FormatRawBayer12bit,
141141
OMX_COLOR_FormatBRCMEGL,
142+
OMX_COLOR_FormatBRCMOpaque,
143+
OMX_COLOR_FormatYVU420PackedPlanar,
144+
OMX_COLOR_FormatYVU420PackedSemiPlanar,
142145
OMX_COLOR_FormatMax = 0x7FFFFFFF
143146
} OMX_COLOR_FORMATTYPE;
144147

@@ -205,6 +208,7 @@ typedef enum OMX_IMAGEFILTERTYPE {
205208
OMX_ImageFilterColourPoint,
206209
OMX_ImageFilterPosterise,
207210
OMX_ImageFilterColourBalance,
211+
OMX_ImageFilterCartoon,
208212

209213
OMX_ImageFilterMax = 0x7FFFFFFF
210214
} OMX_IMAGEFILTERTYPE;
@@ -1029,6 +1033,8 @@ typedef enum OMX_FOCUSSTATUSTYPE {
10291033
OMX_FocusStatusLost,
10301034
OMX_FocusStatusKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
10311035
OMX_FocusStatusVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
1036+
OMX_FocusStatusCafWatching,
1037+
OMX_FocusStatusCafSceneChanged,
10321038
OMX_FocusStatusMax = 0x7FFFFFFF
10331039
} OMX_FOCUSSTATUSTYPE;
10341040

hardfp/opt/vc/include/IL/OMX_Image.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,13 @@ typedef enum OMX_IMAGE_FOCUSCONTROLTYPE {
205205
OMX_IMAGE_FocusControlNearFixed, /* Focus at a fixed near focus point - (50cm-1m) */
206206
OMX_IMAGE_FocusControlAutoNear, /* CF over a near range (eg 0-200cm) */
207207
OMX_IMAGE_FocusControlAutoLockNear, /* AF over a near range (eg 0-200cm) */
208+
OMX_IMAGE_FocusControlInfinityFixed, /* Focus at infinity */
209+
OMX_IMAGE_FocusControlMacroFixed, /* Focus at a macro distance */
210+
OMX_IMAGE_FocusControlAutoFast, /* CF over a full range with fast response */
211+
OMX_IMAGE_FocusControlAutoMacroFast, /* CF over a macro range (eg 0-50cm) with fast response */
212+
OMX_IMAGE_FocusControlAutoNearFast, /* CF over a near range (eg 0-200cm) */
213+
OMX_IMAGE_FocusControlAutoInfinityFast, /* CF over distant range (eg 50cm to infinity) with fast response */
214+
OMX_IMAGE_FocusControlCurrentFixed, /* Stop the lens at the current position */
208215
OMX_IMAGE_FocusControlMax = 0x7FFFFFFF
209216
} OMX_IMAGE_FOCUSCONTROLTYPE;
210217

hardfp/opt/vc/include/IL/OMX_Index.h

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ typedef enum OMX_INDEXTYPE {
351351
OMX_IndexConfigBrcmVideoEncoderMBRowsPerSlice, /**< reference: OMX_PARAM_U32TYPE */
352352
OMX_IndexParamCameraAFAssistDeviceNumber_Deprecated, /**< reference: OMX_PARAM_U32TYPE */
353353
OMX_IndexParamCameraPrivacyIndicatorDeviceNumber_Deprecated, /**< reference: OMX_PARAM_U32TYPE */
354-
OMX_IndexParamCameraUseCase, /**< reference: OMX_PARAM_CAMERAUSECASETYPE */
354+
OMX_IndexConfigCameraUseCase, /**< reference: OMX_CONFIG_CAMERAUSECASETYPE */
355355
OMX_IndexParamBrcmDisableProprietaryTunnels, /**< reference: OMX_PARAM_BRCMDISABLEPROPRIETARYTUNNELSTYPE */
356356
OMX_IndexParamBrcmOutputBufferSize, /**< reference: OMX_PARAM_BRCMOUTPUTBUFFERSIZETYPE */
357357
OMX_IndexParamBrcmRetainMemory, /**< reference: OMX_PARAM_BRCMRETAINMEMORYTYPE */
@@ -469,9 +469,32 @@ typedef enum OMX_INDEXTYPE {
469469

470470
// 0x7f0000c0
471471
OMX_IndexParamBrcmVideoRCSliceDQuant, /**< reference: OMX_PARAM_U32TYPE */
472-
OMX_IndexConfigBrcmVideoH264UseCABAC, /**< reference: OMX_CONFIG_BOOLEANTYPE */
472+
OMX_IndexParamBrcmVideoFrameLimitBits, /**< reference: OMX_PARAM_U32TYPE */
473+
OMX_IndexParamBrcmVideoPeakRate, /**< reference: OMX_PARAM_U32TYPE */
474+
OMX_IndexConfigBrcmVideoH264DisableCABAC, /**< reference: OMX_CONFIG_BOOLEANTYPE */
473475
OMX_IndexConfigBrcmVideoH264LowLatency, /**< reference: OMX_CONFIG_BOOLEANTYPE */
476+
OMX_IndexConfigBrcmVideoH264AUDelimiters, /**< reference: OMX_CONFIG_BOOLEANTYPE */
474477
OMX_IndexConfigBrcmVideoH264DeblockIDC, /**< reference: OMX_PARAM_U32TYPE */
478+
OMX_IndexConfigBrcmVideoH264IntraMBMode, /**< reference: OMX_PARAM_U32TYPE */
479+
OMX_IndexConfigContrastEnhance, /**< reference: OMX_CONFIG_BOOLEANTYPE */
480+
OMX_IndexParamCameraCustomSensorConfig, /**< reference: OMX_PARAM_U32TYPE */
481+
OMX_IndexParamBrcmHeaderOnOpen, /**< reference: OMX_CONFIG_BOOLEANTYPE */
482+
OMX_IndexConfigBrcmUseRegisterFile, /**< reference: OMX_CONFIG_BOOLEANTYPE */
483+
OMX_IndexConfigBrcmRegisterFileFailFatal, /**< reference: OMX_CONFIG_BOOLEANTYPE */
484+
OMX_IndexParamBrcmConfigFileRegisters, /**< reference: OMX_CONFIG_CONFIGFILETYPE */
485+
OMX_IndexParamBrcmConfigFileChunkRegisters,/**< reference: OMX_CONFIG_CONFIGFILECHUNKTYPE */
486+
OMX_IndexParamBrcmAttachLog, /**< reference: OMX_CONFIG_BOOLEANTYPE */
487+
488+
// 0x7f0000d0
489+
OMX_IndexParamCameraZeroShutterLag, /**< reference: OMX_CONFIG_ZEROSHUTTERLAGTYPE */
490+
OMX_IndexParamBrcmFpsRange, /**< reference: OMX_PARAM_BRCMFRAMERATERANGETYPE */
491+
OMX_IndexParamCaptureExposureCompensation, /**< reference: OMX_PARAM_S32TYPE */
492+
OMX_IndexParamBrcmVideoPrecodeForQP, /**< reference: OMX_CONFIG_BOOLEANTYPE */
493+
OMX_IndexParamBrcmVideoTimestampFifo, /**< reference: OMX_CONFIG_BOOLEANTYPE */
494+
OMX_IndexParamSWSharpenDisable, /**< reference: OMX_CONFIG_BOOLEANTYPE */
495+
OMX_IndexConfigBrcmFlashRequired, /**< reference: OMX_CONFIG_BOOLEANTYPE */
496+
OMX_IndexParamBrcmVideoDrmProtectBuffer, /**< reference: OMX_PARAM_BRCMVIDEODRMPROTECTBUFFERTYPE */
497+
OMX_IndexParamSWSaturationDisable, /**< reference: OMX_CONFIG_BOOLEANTYPE */
475498

476499
// 0x7f0000f0
477500
OMX_IndexConfigBrcmAudioDownmixCoefficients = 0x7f0000f0, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS */

hardfp/opt/vc/include/IL/OMX_Video.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -297,14 +297,13 @@ typedef struct OMX_VIDEO_PARAM_MOTIONVECTORTYPE {
297297
* Enumeration of possible methods to use for Intra Refresh
298298
*/
299299
typedef enum OMX_VIDEO_INTRAREFRESHTYPE {
300-
OMX_VIDEO_IntraRefreshNone = 0, /**< No Intra refresh*/
301-
OMX_VIDEO_IntraRefreshCyclic = 1, /**< Cyclic intra refresh, bit 0 is set*/
302-
OMX_VIDEO_IntraRefreshAdaptive = 2, /**< Adaptive intra refresh, bit 1 is set*/
303-
OMX_VIDEO_IntraRefreshBoth = 3, /**< Cyclic + Adaptive intra refresh (no mrows since bit 2 is off)*/
304-
OMX_VIDEO_IntraRefreshCyclicMrows = 5, /**< Cyclic intra refresh, multiple rows at a time bits 0 and 2 are set*/
305-
OMX_VIDEO_IntraRefreshPseudoRand = 8, /**< Psuedo random intra refresh, uses bit 3*/
300+
OMX_VIDEO_IntraRefreshCyclic, /**< Cyclic intra refresh, bit 0 is set*/
301+
OMX_VIDEO_IntraRefreshAdaptive, /**< Adaptive intra refresh, bit 1 is set*/
302+
OMX_VIDEO_IntraRefreshBoth, /**< Cyclic + Adaptive intra refresh (no mrows since bit 2 is off)*/
306303
OMX_VIDEO_IntraRefreshKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
307304
OMX_VIDEO_IntraRefreshVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
305+
OMX_VIDEO_IntraRefreshCyclicMrows, /**< Cyclic intra refresh, multiple rows at a time bits 0 and 2 are set*/
306+
OMX_VIDEO_IntraRefreshPseudoRand, /**< Psuedo random intra refresh, uses bit 3*/
308307
OMX_VIDEO_IntraRefreshMax = 0x7FFFFFFF
309308
} OMX_VIDEO_INTRAREFRESHTYPE;
310309

@@ -785,6 +784,7 @@ typedef enum OMX_VIDEO_AVCPROFILETYPE {
785784
OMX_VIDEO_AVCProfileHigh10 = 0x10, /**< High 10 profile */
786785
OMX_VIDEO_AVCProfileHigh422 = 0x20, /**< High 4:2:2 profile */
787786
OMX_VIDEO_AVCProfileHigh444 = 0x40, /**< High 4:4:4 profile */
787+
OMX_VIDEO_AVCProfileConstrainedBaseline = 0x80, /**< Constrained Baseline Profile */
788788
OMX_VIDEO_AVCProfileKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
789789
OMX_VIDEO_AVCProfileVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
790790
OMX_VIDEO_AVCProfileMax = 0x7FFFFFFF

hardfp/opt/vc/include/interface/vchi/connections/connection.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2525
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2626
*/
2727

28+
/*
29+
* \file
30+
*
31+
* \brief Contains the protypes for the interface functions.
32+
*/
33+
2834
#ifndef CONNECTION_H_
2935
#define CONNECTION_H_
3036

hardfp/opt/vc/include/interface/vchi/message_drivers/message.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2525
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2626
*/
2727

28+
// MPHI videocore message driver
29+
2830
#ifndef _VCHI_MESSAGE_H_
2931
#define _VCHI_MESSAGE_H_
3032

hardfp/opt/vc/include/interface/vchi/vchi.h

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2525
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2626
*/
2727

28+
// Contains the protypes for the vchi functions.
29+
2830
#ifndef VCHI_H_
2931
#define VCHI_H_
3032

@@ -39,6 +41,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3941
Global defs
4042
*****************************************************************************/
4143

44+
#define VCHI_SERVICE_HANDLE_INVALID 0
45+
4246
#define VCHI_BULK_ROUND_UP(x) ((((unsigned long)(x))+VCHI_BULK_ALIGN-1) & ~(VCHI_BULK_ALIGN-1))
4347
#define VCHI_BULK_ROUND_DOWN(x) (((unsigned long)(x)) & ~(VCHI_BULK_ALIGN-1))
4448
#define VCHI_BULK_ALIGN_NBYTES(x) (VCHI_BULK_ALIGNED(x) ? 0 : (VCHI_BULK_ALIGN - ((unsigned long)(x) & (VCHI_BULK_ALIGN-1))))
@@ -49,6 +53,13 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4953
#define VCHI_BULK_ALIGNED(x) (((unsigned long)(x) & (VCHI_BULK_ALIGN-1)) == 0)
5054
#endif
5155

56+
typedef struct
57+
{
58+
uint32_t version;
59+
uint32_t version_min;
60+
} VCHI_VERSION_T;
61+
#define VCHI_VERSION(v_) { v_, v_ }
62+
#define VCHI_VERSION_EX(v_,m_) { v_, m_ }
5263

5364
typedef enum
5465
{
@@ -113,6 +124,7 @@ typedef struct
113124

114125
// structure used to provide the information needed to open a server or a client
115126
typedef struct {
127+
VCHI_VERSION_T version;
116128
vcos_fourcc_t service_id;
117129
VCHI_CONNECTION_T *connection;
118130
uint32_t rx_fifo_size;
@@ -128,7 +140,7 @@ typedef struct {
128140
typedef struct opaque_vchi_instance_handle_t *VCHI_INSTANCE_T;
129141

130142
// Opaque handle for a server or client
131-
typedef struct opaque_vchi_service_handle_t *VCHI_SERVICE_HANDLE_T;
143+
typedef unsigned int VCHI_SERVICE_HANDLE_T;
132144

133145
// Service registration & startup
134146
typedef void (*VCHI_SERVICE_INIT)(VCHI_INSTANCE_T initialise_instance, VCHI_CONNECTION_T **connections, uint32_t num_connections);
@@ -190,6 +202,9 @@ extern int32_t vchi_service_open( VCHI_INSTANCE_T instance_handle,
190202
SERVICE_CREATION_T *setup,
191203
VCHI_SERVICE_HANDLE_T *handle);
192204

205+
extern int32_t vchi_get_peer_version( const VCHI_SERVICE_HANDLE_T handle,
206+
short *peer_version );
207+
193208
// Routine to close a named service
194209
extern int32_t vchi_service_close( const VCHI_SERVICE_HANDLE_T handle );
195210

hardfp/opt/vc/include/interface/vchi/vchi_cfg.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2525
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2626
*/
2727

28+
// Contains the #defines for the number of servers / clients etc, these can be
29+
// over-ridden from the platform makefile if needed
30+
31+
2832
#ifndef VCHI_CFG_H_
2933
#define VCHI_CFG_H_
3034

hardfp/opt/vc/include/interface/vchi/vchi_cfg_internal.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2424
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
2525
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2626
*/
27+
2728
#ifndef VCHI_CFG_INTERNAL_H_
2829
#define VCHI_CFG_INTERNAL_H_
2930

hardfp/opt/vc/include/interface/vchi/vchi_common.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2525
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2626
*/
2727

28+
// Contains global defs used by submodules within vchi
29+
2830
#ifndef VCHI_COMMON_H_
2931
#define VCHI_COMMON_H_
3032

hardfp/opt/vc/include/interface/vchiq_arm/vchiq_cfg.h

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,17 +23,19 @@ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
2323
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2424
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
2525
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26-
*/
26+
*/
2727

2828
#ifndef VCHIQ_CFG_H
2929
#define VCHIQ_CFG_H
3030

31-
#define VCHIQ_MAGIC VCHIQ_MAKE_FOURCC('V','C','H','I')
31+
#define VCHIQ_MAGIC VCHIQ_MAKE_FOURCC('V', 'C', 'H', 'I')
3232
/* The version of VCHIQ - change with any non-trivial change */
33-
#define VCHIQ_VERSION 2
34-
/* The minimum compatible version - update to match VCHIQ_VERSION with any incompatible change */
35-
#define VCHIQ_VERSION_MIN 2
33+
#define VCHIQ_VERSION 5
34+
/* The minimum compatible version - update to match VCHIQ_VERSION with any
35+
** incompatible change */
36+
#define VCHIQ_VERSION_MIN 3
3637

38+
#define VCHIQ_MAX_STATES 2
3739
#define VCHIQ_MAX_SERVICES 4096
3840
#define VCHIQ_MAX_SLOTS 128
3941
#define VCHIQ_MAX_SLOTS_PER_SIDE 64

0 commit comments

Comments
 (0)