mirror of
https://github.com/torvalds/linux.git
synced 2024-12-03 17:41:22 +00:00
staging: dgnc: Move utility functions out of dgnc_driver.c
This commit moves the utility functions out of dgnc_driver.c file and puts them in the new dgnc_utils.{c,h} files. The accompanying changes adjust the existing code to work with this design. Signed-off-by: Konrad Zapalowicz <bergo.torino@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
bbecbacbed
commit
9a633d00d1
@ -4,4 +4,5 @@ obj-$(CONFIG_DGNC) += dgnc.o
|
||||
|
||||
dgnc-objs := dgnc_cls.o dgnc_driver.o\
|
||||
dgnc_mgmt.o dgnc_neo.o\
|
||||
dgnc_tty.o dgnc_sysfs.o
|
||||
dgnc_tty.o dgnc_sysfs.o\
|
||||
dgnc_utils.o
|
||||
|
@ -821,77 +821,3 @@ static void dgnc_init_globals(void)
|
||||
init_timer(&dgnc_poll_timer);
|
||||
}
|
||||
|
||||
|
||||
/************************************************************************
|
||||
*
|
||||
* Utility functions
|
||||
*
|
||||
************************************************************************/
|
||||
|
||||
/*
|
||||
* dgnc_ms_sleep()
|
||||
*
|
||||
* Put the driver to sleep for x ms's
|
||||
*
|
||||
* Returns 0 if timed out, !0 (showing signal) if interrupted by a signal.
|
||||
*/
|
||||
int dgnc_ms_sleep(ulong ms)
|
||||
{
|
||||
current->state = TASK_INTERRUPTIBLE;
|
||||
schedule_timeout((ms * HZ) / 1000);
|
||||
return signal_pending(current);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* dgnc_ioctl_name() : Returns a text version of each ioctl value.
|
||||
*/
|
||||
char *dgnc_ioctl_name(int cmd)
|
||||
{
|
||||
switch (cmd) {
|
||||
|
||||
case TCGETA: return "TCGETA";
|
||||
case TCGETS: return "TCGETS";
|
||||
case TCSETA: return "TCSETA";
|
||||
case TCSETS: return "TCSETS";
|
||||
case TCSETAW: return "TCSETAW";
|
||||
case TCSETSW: return "TCSETSW";
|
||||
case TCSETAF: return "TCSETAF";
|
||||
case TCSETSF: return "TCSETSF";
|
||||
case TCSBRK: return "TCSBRK";
|
||||
case TCXONC: return "TCXONC";
|
||||
case TCFLSH: return "TCFLSH";
|
||||
case TIOCGSID: return "TIOCGSID";
|
||||
|
||||
case TIOCGETD: return "TIOCGETD";
|
||||
case TIOCSETD: return "TIOCSETD";
|
||||
case TIOCGWINSZ: return "TIOCGWINSZ";
|
||||
case TIOCSWINSZ: return "TIOCSWINSZ";
|
||||
|
||||
case TIOCMGET: return "TIOCMGET";
|
||||
case TIOCMSET: return "TIOCMSET";
|
||||
case TIOCMBIS: return "TIOCMBIS";
|
||||
case TIOCMBIC: return "TIOCMBIC";
|
||||
|
||||
/* from digi.h */
|
||||
case DIGI_SETA: return "DIGI_SETA";
|
||||
case DIGI_SETAW: return "DIGI_SETAW";
|
||||
case DIGI_SETAF: return "DIGI_SETAF";
|
||||
case DIGI_SETFLOW: return "DIGI_SETFLOW";
|
||||
case DIGI_SETAFLOW: return "DIGI_SETAFLOW";
|
||||
case DIGI_GETFLOW: return "DIGI_GETFLOW";
|
||||
case DIGI_GETAFLOW: return "DIGI_GETAFLOW";
|
||||
case DIGI_GETA: return "DIGI_GETA";
|
||||
case DIGI_GEDELAY: return "DIGI_GEDELAY";
|
||||
case DIGI_SEDELAY: return "DIGI_SEDELAY";
|
||||
case DIGI_GETCUSTOMBAUD: return "DIGI_GETCUSTOMBAUD";
|
||||
case DIGI_SETCUSTOMBAUD: return "DIGI_SETCUSTOMBAUD";
|
||||
case TIOCMODG: return "TIOCMODG";
|
||||
case TIOCMODS: return "TIOCMODS";
|
||||
case TIOCSDTR: return "TIOCSDTR";
|
||||
case TIOCCDTR: return "TIOCCDTR";
|
||||
|
||||
default: return "unknown";
|
||||
}
|
||||
}
|
||||
|
@ -481,16 +481,6 @@ struct channel_t {
|
||||
wait_queue_head_t ch_sniff_wait;
|
||||
};
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* Prototypes for non-static functions used in more than one module
|
||||
*
|
||||
*************************************************************************/
|
||||
|
||||
extern int dgnc_ms_sleep(ulong ms);
|
||||
extern char *dgnc_ioctl_name(int cmd);
|
||||
|
||||
/*
|
||||
* Our Global Variables.
|
||||
*/
|
||||
|
@ -57,6 +57,7 @@
|
||||
#include "dgnc_cls.h"
|
||||
#include "dpacompat.h"
|
||||
#include "dgnc_sysfs.h"
|
||||
#include "dgnc_utils.h"
|
||||
|
||||
#define init_MUTEX(sem) sema_init(sem, 1)
|
||||
#define DECLARE_MUTEX(name) \
|
||||
|
70
drivers/staging/dgnc/dgnc_utils.c
Normal file
70
drivers/staging/dgnc/dgnc_utils.c
Normal file
@ -0,0 +1,70 @@
|
||||
#include <linux/tty.h>
|
||||
#include <linux/sched.h>
|
||||
#include "dgnc_utils.h"
|
||||
#include "digi.h"
|
||||
|
||||
/*
|
||||
* dgnc_ms_sleep()
|
||||
*
|
||||
* Put the driver to sleep for x ms's
|
||||
*
|
||||
* Returns 0 if timed out, !0 (showing signal) if interrupted by a signal.
|
||||
*/
|
||||
int dgnc_ms_sleep(ulong ms)
|
||||
{
|
||||
current->state = TASK_INTERRUPTIBLE;
|
||||
schedule_timeout((ms * HZ) / 1000);
|
||||
return signal_pending(current);
|
||||
}
|
||||
|
||||
/*
|
||||
* dgnc_ioctl_name() : Returns a text version of each ioctl value.
|
||||
*/
|
||||
char *dgnc_ioctl_name(int cmd)
|
||||
{
|
||||
switch (cmd) {
|
||||
|
||||
case TCGETA: return "TCGETA";
|
||||
case TCGETS: return "TCGETS";
|
||||
case TCSETA: return "TCSETA";
|
||||
case TCSETS: return "TCSETS";
|
||||
case TCSETAW: return "TCSETAW";
|
||||
case TCSETSW: return "TCSETSW";
|
||||
case TCSETAF: return "TCSETAF";
|
||||
case TCSETSF: return "TCSETSF";
|
||||
case TCSBRK: return "TCSBRK";
|
||||
case TCXONC: return "TCXONC";
|
||||
case TCFLSH: return "TCFLSH";
|
||||
case TIOCGSID: return "TIOCGSID";
|
||||
|
||||
case TIOCGETD: return "TIOCGETD";
|
||||
case TIOCSETD: return "TIOCSETD";
|
||||
case TIOCGWINSZ: return "TIOCGWINSZ";
|
||||
case TIOCSWINSZ: return "TIOCSWINSZ";
|
||||
|
||||
case TIOCMGET: return "TIOCMGET";
|
||||
case TIOCMSET: return "TIOCMSET";
|
||||
case TIOCMBIS: return "TIOCMBIS";
|
||||
case TIOCMBIC: return "TIOCMBIC";
|
||||
|
||||
/* from digi.h */
|
||||
case DIGI_SETA: return "DIGI_SETA";
|
||||
case DIGI_SETAW: return "DIGI_SETAW";
|
||||
case DIGI_SETAF: return "DIGI_SETAF";
|
||||
case DIGI_SETFLOW: return "DIGI_SETFLOW";
|
||||
case DIGI_SETAFLOW: return "DIGI_SETAFLOW";
|
||||
case DIGI_GETFLOW: return "DIGI_GETFLOW";
|
||||
case DIGI_GETAFLOW: return "DIGI_GETAFLOW";
|
||||
case DIGI_GETA: return "DIGI_GETA";
|
||||
case DIGI_GEDELAY: return "DIGI_GEDELAY";
|
||||
case DIGI_SEDELAY: return "DIGI_SEDELAY";
|
||||
case DIGI_GETCUSTOMBAUD: return "DIGI_GETCUSTOMBAUD";
|
||||
case DIGI_SETCUSTOMBAUD: return "DIGI_SETCUSTOMBAUD";
|
||||
case TIOCMODG: return "TIOCMODG";
|
||||
case TIOCMODS: return "TIOCMODS";
|
||||
case TIOCSDTR: return "TIOCSDTR";
|
||||
case TIOCCDTR: return "TIOCCDTR";
|
||||
|
||||
default: return "unknown";
|
||||
}
|
||||
}
|
7
drivers/staging/dgnc/dgnc_utils.h
Normal file
7
drivers/staging/dgnc/dgnc_utils.h
Normal file
@ -0,0 +1,7 @@
|
||||
#ifndef __DGNC_UTILS_H
|
||||
#define __DGNC_UTILS_H
|
||||
|
||||
int dgnc_ms_sleep(ulong ms);
|
||||
char *dgnc_ioctl_name(int cmd);
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user