diff options
Diffstat (limited to 'drivers/ieee1394/highlevel.c')
| -rw-r--r-- | drivers/ieee1394/highlevel.c | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/drivers/ieee1394/highlevel.c b/drivers/ieee1394/highlevel.c index 918ffc4fc8ac..272543a42a43 100644 --- a/drivers/ieee1394/highlevel.c +++ b/drivers/ieee1394/highlevel.c | |||
| @@ -46,10 +46,6 @@ static DEFINE_RWLOCK(hl_irqs_lock); | |||
| 46 | 46 | ||
| 47 | static DEFINE_RWLOCK(addr_space_lock); | 47 | static DEFINE_RWLOCK(addr_space_lock); |
| 48 | 48 | ||
| 49 | /* addr_space list will have zero and max already included as bounds */ | ||
| 50 | static struct hpsb_address_ops dummy_ops = { NULL, NULL, NULL, NULL }; | ||
| 51 | static struct hpsb_address_serve dummy_zero_addr, dummy_max_addr; | ||
| 52 | |||
| 53 | 49 | ||
| 54 | static struct hl_host_info *hl_get_hostinfo(struct hpsb_highlevel *hl, | 50 | static struct hl_host_info *hl_get_hostinfo(struct hpsb_highlevel *hl, |
| 55 | struct hpsb_host *host) | 51 | struct hpsb_host *host) |
| @@ -481,20 +477,23 @@ int hpsb_unregister_addrspace(struct hpsb_highlevel *hl, struct hpsb_host *host, | |||
| 481 | return retval; | 477 | return retval; |
| 482 | } | 478 | } |
| 483 | 479 | ||
| 480 | static struct hpsb_address_ops dummy_ops; | ||
| 481 | |||
| 482 | /* dummy address spaces as lower and upper bounds of the host's a.s. list */ | ||
| 484 | static void init_hpsb_highlevel(struct hpsb_host *host) | 483 | static void init_hpsb_highlevel(struct hpsb_host *host) |
| 485 | { | 484 | { |
| 486 | INIT_LIST_HEAD(&dummy_zero_addr.host_list); | 485 | INIT_LIST_HEAD(&host->dummy_zero_addr.host_list); |
| 487 | INIT_LIST_HEAD(&dummy_zero_addr.hl_list); | 486 | INIT_LIST_HEAD(&host->dummy_zero_addr.hl_list); |
| 488 | INIT_LIST_HEAD(&dummy_max_addr.host_list); | 487 | INIT_LIST_HEAD(&host->dummy_max_addr.host_list); |
| 489 | INIT_LIST_HEAD(&dummy_max_addr.hl_list); | 488 | INIT_LIST_HEAD(&host->dummy_max_addr.hl_list); |
| 490 | 489 | ||
| 491 | dummy_zero_addr.op = dummy_max_addr.op = &dummy_ops; | 490 | host->dummy_zero_addr.op = host->dummy_max_addr.op = &dummy_ops; |
| 492 | 491 | ||
| 493 | dummy_zero_addr.start = dummy_zero_addr.end = 0; | 492 | host->dummy_zero_addr.start = host->dummy_zero_addr.end = 0; |
| 494 | dummy_max_addr.start = dummy_max_addr.end = ((u64) 1) << 48; | 493 | host->dummy_max_addr.start = host->dummy_max_addr.end = ((u64) 1) << 48; |
| 495 | 494 | ||
| 496 | list_add_tail(&dummy_zero_addr.host_list, &host->addr_space); | 495 | list_add_tail(&host->dummy_zero_addr.host_list, &host->addr_space); |
| 497 | list_add_tail(&dummy_max_addr.host_list, &host->addr_space); | 496 | list_add_tail(&host->dummy_max_addr.host_list, &host->addr_space); |
| 498 | } | 497 | } |
| 499 | 498 | ||
| 500 | void highlevel_add_host(struct hpsb_host *host) | 499 | void highlevel_add_host(struct hpsb_host *host) |
