Deleted Added
full compact
if_run.c (256721) if_run.c (256722)
1/*-
2 * Copyright (c) 2008,2010 Damien Bergamini <damien.bergamini@free.fr>
3 * ported to FreeBSD by Akinori Furukoshi <moonlightakkiy@yahoo.ca>
4 * USB Consulting, Hans Petter Selasky <hselasky@freebsd.org>
5 *
6 * Permission to use, copy, modify, and distribute this software for any
7 * purpose with or without fee is hereby granted, provided that the above
8 * copyright notice and this permission notice appear in all copies.
9 *
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 */
18
19#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2008,2010 Damien Bergamini <damien.bergamini@free.fr>
3 * ported to FreeBSD by Akinori Furukoshi <moonlightakkiy@yahoo.ca>
4 * USB Consulting, Hans Petter Selasky <hselasky@freebsd.org>
5 *
6 * Permission to use, copy, modify, and distribute this software for any
7 * purpose with or without fee is hereby granted, provided that the above
8 * copyright notice and this permission notice appear in all copies.
9 *
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 */
18
19#include <sys/cdefs.h>
20__FBSDID("$FreeBSD: head/sys/dev/usb/wlan/if_run.c 256721 2013-10-18 07:46:28Z kevlo $");
20__FBSDID("$FreeBSD: head/sys/dev/usb/wlan/if_run.c 256722 2013-10-18 07:48:20Z kevlo $");
21
22/*-
23 * Ralink Technology RT2700U/RT2800U/RT3000U chipset driver.
24 * http://www.ralinktech.com/
25 */
26
27#include <sys/param.h>
28#include <sys/sockio.h>

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

4361 }
4362 return (0);
4363}
4364
4365static int
4366run_rt3070_rf_init(struct run_softc *sc)
4367{
4368 uint32_t tmp;
21
22/*-
23 * Ralink Technology RT2700U/RT2800U/RT3000U chipset driver.
24 * http://www.ralinktech.com/
25 */
26
27#include <sys/param.h>
28#include <sys/sockio.h>

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

4361 }
4362 return (0);
4363}
4364
4365static int
4366run_rt3070_rf_init(struct run_softc *sc)
4367{
4368 uint32_t tmp;
4369 uint8_t rf, target, bbp4;
4369 uint8_t bbp4, mingain, rf, target;
4370 int i;
4371
4372 run_rt3070_rf_read(sc, 30, &rf);
4373 /* toggle RF R30 bit 7 */
4374 run_rt3070_rf_write(sc, 30, rf | 0x80);
4375 run_delay(sc, 10);
4376 run_rt3070_rf_write(sc, 30, rf & ~0x80);
4377

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

4468
4469 if (sc->mac_ver == 0x3070 || sc->mac_ver == 0x3071) {
4470 run_rt3070_rf_read(sc, 17, &rf);
4471 rf &= ~RT3070_TX_LO1;
4472 if ((sc->mac_ver == 0x3070 ||
4473 (sc->mac_ver == 0x3071 && sc->mac_rev >= 0x0211)) &&
4474 !sc->ext_2ghz_lna)
4475 rf |= 0x20; /* fix for long range Rx issue */
4370 int i;
4371
4372 run_rt3070_rf_read(sc, 30, &rf);
4373 /* toggle RF R30 bit 7 */
4374 run_rt3070_rf_write(sc, 30, rf | 0x80);
4375 run_delay(sc, 10);
4376 run_rt3070_rf_write(sc, 30, rf & ~0x80);
4377

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

4468
4469 if (sc->mac_ver == 0x3070 || sc->mac_ver == 0x3071) {
4470 run_rt3070_rf_read(sc, 17, &rf);
4471 rf &= ~RT3070_TX_LO1;
4472 if ((sc->mac_ver == 0x3070 ||
4473 (sc->mac_ver == 0x3071 && sc->mac_rev >= 0x0211)) &&
4474 !sc->ext_2ghz_lna)
4475 rf |= 0x20; /* fix for long range Rx issue */
4476 if (sc->txmixgain_2ghz >= 1)
4476 mingain = (sc->mac_ver == 0x3070) ? 1 : 2;
4477 if (sc->txmixgain_2ghz >= mingain)
4477 rf = (rf & ~0x7) | sc->txmixgain_2ghz;
4478 run_rt3070_rf_write(sc, 17, rf);
4479 }
4480
4481 if (sc->mac_rev == 0x3071) {
4482 run_rt3070_rf_read(sc, 1, &rf);
4483 rf &= ~(RT3070_RX0_PD | RT3070_TX0_PD);
4484 rf |= RT3070_RF_BLOCK | RT3070_RX1_PD | RT3070_TX1_PD;

--- 518 unchanged lines hidden ---
4478 rf = (rf & ~0x7) | sc->txmixgain_2ghz;
4479 run_rt3070_rf_write(sc, 17, rf);
4480 }
4481
4482 if (sc->mac_rev == 0x3071) {
4483 run_rt3070_rf_read(sc, 1, &rf);
4484 rf &= ~(RT3070_RX0_PD | RT3070_TX0_PD);
4485 rf |= RT3070_RF_BLOCK | RT3070_RX1_PD | RT3070_TX1_PD;

--- 518 unchanged lines hidden ---