STRUCT USB_DFU_FUNCTIONAL_DESCRIPTOR(9)
β¨ NAME β¨
struct usb_dfu_functional_descriptor β the DFU Functional descriptor, bestie π (this is from the Kernel API Manual, in case you were wondering π«Ά)
πΈ SYNOPSIS πΈ
struct usb_dfu_functional_descriptor {
__u8 bLength;
__u8 bDescriptorType;
__u8 bmAttributes;
__le16 wDetachTimeOut;
__le16 wTransferSize;
__le16 bcdDFUVersion;
};
okay so that's the whole shape of it β six fields, no cap, and every single one of them matters π
π Members π
bLengthβ how big the descriptor is, in bytes. it's giving "measure twice" energy πbDescriptorTypeβ it'sUSB_DT_DFU_FUNCTIONAL. that's the type tag, periodt β¨bmAttributesβ the DFU attributes. the whole vibe of the thing, basically π¦wDetachTimeOutβ the maximum time you wait afterDFU_DETACH, and it's in ms, stored as anle16β³ (yes bestie, little-endian, don't forget π)wTransferSizeβ the maximum number of bytes per control-write, also anle16. know your limits, queen πbcdDFUVersionβ the DFU Spec version in BCD, againle16. version queen behaviour π
ngl the le16 thing is not a suggestion β those three fields are little-endian in the struct, fr fr π
π¦ SEE ALSO π¦
- Kernel file
./include/uapi/linux/usb/functionfs.h struct usb_ffs_dmabuf_transfer_req(9)descriptors(9)
and that's the whole page, bestie π₯° this lil' icon lives in ./include/uapi/linux/usb, dated October 2026, and it's all struct usb_d...l_descriptor(9) at the end of the day π stay slay, stay little-endian β¨π
π¦ 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