1217618Sadrian/*
2217618Sadrian * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting
3217618Sadrian * Copyright (c) 2002-2008 Atheros Communications, Inc.
4217618Sadrian *
5217618Sadrian * Permission to use, copy, modify, and/or distribute this software for any
6217618Sadrian * purpose with or without fee is hereby granted, provided that the above
7217618Sadrian * copyright notice and this permission notice appear in all copies.
8217618Sadrian *
9217618Sadrian * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10217618Sadrian * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11217618Sadrian * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12217618Sadrian * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13217618Sadrian * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14217618Sadrian * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15217618Sadrian * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16217618Sadrian *
17217618Sadrian * $FreeBSD$
18217618Sadrian */
19217618Sadrian#ifndef _ATH_AH_DIAGCODES_H_
20217618Sadrian#define _ATH_AH_DIAGCODES_H_
21217618Sadrian/*
22217618Sadrian * Atheros Device Hardware Access Layer (HAL).
23217618Sadrian *
24217618Sadrian * Internal diagnostic API definitions.
25217618Sadrian */
26217618Sadrian
27217618Sadrian/*
28217618Sadrian * Diagnostic interface.  This is an open-ended interface that
29217618Sadrian * is opaque to applications.  Diagnostic programs use this to
30217618Sadrian * retrieve internal data structures, etc.  There is no guarantee
31217618Sadrian * that calling conventions for calls other than HAL_DIAG_REVS
32217618Sadrian * are stable between HAL releases; a diagnostic application must
33217618Sadrian * use the HAL revision information to deal with ABI/API differences.
34217618Sadrian *
35217618Sadrian * NB: do not renumber these, certain codes are publicly used.
36217618Sadrian */
37217618Sadrianenum {
38217618Sadrian	HAL_DIAG_REVS		= 0,	/* MAC/PHY/Radio revs */
39217618Sadrian	HAL_DIAG_EEPROM		= 1,	/* EEPROM contents */
40217618Sadrian	HAL_DIAG_EEPROM_EXP_11A	= 2,	/* EEPROM 5112 power exp for 11a */
41217618Sadrian	HAL_DIAG_EEPROM_EXP_11B	= 3,	/* EEPROM 5112 power exp for 11b */
42217618Sadrian	HAL_DIAG_EEPROM_EXP_11G	= 4,	/* EEPROM 5112 power exp for 11g */
43217618Sadrian	HAL_DIAG_ANI_CURRENT	= 5,	/* ANI current channel state */
44217618Sadrian	HAL_DIAG_ANI_OFDM	= 6,	/* ANI OFDM timing error stats */
45217618Sadrian	HAL_DIAG_ANI_CCK	= 7,	/* ANI CCK timing error stats */
46217618Sadrian	HAL_DIAG_ANI_STATS	= 8,	/* ANI statistics */
47217618Sadrian	HAL_DIAG_RFGAIN		= 9,	/* RfGain GAIN_VALUES */
48217618Sadrian	HAL_DIAG_RFGAIN_CURSTEP	= 10,	/* RfGain GAIN_OPTIMIZATION_STEP */
49217618Sadrian	HAL_DIAG_PCDAC		= 11,	/* PCDAC table */
50217618Sadrian	HAL_DIAG_TXRATES	= 12,	/* Transmit rate table */
51217618Sadrian	HAL_DIAG_REGS		= 13,	/* Registers */
52217618Sadrian	HAL_DIAG_ANI_CMD	= 14,	/* ANI issue command (XXX do not change!) */
53217618Sadrian	HAL_DIAG_SETKEY		= 15,	/* Set keycache backdoor */
54217618Sadrian	HAL_DIAG_RESETKEY	= 16,	/* Reset keycache backdoor */
55217618Sadrian	HAL_DIAG_EEREAD		= 17,	/* Read EEPROM word */
56217618Sadrian	HAL_DIAG_EEWRITE	= 18,	/* Write EEPROM word */
57217618Sadrian	/* 19-26 removed, do not reuse */
58217618Sadrian	HAL_DIAG_RDWRITE	= 27,	/* Write regulatory domain */
59217618Sadrian	HAL_DIAG_RDREAD		= 28,	/* Get regulatory domain */
60217618Sadrian	HAL_DIAG_FATALERR	= 29,	/* Read cached interrupt state */
61217618Sadrian	HAL_DIAG_11NCOMPAT	= 30,	/* 11n compatibility tweaks */
62217618Sadrian	HAL_DIAG_ANI_PARAMS	= 31,	/* ANI noise immunity parameters */
63217618Sadrian	HAL_DIAG_CHECK_HANGS	= 32,	/* check h/w hangs */
64217618Sadrian	HAL_DIAG_SETREGS	= 33,	/* write registers */
65219772Sadrian	HAL_DIAG_CHANSURVEY	= 34,	/* channel survey */
66239629Sadrian	HAL_DIAG_PRINT_REG	= 35,
67239629Sadrian	HAL_DIAG_PRINT_REG_ALL	= 36,
68239629Sadrian	HAL_DIAG_CHANNELS	= 37,
69239629Sadrian	HAL_DIAG_PRINT_REG_COUNTER	= 38,
70217618Sadrian};
71217618Sadrian
72217618Sadrian#endif /* _ATH_AH_DIAGCODES_H_ */
73