File:  [ELWIX - Embedded LightWeight unIX -] / embedtools / inc / athctl.h
Revision 1.4: download - view: text, annotated - select for diffs - revision graph
Wed Feb 5 15:44:05 2014 UTC (10 years, 4 months ago) by misho
Branches: MAIN
CVS tags: tools3_0, tools2_9, tools2_8, tools2_7, tools2_6, tools2_5, tools2_4, tools2_3, tools2_2, tools2_1, TOOLS2_9, TOOLS2_8, TOOLS2_7, TOOLS2_6, TOOLS2_5, TOOLS2_4, TOOLS2_3, TOOLS2_2, TOOLS2_1, TOOLS2_0, HEAD
version 2.0

    1: /*************************************************************************
    2:  * (C) 2010 AITNET - Sofia/Bulgaria - <office@aitbg.com>
    3:  *  by Michael Pounov <misho@aitbg.com>
    4:  *
    5:  * $Author: misho $
    6:  * $Id: athctl.h,v 1.4 2014/02/05 15:44:05 misho Exp $
    7:  *
    8: **************************************************************************
    9: The ELWIX and AITNET software is distributed under the following
   10: terms:
   11: 
   12: All of the documentation and software included in the ELWIX and AITNET
   13: Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   14: 
   15: Copyright 2004 - 2014
   16: 	by Michael Pounov <misho@elwix.org>.  All rights reserved.
   17: 
   18: Redistribution and use in source and binary forms, with or without
   19: modification, are permitted provided that the following conditions
   20: are met:
   21: 1. Redistributions of source code must retain the above copyright
   22:    notice, this list of conditions and the following disclaimer.
   23: 2. Redistributions in binary form must reproduce the above copyright
   24:    notice, this list of conditions and the following disclaimer in the
   25:    documentation and/or other materials provided with the distribution.
   26: 3. All advertising materials mentioning features or use of this software
   27:    must display the following acknowledgement:
   28: This product includes software developed by Michael Pounov <misho@elwix.org>
   29: ELWIX - Embedded LightWeight unIX and its contributors.
   30: 4. Neither the name of AITNET nor the names of its contributors
   31:    may be used to endorse or promote products derived from this software
   32:    without specific prior written permission.
   33: 
   34: THIS SOFTWARE IS PROVIDED BY AITNET AND CONTRIBUTORS ``AS IS'' AND
   35: ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   36: IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   37: ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   38: FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   39: DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   40: OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   41: HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   42: LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   43: OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   44: SUCH DAMAGE.
   45: */
   46: #ifndef __ATHCTL_H
   47: #define __ATHCTL_H
   48: 
   49: 
   50: #define SC_SLOTTIME			"dev.ath.%d.slottime"
   51: #define SC_ACKTIMEOUT			"dev.ath.%d.acktimeout"
   52: #define SC_CTSTIMEOUT			"dev.ath.%d.ctstimeout"
   53: 
   54: 
   55: #define AR5K_PCICFG			0x4010 
   56: #define AR5K_PCICFG_EEAE		0x00000001 
   57: #define AR5K_PCICFG_CLKRUNEN		0x00000004 
   58: #define AR5K_PCICFG_LED_PEND		0x00000020 
   59: #define AR5K_PCICFG_LED_ACT		0x00000040 
   60: #define AR5K_PCICFG_SL_INTEN		0x00000800 
   61: #define AR5K_PCICFG_BCTL		0x00001000 
   62: #define AR5K_PCICFG_SPWR_DN		0x00010000 
   63:  
   64: /* EEPROM Registers in the MAC */
   65: #define AR5211_EEPROM_ADDR		0x6000 
   66: #define AR5211_EEPROM_DATA		0x6004
   67: #define AR5211_EEPROM_COMD		0x6008
   68: #define AR5211_EEPROM_COMD_READ		0x0001
   69: #define AR5211_EEPROM_COMD_WRITE	0x0002
   70: #define AR5211_EEPROM_COMD_RESET	0x0003
   71: #define AR5211_EEPROM_STATUS		0x600C
   72: #define AR5211_EEPROM_STAT_RDERR	0x0001
   73: #define AR5211_EEPROM_STAT_RDDONE	0x0002
   74: #define AR5211_EEPROM_STAT_WRERR	0x0003
   75: #define AR5211_EEPROM_STAT_WRDONE	0x0004
   76: #define AR5211_EEPROM_CONF		0x6010
   77: 
   78: 
   79: #define ATH_PCI_MEM_SIZE		0x10000
   80: #define ATH_EEPROM_SIZE			0x800
   81: 
   82: #define ATH_ACCESS_TIMEOUT		10000
   83: #define ATH_ACCESS_WAIT			5
   84: #define ATH_ACCESS_WAITDOWN		500
   85: #define ATH_ACCESS_WAITPCI		50
   86: #define ATH_WRITE_RETRY			100
   87: 
   88: #define ATH_OFFSET_REGDOMAIN		0xBF
   89: 
   90: 
   91: #define ATH_IN(__mbase, x)		(*((volatile unsigned long*)((__mbase) + (x))))
   92: #define ATH_OUT(__mbase, x, v)		(*((volatile unsigned long*)((__mbase) + (x))) = (v))
   93: 
   94: 
   95: 
   96: #endif

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>