summaryrefslogtreecommitdiffstats
path: root/target/linux/realtek/files/drivers/net/r8168/r8168_asf.h
diff options
context:
space:
mode:
authorRoman Yeryomin <roman@advem.lv>2012-09-13 00:40:35 +0300
committerRoman Yeryomin <roman@advem.lv>2013-05-26 00:44:46 +0300
commita27354c9021a8423ef8c7d2bffad49cbf639eec1 (patch)
tree2355929a4b8cf1888cd0797cfabdb42e0077c524 /target/linux/realtek/files/drivers/net/r8168/r8168_asf.h
parent24a776baeb5d3cd903b144c89ceb11c5bc36a49e (diff)
Add realtek target files
Signed-off-by: Roman Yeryomin <roman@advem.lv>
Diffstat (limited to 'target/linux/realtek/files/drivers/net/r8168/r8168_asf.h')
-rw-r--r--target/linux/realtek/files/drivers/net/r8168/r8168_asf.h295
1 files changed, 295 insertions, 0 deletions
diff --git a/target/linux/realtek/files/drivers/net/r8168/r8168_asf.h b/target/linux/realtek/files/drivers/net/r8168/r8168_asf.h
new file mode 100644
index 000000000..ba7063d8e
--- /dev/null
+++ b/target/linux/realtek/files/drivers/net/r8168/r8168_asf.h
@@ -0,0 +1,295 @@
+/*
+################################################################################
+#
+# r8168 is the Linux device driver released for RealTek RTL8168B/8111B,
+# RTL8168C/8111C, RTL8168CP/8111CP, RTL8168D/8111D, and RTL8168DP/8111DP
+# Gigabit Ethernet controllers with PCI-Express interface.
+#
+# Copyright(c) 2009 Realtek Semiconductor Corp. All rights reserved.
+#
+# 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.
+#
+# You should have received a copy of the GNU General Public License along with
+# this program; if not, see <http://www.gnu.org/licenses/>.
+#
+# Author:
+# Realtek NIC software team <nicfae@realtek.com>
+# No. 2, Innovation Road II, Hsinchu Science Park, Hsinchu 300, Taiwan
+#
+################################################################################
+ */
+
+/************************************************************************************
+ * This product is covered by one or more of the following patents:
+ * US5,307,459, US5,434,872, US5,732,094, US6,570,884, US6,115,776, and US6,327,625.
+ ***********************************************************************************/
+
+#define SIOCDEVPRIVATE_RTLASF SIOCDEVPRIVATE
+
+#define FUNCTION_ENABLE 1
+#define FUNCTION_DISABLE 0
+
+#define ASFCONFIG 0
+#define ASFCAPABILITY 1
+#define ASFCOMMULEN 0
+#define ASFHBPERIOD 0
+#define ASFWD16RST 0
+#define ASFCAPMASK 0
+#define ASFALERTRESND 0
+#define ASFLSNRPOLLCYC 0
+#define ASFSNRPOLLCYC 0
+#define ASFWD8RESET 0
+#define ASFRWHEXNUM 0
+
+#define FMW_CAP_MASK 0x0000F867
+#define SPC_CMD_MASK 0x1F00
+#define SYS_CAP_MASK 0xFF
+#define DISABLE_MASK 0x00
+
+#define MAX_DATA_LEN 200
+#define MAX_STR_LEN 200
+
+#define COMMU_STR_MAX_LEN 23
+
+#define KEY_LEN 20
+#define UUID_LEN 16
+#define SYSID_LEN 2
+
+#define RW_ONE_BYTE 1
+#define RW_TWO_BYTES 2
+#define RW_FOUR_BYTES 4
+
+enum asf_registers {
+ HBPeriod = 0x0000,
+ WD8Rst = 0x0002,
+ WD8Timer = 0x0003,
+ WD16Rst = 0x0004,
+ LSnsrPollCycle = 0x0006,
+ ASFSnsrPollPrd = 0x0007,
+ AlertReSendCnt = 0x0008,
+ AlertReSendItvl = 0x0009,
+ SMBAddr = 0x000A,
+ SMBCap = 0x000B,
+ ASFConfigR0 = 0x000C,
+ ASFConfigR1 = 0x000D,
+ WD16Timer = 0x000E,
+ ConsoleMA = 0x0010,
+ ConsoleIP = 0x0016,
+ IPAddr = 0x001A,
+
+ UUID = 0x0020,
+ IANA = 0x0030,
+ SysID = 0x0034,
+ Community = 0x0036,
+ StringLength = 0x004D,
+ LC = 0x004E,
+ EntityInst = 0x004F,
+ FmCapMsk = 0x0050,
+ SpCMDMsk = 0x0054,
+ SysCapMsk = 0x0056,
+ WDSysSt = 0x0057,
+ RxMsgType = 0x0058,
+ RxSpCMD = 0x0059,
+ RxSpCMDPa = 0x005A,
+ RxBtOpMsk = 0x005C,
+ RmtRstAddr = 0x005E,
+ RmtRstCmd = 0x005F,
+ RmtRstData = 0x0060,
+ RmtPwrOffAddr = 0x0061,
+ RmtPwrOffCmd = 0x0062,
+ RmtPwrOffData = 0x0063,
+ RmtPwrOnAddr = 0x0064,
+ RmtPwrOnCmd = 0x0065,
+ RmtPwrOnData = 0x0066,
+ RmtPCRAddr = 0x0067,
+ RmtPCRCmd = 0x0068,
+ RmtPCRData = 0x0069,
+ RMCP_IANA = 0x006A,
+ RMCP_OEM = 0x006E,
+ ASFSnsr0Addr = 0x0070,
+
+ ASFSnsrEvSt = 0x0073,
+ ASFSnsrEvAlert = 0x0081,
+
+ LSnsrNo = 0x00AD,
+ AssrtEvntMsk = 0x00AE,
+ DeAssrtEvntMsk = 0x00AF,
+
+ LSnsrAddr0 = 0x00B0,
+ LAlertCMD0 = 0x00B1,
+ LAlertDataMsk0 = 0x00B2,
+ LAlertCmp0 = 0x00B3,
+ LAlertESnsrT0 = 0x00B4,
+ LAlertET0 = 0x00B5,
+ LAlertEOffset0 = 0x00B6,
+ LAlertES0 = 0x00B7,
+ LAlertSN0 = 0x00B8,
+ LAlertEntity0 = 0x00B9,
+ LAlertEI0 = 0x00BA,
+ LSnsrState0 = 0x00BB,
+
+ LSnsrAddr1 = 0x00BD,
+ LAlertCMD1 = 0x00BE,
+ LAlertDataMsk1 = 0x00BF,
+ LAlertCmp1 = 0x00C0,
+ LAlertESnsrT1 = 0x00C1,
+ LAlertET1 = 0x00C2,
+ LAlertEOffset1 = 0x00C3,
+ LAlertES1 = 0x00C4,
+ LAlertSN1 = 0x00C5,
+ LAlertEntity1 = 0x00C6,
+ LAlertEI1 = 0x00C7,
+ LSnsrState1 = 0x00C8,
+
+ LSnsrAddr2 = 0x00CA,
+ LAlertCMD2 = 0x00CB,
+ LAlertDataMsk2 = 0x00CC,
+ LAlertCmp2 = 0x00CD,
+ LAlertESnsrT2 = 0x00CE,
+ LAlertET2 = 0x00CF,
+ LAlertEOffset2 = 0x00D0,
+ LAlertES2 = 0x00D1,
+ LAlertSN2 = 0x00D2,
+ LAlertEntity2 = 0x00D3,
+ LAlertEI2 = 0x00D4,
+ LSnsrState2 = 0x00D5,
+
+ LSnsrAddr3 = 0x00D7,
+ LAlertCMD3 = 0x00D8,
+ LAlertDataMsk3 = 0x00D9,
+ LAlertCmp3 = 0x00DA,
+ LAlertESnsrT3 = 0x00DB,
+ LAlertET3 = 0x00DC,
+ LAlertEOffset3 = 0x00DD,
+ LAlertES3 = 0x00DE,
+ LAlertSN3 = 0x00DF,
+ LAlertEntity3 = 0x00E0,
+ LAlertEI3 = 0x00E1,
+ LSnsrState3 = 0x00E2,
+
+ LSnsrAddr4 = 0x00E4,
+ LAlertCMD4 = 0x00E5,
+ LAlertDataMsk4 = 0x00E6,
+ LAlertCmp4 = 0x00E7,
+ LAlertESnsrT4 = 0x00E8,
+ LAlertET4 = 0x00E9,
+ LAlertEOffset4 = 0x00EA,
+ LAlertES4 = 0x00EB,
+ LAlertSN4 = 0x00EC,
+ LAlertEntity4 = 0x00ED,
+ LAlertEI4 = 0x00EE,
+ LSnsrState4 = 0x00EF,
+
+ LSnsrAddr5 = 0x00F1,
+ LAlertCMD5 = 0x00F2,
+ LAlertDataMsk5 = 0x00F3,
+ LAlertCmp5 = 0x00F4,
+ LAlertESnsrT5 = 0x00F5,
+ LAlertET5 = 0x00F6,
+ LAlertEOffset5 = 0x00F7,
+ LAlertES5 = 0x00F8,
+ LAlertSN5 = 0x00F9,
+ LAlertEntity5 = 0x00FA,
+ LAlertEI5 = 0x00FB,
+ LSnsrState5 = 0x00FC,
+
+ LSnsrAddr6 = 0x00FE,
+ LAlertCMD6 = 0x00FF,
+ LAlertDataMsk6 = 0x0100,
+ LAlertCmp6 = 0x0101,
+ LAlertESnsrT6 = 0x0102,
+ LAlertET6 = 0x0103,
+ LAlertEOffset6 = 0x0104,
+ LAlertES6 = 0x0105,
+ LAlertSN6 = 0x0106,
+ LAlertEntity6 = 0x0107,
+ LAlertEI6 = 0x0108,
+ LSnsrState6 = 0x0109,
+
+ LSnsrAddr7 = 0x010B,
+ LAlertCMD7 = 0x010C,
+ LAlertDataMsk7 = 0x010D,
+ LAlertCmp7 = 0x010E,
+ LAlertESnsrT7 = 0x010F,
+ LAlertET7 = 0x0110,
+ LAlertEOffset7 = 0x0111,
+ LAlertES7 = 0x0112,
+ LAlertSN7 = 0x0113,
+ LAlertEntity7 = 0x0114,
+ LAlertEI7 = 0x0115,
+ LSnsrState7 = 0x0116,
+ LAssert = 0x0117,
+ LDAssert = 0x0118,
+ IPServiceType = 0x0119,
+ IPIdfr = 0x011A,
+ FlagFOffset = 0x011C,
+ TTL = 0x011E,
+ HbtEI = 0x011F,
+ MgtConSID1 = 0x0120,
+ MgtConSID2 = 0x0124,
+ MgdCltSID = 0x0128,
+ StCd = 0x012C,
+ MgtConUR = 0x012D,
+ MgtConUNL = 0x012E,
+
+ AuthPd = 0x0130,
+ IntyPd = 0x0138,
+ MgtConRN = 0x0140,
+ MgdCtlRN = 0x0150,
+ MgtConUN = 0x0160,
+ Rakp2IntCk = 0x0170,
+ KO = 0x017C,
+ KA = 0x0190,
+ KG = 0x01A4,
+ KR = 0x01B8,
+ CP = 0x01CC,
+ CQ = 0x01D0,
+ KC = 0x01D4,
+ ConsoleSid = 0x01E8,
+
+ SIK1 = 0x01FC,
+ SIK2 = 0x0210,
+ Udpsrc_port = 0x0224,
+ Udpdes_port = 0x0226,
+ Asf_debug_mux = 0x0228
+};
+
+enum asf_cmdln_opt {
+ ASF_GET,
+ ASF_SET,
+ ASF_HELP
+};
+
+struct asf_ioctl_struct {
+ unsigned int arg;
+ unsigned int offset;
+ union {
+ unsigned int data[MAX_DATA_LEN];
+ char string[MAX_STR_LEN];
+ } u;
+};
+
+int rtl8168_asf_ioctl(struct net_device *dev, struct ifreq *ifr);
+void rtl8168_asf_hbperiod(void __iomem *ioaddr, int arg, unsigned int *data);
+void rtl8168_asf_wd16rst(void __iomem *ioaddr, int arg, unsigned int *data);
+void rtl8168_asf_console_mac(void __iomem *ioaddr, int arg, unsigned int *data);
+void rtl8168_asf_ip_address(void __iomem *ioaddr, int arg, int offset, unsigned int *data);
+void rtl8168_asf_config_regs(void __iomem *ioaddr, int arg, int offset, unsigned int *data);
+void rtl8168_asf_capability_masks(void __iomem *ioaddr, int arg, int offset, unsigned int *data);
+void rtl8168_asf_community_string(void __iomem *ioaddr, int arg, char *string);
+void rtl8168_asf_community_string_len(void __iomem *ioaddr, int arg, unsigned int *data);
+void rtl8168_asf_alert_resend_interval(void __iomem *ioaddr, int arg, unsigned int *data);
+void rtl8168_asf_time_period(void __iomem *ioaddr, int arg, int offset, unsigned int *data);
+void rtl8168_asf_key_access(void __iomem *ioaddr, int arg, int offset, unsigned int *data);
+void rtl8168_asf_rw_hexadecimal(void __iomem *ioaddr, int arg, int offset, int len, unsigned int *data);
+void rtl8168_asf_rw_iana(void __iomem *ioaddr, int arg, unsigned int *data);
+void rtl8168_asf_rw_uuid(void __iomem *ioaddr, int arg, unsigned int *data);
+void rtl8168_asf_rw_systemid(void __iomem *ioaddr, int arg, unsigned int *data);