Lines Matching refs:fw_work
1073 struct firmware_work *fw_work; in request_firmware_work_func() local
1076 fw_work = container_of(work, struct firmware_work, work); in request_firmware_work_func()
1078 _request_firmware(&fw, fw_work->name, fw_work->device, NULL, 0, 0, in request_firmware_work_func()
1079 fw_work->opt_flags); in request_firmware_work_func()
1080 fw_work->cont(fw, fw_work->context); in request_firmware_work_func()
1081 put_device(fw_work->device); /* taken in request_firmware_nowait() */ in request_firmware_work_func()
1083 module_put(fw_work->module); in request_firmware_work_func()
1084 kfree_const(fw_work->name); in request_firmware_work_func()
1085 kfree(fw_work); in request_firmware_work_func()
1117 struct firmware_work *fw_work; in request_firmware_nowait() local
1119 fw_work = kzalloc(sizeof(struct firmware_work), gfp); in request_firmware_nowait()
1120 if (!fw_work) in request_firmware_nowait()
1123 fw_work->module = module; in request_firmware_nowait()
1124 fw_work->name = kstrdup_const(name, gfp); in request_firmware_nowait()
1125 if (!fw_work->name) { in request_firmware_nowait()
1126 kfree(fw_work); in request_firmware_nowait()
1129 fw_work->device = device; in request_firmware_nowait()
1130 fw_work->context = context; in request_firmware_nowait()
1131 fw_work->cont = cont; in request_firmware_nowait()
1132 fw_work->opt_flags = FW_OPT_NOWAIT | in request_firmware_nowait()
1136 kfree_const(fw_work->name); in request_firmware_nowait()
1137 kfree(fw_work); in request_firmware_nowait()
1142 kfree_const(fw_work->name); in request_firmware_nowait()
1143 kfree(fw_work); in request_firmware_nowait()
1147 get_device(fw_work->device); in request_firmware_nowait()
1148 INIT_WORK(&fw_work->work, request_firmware_work_func); in request_firmware_nowait()
1149 schedule_work(&fw_work->work); in request_firmware_nowait()