ENUM FW_RESOURCE_TYPE(9)
π enum fw_resource_type(9) π
okay bestie, so this is a page straight out of the Kernel API Manual and it's genuinely so important β it's the whole vibe check on types of resource entries. like, the categories. the taxonomy. the "who's who" of the resource table. let's get into it β¨
β¨ NAME β¨
enum fw_resource_type β the types of resource entries, periodt π
π¦ SYNOPSIS π¦
enum fw_resource_type {
RSC_CARVEOUT ,
RSC_DEVMEM ,
RSC_TRACE ,
RSC_VDEV ,
RSC_LAST ,
RSC_VENDOR_START ,
RSC_VENDOR_END
};
π Constants π
the whole squad, one by one, no cap:
RSC_CARVEOUTβ this one's a request for allocation of a physically contiguous memory region. like, "hey, can i get a chunk of memory that's actually all together?" πRSC_DEVMEMβ a request toiommu_mapa memory-based peripheral. that's the whole thing. π«ΆRSC_TRACEβ announces the availability of a trace buffer into which the remote processor will be writing logs. it's giving "heads up, the logs go here" πΈRSC_VDEVβ declares support for a virtio device, and serves as its virtio header. she's also the header. main character energy honestly πRSC_LASTβ just keep this one at the end of standard resources. that's her whole job and she does it slayfully πRSC_VENDOR_STARTβ start of the vendor specific resource types range π¦RSC_VENDOR_ENDβ end of the vendor specific resource types range π
π« Description π«
so if you want more details regarding a specific resource type, please see its dedicated structure below. iykyk π
β οΈ okay this next part is important, don't skip it bestie: please note that these values are used as indices to the rproc_handle_rsc lookup table, so please keep them sane. like, don't go feral with the reordering. π
and moreover β RSC_LAST is used to check the validity of an index before the lookup table is accessed, so please update it as needed. fr fr, if you add stuff and forget to bump RSC_LAST, that's the kind of thing that ruins everyone's day ππ₯
π SEE ALSO π
go read these next, bestie, they're all linked and they're all iconic:
- Kernel file
./include/linux/rsc_table.h struct resource_table(9)struct fw_rsc_hdr(9)struct fw_rsc_carveout(9)struct fw_rsc_devmem(9)struct fw_rsc_trace(9)struct fw_rsc_vdev_vring(9)struct fw_rsc_vdev(9)rsc_table_for_each_entry(9)
aaaaand that's the page! π
this one lives over in ./include/linux, dated October 2026, and it's filed under enum fw_resource_type(9) β mwah, go touch some resource tables, ily π«Άπβ¨
π¦ 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