STRUCT VDEC_AP_IPI_DEC_START(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 struct vdec_ap_ipi_dec_start(9) 🌸

okay so bestie, this is a page from the Kernel API Manual and it's literally all about one lil struct, and honestly? she's kind of a big deal. πŸ’…


✨ NAME ✨

struct vdec_ap_ipi_dec_start β€” the struct that exists for AP_IPIMSG_DEC_START. that's it. that's her whole job. iconic behavior honestly πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

struct vdec_ap_ipi_dec_start {
    uint32_t msg_id;
    union {
      uint32_t vpu_inst_addr;
      uint32_t inst_id;
    };
    uint32_t data[3];
    u32 codec_type;
 };

like, look at her. struct goals fr fr ✨


πŸ’– Members πŸ’–

  • msg_id β€” this one's set to AP_IPIMSG_DEC_START. no notes, that's just what she is 🫢
  • {unnamed_union} β€” it's anonymous. she has no name. mysterious. main character energy lowkey 🌈
  • vpu_inst_addr β€” the VPU decoder instance address. ⚠️ only used if the ABI version is < 2, so mind your versions bestie
  • inst_id β€” the instance ID. this one's the other half of the union β€” used if the ABI version is >= 2 πŸ”₯
  • data β€” header info, and it changes depending on the codec, so pay attention:
    • H264 decoder: [0]:buf_sz [1]:nal_start
    • VP8 decoder: [0]:width/height
    • VP9 decoder: [0]:profile, [1][2] width/height

yeah she's doing a lot of work in three little slots, we love a multitasker πŸ’œ

  • codec_type β€” the codec fourcc. short, sweet, slay πŸ“

🧚 SEE ALSO 🧚

  • Kernel file ./drivers/media/platform/mediatek/vcodec/decoder/vdec_ipi_msg.h
  • struct vdec_ap_ipi_cmd(9)
  • struct vdec_vpu_ipi_ack(9)
  • struct vdec_ap_ipi_init(9)
  • struct vdec_vpu_ipi_init_ack(9)
  • struct vdec_ap_ipi_get_param(9)
  • struct vdec_vpu_ipi_get_param_ack(9)

like the whole friend group, go read them too πŸ’–βœ¨


ngl this page came from the kernel source around ./drivers/media/platform/media... and it's dated October 2026 β€” so yeah, future-dated lore πŸ‘‘. go off bestie, you now fully understand struct vdec_ap_ipi_dec_start. periodt. πŸ’…πŸŽ€
πŸ“¦ where this page comes from