marvell88w8335: Sync with FreeBSD 11.1.
Untested, but the changes are mostly adaptations to the new KPIs.
This commit is contained in:
@@ -1,8 +1,5 @@
|
|||||||
SubDir HAIKU_TOP src add-ons kernel drivers network wlan ;
|
SubDir HAIKU_TOP src add-ons kernel drivers network wlan ;
|
||||||
|
|
||||||
# FreeBSD 9.2 drivers
|
|
||||||
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan marvell88w8335 ;
|
|
||||||
|
|
||||||
# FreeBSD 9.3 drivers
|
# FreeBSD 9.3 drivers
|
||||||
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan broadcom43xx ;
|
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan broadcom43xx ;
|
||||||
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan marvell88w8363 ;
|
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan marvell88w8363 ;
|
||||||
@@ -14,6 +11,7 @@ SubInclude HAIKU_TOP src add-ons kernel drivers network wlan atheroswifi ;
|
|||||||
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan iprowifi2100 ;
|
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan iprowifi2100 ;
|
||||||
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan iprowifi3945 ;
|
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan iprowifi3945 ;
|
||||||
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan iprowifi4965 ;
|
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan iprowifi4965 ;
|
||||||
|
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan marvell88w8335 ;
|
||||||
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan ralinkwifi ;
|
SubInclude HAIKU_TOP src add-ons kernel drivers network wlan ralinkwifi ;
|
||||||
|
|
||||||
# FreeBSD 11.2 drivers
|
# FreeBSD 11.2 drivers
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
SubDir HAIKU_TOP src add-ons kernel drivers network wlan marvell88w8335 ;
|
SubDir HAIKU_TOP src add-ons kernel drivers network wlan marvell88w8335 ;
|
||||||
|
|
||||||
UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_network compat ]
|
UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd11_network compat ]
|
||||||
: true ;
|
: true ;
|
||||||
UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_wlan ] : true ;
|
UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd11_wlan ] : true ;
|
||||||
UsePrivateHeaders net system ;
|
UsePrivateHeaders net system ;
|
||||||
UsePrivateKernelHeaders ;
|
UsePrivateKernelHeaders ;
|
||||||
|
|
||||||
SubDirCcFlags [ FDefines _KERNEL=1 FBSD_DRIVER=1 _XOPEN_SOURCE ]
|
SubDirCcFlags [ FDefines _KERNEL=1 FBSD_DRIVER=1 _XOPEN_SOURCE ]
|
||||||
-Wno-format
|
-Wno-format
|
||||||
-Wno-unused
|
-Wno-unused
|
||||||
-Wno-uninitialized ;
|
-Wno-uninitialized ;
|
||||||
|
|
||||||
UseHeaders [ FDirName $(SUBDIR) ] : true ;
|
UseHeaders [ FDirName $(SUBDIR) ] : true ;
|
||||||
@@ -21,6 +21,6 @@ KernelAddon marvell88w8335 :
|
|||||||
if_malohal.c
|
if_malohal.c
|
||||||
glue.c
|
glue.c
|
||||||
:
|
:
|
||||||
libfreebsd_wlan.a
|
libfreebsd11_wlan.a
|
||||||
libfreebsd_network.a
|
libfreebsd11_network.a
|
||||||
;
|
;
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -28,7 +28,7 @@
|
|||||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||||
* THE POSSIBILITY OF SUCH DAMAGES.
|
* THE POSSIBILITY OF SUCH DAMAGES.
|
||||||
*
|
*
|
||||||
* $FreeBSD$
|
* $FreeBSD: releng/11.1/sys/dev/malo/if_malo.h 287197 2015-08-27 08:56:39Z glebius $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -520,8 +520,9 @@ struct malo_vap {
|
|||||||
#define MALO_VAP(vap) ((struct malo_vap *)(vap))
|
#define MALO_VAP(vap) ((struct malo_vap *)(vap))
|
||||||
|
|
||||||
struct malo_softc {
|
struct malo_softc {
|
||||||
|
struct ieee80211com malo_ic;
|
||||||
|
struct mbufq malo_snd;
|
||||||
device_t malo_dev;
|
device_t malo_dev;
|
||||||
struct ifnet *malo_ifp; /* interface common */
|
|
||||||
struct mtx malo_mtx; /* master lock (recursive) */
|
struct mtx malo_mtx; /* master lock (recursive) */
|
||||||
struct taskqueue *malo_tq; /* private task queue */
|
struct taskqueue *malo_tq; /* private task queue */
|
||||||
|
|
||||||
@@ -531,9 +532,10 @@ struct malo_softc {
|
|||||||
bus_space_handle_t malo_io1h; /* BAR 1 */
|
bus_space_handle_t malo_io1h; /* BAR 1 */
|
||||||
bus_space_tag_t malo_io1t;
|
bus_space_tag_t malo_io1t;
|
||||||
|
|
||||||
unsigned int malo_invalid : 1,/* disable hardware accesses */
|
unsigned int malo_invalid: 1,/* disable hardware accesses */
|
||||||
malo_recvsetup : 1, /* recv setup */
|
malo_recvsetup: 1, /* recv setup */
|
||||||
malo_fixedrate: 1; /* use fixed tx rate */
|
malo_fixedrate: 1, /* use fixed tx rate */
|
||||||
|
malo_running: 1;
|
||||||
|
|
||||||
struct malo_hal *malo_mh; /* h/w access layer */
|
struct malo_hal *malo_mh; /* h/w access layer */
|
||||||
struct malo_hal_hwspec malo_hwspecs; /* h/w capabilities */
|
struct malo_hal_hwspec malo_hwspecs; /* h/w capabilities */
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
#include <sys/cdefs.h>
|
#include <sys/cdefs.h>
|
||||||
#ifdef __FreeBSD__
|
#ifdef __FreeBSD__
|
||||||
__FBSDID("$FreeBSD$");
|
__FBSDID("$FreeBSD: releng/11.1/sys/dev/malo/if_malo_pci.c 288087 2015-09-22 02:44:59Z adrian $");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$");
|
|||||||
|
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#include <sys/kernel.h>
|
#include <sys/kernel.h>
|
||||||
|
#include <sys/malloc.h>
|
||||||
#include <sys/module.h>
|
#include <sys/module.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <sys/sysctl.h>
|
#include <sys/sysctl.h>
|
||||||
@@ -49,7 +50,9 @@ __FBSDID("$FreeBSD$");
|
|||||||
#include <sys/rman.h>
|
#include <sys/rman.h>
|
||||||
|
|
||||||
#include <net/if.h>
|
#include <net/if.h>
|
||||||
|
#include <net/if_var.h>
|
||||||
#include <net/if_media.h>
|
#include <net/if_media.h>
|
||||||
|
#include <net/ethernet.h>
|
||||||
|
|
||||||
#include <net80211/ieee80211_var.h>
|
#include <net80211/ieee80211_var.h>
|
||||||
|
|
||||||
@@ -83,9 +86,8 @@ static SYSCTL_NODE(_hw_malo, OID_AUTO, pci, CTLFLAG_RD, 0,
|
|||||||
"Marvell 88W8335 driver PCI parameters");
|
"Marvell 88W8335 driver PCI parameters");
|
||||||
|
|
||||||
static int msi_disable = 0; /* MSI disabled */
|
static int msi_disable = 0; /* MSI disabled */
|
||||||
SYSCTL_INT(_hw_malo_pci, OID_AUTO, msi_disable, CTLFLAG_RW, &msi_disable,
|
SYSCTL_INT(_hw_malo_pci, OID_AUTO, msi_disable, CTLFLAG_RWTUN, &msi_disable,
|
||||||
0, "MSI disabled");
|
0, "MSI disabled");
|
||||||
TUNABLE_INT("hw.malo.pci.msi_disable", &msi_disable);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Devices supported by this driver.
|
* Devices supported by this driver.
|
||||||
@@ -129,7 +131,6 @@ static int malo_pci_detach(device_t);
|
|||||||
static int
|
static int
|
||||||
malo_pci_probe(device_t dev)
|
malo_pci_probe(device_t dev)
|
||||||
{
|
{
|
||||||
#define N(a) (sizeof(a) / sizeof((a)[0]))
|
|
||||||
struct malo_product *mp;
|
struct malo_product *mp;
|
||||||
uint16_t vendor, devid;
|
uint16_t vendor, devid;
|
||||||
int i;
|
int i;
|
||||||
@@ -138,7 +139,7 @@ malo_pci_probe(device_t dev)
|
|||||||
devid = pci_get_device(dev);
|
devid = pci_get_device(dev);
|
||||||
mp = malo_products;
|
mp = malo_products;
|
||||||
|
|
||||||
for (i = 0; i < N(malo_products); i++, mp++) {
|
for (i = 0; i < nitems(malo_products); i++, mp++) {
|
||||||
if (vendor == mp->mp_vendorid && devid == mp->mp_deviceid) {
|
if (vendor == mp->mp_vendorid && devid == mp->mp_deviceid) {
|
||||||
device_set_desc(dev, mp->mp_name);
|
device_set_desc(dev, mp->mp_name);
|
||||||
return (BUS_PROBE_DEFAULT);
|
return (BUS_PROBE_DEFAULT);
|
||||||
@@ -146,7 +147,6 @@ malo_pci_probe(device_t dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (ENXIO);
|
return (ENXIO);
|
||||||
#undef N
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@@ -223,9 +223,9 @@ malo_pci_attach(device_t dev)
|
|||||||
BUS_SPACE_MAXADDR_32BIT, /* lowaddr */
|
BUS_SPACE_MAXADDR_32BIT, /* lowaddr */
|
||||||
BUS_SPACE_MAXADDR, /* highaddr */
|
BUS_SPACE_MAXADDR, /* highaddr */
|
||||||
NULL, NULL, /* filter, filterarg */
|
NULL, NULL, /* filter, filterarg */
|
||||||
BUS_SPACE_MAXADDR, /* maxsize */
|
BUS_SPACE_MAXSIZE, /* maxsize */
|
||||||
0, /* nsegments */
|
0, /* nsegments */
|
||||||
BUS_SPACE_MAXADDR, /* maxsegsize */
|
BUS_SPACE_MAXSIZE, /* maxsegsize */
|
||||||
0, /* flags */
|
0, /* flags */
|
||||||
NULL, /* lockfunc */
|
NULL, /* lockfunc */
|
||||||
NULL, /* lockarg */
|
NULL, /* lockarg */
|
||||||
|
|||||||
@@ -31,13 +31,14 @@
|
|||||||
|
|
||||||
#include <sys/cdefs.h>
|
#include <sys/cdefs.h>
|
||||||
#ifdef __FreeBSD__
|
#ifdef __FreeBSD__
|
||||||
__FBSDID("$FreeBSD$");
|
__FBSDID("$FreeBSD: releng/11.1/sys/dev/malo/if_malohal.c 267340 2014-06-10 20:25:45Z jhb $");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#include <sys/systm.h>
|
#include <sys/systm.h>
|
||||||
#include <sys/endian.h>
|
#include <sys/endian.h>
|
||||||
#include <sys/kernel.h>
|
#include <sys/kernel.h>
|
||||||
|
#include <sys/malloc.h>
|
||||||
#include <sys/firmware.h>
|
#include <sys/firmware.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
|
|
||||||
@@ -45,8 +46,10 @@ __FBSDID("$FreeBSD$");
|
|||||||
#include <sys/bus.h>
|
#include <sys/bus.h>
|
||||||
|
|
||||||
#include <net/if.h>
|
#include <net/if.h>
|
||||||
|
#include <net/if_var.h>
|
||||||
#include <net/if_dl.h>
|
#include <net/if_dl.h>
|
||||||
#include <net/if_media.h>
|
#include <net/if_media.h>
|
||||||
|
#include <net/ethernet.h>
|
||||||
|
|
||||||
#include <net80211/ieee80211_var.h>
|
#include <net80211/ieee80211_var.h>
|
||||||
|
|
||||||
@@ -134,13 +137,6 @@ malo_hal_attach(device_t dev, uint16_t devid,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* allocate descriptors */
|
/* allocate descriptors */
|
||||||
error = bus_dmamap_create(mh->mh_dmat, BUS_DMA_NOWAIT, &mh->mh_dmamap);
|
|
||||||
if (error != 0) {
|
|
||||||
device_printf(dev, "unable to create dmamap for cmd buffers, "
|
|
||||||
"error %u\n", error);
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
|
|
||||||
error = bus_dmamem_alloc(mh->mh_dmat, (void**) &mh->mh_cmdbuf,
|
error = bus_dmamem_alloc(mh->mh_dmat, (void**) &mh->mh_cmdbuf,
|
||||||
BUS_DMA_NOWAIT | BUS_DMA_COHERENT,
|
BUS_DMA_NOWAIT | BUS_DMA_COHERENT,
|
||||||
&mh->mh_dmamap);
|
&mh->mh_dmamap);
|
||||||
@@ -163,13 +159,9 @@ malo_hal_attach(device_t dev, uint16_t devid,
|
|||||||
return (mh);
|
return (mh);
|
||||||
|
|
||||||
fail:
|
fail:
|
||||||
if (mh->mh_dmamap != NULL) {
|
if (mh->mh_cmdbuf != NULL)
|
||||||
bus_dmamap_unload(mh->mh_dmat, mh->mh_dmamap);
|
bus_dmamem_free(mh->mh_dmat, mh->mh_cmdbuf,
|
||||||
if (mh->mh_cmdbuf != NULL)
|
mh->mh_dmamap);
|
||||||
bus_dmamem_free(mh->mh_dmat, mh->mh_cmdbuf,
|
|
||||||
mh->mh_dmamap);
|
|
||||||
bus_dmamap_destroy(mh->mh_dmat, mh->mh_dmamap);
|
|
||||||
}
|
|
||||||
if (mh->mh_dmat)
|
if (mh->mh_dmat)
|
||||||
bus_dma_tag_destroy(mh->mh_dmat);
|
bus_dma_tag_destroy(mh->mh_dmat);
|
||||||
free(mh, M_DEVBUF);
|
free(mh, M_DEVBUF);
|
||||||
@@ -589,7 +581,6 @@ malo_hal_detach(struct malo_hal *mh)
|
|||||||
{
|
{
|
||||||
|
|
||||||
bus_dmamem_free(mh->mh_dmat, mh->mh_cmdbuf, mh->mh_dmamap);
|
bus_dmamem_free(mh->mh_dmat, mh->mh_cmdbuf, mh->mh_dmamap);
|
||||||
bus_dmamap_destroy(mh->mh_dmat, mh->mh_dmamap);
|
|
||||||
bus_dma_tag_destroy(mh->mh_dmat);
|
bus_dma_tag_destroy(mh->mh_dmat);
|
||||||
mtx_destroy(&mh->mh_mtx);
|
mtx_destroy(&mh->mh_mtx);
|
||||||
free(mh, M_DEVBUF);
|
free(mh, M_DEVBUF);
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||||
* THE POSSIBILITY OF SUCH DAMAGES.
|
* THE POSSIBILITY OF SUCH DAMAGES.
|
||||||
*
|
*
|
||||||
* $FreeBSD$
|
* $FreeBSD: releng/11.1/sys/dev/malo/if_malohal.h 218909 2011-02-21 09:01:34Z brucec $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _DEV_MALOHAL_H
|
#ifndef _DEV_MALOHAL_H
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||||
* THE POSSIBILITY OF SUCH DAMAGES.
|
* THE POSSIBILITY OF SUCH DAMAGES.
|
||||||
*
|
*
|
||||||
* $FreeBSD$
|
* $FreeBSD: releng/11.1/sys/dev/malo/if_maloioctl.h 177595 2008-03-25 06:32:33Z weongyo $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user