summaryrefslogtreecommitdiffstats
path: root/drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h
diff options
context:
space:
mode:
authorMichael Zoran <mzoran@crowfest.net>2017-03-09 21:08:50 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-03-10 10:12:09 +0100
commitad428fc0af2eed6f2fe7fa51a7ffca5746cef1a3 (patch)
tree520b6f57653ddde8d2192a32632f9a0b790c8be7 /drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h
parent4da14d5922e99dbbd609a85b18f84c32d1c27a57 (diff)
downloadop-kernel-dev-ad428fc0af2eed6f2fe7fa51a7ffca5746cef1a3.zip
op-kernel-dev-ad428fc0af2eed6f2fe7fa51a7ffca5746cef1a3.tar.gz
staging: bcm2835-camera: Create struct mmal_es_format_local to mirror struct mmal_es_format
The struct struct mmal_es_format is passed between the firmware which has pointers. A local version of mmal_es_format is also used. Luckly, the two versions are always memberwise copied from each other so simply have different structures for the local and msg versions. Signed-off-by: Michael Zoran <mzoran@crowfest.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h')
-rw-r--r--drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h29
1 files changed, 24 insertions, 5 deletions
diff --git a/drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h b/drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h
index 993de44..24b002e 100644
--- a/drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h
+++ b/drivers/staging/vc04_services/bcm2835-camera/mmal-msg-format.h
@@ -53,7 +53,7 @@ union mmal_es_specific_format {
};
/** Definition of an elementary stream format (MMAL_ES_FORMAT_T) */
-struct mmal_es_format {
+struct mmal_es_format_local {
u32 type; /* enum mmal_es_type */
u32 encoding; /* FourCC specifying encoding of the elementary stream.*/
@@ -62,10 +62,7 @@ struct mmal_es_format {
* stream.
*/
- union mmal_es_specific_format *es; /* TODO: pointers in
- * message serialisation?!?
- */
- /* Type specific
+ union mmal_es_specific_format *es; /* Type specific
* information for the
* elementary stream
*/
@@ -77,4 +74,26 @@ struct mmal_es_format {
u8 *extradata; /**< Codec specific data */
};
+/** Remote definition of an elementary stream format (MMAL_ES_FORMAT_T) */
+struct mmal_es_format {
+ u32 type; /* enum mmal_es_type */
+
+ u32 encoding; /* FourCC specifying encoding of the elementary stream.*/
+ u32 encoding_variant; /* FourCC specifying the specific
+ * encoding variant of the elementary
+ * stream.
+ */
+
+ u32 es; /* Type specific
+ * information for the
+ * elementary stream
+ */
+
+ u32 bitrate; /**< Bitrate in bits per second */
+ u32 flags; /**< Flags describing properties of the elementary stream. */
+
+ u32 extradata_size; /**< Size of the codec specific data */
+ u32 extradata; /**< Codec specific data */
+};
+
#endif /* MMAL_MSG_FORMAT_H */
OpenPOWER on IntegriCloud