ENUM V4L2_MBUS_FRAME_DESC_TYPE(9)
πΈ enum v4l2_mbus_frame_desc_type(9) πΈ
okay bestie, this is a page from the Kernel API Manual, and it's honestly such a tiny icon β it's just an enum that tells you what kind of media bus a frame description is talking about. Like, it's giving "hello, which bus are you" energy. Let's get into it π
β¨ NAME β¨
enum v4l2_mbus_frame_desc_type β the media bus frame description type, aka the little label that says what kind of bus we're on π¦
β¨ SYNOPSIS β¨
enum v4l2_mbus_frame_desc_type {
V4L2_MBUS_FRAME_DESC_TYPE_UNDEFINED ,
V4L2_MBUS_FRAME_DESC_TYPE_PARALLEL ,
V4L2_MBUS_FRAME_DESC_TYPE_CSI2
};
like, that's the whole vibe. three constants, no cap π
β¨ Constants β¨
V4L2_MBUS_FRAME_DESC_TYPE_UNDEFINEDβ the undefined frame desc type, aka the "we don't know her" option π. Drivers should not use this one β nope, not even a little β it's purely there for backwards compatibility. It's legacy energy, don't touch it π«ΆV4L2_MBUS_FRAME_DESC_TYPE_PARALLELβ parallel media bus. that's it, that's the whole thing β¨V4L2_MBUS_FRAME_DESC_TYPE_CSI2β CSI-2 media bus π. Important: the frame desc parameters must be set instruct v4l2_mbus_frame_desc_entry->csi2. Like, that's where they live, periodt π
this is the one your driver actually cares about β if you're on CSI-2, put your params in struct v4l2_mbus_frame_desc_entry->csi2 and nowhere else, iykyk π
β¨ SEE ALSO β¨
first up, there's a kernel file you should look at:
- Kernel file
./include/media/v4l2-subdev.h
and then the whole friend group of related symbols (it's a lot, bestie, but they're all iconic π):
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)enum v4l2_mbus_frame_desc_flags(9)struct v4l2_mbus_frame_desc_entry(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)
that's the whole page, bestie β go forth and describe your frames correctly πβ¨
mwah π this one came from the source path ./include/media, and the date on it is October 2026 β so yeah, she's from the future, main character energy fr fr ππ¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms