}
/* ------------------------------------------------------------------
- Videobuf queue operations
- ------------------------------------------------------------------*/
+ * Videobuf queue operations
+ * ------------------------------------------------------------------
+ */
static int queue_setup(struct vb2_queue *vq,
unsigned int *nbuffers, unsigned int *nplanes,
};
/* ------------------------------------------------------------------
- IOCTL operations
- ------------------------------------------------------------------*/
+ * IOCTL operations
+ * ------------------------------------------------------------------
+ */
static int set_overlay_params(struct bm2835_mmal_dev *dev,
struct vchiq_mmal_port *port)
struct v4l2_framebuffer *a)
{
/* The video overlay must stay within the framebuffer and can't be
- positioned independently. */
+ * positioned independently.
+ */
struct bm2835_mmal_dev *dev = video_drvdata(file);
struct vchiq_mmal_port *preview_port =
&dev->component[MMAL_COMPONENT_CAMERA]->
}
/* If the format is unsupported v4l2 says we should switch to
- * a supported one and not return an error. */
+ * a supported one and not return an error.
+ */
mfmt = get_format(f);
if (!mfmt) {
v4l2_dbg(1, bcm2835_v4l2_debug, &dev->v4l2_dev,
.vidioc_qbuf = vb2_ioctl_qbuf,
.vidioc_dqbuf = vb2_ioctl_dqbuf,
/* Remove this function ptr to fix gstreamer bug
- .vidioc_enum_framesizes = vidioc_enum_framesizes, */
+ * .vidioc_enum_framesizes = vidioc_enum_framesizes,
+ */
.vidioc_enum_frameintervals = vidioc_enum_frameintervals,
.vidioc_g_parm = vidioc_g_parm,
.vidioc_s_parm = vidioc_s_parm,
};
/* ------------------------------------------------------------------
- Driver init/finalise
- ------------------------------------------------------------------*/
+ * Driver init/finalise
+ * ------------------------------------------------------------------
+ */
static const struct v4l2_file_operations camera0_fops = {
.owner = THIS_MODULE,
u32 id; /* v4l2 control identifier */
enum bm2835_mmal_ctrl_type type;
/* control minimum value or
- * mask for MMAL_CONTROL_TYPE_STD_MENU */
+ * mask for MMAL_CONTROL_TYPE_STD_MENU
+ */
s32 min;
s32 max; /* maximum value of control */
s32 def; /* default value of control */
break;
/* todo matrix weighting not added to Linux API till 3.9
- case V4L2_EXPOSURE_METERING_MATRIX:
- dev->metering_mode = MMAL_PARAM_EXPOSUREMETERINGMODE_MATRIX;
- break;
- */
+ * case V4L2_EXPOSURE_METERING_MATRIX:
+ * dev->metering_mode = MMAL_PARAM_EXPOSUREMETERINGMODE_MATRIX;
+ * break;
+ */
}
if (dev->scene_mode == V4L2_SCENE_MODE_NONE) {
false
},
/* {
- 0, MMAL_CONTROL_TYPE_CLUSTER, 3, 1, 0, NULL, 0, NULL
- }, */
+ * 0, MMAL_CONTROL_TYPE_CLUSTER, 3, 1, 0, NULL, 0, NULL
+ * },
+ */
{
V4L2_CID_EXPOSURE_AUTO, MMAL_CONTROL_TYPE_STD_MENU,
~0x03, 3, V4L2_EXPOSURE_AUTO, 0, NULL,
false
},
/* todo this needs mixing in with set exposure
- {
- V4L2_CID_SCENE_MODE, MMAL_CONTROL_TYPE_STD_MENU,
- },
+ * {
+ * V4L2_CID_SCENE_MODE, MMAL_CONTROL_TYPE_STD_MENU,
+ * },
*/
{
V4L2_CID_EXPOSURE_ABSOLUTE, MMAL_CONTROL_TYPE_STD,
#define MMAL_PORT_CAPABILITY_PASSTHROUGH 0x01
/** The port wants to allocate the buffer payloads.
* This signals a preference that payload allocation should be done
- * on this port for efficiency reasons. */
+ * on this port for efficiency reasons.
+ */
#define MMAL_PORT_CAPABILITY_ALLOCATION 0x02
/** The port supports format change events.
* This applies to input ports and is used to let the client know
* whether the port supports being reconfigured via a format
- * change event (i.e. without having to disable the port). */
+ * change event (i.e. without having to disable the port).
+ */
#define MMAL_PORT_CAPABILITY_SUPPORTS_EVENT_FORMAT_CHANGE 0x04
/* mmal port structure (MMAL_PORT_T)
/* reply from VC to component creation request */
struct mmal_msg_component_create_reply {
- u32 status; /** enum mmal_msg_status - how does this differ to
- * the one in the header?
- */
+ u32 status; /* enum mmal_msg_status - how does this differ to
+ * the one in the header?
+ */
u32 component_handle; /* VideoCore handle for component */
u32 input_num; /* Number of input ports */
u32 output_num; /* Number of output ports */
/** Signals that the current payload is a keyframe (i.e. self decodable) */
#define MMAL_BUFFER_HEADER_FLAG_KEYFRAME (1<<3)
/** Signals a discontinuity in the stream of data (e.g. after a seek).
- * Can be used for instance by a decoder to reset its state */
+ * Can be used for instance by a decoder to reset its state
+ */
#define MMAL_BUFFER_HEADER_FLAG_DISCONTINUITY (1<<4)
/** Signals a buffer containing some kind of config data for the component
- * (e.g. codec config data) */
+ * (e.g. codec config data)
+ */
#define MMAL_BUFFER_HEADER_FLAG_CONFIG (1<<5)
/** Signals an encrypted payload */
#define MMAL_BUFFER_HEADER_FLAG_ENCRYPTED (1<<6)
};
struct mmal_msg_port_parameter_set_reply {
- u32 status; /** enum mmal_msg_status todo: how does this
- * differ to the one in the header?
- */
+ u32 status; /* enum mmal_msg_status todo: how does this
+ * differ to the one in the header?
+ */
};
/* port parameter getting */
/* ------------------------------------------------------------------
* Exported API
- *------------------------------------------------------------------*/
+ *------------------------------------------------------------------
+ */
int vchiq_mmal_port_set_format(struct vchiq_mmal_instance *instance,
struct vchiq_mmal_port *port)
int vchiq_mmal_finalise(struct vchiq_mmal_instance *instance);
/* Initialise a mmal component and its ports
-*
-*/
+ *
+ */
int vchiq_mmal_component_init(
struct vchiq_mmal_instance *instance,
const char *name,