summaryrefslogtreecommitdiff
path: root/target/linux/generic/files
diff options
context:
space:
mode:
authorLudovic Pouzenc <ludovic@pouzenc.fr>2018-09-14 22:25:09 +0200
committerLudovic Pouzenc <ludovic@pouzenc.fr>2018-09-14 22:25:09 +0200
commit3362d9fb3a94d0909b79c290abc8db6abe4cca21 (patch)
tree35f9e4dfaeb691fe09fcd95b45dc440f0338a1b5 /target/linux/generic/files
parent51e1f1476f74d6788b106a066dfebd8ec6ac1bd9 (diff)
downloadmtk-20170518-3362d9fb3a94d0909b79c290abc8db6abe4cca21.zip
mtk-20170518-3362d9fb3a94d0909b79c290abc8db6abe4cca21.tar.gz
mtk-20170518-3362d9fb3a94d0909b79c290abc8db6abe4cca21.tar.bz2
target/linux : drop many arch
Diffstat (limited to 'target/linux/generic/files')
-rw-r--r--target/linux/generic/files/include/linux/switch.h167
-rw-r--r--target/linux/generic/files/include/uapi/linux/switch.h103
2 files changed, 0 insertions, 270 deletions
diff --git a/target/linux/generic/files/include/linux/switch.h b/target/linux/generic/files/include/linux/switch.h
deleted file mode 100644
index b53431e..0000000
--- a/target/linux/generic/files/include/linux/switch.h
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * switch.h: Switch configuration API
- *
- * Copyright (C) 2008 Felix Fietkau <nbd@openwrt.org>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-#ifndef _LINUX_SWITCH_H
-#define _LINUX_SWITCH_H
-
-#include <net/genetlink.h>
-#include <uapi/linux/switch.h>
-
-struct switch_dev;
-struct switch_op;
-struct switch_val;
-struct switch_attr;
-struct switch_attrlist;
-struct switch_led_trigger;
-
-int register_switch(struct switch_dev *dev, struct net_device *netdev);
-void unregister_switch(struct switch_dev *dev);
-
-/**
- * struct switch_attrlist - attribute list
- *
- * @n_attr: number of attributes
- * @attr: pointer to the attributes array
- */
-struct switch_attrlist {
- int n_attr;
- const struct switch_attr *attr;
-};
-
-enum switch_port_speed {
- SWITCH_PORT_SPEED_UNKNOWN = 0,
- SWITCH_PORT_SPEED_10 = 10,
- SWITCH_PORT_SPEED_100 = 100,
- SWITCH_PORT_SPEED_1000 = 1000,
-};
-
-struct switch_port_link {
- bool link;
- bool duplex;
- bool aneg;
- bool tx_flow;
- bool rx_flow;
- enum switch_port_speed speed;
-};
-
-struct switch_port_stats {
- unsigned long tx_bytes;
- unsigned long rx_bytes;
-};
-
-/**
- * struct switch_dev_ops - switch driver operations
- *
- * @attr_global: global switch attribute list
- * @attr_port: port attribute list
- * @attr_vlan: vlan attribute list
- *
- * Callbacks:
- *
- * @get_vlan_ports: read the port list of a VLAN
- * @set_vlan_ports: set the port list of a VLAN
- *
- * @get_port_pvid: get the primary VLAN ID of a port
- * @set_port_pvid: set the primary VLAN ID of a port
- *
- * @apply_config: apply all changed settings to the switch
- * @reset_switch: resetting the switch
- */
-struct switch_dev_ops {
- struct switch_attrlist attr_global, attr_port, attr_vlan;
-
- int (*get_vlan_ports)(struct switch_dev *dev, struct switch_val *val);
- int (*set_vlan_ports)(struct switch_dev *dev, struct switch_val *val);
-
- int (*get_port_pvid)(struct switch_dev *dev, int port, int *val);
- int (*set_port_pvid)(struct switch_dev *dev, int port, int val);
-
- int (*apply_config)(struct switch_dev *dev);
- int (*reset_switch)(struct switch_dev *dev);
-
- int (*get_port_link)(struct switch_dev *dev, int port,
- struct switch_port_link *link);
- int (*get_port_stats)(struct switch_dev *dev, int port,
- struct switch_port_stats *stats);
-};
-
-struct switch_dev {
- struct device_node *of_node;
- const struct switch_dev_ops *ops;
- /* will be automatically filled */
- char devname[IFNAMSIZ];
-
- const char *name;
- /* NB: either alias or netdev must be set */
- const char *alias;
- struct net_device *netdev;
-
- int ports;
- int vlans;
- int cpu_port;
-
- /* the following fields are internal for swconfig */
- int id;
- struct list_head dev_list;
- unsigned long def_global, def_port, def_vlan;
-
- struct mutex sw_mutex;
- struct switch_port *portbuf;
- struct switch_portmap *portmap;
-
- char buf[128];
-
-#ifdef CONFIG_SWCONFIG_LEDS
- struct switch_led_trigger *led_trigger;
-#endif
-};
-
-struct switch_port {
- u32 id;
- u32 flags;
-};
-
-struct switch_portmap {
- u32 virt;
- const char *s;
-};
-
-struct switch_val {
- const struct switch_attr *attr;
- int port_vlan;
- int len;
- union {
- const char *s;
- u32 i;
- struct switch_port *ports;
- } value;
-};
-
-struct switch_attr {
- int disabled;
- int type;
- const char *name;
- const char *description;
-
- int (*set)(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val);
- int (*get)(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val);
-
- /* for driver internal use */
- int id;
- int ofs;
- int max;
-};
-
-#endif /* _LINUX_SWITCH_H */
diff --git a/target/linux/generic/files/include/uapi/linux/switch.h b/target/linux/generic/files/include/uapi/linux/switch.h
deleted file mode 100644
index a59b239..0000000
--- a/target/linux/generic/files/include/uapi/linux/switch.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * switch.h: Switch configuration API
- *
- * Copyright (C) 2008 Felix Fietkau <nbd@openwrt.org>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#ifndef _UAPI_LINUX_SWITCH_H
-#define _UAPI_LINUX_SWITCH_H
-
-#include <linux/types.h>
-#include <linux/netdevice.h>
-#include <linux/netlink.h>
-#include <linux/genetlink.h>
-#ifndef __KERNEL__
-#include <netlink/netlink.h>
-#include <netlink/genl/genl.h>
-#include <netlink/genl/ctrl.h>
-#endif
-
-/* main attributes */
-enum {
- SWITCH_ATTR_UNSPEC,
- /* global */
- SWITCH_ATTR_TYPE,
- /* device */
- SWITCH_ATTR_ID,
- SWITCH_ATTR_DEV_NAME,
- SWITCH_ATTR_ALIAS,
- SWITCH_ATTR_NAME,
- SWITCH_ATTR_VLANS,
- SWITCH_ATTR_PORTS,
- SWITCH_ATTR_PORTMAP,
- SWITCH_ATTR_CPU_PORT,
- /* attributes */
- SWITCH_ATTR_OP_ID,
- SWITCH_ATTR_OP_TYPE,
- SWITCH_ATTR_OP_NAME,
- SWITCH_ATTR_OP_PORT,
- SWITCH_ATTR_OP_VLAN,
- SWITCH_ATTR_OP_VALUE_INT,
- SWITCH_ATTR_OP_VALUE_STR,
- SWITCH_ATTR_OP_VALUE_PORTS,
- SWITCH_ATTR_OP_DESCRIPTION,
- /* port lists */
- SWITCH_ATTR_PORT,
- SWITCH_ATTR_MAX
-};
-
-enum {
- /* port map */
- SWITCH_PORTMAP_PORTS,
- SWITCH_PORTMAP_SEGMENT,
- SWITCH_PORTMAP_VIRT,
- SWITCH_PORTMAP_MAX
-};
-
-/* commands */
-enum {
- SWITCH_CMD_UNSPEC,
- SWITCH_CMD_GET_SWITCH,
- SWITCH_CMD_NEW_ATTR,
- SWITCH_CMD_LIST_GLOBAL,
- SWITCH_CMD_GET_GLOBAL,
- SWITCH_CMD_SET_GLOBAL,
- SWITCH_CMD_LIST_PORT,
- SWITCH_CMD_GET_PORT,
- SWITCH_CMD_SET_PORT,
- SWITCH_CMD_LIST_VLAN,
- SWITCH_CMD_GET_VLAN,
- SWITCH_CMD_SET_VLAN
-};
-
-/* data types */
-enum switch_val_type {
- SWITCH_TYPE_UNSPEC,
- SWITCH_TYPE_INT,
- SWITCH_TYPE_STRING,
- SWITCH_TYPE_PORTS,
- SWITCH_TYPE_NOVAL,
-};
-
-/* port nested attributes */
-enum {
- SWITCH_PORT_UNSPEC,
- SWITCH_PORT_ID,
- SWITCH_PORT_FLAG_TAGGED,
- SWITCH_PORT_ATTR_MAX
-};
-
-#define SWITCH_ATTR_DEFAULTS_OFFSET 0x1000
-
-
-#endif /* _UAPI_LINUX_SWITCH_H */