summaryrefslogtreecommitdiff
path: root/target/linux/generic-2.6/files/include
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2010-06-26 20:42:58 +0000
committerFelix Fietkau <nbd@openwrt.org>2010-06-26 20:42:58 +0000
commitda1bb88a2b900f0392b731ec47c5e1bff956fd8f (patch)
tree597146471e3eeafb4ba55e802e80b896770808ff /target/linux/generic-2.6/files/include
parent6117c04c9416b295347fb45c37e430f01df1d0d9 (diff)
downloadmtk-20170518-da1bb88a2b900f0392b731ec47c5e1bff956fd8f.zip
mtk-20170518-da1bb88a2b900f0392b731ec47c5e1bff956fd8f.tar.gz
mtk-20170518-da1bb88a2b900f0392b731ec47c5e1bff956fd8f.tar.bz2
rename target/linux/generic-2.6 to generic
SVN-Revision: 21952
Diffstat (limited to 'target/linux/generic-2.6/files/include')
-rw-r--r--target/linux/generic-2.6/files/include/linux/glamo-engine.h27
-rw-r--r--target/linux/generic-2.6/files/include/linux/glamofb.h35
-rw-r--r--target/linux/generic-2.6/files/include/linux/gpio_buttons.h33
-rw-r--r--target/linux/generic-2.6/files/include/linux/gpio_dev.h42
-rw-r--r--target/linux/generic-2.6/files/include/linux/myloader.h120
-rw-r--r--target/linux/generic-2.6/files/include/linux/pwm/pwm.h165
-rw-r--r--target/linux/generic-2.6/files/include/linux/rtl8366rb.h21
-rw-r--r--target/linux/generic-2.6/files/include/linux/rtl8366s.h21
-rw-r--r--target/linux/generic-2.6/files/include/linux/switch.h172
9 files changed, 0 insertions, 636 deletions
diff --git a/target/linux/generic-2.6/files/include/linux/glamo-engine.h b/target/linux/generic-2.6/files/include/linux/glamo-engine.h
deleted file mode 100644
index 516d45f..0000000
--- a/target/linux/generic-2.6/files/include/linux/glamo-engine.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef __GLAMO_ENGINE_H
-#define __GLAMO_ENGINE_H
-
-enum glamo_engine {
- GLAMO_ENGINE_CAPTURE = 0,
- GLAMO_ENGINE_ISP = 1,
- GLAMO_ENGINE_JPEG = 2,
- GLAMO_ENGINE_MPEG_ENC = 3,
- GLAMO_ENGINE_MPEG_DEC = 4,
- GLAMO_ENGINE_LCD = 5,
- GLAMO_ENGINE_CMDQ = 6,
- GLAMO_ENGINE_2D = 7,
- GLAMO_ENGINE_3D = 8,
- GLAMO_ENGINE_MMC = 9,
- GLAMO_ENGINE_MICROP0 = 10,
- GLAMO_ENGINE_RISC = 11,
- GLAMO_ENGINE_MICROP1_MPEG_ENC = 12,
- GLAMO_ENGINE_MICROP1_MPEG_DEC = 13,
-#if 0
- GLAMO_ENGINE_H264_DEC = 14,
- GLAMO_ENGINE_RISC1 = 15,
- GLAMO_ENGINE_SPI = 16,
-#endif
- __NUM_GLAMO_ENGINES
-};
-
-#endif
diff --git a/target/linux/generic-2.6/files/include/linux/glamofb.h b/target/linux/generic-2.6/files/include/linux/glamofb.h
deleted file mode 100644
index 5f9fab5..0000000
--- a/target/linux/generic-2.6/files/include/linux/glamofb.h
+++ /dev/null
@@ -1,35 +0,0 @@
-#ifndef _LINUX_GLAMOFB_H
-#define _LINUX_GLAMOFB_H
-
-#include <linux/fb.h>
-
-#ifdef __KERNEL__
-
-struct glamo_core;
-struct glamofb_handle;
-
-struct glamo_fb_platform_data {
- int width, height;
-
- int num_modes;
- struct fb_videomode *modes;
-
- struct glamo_core *core;
-};
-
-int glamofb_cmd_mode(struct glamofb_handle *gfb, int on);
-int glamofb_cmd_write(struct glamofb_handle *gfb, u_int16_t val);
-
-#ifdef CONFIG_MFD_GLAMO
-void glamo_lcm_reset(struct platform_device *pdev, int level);
-#else
-#define glamo_lcm_reset(...) do {} while (0)
-#endif
-
-#endif
-
-#define GLAMOFB_ENGINE_ENABLE _IOW('F', 0x1, __u32)
-#define GLAMOFB_ENGINE_DISABLE _IOW('F', 0x2, __u32)
-#define GLAMOFB_ENGINE_RESET _IOW('F', 0x3, __u32)
-
-#endif
diff --git a/target/linux/generic-2.6/files/include/linux/gpio_buttons.h b/target/linux/generic-2.6/files/include/linux/gpio_buttons.h
deleted file mode 100644
index f85b993..0000000
--- a/target/linux/generic-2.6/files/include/linux/gpio_buttons.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Definitions for the GPIO buttons interface driver
- *
- * Copyright (C) 2007-2010 Gabor Juhos <juhosg@openwrt.org>
- *
- * This file was based on: /include/linux/gpio_keys.h
- * The original gpio_keys.h seems not to have a license.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- */
-
-#ifndef _GPIO_BUTTONS_H_
-#define _GPIO_BUTTONS_H_
-
-struct gpio_button {
- int gpio; /* GPIO line number */
- int active_low;
- char *desc; /* button description */
- int type; /* input event type (EV_KEY, EV_SW) */
- int code; /* input event code (KEY_*, SW_*) */
- int threshold; /* count threshold */
-};
-
-struct gpio_buttons_platform_data {
- struct gpio_button *buttons;
- int nbuttons; /* number of buttons */
- int poll_interval; /* polling interval */
-};
-
-#endif /* _GPIO_BUTTONS_H_ */
diff --git a/target/linux/generic-2.6/files/include/linux/gpio_dev.h b/target/linux/generic-2.6/files/include/linux/gpio_dev.h
deleted file mode 100644
index a2a4b51..0000000
--- a/target/linux/generic-2.6/files/include/linux/gpio_dev.h
+++ /dev/null
@@ -1,42 +0,0 @@
-#ifndef _GPIO_DEV_H__
-#define _GPIO_DEV_H__
-
-/*********************************************************************
- *
- * This Linux kernel header is expanded from the original driver
- * (gpio_dev) by John Crispin. It provides an ioctl based interface to
- * GPIO pins via the /dev/gpio char device and gpiolib within the kernel.
- * The third argument to each ioctl is the GPIO pin number.
- *
- * This driver has been tested with lk 2.6.31 and works. The original
- * driver fails quietly with this version. The protocol is now a bit
- * different: the ioctl(fd, GPIO_REQUEST, <pin>) should be called
- * after the open("/dev/gpio", O_RDWR) to determine if the <pin> is
- * already in use. If the ioctl is successful (i.e. returns 0 for not
- * in use) then the <pin> is claimed by this driver and
- * ioctl(fd, GPIO_FREE, <pin>) should be called prior to close(fd) .
- *
- * See <kernel_source>/Documentation/gpio.txt
- * Note that kernel designers prefer the use of the sysfs gpio interface.
- * This char driver is easier to use from code and faster.
- ********************************************************************/
-
-/* This header can be included in both the user and kernel spaces */
-/* The _IO macro is defined in sys/ioctl.h */
-
-#define IOC_GPIODEV_MAGIC 'B'
-
-#define GPIO_GET _IO(IOC_GPIODEV_MAGIC, 10)
-#define GPIO_SET _IO(IOC_GPIODEV_MAGIC, 11)
-#define GPIO_CLEAR _IO(IOC_GPIODEV_MAGIC, 12)
-#define GPIO_DIR_IN _IO(IOC_GPIODEV_MAGIC, 13)
-#define GPIO_DIR_OUT _IO(IOC_GPIODEV_MAGIC, 14)
- /* Sets the direction out and clears the <pin> (low) */
-
-#define GPIO_DIR_HIGH _IO(IOC_GPIODEV_MAGIC, 15)
- /* Sets the direction out and sets the <pin> (high) */
-#define GPIO_REQUEST _IO(IOC_GPIODEV_MAGIC, 16)
-#define GPIO_FREE _IO(IOC_GPIODEV_MAGIC, 17)
-#define GPIO_CAN_SLEEP _IO(IOC_GPIODEV_MAGIC, 18)
-
-#endif
diff --git a/target/linux/generic-2.6/files/include/linux/myloader.h b/target/linux/generic-2.6/files/include/linux/myloader.h
deleted file mode 100644
index dcba6eb..0000000
--- a/target/linux/generic-2.6/files/include/linux/myloader.h
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Compex's MyLoader specific definitions
- *
- * Copyright (C) 2006-2008 Gabor Juhos <juhosg@openwrt.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 as published
- * by the Free Software Foundation.
- *
- */
-
-#ifndef _MYLOADER_H_
-#define _MYLOADER_H_
-
-/* Myloader specific magic numbers */
-#define MYLO_MAGIC_SYS_PARAMS 0x20021107
-#define MYLO_MAGIC_PARTITIONS 0x20021103
-#define MYLO_MAGIC_BOARD_PARAMS 0x20021103
-
-/* Vendor ID's (seems to be same as the PCI vendor ID's) */
-#define VENID_COMPEX 0x11F6
-
-/* Devices based on the ADM5120 */
-#define DEVID_COMPEX_NP27G 0x0078
-#define DEVID_COMPEX_NP28G 0x044C
-#define DEVID_COMPEX_NP28GHS 0x044E
-#define DEVID_COMPEX_WP54Gv1C 0x0514
-#define DEVID_COMPEX_WP54G 0x0515
-#define DEVID_COMPEX_WP54AG 0x0546
-#define DEVID_COMPEX_WPP54AG 0x0550
-#define DEVID_COMPEX_WPP54G 0x0555
-
-/* Devices based on the Atheros AR2317 */
-#define DEVID_COMPEX_NP25G 0x05E6
-#define DEVID_COMPEX_WPE53G 0x05DC
-
-/* Devices based on the Atheros AR71xx */
-#define DEVID_COMPEX_WP543 0x0640
-
-/* Devices based on the IXP422 */
-#define DEVID_COMPEX_WP18 0x047E
-#define DEVID_COMPEX_NP18A 0x0489
-
-/* Other devices */
-#define DEVID_COMPEX_NP26G8M 0x03E8
-#define DEVID_COMPEX_NP26G16M 0x03E9
-
-struct mylo_partition {
- uint16_t flags; /* partition flags */
- uint16_t type; /* type of the partition */
- uint32_t addr; /* relative address of the partition from the
- flash start */
- uint32_t size; /* size of the partition in bytes */
- uint32_t param; /* if this is the active partition, the
- MyLoader load code to this address */
-};
-
-#define PARTITION_FLAG_ACTIVE 0x8000 /* this is the active partition,
- * MyLoader loads firmware from here */
-#define PARTITION_FLAG_ISRAM 0x2000 /* FIXME: this is a RAM partition? */
-#define PARTIIION_FLAG_RAMLOAD 0x1000 /* FIXME: load this partition into the RAM? */
-#define PARTITION_FLAG_PRELOAD 0x0800 /* the partition data preloaded to RAM
- * before decompression */
-#define PARTITION_FLAG_LZMA 0x0100 /* partition data compressed by LZMA */
-#define PARTITION_FLAG_HAVEHDR 0x0002 /* the partition data have a header */
-
-#define PARTITION_TYPE_FREE 0
-#define PARTITION_TYPE_USED 1
-
-#define MYLO_MAX_PARTITIONS 8 /* maximum number of partitions in the
- partition table */
-
-struct mylo_partition_table {
- uint32_t magic; /* must be MYLO_MAGIC_PARTITIONS */
- uint32_t res0; /* unknown/unused */
- uint32_t res1; /* unknown/unused */
- uint32_t res2; /* unknown/unused */
- struct mylo_partition partitions[MYLO_MAX_PARTITIONS];
-};
-
-struct mylo_partition_header {
- uint32_t len; /* length of the partition data */
- uint32_t crc; /* CRC value of the partition data */
-};
-
-struct mylo_system_params {
- uint32_t magic; /* must be MYLO_MAGIC_SYS_PARAMS */
- uint32_t res0;
- uint32_t res1;
- uint32_t mylo_ver;
- uint16_t vid; /* Vendor ID */
- uint16_t did; /* Device ID */
- uint16_t svid; /* Sub Vendor ID */
- uint16_t sdid; /* Sub Device ID */
- uint32_t rev; /* device revision */
- uint32_t fwhi;
- uint32_t fwlo;
- uint32_t tftp_addr;
- uint32_t prog_start;
- uint32_t flash_size; /* size of boot FLASH in bytes */
- uint32_t dram_size; /* size of onboard RAM in bytes */
-};
-
-struct mylo_eth_addr {
- uint8_t mac[6];
- uint8_t csum[2];
-};
-
-#define MYLO_ETHADDR_COUNT 8 /* maximum number of ethernet address
- in the board parameters */
-
-struct mylo_board_params {
- uint32_t magic; /* must be MYLO_MAGIC_BOARD_PARAMS */
- uint32_t res0;
- uint32_t res1;
- uint32_t res2;
- struct mylo_eth_addr addr[MYLO_ETHADDR_COUNT];
-};
-
-#endif /* _MYLOADER_H_*/
diff --git a/target/linux/generic-2.6/files/include/linux/pwm/pwm.h b/target/linux/generic-2.6/files/include/linux/pwm/pwm.h
deleted file mode 100644
index e01cca9..0000000
--- a/target/linux/generic-2.6/files/include/linux/pwm/pwm.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- * include/linux/pwm.h
- *
- * Copyright (C) 2008 Bill Gatliff < bgat@billgatliff.com>
- *
- * This program is free software; you may redistribute and/or modify
- * it under the terms of the GNU General Public License version 2, as
- * published by the Free Software Foundation.
- *
- * 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.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- * USA
- */
-#ifndef __LINUX_PWM_H
-#define __LINUX_PWM_H
-
-enum {
- PWM_CONFIG_DUTY_TICKS = BIT(0),
- PWM_CONFIG_PERIOD_TICKS = BIT(1),
- PWM_CONFIG_POLARITY = BIT(2),
- PWM_CONFIG_START = BIT(3),
- PWM_CONFIG_STOP = BIT(4),
-
- PWM_CONFIG_HANDLER = BIT(5),
-
- PWM_CONFIG_DUTY_NS = BIT(6),
- PWM_CONFIG_DUTY_PERCENT = BIT(7),
- PWM_CONFIG_PERIOD_NS = BIT(8),
-};
-
-struct pwm_channel;
-struct work_struct;
-
-typedef int (*pwm_handler_t)(struct pwm_channel *p, void *data);
-typedef void (*pwm_callback_t)(struct pwm_channel *p);
-
-struct pwm_channel_config {
- int config_mask;
- unsigned long duty_ticks;
- unsigned long period_ticks;
- int polarity;
-
- pwm_handler_t handler;
-
- unsigned long duty_ns;
- unsigned long period_ns;
- int duty_percent;
-};
-
-struct pwm_device {
- struct list_head list;
- spinlock_t list_lock;
- struct device *dev;
- struct module *owner;
- struct pwm_channel *channels;
-
- const char *bus_id;
- int nchan;
-
- int (*request) (struct pwm_channel *p);
- void (*free) (struct pwm_channel *p);
- int (*config) (struct pwm_channel *p,
- struct pwm_channel_config *c);
- int (*config_nosleep)(struct pwm_channel *p,
- struct pwm_channel_config *c);
- int (*synchronize) (struct pwm_channel *p,
- struct pwm_channel *to_p);
- int (*unsynchronize)(struct pwm_channel *p,
- struct pwm_channel *from_p);
- int (*set_callback) (struct pwm_channel *p,
- pwm_callback_t callback);
-};
-
-int pwm_register(struct pwm_device *pwm);
-int pwm_unregister(struct pwm_device *pwm);
-
-enum {
- FLAG_REQUESTED = 0,
- FLAG_STOP = 1,
-};
-
-struct pwm_channel {
- struct list_head list;
- struct pwm_device *pwm;
- const char *requester;
- pid_t pid;
- int chan;
- unsigned long flags;
- unsigned long tick_hz;
-
- spinlock_t lock;
- struct completion complete;
-
- pwm_callback_t callback;
-
- struct work_struct handler_work;
- pwm_handler_t handler;
- void *handler_data;
-
- int active_high;
- unsigned long period_ticks;
- unsigned long duty_ticks;
-};
-
-struct gpio_pwm_platform_data {
- int gpio;
-};
-
-struct pwm_channel *
-pwm_request(const char *bus_id, int chan,
- const char *requester);
-
-void pwm_free(struct pwm_channel *pwm);
-
-int pwm_config_nosleep(struct pwm_channel *pwm,
- struct pwm_channel_config *c);
-
-int pwm_config(struct pwm_channel *pwm,
- struct pwm_channel_config *c);
-
-unsigned long pwm_ns_to_ticks(struct pwm_channel *pwm,
- unsigned long nsecs);
-
-unsigned long pwm_ticks_to_ns(struct pwm_channel *pwm,
- unsigned long ticks);
-
-int pwm_set_period_ns(struct pwm_channel *pwm,
- unsigned long period_ns);
-
-unsigned long int pwm_get_period_ns(struct pwm_channel *pwm);
-
-int pwm_set_duty_ns(struct pwm_channel *pwm,
- unsigned long duty_ns);
-
-int pwm_set_duty_percent(struct pwm_channel *pwm,
- int percent);
-
-unsigned long pwm_get_duty_ns(struct pwm_channel *pwm);
-
-int pwm_set_polarity(struct pwm_channel *pwm,
- int active_high);
-
-int pwm_start(struct pwm_channel *pwm);
-
-int pwm_stop(struct pwm_channel *pwm);
-
-int pwm_set_handler(struct pwm_channel *pwm,
- pwm_handler_t handler,
- void *data);
-
-int pwm_synchronize(struct pwm_channel *p,
- struct pwm_channel *to_p);
-
-
-int pwm_unsynchronize(struct pwm_channel *p,
- struct pwm_channel *from_p);
-
-
-#endif /* __LINUX_PWM_H */
diff --git a/target/linux/generic-2.6/files/include/linux/rtl8366rb.h b/target/linux/generic-2.6/files/include/linux/rtl8366rb.h
deleted file mode 100644
index 053e2ec..0000000
--- a/target/linux/generic-2.6/files/include/linux/rtl8366rb.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Platform data definition for the Realtek RTL8366S ethernet switch driver
- *
- * Copyright (C) 2009-2010 Gabor Juhos <juhosg@openwrt.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 as published
- * by the Free Software Foundation.
- */
-
-#ifndef _RTL8366RB_H
-#define _RTL8366RB_H
-
-#define RTL8366RB_DRIVER_NAME "rtl8366rb"
-
-struct rtl8366rb_platform_data {
- unsigned gpio_sda;
- unsigned gpio_sck;
-};
-
-#endif /* _RTL8366RB_SMI_H */
diff --git a/target/linux/generic-2.6/files/include/linux/rtl8366s.h b/target/linux/generic-2.6/files/include/linux/rtl8366s.h
deleted file mode 100644
index 09173ec..0000000
--- a/target/linux/generic-2.6/files/include/linux/rtl8366s.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Platform data definition for the Realtek RTL8366S ethernet switch driver
- *
- * Copyright (C) 2009-2010 Gabor Juhos <juhosg@openwrt.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 as published
- * by the Free Software Foundation.
- */
-
-#ifndef _RTL8366S_H
-#define _RTL8366S_H
-
-#define RTL8366S_DRIVER_NAME "rtl8366s"
-
-struct rtl8366s_platform_data {
- unsigned gpio_sda;
- unsigned gpio_sck;
-};
-
-#endif /* _RTL8366_SMI_H */
diff --git a/target/linux/generic-2.6/files/include/linux/switch.h b/target/linux/generic-2.6/files/include/linux/switch.h
deleted file mode 100644
index 25aedb8..0000000
--- a/target/linux/generic-2.6/files/include/linux/switch.h
+++ /dev/null
@@ -1,172 +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 <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>
-#else
-#include <net/genetlink.h>
-#endif
-
-/* main attributes */
-enum {
- SWITCH_ATTR_UNSPEC,
- /* global */
- SWITCH_ATTR_TYPE,
- /* device */
- SWITCH_ATTR_ID,
- SWITCH_ATTR_NAME,
- SWITCH_ATTR_DEV_NAME,
- SWITCH_ATTR_VLANS,
- SWITCH_ATTR_PORTS,
- 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
-};
-
-/* 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
-
-#ifdef __KERNEL__
-
-struct switch_dev;
-struct switch_op;
-struct switch_val;
-struct switch_attr;
-struct switch_attrlist;
-
-int register_switch(struct switch_dev *dev, struct net_device *netdev);
-void unregister_switch(struct switch_dev *dev);
-
-struct switch_attrlist {
- /* filled in by the driver */
- int n_attr;
- const struct switch_attr *attr;
-};
-
-
-struct switch_dev {
- int id;
- void *priv;
- const char *name;
-
- /* NB: either devname or netdev must be set */
- const char *devname;
- struct net_device *netdev;
-
- int ports;
- int vlans;
- int cpu_port;
- struct switch_attrlist attr_global, attr_port, attr_vlan;
-
- spinlock_t lock;
- struct switch_port *portbuf;
- struct list_head dev_list;
- unsigned long def_global, def_port, def_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);
-};
-
-struct switch_port {
- u32 id;
- u32 flags;
-};
-
-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
-
-#endif