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

Commit 1eb4c9cb authored by Tarun Gupta's avatar Tarun Gupta
Browse files

USB: Debugfs: Fix compilation issues when debugfs is disabled



When we disable debugfs some of the function driver does not
handle those error properly so we see error of kind variable
undeclared, too many arguements to function. This fixes all
these obseved issue

CRs-fixed: 551713
Change-Id: I18e183fd2381abf680df6c360d6eab477cdb5b76
Signed-off-by: default avatarTarun Gupta <tarung@codeaurora.org>
parent 2fa187c0
Loading
Loading
Loading
Loading
+17 −6
Original line number Diff line number Diff line
@@ -837,17 +837,28 @@ static const struct file_operations debug_fdiag_ops = {
struct dentry *dent_diag;
static void fdiag_debugfs_init(void)
{
	struct dentry *dent_diag_status;
	dent_diag = debugfs_create_dir("usb_diag", 0);
	if (IS_ERR(dent_diag))
	if (!dent_diag || IS_ERR(dent_diag))
		return;

	debugfs_create_file("status", 0444, dent_diag, 0, &debug_fdiag_ops);
	dent_diag_status = debugfs_create_file("status", 0444, dent_diag, 0,
			&debug_fdiag_ops);

	if (!dent_diag_status || IS_ERR(dent_diag_status)) {
		debugfs_remove(dent_diag);
		dent_diag = NULL;
		return;
	}
#else
static void fdiag_debugfs_init(void)
}

static void fdiag_debugfs_remove(void)
{
	return;
	debugfs_remove_recursive(dent_diag);
}
#else
static inline void fdiag_debugfs_init(void) {}
static inline void fdiag_debugfs_remove(void) {}
#endif

static void diag_cleanup(void)
@@ -856,7 +867,7 @@ static void diag_cleanup(void)
	struct usb_diag_ch *_ch;
	unsigned long flags;

	debugfs_remove_recursive(dent_diag);
	fdiag_debugfs_remove();

	list_for_each_safe(act, tmp, &usb_diag_ch_list) {
		_ch = list_entry(act, struct usb_diag_ch, list);
+1 −1
Original line number Diff line number Diff line
@@ -1265,7 +1265,7 @@ static int frmnet_bind_config(struct usb_configuration *c, unsigned portno)
static void frmnet_unbind_config(void)
{
	int i;

	gbam_cleanup();
	for (i = 0; i < nr_rmnet_ports; i++)
		if (rmnet_ports[i].data_xport == USB_GADGET_XPORT_ETHER)
			gether_cleanup(rmnet_ports[i].port->dev);
+14 −8
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
 * Copyright (C) 2003-2004 Robert Schwebel, Benedikt Spranger
 * Copyright (C) 2003 Al Borchers (alborchers@steinerpoint.com)
 * Copyright (C) 2008 Nokia Corporation
 * Copyright (c) 2010-2012, The Linux Foundation. All rights reserved.
 * Copyright (c) 2010-2013, The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
@@ -1267,19 +1267,17 @@ const struct file_operations rmnet_smd_debug_stats_ops = {
};

struct dentry *dent_smd;
struct dentry *dent_smd_status;

static void rmnet_smd_debugfs_init(struct rmnet_smd_dev *dev)
{

	struct dentry *dent_smd_status;
	dent_smd = debugfs_create_dir("usb_rmnet_smd", 0);
	if (IS_ERR(dent_smd))
	if (!dent_smd || IS_ERR(dent_smd))
		return;

	dent_smd_status = debugfs_create_file("status", 0444, dent_smd, dev,
			&rmnet_smd_debug_stats_ops);

	if (!dent_smd_status) {
	if (!dent_smd_status || IS_ERR(dent_smd_status)) {
		debugfs_remove(dent_smd);
		dent_smd = NULL;
		return;
@@ -1287,8 +1285,14 @@ static void rmnet_smd_debugfs_init(struct rmnet_smd_dev *dev)

	return;
}

static void rmnet_smd_debugfs_remove(void)
{
	debugfs_remove_recursive(dent_smd);
}
#else
static void rmnet_smd_debugfs_init(struct rmnet_smd_dev *dev) {}
static inline void rmnet_smd_debugfs_init(struct rmnet_smd_dev *dev) {}
static inline void rmnet_smd_debugfs_remove(void){}
#endif

static void
@@ -1307,7 +1311,9 @@ rmnet_smd_unbind(struct usb_configuration *c, struct usb_function *f)
	dev->epout = dev->epin = dev->epnotify = NULL; /* release endpoints */

	destroy_workqueue(dev->wq);
	debugfs_remove_recursive(dent_smd);

	rmnet_smd_debugfs_remove();

	kfree(dev);

}
+18 −6
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
 * Copyright (C) 2003-2004 Robert Schwebel, Benedikt Spranger
 * Copyright (C) 2003 Al Borchers (alborchers@steinerpoint.com)
 * Copyright (C) 2008 Nokia Corporation
 * Copyright (c) 2011 The Linux Foundation. All rights reserved.
 * Copyright (c) 2011,2013 The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
@@ -1758,16 +1758,28 @@ struct dentry *dent_rmnet_mux;

static void rmnet_mux_debugfs_init(struct rmnet_mux_dev *dev)
{

	struct dentry *dent_rmnet_mux_status;
	dent_rmnet_mux = debugfs_create_dir("usb_rmnet_mux", 0);
	if (IS_ERR(dent_rmnet_mux))
	if (!dent_rmnet_mux || IS_ERR(dent_rmnet_mux))
		return;

	debugfs_create_file("status", 0444, dent_rmnet_mux, dev,
	dent_rmnet_mux_status = debugfs_create_file("status",
			0444, dent_rmnet_mux, dev,
			&rmnet_mux_svlte_debug_stats_ops);
	if (!dent_rmnet_mux_status) {
		debugfs_remove(dent_rmnet_mux);
		dent_rmnet_mux = NULL;
		return;
	}
}

static void rmnet_mux_debugfs_remove(void)
{
	debugfs_remove_recursive(dent_rmnet_mux);
}
#else
static void rmnet_mux_debugfs_init(struct rmnet_mux_dev *dev) {}
static inline void rmnet_mux_debugfs_init(struct rmnet_mux_dev *dev) {}
static inline void rmnet_mux_debugfs_remove(void) {}
#endif

int usb_rmnet_mux_ctrl_open(struct inode *inode, struct file *fp)
@@ -2037,7 +2049,7 @@ static void rmnet_smd_sdio_cleanup(void)
	struct rmnet_mux_dev *dev = rmux_dev;
	struct rmnet_mux_smd_dev *smd_dev = &dev->smd_dev;

	debugfs_remove_recursive(dent_rmnet_mux);
	rmnet_mux_debugfs_remove();
	misc_deregister(&rmnet_mux_ctrl_dev);
	smd_close(smd_dev->smd_data.ch);
	destroy_workqueue(dev->wq);
+22 −9
Original line number Diff line number Diff line
@@ -1258,22 +1258,30 @@ const struct file_operations gbam_stats_ops = {
	.write = gbam_reset_stats,
};

struct dentry *gbam_dent;
static void gbam_debugfs_init(void)
{
	struct dentry *dent;
	struct dentry *dfile;

	dent = debugfs_create_dir("usb_rmnet", 0);
	if (IS_ERR(dent))
	gbam_dent = debugfs_create_dir("usb_rmnet", 0);
	if (!gbam_dent || IS_ERR(gbam_dent))
		return;

	/* TODO: Implement cleanup function to remove created file */
	dfile = debugfs_create_file("status", 0444, dent, 0, &gbam_stats_ops);
	if (!dfile || IS_ERR(dfile))
		debugfs_remove(dent);
	dfile = debugfs_create_file("status", 0444, gbam_dent, 0,
			&gbam_stats_ops);
	if (!dfile || IS_ERR(dfile)) {
		debugfs_remove(gbam_dent);
		gbam_dent = NULL;
		return;
	}
}
static void gbam_debugfs_remove(void)
{
	debugfs_remove_recursive(gbam_dent);
}
#else
static void gam_debugfs_init(void) { }
static inline void gbam_debugfs_init(void) {}
static inline void gbam_debugfs_remove(void) {}
#endif

void gbam_disconnect(struct grmnet *gr, u8 port_num, enum transport_type trans)
@@ -1424,7 +1432,6 @@ int gbam_connect(struct grmnet *gr, u8 port_num,

	d->trans = trans;
	queue_work(gbam_wq, &port->connect_w);

	return 0;
}

@@ -1469,6 +1476,7 @@ int gbam_setup(unsigned int no_bam_port, unsigned int no_bam2bam_port)
			goto free_bam_ports;
		}
	}

	gbam_debugfs_init();
	return 0;

@@ -1482,6 +1490,11 @@ free_bam_ports:
	return ret;
}

void gbam_cleanup(void)
{
	gbam_debugfs_remove();
}

void gbam_suspend(struct grmnet *gr, u8 port_num, enum transport_type trans)
{
	struct gbam_port	*port;
Loading