Lines Matching refs:fw_sysfs

76 struct fw_sysfs {  struct
83 static struct fw_sysfs *to_fw_sysfs(struct device *dev) in to_fw_sysfs() argument
85 return container_of(dev, struct fw_sysfs, dev); in to_fw_sysfs()
100 static void fw_load_abort(struct fw_sysfs *fw_sysfs) in fw_load_abort() argument
102 struct fw_priv *fw_priv = fw_sysfs->fw_priv; in fw_load_abort()
164 struct fw_sysfs *fw_sysfs = to_fw_sysfs(dev); in fw_dev_release() local
166 kfree(fw_sysfs); in fw_dev_release()
169 static int do_firmware_uevent(struct fw_sysfs *fw_sysfs, struct kobj_uevent_env *env) in do_firmware_uevent() argument
171 if (add_uevent_var(env, "FIRMWARE=%s", fw_sysfs->fw_priv->fw_name)) in do_firmware_uevent()
175 if (add_uevent_var(env, "ASYNC=%d", fw_sysfs->nowait)) in do_firmware_uevent()
183 struct fw_sysfs *fw_sysfs = to_fw_sysfs(dev); in firmware_uevent() local
187 if (fw_sysfs->fw_priv) in firmware_uevent()
188 err = do_firmware_uevent(fw_sysfs, env); in firmware_uevent()
213 struct fw_sysfs *fw_sysfs = to_fw_sysfs(dev); in firmware_loading_show() local
217 if (fw_sysfs->fw_priv) in firmware_loading_show()
218 loading = fw_sysfs_loading(fw_sysfs->fw_priv); in firmware_loading_show()
241 struct fw_sysfs *fw_sysfs = to_fw_sysfs(dev); in firmware_loading_store() local
247 fw_priv = fw_sysfs->fw_priv; in firmware_loading_store()
295 fw_load_abort(fw_sysfs); in firmware_loading_store()
342 struct fw_sysfs *fw_sysfs = to_fw_sysfs(dev); in firmware_data_read() local
347 fw_priv = fw_sysfs->fw_priv; in firmware_data_read()
371 static int fw_realloc_pages(struct fw_sysfs *fw_sysfs, int min_size) in fw_realloc_pages() argument
375 err = fw_grow_paged_buf(fw_sysfs->fw_priv, in fw_realloc_pages()
378 fw_load_abort(fw_sysfs); in fw_realloc_pages()
399 struct fw_sysfs *fw_sysfs = to_fw_sysfs(dev); in firmware_data_write() local
407 fw_priv = fw_sysfs->fw_priv; in firmware_data_write()
421 retval = fw_realloc_pages(fw_sysfs, offset + count); in firmware_data_write()
462 static struct fw_sysfs *
466 struct fw_sysfs *fw_sysfs; in fw_create_instance() local
469 fw_sysfs = kzalloc(sizeof(*fw_sysfs), GFP_KERNEL); in fw_create_instance()
470 if (!fw_sysfs) { in fw_create_instance()
471 fw_sysfs = ERR_PTR(-ENOMEM); in fw_create_instance()
475 fw_sysfs->nowait = !!(opt_flags & FW_OPT_NOWAIT); in fw_create_instance()
476 fw_sysfs->fw = firmware; in fw_create_instance()
477 f_dev = &fw_sysfs->dev; in fw_create_instance()
485 return fw_sysfs; in fw_create_instance()
495 static int fw_load_sysfs_fallback(struct fw_sysfs *fw_sysfs, long timeout) in fw_load_sysfs_fallback() argument
498 struct device *f_dev = &fw_sysfs->dev; in fw_load_sysfs_fallback()
499 struct fw_priv *fw_priv = fw_sysfs->fw_priv; in fw_load_sysfs_fallback()
526 kobject_uevent(&fw_sysfs->dev.kobj, KOBJ_ADD); in fw_load_sysfs_fallback()
534 fw_load_abort(fw_sysfs); in fw_load_sysfs_fallback()
555 struct fw_sysfs *fw_sysfs; in fw_load_from_user_helper() local
576 fw_sysfs = fw_create_instance(firmware, name, device, opt_flags); in fw_load_from_user_helper()
577 if (IS_ERR(fw_sysfs)) { in fw_load_from_user_helper()
578 ret = PTR_ERR(fw_sysfs); in fw_load_from_user_helper()
582 fw_sysfs->fw_priv = firmware->priv; in fw_load_from_user_helper()
583 ret = fw_load_sysfs_fallback(fw_sysfs, timeout); in fw_load_from_user_helper()