STRUCT UTP_TRANSFER_REQ_DESC(9)
π struct utp_t...fer_req_desc(9) π
okay so bestie, we're in the Kernel API Manual, section 9, and today's main character is struct utp_t...fer_req_desc(9). No cap, this page is all about the UTRD vibes and every little DW is invited to the function. π«Άβ¨
πΈ NAME πΈ
struct utp_transfer_req_desc β UTP Transfer Request Descriptor (UTRD). That's the name, that's the assignment, periodt. π
β¨ SYNOPSIS β¨
here's the whole struct, looking iconic in its natural habitat:
struct utp_transfer_req_desc {
struct request_desc_header header;
__le64 command_desc_base_addr;
__le16 response_upiu_length;
__le16 response_upiu_offset;
__le16 prd_table_length;
__le16 prd_table_offset;
};
that closing brace is doing its little lean, and yes, we respect it. π
π Members π
okay, field-by-field roll call β no skipping, bestie:
headerβ UTRD header DW-0 to DW-3. Bestie said "header" and meant business. πcommand_desc_base_addrβ UCD base address DW 4-5. Note the spacing: DW 4-5, exactly as the page says. πresponse_upiu_lengthβ response UPIU length DW-6. She's measuring the UPIU, not guessing. β¨response_upiu_offsetβ response UPIU offset DW-6. Same DW, different job β teamwork. π«Άprd_table_lengthβ Physical region descriptor length DW-7. Capital P, capital R, capital D, all the letters. πΈprd_table_offsetβ Physical region descriptor offset DW-7. The offset counterpart, slaying in the same DW. π
π SEE ALSO π
when you're done here, the Kernel file ./include/ufs/ufshci.h is the place to peek, and the squad to check next is struct ufshcd_sg_entry(9), struct utp_transfer_cmd_desc(9), and struct request_desc_header(9). iykyk β the whole UFS friend group is linked up. π¦
xoxo, your Kernel API Manual bestie π source/version: ./include/ufs; date: October 2026; and the footer is still repping struct utp_t...fer_req_desc(9). periodt. π
π¦ 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