1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright (c) 2015 - 2022 Beijing WangXun Technology Co., Ltd. */ 3 4 #ifndef _TXGBE_TYPE_H_ 5 #define _TXGBE_TYPE_H_ 6 7 /* Device IDs */ 8 #define TXGBE_DEV_ID_SP1000 0x1001 9 #define TXGBE_DEV_ID_WX1820 0x2001 10 11 /* Subsystem IDs */ 12 /* SFP */ 13 #define TXGBE_ID_SP1000_SFP 0x0000 14 #define TXGBE_ID_WX1820_SFP 0x2000 15 #define TXGBE_ID_SFP 0x00 16 17 /* copper */ 18 #define TXGBE_ID_SP1000_XAUI 0x1010 19 #define TXGBE_ID_WX1820_XAUI 0x2010 20 #define TXGBE_ID_XAUI 0x10 21 #define TXGBE_ID_SP1000_SGMII 0x1020 22 #define TXGBE_ID_WX1820_SGMII 0x2020 23 #define TXGBE_ID_SGMII 0x20 24 /* backplane */ 25 #define TXGBE_ID_SP1000_KR_KX_KX4 0x1030 26 #define TXGBE_ID_WX1820_KR_KX_KX4 0x2030 27 #define TXGBE_ID_KR_KX_KX4 0x30 28 /* MAC Interface */ 29 #define TXGBE_ID_SP1000_MAC_XAUI 0x1040 30 #define TXGBE_ID_WX1820_MAC_XAUI 0x2040 31 #define TXGBE_ID_MAC_XAUI 0x40 32 #define TXGBE_ID_SP1000_MAC_SGMII 0x1060 33 #define TXGBE_ID_WX1820_MAC_SGMII 0x2060 34 #define TXGBE_ID_MAC_SGMII 0x60 35 36 /* Combined interface*/ 37 #define TXGBE_ID_SFI_XAUI 0x50 38 39 /* Revision ID */ 40 #define TXGBE_SP_MPW 1 41 42 /**************** SP Registers ****************************/ 43 /* chip control Registers */ 44 #define TXGBE_MIS_PRB_CTL 0x10010 45 #define TXGBE_MIS_PRB_CTL_LAN_UP(_i) BIT(1 - (_i)) 46 /* FMGR Registers */ 47 #define TXGBE_SPI_ILDR_STATUS 0x10120 48 #define TXGBE_SPI_ILDR_STATUS_PERST BIT(0) /* PCIE_PERST is done */ 49 #define TXGBE_SPI_ILDR_STATUS_PWRRST BIT(1) /* Power on reset is done */ 50 #define TXGBE_SPI_ILDR_STATUS_LAN_SW_RST(_i) BIT((_i) + 9) /* lan soft reset done */ 51 52 /* Sensors for PVT(Process Voltage Temperature) */ 53 #define TXGBE_TS_CTL 0x10300 54 #define TXGBE_TS_CTL_EVAL_MD BIT(31) 55 56 /* Part Number String Length */ 57 #define TXGBE_PBANUM_LENGTH 32 58 59 /* Checksum and EEPROM pointers */ 60 #define TXGBE_EEPROM_LAST_WORD 0x800 61 #define TXGBE_EEPROM_CHECKSUM 0x2F 62 #define TXGBE_EEPROM_SUM 0xBABA 63 #define TXGBE_EEPROM_VERSION_L 0x1D 64 #define TXGBE_EEPROM_VERSION_H 0x1E 65 #define TXGBE_ISCSI_BOOT_CONFIG 0x07 66 #define TXGBE_PBANUM0_PTR 0x05 67 #define TXGBE_PBANUM1_PTR 0x06 68 #define TXGBE_PBANUM_PTR_GUARD 0xFAFA 69 70 struct txgbe_hw { 71 struct wx_hw wxhw; 72 }; 73 74 #endif /* _TXGBE_TYPE_H_ */ 75