16a5a645eSSepherosa Ziehau /****************************************************************************** 29c80d176SSepherosa Ziehau 3*01a55482SSepherosa Ziehau Copyright (c) 2001-2019, Intel Corporation 49c80d176SSepherosa Ziehau All rights reserved. 59c80d176SSepherosa Ziehau 69c80d176SSepherosa Ziehau Redistribution and use in source and binary forms, with or without 79c80d176SSepherosa Ziehau modification, are permitted provided that the following conditions are met: 89c80d176SSepherosa Ziehau 99c80d176SSepherosa Ziehau 1. Redistributions of source code must retain the above copyright notice, 109c80d176SSepherosa Ziehau this list of conditions and the following disclaimer. 119c80d176SSepherosa Ziehau 129c80d176SSepherosa Ziehau 2. Redistributions in binary form must reproduce the above copyright 139c80d176SSepherosa Ziehau notice, this list of conditions and the following disclaimer in the 149c80d176SSepherosa Ziehau documentation and/or other materials provided with the distribution. 159c80d176SSepherosa Ziehau 169c80d176SSepherosa Ziehau 3. Neither the name of the Intel Corporation nor the names of its 179c80d176SSepherosa Ziehau contributors may be used to endorse or promote products derived from 189c80d176SSepherosa Ziehau this software without specific prior written permission. 199c80d176SSepherosa Ziehau 209c80d176SSepherosa Ziehau THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 219c80d176SSepherosa Ziehau AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 229c80d176SSepherosa Ziehau IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 239c80d176SSepherosa Ziehau ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 249c80d176SSepherosa Ziehau LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 259c80d176SSepherosa Ziehau CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 269c80d176SSepherosa Ziehau SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 279c80d176SSepherosa Ziehau INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 289c80d176SSepherosa Ziehau CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 299c80d176SSepherosa Ziehau ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 309c80d176SSepherosa Ziehau POSSIBILITY OF SUCH DAMAGE. 319c80d176SSepherosa Ziehau 326a5a645eSSepherosa Ziehau ******************************************************************************/ 3374dc3754SSepherosa Ziehau /*$FreeBSD$*/ 349c80d176SSepherosa Ziehau 359c80d176SSepherosa Ziehau #ifndef _E1000_80003ES2LAN_H_ 369c80d176SSepherosa Ziehau #define _E1000_80003ES2LAN_H_ 379c80d176SSepherosa Ziehau 389c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_OFFSET_FIFO_CTRL 0x00 399c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_OFFSET_INB_CTRL 0x02 409c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_OFFSET_HD_CTRL 0x10 419c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_OFFSET_MAC2PHY_OPMODE 0x1F 429c80d176SSepherosa Ziehau 439c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_FIFO_CTRL_RX_BYPASS 0x0008 449c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_FIFO_CTRL_TX_BYPASS 0x0800 459c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_INB_CTRL_DIS_PADDING 0x0010 469c80d176SSepherosa Ziehau 479c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_HD_CTRL_10_100_DEFAULT 0x0004 489c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_HD_CTRL_1000_DEFAULT 0x0000 499c80d176SSepherosa Ziehau #define E1000_KMRNCTRLSTA_OPMODE_E_IDLE 0x2000 509c80d176SSepherosa Ziehau 516a5a645eSSepherosa Ziehau #define E1000_KMRNCTRLSTA_OPMODE_MASK 0x000C 526a5a645eSSepherosa Ziehau #define E1000_KMRNCTRLSTA_OPMODE_INBAND_MDIO 0x0004 536a5a645eSSepherosa Ziehau 544765c386SMichael Neumann #define E1000_TCTL_EXT_GCEX_MASK 0x000FFC00 /* Gig Carry Extend Padding */ 559c80d176SSepherosa Ziehau #define DEFAULT_TCTL_EXT_GCEX_80003ES2LAN 0x00010000 569c80d176SSepherosa Ziehau 579c80d176SSepherosa Ziehau #define DEFAULT_TIPG_IPGT_1000_80003ES2LAN 0x8 589c80d176SSepherosa Ziehau #define DEFAULT_TIPG_IPGT_10_100_80003ES2LAN 0x9 599c80d176SSepherosa Ziehau 609c80d176SSepherosa Ziehau /* GG82563 PHY Specific Status Register (Page 0, Register 16 */ 614765c386SMichael Neumann #define GG82563_PSCR_POLARITY_REVERSAL_DISABLE 0x0002 /* 1=Reversal Dis */ 629c80d176SSepherosa Ziehau #define GG82563_PSCR_CROSSOVER_MODE_MASK 0x0060 639c80d176SSepherosa Ziehau #define GG82563_PSCR_CROSSOVER_MODE_MDI 0x0000 /* 00=Manual MDI */ 649c80d176SSepherosa Ziehau #define GG82563_PSCR_CROSSOVER_MODE_MDIX 0x0020 /* 01=Manual MDIX */ 659c80d176SSepherosa Ziehau #define GG82563_PSCR_CROSSOVER_MODE_AUTO 0x0060 /* 11=Auto crossover */ 669c80d176SSepherosa Ziehau 679c80d176SSepherosa Ziehau /* PHY Specific Control Register 2 (Page 0, Register 26) */ 684765c386SMichael Neumann #define GG82563_PSCR2_REVERSE_AUTO_NEG 0x2000 /* 1=Reverse Auto-Neg */ 699c80d176SSepherosa Ziehau 709c80d176SSepherosa Ziehau /* MAC Specific Control Register (Page 2, Register 21) */ 719c80d176SSepherosa Ziehau /* Tx clock speed for Link Down and 1000BASE-T for the following speeds */ 729c80d176SSepherosa Ziehau #define GG82563_MSCR_TX_CLK_MASK 0x0007 739c80d176SSepherosa Ziehau #define GG82563_MSCR_TX_CLK_10MBPS_2_5 0x0004 749c80d176SSepherosa Ziehau #define GG82563_MSCR_TX_CLK_100MBPS_25 0x0005 759c80d176SSepherosa Ziehau #define GG82563_MSCR_TX_CLK_1000MBPS_25 0x0007 769c80d176SSepherosa Ziehau 779c80d176SSepherosa Ziehau #define GG82563_MSCR_ASSERT_CRS_ON_TX 0x0010 /* 1=Assert */ 789c80d176SSepherosa Ziehau 79379ebbe7SSepherosa Ziehau /* DSP Distance Register (Page 5, Register 26) 809c80d176SSepherosa Ziehau * 0 = <50M 819c80d176SSepherosa Ziehau * 1 = 50-80M 829c80d176SSepherosa Ziehau * 2 = 80-100M 839c80d176SSepherosa Ziehau * 3 = 110-140M 849c80d176SSepherosa Ziehau * 4 = >140M 859c80d176SSepherosa Ziehau */ 869c80d176SSepherosa Ziehau #define GG82563_DSPD_CABLE_LENGTH 0x0007 879c80d176SSepherosa Ziehau 889c80d176SSepherosa Ziehau /* Kumeran Mode Control Register (Page 193, Register 16) */ 899c80d176SSepherosa Ziehau #define GG82563_KMCR_PASS_FALSE_CARRIER 0x0800 909c80d176SSepherosa Ziehau 919c80d176SSepherosa Ziehau /* Max number of times Kumeran read/write should be validated */ 929c80d176SSepherosa Ziehau #define GG82563_MAX_KMRN_RETRY 0x5 939c80d176SSepherosa Ziehau 949c80d176SSepherosa Ziehau /* Power Management Control Register (Page 193, Register 20) */ 959c80d176SSepherosa Ziehau /* 1=Enable SERDES Electrical Idle */ 964be59a01SSepherosa Ziehau #define GG82563_PMCR_ENABLE_ELECTRICAL_IDLE 0x0001 979c80d176SSepherosa Ziehau 989c80d176SSepherosa Ziehau /* In-Band Control Register (Page 194, Register 18) */ 999c80d176SSepherosa Ziehau #define GG82563_ICR_DIS_PADDING 0x0010 /* Disable Padding */ 1009c80d176SSepherosa Ziehau 1019c80d176SSepherosa Ziehau #endif 102