mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-19 06:44:31 +00:00
Add some minor changes related to PCMCIA attribute memory mapping
(which I apparently forgot to commit earlier). Acquire NDIS_LOCK() in ndis_linksts_done().
This commit is contained in:
parent
73a9bdc48c
commit
dde913e3ca
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=132953
|
@ -73,8 +73,8 @@ __FBSDID("$FreeBSD$");
|
|||
|
||||
#include <compat/ndis/pe_var.h>
|
||||
#include <compat/ndis/resource_var.h>
|
||||
#include <compat/ndis/hal_var.h>
|
||||
#include <compat/ndis/ntoskrnl_var.h>
|
||||
#include <compat/ndis/hal_var.h>
|
||||
#include <compat/ndis/ndis_var.h>
|
||||
#include <compat/ndis/cfg_var.h>
|
||||
#include <dev/if_ndis/if_ndisvar.h>
|
||||
|
@ -389,6 +389,15 @@ ndis_attach(dev)
|
|||
goto fail;
|
||||
}
|
||||
|
||||
if (sc->ndis_iftype == PCMCIABus) {
|
||||
error = ndis_alloc_amem(sc);
|
||||
if (error) {
|
||||
device_printf(dev, "failed to allocate "
|
||||
"attribute memory\n");
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
sc->ndis_regvals = ndis_regvals;
|
||||
|
||||
#if __FreeBSD_version < 502113
|
||||
|
@ -737,6 +746,9 @@ ndis_detach(dev)
|
|||
bus_release_resource(dev, SYS_RES_MEMORY,
|
||||
sc->ndis_altmem_rid, sc->ndis_res_altmem);
|
||||
|
||||
if (sc->ndis_iftype == PCMCIABus)
|
||||
ndis_free_amem(sc);
|
||||
|
||||
if (sc->ndis_sc)
|
||||
ndis_destroy_dma(sc);
|
||||
|
||||
|
@ -957,8 +969,11 @@ ndis_linksts_done(adapter)
|
|||
ifp = block->nmb_ifp;
|
||||
sc = ifp->if_softc;
|
||||
|
||||
if (!NDIS_INITIALIZED(sc))
|
||||
NDIS_LOCK(sc);
|
||||
if (!NDIS_INITIALIZED(sc)) {
|
||||
NDIS_UNLOCK(sc);
|
||||
return;
|
||||
}
|
||||
|
||||
switch (block->nmb_getstat) {
|
||||
case NDIS_STATUS_MEDIA_CONNECT:
|
||||
|
@ -973,6 +988,7 @@ ndis_linksts_done(adapter)
|
|||
break;
|
||||
}
|
||||
|
||||
NDIS_UNLOCK(sc);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue