~ubuntu-branches/ubuntu/trusty/linux-linaro-omap/trusty

« back to all changes in this revision

Viewing changes to drivers/staging/rt2860/common/eeprom.c

  • Committer: Package Import Robot
  • Author(s): John Rigby, John Rigby
  • Date: 2011-09-26 10:44:23 UTC
  • Revision ID: package-import@ubuntu.com-20110926104423-57i0gl3v99b3lkfg
Tags: 3.0.0-1007.9
[ John Rigby ]

Enable crypto modules and remove crypto-modules from
exclude-module files
LP: #826021

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 *************************************************************************
3
 
 * Ralink Tech Inc.
4
 
 * 5F., No.36, Taiyuan St., Jhubei City,
5
 
 * Hsinchu County 302,
6
 
 * Taiwan, R.O.C.
7
 
 *
8
 
 * (c) Copyright 2002-2007, Ralink Technology, Inc.
9
 
 *
10
 
 * This program is free software; you can redistribute it and/or modify  *
11
 
 * it under the terms of the GNU General Public License as published by  *
12
 
 * the Free Software Foundation; either version 2 of the License, or     *
13
 
 * (at your option) any later version.                                   *
14
 
 *                                                                       *
15
 
 * This program is distributed in the hope that it will be useful,       *
16
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of        *
17
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
18
 
 * GNU General Public License for more details.                          *
19
 
 *                                                                       *
20
 
 * You should have received a copy of the GNU General Public License     *
21
 
 * along with this program; if not, write to the                         *
22
 
 * Free Software Foundation, Inc.,                                       *
23
 
 * 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
24
 
 *                                                                       *
25
 
 *************************************************************************
26
 
 
27
 
        Module Name:
28
 
        eeprom.c
29
 
 
30
 
        Abstract:
31
 
 
32
 
        Revision History:
33
 
        Who                     When                    What
34
 
        --------        ----------              ----------------------------------------------
35
 
        Name            Date                    Modification logs
36
 
*/
37
 
#include "../rt_config.h"
38
 
 
39
 
int RtmpChipOpsEepromHook(struct rt_rtmp_adapter *pAd, int infType)
40
 
{
41
 
        struct rt_rtmp_chip_op *pChipOps = &pAd->chipOps;
42
 
#ifdef RT30xx
43
 
#ifdef RTMP_EFUSE_SUPPORT
44
 
        u32 eFuseCtrl, MacCsr0;
45
 
        int index;
46
 
 
47
 
        index = 0;
48
 
        do {
49
 
                RTMP_IO_READ32(pAd, MAC_CSR0, &MacCsr0);
50
 
                pAd->MACVersion = MacCsr0;
51
 
 
52
 
                if ((pAd->MACVersion != 0x00)
53
 
                    && (pAd->MACVersion != 0xFFFFFFFF))
54
 
                        break;
55
 
 
56
 
                RTMPusecDelay(10);
57
 
        } while (index++ < 100);
58
 
 
59
 
        pAd->bUseEfuse = FALSE;
60
 
        RTMP_IO_READ32(pAd, EFUSE_CTRL, &eFuseCtrl);
61
 
        pAd->bUseEfuse = ((eFuseCtrl & 0x80000000) == 0x80000000) ? 1 : 0;
62
 
        if (pAd->bUseEfuse) {
63
 
                pChipOps->eeinit = eFuse_init;
64
 
                pChipOps->eeread = rtmp_ee_efuse_read16;
65
 
                return 0;
66
 
        } else
67
 
                DBGPRINT(RT_DEBUG_TRACE, ("NVM is EEPROM\n"));
68
 
#endif /* RTMP_EFUSE_SUPPORT // */
69
 
#endif /* RT30xx // */
70
 
 
71
 
        switch (infType) {
72
 
#ifdef RTMP_PCI_SUPPORT
73
 
        case RTMP_DEV_INF_PCI:
74
 
                pChipOps->eeinit = NULL;
75
 
                pChipOps->eeread = rtmp_ee_prom_read16;
76
 
                break;
77
 
#endif /* RTMP_PCI_SUPPORT // */
78
 
#ifdef RTMP_USB_SUPPORT
79
 
        case RTMP_DEV_INF_USB:
80
 
                pChipOps->eeinit = NULL;
81
 
                pChipOps->eeread = RTUSBReadEEPROM16;
82
 
                break;
83
 
#endif /* RTMP_USB_SUPPORT // */
84
 
 
85
 
        default:
86
 
                DBGPRINT(RT_DEBUG_ERROR, ("RtmpChipOpsEepromHook() failed!\n"));
87
 
                break;
88
 
        }
89
 
 
90
 
        return 0;
91
 
}