Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8a1ef171 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

USB: musb: clean up debugfs file and directory creation



When calling debugfs functions, there is no need to ever check the
return value.  The function can work or not, but the code logic should
never do something different based on this.

Because of this, lots of init functions do not need to have return
values, so this cleans up a lot of unused error handling code that never
could have triggered in the past.

Cc: Bin Liu <b-liu@ti.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a941fc39
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -2387,9 +2387,7 @@ musb_init_controller(struct device *dev, int nIrq, void __iomem *ctrl)
	if (status < 0)
		goto fail3;

	status = musb_init_debugfs(musb);
	if (status < 0)
		goto fail4;
	musb_init_debugfs(musb);

	status = sysfs_create_group(&musb->controller->kobj, &musb_attr_group);
	if (status)
@@ -2404,7 +2402,6 @@ musb_init_controller(struct device *dev, int nIrq, void __iomem *ctrl)
fail5:
	musb_exit_debugfs(musb);

fail4:
	musb_gadget_cleanup(musb);
	musb_host_cleanup(musb);

+2 −3
Original line number Diff line number Diff line
@@ -20,12 +20,11 @@
void musb_dbg(struct musb *musb, const char *fmt, ...);

#ifdef CONFIG_DEBUG_FS
int musb_init_debugfs(struct musb *musb);
void musb_init_debugfs(struct musb *musb);
void musb_exit_debugfs(struct musb *musb);
#else
static inline int musb_init_debugfs(struct musb *musb)
static inline void musb_init_debugfs(struct musb *musb)
{
	return 0;
}
static inline void musb_exit_debugfs(struct musb *musb)
{
+7 −37
Original line number Diff line number Diff line
@@ -321,48 +321,18 @@ static const struct file_operations musb_softconnect_fops = {
	.release		= single_release,
};

int musb_init_debugfs(struct musb *musb)
void musb_init_debugfs(struct musb *musb)
{
	struct dentry *root;
	struct dentry		*file;
	int			ret;

	root = debugfs_create_dir(dev_name(musb->controller), NULL);
	if (!root) {
		ret = -ENOMEM;
		goto err0;
	}

	file = debugfs_create_file("regdump", S_IRUGO, root, musb,
			&musb_regdump_fops);
	if (!file) {
		ret = -ENOMEM;
		goto err1;
	}

	file = debugfs_create_file("testmode", S_IRUGO | S_IWUSR,
			root, musb, &musb_test_mode_fops);
	if (!file) {
		ret = -ENOMEM;
		goto err1;
	}

	file = debugfs_create_file("softconnect", S_IRUGO | S_IWUSR,
			root, musb, &musb_softconnect_fops);
	if (!file) {
		ret = -ENOMEM;
		goto err1;
	}

	musb->debugfs_root = root;

	return 0;

err1:
	debugfs_remove_recursive(root);

err0:
	return ret;
	debugfs_create_file("regdump", S_IRUGO, root, musb, &musb_regdump_fops);
	debugfs_create_file("testmode", S_IRUGO | S_IWUSR, root, musb,
			    &musb_test_mode_fops);
	debugfs_create_file("softconnect", S_IRUGO | S_IWUSR, root, musb,
			    &musb_softconnect_fops);
}

void /* __init_or_exit */ musb_exit_debugfs(struct musb *musb)
+1 −8
Original line number Diff line number Diff line
@@ -399,24 +399,17 @@ static irqreturn_t dsps_interrupt(int irq, void *hci)
static int dsps_musb_dbg_init(struct musb *musb, struct dsps_glue *glue)
{
	struct dentry *root;
	struct dentry *file;
	char buf[128];

	sprintf(buf, "%s.dsps", dev_name(musb->controller));
	root = debugfs_create_dir(buf, NULL);
	if (!root)
		return -ENOMEM;
	glue->dbgfs_root = root;

	glue->regset.regs = dsps_musb_regs;
	glue->regset.nregs = ARRAY_SIZE(dsps_musb_regs);
	glue->regset.base = musb->ctrl_base;

	file = debugfs_create_regset32("regdump", S_IRUGO, root, &glue->regset);
	if (!file) {
		debugfs_remove_recursive(root);
		return -ENOMEM;
	}
	debugfs_create_regset32("regdump", S_IRUGO, root, &glue->regset);
	return 0;
}