/* * Copyright (c) 2010, Atheros Communications Inc. * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ #ifndef _AR8021_PHY_H #define _AR8021_PHY_H #define BOOL int #define TRUE (1==1) #define FALSE (1==0) int ar8021_phy_is_up(int unit); int ar8021_phy_is_fdx(int unit,int phyUnit); int ar8021_phy_speed(int unit,int phyUnit); BOOL ar8021_phy_setup(void *arg); BOOL ar8021_phy_is_link_alive(int phyUnit); int ar8021_register_ops(void *arg); /* Phy Specific status fields */ #define ATHER_STATUS_LINK_MASK 0xC000 #define ATHER_STATUS_LINK_SHIFT 14 #define ATHER_STATUS_FULL_DEPLEX 0x2000 #define ATHR_STATUS_LINK_PASS 0x0400 #define ATHR_LATCH_LINK_PASS 0x0004 /* Advertisement register. */ #define ATHR_ADVERTISE_NEXT_PAGE 0x8000 #define ATHR_ADVERTISE_ASYM_PAUSE 0x0800 #define ATHR_ADVERTISE_PAUSE 0x0400 #define ATHR_ADVERTISE_100FULL 0x0100 #define ATHR_ADVERTISE_100HALF 0x0080 #define ATHR_ADVERTISE_10FULL 0x0040 #define ATHR_ADVERTISE_10HALF 0x0020 #define ATHR_ADVERTISE_ALL (ATHR_ADVERTISE_ASYM_PAUSE | ATHR_ADVERTISE_PAUSE | \ ATHR_ADVERTISE_10HALF | ATHR_ADVERTISE_10FULL | \ ATHR_ADVERTISE_100HALF | ATHR_ADVERTISE_100FULL) /* * Atheros header defines */ #ifndef _ATH_HEADER_CONF #define _ATH_HEADER_CONF #define ATHR_HEADER_LEN 2 typedef enum { NORMAL_PACKET, RESERVED0, MIB_1ST, RESERVED1, RESERVED2, READ_WRITE_REG, READ_WRITE_REG_ACK, RESERVED3 } AT_HEADER_TYPE; #endif // _ATH_HEADER_CONF #endif