From 678a3678bc2a0b4357eeb418457cabe3706d0a33 Mon Sep 17 00:00:00 2001 From: Ben Collins Date: Mon, 12 Jun 2006 18:13:21 -0400 Subject: [PATCH] --- yaml --- r: 28131 b: refs/heads/master c: 8aef63ff033fb0e7ba02d8e760d268eb0aafc58c h: refs/heads/master i: 28129: b218d2f7f30138e524547453ab9a5c9956b45c8d 28127: ed9c2212b44e7b62939f228fc2a11731a443906a v: v3 --- [refs] | 2 +- trunk/drivers/ieee1394/highlevel.c | 4 +++- trunk/drivers/ieee1394/hosts.h | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 49d63038147f..8e996388f372 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 20f4578156995e95613497baf16d5b2d54921e5d +refs/heads/master: 8aef63ff033fb0e7ba02d8e760d268eb0aafc58c diff --git a/trunk/drivers/ieee1394/highlevel.c b/trunk/drivers/ieee1394/highlevel.c index 491e6032bdec..29c5255b933c 100644 --- a/trunk/drivers/ieee1394/highlevel.c +++ b/trunk/drivers/ieee1394/highlevel.c @@ -312,8 +312,10 @@ u64 hpsb_allocate_and_register_addrspace(struct hpsb_highlevel *hl, return retval; } + /* default range, + * avoids controller's posted write area (see OHCI 1.1 clause 1.5) */ if (start == ~0ULL && end == ~0ULL) { - start = CSR1212_ALL_SPACE_BASE + 0xffff00000000ULL; /* ohci1394.c limit */ + start = host->middle_addr_space; end = CSR1212_ALL_SPACE_END; } diff --git a/trunk/drivers/ieee1394/hosts.h b/trunk/drivers/ieee1394/hosts.h index 9ddc6628e710..9ad4b2463077 100644 --- a/trunk/drivers/ieee1394/hosts.h +++ b/trunk/drivers/ieee1394/hosts.h @@ -73,6 +73,8 @@ struct hpsb_host { unsigned int config_roms; struct list_head addr_space; + u64 low_addr_space; /* upper bound of physical DMA area */ + u64 middle_addr_space; /* upper bound of posted write area */ };