diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2006-03-28 19:59:42 -0500 |
---|---|---|
committer | Jody McIntyre <scjody@modernduck.com> | 2006-03-28 19:59:42 -0500 |
commit | 556640510d7e15664cb9bf2f70f7519bfedd6c29 (patch) | |
tree | 5c555b9c49119f243d969bd5d8ac1032e84c2cd7 /drivers/ieee1394 | |
parent | 180a43044faeaa9bfe0c604d472023a6446430b5 (diff) |
sbp2: check for ARM failure
Sbp2 did not check for successful registration of the lower address range
when CONFIG_IEEE1394_SBP2_PHYS_DMA was set. If hpsb_register_addrspace
failed, a "login timed-out" would occur which is misleading. Now sbp2 logs
a sensible error message.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Jody McIntyre <scjody@modernduck.com>
Diffstat (limited to 'drivers/ieee1394')
-rw-r--r-- | drivers/ieee1394/sbp2.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/ieee1394/sbp2.c b/drivers/ieee1394/sbp2.c index 0b2b0da5b883..ce3b43dd229b 100644 --- a/drivers/ieee1394/sbp2.c +++ b/drivers/ieee1394/sbp2.c | |||
@@ -749,9 +749,13 @@ static struct scsi_id_instance_data *sbp2_alloc_device(struct unit_directory *ud | |||
749 | 749 | ||
750 | #ifdef CONFIG_IEEE1394_SBP2_PHYS_DMA | 750 | #ifdef CONFIG_IEEE1394_SBP2_PHYS_DMA |
751 | /* Handle data movement if physical dma is not | 751 | /* Handle data movement if physical dma is not |
752 | * enabled/supportedon host controller */ | 752 | * enabled or not supported on host controller */ |
753 | hpsb_register_addrspace(&sbp2_highlevel, ud->ne->host, &sbp2_physdma_ops, | 753 | if (!hpsb_register_addrspace(&sbp2_highlevel, ud->ne->host, |
754 | 0x0ULL, 0xfffffffcULL); | 754 | &sbp2_physdma_ops, |
755 | 0x0ULL, 0xfffffffcULL)) { | ||
756 | SBP2_ERR("failed to register lower 4GB address range"); | ||
757 | goto failed_alloc; | ||
758 | } | ||
755 | #endif | 759 | #endif |
756 | } | 760 | } |
757 | 761 | ||