Skip to content

Commit

Permalink
ieee1394: extend lowlevel API for address range properties
Browse files Browse the repository at this point in the history
Host adapter hardware imposes certain restrictions and features on
address ranges.  Instead of hard-wire such ranges into the ieee1394
core or even into protocol drivers, let lowlevel drivers specify
these ranges via struct hpsb_host.

Patch "ohci1394: set address range properties" must be applied too,
else hpsb_allocate_and_register_addrspace() won't work properly.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Ben Collins <bcollins@ubuntu.com>
  • Loading branch information
Ben Collins committed Jun 12, 2006
1 parent 20f4578 commit 8aef63f
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 1 deletion.
4 changes: 3 additions & 1 deletion drivers/ieee1394/highlevel.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}

Expand Down
2 changes: 2 additions & 0 deletions drivers/ieee1394/hosts.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 */
};


Expand Down

0 comments on commit 8aef63f

Please sign in to comment.