aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/pccard
diff options
context:
space:
mode:
authorWarner Losh <imp@FreeBSD.org>2001-01-07 16:31:09 +0000
committerWarner Losh <imp@FreeBSD.org>2001-01-07 16:31:09 +0000
commit486d464d74f6eae01b67011ee8b84c1e3b652c1b (patch)
tree4a06bb96014471074a2810a29a5ac795a71c6f95 /sys/dev/pccard
parent568ffd8885481391ba86d3dab36e772ea2caef4a (diff)
Notes
Diffstat (limited to 'sys/dev/pccard')
-rw-r--r--sys/dev/pccard/card_if.m1
-rw-r--r--sys/dev/pccard/pccard.c10
2 files changed, 4 insertions, 7 deletions
diff --git a/sys/dev/pccard/card_if.m b/sys/dev/pccard/card_if.m
index 7952b8620614..621a041fd3f7 100644
--- a/sys/dev/pccard/card_if.m
+++ b/sys/dev/pccard/card_if.m
@@ -64,6 +64,7 @@ METHOD int set_memory_offset {
device_t child;
int rid;
u_int32_t cardaddr;
+ u_int32_t *deltap;
}
METHOD int get_memory_offset {
diff --git a/sys/dev/pccard/pccard.c b/sys/dev/pccard/pccard.c
index efa170ee03b9..2de5db09a041 100644
--- a/sys/dev/pccard/pccard.c
+++ b/sys/dev/pccard/pccard.c
@@ -391,7 +391,6 @@ pccard_function_enable(struct pccard_function *pf)
struct pccard_function *tmp;
int reg;
device_t dev = pf->sc->dev;
- uint32_t addr;
if (pf->cfe == NULL) {
DEVPRVERBOSE((dev, "No config entry could be allocated.\n"));
@@ -450,10 +449,7 @@ pccard_function_enable(struct pccard_function *pf)
CARD_SET_RES_FLAGS(device_get_parent(dev), dev, SYS_RES_MEMORY,
pf->ccr_rid, PCCARD_A_MEM_ATTR);
CARD_SET_MEMORY_OFFSET(device_get_parent(dev), dev,
- pf->ccr_rid, pf->ccr_base);
- CARD_GET_MEMORY_OFFSET(device_get_parent(dev), dev,
- pf->ccr_rid, &addr);
- pf->pf_ccr_offset = pf->ccr_base - addr;
+ pf->ccr_rid, pf->ccr_base, &pf->pf_ccr_offset);
pf->pf_ccrt = rman_get_bustag(pf->ccr_res);
pf->pf_ccrh = rman_get_bushandle(pf->ccr_res);
pf->pf_ccr_realsize = 1;
@@ -841,11 +837,11 @@ pccard_set_res_flags(device_t dev, device_t child, int type, int rid,
static int
pccard_set_memory_offset(device_t dev, device_t child, int rid,
- u_int32_t offset)
+ u_int32_t offset, u_int32_t *deltap)
{
return CARD_SET_MEMORY_OFFSET(device_get_parent(dev), child, rid,
- offset);
+ offset, deltap);
}
static int