request_firmware_nowait(9)
NAME π
request_firmware_nowait β it's literally the asynchronous version of request_firmware, no cap β¨
hey bestie, welcome to the Kernel API Manual page for request_firmware_nowait(9) β the async firmware-request icon π
SYNOPSIS πΈ
int request_firmware_nowait (struct module *module , bool uevent , const char *name , struct device *device , gfp_t gfp , void *context , void (*cont)(const struct firmware *fw, void *context) );
ARGUMENTS π
moduleβ the module requesting the firmware. main character energy, honestly πueventβ sendsueventto copy the firmware image if this flag is non-zero; else the firmware copy must be done manually. no shortcuts, bestie πnameβ name of firmware file π¦deviceβ device for which firmware is being loaded π«gfpβ allocation flags, aka the allocation vibe check π§contextβ will be passed over tocont, andfwmay beNULLif firmware request fails. yes,NULLis valid here, don't panic πcontβ function will be called asynchronously when the firmware request is over. it's giving callback energy fr fr π
DESCRIPTION π¦
okay so, the caller must hold the reference count of device. that part is not optional, bestie β hold it π«Ά
Asynchronous variant of request_firmware for user contexts:
- sleep for as small periods as possible since it may increase kernel boot time of built-in device drivers requesting firmware in their
->probemethods, ifgfpisGFP_KERNEL. like, keep those sleeps tiny, okay? β - can't sleep at all if
gfpisGFP_ATOMIC. literally none. periodt π
SEE ALSO π
Kernel file ./drivers/base/firmware_loader/main.c β go off, source file. then the whole squad:
request_firmware(9)firmware_request_nowarn(9)request_firmware_direct(9)firmware_request_platform(9)firmware_request_cache(9)request_firmware_into_buf(9)request_partial_firmware_into_buf(9)release_firmware(9)firmware_request_nowait_nowarn(9)request_firmware_nowait_cancel(9)cache_firmware(9)uncache_firmware(9)device_cache_fw_images(9)device_uncache_fw_images(9)device_uncache_fw_images_delay(9)
okay that's the whole page, bestie π«Ά this one's source/version is ./drivers/base/firmware_loader, and it's dated October 2026 β bye, slay β¨π
π¦ 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