1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-03 09:00:21 +00:00

ath(4): Remove MIPS AHB frontend and join PCI one w/ main support again

Following the removal of general MIPS support, there's no longer a need
to have the AHB bus-frontend in place, which according to Linux sources
also isn't used with any non-MIPS SoCs. For simplicity, PCI bus support
is only made conditional on the main one again, i. e. device ath_pci is
removed, and built into the main module, i. e. if_ath_pci.ko obsoleted,
respectively.
Effectively, this reverts the following commits and associated changes:
dba9c85977
e849bb3ecb

Approved by:	adrian
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D41354
This commit is contained in:
Marius Strobl 2023-08-07 18:39:24 +02:00
parent 458e0c1b66
commit 37c8ee8847
17 changed files with 24 additions and 595 deletions

View File

@ -52,6 +52,10 @@
# xargs -n1 | sort | uniq -d;
# done
# 20230807: Removal of the ath(4) AHB bus-frontend or MIPS
OLD_FILES+=usr/share/man/man4/ath_ahb.4
OLD_FILES+=usr/share/man/man4/ath_pci.4
# 20230803: Removal of support for cloning pseudo interfaces from iflib(9)
OLD_FILES+=usr/include/net/iflib_private.h

View File

@ -27,6 +27,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 14.x IS SLOW:
world, or to merely disable the most expensive debugging functionality
at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".)
20230807:
Following the general removal of MIPS support, the ath(4) AHB bus-
frontend has been removed, too, and building of the PCI support is
integrated with the ath(4) main module again. As a result, there's
no longer a need for if_ath_pci_load="YES" in /boot/loader.conf or
"device ath_pci" in the kernel configuration.
20230803:
MAXCPU has been increased to 1024 in the amd64 GENERIC kernel config.
Out-of-tree kernel modules will need to be rebuilt.

View File

@ -55,9 +55,7 @@ MAN= aac.4 \
at45d.4 \
ata.4 \
ath.4 \
ath_ahb.4 \
ath_hal.4 \
ath_pci.4 \
atkbd.4 \
atkbdc.4 \
atp.4 \

View File

@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"/
.Dd June 16, 2020
.Dd August 7, 2023
.Dt ATH 4
.Os
.Sh NAME
@ -40,7 +40,6 @@ place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device ath"
.Cd "device ath_pci"
.Cd "device ath_hal"
.Cd "device ath_rate_sample"
.Cd "device wlan"
@ -51,7 +50,6 @@ module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
if_ath_load="YES"
if_ath_pci_load="YES"
.Ed
.Sh DESCRIPTION
The
@ -65,19 +63,6 @@ Supported features include 802.11 and 802.3 frames, power management, BSS,
IBSS, MBSS, WDS/DWDS TDMA, and host-based access point operation modes.
All host/device interaction is via DMA.
.Pp
Please note that from FreeBSD-9.0, the
.Nm
driver does not include the PCI/PCIe bus glue.
The same driver supports multiple underlying bus types, including PCI/PCIe,
but also embedded (AHB) and USB in the future.
.Pp
To enable use for PCI/PCIe systems, see the
.Xr ath_pci 4
driver.
For embedded systems which use the AHB to connect the wireless MAC, see the
.Xr ath_ahb 4
driver.
.Pp
The
.Nm
driver encapsulates all IP and ARP traffic as 802.11 frames, however

View File

@ -1,60 +0,0 @@
.\"-
.\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd
.\" All rights reserved.
.\""
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer,
.\" without modification.
.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
.\" redistribution must be conditioned upon including a substantially
.\" similar Disclaimer requirement for further binary redistribution.
.\"
.\" NO WARRANTY
.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGES.
.\"
.\" $FreeBSD$
.\"/
.Dd May 30, 2011
.Dt ATH_AHB 4
.Os
.Sh NAME
.Nm ath_ahb
.Nd "Atheros AHB device glue"
.Sh SYNOPSIS
.Cd "device ath_ahb"
.Sh DESCRIPTION
This module provides the AHB bus glue needed for the devices supported
by the
.Xr ath 4
and
.Xr ath_hal 4
drivers.
.Pp
This is only relevant for embedded System-on-Chip (SoC) devices such as
the Atheros AR913x series, which include an Atheros wireless MAC on-die.
.Sh SEE ALSO
.Xr ath 4 ,
.Xr ath_hal 4
.Sh HISTORY
The
.Nm
module first appeared in
.Fx 9.0 .
.Sh BUGS
See
.Xr ath 4
for known bugs.

View File

@ -1,57 +0,0 @@
.\"-
.\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd
.\" All rights reserved.
.\""
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer,
.\" without modification.
.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
.\" redistribution must be conditioned upon including a substantially
.\" similar Disclaimer requirement for further binary redistribution.
.\"
.\" NO WARRANTY
.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGES.
.\"
.\" $FreeBSD$
.\"/
.Dd May 30, 2011
.Dt ATH_PCI 4
.Os
.Sh NAME
.Nm ath_pci
.Nd "Atheros PCI device glue"
.Sh SYNOPSIS
.Cd "device ath_pci"
.Sh DESCRIPTION
This module provides the PCI/PCIe bus glue needed for the devices supported
by the
.Xr ath 4
and
.Xr ath_hal 4
drivers.
.Sh SEE ALSO
.Xr ath 4 ,
.Xr ath_hal 4
.Sh HISTORY
The
.Nm
module first appeared in
.Fx 9.0 .
.Sh BUGS
See
.Xr ath 4
for known bugs.

View File

@ -303,9 +303,8 @@ device wlan_wep # 802.11 WEP support
device wlan_ccmp # 802.11 CCMP support
device wlan_tkip # 802.11 TKIP support
device wlan_amrr # AMRR transmit rate control algorithm
device ath # Atheros NICs
device ath_pci # Atheros pci/cardbus glue
device ath_hal # pci/cardbus chip support
device ath # Atheros CardBus/PCI NICs
device ath_hal # Atheros CardBus/PCI chip support
options AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation
options ATH_ENABLE_11N # Enable 802.11n support for AR5416 and later
device ath_rate_sample # SampleRate tx rate control for ath

View File

@ -88,8 +88,7 @@ device mv_spi
# Wireless NIC cards
device wlan # 802.11 support
device ath # Atheros NIC's
device ath_pci # Atheros pci/cardbus glue
device ath # Atheros CardBus/PCI NICs
device ath_hal
device ath_rate_sample
options ATH_ENABLE_11N

View File

@ -892,12 +892,6 @@ dev/ata/chipsets/ata-siliconimage.c optional ata pci | atasiliconimage | ataati
dev/ata/chipsets/ata-sis.c optional ata pci | atasis
dev/ata/chipsets/ata-via.c optional ata pci | atavia
#
dev/ath/if_ath_pci.c optional ath_pci pci \
compile-with "${ATH_C}"
#
dev/ath/if_ath_ahb.c optional ath_ahb \
compile-with "${ATH_C}"
#
dev/ath/if_ath.c optional ath \
compile-with "${ATH_C}"
dev/ath/if_ath_alq.c optional ath \
@ -920,6 +914,8 @@ dev/ath/if_ath_led.c optional ath \
compile-with "${ATH_C}"
dev/ath/if_ath_lna_div.c optional ath \
compile-with "${ATH_C}"
dev/ath/if_ath_pci.c optional ath pci \
compile-with "${ATH_C}"
dev/ath/if_ath_tx.c optional ath \
compile-with "${ATH_C}"
dev/ath/if_ath_tx_edma.c optional ath \

View File

@ -1,353 +0,0 @@
/*-
* SPDX-License-Identifier: BSD-2-Clause
*
* Copyright (c) 2002-2008 Sam Leffler, Errno Consulting
* Copyright (c) 2010-2011 Adrian Chadd, Xenion Pty Ltd
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer,
* without modification.
* 2. Redistributions in binary form must reproduce at minimum a disclaimer
* similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
* redistribution must be conditioned upon including a substantially
* similar Disclaimer requirement for further binary redistribution.
*
* NO WARRANTY
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
* OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
* IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGES.
*/
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
/*
* AHB bus front-end for the Atheros Wireless LAN controller driver.
*/
#include "opt_ath.h"
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/malloc.h>
#include <sys/module.h>
#include <sys/kernel.h>
#include <sys/lock.h>
#include <sys/mutex.h>
#include <sys/errno.h>
#include <machine/bus.h>
#include <machine/resource.h>
#include <sys/bus.h>
#include <sys/rman.h>
#include <sys/socket.h>
#include <net/if.h>
#include <net/if_media.h>
#include <net/if_arp.h>
#include <net/ethernet.h>
#include <net80211/ieee80211_var.h>
#include <dev/ath/if_athvar.h>
#include <mips/atheros/ar71xxreg.h>
#include <mips/atheros/ar91xxreg.h>
#include <mips/atheros/ar71xx_cpudef.h>
/* For EEPROM firmware */
#ifdef ATH_EEPROM_FIRMWARE
#include <sys/linker.h>
#include <sys/firmware.h>
#endif /* ATH_EEPROM_FIRMWARE */
/*
* bus glue.
*/
/* number of 16 bit words */
#define ATH_EEPROM_DATA_SIZE 2048
struct ath_ahb_softc {
struct ath_softc sc_sc;
struct resource *sc_sr; /* memory resource */
struct resource *sc_irq; /* irq resource */
void *sc_ih; /* interrupt handler */
};
#define VENDOR_ATHEROS 0x168c
#define AR9130_DEVID 0x000b
static int
ath_ahb_probe(device_t dev)
{
int vendor_id, device_id;
const char* devname;
/*
* Check if a device/vendor ID is provided in hints.
*/
if (resource_int_value(device_get_name(dev), device_get_unit(dev),
"vendor_id", &vendor_id) != 0) {
vendor_id = VENDOR_ATHEROS;
}
if (resource_int_value(device_get_name(dev), device_get_unit(dev),
"device_id", &device_id) != 0) {
device_id = AR9130_DEVID;
}
device_printf(dev, "Vendor=0x%04x, Device=0x%04x\n",
vendor_id & 0xffff,
device_id & 0xffff);
/* Attempt to probe */
devname = ath_hal_probe(vendor_id, device_id);
if (devname != NULL) {
device_set_desc(dev, devname);
return BUS_PROBE_DEFAULT;
}
return ENXIO;
}
static void
ath_ahb_intr(void *arg)
{
/* XXX TODO: check if its ours! */
ar71xx_device_flush_ddr(AR71XX_CPU_DDR_FLUSH_WMAC);
ath_intr(arg);
}
static int
ath_ahb_attach(device_t dev)
{
struct ath_ahb_softc *psc = device_get_softc(dev);
struct ath_softc *sc = &psc->sc_sc;
int error = ENXIO;
int rid;
int device_id, vendor_id;
#ifdef ATH_EEPROM_FIRMWARE
const struct firmware *fw = NULL;
const char *buf;
#endif
sc->sc_dev = dev;
rid = 0;
psc->sc_sr = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE);
if (psc->sc_sr == NULL) {
device_printf(dev, "cannot map register space\n");
goto bad;
}
sc->sc_st = (HAL_BUS_TAG) rman_get_bustag(psc->sc_sr);
sc->sc_sh = (HAL_BUS_HANDLE) rman_get_bushandle(psc->sc_sr);
/*
* Mark device invalid so any interrupts (shared or otherwise)
* that arrive before the HAL is setup are discarded.
*/
sc->sc_invalid = 1;
#ifdef ATH_EEPROM_FIRMWARE
/*
* If there's an EEPROM firmware image, load that in.
*/
if (resource_string_value(device_get_name(dev), device_get_unit(dev),
"eeprom_firmware", &buf) == 0) {
device_printf(dev, "%s: looking up firmware @ '%s'\n",
__func__, buf);
fw = firmware_get(buf);
if (fw == NULL) {
device_printf(dev, "%s: couldn't find firmware\n",
__func__);
goto bad1;
}
device_printf(dev, "%s: EEPROM firmware @ %p\n",
__func__, fw->data);
sc->sc_eepromdata =
malloc(fw->datasize, M_TEMP, M_WAITOK | M_ZERO);
if (! sc->sc_eepromdata) {
device_printf(dev, "%s: can't malloc eepromdata\n",
__func__);
goto bad1;
}
memcpy(sc->sc_eepromdata, fw->data, fw->datasize);
firmware_put(fw, 0);
}
#endif /* ATH_EEPROM_FIRMWARE */
/*
* Arrange interrupt line.
*/
rid = 0;
psc->sc_irq = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, RF_SHAREABLE|RF_ACTIVE);
if (psc->sc_irq == NULL) {
device_printf(dev, "could not map interrupt\n");
goto bad1;
}
if (bus_setup_intr(dev, psc->sc_irq,
INTR_TYPE_NET | INTR_MPSAFE,
NULL, ath_ahb_intr, sc, &psc->sc_ih)) {
device_printf(dev, "could not establish interrupt\n");
goto bad2;
}
/*
* Setup DMA descriptor area.
*/
if (bus_dma_tag_create(bus_get_dma_tag(dev), /* parent */
1, 0, /* alignment, bounds */
BUS_SPACE_MAXADDR_32BIT, /* lowaddr */
BUS_SPACE_MAXADDR, /* highaddr */
NULL, NULL, /* filter, filterarg */
0x3ffff, /* maxsize XXX */
ATH_MAX_SCATTER, /* nsegments */
0x3ffff, /* maxsegsize XXX */
BUS_DMA_ALLOCNOW, /* flags */
NULL, /* lockfunc */
NULL, /* lockarg */
&sc->sc_dmat)) {
device_printf(dev, "cannot allocate DMA tag\n");
goto bad3;
}
/*
* Check if a device/vendor ID is provided in hints.
*/
if (resource_int_value(device_get_name(dev), device_get_unit(dev),
"vendor_id", &vendor_id) != 0) {
vendor_id = VENDOR_ATHEROS;
}
if (resource_int_value(device_get_name(dev), device_get_unit(dev),
"device_id", &device_id) != 0) {
device_id = AR9130_DEVID;
}
ATH_LOCK_INIT(sc);
ATH_PCU_LOCK_INIT(sc);
ATH_RX_LOCK_INIT(sc);
ATH_TX_LOCK_INIT(sc);
ATH_TXSTATUS_LOCK_INIT(sc);
error = ath_attach(device_id, sc);
if (error == 0) /* success */
return 0;
ATH_TXSTATUS_LOCK_DESTROY(sc);
ATH_RX_LOCK_DESTROY(sc);
ATH_TX_LOCK_DESTROY(sc);
ATH_PCU_LOCK_DESTROY(sc);
ATH_LOCK_DESTROY(sc);
bus_dma_tag_destroy(sc->sc_dmat);
bad3:
bus_teardown_intr(dev, psc->sc_irq, psc->sc_ih);
bad2:
bus_release_resource(dev, SYS_RES_IRQ, 0, psc->sc_irq);
bad1:
bus_release_resource(dev, SYS_RES_MEMORY, 0, psc->sc_sr);
bad:
/* XXX?! */
if (sc->sc_eepromdata)
free(sc->sc_eepromdata, M_TEMP);
return (error);
}
static int
ath_ahb_detach(device_t dev)
{
struct ath_ahb_softc *psc = device_get_softc(dev);
struct ath_softc *sc = &psc->sc_sc;
/* check if device was removed */
sc->sc_invalid = !bus_child_present(dev);
ath_detach(sc);
bus_generic_detach(dev);
bus_teardown_intr(dev, psc->sc_irq, psc->sc_ih);
bus_release_resource(dev, SYS_RES_IRQ, 0, psc->sc_irq);
bus_dma_tag_destroy(sc->sc_dmat);
bus_release_resource(dev, SYS_RES_MEMORY, 0, psc->sc_sr);
/* XXX?! */
if (sc->sc_eepromdata)
free(sc->sc_eepromdata, M_TEMP);
ATH_TXSTATUS_LOCK_DESTROY(sc);
ATH_RX_LOCK_DESTROY(sc);
ATH_TX_LOCK_DESTROY(sc);
ATH_PCU_LOCK_DESTROY(sc);
ATH_LOCK_DESTROY(sc);
return (0);
}
static int
ath_ahb_shutdown(device_t dev)
{
struct ath_ahb_softc *psc = device_get_softc(dev);
ath_shutdown(&psc->sc_sc);
return (0);
}
static int
ath_ahb_suspend(device_t dev)
{
struct ath_ahb_softc *psc = device_get_softc(dev);
ath_suspend(&psc->sc_sc);
return (0);
}
static int
ath_ahb_resume(device_t dev)
{
struct ath_ahb_softc *psc = device_get_softc(dev);
ath_resume(&psc->sc_sc);
return (0);
}
static device_method_t ath_ahb_methods[] = {
/* Device interface */
DEVMETHOD(device_probe, ath_ahb_probe),
DEVMETHOD(device_attach, ath_ahb_attach),
DEVMETHOD(device_detach, ath_ahb_detach),
DEVMETHOD(device_shutdown, ath_ahb_shutdown),
DEVMETHOD(device_suspend, ath_ahb_suspend),
DEVMETHOD(device_resume, ath_ahb_resume),
{ 0,0 }
};
static driver_t ath_ahb_driver = {
"ath",
ath_ahb_methods,
sizeof (struct ath_ahb_softc)
};
DRIVER_MODULE(if_ath_ahb, nexus, ath_ahb_driver, 0, 0);
DRIVER_MODULE(if_ath_ahb, apb, ath_ahb_driver, 0, 0);
MODULE_VERSION(if_ath_ahb, 1);
MODULE_DEPEND(if_ath_ahb, wlan, 1, 1, 1); /* 802.11 media layer */
MODULE_DEPEND(if_ath_ahb, ath_main, 1, 1, 1); /* if_ath driver */
MODULE_DEPEND(if_ath_ahb, ath_hal, 1, 1, 1); /* ath HAL */

View File

@ -259,9 +259,8 @@ device wlan_wep # 802.11 WEP support
device wlan_ccmp # 802.11 CCMP support
device wlan_tkip # 802.11 TKIP support
device wlan_amrr # AMRR transmit rate control algorithm
device ath # Atheros NICs
device ath_pci # Atheros pci/cardbus glue
device ath_hal # pci/cardbus chip support
device ath # Atheros CardBus/PCI NICs
device ath_hal # Atheros CardBus/PCI chip support
options AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation
options ATH_ENABLE_11N # Enable 802.11n support for AR5416 and later
device ath_rate_sample # SampleRate tx rate control for ath

View File

@ -54,7 +54,6 @@ SUBDIR= \
ath_hal_ar9300 \
ath_main \
ath_rate \
ath_pci \
${_autofs} \
axgbe \
backlight \

View File

@ -1,43 +0,0 @@
#
# Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer,
# without modification.
# 2. Redistributions in binary form must reproduce at minimum a disclaimer
# similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
# redistribution must be conditioned upon including a substantially
# similar Disclaimer requirement for further binary redistribution.
#
# NO WARRANTY
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
# AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
# THE POSSIBILITY OF SUCH DAMAGES.
#
# $FreeBSD$
#
.PATH: ${SRCTOP}/sys/dev/ath
.PATH: ${SRCTOP}/sys/dev/ath/ath_hal
KMOD= if_ath_ahb
SRCS= if_ath_ahb.c
SRCS+= device_if.h bus_if.h opt_wlan.h opt_ath.h opt_ah.h
CFLAGS+= -I. -I${SRCTOP}/sys/dev/ath -I${SRCTOP}/sys/dev/ath/ath_hal
.include <bsd.kmod.mk>
CWARNFLAGS+= ${NO_WUNUSED_BUT_SET_VARIABLE}

View File

@ -39,6 +39,7 @@ SRCS= if_ath.c if_ath_alq.c if_ath_debug.c if_ath_keycache.c if_ath_sysctl.c
SRCS+= if_ath_tx.c if_ath_tx_ht.c if_ath_led.c if_ath_rx.c if_ath_tdma.c
SRCS+= if_ath_beacon.c if_ath_rx_edma.c if_ath_tx_edma.c if_ath_spectral.c
SRCS+= if_ath_btcoex.c if_ath_btcoex_mci.c if_ath_lna_div.c if_ath_ioctl.c if_ath_descdma.c
SRCS+= if_ath_pci.c
SRCS+= device_if.h bus_if.h pci_if.h opt_inet.h opt_ath.h opt_ah.h opt_wlan.h

View File

@ -1,43 +0,0 @@
#
# Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer,
# without modification.
# 2. Redistributions in binary form must reproduce at minimum a disclaimer
# similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
# redistribution must be conditioned upon including a substantially
# similar Disclaimer requirement for further binary redistribution.
#
# NO WARRANTY
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
# AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
# THE POSSIBILITY OF SUCH DAMAGES.
#
# $FreeBSD$
#
.PATH: ${SRCTOP}/sys/dev/ath
.PATH: ${SRCTOP}/sys/dev/ath/ath_hal
KMOD= if_ath_pci
SRCS= if_ath_pci.c
SRCS+= device_if.h bus_if.h pci_if.h opt_wlan.h opt_ath.h opt_ah.h
CFLAGS+= -I. -I${SRCTOP}/sys/dev/ath -I${SRCTOP}/sys/dev/ath/ath_hal
.include <bsd.kmod.mk>
CWARNFLAGS+= ${NO_WUNUSED_BUT_SET_VARIABLE}

View File

@ -241,9 +241,8 @@ device wlan_wep # 802.11 WEP support
device wlan_ccmp # 802.11 CCMP support
device wlan_tkip # 802.11 TKIP support
device wlan_amrr # AMRR transmit rate control algorithm
device ath # Atheros NICs
device ath_pci # Atheros pci/cardbus glue
device ath_hal # pci/cardbus chip support
device ath # Atheros CardBus/PCI NICs
device ath_hal # Atheros CardBus/PCI chip support
options AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation
options ATH_ENABLE_11N # Enable 802.11n support for AR5416 and later
device ath_rate_sample # SampleRate tx rate control for ath

View File

@ -237,9 +237,8 @@ device wlan_wep # 802.11 WEP support
device wlan_ccmp # 802.11 CCMP support
device wlan_tkip # 802.11 TKIP support
device wlan_amrr # AMRR transmit rate control algorithm
device ath # Atheros NICs
device ath_pci # Atheros pci/cardbus glue
device ath_hal # pci/cardbus chip support
device ath # Atheros CardBus/PCI NICs
device ath_hal # Atheros CardBus/PCI chip support
options AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation
options ATH_ENABLE_11N # Enable 802.11n support for AR5416 and later
device ath_rate_sample # SampleRate tx rate control for ath