Deleted Added
full compact
ar9160_attach.c (188973) ar9160_attach.c (188979)
1/*
2 * Copyright (c) 2008 Sam Leffler, Errno Consulting
3 * Copyright (c) 2008 Atheros Communications, Inc.
4 *
5 * Permission to use, copy, modify, and/or distribute this software for any
6 * purpose with or without fee is hereby granted, provided that the above
7 * copyright notice and this permission notice appear in all copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 *
1/*
2 * Copyright (c) 2008 Sam Leffler, Errno Consulting
3 * Copyright (c) 2008 Atheros Communications, Inc.
4 *
5 * Permission to use, copy, modify, and/or distribute this software for any
6 * purpose with or without fee is hereby granted, provided that the above
7 * copyright notice and this permission notice appear in all copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 *
17 * $FreeBSD: head/sys/dev/ath/ath_hal/ar5416/ar9160_attach.c 188973 2009-02-24 00:03:14Z sam $
17 * $FreeBSD: head/sys/dev/ath/ath_hal/ar5416/ar9160_attach.c 188979 2009-02-24 01:07:06Z sam $
18 */
19#include "opt_ah.h"
20
21#include "ah.h"
22#include "ah_internal.h"
23#include "ah_devid.h"
24
25#include "ar5416/ar5416.h"

--- 117 unchanged lines hidden (view full) ---

143 HALDEBUG(ah, HAL_DEBUG_ATTACH,
144 "%s: ID 0x%x VERSION 0x%x TYPE 0x%x REVISION 0x%x\n",
145 __func__, MS(val, AR_XSREV_ID), MS(val, AR_XSREV_VERSION),
146 MS(val, AR_XSREV_TYPE), MS(val, AR_XSREV_REVISION));
147 /* NB: include chip type to differentiate from pre-Sowl versions */
148 AH_PRIVATE(ah)->ah_macVersion =
149 (val & AR_XSREV_VERSION) >> AR_XSREV_TYPE_S;
150 AH_PRIVATE(ah)->ah_macRev = MS(val, AR_XSREV_REVISION);
18 */
19#include "opt_ah.h"
20
21#include "ah.h"
22#include "ah_internal.h"
23#include "ah_devid.h"
24
25#include "ar5416/ar5416.h"

--- 117 unchanged lines hidden (view full) ---

143 HALDEBUG(ah, HAL_DEBUG_ATTACH,
144 "%s: ID 0x%x VERSION 0x%x TYPE 0x%x REVISION 0x%x\n",
145 __func__, MS(val, AR_XSREV_ID), MS(val, AR_XSREV_VERSION),
146 MS(val, AR_XSREV_TYPE), MS(val, AR_XSREV_REVISION));
147 /* NB: include chip type to differentiate from pre-Sowl versions */
148 AH_PRIVATE(ah)->ah_macVersion =
149 (val & AR_XSREV_VERSION) >> AR_XSREV_TYPE_S;
150 AH_PRIVATE(ah)->ah_macRev = MS(val, AR_XSREV_REVISION);
151 /* XXX extract pcie info */
151 AH_PRIVATE(ah)->ah_ispcie = (val & AR_XSREV_TYPE_HOST_MODE) == 0;
152
153 /* setup common ini data; rf backends handle remainder */
154 HAL_INI_INIT(&ahp->ah_ini_modes, ar9160Modes, 6);
155 HAL_INI_INIT(&ahp->ah_ini_common, ar9160Common, 2);
156
157 HAL_INI_INIT(&AH5416(ah)->ah_ini_bb_rfgain, ar9160BB_RfGain, 3);
158 HAL_INI_INIT(&AH5416(ah)->ah_ini_bank0, ar9160Bank0, 2);
159 HAL_INI_INIT(&AH5416(ah)->ah_ini_bank1, ar9160Bank1, 2);

--- 5 unchanged lines hidden (view full) ---

165 HAL_INI_INIT(&AH5416(ah)->ah_ini_addac, ar9160Addac_1_1, 2);
166 else
167 HAL_INI_INIT(&AH5416(ah)->ah_ini_addac, ar9160Addac, 2);
168
169 ecode = ath_hal_v14EepromAttach(ah);
170 if (ecode != HAL_OK)
171 goto bad;
172
152
153 /* setup common ini data; rf backends handle remainder */
154 HAL_INI_INIT(&ahp->ah_ini_modes, ar9160Modes, 6);
155 HAL_INI_INIT(&ahp->ah_ini_common, ar9160Common, 2);
156
157 HAL_INI_INIT(&AH5416(ah)->ah_ini_bb_rfgain, ar9160BB_RfGain, 3);
158 HAL_INI_INIT(&AH5416(ah)->ah_ini_bank0, ar9160Bank0, 2);
159 HAL_INI_INIT(&AH5416(ah)->ah_ini_bank1, ar9160Bank1, 2);

--- 5 unchanged lines hidden (view full) ---

165 HAL_INI_INIT(&AH5416(ah)->ah_ini_addac, ar9160Addac_1_1, 2);
166 else
167 HAL_INI_INIT(&AH5416(ah)->ah_ini_addac, ar9160Addac, 2);
168
169 ecode = ath_hal_v14EepromAttach(ah);
170 if (ecode != HAL_OK)
171 goto bad;
172
173 HAL_INI_INIT(&AH5416(ah)->ah_ini_pcieserdes, ar9160PciePhy, 2);
174 ar5416AttachPCIE(ah);
175
173 if (!ar5416ChipReset(ah, AH_NULL)) { /* reset chip */
174 HALDEBUG(ah, HAL_DEBUG_ANY, "%s: chip reset failed\n", __func__);
175 ecode = HAL_EIO;
176 goto bad;
177 }
178
179 AH_PRIVATE(ah)->ah_phyRev = OS_REG_READ(ah, AR_PHY_CHIP_ID);
180

--- 125 unchanged lines hidden ---
176 if (!ar5416ChipReset(ah, AH_NULL)) { /* reset chip */
177 HALDEBUG(ah, HAL_DEBUG_ANY, "%s: chip reset failed\n", __func__);
178 ecode = HAL_EIO;
179 goto bad;
180 }
181
182 AH_PRIVATE(ah)->ah_phyRev = OS_REG_READ(ah, AR_PHY_CHIP_ID);
183

--- 125 unchanged lines hidden ---