STRUCT HANTRO_VARIANT(9)
π struct hantro_variant(9) π
hey bestie!! welcome to the Kernel API Manual page for struct hantro_variant(9) β the little info card that gives you information about VPU hardware variant. no cap, itβs giving hardware-variant lore and weβre here for it. π«Ά
π NAME π
struct hantro_variant β information about VPU hardware variant. thatβs the whole vibe: this struct is the info card for the VPU hardware variant. β¨
πΈ SYNOPSIS πΈ
struct hantro_variant {
unsigned int enc_offset;
unsigned int dec_offset;
const struct hantro_fmt *enc_fmts;
unsigned int num_enc_fmts;
const struct hantro_fmt *dec_fmts;
unsigned int num_dec_fmts;
const struct hantro_fmt *postproc_fmts;
unsigned int num_postproc_fmts;
const struct hantro_postproc_ops *postproc_ops;
unsigned int codec;
const struct hantro_codec_ops *codec_ops;
int (*init)(struct hantro_dev *vpu);
int (*runtime_resume)(struct hantro_dev *vpu);
const struct hantro_irq *irqs;
int num_irqs;
const char * const *clk_names;
int num_clocks;
const char * const *reg_names;
int num_regs;
unsigned int double_buffer : 1;
unsigned int legacy_regs : 1;
unsigned int late_postproc : 1;
const struct of_device_id *shared_devices;
};
okay now the glow-up tour of every single member, bestie β nothing skipped, periodt: π
π«Ά Members π«Ά
enc_offsetβ offset from VPU base to encoder registers. itβs the encoderβs little address home. πdec_offsetβ offset from VPU base to decoder registers. decoder address energy. π¦enc_fmtsβ encoder formats. the encoderβs format lineup. β¨num_enc_fmtsβ number of encoder formats. literally the count forenc_fmts. π’dec_fmtsβ decoder formats. the decoderβs format lineup. πΈnum_dec_fmtsβ number of decoder formats. the count fordec_fmts. π’postproc_fmtsβ post-processor formats. post-processor format lineup, slay. πnum_postproc_fmtsβ number of post-processor formats. the count forpostproc_fmts. π’postproc_opsβ post-processor ops. the post-processorβs ops. π οΈcodecβ supported codecs. thatβs the codec support field. πcodec_opsβ codec ops. codec operation energy. π₯initβ initialize hardware, optional. optional, so donβt assume itβs always there. πruntime_resumeβ reenable hardware after power gating, optional. also optional, bestie. β‘irqsβ array of irq names and interrupt handlers. interrupt-handler array vibes. πnum_irqsβ number of irqs in the array. the count forirqs. π’clk_namesβ array of clock names. clock-name array energy. π°οΈnum_clocksβ number of clocks in the array. the count forclk_names. π’reg_namesβ array of register range names. register-range-name array. ποΈnum_regsβ number of register range names in the array. the count forreg_names. π’double_bufferβ core needs double buffering. the core said double-buffer era. πlegacy_regsβ core uses legacy register set. legacy register set, noted. π§late_postprocβ postproc must be set up at the end of the job. setup happens at the end, periodt. β°shared_devicesβ an array of device ids that cannot run concurrently. they cannot run concurrently, no cap. π«
π« SEE ALSO π«
go peek at these, bestie β theyβre the extended universe: π
- Kernel file
./drivers/media/platform/verisilicon/hantro.h struct hantro_irq(9)enum hantro_codec_mode(9)struct hantro_dev(9)struct hantro_ctx(9)struct hantro_fmt(9)hantro_debug: Module parameter to control level of debugging messages.(9)
thatβs the page, bestie!! π source/version is ./drivers/media/platform/veris... and the date is October 2026 β mwah, slay, bye! π
π¦ 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