]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
xtensa: ISS: always use fixed tuntap config
authorMax Filippov <jcmvbkbc@gmail.com>
Sun, 10 Nov 2013 12:05:49 +0000 (16:05 +0400)
committerChris Zankel <chris@zankel.net>
Mon, 2 Dec 2013 22:23:42 +0000 (14:23 -0800)
The code doesn't handle dynamic TAP interface allocation, so there's no
point tracking this case.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
arch/xtensa/platforms/iss/network.c

index fac372f52a43ebd12be2e4dbd5cd51fcb58b405e..78c3841c77a7085774cbe8061bc5bc58d8363a8f 100644 (file)
@@ -56,7 +56,6 @@ static LIST_HEAD(devices);
 
 struct tuntap_info {
        char dev_name[IFNAMSIZ];
-       int fixed_config;
        int fd;
 };
 
@@ -171,11 +170,6 @@ static int tuntap_open(struct iss_net_private *lp)
        int err = -EINVAL;
        int fd;
 
-       /* We currently only support a fixed configuration. */
-
-       if (!lp->tp.info.tuntap.fixed_config)
-               return -EINVAL;
-
        fd = simc_open("/dev/net/tun", 02, 0); /* O_RDWR */
        if (fd < 0) {
                pr_err("Failed to open /dev/net/tun, returned %d (errno = %d)\n",
@@ -227,8 +221,7 @@ static int tuntap_poll(struct iss_net_private *lp)
 }
 
 /*
- * Currently only a device name is supported.
- * ethX=tuntap[,[mac address][,[device name]]]
+ * ethX=tuntap,[mac address],device name
  */
 
 static int tuntap_probe(struct iss_net_private *lp, int index, char *init)
@@ -254,12 +247,13 @@ static int tuntap_probe(struct iss_net_private *lp, int index, char *init)
                return 0;
        }
 
-       if (dev_name) {
-               strlcpy(lp->tp.info.tuntap.dev_name, dev_name,
-                        sizeof(lp->tp.info.tuntap.dev_name));
-               lp->tp.info.tuntap.fixed_config = 1;
-       } else
-               strcpy(lp->tp.info.tuntap.dev_name, TRANSPORT_TUNTAP_NAME);
+       if (!dev_name) {
+               pr_err("%s: missing tuntap device name\n", dev->name);
+               return 0;
+       }
+
+       strlcpy(lp->tp.info.tuntap.dev_name, dev_name,
+               sizeof(lp->tp.info.tuntap.dev_name));
 
        setup_etheraddr(dev, mac_str);