STRUCT HDCP_PORT_DATA(9)
πΈ struct hdcp_port_data(9) πΈ
okay bestie, welcome to the Kernel API Manual β this one's all about struct hdcp_port_data, aka the intel specific HDCP port data struct. it's giving very niche, very i915, very "you either know or you don't" π
β¨ NAME β¨
struct hdcp_port_data β intel specific HDCP port data π
π¦ SYNOPSIS π¦
struct hdcp_port_data {
enum hdcp_ddi hdcp_ddi;
enum hdcp_transcoder hdcp_transcoder;
u8 port_type;
u8 protocol;
u16 k;
u32 seq_num_m;
struct hdcp2_streamid_type *streams;
};
no cap, that's the whole shape of it β copy it exactly, don't go editing field names, the compiler WILL notice π
π Members π
hdcp_ddiβ the ddi index, as per ME/GSC FW. fr fr, that's where the number comes from π«Άhdcp_transcoderβ the transcoder index, also as per ME/GSC FW β¨port_typeβ the HDCP port type, classified as per ME/GSC FW πΈprotocolβ the HDCP adaptation, as per ME/GSC FW πkβ number of streams transmitted on a port. heads up: it's only on DP MST that this is!= 1πseq_num_mβ count ofRepeaterAuth_Stream_Managemsgs propagated. it gets initialized to0onAKE_INIT, then incremented after every successful transmission of theRepeaterAuth_Stream_Managemessage. and the second it rolls over? re-Auth has to be triggered π don't sleep on thatstreamsβstruct hdcp2_streamid_type[k]. defines the type and id for the streams π¦
π₯ SEE ALSO π₯
- Kernel file
./include/drm/intel/i915_hdcp_interface.h enum hdcp_port_type(9)enum hdcp_wired_protocol(9)enum hdcp_transcoder(9)struct i915_hdcp_ops(9)struct i915_hdcp_arbiter(9)
like, go read those next, bestie, they're the whole friend group π
mwah π this page lives at ./include/drm/intel, dated October 2026 β that's the source, the version and the date all in one cute little sign-off. now go forth and HDCP responsibly β¨π
π¦ 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