Commit 23682e3c authored by Andrzej Pietrasiewicz's avatar Andrzej Pietrasiewicz Committed by Felipe Balbi

usb: gadget: f_mass_storage: create fsg_common_set_inquiry_string for use in fsg_common_init

fsg_common_init is a lengthy function. Factor a portion of it out.
Signed-off-by: default avatarAndrzej Pietrasiewicz <andrzej.p@samsung.com>
Signed-off-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
Acked-by: default avatarMichal Nazarewicz <mina86@mina86.com>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent b27c08c9
...@@ -2980,11 +2980,27 @@ int fsg_common_create_luns(struct fsg_common *common, struct fsg_config *cfg) ...@@ -2980,11 +2980,27 @@ int fsg_common_create_luns(struct fsg_common *common, struct fsg_config *cfg)
return rc; return rc;
} }
void fsg_common_set_inquiry_string(struct fsg_common *common, const char *vn,
const char *pn)
{
int i;
/* Prepare inquiryString */
i = get_default_bcdDevice();
snprintf(common->inquiry_string, sizeof(common->inquiry_string),
"%-8s%-16s%04x", vn ?: "Linux",
/* Assume product name dependent on the first LUN */
pn ?: ((*common->luns)->cdrom
? "File-CD Gadget"
: "File-Stor Gadget"),
i);
}
struct fsg_common *fsg_common_init(struct fsg_common *common, struct fsg_common *fsg_common_init(struct fsg_common *common,
struct usb_composite_dev *cdev, struct usb_composite_dev *cdev,
struct fsg_config *cfg) struct fsg_config *cfg)
{ {
int i, rc; int rc;
common = fsg_common_setup(common); common = fsg_common_setup(common);
if (IS_ERR(common)) if (IS_ERR(common))
...@@ -3013,16 +3029,9 @@ struct fsg_common *fsg_common_init(struct fsg_common *common, ...@@ -3013,16 +3029,9 @@ struct fsg_common *fsg_common_init(struct fsg_common *common,
if (rc) if (rc)
goto error_release; goto error_release;
/* Prepare inquiryString */
i = get_default_bcdDevice();
snprintf(common->inquiry_string, sizeof common->inquiry_string,
"%-8s%-16s%04x", cfg->vendor_name ?: "Linux",
/* Assume product name dependent on the first LUN */
cfg->product_name ?: ((*common->luns)->cdrom
? "File-CD Gadget"
: "File-Stor Gadget"),
i);
fsg_common_set_inquiry_string(common, cfg->vendor_name,
cfg->product_name);
/* Tell the thread to start working */ /* Tell the thread to start working */
common->thread_task = common->thread_task =
kthread_create(fsg_main_thread, common, "file-storage"); kthread_create(fsg_main_thread, common, "file-storage");
......
...@@ -123,6 +123,9 @@ int fsg_common_create_lun(struct fsg_common *common, struct fsg_lun_config *cfg, ...@@ -123,6 +123,9 @@ int fsg_common_create_lun(struct fsg_common *common, struct fsg_lun_config *cfg,
int fsg_common_create_luns(struct fsg_common *common, struct fsg_config *cfg); int fsg_common_create_luns(struct fsg_common *common, struct fsg_config *cfg);
void fsg_common_set_inquiry_string(struct fsg_common *common, const char *vn,
const char *pn);
void fsg_config_from_params(struct fsg_config *cfg, void fsg_config_from_params(struct fsg_config *cfg,
const struct fsg_module_parameters *params, const struct fsg_module_parameters *params,
unsigned int fsg_num_buffers); unsigned int fsg_num_buffers);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment