ENUM V4L2_MBUS_FRAME_DESC_FLAGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum v4l2_mbus_frame_desc_flags πŸ’…

okay so bestie, welcome to the Kernel API Manual entry for enum v4l2_mbus_frame_desc_flags β€” yes that's a whole mouthful, yes it's giving "I typed this with my eyes closed", but stick with me because it's actually so good once you get it 🫢


✨ NAME ✨

enum v4l2_mbus_frame_desc_flags β€” media bus frame description flags. that's it, that's the whole name. flags that describe your frame. iconic behaviour, no notes πŸ’…


🌸 SYNOPSIS 🌸

here's the whole enum, exactly as it lives in the kernel, no cap:

enum v4l2_mbus_frame_desc_flags {
    V4L2_MBUS_FRAME_DESC_FL_LEN_MAX ,
    V4L2_MBUS_FRAME_DESC_FL_BLOB

};

two constants, that's the entire squad. short and iconic, honestly the way that this enum doesn't overstay its welcome 😌


πŸŽ€ Constants πŸŽ€

okay so these two are the whole personality of this enum, let's get into it:

  • V4L2_MBUS_FRAME_DESC_FL_LEN_MAX β€” this one's saying hey, the struct v4l2_mbus_frame_desc_entry->length field is specifying the maximum data length. it's a max, not an exact, so don't come for it πŸ™ˆ
  • V4L2_MBUS_FRAME_DESC_FL_BLOB β€” and this one's saying the format does not have line offsets, which means the receiver should use 1D DMA. literally a whole blob, no lines, just vibes and DMA 🌈

πŸ¦‹ SEE ALSO πŸ¦‹

bestie this list is long β€” like the extended family at a wedding. but every single one of them got an invite, so here they all are, in order, no skipping πŸ’–

the kernel file ./include/media/v4l2-subdev.h, plus:

struct v4l2_decode_vbi_line(9), enum v4l2_subdev_io_pin_bits(9), struct v4l2_subdev_io_pin_config(9), struct v4l2_subdev_core_ops(9), struct v4l2_subdev_tuner_ops(9), struct v4l2_subdev_audio_ops(9), struct v4l2_mbus_frame_desc_entry_csi2(9), struct v4l2_mbus_frame_desc_entry(9), enum v4l2_mbus_frame_desc_type(9), struct v4l2_mbus_frame_desc(9), enum v4l2_subdev_pre_streamon_flags(9), struct v4l2_subdev_video_ops(9), struct v4l2_subdev_vbi_ops(9), struct v4l2_subdev_sensor_ops(9), enum v4l2_subdev_ir_mode(9), struct v4l2_subdev_ir_parameters(9), struct v4l2_subdev_ir_ops(9), struct v4l2_subdev_pad_config(9), struct v4l2_subdev_stream_configs(9), struct v4l2_subdev_krouting(9), struct v4l2_subdev_state(9), struct v4l2_subdev_pad_ops(9), struct v4l2_subdev_ops(9), struct v4l2_subdev_internal_ops(9), struct v4l2_subdev_platform_data(9), struct v4l2_subdev(9), media_entity_to_v4l2_subdev(9), vdev_to_v4l2_subdev(9), struct v4l2_subdev_fh(9), to_v4l2_subdev_fh(9), v4l2_set_subdevdata(9), v4l2_get_subdevdata(9), v4l2_set_subdev_hostdata(9), v4l2_get_subdev_hostdata(9), v4l2_subdev_get_fwnode_pad_1_to_1(9), v4l2_subdev_link_validate_default(9), v4l2_subdev_link_validate(9), v4l2_subdev_has_pad_interdep(9), __v4l2_subdev_state_alloc(9), __v4l2_subdev_state_free(9), v4l2_subdev_init_finalize(9), v4l2_subdev_cleanup(9), v4l2_subdev_state_get_format(9), v4l2_subdev_state_get_crop(9), v4l2_subdev_state_get_compose(9), v4l2_subdev_state_get_interval(9), v4l2_subdev_get_fmt(9), v4l2_subdev_get_frame_interval(9), v4l2_subdev_set_routing(9), for_each_active_route(9), v4l2_subdev_set_routing_with_fmt(9), v4l2_subdev_routing_find_opposite_end(9), v4l2_subdev_state_get_opposite_stream_format(9), v4l2_subdev_state_xlate_streams(9), enum v4l2_subdev_routing_restriction(9), v4l2_subdev_routing_validate(9), v4l2_subdev_enable_streams(9), v4l2_subdev_disable_streams(9), v4l2_subdev_s_stream_helper(9), __v4l2_subdev_get_frame_desc_passthrough(9), v4l2_subdev_get_frame_desc_passthrough(9), v4l2_subdev_lock_state(9), v4l2_subdev_unlock_state(9), v4l2_subdev_lock_states(9), v4l2_subdev_unlock_states(9), v4l2_subdev_get_unlocked_active_state(9), v4l2_subdev_get_locked_active_state(9), v4l2_subdev_lock_and_get_active_state(9), v4l2_subdev_init(9), v4l2_subdev_call(9), v4l2_subdev_call_state_active(9), v4l2_subdev_call_state_try(9), v4l2_subdev_has_op(9), v4l2_subdev_notify_event(9), v4l2_subdev_is_streaming(9).

fr fr, if you made it to the end of that list you deserve a little treat πŸ“

and that's the whole page, bestie β€” mwah πŸ’‹ this one came from ./include/media and it's dated October 2026, so yeah, it's from the future and it still slays. go forth and describe your frames πŸ’…βœ¨

πŸ“¦ where this page comes from