ah_diagcodes.h revision 219772
141120Sjdp/*
2103976Spst * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting
341120Sjdp * Copyright (c) 2002-2008 Atheros Communications, Inc.
441120Sjdp *
541120Sjdp * Permission to use, copy, modify, and/or distribute this software for any
641120Sjdp * purpose with or without fee is hereby granted, provided that the above
741120Sjdp * copyright notice and this permission notice appear in all copies.
841120Sjdp *
941120Sjdp * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1041120Sjdp * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1141120Sjdp * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1241120Sjdp * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1341120Sjdp * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1441120Sjdp * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
1541120Sjdp * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1641120Sjdp *
1741120Sjdp * $FreeBSD: head/sys/dev/ath/ath_hal/ah_diagcodes.h 219772 2011-03-19 14:37:13Z adrian $
1841120Sjdp */
1941120Sjdp#ifndef _ATH_AH_DIAGCODES_H_
2041120Sjdp#define _ATH_AH_DIAGCODES_H_
2141120Sjdp/*
2241120Sjdp * Atheros Device Hardware Access Layer (HAL).
2341120Sjdp *
2441120Sjdp * Internal diagnostic API definitions.
2541120Sjdp */
2641120Sjdp
2741120Sjdp/*
2841120Sjdp * Diagnostic interface.  This is an open-ended interface that
2941120Sjdp * is opaque to applications.  Diagnostic programs use this to
3041120Sjdp * retrieve internal data structures, etc.  There is no guarantee
3141120Sjdp * that calling conventions for calls other than HAL_DIAG_REVS
3241120Sjdp * are stable between HAL releases; a diagnostic application must
3341120Sjdp * use the HAL revision information to deal with ABI/API differences.
3441120Sjdp *
3541120Sjdp * NB: do not renumber these, certain codes are publicly used.
3641120Sjdp */
3741120Sjdpenum {
3841120Sjdp	HAL_DIAG_REVS		= 0,	/* MAC/PHY/Radio revs */
3941120Sjdp	HAL_DIAG_EEPROM		= 1,	/* EEPROM contents */
4041120Sjdp	HAL_DIAG_EEPROM_EXP_11A	= 2,	/* EEPROM 5112 power exp for 11a */
4141120Sjdp	HAL_DIAG_EEPROM_EXP_11B	= 3,	/* EEPROM 5112 power exp for 11b */
4241120Sjdp	HAL_DIAG_EEPROM_EXP_11G	= 4,	/* EEPROM 5112 power exp for 11g */
4341120Sjdp	HAL_DIAG_ANI_CURRENT	= 5,	/* ANI current channel state */
44103976Spst	HAL_DIAG_ANI_OFDM	= 6,	/* ANI OFDM timing error stats */
4541120Sjdp	HAL_DIAG_ANI_CCK	= 7,	/* ANI CCK timing error stats */
4641120Sjdp	HAL_DIAG_ANI_STATS	= 8,	/* ANI statistics */
4741120Sjdp	HAL_DIAG_RFGAIN		= 9,	/* RfGain GAIN_VALUES */
4841120Sjdp	HAL_DIAG_RFGAIN_CURSTEP	= 10,	/* RfGain GAIN_OPTIMIZATION_STEP */
4941120Sjdp	HAL_DIAG_PCDAC		= 11,	/* PCDAC table */
5041120Sjdp	HAL_DIAG_TXRATES	= 12,	/* Transmit rate table */
5141120Sjdp	HAL_DIAG_REGS		= 13,	/* Registers */
5241120Sjdp	HAL_DIAG_ANI_CMD	= 14,	/* ANI issue command (XXX do not change!) */
5341120Sjdp	HAL_DIAG_SETKEY		= 15,	/* Set keycache backdoor */
5441120Sjdp	HAL_DIAG_RESETKEY	= 16,	/* Reset keycache backdoor */
5541120Sjdp	HAL_DIAG_EEREAD		= 17,	/* Read EEPROM word */
5641120Sjdp	HAL_DIAG_EEWRITE	= 18,	/* Write EEPROM word */
5741120Sjdp	/* 19-26 removed, do not reuse */
5841120Sjdp	HAL_DIAG_RDWRITE	= 27,	/* Write regulatory domain */
5941120Sjdp	HAL_DIAG_RDREAD		= 28,	/* Get regulatory domain */
6041120Sjdp	HAL_DIAG_FATALERR	= 29,	/* Read cached interrupt state */
6141120Sjdp	HAL_DIAG_11NCOMPAT	= 30,	/* 11n compatibility tweaks */
6241120Sjdp	HAL_DIAG_ANI_PARAMS	= 31,	/* ANI noise immunity parameters */
6341120Sjdp	HAL_DIAG_CHECK_HANGS	= 32,	/* check h/w hangs */
6441120Sjdp	HAL_DIAG_SETREGS	= 33,	/* write registers */
6541120Sjdp	HAL_DIAG_CHANSURVEY	= 34,	/* channel survey */
6641120Sjdp};
6741120Sjdp
6841120Sjdp#endif /* _ATH_AH_DIAGCODES_H_ */
6941120Sjdp