aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/hamradio/mkiss.c
diff options
context:
space:
mode:
authorAndrea Bastoni <bastoni@cs.unc.edu>2010-05-30 19:16:45 -0400
committerAndrea Bastoni <bastoni@cs.unc.edu>2010-05-30 19:16:45 -0400
commitada47b5fe13d89735805b566185f4885f5a3f750 (patch)
tree644b88f8a71896307d71438e9b3af49126ffb22b /drivers/net/hamradio/mkiss.c
parent43e98717ad40a4ae64545b5ba047c7b86aa44f4f (diff)
parent3280f21d43ee541f97f8cda5792150d2dbec20d5 (diff)
Merge branch 'wip-2.6.34' into old-private-masterarchived-private-master
Diffstat (limited to 'drivers/net/hamradio/mkiss.c')
-rw-r--r--drivers/net/hamradio/mkiss.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/drivers/net/hamradio/mkiss.c b/drivers/net/hamradio/mkiss.c
index db4b7f1603f6..66e88bd59caa 100644
--- a/drivers/net/hamradio/mkiss.c
+++ b/drivers/net/hamradio/mkiss.c
@@ -26,6 +26,7 @@
26#include <linux/interrupt.h> 26#include <linux/interrupt.h>
27#include <linux/in.h> 27#include <linux/in.h>
28#include <linux/inet.h> 28#include <linux/inet.h>
29#include <linux/slab.h>
29#include <linux/tty.h> 30#include <linux/tty.h>
30#include <linux/errno.h> 31#include <linux/errno.h>
31#include <linux/netdevice.h> 32#include <linux/netdevice.h>
@@ -36,6 +37,7 @@
36#include <linux/skbuff.h> 37#include <linux/skbuff.h>
37#include <linux/if_arp.h> 38#include <linux/if_arp.h>
38#include <linux/jiffies.h> 39#include <linux/jiffies.h>
40#include <linux/compat.h>
39 41
40#include <net/ax25.h> 42#include <net/ax25.h>
41 43
@@ -898,6 +900,23 @@ static int mkiss_ioctl(struct tty_struct *tty, struct file *file,
898 return err; 900 return err;
899} 901}
900 902
903#ifdef CONFIG_COMPAT
904static long mkiss_compat_ioctl(struct tty_struct *tty, struct file *file,
905 unsigned int cmd, unsigned long arg)
906{
907 switch (cmd) {
908 case SIOCGIFNAME:
909 case SIOCGIFENCAP:
910 case SIOCSIFENCAP:
911 case SIOCSIFHWADDR:
912 return mkiss_ioctl(tty, file, cmd,
913 (unsigned long)compat_ptr(arg));
914 }
915
916 return -ENOIOCTLCMD;
917}
918#endif
919
901/* 920/*
902 * Handle the 'receiver data ready' interrupt. 921 * Handle the 'receiver data ready' interrupt.
903 * This function is called by the 'tty_io' module in the kernel when 922 * This function is called by the 'tty_io' module in the kernel when
@@ -972,6 +991,9 @@ static struct tty_ldisc_ops ax_ldisc = {
972 .open = mkiss_open, 991 .open = mkiss_open,
973 .close = mkiss_close, 992 .close = mkiss_close,
974 .ioctl = mkiss_ioctl, 993 .ioctl = mkiss_ioctl,
994#ifdef CONFIG_COMPAT
995 .compat_ioctl = mkiss_compat_ioctl,
996#endif
975 .receive_buf = mkiss_receive_buf, 997 .receive_buf = mkiss_receive_buf,
976 .write_wakeup = mkiss_write_wakeup 998 .write_wakeup = mkiss_write_wakeup
977}; 999};