naveen@administrator:~/Projects/Gateway/kernel-source_ethernetSwitch/kernel-source$ ./build.sh Clearing the contents Configuring for TCS MX6 Board Building the kernel image CHK include/config/kernel.release CHK include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h CHK include/generated/bounds.h CHK include/generated/timeconst.h CHK include/generated/asm-offsets.h CALL scripts/checksyscalls.sh CHK include/generated/compile.h CC drivers/net/ethernet/micrel/spi-ksz8863.o In file included from drivers/net/ethernet/micrel/ksz_cfg_8863.h:17:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:57: drivers/net/ethernet/micrel/ksz_sw.h:641:18: error: field ‘mrp’ has incomplete type struct mrp_info mrp; ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_get_port_info’: drivers/net/ethernet/micrel/ksz_mrp.c:160:13: error: dereferencing pointer to incomplete type ‘struct mrp_info’ return &mrp->port_info[port]; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘setup_acl_drop’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:165:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:165:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:170:16: error: ‘struct ksz_sw’ has no member named ‘acllock’ mutex_lock(&sw->acllock); ^ drivers/net/ethernet/micrel/ksz_mrp.c:172:12: error: ‘struct ksz_port_cfg’ has no member named ‘acl_info’ acl = &cfg->acl_info[i]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:173:5: error: dereferencing pointer to incomplete type ‘struct ksz_acl_table’ acl->mode = ACL_MODE_LAYER_2; ^ drivers/net/ethernet/micrel/ksz_mrp.c:173:14: error: ‘ACL_MODE_LAYER_2’ undeclared (first use in this function) acl->mode = ACL_MODE_LAYER_2; ^ drivers/net/ethernet/micrel/ksz_mrp.c:173:14: note: each undeclared identifier is reported only once for each function it appears in drivers/net/ethernet/micrel/ksz_mrp.c:174:16: error: ‘ACL_ENABLE_2_BOTH’ undeclared (first use in this function) acl->enable = ACL_ENABLE_2_BOTH; ^ drivers/net/ethernet/micrel/ksz_mrp.c:184:18: error: ‘ACL_MAP_MODE_REPLACE’ undeclared (first use in this function) acl->map_mode = ACL_MAP_MODE_REPLACE; ^ drivers/net/ethernet/micrel/ksz_mrp.c:186:2: error: implicit declaration of function ‘sw_w_acl_table’ [-Werror=implicit-function-declaration] sw_w_acl_table(sw, port, i, acl); ^ drivers/net/ethernet/micrel/ksz_mrp.c:188:18: error: ‘struct ksz_sw’ has no member named ‘acllock’ mutex_unlock(&sw->acllock); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘setup_acl_remap’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:193:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:193:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:199:16: error: ‘struct ksz_sw’ has no member named ‘acllock’ mutex_lock(&sw->acllock); ^ drivers/net/ethernet/micrel/ksz_mrp.c:201:12: error: ‘struct ksz_port_cfg’ has no member named ‘acl_info’ acl = &cfg->acl_info[i]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:202:5: error: dereferencing pointer to incomplete type ‘struct ksz_acl_table’ acl->mode = ACL_MODE_LAYER_2; ^ drivers/net/ethernet/micrel/ksz_mrp.c:202:14: error: ‘ACL_MODE_LAYER_2’ undeclared (first use in this function) acl->mode = ACL_MODE_LAYER_2; ^ drivers/net/ethernet/micrel/ksz_mrp.c:203:16: error: ‘ACL_ENABLE_2_TYPE’ undeclared (first use in this function) acl->enable = ACL_ENABLE_2_TYPE; ^ drivers/net/ethernet/micrel/ksz_mrp.c:214:18: error: ‘ACL_MAP_MODE_DISABLE’ undeclared (first use in this function) acl->map_mode = ACL_MAP_MODE_DISABLE; ^ drivers/net/ethernet/micrel/ksz_mrp.c:216:19: error: ‘ACL_PRIO_MODE_REPLACE’ undeclared (first use in this function) acl->prio_mode = ACL_PRIO_MODE_REPLACE; ^ drivers/net/ethernet/micrel/ksz_mrp.c:217:18: error: dereferencing pointer to incomplete type ‘struct mrp_port_info’ acl->prio = info->priority[SR_CLASS_B].regenerated_priority; ^ drivers/net/ethernet/micrel/ksz_mrp.c:217:29: error: ‘SR_CLASS_B’ undeclared (first use in this function) acl->prio = info->priority[SR_CLASS_B].regenerated_priority; ^ drivers/net/ethernet/micrel/ksz_mrp.c:222:18: error: ‘struct ksz_sw’ has no member named ‘acllock’ mutex_unlock(&sw->acllock); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘enable_acl_remap’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:227:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:227:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:232:16: error: ‘struct ksz_sw’ has no member named ‘acllock’ mutex_lock(&sw->acllock); ^ drivers/net/ethernet/micrel/ksz_mrp.c:234:12: error: ‘struct ksz_port_cfg’ has no member named ‘acl_info’ acl = &cfg->acl_info[i]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:235:50: error: ‘struct ksz_port_cfg’ has no member named ‘avb_a’ dbg_msg(" remap: %d=%d %d:%d\n", port, remap, cfg->avb_a, cfg->avb_b); ^ drivers/net/ethernet/micrel/ksz_mrp.c:235:62: error: ‘struct ksz_port_cfg’ has no member named ‘avb_b’ dbg_msg(" remap: %d=%d %d:%d\n", port, remap, cfg->avb_a, cfg->avb_b); ^ drivers/net/ethernet/micrel/ksz_mrp.c:237:6: error: dereferencing pointer to incomplete type ‘struct ksz_acl_table’ acl->ruleset = (1 << i); ^ drivers/net/ethernet/micrel/ksz_mrp.c:240:2: error: implicit declaration of function ‘sw_w_acl_ruleset’ [-Werror=implicit-function-declaration] sw_w_acl_ruleset(sw, port, i, acl); ^ drivers/net/ethernet/micrel/ksz_mrp.c:243:12: error: ‘struct ksz_port_cfg’ has no member named ‘acl_info’ acl = &cfg->acl_info[i]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:250:18: error: ‘struct ksz_sw’ has no member named ‘acllock’ mutex_unlock(&sw->acllock); ^ drivers/net/ethernet/micrel/ksz_mrp.c:256:12: error: ‘const struct ksz_sw_ops’ has no member named ‘fwd_unk_mcast’ sw->ops->fwd_unk_mcast(sw, true); ^ drivers/net/ethernet/micrel/ksz_mrp.c:264:12: error: ‘const struct ksz_sw_ops’ has no member named ‘fwd_unk_mcast’ sw->ops->fwd_unk_mcast(sw, false); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘is_host_port’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:272:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:272:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_cfg_dest_addr’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:502:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:502:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:509:11: error: ‘SRP_PORT_AVAIL’ undeclared (first use in this function) ports &= SRP_PORT_AVAIL | SRP_PORT_READY; ^ drivers/net/ethernet/micrel/ksz_mrp.c:509:28: error: ‘SRP_PORT_READY’ undeclared (first use in this function) ports &= SRP_PORT_AVAIL | SRP_PORT_READY; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_cfg_vlan’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:516:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:516:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:522:11: error: ‘SRP_PORT_AVAIL’ undeclared (first use in this function) ports &= SRP_PORT_AVAIL | SRP_PORT_READY; ^ drivers/net/ethernet/micrel/ksz_mrp.c:522:28: error: ‘SRP_PORT_READY’ undeclared (first use in this function) ports &= SRP_PORT_AVAIL | SRP_PORT_READY; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_cfg_vlan_work’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:572:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_vlan); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘mrp’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:572:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_vlan); ^ In file included from ./include/linux/compiler.h:58:0, from ./include/linux/linkage.h:4, from ./include/linux/kernel.h:6, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: drivers/net/ethernet/micrel/ksz_mrp.c:572:51: error: invalid use of undefined type ‘struct mrp_info’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_vlan); ^ ./include/linux/compiler-gcc.h:182:21: note: in definition of macro ‘__compiler_offsetof’ __builtin_offsetof(a, b) ^ ./include/linux/kernel.h:838:29: note: in expansion of macro ‘offsetof’ (type *)( (char *)__mptr - offsetof(type,member) );}) ^ drivers/net/ethernet/micrel/ksz_mrp.c:572:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_vlan); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘cmp_mac’: drivers/net/ethernet/micrel/ksz_mrp.c:677:9: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ cmp = a->fid - b->fid; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘show_mac_info’: drivers/net/ethernet/micrel/ksz_mrp.c:689:7: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ info->addr[0], info->addr[1], info->addr[2], ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘cmp_vlan’: drivers/net/ethernet/micrel/ksz_mrp.c:701:9: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ cmp = a->vid - b->vid; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘show_vlan_info’: drivers/net/ethernet/micrel/ksz_mrp.c:711:10: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ if (info->addr[0] != 0xff) ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:803:34: warning: ‘struct mrp_node_anchor’ declared inside parameter list static void mrp_init_list(struct mrp_node_anchor *list) ^ drivers/net/ethernet/micrel/ksz_mrp.c:803:34: warning: its scope is only this definition or declaration, which is probably not what you want drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_init_list’: drivers/net/ethernet/micrel/ksz_mrp.c:805:6: error: dereferencing pointer to incomplete type ‘struct mrp_node_anchor’ list->last = &list->anchor; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:810:2: warning: ‘struct mrp_node_anchor’ declared inside parameter list int (*cmp)(void *a, void *b), void *data) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_find_node’: drivers/net/ethernet/micrel/ksz_mrp.c:816:14: error: dereferencing pointer to incomplete type ‘struct mrp_node_anchor’ prev = &list->anchor; ^ drivers/net/ethernet/micrel/ksz_mrp.c:817:13: error: dereferencing pointer to incomplete type ‘struct mrp_node’ next = prev->next; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:846:39: warning: ‘struct mrp_node’ declared inside parameter list int (*cmp)(void *a, void *b), struct mrp_node *this) ^ drivers/net/ethernet/micrel/ksz_mrp.c:846:39: warning: ‘struct mrp_node_anchor’ declared inside parameter list drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_insert_node’: drivers/net/ethernet/micrel/ksz_mrp.c:852:10: error: dereferencing pointer to incomplete type ‘struct mrp_node_anchor’ if (list->last != &list->anchor) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:854:14: error: dereferencing pointer to incomplete type ‘struct mrp_node’ next = prev->next; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:894:39: warning: ‘struct mrp_node_anchor’ declared inside parameter list int (*cmp)(void *a, void *b), struct mrp_node *this, int delete) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_delete_this_node’: drivers/net/ethernet/micrel/ksz_mrp.c:900:10: error: dereferencing pointer to incomplete type ‘struct mrp_node_anchor’ if (list->last != &list->anchor) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:902:14: error: dereferencing pointer to incomplete type ‘struct mrp_node’ next = prev->next; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:967:39: warning: ‘struct mrp_node_anchor’ declared inside parameter list int (*cmp)(void *a, void *b), struct mrp_node *this) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_delete_node’: drivers/net/ethernet/micrel/ksz_mrp.c:969:23: error: passing argument 1 of ‘mrp_delete_this_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] mrp_delete_this_node(list, cmp, this, 2); ^ drivers/net/ethernet/micrel/ksz_mrp.c:893:25: note: expected ‘struct mrp_node_anchor *’ but argument is of type ‘struct mrp_node_anchor *’ static struct mrp_node *mrp_delete_this_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:973:39: warning: ‘struct mrp_node_anchor’ declared inside parameter list int (*cmp)(void *a, void *b), struct mrp_node *this) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_remove_node’: drivers/net/ethernet/micrel/ksz_mrp.c:975:30: error: passing argument 1 of ‘mrp_delete_this_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] return mrp_delete_this_node(list, cmp, this, 0); ^ drivers/net/ethernet/micrel/ksz_mrp.c:893:25: note: expected ‘struct mrp_node_anchor *’ but argument is of type ‘struct mrp_node_anchor *’ static struct mrp_node *mrp_delete_this_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:979:2: warning: ‘struct mrp_node_anchor’ declared inside parameter list void (*show)(void *a)) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_show_node’: drivers/net/ethernet/micrel/ksz_mrp.c:983:13: error: dereferencing pointer to incomplete type ‘struct mrp_node_anchor’ next = list->anchor.next; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_alloc_node’: drivers/net/ethernet/micrel/ksz_mrp.c:1232:24: error: invalid application of ‘sizeof’ to incomplete type ‘struct mrp_node’ node = kzalloc(sizeof(struct mrp_node), GFP_KERNEL); ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:1259:2: warning: ‘struct mrp_node_anchor’ declared inside parameter list u8 *addr, u16 fid) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_get_mac_info’: drivers/net/ethernet/micrel/ksz_mrp.c:1262:22: error: storage size of ‘data’ isn’t known struct mrp_mac_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1266:23: error: passing argument 1 of ‘mrp_find_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] node = mrp_find_node(list, cmp_mac, &data); ^ drivers/net/ethernet/micrel/ksz_mrp.c:809:14: note: expected ‘struct mrp_node_anchor *’ but argument is of type ‘struct mrp_node_anchor *’ static void *mrp_find_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c:1270:32: error: invalid application of ‘sizeof’ to incomplete type ‘struct mrp_mac_info’ node = mrp_alloc_node(sizeof(struct mrp_mac_info)); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1274:7: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ info->fid = fid; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1276:19: error: passing argument 1 of ‘mrp_insert_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] mrp_insert_node(list, cmp_mac, node); ^ drivers/net/ethernet/micrel/ksz_mrp.c:845:13: note: expected ‘struct mrp_node_anchor *’ but argument is of type ‘struct mrp_node_anchor *’ static void mrp_insert_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c:1276:34: error: passing argument 3 of ‘mrp_insert_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] mrp_insert_node(list, cmp_mac, node); ^ drivers/net/ethernet/micrel/ksz_mrp.c:845:13: note: expected ‘struct mrp_node *’ but argument is of type ‘struct mrp_node *’ static void mrp_insert_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c:1262:22: warning: unused variable ‘data’ [-Wunused-variable] struct mrp_mac_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:1282:2: warning: ‘struct mrp_node_anchor’ declared inside parameter list u16 vid, u8 *addr) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_get_vlan_info’: drivers/net/ethernet/micrel/ksz_mrp.c:1285:23: error: storage size of ‘data’ isn’t known struct mrp_vlan_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1292:23: error: passing argument 1 of ‘mrp_find_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] node = mrp_find_node(list, cmp_vlan, &data); ^ drivers/net/ethernet/micrel/ksz_mrp.c:809:14: note: expected ‘struct mrp_node_anchor *’ but argument is of type ‘struct mrp_node_anchor *’ static void *mrp_find_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c:1296:32: error: invalid application of ‘sizeof’ to incomplete type ‘struct mrp_vlan_info’ node = mrp_alloc_node(sizeof(struct mrp_vlan_info)); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1300:7: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ info->vid = vid; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1302:19: error: passing argument 1 of ‘mrp_insert_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] mrp_insert_node(list, cmp_vlan, node); ^ drivers/net/ethernet/micrel/ksz_mrp.c:845:13: note: expected ‘struct mrp_node_anchor *’ but argument is of type ‘struct mrp_node_anchor *’ static void mrp_insert_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c:1302:35: error: passing argument 3 of ‘mrp_insert_node’ from incompatible pointer type [-Werror=incompatible-pointer-types] mrp_insert_node(list, cmp_vlan, node); ^ drivers/net/ethernet/micrel/ksz_mrp.c:845:13: note: expected ‘struct mrp_node *’ but argument is of type ‘struct mrp_node *’ static void mrp_insert_node(struct mrp_node_anchor *list, ^ drivers/net/ethernet/micrel/ksz_mrp.c:1285:23: warning: unused variable ‘data’ [-Wunused-variable] struct mrp_vlan_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:1338:2: warning: ‘struct SRP_reserv’ declared inside parameter list u8 port) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_create_report’: drivers/net/ethernet/micrel/ksz_mrp.c:1342:26: error: invalid application of ‘sizeof’ to incomplete type ‘struct mrp_report’ attrib = kzalloc(sizeof(struct mrp_report), GFP_KERNEL); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1347:9: error: dereferencing pointer to incomplete type ‘struct mrp_report’ attrib->attrib = reserv; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_alloc_mac’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1374:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1374:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_free_mac’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1381:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1381:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_alloc_vlan’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1388:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1388:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_free_vlan’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1395:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1395:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_alloc_fid’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1402:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1402:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_free_fid’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1409:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1409:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_lv’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1442:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1442:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:1456:6: error: ‘MRP_ACTION_LV’ undeclared (first use in this function) MRP_ACTION_LV, type, p); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1477:12: error: ‘DEV_IOC_MRP_REPORT’ undeclared (first use in this function) result = DEV_IOC_MRP_REPORT; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:1482:9: warning: ‘struct MRP_mac’ declared inside parameter list struct MRP_mac *mac) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_lv_mac’: drivers/net/ethernet/micrel/ksz_mrp.c:1485:22: error: storage size of ‘data’ isn’t known struct mrp_mac_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1493:5: error: dereferencing pointer to incomplete type ‘struct MRP_mac’ mac->addr[0], ^ drivers/net/ethernet/micrel/ksz_mrp.c:1507:18: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ mrp_ports = info->mrp_ports; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1529:21: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) &info->tx_ports, MRP_TYPE_MAC); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1485:22: warning: unused variable ‘data’ [-Wunused-variable] struct mrp_mac_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:1537:9: warning: ‘struct MRP_mac’ declared inside parameter list struct MRP_mac *mac, u8 new_decl) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_rx_mac’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1546:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1546:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:1551:5: error: dereferencing pointer to incomplete type ‘struct MRP_mac’ mac->addr[0], ^ drivers/net/ethernet/micrel/ksz_mrp.c:1562:6: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ info->rx_ports |= m; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1563:22: error: ‘SRP_PORT_BLACKLIST’ undeclared (first use in this function) info->srp_ports &= ~SRP_PORT_BLACKLIST; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1594:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1594:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:1605:16: error: ‘MRP_ACTION_TX’ undeclared (first use in this function) u8 action = MRP_ACTION_TX; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1610:14: error: ‘MRP_ACTION_TX_NEW’ undeclared (first use in this function) action = MRP_ACTION_TX_NEW; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1620:5: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) MRP_TYPE_MAC, q); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1624:12: error: ‘DEV_IOC_MRP_REPORT’ undeclared (first use in this function) result = DEV_IOC_MRP_REPORT; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:1629:9: warning: ‘struct MRP_vlan’ declared inside parameter list struct MRP_vlan *vlan) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_lv_vlan’: drivers/net/ethernet/micrel/ksz_mrp.c:1633:23: error: storage size of ‘data’ isn’t known struct mrp_vlan_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1639:25: error: dereferencing pointer to incomplete type ‘struct MRP_vlan’ if (dbg_mrp_vlan || vlan->id == 2 || vlan->id > 4090) ^ drivers/net/ethernet/micrel/ksz_mrp.c:1649:14: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ ports = info->ports; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1678:21: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) &info->tx_ports, MRP_TYPE_VLAN); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1633:23: warning: unused variable ‘data’ [-Wunused-variable] struct mrp_vlan_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:1689:9: warning: ‘struct MRP_vlan’ declared inside parameter list struct MRP_vlan *vlan, u8 new_decl) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_rx_vlan’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1700:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:1700:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:1704:25: error: dereferencing pointer to incomplete type ‘struct MRP_vlan’ if (dbg_mrp_vlan || vlan->id == 2 || vlan->id > 4090) ^ drivers/net/ethernet/micrel/ksz_mrp.c:1711:14: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ ports = info->ports; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1727:21: error: ‘VID_IN_DATA’ undeclared (first use in this function) index = vlan->id / VID_IN_DATA; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1729:9: error: ‘struct ksz_port_cfg’ has no member named ‘restricted’ if (cfg->restricted) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:1730:17: error: ‘struct ksz_sw_info’ has no member named ‘vid’ if (!(sw->info->vid[index] & (1 << bit))) ^ drivers/net/ethernet/micrel/ksz_mrp.c:1773:34: error: subscripted value is neither array nor pointer nor vector if (mrp->rx_ports != sw->rx_ports[0]) ^ drivers/net/ethernet/micrel/ksz_mrp.c:1774:52: error: subscripted value is neither array nor pointer nor vector dbg_msg(" rx: %x %x\n", mrp->rx_ports, sw->rx_ports[0]); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1791:16: error: ‘MRP_ACTION_TX’ undeclared (first use in this function) u8 action = MRP_ACTION_TX; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1796:14: error: ‘MRP_ACTION_TX_NEW’ undeclared (first use in this function) action = MRP_ACTION_TX_NEW; ^ drivers/net/ethernet/micrel/ksz_mrp.c:1806:5: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) MRP_TYPE_VLAN, q); ^ drivers/net/ethernet/micrel/ksz_mrp.c:1810:12: error: ‘DEV_IOC_MRP_REPORT’ undeclared (first use in this function) result = DEV_IOC_MRP_REPORT; ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:4792:9: warning: ‘struct mrp_cfg_options’ declared inside parameter list struct mrp_cfg_options *cmd, int *output) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_get_tx’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:4800:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:4800:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:4801:15: error: ‘DEV_IOC_MRP_REPORT’ undeclared (first use in this function) int result = DEV_IOC_MRP_REPORT; ^ drivers/net/ethernet/micrel/ksz_mrp.c:4808:5: error: dereferencing pointer to incomplete type ‘struct mrp_cfg_options’ cmd->action = attrib->action; ^ drivers/net/ethernet/micrel/ksz_mrp.c:4812:6: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) if (MRP_TYPE_MAC == attrib->type) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:4817:13: error: dereferencing pointer to incomplete type ‘struct MRP_mac’ memcpy(mac->addr, info->addr, ETH_ALEN); ^ drivers/net/ethernet/micrel/ksz_mrp.c:4817:25: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ memcpy(mac->addr, info->addr, ETH_ALEN); ^ drivers/net/ethernet/micrel/ksz_mrp.c:4818:13: error: ‘SIZEOF_MRP_mac’ undeclared (first use in this function) *output = SIZEOF_MRP_mac; ^ drivers/net/ethernet/micrel/ksz_mrp.c:4819:7: error: ‘MRP_ACTION_LV’ undeclared (first use in this function) if (MRP_ACTION_LV == attrib->action && ^ drivers/net/ethernet/micrel/ksz_mrp.c:4824:13: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) } else if (MRP_TYPE_VLAN == attrib->type) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:4829:7: error: dereferencing pointer to incomplete type ‘struct MRP_vlan’ vlan->id = info->vid; ^ drivers/net/ethernet/micrel/ksz_mrp.c:4829:18: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ vlan->id = info->vid; ^ drivers/net/ethernet/micrel/ksz_mrp.c:4830:13: error: ‘SIZEOF_MRP_vlan’ undeclared (first use in this function) *output = SIZEOF_MRP_vlan; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_get_attribute’: drivers/net/ethernet/micrel/ksz_mrp.c:4916:13: error: dereferencing pointer to incomplete type ‘struct mrp_cfg_options’ switch (cmd->type) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:4917:7: error: ‘MRP_TYPE_UNKNOWN’ undeclared (first use in this function) case MRP_TYPE_UNKNOWN: ^ drivers/net/ethernet/micrel/ksz_mrp.c:4918:40: error: passing argument 3 of ‘proc_mrp_get_tx’ from incompatible pointer type [-Werror=incompatible-pointer-types] result = proc_mrp_get_tx(mrp, start, cmd, output); ^ drivers/net/ethernet/micrel/ksz_mrp.c:4791:12: note: expected ‘struct mrp_cfg_options *’ but argument is of type ‘struct mrp_cfg_options *’ static int proc_mrp_get_tx(struct mrp_info *mrp, int start, ^ drivers/net/ethernet/micrel/ksz_mrp.c:4920:7: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) case MRP_TYPE_MAC: ^ drivers/net/ethernet/micrel/ksz_mrp.c:4922:7: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) case MRP_TYPE_VLAN: ^ In file included from drivers/net/ethernet/micrel/ksz_mrp.c:5071:0, from drivers/net/ethernet/micrel/ksz_sw.c:888, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/mrp.c: In function ‘mrp_init_applicant’: drivers/net/ethernet/micrel/mrp.c:2008:2: error: implicit declaration of function ‘inc_mac_addr’ [-Werror=implicit-function-declaration] inc_mac_addr(app->src_addr, dev->dev_addr, 0); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:5142:9: warning: ‘struct MRP_mac’ declared inside parameter list struct MRP_mac *mac, u8 new_decl) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_join_mac’: drivers/net/ethernet/micrel/ksz_mrp.c:5150:28: error: dereferencing pointer to incomplete type ‘struct MRP_mac’ mmrp_req_join_mac(app, mac->addr, new_decl); ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:5155:9: warning: ‘struct MRP_mac’ declared inside parameter list struct MRP_mac *mac) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_leave_mac’: drivers/net/ethernet/micrel/ksz_mrp.c:5163:36: error: dereferencing pointer to incomplete type ‘struct MRP_mac’ return mmrp_req_leave_mac(app, mac->addr); ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:5167:9: warning: ‘struct MRP_vlan’ declared inside parameter list struct MRP_vlan *vlan, u8 new_decl) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_join_vlan’: drivers/net/ethernet/micrel/ksz_mrp.c:5175:25: error: dereferencing pointer to incomplete type ‘struct MRP_vlan’ mvrp_req_join(app, vlan->id, new_decl); ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:5180:9: warning: ‘struct MRP_vlan’ declared inside parameter list struct MRP_vlan *vlan) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_leave_vlan’: drivers/net/ethernet/micrel/ksz_mrp.c:5188:33: error: dereferencing pointer to incomplete type ‘struct MRP_vlan’ return mvrp_req_leave(app, vlan->id); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_set_attribute’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5295:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5295:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:5298:14: error: dereferencing pointer to incomplete type ‘struct mrp_cfg_options’ uint n = cmd->port; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5303:7: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) case MRP_TYPE_MAC: ^ drivers/net/ethernet/micrel/ksz_mrp.c:5304:7: error: ‘MRP_ACTION_RX’ undeclared (first use in this function) if (MRP_ACTION_RX == cmd->action) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5307:12: error: ‘MRP_ACTION_LV’ undeclared (first use in this function) else if (MRP_ACTION_LV == cmd->action) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5309:12: error: ‘MRP_ACTION_DECL’ undeclared (first use in this function) else if (MRP_ACTION_DECL == cmd->action) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5312:12: error: ‘MRP_ACTION_DROP’ undeclared (first use in this function) else if (MRP_ACTION_DROP == cmd->action) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5314:12: error: ‘MRP_ACTION_ON’ undeclared (first use in this function) else if (MRP_ACTION_ON == cmd->action) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5319:14: error: ‘MRP_ACTION_OFF’ undeclared (first use in this function) } else if (MRP_ACTION_OFF == cmd->action) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5328:7: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) case MRP_TYPE_VLAN: ^ drivers/net/ethernet/micrel/ksz_mrp.c:5445:7: error: ‘MRP_TYPE_PORT’ undeclared (first use in this function) case MRP_TYPE_PORT: ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_cfg_mcast_addr’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5473:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5473:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:5484:6: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ mac->srp_ports |= SRP_PORT_SET; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5484:21: error: ‘SRP_PORT_SET’ undeclared (first use in this function) mac->srp_ports |= SRP_PORT_SET; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_cfg_mac_work’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5495:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_mac); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘mrp’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5495:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_mac); ^ In file included from ./include/linux/compiler.h:58:0, from ./include/linux/linkage.h:4, from ./include/linux/kernel.h:6, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: drivers/net/ethernet/micrel/ksz_mrp.c:5495:51: error: invalid use of undefined type ‘struct mrp_info’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_mac); ^ ./include/linux/compiler-gcc.h:182:21: note: in definition of macro ‘__compiler_offsetof’ __builtin_offsetof(a, b) ^ ./include/linux/kernel.h:838:29: note: in expansion of macro ‘offsetof’ (type *)( (char *)__mptr - offsetof(type,member) );}) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5495:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, cfg_mac); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rx_proc’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5540:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, rx_proc); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘mrp’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5540:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, rx_proc); ^ In file included from ./include/linux/compiler.h:58:0, from ./include/linux/linkage.h:4, from ./include/linux/kernel.h:6, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: drivers/net/ethernet/micrel/ksz_mrp.c:5540:51: error: invalid use of undefined type ‘struct mrp_info’ struct mrp_info *mrp = container_of(work, struct mrp_info, rx_proc); ^ ./include/linux/compiler-gcc.h:182:21: note: in definition of macro ‘__compiler_offsetof’ __builtin_offsetof(a, b) ^ ./include/linux/kernel.h:838:29: note: in expansion of macro ‘offsetof’ (type *)( (char *)__mptr - offsetof(type,member) );}) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5540:25: note: in expansion of macro ‘container_of’ struct mrp_info *mrp = container_of(work, struct mrp_info, rx_proc); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_xmit’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5562:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5562:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:5580:25: error: subscripted value is neither array nor pointer nor vector tx_ports = sw->tx_ports[0] & mrp->tx_ports; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5582:43: error: subscripted value is neither array nor pointer nor vector if (!(tx_ports & (1 << p)) && sw->tx_ports[0] != mrp->tx_ports) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5583:50: error: subscripted value is neither array nor pointer nor vector dbg_msg(" tx close: %d %x %x\n", p, sw->tx_ports[0], mrp->tx_ports); ^ drivers/net/ethernet/micrel/ksz_mrp.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:5615:55: warning: ‘struct mrp_work’ declared inside parameter list static void proc_mrp_cmd(struct mrp_info *mrp, struct mrp_work *parent) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_cmd’: drivers/net/ethernet/micrel/ksz_mrp.c:5617:19: error: dereferencing pointer to incomplete type ‘struct mrp_work’ u8 *data = parent->param.data; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5635:8: error: ‘DEV_MRP_ATTRIBUTE’ undeclared (first use in this function) case DEV_MRP_ATTRIBUTE: ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_work’: ./include/linux/kernel.h:837:27: error: dereferencing pointer to incomplete type ‘struct mrp_access’ const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5664:3: note: in expansion of macro ‘container_of’ container_of(work, struct mrp_access, work); ^ ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5664:3: note: in expansion of macro ‘container_of’ container_of(work, struct mrp_access, work); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘info’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5664:3: note: in expansion of macro ‘container_of’ container_of(work, struct mrp_access, work); ^ In file included from ./include/linux/compiler.h:58:0, from ./include/linux/linkage.h:4, from ./include/linux/kernel.h:6, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: drivers/net/ethernet/micrel/ksz_mrp.c:5664:29: error: invalid use of undefined type ‘struct mrp_access’ container_of(work, struct mrp_access, work); ^ ./include/linux/compiler-gcc.h:182:21: note: in definition of macro ‘__compiler_offsetof’ __builtin_offsetof(a, b) ^ ./include/linux/kernel.h:838:29: note: in expansion of macro ‘offsetof’ (type *)( (char *)__mptr - offsetof(type,member) );}) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5664:3: note: in expansion of macro ‘container_of’ container_of(work, struct mrp_access, work); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5666:3: note: in expansion of macro ‘container_of’ container_of(info, struct mrp_info, hw_access); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘mrp’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:5666:3: note: in expansion of macro ‘container_of’ container_of(info, struct mrp_info, hw_access); ^ In file included from ./include/linux/compiler.h:58:0, from ./include/linux/linkage.h:4, from ./include/linux/kernel.h:6, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: drivers/net/ethernet/micrel/ksz_mrp.c:5666:29: error: invalid use of undefined type ‘struct mrp_info’ container_of(info, struct mrp_info, hw_access); ^ ./include/linux/compiler-gcc.h:182:21: note: in definition of macro ‘__compiler_offsetof’ __builtin_offsetof(a, b) ^ ./include/linux/kernel.h:838:29: note: in expansion of macro ‘offsetof’ (type *)( (char *)__mptr - offsetof(type,member) );}) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5666:3: note: in expansion of macro ‘container_of’ container_of(info, struct mrp_info, hw_access); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:5670:12: error: dereferencing pointer to incomplete type ‘struct mrp_work’ while (cmd->used) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5671:21: error: passing argument 2 of ‘proc_mrp_cmd’ from incompatible pointer type [-Werror=incompatible-pointer-types] proc_mrp_cmd(mrp, cmd); ^ drivers/net/ethernet/micrel/ksz_mrp.c:5615:13: note: expected ‘struct mrp_work *’ but argument is of type ‘struct mrp_work *’ static void proc_mrp_cmd(struct mrp_info *mrp, struct mrp_work *parent) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5673:17: error: ‘MRP_WORK_LAST’ undeclared (first use in this function) info->head &= MRP_WORK_LAST; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_hw_access’: drivers/net/ethernet/micrel/ksz_mrp.c:5687:16: error: dereferencing pointer to incomplete type ‘struct mrp_access’ work = &access->works[access->tail]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5688:10: error: dereferencing pointer to incomplete type ‘struct mrp_work’ if (work->used) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5699:18: error: ‘MRP_WORK_LAST’ undeclared (first use in this function) access->tail &= MRP_WORK_LAST; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5711:7: error: ‘DEV_IOC_MRP_REPORT’ undeclared (first use in this function) if (DEV_IOC_MRP_REPORT == rc) { ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘exit_mrp_work’: drivers/net/ethernet/micrel/ksz_mrp.c:5730:18: error: ‘MRP_WORK_NUM’ undeclared (first use in this function) for (i = 0; i < MRP_WORK_NUM; i++) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5731:17: error: dereferencing pointer to incomplete type ‘struct mrp_access’ work = &access->works[i]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5732:19: error: dereferencing pointer to incomplete type ‘struct mrp_work’ flush_work(&work->work); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘init_mrp_work’: drivers/net/ethernet/micrel/ksz_mrp.c:5744:18: error: ‘MRP_WORK_NUM’ undeclared (first use in this function) for (i = 0; i < MRP_WORK_NUM; i++) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5745:17: error: dereferencing pointer to incomplete type ‘struct mrp_access’ work = &access->works[i]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5746:7: error: dereferencing pointer to incomplete type ‘struct mrp_work’ work->mrp = mrp; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5748:41: error: ‘MRP_WORK_LAST’ undeclared (first use in this function) work->prev = &access->works[(i - 1) & MRP_WORK_LAST]; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_dev_req’: drivers/net/ethernet/micrel/ksz_mrp.c:5934:6: error: ‘DEV_MRP_ATTRIBUTE’ undeclared (first use in this function) if (DEV_MRP_ATTRIBUTE == subcmd) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5935:14: error: dereferencing pointer to incomplete type ‘struct mrp_cfg_options’ switch (cmd->type) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:5936:8: error: ‘MRP_TYPE_PORT’ undeclared (first use in this function) case MRP_TYPE_PORT: ^ drivers/net/ethernet/micrel/ksz_mrp.c:5941:8: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) case MRP_TYPE_MAC: ^ drivers/net/ethernet/micrel/ksz_mrp.c:5942:17: error: ‘SIZEOF_MRP_mac’ undeclared (first use in this function) param_size = SIZEOF_MRP_mac; ^ drivers/net/ethernet/micrel/ksz_mrp.c:5944:8: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) case MRP_TYPE_VLAN: ^ drivers/net/ethernet/micrel/ksz_mrp.c:5945:17: error: ‘SIZEOF_MRP_vlan’ undeclared (first use in this function) param_size = SIZEOF_MRP_vlan; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_setup_vlan’: drivers/net/ethernet/micrel/ksz_mrp.c:6166:23: error: storage size of ‘data’ isn’t known struct mrp_vlan_info data; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6167:18: error: storage size of ‘mrp_vlan’ isn’t known struct MRP_vlan mrp_vlan; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6172:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6172:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:6183:12: error: ‘struct ksz_vlan_table’ has no member named ‘ports’ if (vlan->ports & (1 << p)) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:6201:15: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ ports = info->ports; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6202:25: error: ‘struct ksz_vlan_table’ has no member named ‘ports’ info->set_ports = vlan->ports; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6214:17: error: ‘VID_IN_DATA’ undeclared (first use in this function) index = vid / VID_IN_DATA; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6216:17: error: ‘struct ksz_sw_info’ has no member named ‘vid’ if (!(sw->info->vid[index] & (1 << bit))) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6167:18: warning: unused variable ‘mrp_vlan’ [-Wunused-variable] struct MRP_vlan mrp_vlan; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6166:23: warning: unused variable ‘data’ [-Wunused-variable] struct mrp_vlan_info data; ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6287:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6287:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:6301:27: error: subscripted value is neither array nor pointer nor vector mac_oper &= sw->rx_ports[0]; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6376:13: error: invalid storage class for function ‘mrp_delete_reserv’ static void mrp_delete_reserv(struct mrp_info *mrp, u8 port, int direction) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_delete_reserv’: drivers/net/ethernet/micrel/ksz_mrp.c:6385:16: error: dereferencing pointer to incomplete type ‘struct SRP_reserv’ next = reserv->next; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6387:8: error: ‘SRP_TALKER’ undeclared (first use in this function) if (SRP_TALKER == direction) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6388:5: error: implicit declaration of function ‘mrp_delete_talker’ [-Werror=implicit-function-declaration] mrp_delete_talker(mrp, port, info, reserv); ^ drivers/net/ethernet/micrel/ksz_mrp.c:6390:5: error: implicit declaration of function ‘mrp_delete_listener’ [-Werror=implicit-function-declaration] mrp_delete_listener(mrp, port, info, reserv); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6376:1: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static void mrp_delete_reserv(struct mrp_info *mrp, u8 port, int direction) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6396:13: error: invalid storage class for function ‘mrp_reset_reserv’ static void mrp_reset_reserv(struct mrp_info *mrp, uint first, uint last) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_reset_reserv’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6403:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6403:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:6407:29: error: ‘SRP_LISTENER’ undeclared (first use in this function) mrp_delete_reserv(mrp, p, SRP_LISTENER); ^ drivers/net/ethernet/micrel/ksz_mrp.c:6411:29: error: ‘SRP_TALKER’ undeclared (first use in this function) mrp_delete_reserv(mrp, p, SRP_TALKER); ^ drivers/net/ethernet/micrel/ksz_mrp.c:6418:17: error: dereferencing pointer to incomplete type ‘struct SRP_reserv’ next = reserv->next; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6425:39: error: dereferencing pointer to incomplete type ‘struct SRP_stream’ rx = mrp_get_port_info(mrp, stream->in_port); ^ drivers/net/ethernet/micrel/ksz_mrp.c:6426:16: error: implicit declaration of function ‘srp_find_reserv’ [-Werror=implicit-function-declaration] t_reserv = srp_find_reserv(&rx->registered, ^ drivers/net/ethernet/micrel/ksz_mrp.c:6432:4: error: implicit declaration of function ‘srp_remove_reserv’ [-Werror=implicit-function-declaration] srp_remove_reserv(reserv, true); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6438:13: error: invalid storage class for function ‘proc_mrp_attribute’ static void proc_mrp_attribute(struct mrp_info *mrp, u8 *data) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘proc_mrp_attribute’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6444:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6444:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:6448:15: error: dereferencing pointer to incomplete type ‘struct mrp_cfg_options’ in_port = cmd->port; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6450:9: error: ‘DEV_IOC_MRP_REPORT’ undeclared (first use in this function) while (DEV_IOC_MRP_REPORT == result) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:6451:17: error: ‘MRP_ACTION_TX’ undeclared (first use in this function) cmd->action = MRP_ACTION_TX; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6452:15: error: ‘MRP_TYPE_UNKNOWN’ undeclared (first use in this function) cmd->type = MRP_TYPE_UNKNOWN; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6455:22: error: ‘MRP_ACTION_TX_NEW’ undeclared (first use in this function) cmd->action != MRP_ACTION_TX_NEW && ^ drivers/net/ethernet/micrel/ksz_mrp.c:6456:22: error: ‘MRP_ACTION_LV’ undeclared (first use in this function) cmd->action != MRP_ACTION_LV) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6465:7: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) if (MRP_TYPE_MAC == cmd->type) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:6473:14: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) } else if (MRP_TYPE_VLAN == cmd->type) { ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6513:13: error: invalid storage class for function ‘mmrp_acton’ static void mmrp_acton(struct mrp_applicant *app, struct mrp_attr *attr) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mmrp_acton’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6518:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6518:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:6520:5: error: dereferencing pointer to incomplete type ‘struct mrp_cfg_options’ cmd->port = get_log_port(sw, app->port); ^ drivers/net/ethernet/micrel/ksz_mrp.c:6523:15: error: ‘MRP_TYPE_MAC’ undeclared (first use in this function) cmd->type = MRP_TYPE_MAC; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6528:18: error: ‘MRP_ACTION_LV’ undeclared (first use in this function) cmd->action = MRP_ACTION_LV; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6530:18: error: ‘MRP_ACTION_RX’ undeclared (first use in this function) cmd->action = MRP_ACTION_RX; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6533:19: error: ‘MRP_TYPE_UNKNOWN’ undeclared (first use in this function) if (cmd->type != MRP_TYPE_UNKNOWN) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6537:13: error: invalid storage class for function ‘mmrp_cleanup’ static void mmrp_cleanup(struct mrp_applicant *app) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mmrp_cleanup’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6542:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6542:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6553:13: error: invalid storage class for function ‘mvrp_acton’ static void mvrp_acton(struct mrp_applicant *app, struct mrp_attr *attr) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mvrp_acton’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6558:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6558:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:6560:5: error: dereferencing pointer to incomplete type ‘struct mrp_cfg_options’ cmd->port = get_log_port(sw, app->port); ^ drivers/net/ethernet/micrel/ksz_mrp.c:6565:15: error: ‘MRP_TYPE_VLAN’ undeclared (first use in this function) cmd->type = MRP_TYPE_VLAN; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6570:18: error: ‘MRP_ACTION_LV’ undeclared (first use in this function) cmd->action = MRP_ACTION_LV; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6572:18: error: ‘MRP_ACTION_RX’ undeclared (first use in this function) cmd->action = MRP_ACTION_RX; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6575:19: error: ‘MRP_TYPE_UNKNOWN’ undeclared (first use in this function) if (cmd->type != MRP_TYPE_UNKNOWN) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6579:13: error: invalid storage class for function ‘mvrp_cleanup’ static void mvrp_cleanup(struct mrp_applicant *app) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mvrp_cleanup’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6584:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6584:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6675:13: error: invalid storage class for function ‘setup_mrp’ static void setup_mrp(struct mrp_info *mrp, struct net_device *dev) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘setup_mrp’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6681:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6681:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:6693:15: error: ‘struct ksz_mac_table’ has no member named ‘addr’ memcpy(entry->addr, maap_addr[j], ETH_ALEN); ^ drivers/net/ethernet/micrel/ksz_mrp.c:6695:13: error: ‘struct ksz_mac_table’ has no member named ‘addr’ if ((entry->addr[0] & 0x0F) == 0x01) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6700:33: error: ‘FWD_MCAST’ undeclared (first use in this function) alu->forward = FWD_MAIN_DEV | FWD_MCAST | FWD_KNOWN; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6700:45: error: ‘FWD_KNOWN’ undeclared (first use in this function) alu->forward = FWD_MAIN_DEV | FWD_MCAST | FWD_KNOWN; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6703:6: error: ‘struct ksz_alu_table’ has no member named ‘index’ alu->index = 0; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6704:6: error: ‘struct ksz_alu_table’ has no member named ‘type’ alu->type = 2; ^ drivers/net/ethernet/micrel/ksz_mrp.c:6705:27: warning: passing argument 3 of ‘sw->ops->cfg_mac’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] sw->ops->cfg_mac(sw, 0, maap_addr[j], entry->ports, false, ^ drivers/net/ethernet/micrel/ksz_mrp.c:6705:27: note: expected ‘u8 * {aka unsigned char *}’ but argument is of type ‘const u8 * {aka const unsigned char *}’ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6711:30: error: invalid storage class for function ‘mrp_start_port_app’ static struct mrp_applicant *mrp_start_port_app(struct mrp_info *mrp, ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_start_port_app’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6717:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6717:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6727:13: error: invalid storage class for function ‘mrp_stop_port_app’ static void mrp_stop_port_app(struct mrp_port *port, ^ drivers/net/ethernet/micrel/ksz_mrp.c:6748:13: error: invalid storage class for function ‘mrp_start_mmrp_port_app’ static void mrp_start_mmrp_port_app(struct mrp_info *mrp, uint p, ^ drivers/net/ethernet/micrel/ksz_mrp.c:6758:13: error: invalid storage class for function ‘mrp_start_mmrp_app’ static void mrp_start_mmrp_app(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_start_mmrp_app’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6763:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6763:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6776:13: error: invalid storage class for function ‘mrp_stop_mmrp_app’ static void mrp_stop_mmrp_app(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_stop_mmrp_app’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6780:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6780:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6793:13: error: invalid storage class for function ‘mrp_start_mvrp_port_app’ static void mrp_start_mvrp_port_app(struct mrp_info *mrp, uint p, ^ drivers/net/ethernet/micrel/ksz_mrp.c:6804:13: error: invalid storage class for function ‘mrp_start_mvrp_app’ static void mrp_start_mvrp_app(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_start_mvrp_app’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6809:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6809:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6823:13: error: invalid storage class for function ‘mrp_stop_mvrp_app’ static void mrp_stop_mvrp_app(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_stop_mvrp_app’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6827:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:6827:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:6973:13: error: invalid storage class for function ‘mrp_start_app’ static void mrp_start_app(struct mrp_info *mrp) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6984:13: error: invalid storage class for function ‘mrp_stop_app’ static void mrp_stop_app(struct mrp_info *mrp) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6995:13: error: invalid storage class for function ‘mrp_mmrp_decl’ static void mrp_mmrp_decl(struct mrp_info *mrp, uint p, bool on) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_mmrp_decl’: drivers/net/ethernet/micrel/ksz_mrp.c:7008:11: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ if ((mac->tx_ports & m) && !on) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:7013:19: error: storage size of ‘mrp_mac’ isn’t known struct MRP_mac mrp_mac; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7013:19: warning: unused variable ‘mrp_mac’ [-Wunused-variable] drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7024:13: error: invalid storage class for function ‘mrp_mvrp_decl’ static void mrp_mvrp_decl(struct mrp_info *mrp, uint p, bool on) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_mvrp_decl’: drivers/net/ethernet/micrel/ksz_mrp.c:7037:11: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ if (vlan->ports & SRP_PORT_AVAIL) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:7037:21: error: ‘SRP_PORT_AVAIL’ undeclared (first use in this function) if (vlan->ports & SRP_PORT_AVAIL) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:7042:21: error: storage size of ‘mrp_vlan’ isn’t known struct MRP_vlan mrp_vlan; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7042:21: warning: unused variable ‘mrp_vlan’ [-Wunused-variable] drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7055:13: error: invalid storage class for function ‘mrp_msrp_decl’ static void mrp_msrp_decl(struct mrp_info *mrp, uint p, bool on) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_msrp_decl’: drivers/net/ethernet/micrel/ksz_mrp.c:7066:10: error: dereferencing pointer to incomplete type ‘struct SRP_reserv’ reserv->tx_ports |= m; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7067:29: error: ‘SRP_TALKER’ undeclared (first use in this function) if (reserv->direction == SRP_TALKER) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:7068:23: error: storage size of ‘talker’ isn’t known struct SRP_talker talker; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7073:14: error: implicit declaration of function ‘proc_mrp_new_talker’ [-Werror=implicit-function-declaration] result = proc_mrp_new_talker(mrp, p, ^ drivers/net/ethernet/micrel/ksz_mrp.c:7068:23: warning: unused variable ‘talker’ [-Wunused-variable] struct SRP_talker talker; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7075:36: error: ‘SRP_LISTENER’ undeclared (first use in this function) } else if (reserv->direction == SRP_LISTENER) { ^ drivers/net/ethernet/micrel/ksz_mrp.c:7076:25: error: storage size of ‘listener’ isn’t known struct SRP_listener listener; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7080:14: error: implicit declaration of function ‘proc_mrp_new_listener’ [-Werror=implicit-function-declaration] result = proc_mrp_new_listener(mrp, p, ^ drivers/net/ethernet/micrel/ksz_mrp.c:7076:25: warning: unused variable ‘listener’ [-Wunused-variable] struct SRP_listener listener; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7100:3: error: implicit declaration of function ‘proc_mrp_join_domain’ [-Werror=implicit-function-declaration] proc_mrp_join_domain(mrp, p, &mrp->domain[0], true); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7106:13: error: invalid storage class for function ‘mmrp_close_port’ static void mmrp_close_port(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7114:13: error: invalid storage class for function ‘mmrp_open_port’ static void mmrp_open_port(struct mrp_info *mrp, uint p) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mmrp_open_port’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7126:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7126:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7133:13: error: invalid storage class for function ‘mvrp_close_port’ static void mvrp_close_port(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7141:13: error: invalid storage class for function ‘mvrp_open_port’ static void mvrp_open_port(struct mrp_info *mrp, uint p) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mvrp_open_port’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7153:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7153:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7160:13: error: invalid storage class for function ‘msrp_close_port’ static void msrp_close_port(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7169:13: error: invalid storage class for function ‘msrp_open_port’ static void msrp_open_port(struct mrp_info *mrp, uint p) ^ In file included from ./include/linux/srcu.h:33:0, from ./include/linux/notifier.h:15, from ./include/linux/memory_hotplug.h:6, from ./include/linux/mmzone.h:756, from ./include/linux/gfp.h:5, from ./include/linux/kmod.h:22, from ./include/linux/module.h:13, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘msrp_open_port’: drivers/net/ethernet/micrel/ksz_mrp.c:7178:41: error: ‘srp_mrp_app’ undeclared (first use in this function) app = rcu_dereference(port->applicants[srp_mrp_app.type]); ^ ./include/linux/rcupdate.h:610:10: note: in definition of macro ‘__rcu_dereference_check’ typeof(*p) *________p1 = (typeof(*p) *__force)lockless_dereference(p); \ ^ ./include/linux/rcupdate.h:790:28: note: in expansion of macro ‘rcu_dereference_check’ #define rcu_dereference(p) rcu_dereference_check(p, 0) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7178:8: note: in expansion of macro ‘rcu_dereference’ app = rcu_dereference(port->applicants[srp_mrp_app.type]); ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7182:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7182:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:7184:3: error: implicit declaration of function ‘mrp_start_msrp_port_app’ [-Werror=implicit-function-declaration] mrp_start_msrp_port_app(mrp, p, sw->main_dev); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7189:13: error: invalid storage class for function ‘mrp_close_port’ static void mrp_close_port(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7211:13: error: invalid storage class for function ‘mrp_open_port’ static void mrp_open_port(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7227:13: error: invalid storage class for function ‘msrp_open_ports’ static void msrp_open_ports(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘msrp_open_ports’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7231:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7231:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:7236:38: error: subscripted value is neither array nor pointer nor vector sw->info->port_cfg[p].stp_state[0] == STP_STATE_FORWARDING) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7241:13: error: invalid storage class for function ‘mrp_open_ports’ static void mrp_open_ports(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_open_ports’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7245:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7245:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:7250:38: error: subscripted value is neither array nor pointer nor vector sw->info->port_cfg[p].stp_state[0] == STP_STATE_FORWARDING) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7255:13: error: invalid storage class for function ‘mrp_from_backup’ static void mrp_from_backup(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7263:13: error: invalid storage class for function ‘mrp_to_backup’ static void mrp_to_backup(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7269:13: error: invalid storage class for function ‘mrp_from_designated’ static void mrp_from_designated(struct mrp_info *mrp, uint p, bool alt) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7278:13: error: invalid storage class for function ‘mrp_to_designated’ static void mrp_to_designated(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7292:13: error: invalid storage class for function ‘mrp_tc_detected’ static void mrp_tc_detected(struct mrp_info *mrp, uint p) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7314:13: error: invalid storage class for function ‘mrp_start’ static void mrp_start(struct mrp_info *mrp) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7321:13: error: invalid storage class for function ‘mrp_stop’ static void mrp_stop(struct mrp_info *mrp) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7327:13: error: invalid storage class for function ‘mrp_open’ static void mrp_open(struct mrp_info *mrp) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_open’: drivers/net/ethernet/micrel/ksz_mrp.c:7349:29: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ mrp_cfg_dest_addr(mrp, mac->index, mac->addr, mac->ports, ^ drivers/net/ethernet/micrel/ksz_mrp.c:7363:16: error: dereferencing pointer to incomplete type ‘struct mrp_vlan_info’ if (prev_vlan->vid == vlan->vid) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7401:13: error: invalid storage class for function ‘mrp_clr_blocked_addr’ static void mrp_clr_blocked_addr(struct mrp_info *mrp, int hw_access) ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_clr_blocked_addr’: drivers/net/ethernet/micrel/ksz_mrp.c:7411:11: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ if ((mac->rx_ports & SRP_PORT_DROP) && ^ drivers/net/ethernet/micrel/ksz_mrp.c:7411:24: error: ‘SRP_PORT_DROP’ undeclared (first use in this function) if ((mac->rx_ports & SRP_PORT_DROP) && ^ drivers/net/ethernet/micrel/ksz_mrp.c:7412:25: error: ‘SRP_PORT_BLACKLIST’ undeclared (first use in this function) (mac->srp_ports & SRP_PORT_BLACKLIST)) { ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7429:13: error: invalid storage class for function ‘mrp_chk_blocked_addr’ static void mrp_chk_blocked_addr(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_chk_blocked_addr’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7434:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7434:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:7440:11: error: dereferencing pointer to incomplete type ‘struct mrp_mac_info’ if ((mac->srp_ports & SRP_PORT_BLACKLIST) && ^ drivers/net/ethernet/micrel/ksz_mrp.c:7440:25: error: ‘SRP_PORT_BLACKLIST’ undeclared (first use in this function) if ((mac->srp_ports & SRP_PORT_BLACKLIST) && ^ In file included from ./include/linux/irqflags.h:14:0, from ./arch/arm/include/asm/bitops.h:27, from ./include/linux/bitops.h:36, from ./include/linux/kernel.h:10, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: ./include/linux/typecheck.h:11:18: warning: comparison of distinct pointer types lacks a cast (void)(&__dummy == &__dummy2); \ ^ ./include/linux/jiffies.h:109:3: note: in expansion of macro ‘typecheck’ typecheck(unsigned long, b) && \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7441:7: note: in expansion of macro ‘time_after_eq’ time_after_eq(jiffies, mac->jiffies)) { ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:7448:24: error: ‘SRP_PORT_IGNORE’ undeclared (first use in this function) if (mac->rx_ports & SRP_PORT_IGNORE) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7449:22: error: ‘SRP_PORT_DROP’ undeclared (first use in this function) mac->rx_ports |= SRP_PORT_DROP; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7456:14: error: ‘struct ksz_port_cfg’ has no member named ‘avb_b’ if (!cfg->avb_b) { ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7476:13: error: invalid storage class for function ‘mrp_close’ static void mrp_close(struct mrp_info *mrp, int hw_access) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_close’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7479:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:7479:23: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7487:16: error: invalid storage class for function ‘sysfs_mrp_read’ static ssize_t sysfs_mrp_read(struct ksz_sw *sw, int proc_num, ssize_t len, ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘sysfs_mrp_read’: drivers/net/ethernet/micrel/ksz_mrp.c:7490:19: warning: unused variable ‘mrp’ [-Wunused-variable] struct mrp_info *mrp = &sw->mrp; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7560:12: error: invalid storage class for function ‘sysfs_mrp_write’ static int sysfs_mrp_write(struct ksz_sw *sw, int proc_num, int num, ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘sysfs_mrp_write’: drivers/net/ethernet/micrel/ksz_mrp.c:7566:23: error: ‘AVB_SUPPORT’ undeclared (first use in this function) if (!(sw->features & AVB_SUPPORT)) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7563:19: warning: unused variable ‘mrp’ [-Wunused-variable] struct mrp_info *mrp = &sw->mrp; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7718:16: error: invalid storage class for function ‘sysfs_mrp_port_read’ static ssize_t sysfs_mrp_port_read(struct ksz_sw *sw, int proc_num, uint n, ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘sysfs_mrp_port_read’: drivers/net/ethernet/micrel/ksz_mrp.c:7736:23: error: ‘AVB_SUPPORT’ undeclared (first use in this function) if (!(sw->features & AVB_SUPPORT)) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7749:7: error: ‘PROC_SET_PORT_MMRP_ENABLED’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_ENABLED: ^ drivers/net/ethernet/micrel/ksz_mrp.c:7753:7: error: ‘PROC_SET_PORT_MMRP_MAC’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_MAC: ^ drivers/net/ethernet/micrel/ksz_mrp.c:7764:7: error: ‘PROC_SET_PORT_MMRP_SVC’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_SVC: ^ drivers/net/ethernet/micrel/ksz_mrp.c:7775:7: error: ‘PROC_SET_PORT_MMRP_REG’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_REG: ^ drivers/net/ethernet/micrel/ksz_mrp.c:7782:21: error: ‘struct ksz_sw_info’ has no member named ‘mac_entry’ entry = &sw->info->mac_entry; ^ drivers/net/ethernet/micrel/ksz_mrp.c:7785:37: error: ‘struct ksz_mac_table’ has no member named ‘addr’ attr = mrp_attr_lookup(app, entry->addr, ETH_ALEN, ^ drivers/net/ethernet/micrel/ksz_mrp.c:7802:7: error: ‘PROC_SET_PORT_MVRP_ENABLED’ undeclared (first use in this function) case PROC_SET_PORT_MVRP_ENABLED: ^ drivers/net/ethernet/micrel/ksz_mrp.c:7806:7: error: ‘PROC_SET_PORT_MVRP_VID’ undeclared (first use in this function) case PROC_SET_PORT_MVRP_VID: ^ drivers/net/ethernet/micrel/ksz_mrp.c:7817:7: error: ‘PROC_SET_PORT_MVRP_REG’ undeclared (first use in this function) case PROC_SET_PORT_MVRP_REG: ^ In file included from ./include/linux/swab.h:4:0, from ./include/uapi/linux/byteorder/little_endian.h:12, from ./include/linux/byteorder/little_endian.h:4, from ./arch/arm/include/uapi/asm/byteorder.h:21, from ./include/asm-generic/bitops/le.h:5, from ./arch/arm/include/asm/bitops.h:340, from ./include/linux/bitops.h:36, from ./include/linux/kernel.h:10, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: drivers/net/ethernet/micrel/ksz_mrp.c:7822:29: error: ‘struct ksz_sw’ has no member named ‘vlan_index’ __be16 vlan_id = htons(sw->vlan_index); ^ ./include/uapi/linux/swab.h:100:54: note: in definition of macro ‘__swab16’ #define __swab16(x) (__u16)__builtin_bswap16((__u16)(x)) ^ ./include/linux/byteorder/generic.h:134:21: note: in expansion of macro ‘__cpu_to_be16’ #define ___htons(x) __cpu_to_be16(x) ^ ./include/linux/byteorder/generic.h:140:18: note: in expansion of macro ‘___htons’ #define htons(x) ___htons(x) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7822:21: note: in expansion of macro ‘htons’ __be16 vlan_id = htons(sw->vlan_index); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:7940:12: error: invalid storage class for function ‘sysfs_mrp_port_write’ static int sysfs_mrp_port_write(struct ksz_sw *sw, int proc_num, uint n, ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘sysfs_mrp_port_write’: drivers/net/ethernet/micrel/ksz_mrp.c:7954:23: error: ‘AVB_SUPPORT’ undeclared (first use in this function) if (!(sw->features & AVB_SUPPORT)) ^ drivers/net/ethernet/micrel/ksz_mrp.c:7967:7: error: ‘PROC_SET_PORT_MMRP_ENABLED’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_ENABLED: ^ drivers/net/ethernet/micrel/ksz_mrp.c:7981:7: error: ‘PROC_SET_PORT_MMRP_MAC’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_MAC: ^ drivers/net/ethernet/micrel/ksz_mrp.c:8001:7: error: ‘PROC_SET_PORT_MMRP_SVC’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_SVC: ^ drivers/net/ethernet/micrel/ksz_mrp.c:8021:7: error: ‘PROC_SET_PORT_MMRP_REG’ undeclared (first use in this function) case PROC_SET_PORT_MMRP_REG: ^ drivers/net/ethernet/micrel/ksz_mrp.c:8027:21: error: ‘struct ksz_sw_info’ has no member named ‘mac_entry’ entry = &sw->info->mac_entry; ^ drivers/net/ethernet/micrel/ksz_mrp.c:8036:31: error: ‘struct ksz_mac_table’ has no member named ‘addr’ mmrp_req_set_mac(app, entry->addr, state); ^ drivers/net/ethernet/micrel/ksz_mrp.c:8039:7: error: ‘PROC_SET_PORT_MVRP_ENABLED’ undeclared (first use in this function) case PROC_SET_PORT_MVRP_ENABLED: ^ drivers/net/ethernet/micrel/ksz_mrp.c:8053:7: error: ‘PROC_SET_PORT_MVRP_VID’ undeclared (first use in this function) case PROC_SET_PORT_MVRP_VID: ^ drivers/net/ethernet/micrel/ksz_mrp.c:8073:7: error: ‘PROC_SET_PORT_MVRP_REG’ undeclared (first use in this function) case PROC_SET_PORT_MVRP_REG: ^ drivers/net/ethernet/micrel/ksz_mrp.c:8086:24: error: ‘struct ksz_sw’ has no member named ‘vlan_index’ mvrp_req_set(app, sw->vlan_index, state); ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:8195:13: error: invalid storage class for function ‘leave_mrp’ static void leave_mrp(struct mrp_info *mrp) ^ drivers/net/ethernet/micrel/ksz_mrp.c:8199:13: error: invalid storage class for function ‘mrp_init’ static void mrp_init(struct mrp_info *mrp) ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:34:0: drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_init’: ./include/linux/kernel.h:837:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:8201:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ ./include/linux/kernel.h:837:48: note: (near initialization for ‘sw’) const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/net/ethernet/micrel/ksz_mrp.c:8201:22: note: in expansion of macro ‘container_of’ struct ksz_sw *sw = container_of(mrp, struct ksz_sw, mrp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:8344:33: error: ‘SRP_PORT_AVAIL’ undeclared (first use in this function) dbg_msg("%s %x %x\n", __func__, SRP_PORT_AVAIL, SRP_PORT_OTHER); ^ drivers/net/ethernet/micrel/ksz_mrp.c:8344:49: error: ‘SRP_PORT_OTHER’ undeclared (first use in this function) dbg_msg("%s %x %x\n", __func__, SRP_PORT_AVAIL, SRP_PORT_OTHER); ^ drivers/net/ethernet/micrel/ksz_mrp.c:8202:7: warning: unused variable ‘port’ [-Wunused-variable] uint port; ^ drivers/net/ethernet/micrel/ksz_mrp.c: In function ‘mrp_rcv’: drivers/net/ethernet/micrel/ksz_mrp.c:8347:13: error: invalid storage class for function ‘mrp_exit’ static void mrp_exit(struct mrp_info *mrp) ^ drivers/net/ethernet/micrel/ksz_mrp.c:8380:15: error: variable ‘mrp_ops’ has initializer but incomplete type static struct mrp_ops mrp_ops = { ^ drivers/net/ethernet/micrel/ksz_mrp.c:8381:2: error: unknown field ‘init’ specified in initializer .init = mrp_init, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8381:12: warning: excess elements in struct initializer .init = mrp_init, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8381:12: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8382:2: error: unknown field ‘exit’ specified in initializer .exit = mrp_exit, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8382:12: warning: excess elements in struct initializer .exit = mrp_exit, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8382:12: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8384:2: error: unknown field ‘dev_req’ specified in initializer .dev_req = mrp_dev_req, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8384:14: warning: excess elements in struct initializer .dev_req = mrp_dev_req, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8384:14: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8386:2: error: unknown field ‘from_backup’ specified in initializer .from_backup = mrp_from_backup, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8386:18: warning: excess elements in struct initializer .from_backup = mrp_from_backup, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8386:18: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8387:2: error: unknown field ‘to_backup’ specified in initializer .to_backup = mrp_to_backup, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8387:16: warning: excess elements in struct initializer .to_backup = mrp_to_backup, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8387:16: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8388:2: error: unknown field ‘from_designated’ specified in initializer .from_designated = mrp_from_designated, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8388:21: warning: excess elements in struct initializer .from_designated = mrp_from_designated, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8388:21: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8389:2: error: unknown field ‘to_designated’ specified in initializer .to_designated = mrp_to_designated, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8389:20: warning: excess elements in struct initializer .to_designated = mrp_to_designated, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8389:20: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8390:2: error: unknown field ‘tc_detected’ specified in initializer .tc_detected = mrp_tc_detected, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8390:18: warning: excess elements in struct initializer .tc_detected = mrp_tc_detected, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8390:18: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8392:2: error: unknown field ‘chk_talker’ specified in initializer .chk_talker = mrp_chk_talker, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8392:17: error: ‘mrp_chk_talker’ undeclared (first use in this function) .chk_talker = mrp_chk_talker, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8392:17: warning: excess elements in struct initializer drivers/net/ethernet/micrel/ksz_mrp.c:8392:17: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8393:2: error: unknown field ‘setup_vlan’ specified in initializer .setup_vlan = mrp_setup_vlan, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8393:17: warning: excess elements in struct initializer .setup_vlan = mrp_setup_vlan, ^ drivers/net/ethernet/micrel/ksz_mrp.c:8393:17: note: (near initialization for ‘mrp_ops’) drivers/net/ethernet/micrel/ksz_mrp.c:8380:23: error: storage size of ‘mrp_ops’ isn’t known static struct mrp_ops mrp_ops = { ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:384:0: drivers/net/ethernet/micrel/ksz_sw.c:943:13: error: invalid storage class for function ‘port_r_mib_cnt’ static void port_r_mib_cnt(struct ksz_sw *sw, uint port, u16 addr, u64 *cnt) ^ drivers/net/ethernet/micrel/ksz_sw.c:984:13: error: invalid storage class for function ‘port_r_mib_pkt’ static void port_r_mib_pkt(struct ksz_sw *sw, uint port, u32 *last, u64 *cnt) ^ drivers/net/ethernet/micrel/ksz_sw.c:1020:12: error: invalid storage class for function ‘exit_mib_read’ static int exit_mib_read(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:1038:12: error: invalid storage class for function ‘port_r_cnt’ static int port_r_cnt(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1070:20: error: invalid storage class for function ‘port_init_cnt’ static inline void port_init_cnt(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1115:12: error: invalid storage class for function ‘port_chk’ static int port_chk(struct ksz_sw *sw, uint port, int offset, SW_D bits) ^ drivers/net/ethernet/micrel/ksz_sw.c:1136:13: error: invalid storage class for function ‘port_cfg’ static void port_cfg(struct ksz_sw *sw, uint port, int offset, SW_D bits, ^ drivers/net/ethernet/micrel/ksz_sw.c:1164:12: error: invalid storage class for function ‘port_chk_shift’ static int port_chk_shift(struct ksz_sw *sw, uint port, u32 addr, int shift) ^ drivers/net/ethernet/micrel/ksz_sw.c:1184:13: error: invalid storage class for function ‘port_cfg_shift’ static void port_cfg_shift(struct ksz_sw *sw, uint port, u32 addr, int shift, ^ drivers/net/ethernet/micrel/ksz_sw.c:1208:13: error: invalid storage class for function ‘port_r8’ static void port_r8(struct ksz_sw *sw, uint port, int offset, u8 *data) ^ drivers/net/ethernet/micrel/ksz_sw.c:1226:13: error: invalid storage class for function ‘port_w8’ static void port_w8(struct ksz_sw *sw, uint port, int offset, u8 data) ^ drivers/net/ethernet/micrel/ksz_sw.c:1244:13: error: invalid storage class for function ‘port_r16’ static void port_r16(struct ksz_sw *sw, uint port, int offset, u16 *data) ^ drivers/net/ethernet/micrel/ksz_sw.c:1262:13: error: invalid storage class for function ‘port_w16’ static void port_w16(struct ksz_sw *sw, uint port, int offset, u16 data) ^ drivers/net/ethernet/micrel/ksz_sw.c:1282:12: error: invalid storage class for function ‘sw_chk’ static int sw_chk(struct ksz_sw *sw, u32 addr, SW_D bits) ^ drivers/net/ethernet/micrel/ksz_sw.c:1299:13: error: invalid storage class for function ‘sw_cfg’ static void sw_cfg(struct ksz_sw *sw, u32 addr, SW_D bits, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:1321:13: error: invalid storage class for function ‘port_out_rate_r8’ static void port_out_rate_r8(struct ksz_sw *sw, uint port, int offset, u8 *data) ^ drivers/net/ethernet/micrel/ksz_sw.c:1339:13: error: invalid storage class for function ‘port_out_rate_w8’ static void port_out_rate_w8(struct ksz_sw *sw, uint port, int offset, u8 data) ^ drivers/net/ethernet/micrel/ksz_sw.c:1353:20: error: invalid storage class for function ‘port_cfg_broad_storm’ static inline void port_cfg_broad_storm(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:1359:19: error: invalid storage class for function ‘port_chk_broad_storm’ static inline int port_chk_broad_storm(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:1378:13: error: invalid storage class for function ‘sw_cfg_broad_storm’ static void sw_cfg_broad_storm(struct ksz_sw *sw, u8 percent) ^ drivers/net/ethernet/micrel/ksz_sw.c:1405:13: error: invalid storage class for function ‘sw_get_broad_storm’ static void sw_get_broad_storm(struct ksz_sw *sw, u8 *percent) ^ drivers/net/ethernet/micrel/ksz_sw.c:1426:13: error: invalid storage class for function ‘sw_dis_broad_storm’ static void sw_dis_broad_storm(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1438:13: error: invalid storage class for function ‘sw_ena_broad_storm’ static void sw_ena_broad_storm(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1450:13: error: invalid storage class for function ‘sw_init_broad_storm’ static void sw_init_broad_storm(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:1466:13: error: invalid storage class for function ‘hw_cfg_broad_storm’ static void hw_cfg_broad_storm(struct ksz_sw *sw, u8 percent) ^ drivers/net/ethernet/micrel/ksz_sw.c:1481:13: error: invalid storage class for function ‘sw_setup_broad_storm’ static void sw_setup_broad_storm(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:1496:19: error: invalid storage class for function ‘get_rate_ctrl_offset’ static inline int get_rate_ctrl_offset(int port, int prio) ^ drivers/net/ethernet/micrel/ksz_sw.c:1521:13: error: invalid storage class for function ‘hw_cfg_rate_ctrl’ static void hw_cfg_rate_ctrl(struct ksz_sw *sw, uint port, int prio, int ctrl) ^ drivers/net/ethernet/micrel/ksz_sw.c:1578:13: error: invalid storage class for function ‘hw_get_rate_ctrl’ static void hw_get_rate_ctrl(struct ksz_sw *sw, uint port, int prio) ^ drivers/net/ethernet/micrel/ksz_sw.c:1603:13: error: invalid storage class for function ‘hw_cfg_rate_limit’ static void hw_cfg_rate_limit(struct ksz_sw *sw, uint port, u8 mask, u8 shift, ^ drivers/net/ethernet/micrel/ksz_sw.c:1626:13: error: invalid storage class for function ‘hw_cfg_cnt_ifg’ static void hw_cfg_cnt_ifg(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:1639:13: error: invalid storage class for function ‘hw_cfg_cnt_pre’ static void hw_cfg_cnt_pre(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:1652:13: error: invalid storage class for function ‘hw_cfg_rx_limit’ static void hw_cfg_rx_limit(struct ksz_sw *sw, uint port, u8 mode) ^ drivers/net/ethernet/micrel/ksz_sw.c:1667:13: error: invalid storage class for function ‘hw_get_rate_limit’ static void hw_get_rate_limit(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1677:13: error: invalid storage class for function ‘get_rate_from_val’ static uint get_rate_from_val(u8 val) ^ drivers/net/ethernet/micrel/ksz_sw.c:1690:12: error: invalid storage class for function ‘get_rate_to_val’ static int get_rate_to_val(uint rate) ^ drivers/net/ethernet/micrel/ksz_sw.c:1722:13: error: invalid storage class for function ‘port_cfg_rate’ static void port_cfg_rate(struct ksz_sw *sw, uint port, int prio, int offset, ^ drivers/net/ethernet/micrel/ksz_sw.c:1771:13: error: invalid storage class for function ‘port_get_rate’ static void port_get_rate(struct ksz_sw *sw, uint port, int prio, int offset, ^ drivers/net/ethernet/micrel/ksz_sw.c:1802:13: error: invalid storage class for function ‘hw_cfg_prio_rate’ static void hw_cfg_prio_rate(struct ksz_sw *sw, uint port, int prio, uint rate, ^ drivers/net/ethernet/micrel/ksz_sw.c:1819:13: error: invalid storage class for function ‘hw_cfg_rx_prio_rate’ static void hw_cfg_rx_prio_rate(struct ksz_sw *sw, uint port, int prio, ^ drivers/net/ethernet/micrel/ksz_sw.c:1841:13: error: invalid storage class for function ‘hw_cfg_tx_prio_rate’ static void hw_cfg_tx_prio_rate(struct ksz_sw *sw, uint port, int prio, ^ drivers/net/ethernet/micrel/ksz_sw.c:1863:12: error: invalid storage class for function ‘sw_chk_rx_prio_rate’ static int sw_chk_rx_prio_rate(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1884:12: error: invalid storage class for function ‘sw_chk_tx_prio_rate’ static int sw_chk_tx_prio_rate(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1907:13: error: invalid storage class for function ‘sw_dis_rx_prio_rate’ static void sw_dis_rx_prio_rate(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1923:13: error: invalid storage class for function ‘sw_dis_tx_prio_rate’ static void sw_dis_tx_prio_rate(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1948:13: error: invalid storage class for function ‘sw_ena_rx_prio_rate’ static void sw_ena_rx_prio_rate(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1964:13: error: invalid storage class for function ‘sw_ena_tx_prio_rate’ static void sw_ena_tx_prio_rate(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:1988:13: error: invalid storage class for function ‘sw_init_prio_rate’ static void sw_init_prio_rate(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:2020:20: error: invalid storage class for function ‘port_cfg_back_pressure’ static inline void port_cfg_back_pressure(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2026:20: error: invalid storage class for function ‘port_cfg_force_flow_ctrl’ static inline void port_cfg_force_flow_ctrl(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2032:19: error: invalid storage class for function ‘port_chk_back_pressure’ static inline int port_chk_back_pressure(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2038:19: error: invalid storage class for function ‘port_chk_force_flow_ctrl’ static inline int port_chk_force_flow_ctrl(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2048:20: error: invalid storage class for function ‘port_cfg_dis_learn’ static inline void port_cfg_dis_learn(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2054:20: error: invalid storage class for function ‘port_cfg_rx’ static inline void port_cfg_rx(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2064:20: error: invalid storage class for function ‘port_cfg_tx’ static inline void port_cfg_tx(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2074:19: error: invalid storage class for function ‘port_chk_dis_learn’ static inline int port_chk_dis_learn(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2080:19: error: invalid storage class for function ‘port_chk_rx’ static inline int port_chk_rx(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2086:19: error: invalid storage class for function ‘port_chk_tx’ static inline int port_chk_tx(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2092:20: error: invalid storage class for function ‘sw_cfg_fast_aging’ static inline void sw_cfg_fast_aging(struct ksz_sw *sw, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2097:13: error: invalid storage class for function ‘sw_flush_dyn_mac_table’ static void sw_flush_dyn_mac_table(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:2129:20: error: invalid storage class for function ‘port_cfg_ins_tag’ static inline void port_cfg_ins_tag(struct ksz_sw *sw, uint p, bool insert) ^ drivers/net/ethernet/micrel/ksz_sw.c:2135:20: error: invalid storage class for function ‘port_cfg_rmv_tag’ static inline void port_cfg_rmv_tag(struct ksz_sw *sw, uint p, bool remove) ^ drivers/net/ethernet/micrel/ksz_sw.c:2141:19: error: invalid storage class for function ‘port_chk_ins_tag’ static inline int port_chk_ins_tag(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2147:19: error: invalid storage class for function ‘port_chk_rmv_tag’ static inline int port_chk_rmv_tag(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2154:20: error: invalid storage class for function ‘port_cfg_double_tag’ static inline void port_cfg_double_tag(struct ksz_sw *sw, uint p, int remove) ^ drivers/net/ethernet/micrel/ksz_sw.c:2160:19: error: invalid storage class for function ‘port_chk_double_tag’ static inline int port_chk_double_tag(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2167:20: error: invalid storage class for function ‘port_cfg_dis_non_vid’ static inline void port_cfg_dis_non_vid(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2173:20: error: invalid storage class for function ‘port_cfg_drop_tag’ static inline void port_cfg_drop_tag(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2179:20: error: invalid storage class for function ‘port_cfg_in_filter’ static inline void port_cfg_in_filter(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2185:19: error: invalid storage class for function ‘port_chk_dis_non_vid’ static inline int port_chk_dis_non_vid(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2191:19: error: invalid storage class for function ‘port_chk_drop_tag’ static inline int port_chk_drop_tag(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2197:19: error: invalid storage class for function ‘port_chk_in_filter’ static inline int port_chk_in_filter(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2207:20: error: invalid storage class for function ‘port_cfg_mirror_sniffer’ static inline void port_cfg_mirror_sniffer(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2213:20: error: invalid storage class for function ‘port_cfg_mirror_rx’ static inline void port_cfg_mirror_rx(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2219:20: error: invalid storage class for function ‘port_cfg_mirror_tx’ static inline void port_cfg_mirror_tx(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2225:20: error: invalid storage class for function ‘sw_cfg_mirror_rx_tx’ static inline void sw_cfg_mirror_rx_tx(struct ksz_sw *sw, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2230:19: error: invalid storage class for function ‘port_chk_mirror_sniffer’ static inline int port_chk_mirror_sniffer(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2236:19: error: invalid storage class for function ‘port_chk_mirror_rx’ static inline int port_chk_mirror_rx(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2242:19: error: invalid storage class for function ‘port_chk_mirror_tx’ static inline int port_chk_mirror_tx(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2248:19: error: invalid storage class for function ‘sw_chk_mirror_rx_tx’ static inline int sw_chk_mirror_rx_tx(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:2253:13: error: invalid storage class for function ‘sw_setup_mirror’ static void sw_setup_mirror(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:2267:13: error: invalid storage class for function ‘sw_cfg_unk_dest’ static void sw_cfg_unk_dest(struct ksz_sw *sw, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2279:12: error: invalid storage class for function ‘sw_chk_unk_dest’ static int sw_chk_unk_dest(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:2287:13: error: invalid storage class for function ‘sw_cfg_unk_def_port’ static void sw_cfg_unk_def_port(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2300:12: error: invalid storage class for function ‘sw_chk_unk_def_port’ static int sw_chk_unk_def_port(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:2309:20: error: invalid storage class for function ‘sw_cfg_for_inv_vid’ static inline void sw_cfg_for_inv_vid(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2315:19: error: invalid storage class for function ‘sw_chk_for_inv_vid’ static inline int sw_chk_for_inv_vid(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:2325:20: error: invalid storage class for function ‘port_cfg_diffserv’ static inline void port_cfg_diffserv(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2331:20: error: invalid storage class for function ‘port_cfg_802_1p’ static inline void port_cfg_802_1p(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2337:20: error: invalid storage class for function ‘port_cfg_replace_prio’ static inline void port_cfg_replace_prio(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2343:20: error: invalid storage class for function ‘port_cfg_2_queue’ static inline void port_cfg_2_queue(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2349:20: error: invalid storage class for function ‘port_cfg_4_queue’ static inline void port_cfg_4_queue(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2355:19: error: invalid storage class for function ‘port_chk_diffserv’ static inline int port_chk_diffserv(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2361:19: error: invalid storage class for function ‘port_chk_802_1p’ static inline int port_chk_802_1p(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2367:19: error: invalid storage class for function ‘port_chk_replace_prio’ static inline int port_chk_replace_prio(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2373:19: error: invalid storage class for function ‘port_chk_2_queue’ static inline int port_chk_2_queue(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2379:19: error: invalid storage class for function ‘port_chk_4_queue’ static inline int port_chk_4_queue(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2387:20: error: invalid storage class for function ‘port_cfg_src_filter_0’ static inline void port_cfg_src_filter_0(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2393:20: error: invalid storage class for function ‘port_cfg_src_filter_1’ static inline void port_cfg_src_filter_1(struct ksz_sw *sw, uint p, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2399:19: error: invalid storage class for function ‘port_chk_src_filter_0’ static inline int port_chk_src_filter_0(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2405:19: error: invalid storage class for function ‘port_chk_src_filter_1’ static inline int port_chk_src_filter_1(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:2419:20: error: invalid storage class for function ‘port_get_addr’ static inline void port_get_addr(struct ksz_sw *sw, uint port, u8 *mac_addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:2452:13: error: invalid storage class for function ‘port_set_addr’ static void port_set_addr(struct ksz_sw *sw, uint port, u8 *mac_addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:2476:20: error: invalid storage class for function ‘sw_setup_src_filter’ static inline void sw_setup_src_filter(struct ksz_sw *sw, u8 *mac_addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:2487:13: error: invalid storage class for function ‘sw_cfg_src_filter’ static void sw_cfg_src_filter(struct ksz_sw *sw, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2508:13: error: invalid storage class for function ‘sw_set_tos_prio’ static void sw_set_tos_prio(struct ksz_sw *sw, u8 tos, SW_D prio) ^ drivers/net/ethernet/micrel/ksz_sw.c:2520:13: error: invalid storage class for function ‘sw_dis_diffserv’ static void sw_dis_diffserv(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:2532:13: error: invalid storage class for function ‘sw_ena_diffserv’ static void sw_ena_diffserv(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:2548:13: error: invalid storage class for function ‘hw_cfg_tos_prio’ static void hw_cfg_tos_prio(struct ksz_sw *sw, u8 tos, SW_D prio) ^ drivers/net/ethernet/micrel/ksz_sw.c:2588:13: error: invalid storage class for function ‘sw_set_802_1p_prio’ static void sw_set_802_1p_prio(struct ksz_sw *sw, u8 tag, SW_D prio) ^ drivers/net/ethernet/micrel/ksz_sw.c:2600:13: error: invalid storage class for function ‘sw_dis_802_1p’ static void sw_dis_802_1p(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:2612:13: error: invalid storage class for function ‘sw_ena_802_1p’ static void sw_ena_802_1p(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:2627:13: error: invalid storage class for function ‘hw_cfg_802_1p_prio’ static void hw_cfg_802_1p_prio(struct ksz_sw *sw, u8 tag, SW_D prio) ^ drivers/net/ethernet/micrel/ksz_sw.c:2664:13: error: invalid storage class for function ‘sw_cfg_replace_null_vid’ static void sw_cfg_replace_null_vid(struct ksz_sw *sw, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2680:13: error: invalid storage class for function ‘sw_cfg_replace_prio’ static void sw_cfg_replace_prio(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2695:13: error: invalid storage class for function ‘sw_cfg_port_based’ static void sw_cfg_port_based(struct ksz_sw *sw, uint port, u8 prio) ^ drivers/net/ethernet/micrel/ksz_sw.c:2721:13: error: invalid storage class for function ‘sw_set_multi_queue’ static void sw_set_multi_queue(struct ksz_sw *sw, uint port, int queue) ^ drivers/net/ethernet/micrel/ksz_sw.c:2745:13: error: invalid storage class for function ‘sw_init_prio’ static void sw_init_prio(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:2796:13: error: invalid storage class for function ‘sw_setup_prio’ static void sw_setup_prio(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:2822:13: error: invalid storage class for function ‘port_cfg_def_vid’ static void port_cfg_def_vid(struct ksz_sw *sw, uint port, u16 vid) ^ drivers/net/ethernet/micrel/ksz_sw.c:2835:13: error: invalid storage class for function ‘port_get_def_vid’ static void port_get_def_vid(struct ksz_sw *sw, uint port, u16 *vid) ^ drivers/net/ethernet/micrel/ksz_sw.c:2848:13: error: invalid storage class for function ‘sw_cfg_def_vid’ static void sw_cfg_def_vid(struct ksz_sw *sw, uint port, u16 vid) ^ drivers/net/ethernet/micrel/ksz_sw.c:2862:13: error: invalid storage class for function ‘sw_cfg_port_base_vlan’ static void sw_cfg_port_base_vlan(struct ksz_sw *sw, uint port, u8 member) ^ drivers/net/ethernet/micrel/ksz_sw.c:2884:13: error: invalid storage class for function ‘sw_vlan_cfg_dis_non_vid’ static void sw_vlan_cfg_dis_non_vid(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2896:13: error: invalid storage class for function ‘sw_vlan_cfg_drop_tag’ static void sw_vlan_cfg_drop_tag(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2912:13: error: invalid storage class for function ‘sw_vlan_cfg_in_filter’ static void sw_vlan_cfg_in_filter(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2928:13: error: invalid storage class for function ‘sw_vlan_cfg_ins_tag’ static void sw_vlan_cfg_ins_tag(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2944:13: error: invalid storage class for function ‘sw_vlan_cfg_rmv_tag’ static void sw_vlan_cfg_rmv_tag(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2957:13: error: invalid storage class for function ‘sw_vlan_cfg_double_tag’ static void sw_vlan_cfg_double_tag(struct ksz_sw *sw, uint port, bool set) ^ drivers/net/ethernet/micrel/ksz_sw.c:2969:13: error: invalid storage class for function ‘sw_dis_vlan’ static void sw_dis_vlan(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:2980:13: error: invalid storage class for function ‘sw_ena_vlan’ static void sw_ena_vlan(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3005:13: error: invalid storage class for function ‘sw_init_vlan’ static void sw_init_vlan(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3046:20: error: invalid storage class for function ‘sw_get_addr’ static inline void sw_get_addr(struct ksz_sw *sw, u8 *mac_addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:3072:13: error: invalid storage class for function ‘sw_set_addr’ static void sw_set_addr(struct ksz_sw *sw, u8 *mac_addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:3097:13: error: invalid storage class for function ‘sw_init_phy_addr’ static void sw_init_phy_addr(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3114:13: error: invalid storage class for function ‘sw_set_phy_addr’ static void sw_set_phy_addr(struct ksz_sw *sw, u8 addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:3134:13: error: invalid storage class for function ‘sw_set_global_ctrl’ static void sw_set_global_ctrl(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3207:13: error: invalid storage class for function ‘port_set_stp_state’ static void port_set_stp_state(struct ksz_sw *sw, uint port, int state) ^ drivers/net/ethernet/micrel/ksz_sw.c:3300:13: error: invalid storage class for function ‘sw_clr_sta_mac_table’ static void sw_clr_sta_mac_table(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3320:13: error: invalid storage class for function ‘sw_setup_stp’ static void sw_setup_stp(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3401:13: error: invalid storage class for function ‘sw_setup_msg’ static void sw_setup_msg(struct sw_dev_info *info, void *data, int len, ^ drivers/net/ethernet/micrel/ksz_sw.c:3442:20: error: invalid storage class for function ‘dbp_link’ static inline void dbp_link(struct ksz_port *port, struct ksz_sw *sw, ^ drivers/net/ethernet/micrel/ksz_sw.c:3468:13: error: invalid storage class for function ‘port_advertised_flow_ctrl’ static SW_D port_advertised_flow_ctrl(struct ksz_port *port, SW_D ctrl) ^ drivers/net/ethernet/micrel/ksz_sw.c:3484:11: error: invalid storage class for function ‘sw_determine_flow_ctrl’ static u8 sw_determine_flow_ctrl(struct ksz_sw *sw, struct ksz_port *port, ^ drivers/net/ethernet/micrel/ksz_sw.c:3512:12: error: invalid storage class for function ‘port_chk_force_link’ static int port_chk_force_link(struct ksz_sw *sw, uint p, SW_D data, ^ drivers/net/ethernet/micrel/ksz_sw.c:3569:12: error: invalid storage class for function ‘port_get_link_speed’ static int port_get_link_speed(struct ksz_port *port) ^ drivers/net/ethernet/micrel/ksz_sw.c:3677:13: error: invalid storage class for function ‘port_set_link_speed’ static void port_set_link_speed(struct ksz_port *port) ^ drivers/net/ethernet/micrel/ksz_sw.c:3746:13: error: invalid storage class for function ‘port_force_link_speed’ static void port_force_link_speed(struct ksz_port *port) ^ drivers/net/ethernet/micrel/ksz_sw.c:3782:13: error: invalid storage class for function ‘sw_enable’ static void sw_enable(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3852:13: error: invalid storage class for function ‘sw_init’ static void sw_init(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3901:13: error: invalid storage class for function ‘sw_setup’ static void sw_setup(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3944:20: error: invalid storage class for function ‘sw_reset’ static inline void sw_reset(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:3984:12: error: invalid storage class for function ‘check_sw_reg_range’ static int check_sw_reg_range(unsigned addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:3999:23: error: invalid storage class for function ‘get_sw_data’ static struct ksz_sw *get_sw_data(struct device *d) ^ drivers/net/ethernet/micrel/ksz_sw.c:4006:16: error: invalid storage class for function ‘kszsw_registers_read’ static ssize_t kszsw_registers_read(struct file *filp, struct kobject *kobj, ^ drivers/net/ethernet/micrel/ksz_sw.c:4033:16: error: invalid storage class for function ‘kszsw_registers_write’ static ssize_t kszsw_registers_write(struct file *filp, struct kobject *kobj, ^ drivers/net/ethernet/micrel/ksz_sw.c:4066:10: error: initializer element is not constant .read = kszsw_registers_read, ^ drivers/net/ethernet/micrel/ksz_sw.c:4066:10: note: (near initialization for ‘kszsw_registers_attr.read’) drivers/net/ethernet/micrel/ksz_sw.c:4067:11: error: initializer element is not constant .write = kszsw_registers_write, ^ drivers/net/ethernet/micrel/ksz_sw.c:4067:11: note: (near initialization for ‘kszsw_registers_attr.write’) drivers/net/ethernet/micrel/ksz_sw.c:4071:12: error: invalid storage class for function ‘sw_reg_get’ static int sw_reg_get(struct ksz_sw *sw, u32 reg, size_t count, char *buf) ^ drivers/net/ethernet/micrel/ksz_sw.c:4085:12: error: invalid storage class for function ‘sw_reg_set’ static int sw_reg_set(struct ksz_sw *sw, u32 reg, size_t count, char *buf) ^ drivers/net/ethernet/micrel/ksz_sw.c:4145:13: error: invalid storage class for function ‘sw_get_link_md’ static void sw_get_link_md(struct ksz_sw *sw, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:4287:13: error: invalid storage class for function ‘get_sw_mib_counters’ static void get_sw_mib_counters(struct ksz_sw *sw, int first, int cnt, ^ drivers/net/ethernet/micrel/ksz_sw.c:4405:12: error: invalid storage class for function ‘display_sw_mib_counters’ static int display_sw_mib_counters(struct ksz_sw *sw, int first, int cnt, ^ drivers/net/ethernet/micrel/ksz_sw.c:4460:16: error: invalid storage class for function ‘display_sw_info’ static ssize_t display_sw_info(int cnt, char *buf, ssize_t len) ^ drivers/net/ethernet/micrel/ksz_sw.c:4835:16: error: invalid storage class for function ‘sysfs_sw_read’ static ssize_t sysfs_sw_read(struct ksz_sw *sw, int proc_num, ^ drivers/net/ethernet/micrel/ksz_sw.c:5015:16: error: invalid storage class for function ‘sysfs_sw_read_hw’ static ssize_t sysfs_sw_read_hw(struct ksz_sw *sw, int proc_num, ssize_t len, ^ drivers/net/ethernet/micrel/ksz_sw.c:5166:12: error: invalid storage class for function ‘sysfs_sw_write’ static int sysfs_sw_write(struct ksz_sw *sw, int proc_num, ^ drivers/net/ethernet/micrel/ksz_sw.c:5411:16: error: invalid storage class for function ‘sysfs_port_read’ static ssize_t sysfs_port_read(struct ksz_sw *sw, int proc_num, uint port, ^ drivers/net/ethernet/micrel/ksz_sw.c:5565:16: error: invalid storage class for function ‘sysfs_port_read_hw’ static ssize_t sysfs_port_read_hw(struct ksz_sw *sw, int proc_num, uint port, ^ drivers/net/ethernet/micrel/ksz_sw.c:5670:12: error: invalid storage class for function ‘sysfs_port_write’ static int sysfs_port_write(struct ksz_sw *sw, int proc_num, uint port, ^ drivers/net/ethernet/micrel/ksz_sw.c:5898:16: error: invalid storage class for function ‘sysfs_mac_read’ static ssize_t sysfs_mac_read(struct ksz_sw *sw, int proc_num, int index, ^ drivers/net/ethernet/micrel/ksz_sw.c:5930:12: error: invalid storage class for function ‘sysfs_mac_write’ static int sysfs_mac_write(struct ksz_sw *sw, int proc_num, int index, ^ drivers/net/ethernet/micrel/ksz_sw.c:5992:16: error: invalid storage class for function ‘sysfs_vlan_read’ static ssize_t sysfs_vlan_read(struct ksz_sw *sw, int proc_num, int index, ^ drivers/net/ethernet/micrel/ksz_sw.c:6015:12: error: invalid storage class for function ‘sysfs_vlan_write’ static int sysfs_vlan_write(struct ksz_sw *sw, int proc_num, int index, ^ drivers/net/ethernet/micrel/ksz_sw.c:6052:13: error: invalid storage class for function ‘sw_cfg_mac’ static void sw_cfg_mac(struct ksz_sw *sw, u8 index, u8 *dest, u32 ports, ^ drivers/net/ethernet/micrel/ksz_sw.c:6075:13: error: invalid storage class for function ‘sw_cfg_vlan’ static void sw_cfg_vlan(struct ksz_sw *sw, u8 index, u16 vid, u16 fid, ^ drivers/net/ethernet/micrel/ksz_sw.c:6088:11: error: invalid storage class for function ‘sw_alloc_mac’ static u8 sw_alloc_mac(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6101:13: error: invalid storage class for function ‘sw_free_mac’ static void sw_free_mac(struct ksz_sw *sw, u8 index) ^ drivers/net/ethernet/micrel/ksz_sw.c:6106:11: error: invalid storage class for function ‘sw_alloc_vlan’ static u8 sw_alloc_vlan(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6122:13: error: invalid storage class for function ‘sw_free_vlan’ static void sw_free_vlan(struct ksz_sw *sw, u8 index) ^ drivers/net/ethernet/micrel/ksz_sw.c:6128:12: error: invalid storage class for function ‘sw_alloc_fid’ static u16 sw_alloc_fid(struct ksz_sw *sw, u16 vid) ^ drivers/net/ethernet/micrel/ksz_sw.c:6142:13: error: invalid storage class for function ‘sw_free_fid’ static void sw_free_fid(struct ksz_sw *sw, u16 fid) ^ drivers/net/ethernet/micrel/ksz_sw.c:6148:18: error: invalid storage class for function ‘sw_get_br_id’ static const u8 *sw_get_br_id(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6163:13: error: invalid storage class for function ‘sw_from_backup’ static void sw_from_backup(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:6174:13: error: invalid storage class for function ‘sw_to_backup’ static void sw_to_backup(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:6185:13: error: invalid storage class for function ‘sw_from_designated’ static void sw_from_designated(struct ksz_sw *sw, uint p, bool alt) ^ drivers/net/ethernet/micrel/ksz_sw.c:6196:13: error: invalid storage class for function ‘sw_to_designated’ static void sw_to_designated(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:6207:13: error: invalid storage class for function ‘sw_tc_detected’ static void sw_tc_detected(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:6218:12: error: invalid storage class for function ‘sw_get_tcDetected’ static int sw_get_tcDetected(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:6304:13: error: invalid storage class for function ‘sw_dis_intr’ static void sw_dis_intr(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6309:13: error: invalid storage class for function ‘sw_ena_intr’ static void sw_ena_intr(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6316:13: error: invalid storage class for function ‘sw_proc_intr’ static SW_D sw_proc_intr(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6331:13: error: invalid storage class for function ‘sw_setup_intr’ static void sw_setup_intr(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6341:12: error: invalid storage class for function ‘sw_chk_id’ static int sw_chk_id(struct ksz_sw *sw, u16 *id) ^ drivers/net/ethernet/micrel/ksz_sw.c:6357:12: error: invalid storage class for function ‘sw_get_id’ static int sw_get_id(struct ksz_sw *sw, u8 *id1, u8 *id2, char *name) ^ drivers/net/ethernet/micrel/ksz_sw.c:6382:13: error: invalid storage class for function ‘sw_cfg_tail_tag’ static void sw_cfg_tail_tag(struct ksz_sw *sw, bool enable) ^ drivers/net/ethernet/micrel/ksz_sw.c:6387:13: error: invalid storage class for function ‘sw_cfg_each_port’ static void sw_cfg_each_port(struct ksz_sw *sw, uint p, bool cpu) ^ drivers/net/ethernet/micrel/ksz_sw.c:6398:12: error: invalid storage class for function ‘sw_port_to_phy_addr’ static int sw_port_to_phy_addr(struct ksz_sw *sw, uint p) ^ drivers/net/ethernet/micrel/ksz_sw.c:6406:13: error: invalid storage class for function ‘sw_set_port_addr’ static void sw_set_port_addr(struct ksz_sw *sw, uint p, u8 *addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:6411:13: error: invalid storage class for function ‘sw_set_multi’ static void sw_set_multi(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:6487:13: error: invalid storage class for function ‘sw_forward’ static void sw_forward(struct ksz_sw *sw, u8 *addr, u8 *self, u16 proto, ^ drivers/net/ethernet/micrel/ksz_sw.c:6532:27: error: invalid storage class for function ‘sw_rx_dev’ static struct net_device *sw_rx_dev(struct ksz_sw *sw, u8 *data, u32 *len, ^ drivers/net/ethernet/micrel/ksz_sw.c:6614:12: error: invalid storage class for function ‘pkt_matched’ static int pkt_matched(struct sk_buff *skb, struct net_device *dev, void *ptr, ^ drivers/net/ethernet/micrel/ksz_sw.c:6630:12: error: invalid storage class for function ‘sw_match_pkt’ static int sw_match_pkt(struct ksz_sw *sw, struct net_device **dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:6659:27: error: invalid storage class for function ‘sw_parent_rx’ static struct net_device *sw_parent_rx(struct ksz_sw *sw, ^ drivers/net/ethernet/micrel/ksz_sw.c:6678:12: error: invalid storage class for function ‘sw_port_vlan_rx’ static int sw_port_vlan_rx(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:6720:12: error: invalid storage class for function ‘sw_drv_rx’ static int sw_drv_rx(struct ksz_sw *sw, struct sk_buff *skb, uint port) ^ drivers/net/ethernet/micrel/ksz_sw.c:6773:12: error: invalid storage class for function ‘sw_get_mtu’ static int sw_get_mtu(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:6807:12: error: invalid storage class for function ‘sw_get_tx_len’ static int sw_get_tx_len(struct ksz_sw *sw, struct sk_buff *skb, uint port, ^ drivers/net/ethernet/micrel/ksz_sw.c:6833:13: error: invalid storage class for function ‘sw_add_tail_tag’ static void sw_add_tail_tag(struct ksz_sw *sw, struct sk_buff *skb, uint ports) ^ drivers/net/ethernet/micrel/ksz_sw.c:6842:12: error: invalid storage class for function ‘sw_get_tail_tag’ static int sw_get_tail_tag(u8 *trailer, int *port) ^ drivers/net/ethernet/micrel/ksz_sw.c:6850:13: error: invalid storage class for function ‘sw_add_vid’ static void sw_add_vid(struct ksz_sw *sw, u16 vid) ^ drivers/net/ethernet/micrel/ksz_sw.c:6859:13: error: invalid storage class for function ‘sw_kill_vid’ static void sw_kill_vid(struct ksz_sw *sw, u16 vid) ^ drivers/net/ethernet/micrel/ksz_sw.c:6868:12: error: invalid storage class for function ‘add_frag’ static int add_frag(void *from, char *to, int offset, int len, int odd, ^ drivers/net/ethernet/micrel/ksz_sw.c:6875:24: error: invalid storage class for function ‘sw_ins_vlan’ static struct sk_buff *sw_ins_vlan(struct ksz_sw *sw, uint port, ^ drivers/net/ethernet/micrel/ksz_sw.c:6927:24: error: invalid storage class for function ‘sw_check_skb’ static struct sk_buff *sw_check_skb(struct ksz_sw *sw, struct sk_buff *skb, ^ drivers/net/ethernet/micrel/ksz_sw.c:7101:24: error: invalid storage class for function ‘sw_check_tx’ static struct sk_buff *sw_check_tx(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:7167:24: error: invalid storage class for function ‘sw_final_skb’ static struct sk_buff *sw_final_skb(struct ksz_sw *sw, struct sk_buff *skb, ^ drivers/net/ethernet/micrel/ksz_sw.c:7191:13: error: invalid storage class for function ‘sw_start’ static void sw_start(struct ksz_sw *sw, u8 *addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:7296:12: error: invalid storage class for function ‘sw_stop’ static int sw_stop(struct ksz_sw *sw, int complete) ^ drivers/net/ethernet/micrel/ksz_sw.c:7329:13: error: invalid storage class for function ‘sw_init_mib’ static void sw_init_mib(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:7350:12: error: invalid storage class for function ‘sw_open_dev’ static int sw_open_dev(struct ksz_sw *sw, struct net_device *dev, u8 *addr) ^ drivers/net/ethernet/micrel/ksz_sw.c:7359:13: error: invalid storage class for function ‘sw_open_port’ static void sw_open_port(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:7458:13: error: invalid storage class for function ‘sw_close_port’ static void sw_close_port(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:7509:13: error: invalid storage class for function ‘sw_open’ static void sw_open(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:7530:13: error: invalid storage class for function ‘sw_close’ static void sw_close(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:7536:11: error: invalid storage class for function ‘sw_set_mac_addr’ static u8 sw_set_mac_addr(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:7580:28: error: invalid storage class for function ‘alloc_sw_dev_info’ static struct sw_dev_info *alloc_sw_dev_info(unsigned int minor) ^ drivers/net/ethernet/micrel/ksz_sw.c:7602:13: error: invalid storage class for function ‘free_sw_dev_info’ static void free_sw_dev_info(struct sw_dev_info *info) ^ drivers/net/ethernet/micrel/ksz_sw.c:7623:12: error: invalid storage class for function ‘sw_dev_open’ static int sw_dev_open(struct inode *inode, struct file *filp) ^ drivers/net/ethernet/micrel/ksz_sw.c:7641:12: error: invalid storage class for function ‘sw_dev_release’ static int sw_dev_release(struct inode *inode, struct file *filp) ^ drivers/net/ethernet/micrel/ksz_sw.c:7651:12: error: invalid storage class for function ‘sw_get_attrib’ static int sw_get_attrib(struct ksz_sw *sw, int subcmd, int size, ^ drivers/net/ethernet/micrel/ksz_sw.c:7710:12: error: invalid storage class for function ‘sw_set_attrib’ static int sw_set_attrib(struct ksz_sw *sw, int subcmd, int size, ^ drivers/net/ethernet/micrel/ksz_sw.c:7762:12: error: invalid storage class for function ‘base_dev_req’ static int base_dev_req(struct ksz_sw *sw, char *arg, void *info) ^ drivers/net/ethernet/micrel/ksz_sw.c:7872:12: error: invalid storage class for function ‘sw_dev_req’ static int sw_dev_req(struct ksz_sw *sw, int start, char *arg, ^ drivers/net/ethernet/micrel/ksz_sw.c:7928:16: error: invalid storage class for function ‘sw_dev_read’ static ssize_t sw_dev_read(struct file *filp, char *buf, size_t count, ^ drivers/net/ethernet/micrel/ksz_sw.c:7979:13: error: invalid storage class for function ‘sw_dev_ioctl’ static long sw_dev_ioctl(struct file *filp, unsigned int cmd, ^ drivers/net/ethernet/micrel/ksz_sw.c:8011:16: error: invalid storage class for function ‘sw_dev_write’ static ssize_t sw_dev_write(struct file *filp, const char *buf, size_t count, ^ drivers/net/ethernet/micrel/ksz_sw.c:8048:11: error: initializer element is not constant .read = sw_dev_read, ^ drivers/net/ethernet/micrel/ksz_sw.c:8048:11: note: (near initialization for ‘sw_dev_fops.read’) drivers/net/ethernet/micrel/ksz_sw.c:8049:12: error: initializer element is not constant .write = sw_dev_write, ^ drivers/net/ethernet/micrel/ksz_sw.c:8049:12: note: (near initialization for ‘sw_dev_fops.write’) drivers/net/ethernet/micrel/ksz_sw.c:8051:20: error: initializer element is not constant .unlocked_ioctl = sw_dev_ioctl, ^ drivers/net/ethernet/micrel/ksz_sw.c:8051:20: note: (near initialization for ‘sw_dev_fops.unlocked_ioctl’) drivers/net/ethernet/micrel/ksz_sw.c:8055:11: error: initializer element is not constant .open = sw_dev_open, ^ drivers/net/ethernet/micrel/ksz_sw.c:8055:11: note: (near initialization for ‘sw_dev_fops.open’) drivers/net/ethernet/micrel/ksz_sw.c:8056:13: error: initializer element is not constant .release = sw_dev_release, ^ drivers/net/ethernet/micrel/ksz_sw.c:8056:13: note: (near initialization for ‘sw_dev_fops.release’) drivers/net/ethernet/micrel/ksz_sw.c:8061:12: error: invalid storage class for function ‘init_sw_dev’ static int init_sw_dev(int dev_major, char *dev_name) ^ drivers/net/ethernet/micrel/ksz_sw.c:8082:13: error: invalid storage class for function ‘exit_sw_dev’ static void exit_sw_dev(int dev_major, char *dev_name) ^ drivers/net/ethernet/micrel/ksz_sw.c:8089:13: error: invalid storage class for function ‘sw_init_dev’ static void sw_init_dev(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:8097:13: error: invalid storage class for function ‘sw_exit_dev’ static void sw_exit_dev(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:8104:13: error: invalid storage class for function ‘link_update_work’ static void link_update_work(struct work_struct *work) ^ drivers/net/ethernet/micrel/ksz_sw.c:8230:13: error: invalid storage class for function ‘sw_setup_zone’ static void sw_setup_zone(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:8254:13: error: invalid storage class for function ‘sw_setup_logical_ports’ static void sw_setup_logical_ports(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:8292:13: error: invalid storage class for function ‘sw_setup_special’ static void sw_setup_special(struct ksz_sw *sw, int *port_cnt, ^ drivers/net/ethernet/micrel/ksz_sw.c:8335:13: error: invalid storage class for function ‘sw_leave_dev’ static void sw_leave_dev(struct ksz_sw *sw) ^ drivers/net/ethernet/micrel/ksz_sw.c:8353:12: error: invalid storage class for function ‘sw_setup_dev’ static int sw_setup_dev(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8468:11: error: invalid storage class for function ‘sw_get_priv_state’ static u8 sw_get_priv_state(struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8473:13: error: invalid storage class for function ‘sw_set_priv_state’ static void sw_set_priv_state(struct net_device *dev, u8 state) ^ drivers/net/ethernet/micrel/ksz_sw.c:8477:12: error: invalid storage class for function ‘netdev_chk_running’ static int netdev_chk_running(struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8482:12: error: invalid storage class for function ‘netdev_chk_stopped’ static int netdev_chk_stopped(struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8487:13: error: invalid storage class for function ‘netdev_start_queue’ static void netdev_start_queue(struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8492:13: error: invalid storage class for function ‘netdev_stop_queue’ static void netdev_stop_queue(struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8497:13: error: invalid storage class for function ‘netdev_wake_queue’ static void netdev_wake_queue(struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8502:13: error: invalid storage class for function ‘sw_netdev_oper’ static void sw_netdev_oper(struct ksz_sw *sw, struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8523:13: error: invalid storage class for function ‘sw_netdev_open_port’ static void sw_netdev_open_port(struct ksz_sw *sw, struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8549:13: error: invalid storage class for function ‘sw_netdev_start_queue’ static void sw_netdev_start_queue(struct ksz_sw *sw, struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8554:13: error: invalid storage class for function ‘sw_netdev_stop_queue’ static void sw_netdev_stop_queue(struct ksz_sw *sw, struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8559:13: error: invalid storage class for function ‘sw_netdev_wake_queue’ static void sw_netdev_wake_queue(struct ksz_sw *sw, struct net_device *dev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8565:20: error: initializer element is not constant .setup_special = sw_setup_special, ^ drivers/net/ethernet/micrel/ksz_sw.c:8565:20: note: (near initialization for ‘sw_net_ops.setup_special’) drivers/net/ethernet/micrel/ksz_sw.c:8566:16: error: initializer element is not constant .setup_dev = sw_setup_dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8566:16: note: (near initialization for ‘sw_net_ops.setup_dev’) drivers/net/ethernet/micrel/ksz_sw.c:8567:16: error: initializer element is not constant .leave_dev = sw_leave_dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8567:16: note: (near initialization for ‘sw_net_ops.leave_dev’) drivers/net/ethernet/micrel/ksz_sw.c:8568:16: error: initializer element is not constant .get_state = sw_get_priv_state, ^ drivers/net/ethernet/micrel/ksz_sw.c:8568:16: note: (near initialization for ‘sw_net_ops.get_state’) drivers/net/ethernet/micrel/ksz_sw.c:8569:16: error: initializer element is not constant .set_state = sw_set_priv_state, ^ drivers/net/ethernet/micrel/ksz_sw.c:8569:16: note: (near initialization for ‘sw_net_ops.set_state’) drivers/net/ethernet/micrel/ksz_sw.c:8571:13: error: initializer element is not constant .start = sw_start, ^ drivers/net/ethernet/micrel/ksz_sw.c:8571:13: note: (near initialization for ‘sw_net_ops.start’) drivers/net/ethernet/micrel/ksz_sw.c:8572:12: error: initializer element is not constant .stop = sw_stop, ^ drivers/net/ethernet/micrel/ksz_sw.c:8572:12: note: (near initialization for ‘sw_net_ops.stop’) drivers/net/ethernet/micrel/ksz_sw.c:8573:15: error: initializer element is not constant .open_dev = sw_open_dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8573:15: note: (near initialization for ‘sw_net_ops.open_dev’) drivers/net/ethernet/micrel/ksz_sw.c:8574:16: error: initializer element is not constant .open_port = sw_open_port, ^ drivers/net/ethernet/micrel/ksz_sw.c:8574:16: note: (near initialization for ‘sw_net_ops.open_port’) drivers/net/ethernet/micrel/ksz_sw.c:8575:17: error: initializer element is not constant .close_port = sw_close_port, ^ drivers/net/ethernet/micrel/ksz_sw.c:8575:17: note: (near initialization for ‘sw_net_ops.close_port’) drivers/net/ethernet/micrel/ksz_sw.c:8576:12: error: initializer element is not constant .open = sw_open, ^ drivers/net/ethernet/micrel/ksz_sw.c:8576:12: note: (near initialization for ‘sw_net_ops.open’) drivers/net/ethernet/micrel/ksz_sw.c:8577:13: error: initializer element is not constant .close = sw_close, ^ drivers/net/ethernet/micrel/ksz_sw.c:8577:13: note: (near initialization for ‘sw_net_ops.close’) drivers/net/ethernet/micrel/ksz_sw.c:8579:24: error: initializer element is not constant .netdev_start_queue = sw_netdev_start_queue, ^ drivers/net/ethernet/micrel/ksz_sw.c:8579:24: note: (near initialization for ‘sw_net_ops.netdev_start_queue’) drivers/net/ethernet/micrel/ksz_sw.c:8580:23: error: initializer element is not constant .netdev_stop_queue = sw_netdev_stop_queue, ^ drivers/net/ethernet/micrel/ksz_sw.c:8580:23: note: (near initialization for ‘sw_net_ops.netdev_stop_queue’) drivers/net/ethernet/micrel/ksz_sw.c:8581:23: error: initializer element is not constant .netdev_wake_queue = sw_netdev_wake_queue, ^ drivers/net/ethernet/micrel/ksz_sw.c:8581:23: note: (near initialization for ‘sw_net_ops.netdev_wake_queue’) drivers/net/ethernet/micrel/ksz_sw.c:8582:22: error: initializer element is not constant .netdev_open_port = sw_netdev_open_port, ^ drivers/net/ethernet/micrel/ksz_sw.c:8582:22: note: (near initialization for ‘sw_net_ops.netdev_open_port’) drivers/net/ethernet/micrel/ksz_sw.c:8584:19: error: initializer element is not constant .set_mac_addr = sw_set_mac_addr, ^ drivers/net/ethernet/micrel/ksz_sw.c:8584:19: note: (near initialization for ‘sw_net_ops.set_mac_addr’) drivers/net/ethernet/micrel/ksz_sw.c:8586:14: error: initializer element is not constant .get_mtu = sw_get_mtu, ^ drivers/net/ethernet/micrel/ksz_sw.c:8586:14: note: (near initialization for ‘sw_net_ops.get_mtu’) drivers/net/ethernet/micrel/ksz_sw.c:8587:17: error: initializer element is not constant .get_tx_len = sw_get_tx_len, ^ drivers/net/ethernet/micrel/ksz_sw.c:8587:17: note: (near initialization for ‘sw_net_ops.get_tx_len’) drivers/net/ethernet/micrel/ksz_sw.c:8588:19: error: initializer element is not constant .add_tail_tag = sw_add_tail_tag, ^ drivers/net/ethernet/micrel/ksz_sw.c:8588:19: note: (near initialization for ‘sw_net_ops.add_tail_tag’) drivers/net/ethernet/micrel/ksz_sw.c:8589:19: error: initializer element is not constant .get_tail_tag = sw_get_tail_tag, ^ drivers/net/ethernet/micrel/ksz_sw.c:8589:19: note: (near initialization for ‘sw_net_ops.get_tail_tag’) drivers/net/ethernet/micrel/ksz_sw.c:8590:14: error: initializer element is not constant .add_vid = sw_add_vid, ^ drivers/net/ethernet/micrel/ksz_sw.c:8590:14: note: (near initialization for ‘sw_net_ops.add_vid’) drivers/net/ethernet/micrel/ksz_sw.c:8591:15: error: initializer element is not constant .kill_vid = sw_kill_vid, ^ drivers/net/ethernet/micrel/ksz_sw.c:8591:15: note: (near initialization for ‘sw_net_ops.kill_vid’) drivers/net/ethernet/micrel/ksz_sw.c:8592:15: error: initializer element is not constant .check_tx = sw_check_tx, ^ drivers/net/ethernet/micrel/ksz_sw.c:8592:15: note: (near initialization for ‘sw_net_ops.check_tx’) drivers/net/ethernet/micrel/ksz_sw.c:8593:14: error: initializer element is not constant .rx_dev = sw_rx_dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8593:14: note: (near initialization for ‘sw_net_ops.rx_dev’) drivers/net/ethernet/micrel/ksz_sw.c:8594:16: error: initializer element is not constant .match_pkt = sw_match_pkt, ^ drivers/net/ethernet/micrel/ksz_sw.c:8594:16: note: (near initialization for ‘sw_net_ops.match_pkt’) drivers/net/ethernet/micrel/ksz_sw.c:8595:16: error: initializer element is not constant .parent_rx = sw_parent_rx, ^ drivers/net/ethernet/micrel/ksz_sw.c:8595:16: note: (near initialization for ‘sw_net_ops.parent_rx’) drivers/net/ethernet/micrel/ksz_sw.c:8596:19: error: initializer element is not constant .port_vlan_rx = sw_port_vlan_rx, ^ drivers/net/ethernet/micrel/ksz_sw.c:8596:19: note: (near initialization for ‘sw_net_ops.port_vlan_rx’) drivers/net/ethernet/micrel/ksz_sw.c:8597:16: error: initializer element is not constant .final_skb = sw_final_skb, ^ drivers/net/ethernet/micrel/ksz_sw.c:8597:16: note: (near initialization for ‘sw_net_ops.final_skb’) drivers/net/ethernet/micrel/ksz_sw.c:8598:14: error: initializer element is not constant .drv_rx = sw_drv_rx, ^ drivers/net/ethernet/micrel/ksz_sw.c:8598:14: note: (near initialization for ‘sw_net_ops.drv_rx’) drivers/net/ethernet/micrel/ksz_sw.c:8599:16: error: initializer element is not constant .set_multi = sw_set_multi, ^ drivers/net/ethernet/micrel/ksz_sw.c:8599:16: note: (near initialization for ‘sw_net_ops.set_multi’) drivers/net/ethernet/micrel/ksz_sw.c:8604:12: error: initializer element is not constant .init = sw_init_dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8604:12: note: (near initialization for ‘sw_ops.init’) drivers/net/ethernet/micrel/ksz_sw.c:8605:12: error: initializer element is not constant .exit = sw_exit_dev, ^ drivers/net/ethernet/micrel/ksz_sw.c:8605:12: note: (near initialization for ‘sw_ops.exit’) drivers/net/ethernet/micrel/ksz_sw.c:8606:14: error: initializer element is not constant .dev_req = sw_dev_req, ^ drivers/net/ethernet/micrel/ksz_sw.c:8606:14: note: (near initialization for ‘sw_ops.dev_req’) drivers/net/ethernet/micrel/ksz_sw.c:8614:11: error: initializer element is not constant .chk = sw_chk, ^ drivers/net/ethernet/micrel/ksz_sw.c:8614:11: note: (near initialization for ‘sw_ops.chk’) drivers/net/ethernet/micrel/ksz_sw.c:8615:11: error: initializer element is not constant .cfg = sw_cfg, ^ drivers/net/ethernet/micrel/ksz_sw.c:8615:11: note: (near initialization for ‘sw_ops.cfg’) drivers/net/ethernet/micrel/ksz_sw.c:8617:25: error: initializer element is not constant .port_get_link_speed = port_get_link_speed, ^ drivers/net/ethernet/micrel/ksz_sw.c:8617:25: note: (near initialization for ‘sw_ops.port_get_link_speed’) drivers/net/ethernet/micrel/ksz_sw.c:8618:25: error: initializer element is not constant .port_set_link_speed = port_set_link_speed, ^ drivers/net/ethernet/micrel/ksz_sw.c:8618:25: note: (near initialization for ‘sw_ops.port_set_link_speed’) drivers/net/ethernet/micrel/ksz_sw.c:8619:27: error: initializer element is not constant .port_force_link_speed = port_force_link_speed, ^ drivers/net/ethernet/micrel/ksz_sw.c:8619:27: note: (near initialization for ‘sw_ops.port_force_link_speed’) drivers/net/ethernet/micrel/ksz_sw.c:8621:17: error: initializer element is not constant .port_r_cnt = port_r_cnt, ^ drivers/net/ethernet/micrel/ksz_sw.c:8621:17: note: (near initialization for ‘sw_ops.port_r_cnt’) drivers/net/ethernet/micrel/ksz_sw.c:8622:22: error: initializer element is not constant .get_mib_counters = get_sw_mib_counters, ^ drivers/net/ethernet/micrel/ksz_sw.c:8622:22: note: (near initialization for ‘sw_ops.get_mib_counters’) drivers/net/ethernet/micrel/ksz_sw.c:8624:17: error: initializer element is not constant .sysfs_read = sysfs_sw_read, ^ drivers/net/ethernet/micrel/ksz_sw.c:8624:17: note: (near initialization for ‘sw_ops.sysfs_read’) drivers/net/ethernet/micrel/ksz_sw.c:8625:20: error: initializer element is not constant .sysfs_read_hw = sysfs_sw_read_hw, ^ drivers/net/ethernet/micrel/ksz_sw.c:8625:20: note: (near initialization for ‘sw_ops.sysfs_read_hw’) drivers/net/ethernet/micrel/ksz_sw.c:8626:18: error: initializer element is not constant .sysfs_write = sysfs_sw_write, ^ drivers/net/ethernet/micrel/ksz_sw.c:8626:18: note: (near initialization for ‘sw_ops.sysfs_write’) drivers/net/ethernet/micrel/ksz_sw.c:8627:21: error: initializer element is not constant .sysfs_port_read = sysfs_port_read, ^ drivers/net/ethernet/micrel/ksz_sw.c:8627:21: note: (near initialization for ‘sw_ops.sysfs_port_read’) drivers/net/ethernet/micrel/ksz_sw.c:8628:24: error: initializer element is not constant .sysfs_port_read_hw = sysfs_port_read_hw, ^ drivers/net/ethernet/micrel/ksz_sw.c:8628:24: note: (near initialization for ‘sw_ops.sysfs_port_read_hw’) drivers/net/ethernet/micrel/ksz_sw.c:8629:22: error: initializer element is not constant .sysfs_port_write = sysfs_port_write, ^ drivers/net/ethernet/micrel/ksz_sw.c:8629:22: note: (near initialization for ‘sw_ops.sysfs_port_write’) drivers/net/ethernet/micrel/ksz_sw.c:8630:21: error: initializer element is not constant .sysfs_mac_read = sysfs_mac_read, ^ drivers/net/ethernet/micrel/ksz_sw.c:8630:21: note: (near initialization for ‘sw_ops.sysfs_mac_read’) drivers/net/ethernet/micrel/ksz_sw.c:8631:21: error: initializer element is not constant .sysfs_mac_write = sysfs_mac_write, ^ drivers/net/ethernet/micrel/ksz_sw.c:8631:21: note: (near initialization for ‘sw_ops.sysfs_mac_write’) drivers/net/ethernet/micrel/ksz_sw.c:8632:21: error: initializer element is not constant .sysfs_vlan_read = sysfs_vlan_read, ^ drivers/net/ethernet/micrel/ksz_sw.c:8632:21: note: (near initialization for ‘sw_ops.sysfs_vlan_read’) drivers/net/ethernet/micrel/ksz_sw.c:8633:22: error: initializer element is not constant .sysfs_vlan_write = sysfs_vlan_write, ^ drivers/net/ethernet/micrel/ksz_sw.c:8633:22: note: (near initialization for ‘sw_ops.sysfs_vlan_write’) drivers/net/ethernet/micrel/ksz_sw.c:8642:14: error: initializer element is not constant .cfg_mac = sw_cfg_mac, ^ drivers/net/ethernet/micrel/ksz_sw.c:8642:14: note: (near initialization for ‘sw_ops.cfg_mac’) drivers/net/ethernet/micrel/ksz_sw.c:8643:15: error: initializer element is not constant .cfg_vlan = sw_cfg_vlan, ^ drivers/net/ethernet/micrel/ksz_sw.c:8643:15: note: (near initialization for ‘sw_ops.cfg_vlan’) drivers/net/ethernet/micrel/ksz_sw.c:8644:16: error: initializer element is not constant .alloc_mac = sw_alloc_mac, ^ drivers/net/ethernet/micrel/ksz_sw.c:8644:16: note: (near initialization for ‘sw_ops.alloc_mac’) drivers/net/ethernet/micrel/ksz_sw.c:8645:15: error: initializer element is not constant .free_mac = sw_free_mac, ^ drivers/net/ethernet/micrel/ksz_sw.c:8645:15: note: (near initialization for ‘sw_ops.free_mac’) drivers/net/ethernet/micrel/ksz_sw.c:8646:17: error: initializer element is not constant .alloc_vlan = sw_alloc_vlan, ^ drivers/net/ethernet/micrel/ksz_sw.c:8646:17: note: (near initialization for ‘sw_ops.alloc_vlan’) drivers/net/ethernet/micrel/ksz_sw.c:8647:16: error: initializer element is not constant .free_vlan = sw_free_vlan, ^ drivers/net/ethernet/micrel/ksz_sw.c:8647:16: note: (near initialization for ‘sw_ops.free_vlan’) drivers/net/ethernet/micrel/ksz_sw.c:8648:16: error: initializer element is not constant .alloc_fid = sw_alloc_fid, ^ drivers/net/ethernet/micrel/ksz_sw.c:8648:16: note: (near initialization for ‘sw_ops.alloc_fid’) drivers/net/ethernet/micrel/ksz_sw.c:8649:15: error: initializer element is not constant .free_fid = sw_free_fid, ^ drivers/net/ethernet/micrel/ksz_sw.c:8649:15: note: (near initialization for ‘sw_ops.free_fid’) drivers/net/ethernet/micrel/ksz_sw.c:8651:16: error: initializer element is not constant .get_br_id = sw_get_br_id, ^ drivers/net/ethernet/micrel/ksz_sw.c:8651:16: note: (near initialization for ‘sw_ops.get_br_id’) drivers/net/ethernet/micrel/ksz_sw.c:8652:18: error: initializer element is not constant .from_backup = sw_from_backup, ^ drivers/net/ethernet/micrel/ksz_sw.c:8652:18: note: (near initialization for ‘sw_ops.from_backup’) drivers/net/ethernet/micrel/ksz_sw.c:8653:16: error: initializer element is not constant .to_backup = sw_to_backup, ^ drivers/net/ethernet/micrel/ksz_sw.c:8653:16: note: (near initialization for ‘sw_ops.to_backup’) drivers/net/ethernet/micrel/ksz_sw.c:8654:21: error: initializer element is not constant .from_designated = sw_from_designated, ^ drivers/net/ethernet/micrel/ksz_sw.c:8654:21: note: (near initialization for ‘sw_ops.from_designated’) drivers/net/ethernet/micrel/ksz_sw.c:8655:20: error: initializer element is not constant .to_designated = sw_to_designated, ^ drivers/net/ethernet/micrel/ksz_sw.c:8655:20: note: (near initialization for ‘sw_ops.to_designated’) drivers/net/ethernet/micrel/ksz_sw.c:8656:18: error: initializer element is not constant .tc_detected = sw_tc_detected, ^ drivers/net/ethernet/micrel/ksz_sw.c:8656:18: note: (near initialization for ‘sw_ops.tc_detected’) drivers/net/ethernet/micrel/ksz_sw.c:8657:21: error: initializer element is not constant .get_tcDetected = sw_get_tcDetected, ^ drivers/net/ethernet/micrel/ksz_sw.c:8657:21: note: (near initialization for ‘sw_ops.get_tcDetected’) drivers/net/ethernet/micrel/ksz_sw.c:8659:14: error: initializer element is not constant .get_id = sw_get_id, ^ drivers/net/ethernet/micrel/ksz_sw.c:8659:14: note: (near initialization for ‘sw_ops.get_id’) drivers/net/ethernet/micrel/ksz_sw.c:8660:19: error: initializer element is not constant .cfg_tail_tag = sw_cfg_tail_tag, ^ drivers/net/ethernet/micrel/ksz_sw.c:8660:19: note: (near initialization for ‘sw_ops.cfg_tail_tag’) drivers/net/ethernet/micrel/ksz_sw.c:8661:20: error: initializer element is not constant .cfg_each_port = sw_cfg_each_port, ^ drivers/net/ethernet/micrel/ksz_sw.c:8661:20: note: (near initialization for ‘sw_ops.cfg_each_port’) drivers/net/ethernet/micrel/ksz_sw.c:8662:22: error: initializer element is not constant .port_to_phy_addr = sw_port_to_phy_addr, ^ drivers/net/ethernet/micrel/ksz_sw.c:8662:22: note: (near initialization for ‘sw_ops.port_to_phy_addr’) drivers/net/ethernet/micrel/ksz_sw.c:8663:20: error: initializer element is not constant .set_port_addr = sw_set_port_addr, ^ drivers/net/ethernet/micrel/ksz_sw.c:8663:20: note: (near initialization for ‘sw_ops.set_port_addr’) drivers/net/ethernet/micrel/ksz_sw.c:8665:21: error: initializer element is not constant .cfg_src_filter = sw_cfg_src_filter, ^ drivers/net/ethernet/micrel/ksz_sw.c:8665:21: note: (near initialization for ‘sw_ops.cfg_src_filter’) drivers/net/ethernet/micrel/ksz_sw.c:8666:18: error: initializer element is not constant .flush_table = sw_flush_dyn_mac_table, ^ drivers/net/ethernet/micrel/ksz_sw.c:8666:18: note: (near initialization for ‘sw_ops.flush_table’) drivers/net/ethernet/micrel/ksz_sw.c:8672:12: error: invalid storage class for function ‘state_show’ static int state_show(struct seq_file *seq, void *v) ^ drivers/net/ethernet/micrel/ksz_sw.c:8693:12: error: invalid storage class for function ‘state_open’ static int state_open(struct inode *inode, struct file *file) ^ drivers/net/ethernet/micrel/ksz_sw.c:8700:10: error: initializer element is not constant .open = state_open, ^ drivers/net/ethernet/micrel/ksz_sw.c:8700:10: note: (near initialization for ‘state_fops.open’) drivers/net/ethernet/micrel/ksz_sw.c:8712:13: error: invalid storage class for function ‘create_debugfs’ static void create_debugfs(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:8733:13: error: invalid storage class for function ‘delete_debugfs’ static void delete_debugfs(struct sw_priv *ks) ^ In file included from drivers/net/ethernet/micrel/ksz_sw_sysfs.c:20:0, from drivers/net/ethernet/micrel/ksz_sw.c:8743, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sysfs.h:25:13: error: invalid storage class for function ‘get_sysfs_data_’ static void get_sysfs_data_(struct net_device *dev, ^ drivers/net/ethernet/micrel/ksz_sysfs.h:35:13: error: invalid storage class for function ‘get_private_data_’ static void get_private_data_(struct device *d, struct semaphore **proc_sem, ^ drivers/net/ethernet/micrel/ksz_sysfs.h:79:12: error: invalid storage class for function ‘get_num_val_’ static int get_num_val_(const char *buf) ^ drivers/net/ethernet/micrel/ksz_sysfs.h:104:12: error: invalid storage class for function ‘alloc_dev_attr’ static int alloc_dev_attr(struct attribute **attrs, size_t attr_size, int item, ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:67:16: error: invalid storage class for function ‘netlan_show’ static ssize_t netlan_show(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:102:16: error: invalid storage class for function ‘netlan_store’ static ssize_t netlan_store(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:136:16: error: invalid storage class for function ‘netsw_show’ static ssize_t netsw_show(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:177:16: error: invalid storage class for function ‘netsw_store’ static ssize_t netsw_store(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:216:16: error: invalid storage class for function ‘netmac_show’ static ssize_t netmac_show(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:245:16: error: invalid storage class for function ‘netmac_store’ static ssize_t netmac_store(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:277:16: error: invalid storage class for function ‘netvlan_show’ static ssize_t netvlan_show(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:306:16: error: invalid storage class for function ‘netvlan_store’ static ssize_t netvlan_store(struct device *d, struct device_attribute *attr, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_info’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:458:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(info); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_info’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:458:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(info); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:458:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(info); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_info.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:458:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(info); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:458:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(info); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_info.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:458:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(info); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:344:16: error: invalid storage class for function ‘show_lan_version’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:459:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(version); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:459:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(version); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: note: (near initialization for ‘lan_attr_version.show’) static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:459:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(version); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_duplex’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:460:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_duplex’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:460:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(duplex); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:460:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_duplex.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:460:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:460:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_duplex.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:460:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(duplex); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_speed’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:461:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(speed); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_speed’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:461:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(speed); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:461:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(speed); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_speed.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:461:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(speed); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:461:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(speed); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_speed.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:461:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(speed); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_force’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:462:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(force); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_force’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:462:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(force); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:462:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(force); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_force.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:462:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(force); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:462:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(force); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_force.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:462:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(force); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_flow_ctrl’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:463:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_flow_ctrl’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:463:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(flow_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:463:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_flow_ctrl.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:463:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:463:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_flow_ctrl.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:463:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(flow_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_mib’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:464:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_mib’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:464:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mib); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:464:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_mib.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:464:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:464:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_mib.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:464:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mib); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_reg’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:465:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(reg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_reg’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:465:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(reg); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:465:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(reg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_reg.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:465:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(reg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:465:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(reg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_reg.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:465:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(reg); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_vid’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:466:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_vid’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:466:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:466:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_vid.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:466:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:466:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_vid.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:466:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_features’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:467:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(features); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_features’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:467:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(features); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:467:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(features); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_features.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:467:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(features); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:467:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(features); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_features.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:467:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(features); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_overrides’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:468:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(overrides); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_overrides’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:468:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(overrides); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:468:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(overrides); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_overrides.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:468:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(overrides); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:468:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(overrides); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_overrides.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:468:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(overrides); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_dynamic_table’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:470:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(dynamic_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_dynamic_table’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:470:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(dynamic_table); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:470:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(dynamic_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_dynamic_table.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:470:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(dynamic_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:470:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(dynamic_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_dynamic_table.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:470:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(dynamic_table); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_static_table’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:471:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(static_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_static_table’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:471:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(static_table); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:471:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(static_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_static_table.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:471:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(static_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:471:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(static_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_static_table.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:471:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(static_table); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:344:16: error: invalid storage class for function ‘show_lan_vlan_table’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:472:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(vlan_table); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:472:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(vlan_table); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: note: (near initialization for ‘lan_attr_vlan_table.show’) static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:472:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(vlan_table); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_aging’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:473:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_aging’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:473:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aging); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:473:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_aging.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:473:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:473:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_aging.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:473:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aging); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_fast_aging’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:474:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fast_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_fast_aging’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:474:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fast_aging); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:474:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fast_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_fast_aging.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:474:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fast_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:474:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fast_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_fast_aging.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:474:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fast_aging); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_link_aging’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:475:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(link_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_link_aging’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:475:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(link_aging); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:475:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(link_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_link_aging.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:475:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(link_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:475:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(link_aging); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_link_aging.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:475:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(link_aging); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_bcast_per’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:476:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(bcast_per); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_bcast_per’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:476:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(bcast_per); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:476:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(bcast_per); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_bcast_per.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:476:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(bcast_per); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:476:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(bcast_per); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_bcast_per.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:476:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(bcast_per); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_mcast_storm’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:477:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_mcast_storm’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:477:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mcast_storm); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:477:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_mcast_storm.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:477:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:477:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_mcast_storm.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:477:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mcast_storm); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_diffserv_map’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:478:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(diffserv_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_diffserv_map’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:478:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(diffserv_map); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:478:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(diffserv_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_diffserv_map.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:478:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(diffserv_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:478:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(diffserv_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_diffserv_map.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:478:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(diffserv_map); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_p_802_1p_map’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:479:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(p_802_1p_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_p_802_1p_map’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:479:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(p_802_1p_map); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:479:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(p_802_1p_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_p_802_1p_map.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:479:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(p_802_1p_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:479:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(p_802_1p_map); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_p_802_1p_map.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:479:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(p_802_1p_map); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_vlan’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:480:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_vlan’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:480:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:480:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_vlan.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:480:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:480:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_vlan.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:480:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_null_vid’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:481:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(null_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_null_vid’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:481:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(null_vid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:481:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(null_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_null_vid.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:481:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(null_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:481:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(null_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_null_vid.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:481:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(null_vid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_macaddr’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:482:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_macaddr’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:482:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(macaddr); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:482:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_macaddr.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:482:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:482:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_macaddr.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:482:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(macaddr); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_mirror_mode’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:483:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mirror_mode); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_mirror_mode’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:483:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mirror_mode); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:483:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mirror_mode); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_mirror_mode.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:483:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mirror_mode); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:483:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mirror_mode); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_mirror_mode.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:483:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(mirror_mode); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_tail_tag’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:484:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tail_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_tail_tag’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:484:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tail_tag); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:484:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tail_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_tail_tag.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:484:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tail_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:484:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tail_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_tail_tag.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:484:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tail_tag); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_igmp_snoop’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:485:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(igmp_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_igmp_snoop’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:485:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(igmp_snoop); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:485:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(igmp_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_igmp_snoop.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:485:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(igmp_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:485:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(igmp_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_igmp_snoop.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:485:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(igmp_snoop); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ipv6_mld_snoop’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:486:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ipv6_mld_snoop’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:486:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_snoop); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:486:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ipv6_mld_snoop.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:486:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:486:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_snoop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ipv6_mld_snoop.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:486:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_snoop); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ipv6_mld_option’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:487:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_option); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ipv6_mld_option’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:487:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_option); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:487:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_option); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ipv6_mld_option.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:487:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_option); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:487:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_option); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ipv6_mld_option.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:487:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ipv6_mld_option); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_aggr_backoff’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:488:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aggr_backoff); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_aggr_backoff’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:488:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aggr_backoff); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:488:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aggr_backoff); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_aggr_backoff.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:488:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aggr_backoff); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:488:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aggr_backoff); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_aggr_backoff.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:488:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(aggr_backoff); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_no_exc_drop’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:489:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(no_exc_drop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_no_exc_drop’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:489:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(no_exc_drop); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:489:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(no_exc_drop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_no_exc_drop.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:489:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(no_exc_drop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:489:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(no_exc_drop); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_no_exc_drop.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:489:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(no_exc_drop); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_huge_packet’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:493:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(huge_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_huge_packet’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:493:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(huge_packet); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:493:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(huge_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_huge_packet.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:493:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(huge_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:493:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(huge_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_huge_packet.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:493:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(huge_packet); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_legal_packet’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:494:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(legal_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_legal_packet’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:494:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(legal_packet); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:494:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(legal_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_legal_packet.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:494:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(legal_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:494:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(legal_packet); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_legal_packet.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:494:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(legal_packet); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_length_check’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:495:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(length_check); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_length_check’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:495:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(length_check); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:495:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(length_check); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_length_check.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:495:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(length_check); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:495:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(length_check); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_length_check.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:495:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(length_check); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_back_pressure’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:496:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_back_pressure’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:496:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(back_pressure); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:496:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_back_pressure.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:496:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:496:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_back_pressure.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:496:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(back_pressure); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_sw_flow_ctrl’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:497:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_sw_flow_ctrl’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:497:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_flow_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:497:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_sw_flow_ctrl.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:497:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:497:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_sw_flow_ctrl.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:497:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_flow_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_sw_half_duplex’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:498:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_half_duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_sw_half_duplex’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:498:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_half_duplex); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:498:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_half_duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_sw_half_duplex.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:498:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_half_duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:498:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_half_duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_sw_half_duplex.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:498:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_half_duplex); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_sw_10_mbit’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:500:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_10_mbit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_sw_10_mbit’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:500:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_10_mbit); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:500:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_10_mbit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_sw_10_mbit.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:500:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_10_mbit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:500:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_10_mbit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_sw_10_mbit.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:500:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(sw_10_mbit); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_rx_flow_ctrl’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:502:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(rx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_rx_flow_ctrl’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:502:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(rx_flow_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:502:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(rx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_rx_flow_ctrl.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:502:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(rx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:502:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(rx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_rx_flow_ctrl.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:502:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(rx_flow_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_tx_flow_ctrl’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:503:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_tx_flow_ctrl’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:503:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tx_flow_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:503:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_tx_flow_ctrl.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:503:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:503:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tx_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_tx_flow_ctrl.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:503:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(tx_flow_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_fair_flow_ctrl’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:504:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fair_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_fair_flow_ctrl’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:504:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fair_flow_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:504:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fair_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_fair_flow_ctrl.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:504:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fair_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:504:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fair_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_fair_flow_ctrl.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:504:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fair_flow_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_vlan_bound’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:505:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan_bound); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_vlan_bound’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:505:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan_bound); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:505:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan_bound); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_vlan_bound.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:505:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan_bound); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:505:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan_bound); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_vlan_bound.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:505:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(vlan_bound); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_fw_unk_dest’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:506:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_fw_unk_dest’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:506:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fw_unk_dest); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:506:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_fw_unk_dest.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:506:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:506:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_fw_unk_dest.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:506:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(fw_unk_dest); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ins_tag_0_1’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:507:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ins_tag_0_1’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:507:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_1); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:507:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ins_tag_0_1.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:507:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:507:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ins_tag_0_1.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:507:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_1); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ins_tag_0_2’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:508:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ins_tag_0_2’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:508:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_2); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:508:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ins_tag_0_2.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:508:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:508:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ins_tag_0_2.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:508:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_0_2); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ins_tag_1_0’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:509:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ins_tag_1_0’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:509:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_0); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:509:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ins_tag_1_0.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:509:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:509:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ins_tag_1_0.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:509:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_0); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ins_tag_1_2’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:510:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ins_tag_1_2’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:510:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_2); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:510:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ins_tag_1_2.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:510:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:510:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_2); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ins_tag_1_2.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:510:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_1_2); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ins_tag_2_0’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:511:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ins_tag_2_0’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:511:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_0); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:511:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ins_tag_2_0.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:511:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:511:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ins_tag_2_0.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:511:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_0); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_ins_tag_2_1’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:512:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_ins_tag_2_1’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:512:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_1); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:512:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_ins_tag_2_1.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:512:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:512:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_ins_tag_2_1.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:512:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(ins_tag_2_1); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_pass_all’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:513:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_all); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_pass_all’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:513:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_all); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:513:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_all); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_pass_all.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:513:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_all); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:513:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_all); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_pass_all.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:513:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_all); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_pass_pause’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:514:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_pause); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_pass_pause’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:514:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_pause); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:514:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_pause); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_pass_pause.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:514:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_pause); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:514:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_pause); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_pass_pause.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:514:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(pass_pause); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:354:16: error: invalid storage class for function ‘show_lan_phy_addr’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:516:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(phy_addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:360:16: error: invalid storage class for function ‘store_lan_phy_addr’ static ssize_t store_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:516:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(phy_addr); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:516:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(phy_addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:42: note: (near initialization for ‘lan_attr_phy_addr.show’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:516:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(phy_addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:516:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(phy_addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:59: note: (near initialization for ‘lan_attr_phy_addr.store’) static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:366:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO | S_IWUSR, show_lan_##name, store_lan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:516:1: note: in expansion of macro ‘NETLAN_WR_ENTRY’ NETLAN_WR_ENTRY(phy_addr); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:344:16: error: invalid storage class for function ‘show_lan_ports’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:518:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(ports); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:518:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(ports); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: note: (near initialization for ‘lan_attr_ports.show’) static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:518:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(ports); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:344:16: error: invalid storage class for function ‘show_lan_dev_start’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:519:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(dev_start); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:519:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(dev_start); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: note: (near initialization for ‘lan_attr_dev_start.show’) static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:519:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(dev_start); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:344:16: error: invalid storage class for function ‘show_lan_vlan_start’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:520:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(vlan_start); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:520:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(vlan_start); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: note: (near initialization for ‘lan_attr_vlan_start.show’) static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:520:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(vlan_start); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:344:16: error: invalid storage class for function ‘show_lan_stp’ static ssize_t show_lan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:521:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(stp); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: error: initializer element is not constant static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:521:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(stp); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:32: note: (near initialization for ‘lan_attr_stp.show’) static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:350:8: note: in expansion of macro ‘LAN_ATTR’ static LAN_ATTR(name, S_IRUGO, show_lan_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:521:1: note: in expansion of macro ‘NETLAN_RD_ENTRY’ NETLAN_RD_ENTRY(stp); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_mib’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:534:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_mib’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:534:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mib); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:534:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_mib.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:534:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:534:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mib); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_mib.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:534:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mib); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_vid’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:535:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_vid’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:535:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(vid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:535:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_vid.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:535:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:535:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_vid.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:535:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(vid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_member’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:536:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_member’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:536:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(member); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:536:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_member.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:536:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:536:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_member.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:536:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(member); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_bcast_storm’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:537:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(bcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_bcast_storm’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:537:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(bcast_storm); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:537:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(bcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_bcast_storm.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:537:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(bcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:537:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(bcast_storm); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_bcast_storm.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:537:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(bcast_storm); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rx’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:538:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rx’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:538:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:538:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rx.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:538:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:538:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rx.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:538:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:539:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:539:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:539:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:539:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:539:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:539:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_learn’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:540:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(learn); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_learn’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:540:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(learn); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:540:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(learn); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_learn.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:540:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(learn); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:540:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(learn); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_learn.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:540:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(learn); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_mirror_port’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:541:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_port); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_mirror_port’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:541:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_port); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:541:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_port); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_mirror_port.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:541:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_port); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:541:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_port); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_mirror_port.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:541:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_port); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_mirror_rx’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:542:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_mirror_rx’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:542:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_rx); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:542:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_mirror_rx.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:542:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:542:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_rx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_mirror_rx.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:542:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_rx); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_mirror_tx’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:543:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_mirror_tx’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:543:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_tx); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:543:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_mirror_tx.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:543:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:543:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_tx); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_mirror_tx.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:543:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(mirror_tx); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_diffserv’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:544:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(diffserv); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_diffserv’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:544:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(diffserv); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:544:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(diffserv); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_diffserv.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:544:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(diffserv); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:544:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(diffserv); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_diffserv.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:544:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(diffserv); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_p_802_1p’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:545:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(p_802_1p); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_p_802_1p’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:545:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(p_802_1p); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:545:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(p_802_1p); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_p_802_1p.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:545:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(p_802_1p); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:545:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(p_802_1p); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_p_802_1p.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:545:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(p_802_1p); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_port_based’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:546:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(port_based); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_port_based’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:546:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(port_based); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:546:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(port_based); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_port_based.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:546:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(port_based); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:546:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(port_based); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_port_based.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:546:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(port_based); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_non_vid’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:547:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(non_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_non_vid’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:547:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(non_vid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:547:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(non_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_non_vid.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:547:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(non_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:547:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(non_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_non_vid.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:547:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(non_vid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_drop_tagged’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:548:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(drop_tagged); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_drop_tagged’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:548:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(drop_tagged); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:548:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(drop_tagged); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_drop_tagged.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:548:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(drop_tagged); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:548:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(drop_tagged); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_drop_tagged.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:548:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(drop_tagged); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_ingress’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:549:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ingress); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_ingress’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:549:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ingress); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:549:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ingress); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_ingress.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:549:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ingress); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:549:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ingress); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_ingress.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:549:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ingress); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_ins_tag’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:550:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ins_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_ins_tag’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:550:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ins_tag); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:550:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ins_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_ins_tag.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:550:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ins_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:550:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ins_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_ins_tag.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:550:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(ins_tag); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rmv_tag’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:551:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rmv_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rmv_tag’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:551:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rmv_tag); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:551:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rmv_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rmv_tag.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:551:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rmv_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:551:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rmv_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rmv_tag.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:551:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rmv_tag); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_double_tag’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:553:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(double_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_double_tag’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:553:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(double_tag); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:553:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(double_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_double_tag.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:553:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(double_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:553:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(double_tag); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_double_tag.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:553:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(double_tag); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_replace_prio’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:555:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(replace_prio); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_replace_prio’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:555:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(replace_prio); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:555:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(replace_prio); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_replace_prio.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:555:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(replace_prio); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:555:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(replace_prio); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_replace_prio.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:555:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(replace_prio); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_prio_queue’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:556:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(prio_queue); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_prio_queue’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:556:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(prio_queue); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:556:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(prio_queue); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_prio_queue.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:556:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(prio_queue); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:556:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(prio_queue); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_prio_queue.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:556:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(prio_queue); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p0_ctrl’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:557:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p0_ctrl’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:557:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:557:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p0_ctrl.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:557:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:557:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p0_ctrl.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:557:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p1_ctrl’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:558:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p1_ctrl’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:558:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:558:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p1_ctrl.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:558:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:558:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p1_ctrl.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:558:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p2_ctrl’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:559:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p2_ctrl’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:559:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:559:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p2_ctrl.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:559:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:559:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p2_ctrl.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:559:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p3_ctrl’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:560:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p3_ctrl’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:560:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:560:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p3_ctrl.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:560:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:560:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p3_ctrl.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:560:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rx_prio_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:567:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rx_prio_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:567:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_prio_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:567:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rx_prio_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:567:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:567:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rx_prio_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:567:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_prio_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_prio_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:568:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_prio_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:568:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_prio_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:568:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_prio_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:568:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:568:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_prio_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_prio_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:568:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_prio_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rx_limit’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:569:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_limit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rx_limit’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:569:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_limit); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:569:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_limit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rx_limit.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:569:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_limit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:569:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_limit); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rx_limit.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:569:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_limit); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_cnt_ifg’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:570:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_ifg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_cnt_ifg’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:570:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_ifg); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:570:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_ifg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_cnt_ifg.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:570:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_ifg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:570:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_ifg); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_cnt_ifg.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:570:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_ifg); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_cnt_pre’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:571:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_pre); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_cnt_pre’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:571:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_pre); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:571:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_pre); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_cnt_pre.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:571:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_pre); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:571:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_pre); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_cnt_pre.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:571:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(cnt_pre); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rx_p0_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:572:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rx_p0_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:572:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p0_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:572:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rx_p0_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:572:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:572:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rx_p0_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:572:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p0_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rx_p1_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:573:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rx_p1_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:573:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p1_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:573:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rx_p1_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:573:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:573:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rx_p1_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:573:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p1_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rx_p2_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:574:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rx_p2_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:574:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p2_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:574:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rx_p2_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:574:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:574:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rx_p2_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:574:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p2_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_rx_p3_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:575:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_rx_p3_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:575:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p3_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:575:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_rx_p3_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:575:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:575:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_rx_p3_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:575:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(rx_p3_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p0_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:576:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p0_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:576:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:576:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p0_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:576:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:576:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p0_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:576:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p0_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p1_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:577:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p1_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:577:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:577:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p1_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:577:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:577:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p1_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:577:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p1_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p2_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:578:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p2_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:578:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:578:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p2_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:578:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:578:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p2_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:578:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p2_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_tx_p3_rate’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:579:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_tx_p3_rate’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:579:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_rate); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:579:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_tx_p3_rate.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:579:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:579:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_rate); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_tx_p3_rate.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:579:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(tx_p3_rate); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_back_pressure’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:580:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_back_pressure’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:580:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(back_pressure); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:580:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_back_pressure.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:580:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:580:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(back_pressure); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_back_pressure.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:580:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(back_pressure); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_force_flow_ctrl’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:581:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(force_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_force_flow_ctrl’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:581:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(force_flow_ctrl); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:581:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(force_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_force_flow_ctrl.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:581:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(force_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:581:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(force_flow_ctrl); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_force_flow_ctrl.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:581:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(force_flow_ctrl); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_fw_unk_dest’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:582:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_fw_unk_dest’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:582:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_unk_dest); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:582:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_fw_unk_dest.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:582:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:582:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_unk_dest); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_fw_unk_dest.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:582:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_unk_dest); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_fw_inv_vid’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:583:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_inv_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_fw_inv_vid’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:583:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_inv_vid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:583:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_inv_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_fw_inv_vid.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:583:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_inv_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:583:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_inv_vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_fw_inv_vid.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:583:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(fw_inv_vid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:374:16: error: invalid storage class for function ‘show_sw_duplex’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:585:1: note: in expansion of macro ‘NETSW_RD_ENTRY’ NETSW_RD_ENTRY(duplex); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:31: error: initializer element is not constant static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:585:1: note: in expansion of macro ‘NETSW_RD_ENTRY’ NETSW_RD_ENTRY(duplex); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:31: note: (near initialization for ‘sw_attr_duplex.show’) static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:585:1: note: in expansion of macro ‘NETSW_RD_ENTRY’ NETSW_RD_ENTRY(duplex); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:374:16: error: invalid storage class for function ‘show_sw_speed’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:586:1: note: in expansion of macro ‘NETSW_RD_ENTRY’ NETSW_RD_ENTRY(speed); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:31: error: initializer element is not constant static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:586:1: note: in expansion of macro ‘NETSW_RD_ENTRY’ NETSW_RD_ENTRY(speed); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:31: note: (near initialization for ‘sw_attr_speed.show’) static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:380:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO, show_sw_##name, NULL) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:586:1: note: in expansion of macro ‘NETSW_RD_ENTRY’ NETSW_RD_ENTRY(speed); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_linkmd’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:587:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(linkmd); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_linkmd’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:587:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(linkmd); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:587:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(linkmd); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_linkmd.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:587:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(linkmd); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:587:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(linkmd); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_linkmd.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:587:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(linkmd); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_macaddr’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:588:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_macaddr’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:588:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(macaddr); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:588:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_macaddr.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:588:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:588:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(macaddr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_macaddr.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:588:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(macaddr); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_src_filter_0’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:589:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_src_filter_0’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:589:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_0); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:589:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_src_filter_0.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:589:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:589:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_0); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_src_filter_0.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:589:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_0); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:384:16: error: invalid storage class for function ‘show_sw_src_filter_1’ static ssize_t show_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:590:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:390:16: error: invalid storage class for function ‘store_sw_src_filter_1’ static ssize_t store_sw_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:590:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_1); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:590:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:41: note: (near initialization for ‘sw_attr_src_filter_1.show’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:590:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: error: initializer element is not constant static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:590:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_1); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:57: note: (near initialization for ‘sw_attr_src_filter_1.store’) static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:396:8: note: in expansion of macro ‘SW_ATTR’ static SW_ATTR(name, S_IRUGO | S_IWUSR, show_sw_##name, store_sw_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:590:1: note: in expansion of macro ‘NETSW_WR_ENTRY’ NETSW_WR_ENTRY(src_filter_1); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:414:16: error: invalid storage class for function ‘show_mac_fid’ static ssize_t show_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:604:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:420:16: error: invalid storage class for function ‘store_mac_fid’ static ssize_t store_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:604:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(fid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:604:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: note: (near initialization for ‘mac_attr_fid.show’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:604:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:604:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: note: (near initialization for ‘mac_attr_fid.store’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:604:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(fid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:414:16: error: invalid storage class for function ‘show_mac_use_fid’ static ssize_t show_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:605:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(use_fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:420:16: error: invalid storage class for function ‘store_mac_use_fid’ static ssize_t store_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:605:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(use_fid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:605:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(use_fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: note: (near initialization for ‘mac_attr_use_fid.show’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:605:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(use_fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:605:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(use_fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: note: (near initialization for ‘mac_attr_use_fid.store’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:605:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(use_fid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:414:16: error: invalid storage class for function ‘show_mac_override’ static ssize_t show_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:606:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(override); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:420:16: error: invalid storage class for function ‘store_mac_override’ static ssize_t store_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:606:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(override); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:606:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(override); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: note: (near initialization for ‘mac_attr_override.show’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:606:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(override); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:606:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(override); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: note: (near initialization for ‘mac_attr_override.store’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:606:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(override); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:414:16: error: invalid storage class for function ‘show_mac_valid’ static ssize_t show_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:607:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:420:16: error: invalid storage class for function ‘store_mac_valid’ static ssize_t store_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:607:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(valid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:607:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: note: (near initialization for ‘mac_attr_valid.show’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:607:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:607:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: note: (near initialization for ‘mac_attr_valid.store’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:607:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(valid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:414:16: error: invalid storage class for function ‘show_mac_ports’ static ssize_t show_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:608:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(ports); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:420:16: error: invalid storage class for function ‘store_mac_ports’ static ssize_t store_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:608:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(ports); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:608:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(ports); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: note: (near initialization for ‘mac_attr_ports.show’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:608:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(ports); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:608:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(ports); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: note: (near initialization for ‘mac_attr_ports.store’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:608:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(ports); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:414:16: error: invalid storage class for function ‘show_mac_addr’ static ssize_t show_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:609:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:420:16: error: invalid storage class for function ‘store_mac_addr’ static ssize_t store_mac_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:609:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(addr); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:609:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:42: note: (near initialization for ‘mac_attr_addr.show’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:609:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: error: initializer element is not constant static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:609:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(addr); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:59: note: (near initialization for ‘mac_attr_addr.store’) static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:426:8: note: in expansion of macro ‘MAC_ATTR’ static MAC_ATTR(name, S_IRUGO | S_IWUSR, show_mac_##name, store_mac_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:609:1: note: in expansion of macro ‘NETMAC_WR_ENTRY’ NETMAC_WR_ENTRY(addr); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:444:16: error: invalid storage class for function ‘show_vlan_valid’ static ssize_t show_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:611:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:450:16: error: invalid storage class for function ‘store_vlan_valid’ static ssize_t store_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:611:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(valid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:611:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: note: (near initialization for ‘vlan_attr_valid.show’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:611:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:611:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(valid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: note: (near initialization for ‘vlan_attr_valid.store’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:611:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(valid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:444:16: error: invalid storage class for function ‘show_vlan_member’ static ssize_t show_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:612:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:450:16: error: invalid storage class for function ‘store_vlan_member’ static ssize_t store_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:612:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(member); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:612:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: note: (near initialization for ‘vlan_attr_member.show’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:612:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:612:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(member); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: note: (near initialization for ‘vlan_attr_member.store’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:612:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(member); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:444:16: error: invalid storage class for function ‘show_vlan_fid’ static ssize_t show_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:613:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:450:16: error: invalid storage class for function ‘store_vlan_fid’ static ssize_t store_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:613:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(fid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:613:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: note: (near initialization for ‘vlan_attr_fid.show’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:613:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:613:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(fid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: note: (near initialization for ‘vlan_attr_fid.store’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:613:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(fid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:444:16: error: invalid storage class for function ‘show_vlan_vid’ static ssize_t show_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:614:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:450:16: error: invalid storage class for function ‘store_vlan_vid’ static ssize_t store_vlan_##name(struct device *d, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:614:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(vid); ^ In file included from ./include/linux/kobject.h:21:0, from ./include/linux/module.h:17, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:614:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:43: note: (near initialization for ‘vlan_attr_vid.show’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:103:10: note: in definition of macro ‘__ATTR’ .show = _show, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:614:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: error: initializer element is not constant static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:614:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(vid); ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:61: note: (near initialization for ‘vlan_attr_vid.store’) static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ ./include/linux/sysfs.h:104:11: note: in definition of macro ‘__ATTR’ .store = _store, \ ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:456:8: note: in expansion of macro ‘VLAN_ATTR’ static VLAN_ATTR(name, S_IRUGO | S_IWUSR, show_vlan_##name, store_vlan_##name) ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:614:1: note: in expansion of macro ‘NETVLAN_WR_ENTRY’ NETVLAN_WR_ENTRY(vid); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:8743:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_sw_sysfs.c:825:13: error: invalid storage class for function ‘exit_sw_sysfs’ static void exit_sw_sysfs(struct ksz_sw *sw, struct ksz_sw_sysfs *info, ^ drivers/net/ethernet/micrel/ksz_sw_sysfs.c:859:12: error: invalid storage class for function ‘init_sw_sysfs’ static int init_sw_sysfs(struct ksz_sw *sw, struct ksz_sw_sysfs *info, ^ In file included from drivers/net/ethernet/micrel/spi-ksz8863.c:384:0: drivers/net/ethernet/micrel/ksz_sw.c:8750:20: error: invalid storage class for function ‘sw_interrupt’ static irqreturn_t sw_interrupt(int irq, void *phy_dat) ^ drivers/net/ethernet/micrel/ksz_sw.c:8760:13: error: invalid storage class for function ‘sw_change’ static void sw_change(struct work_struct *work) ^ drivers/net/ethernet/micrel/ksz_sw.c:8783:12: error: invalid storage class for function ‘sw_start_interrupt’ static int sw_start_interrupt(struct sw_priv *ks, const char *name) ^ drivers/net/ethernet/micrel/ksz_sw.c:8802:13: error: invalid storage class for function ‘sw_stop_interrupt’ static void sw_stop_interrupt(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:8811:13: error: invalid storage class for function ‘sw_init_phy_priv’ static void sw_init_phy_priv(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:8845:13: error: invalid storage class for function ‘sw_init_phydev’ static void sw_init_phydev(struct ksz_sw *sw, struct phy_device *phydev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8877:12: error: invalid storage class for function ‘kszphy_config_init’ static int kszphy_config_init(struct phy_device *phydev) ^ drivers/net/ethernet/micrel/ksz_sw.c:8888:17: error: initializer element is not constant .config_init = kszphy_config_init, ^ drivers/net/ethernet/micrel/ksz_sw.c:8888:17: note: (near initialization for ‘kszsw_phy_driver.config_init’) drivers/net/ethernet/micrel/ksz_sw.c:8963:13: error: invalid storage class for function ‘sw_r_phy’ static void sw_r_phy(struct ksz_sw *sw, u16 phy, u16 reg, u16 *val) ^ drivers/net/ethernet/micrel/ksz_sw.c:9067:13: error: invalid storage class for function ‘sw_w_phy’ static void sw_w_phy(struct ksz_sw *sw, u16 phy, u16 reg, u16 val) ^ drivers/net/ethernet/micrel/ksz_sw.c:9165:12: error: invalid storage class for function ‘ksz_mii_read’ static int ksz_mii_read(struct mii_bus *bus, int phy_id, int regnum) ^ drivers/net/ethernet/micrel/ksz_sw.c:9196:12: error: invalid storage class for function ‘ksz_mii_write’ static int ksz_mii_write(struct mii_bus *bus, int phy_id, int regnum, u16 val) ^ drivers/net/ethernet/micrel/ksz_sw.c:9258:12: error: invalid storage class for function ‘ksz_mii_init’ static int ksz_mii_init(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:9332:13: error: invalid storage class for function ‘ksz_mii_exit’ static void ksz_mii_exit(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:9368:13: error: invalid storage class for function ‘determine_rate’ static void determine_rate(struct ksz_sw *sw, struct ksz_port_mib *mib) ^ drivers/net/ethernet/micrel/ksz_sw.c:9403:13: error: invalid storage class for function ‘ksz_mib_read_work’ static void ksz_mib_read_work(struct work_struct *work) ^ drivers/net/ethernet/micrel/ksz_sw.c:9472:13: error: invalid storage class for function ‘copy_port_status’ static void copy_port_status(struct ksz_port *src, struct ksz_port *dst) ^ drivers/net/ethernet/micrel/ksz_sw.c:9480:13: error: invalid storage class for function ‘link_read_work’ static void link_read_work(struct work_struct *work) ^ drivers/net/ethernet/micrel/ksz_sw.c:9551:13: error: invalid storage class for function ‘ksz_mib_monitor’ static void ksz_mib_monitor(unsigned long ptr) ^ drivers/net/ethernet/micrel/ksz_sw.c:9560:13: error: invalid storage class for function ‘ksz_dev_monitor’ static void ksz_dev_monitor(unsigned long ptr) ^ drivers/net/ethernet/micrel/ksz_sw.c:9597:13: error: invalid storage class for function ‘ksz_probe_last’ static void ksz_probe_last(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:9658:12: error: invalid storage class for function ‘ksz_probe’ static int ksz_probe(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:9852:13: error: invalid storage class for function ‘ksz_remove_first’ static void ksz_remove_first(struct sw_priv *ks) ^ drivers/net/ethernet/micrel/ksz_sw.c:9897:12: error: invalid storage class for function ‘ksz_remove’ static int ksz_remove(struct sw_priv *ks) ^ In file included from ./include/linux/module.h:18:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: ./include/linux/moduleparam.h:344:38: error: invalid storage class for function ‘__check_fiber’ static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9911:1: note: in expansion of macro ‘module_param’ module_param(fiber, int, 0); ^ ./include/linux/moduleparam.h:220:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static const char __param_str_##name[] = prefix #name; \ ^ ./include/linux/moduleparam.h:167:2: note: in expansion of macro ‘__module_param_call’ __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0) ^ ./include/linux/moduleparam.h:147:2: note: in expansion of macro ‘module_param_cb’ module_param_cb(name, ¶m_ops_##type, &value, perm); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9911:1: note: in expansion of macro ‘module_param’ module_param(fiber, int, 0); ^ ./include/linux/moduleparam.h:344:38: error: invalid storage class for function ‘__check_intr_mode’ static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9914:1: note: in expansion of macro ‘module_param’ module_param(intr_mode, int, 0); ^ ./include/linux/moduleparam.h:220:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static const char __param_str_##name[] = prefix #name; \ ^ ./include/linux/moduleparam.h:167:2: note: in expansion of macro ‘__module_param_call’ __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0) ^ ./include/linux/moduleparam.h:147:2: note: in expansion of macro ‘module_param_cb’ module_param_cb(name, ¶m_ops_##type, &value, perm); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9914:1: note: in expansion of macro ‘module_param’ module_param(intr_mode, int, 0); ^ ./include/linux/moduleparam.h:344:38: error: invalid storage class for function ‘__check_fast_aging’ static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9918:1: note: in expansion of macro ‘module_param’ module_param(fast_aging, int, 0); ^ ./include/linux/moduleparam.h:220:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static const char __param_str_##name[] = prefix #name; \ ^ ./include/linux/moduleparam.h:167:2: note: in expansion of macro ‘__module_param_call’ __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0) ^ ./include/linux/moduleparam.h:147:2: note: in expansion of macro ‘module_param_cb’ module_param_cb(name, ¶m_ops_##type, &value, perm); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9918:1: note: in expansion of macro ‘module_param’ module_param(fast_aging, int, 0); ^ ./include/linux/moduleparam.h:344:38: error: invalid storage class for function ‘__check_multi_dev’ static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9919:1: note: in expansion of macro ‘module_param’ module_param(multi_dev, int, 0); ^ ./include/linux/moduleparam.h:220:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static const char __param_str_##name[] = prefix #name; \ ^ ./include/linux/moduleparam.h:167:2: note: in expansion of macro ‘__module_param_call’ __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0) ^ ./include/linux/moduleparam.h:147:2: note: in expansion of macro ‘module_param_cb’ module_param_cb(name, ¶m_ops_##type, &value, perm); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9919:1: note: in expansion of macro ‘module_param’ module_param(multi_dev, int, 0); ^ ./include/linux/moduleparam.h:344:38: error: invalid storage class for function ‘__check_stp’ static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9920:1: note: in expansion of macro ‘module_param’ module_param(stp, int, 0); ^ ./include/linux/moduleparam.h:220:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static const char __param_str_##name[] = prefix #name; \ ^ ./include/linux/moduleparam.h:167:2: note: in expansion of macro ‘__module_param_call’ __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0) ^ ./include/linux/moduleparam.h:147:2: note: in expansion of macro ‘module_param_cb’ module_param_cb(name, ¶m_ops_##type, &value, perm); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/ksz_sw.c:9920:1: note: in expansion of macro ‘module_param’ module_param(stp, int, 0); ^ drivers/net/ethernet/micrel/spi-ksz8863.c:397:11: error: initializer element is not constant .get = sw_reg_get, ^ drivers/net/ethernet/micrel/spi-ksz8863.c:397:11: note: (near initialization for ‘sw_reg_ops.get’) drivers/net/ethernet/micrel/spi-ksz8863.c:398:11: error: initializer element is not constant .set = sw_reg_set, ^ drivers/net/ethernet/micrel/spi-ksz8863.c:398:11: note: (near initialization for ‘sw_reg_ops.set’) drivers/net/ethernet/micrel/spi-ksz8863.c:408:12: error: invalid storage class for function ‘ksz8863_probe’ static int ksz8863_probe(struct spi_device *spi) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:447:12: error: invalid storage class for function ‘ksz8863_remove’ static int ksz8863_remove(struct spi_device *spi) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:467:11: error: initializer element is not constant .probe = ksz8863_probe, ^ drivers/net/ethernet/micrel/spi-ksz8863.c:467:11: note: (near initialization for ‘ksz8863_driver.probe’) drivers/net/ethernet/micrel/spi-ksz8863.c:468:12: error: initializer element is not constant .remove = ksz8863_remove, ^ drivers/net/ethernet/micrel/spi-ksz8863.c:468:12: note: (near initialization for ‘ksz8863_driver.remove’) drivers/net/ethernet/micrel/spi-ksz8863.c:461:1: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static struct spi_driver ksz8863_driver = { ^ drivers/net/ethernet/micrel/spi-ksz8863.c:471:19: error: invalid storage class for function ‘ksz8863_init’ static int __init ksz8863_init(void) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:481:20: error: invalid storage class for function ‘ksz8863_exit’ static void __exit ksz8863_exit(void) ^ In file included from ./include/linux/printk.h:5:0, from ./include/linux/kernel.h:13, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: drivers/net/ethernet/micrel/spi-ksz8863.c:493:17: error: initializer element is not constant subsys_initcall(ksz8863_init); ^ ./include/linux/init.h:171:58: note: in definition of macro ‘__define_initcall’ __attribute__((__section__(".initcall" #id ".init"))) = fn; ^ drivers/net/ethernet/micrel/spi-ksz8863.c:493:1: note: in expansion of macro ‘subsys_initcall’ subsys_initcall(ksz8863_init); ^ drivers/net/ethernet/micrel/spi-ksz8863.c:494:13: error: initializer element is not constant module_exit(ksz8863_exit); ^ ./include/linux/init.h:208:50: note: in definition of macro ‘__exitcall’ static exitcall_t __exitcall_##fn __exit_call = fn ^ drivers/net/ethernet/micrel/spi-ksz8863.c:494:1: note: in expansion of macro ‘module_exit’ module_exit(ksz8863_exit); ^ ./include/linux/init.h:208:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static exitcall_t __exitcall_##fn __exit_call = fn ^ ./include/linux/module.h:98:24: note: in expansion of macro ‘__exitcall’ #define module_exit(x) __exitcall(x); ^ drivers/net/ethernet/micrel/spi-ksz8863.c:494:1: note: in expansion of macro ‘module_exit’ module_exit(ksz8863_exit); ^ In file included from ./include/linux/module.h:18:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:35: ./include/linux/moduleparam.h:344:38: error: invalid storage class for function ‘__check_rx_1msg’ static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:497:1: note: in expansion of macro ‘module_param’ module_param(rx_1msg, int, 0); ^ ./include/linux/moduleparam.h:344:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:497:1: note: in expansion of macro ‘module_param’ module_param(rx_1msg, int, 0); ^ ./include/linux/moduleparam.h:220:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static const char __param_str_##name[] = prefix #name; \ ^ ./include/linux/moduleparam.h:167:2: note: in expansion of macro ‘__module_param_call’ __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0) ^ ./include/linux/moduleparam.h:147:2: note: in expansion of macro ‘module_param_cb’ module_param_cb(name, ¶m_ops_##type, &value, perm); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:497:1: note: in expansion of macro ‘module_param’ module_param(rx_1msg, int, 0); ^ ./include/linux/moduleparam.h:344:38: error: invalid storage class for function ‘__check_spi_bus’ static inline type __always_unused *__check_##name(void) { return(p); } ^ ./include/linux/moduleparam.h:364:34: note: in expansion of macro ‘__param_check’ #define param_check_int(name, p) __param_check(name, p, int) ^ ./include/linux/moduleparam.h:146:2: note: in expansion of macro ‘param_check_int’ param_check_##type(name, &(value)); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:501:1: note: in expansion of macro ‘module_param’ module_param(spi_bus, int, 0); ^ ./include/linux/moduleparam.h:220:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] static const char __param_str_##name[] = prefix #name; \ ^ ./include/linux/moduleparam.h:167:2: note: in expansion of macro ‘__module_param_call’ __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0) ^ ./include/linux/moduleparam.h:147:2: note: in expansion of macro ‘module_param_cb’ module_param_cb(name, ¶m_ops_##type, &value, perm); \ ^ ./include/linux/moduleparam.h:126:2: note: in expansion of macro ‘module_param_named’ module_param_named(name, name, type, perm) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:501:1: note: in expansion of macro ‘module_param’ module_param(spi_bus, int, 0); ^ In file included from ./include/linux/linkage.h:4:0, from ./include/linux/kernel.h:6, from drivers/net/ethernet/micrel/spi-ksz8863.c:34: ./include/linux/compiler-gcc.h:205:45: error: expected declaration or statement at end of input #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) ^ ./include/linux/compiler.h:52:23: note: in definition of macro ‘___PASTE’ #define ___PASTE(a,b) a##b ^ ./include/linux/compiler-gcc.h:205:29: note: in expansion of macro ‘__PASTE’ #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) ^ ./include/linux/compiler.h:53:22: note: in expansion of macro ‘___PASTE’ #define __PASTE(a,b) ___PASTE(a,b) ^ ./include/linux/compiler-gcc.h:205:37: note: in expansion of macro ‘__PASTE’ #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) ^ ./include/linux/moduleparam.h:27:10: note: in expansion of macro ‘__UNIQUE_ID’ struct __UNIQUE_ID(name) {} ^ ./include/linux/module.h:161:32: note: in expansion of macro ‘__MODULE_INFO’ #define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info) ^ ./include/linux/module.h:164:30: note: in expansion of macro ‘MODULE_INFO’ #define MODULE_ALIAS(_alias) MODULE_INFO(alias, _alias) ^ drivers/net/ethernet/micrel/spi-ksz8863.c:510:1: note: in expansion of macro ‘MODULE_ALIAS’ MODULE_ALIAS("spi:ksz8863"); ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:8380:23: warning: unused variable ‘mrp_ops’ [-Wunused-variable] static struct mrp_ops mrp_ops = { ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/spi-ksz8863.c: At top level: drivers/net/ethernet/micrel/ksz_mrp.c:36:12: warning: ‘mrp_10_1_8a_hack’ defined but not used [-Wunused-variable] static int mrp_10_1_8a_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:37:12: warning: ‘mrp_10_5_1_hack’ defined but not used [-Wunused-variable] static int mrp_10_5_1_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:38:12: warning: ‘mrp_10_5_1c_hack’ defined but not used [-Wunused-variable] static int mrp_10_5_1c_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:39:12: warning: ‘mrp_10_5_1d_hack’ defined but not used [-Wunused-variable] static int mrp_10_5_1d_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:40:12: warning: ‘msrp_35_1_14g_hack’ defined but not used [-Wunused-variable] static int msrp_35_1_14g_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:43:12: warning: ‘fqtss_34_2_1b_hack’ defined but not used [-Wunused-variable] static int fqtss_34_2_1b_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:44:12: warning: ‘fqtss_34_2_5b_hack’ defined but not used [-Wunused-variable] static int fqtss_34_2_5b_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:45:12: warning: ‘fqtss_34_2_9b_hack’ defined but not used [-Wunused-variable] static int fqtss_34_2_9b_hack; ^ drivers/net/ethernet/micrel/ksz_mrp.c:163:13: warning: ‘setup_acl_drop’ defined but not used [-Wunused-function] static void setup_acl_drop(struct mrp_info *mrp, uint port) ^ drivers/net/ethernet/micrel/ksz_mrp.c:191:13: warning: ‘setup_acl_remap’ defined but not used [-Wunused-function] static void setup_acl_remap(struct mrp_info *mrp, uint port) ^ drivers/net/ethernet/micrel/ksz_mrp.c:225:13: warning: ‘enable_acl_remap’ defined but not used [-Wunused-function] static void enable_acl_remap(struct mrp_info *mrp, uint port, bool remap) ^ drivers/net/ethernet/micrel/ksz_mrp.c:270:12: warning: ‘is_host_port’ defined but not used [-Wunused-function] static int is_host_port(struct mrp_info *mrp, u8 port) ^ In file included from drivers/net/ethernet/micrel/ksz_sw.c:888:0, from drivers/net/ethernet/micrel/spi-ksz8863.c:384: drivers/net/ethernet/micrel/ksz_mrp.c:5512:12: warning: ‘mrp_req_cfg_mac’ defined but not used [-Wunused-function] static int mrp_req_cfg_mac(struct mrp_info *mrp, u8 *addr, u16 fid, u16 ports) ^ drivers/net/ethernet/micrel/ksz_mrp.c:5756:13: warning: ‘mrp_proc_proto’ defined but not used [-Wunused-function] static void mrp_proc_proto(struct mrp_info *mrp, u8 *addr, u16 port) ^ drivers/net/ethernet/micrel/ksz_mrp.c:6282:12: warning: ‘mrp_rcv’ defined but not used [-Wunused-function] static int mrp_rcv(struct mrp_info *mrp, struct sk_buff *skb, uint p) ^ cc1: some warnings being treated as errors scripts/Makefile.build:296: recipe for target 'drivers/net/ethernet/micrel/spi-ksz8863.o' failed make[4]: *** [drivers/net/ethernet/micrel/spi-ksz8863.o] Error 1 scripts/Makefile.build:547: recipe for target 'drivers/net/ethernet/micrel' failed make[3]: *** [drivers/net/ethernet/micrel] Error 2 scripts/Makefile.build:547: recipe for target 'drivers/net/ethernet' failed make[2]: *** [drivers/net/ethernet] Error 2 scripts/Makefile.build:547: recipe for target 'drivers/net' failed make[1]: *** [drivers/net] Error 2 Makefile:1008: recipe for target 'drivers' failed make: *** [drivers] Error 2 naveen@administrator:~/Projects/Gateway/kernel-source_ethernetSwitch/kernel-source$