blob: 7d3e3ef9f17fffc4299bda8a3b1f5451c493a832 [file] [log] [blame]
Forest Bond5449c682009-04-25 10:30:44 -04001/*
2 * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
3 * All rights reserved.
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 *
20 * File: srom.h
21 *
22 * Purpose: Implement functions to access eeprom
23 *
24 * Author: Jerry Chen
25 *
26 * Date: Jan 29, 2003
27 *
28 */
29
Forest Bond5449c682009-04-25 10:30:44 -040030#ifndef __SROM_H__
31#define __SROM_H__
32
Jim Lieb612822f2009-08-12 14:54:03 -070033/*--------------------- Export Definitions -------------------------*/
34
Forest Bond5449c682009-04-25 10:30:44 -040035#define EEP_MAX_CONTEXT_SIZE 256
36
37#define CB_EEPROM_READBYTE_WAIT 900 //us
38
39#define W_MAX_I2CRETRY 0x0fff
40
41//
42// Contents in the EEPROM
43//
Forest Bond5449c682009-04-25 10:30:44 -040044#define EEP_OFS_PAR 0x00 // physical address
45#define EEP_OFS_ANTENNA 0x16
46#define EEP_OFS_RADIOCTL 0x17
47#define EEP_OFS_RFTYPE 0x1B // for select RF
48#define EEP_OFS_MINCHANNEL 0x1C // Min Channel #
49#define EEP_OFS_MAXCHANNEL 0x1D // Max Channel #
50#define EEP_OFS_SIGNATURE 0x1E //
51#define EEP_OFS_ZONETYPE 0x1F //
52#define EEP_OFS_RFTABLE 0x20 // RF POWER TABLE
53#define EEP_OFS_PWR_CCK 0x20
54#define EEP_OFS_SETPT_CCK 0x21
55#define EEP_OFS_PWR_OFDMG 0x23
56#define EEP_OFS_SETPT_OFDMG 0x24
57#define EEP_OFS_PWR_FORMULA_OST 0x26 //
58#define EEP_OFS_MAJOR_VER 0x2E
59#define EEP_OFS_MINOR_VER 0x2F
60#define EEP_OFS_CCK_PWR_TBL 0x30
61#define EEP_OFS_CCK_PWR_dBm 0x3F
62#define EEP_OFS_OFDM_PWR_TBL 0x40
63#define EEP_OFS_OFDM_PWR_dBm 0x4F
64//{{ RobertYu: 20041124
65#define EEP_OFS_SETPT_OFDMA 0x4E
66#define EEP_OFS_OFDMA_PWR_TBL 0x50
67//}}
68#define EEP_OFS_OFDMA_PWR_dBm 0xD2
69
Forest Bond5449c682009-04-25 10:30:44 -040070//----------need to remove --------------------
71#define EEP_OFS_BBTAB_LEN 0x70 // BB Table Length
72#define EEP_OFS_BBTAB_ADR 0x71 // BB Table Offset
73#define EEP_OFS_CHECKSUM 0xFF // reserved area for baseband 28h ~ 78h
74
75#define EEP_I2C_DEV_ID 0x50 // EEPROM device address on the I2C bus
76
Forest Bond5449c682009-04-25 10:30:44 -040077//
78// Bits in EEP_OFS_ANTENNA
79//
80#define EEP_ANTENNA_MAIN 0x01
81#define EEP_ANTENNA_AUX 0x02
82#define EEP_ANTINV 0x04
83
84//
85// Bits in EEP_OFS_RADIOCTL
86//
87#define EEP_RADIOCTL_ENABLE 0x80
88#define EEP_RADIOCTL_INV 0x01
89
Forest Bond5449c682009-04-25 10:30:44 -040090/*--------------------- Export Types ------------------------------*/
91
Forest Bond5449c682009-04-25 10:30:44 -040092/*--------------------- Export Macros ------------------------------*/
93
94/*--------------------- Export Classes ----------------------------*/
95
96/*--------------------- Export Variables --------------------------*/
97
98/*--------------------- Export Functions --------------------------*/
Forest Bond5449c682009-04-25 10:30:44 -040099
Guillaume Clement16834402014-07-22 22:08:26 +0200100unsigned char SROMbyReadEmbedded(void __iomem *dwIoBase, unsigned char byContntOffset);
Forest Bond5449c682009-04-25 10:30:44 -0400101
Guillaume Clement16834402014-07-22 22:08:26 +0200102void SROMvReadAllContents(void __iomem *dwIoBase, unsigned char *pbyEepromRegs);
Forest Bond5449c682009-04-25 10:30:44 -0400103
Guillaume Clement16834402014-07-22 22:08:26 +0200104void SROMvReadEtherAddress(void __iomem *dwIoBase, unsigned char *pbyEtherAddress);
Forest Bond5449c682009-04-25 10:30:44 -0400105
Forest Bond5449c682009-04-25 10:30:44 -0400106#endif // __EEPROM_H__