/** @file * * Copyright (c) 2018, Hisilicon Limited. All rights reserved. * Copyright (c) 2018, Linaro Limited. All rights reserved. * * SPDX-License-Identifier: BSD-2-Clause-Patent * **/ #ifndef _OEM_NIC_LIB_H_ #define _OEM_NIC_LIB_H_ #define ETH_MAX_PORT 8 #define ETH_DEBUG_PORT0 6 #define ETH_DEBUG_PORT1 7 #define ETH_SPEED_10M 6 #define ETH_SPEED_100M 7 #define ETH_SPEED_1000M 8 #define ETH_SPEED_10KM 9 #define ETH_HALF_DUPLEX 0 #define ETH_FULL_DUPLEX 1 #define ETH_GDD_ID 0x001378e0 #define ETH_PHY_BCM5241_ID 0x0143bc30 #define ETH_PHY_MVL88E1145_ID 0x01410cd0 #define ETH_PHY_MVL88E1119_ID 0x01410e80 #define ETH_PHY_MVL88E1512_ID 0x01410dd0 #define ETH_PHY_MVL88E1543_ID 0x01410ea0 #define ETH_PHY_NLP3142_ID 0x00000412 #define ETH_INVALID 0xffffffff typedef struct { UINT32 Valid; UINT32 Speed; UINT32 Duplex; UINT32 PhyId; UINT32 PhyAddr; } ETH_PRODUCT_DESC; BOOLEAN OemIsInitEth (UINT32 Port); UINT32 OemEthFindFirstSP (); ETH_PRODUCT_DESC *OemEthInit (UINT32 port); UINT32 GetCpu1FiberType (UINT8 *Fiber1Type, UINT8 *Fiber2Type); UINT32 GetCpu2FiberType (UINT8 *Fiber1Type, UINT8 *Fiber2Type, UINT8 *Fiber100Ge); EFI_STATUS EFIAPI OemGetMac (IN OUT EFI_MAC_ADDRESS *Mac, IN UINTN Port); EFI_STATUS EFIAPI OemSetMac (IN EFI_MAC_ADDRESS *Mac, IN UINTN Port); #endif