--- embedtools/inc/athctl.h 2010/10/23 01:50:49 1.1 +++ embedtools/inc/athctl.h 2011/06/08 12:45:40 1.2 @@ -0,0 +1,59 @@ +/************************************************************************* + * (C) 2010 AITNET - Sofia/Bulgaria - + * by Michael Pounov + * + * $Author: misho $ + * $Id: athctl.h,v 1.2 2011/06/08 12:45:40 misho Exp $ + * + *************************************************************************/ +#ifndef __ATHCTL_H +#define __ATHCTL_H + + +#define SC_SLOTTIME "dev.ath.%d.slottime" +#define SC_ACKTIMEOUT "dev.ath.%d.acktimeout" +#define SC_CTSTIMEOUT "dev.ath.%d.ctstimeout" + + +#define AR5K_PCICFG 0x4010 +#define AR5K_PCICFG_EEAE 0x00000001 +#define AR5K_PCICFG_CLKRUNEN 0x00000004 +#define AR5K_PCICFG_LED_PEND 0x00000020 +#define AR5K_PCICFG_LED_ACT 0x00000040 +#define AR5K_PCICFG_SL_INTEN 0x00000800 +#define AR5K_PCICFG_BCTL 0x00001000 +#define AR5K_PCICFG_SPWR_DN 0x00010000 + +/* EEPROM Registers in the MAC */ +#define AR5211_EEPROM_ADDR 0x6000 +#define AR5211_EEPROM_DATA 0x6004 +#define AR5211_EEPROM_COMD 0x6008 +#define AR5211_EEPROM_COMD_READ 0x0001 +#define AR5211_EEPROM_COMD_WRITE 0x0002 +#define AR5211_EEPROM_COMD_RESET 0x0003 +#define AR5211_EEPROM_STATUS 0x600C +#define AR5211_EEPROM_STAT_RDERR 0x0001 +#define AR5211_EEPROM_STAT_RDDONE 0x0002 +#define AR5211_EEPROM_STAT_WRERR 0x0003 +#define AR5211_EEPROM_STAT_WRDONE 0x0004 +#define AR5211_EEPROM_CONF 0x6010 + + +#define ATH_PCI_MEM_SIZE 0x10000 +#define ATH_EEPROM_SIZE 0x800 + +#define ATH_ACCESS_TIMEOUT 10000 +#define ATH_ACCESS_WAIT 5 +#define ATH_ACCESS_WAITDOWN 500 +#define ATH_ACCESS_WAITPCI 50 +#define ATH_WRITE_RETRY 100 + +#define ATH_OFFSET_REGDOMAIN 0xBF + + +#define ATH_IN(__mbase, x) (*((volatile unsigned long*)((__mbase) + (x)))) +#define ATH_OUT(__mbase, x, v) (*((volatile unsigned long*)((__mbase) + (x))) = (v)) + + + +#endif