staging: dgap: Simplify to set a concentrator type
authorDaeseok Youn <daeseok.youn@gmail.com>
Sat, 9 Aug 2014 05:38:41 +0000 (14:38 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 16 Aug 2014 19:23:06 +0000 (12:23 -0700)
It is same manner with setting a board type.
For example of config file for concentrator,
    "conc ccon" or
    "conc epcon"

After allocating a type of "CNODE" then set a type of concentrator.
So remove cases in swith statement, just get a token from string
and set to "conc.type". And also it doesn't need to "conc.v_type".

Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/dgap/dgap.c
drivers/staging/dgap/dgap.h

index 7fb54d1..1d27976 100644 (file)
@@ -6387,6 +6387,7 @@ static int dgap_parsefile(char **in)
 
        for (; ;) {
                int board_type = 0;
+               int conc_type = 0;
 
                rc = dgap_gettok(in);
                if (rc == 0) {
@@ -6719,24 +6720,15 @@ static int dgap_parsefile(char **in)
                        else
                                brd->u.board.conc1++;
 
-                       break;
-
-               case CX:        /* c/x type concentrator */
-                       if (p->type != CNODE) {
-                               dgap_err("cx only valid for concentrators");
+                       conc_type = dgap_gettok(in);
+                       if (conc_type == 0 || conc_type != CX ||
+                           conc_type != EPC) {
+                               dgap_err("failed to set a type of concentratros");
                                return -1;
                        }
-                       p->u.conc.type = CX;
-                       p->u.conc.v_type = 1;
-                       break;
 
-               case EPC:       /* epc type concentrator */
-                       if (p->type != CNODE) {
-                               dgap_err("cx only valid for concentrators");
-                               return -1;
-                       }
-                       p->u.conc.type = EPC;
-                       p->u.conc.v_type = 1;
+                       p->u.conc.type = conc_type;
+
                        break;
 
                case MOD:       /* EBI module */
@@ -7200,10 +7192,6 @@ static int dgap_checknode(struct cnode *p)
                return 0;
 
        case CNODE:
-               if (p->u.conc.v_type == 0) {
-                       dgap_err("concentrator type not specified");
-                       return 1;
-               }
                if (p->u.conc.v_speed == 0) {
                        dgap_err("concentrator line speed not specified");
                        return 1;
index c01aa28..800f407 100644 (file)
@@ -1206,7 +1206,6 @@ struct cnode {
                        char  *id;
                        char  *idstr;
                        long  start;
-                       char  v_type;
                        char  v_connect;
                        char  v_speed;
                        char  v_nport;