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

Commit 6917c867 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "USB: Debugfs: Fix compilation issues when debugfs is disabled"

parents 8d5e1bfa 1eb4c9cb
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