diff options
author | Colin Ngam <cngam@sgi.com> | 2005-08-03 16:35:00 -0400 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2005-08-11 18:35:13 -0400 |
commit | 674c6479b7bdc78528ea83dd43897e3161558b8b (patch) | |
tree | 5ae55cc33867c1f6d0df1e6af8fe71e88ffee046 /arch/ia64/sn/pci | |
parent | b5da623ae9be680ea59f268eeb339f0acb2d88c4 (diff) |
[IA64-SGI] Altix only: Add PCI Domain number support.
This patch enables PCI Domain numbering on Altix.
Signed-off-by: Colin Ngam <cngam@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/sn/pci')
-rw-r--r-- | arch/ia64/sn/pci/pcibr/pcibr_provider.c | 11 | ||||
-rw-r--r-- | arch/ia64/sn/pci/tioca_provider.c | 5 |
2 files changed, 10 insertions, 6 deletions
diff --git a/arch/ia64/sn/pci/pcibr/pcibr_provider.c b/arch/ia64/sn/pci/pcibr/pcibr_provider.c index b95e928636a1..dfaf01e5be80 100644 --- a/arch/ia64/sn/pci/pcibr/pcibr_provider.c +++ b/arch/ia64/sn/pci/pcibr/pcibr_provider.c | |||
@@ -60,7 +60,7 @@ static int sal_pcibr_error_interrupt(struct pcibus_info *soft) | |||
60 | ret_stuff.status = 0; | 60 | ret_stuff.status = 0; |
61 | ret_stuff.v0 = 0; | 61 | ret_stuff.v0 = 0; |
62 | 62 | ||
63 | segment = 0; | 63 | segment = soft->pbi_buscommon.bs_persist_segment; |
64 | busnum = soft->pbi_buscommon.bs_persist_busnum; | 64 | busnum = soft->pbi_buscommon.bs_persist_busnum; |
65 | SAL_CALL_NOLOCK(ret_stuff, | 65 | SAL_CALL_NOLOCK(ret_stuff, |
66 | (u64) SN_SAL_IOIF_ERROR_INTERRUPT, | 66 | (u64) SN_SAL_IOIF_ERROR_INTERRUPT, |
@@ -142,9 +142,12 @@ pcibr_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont | |||
142 | j++, sn_flush_device_list++) { | 142 | j++, sn_flush_device_list++) { |
143 | if (sn_flush_device_list->sfdl_slot == -1) | 143 | if (sn_flush_device_list->sfdl_slot == -1) |
144 | continue; | 144 | continue; |
145 | if (sn_flush_device_list-> | 145 | if ((sn_flush_device_list-> |
146 | sfdl_persistent_busnum == | 146 | sfdl_persistent_segment == |
147 | soft->pbi_buscommon.bs_persist_busnum) | 147 | soft->pbi_buscommon.bs_persist_segment) && |
148 | (sn_flush_device_list-> | ||
149 | sfdl_persistent_busnum == | ||
150 | soft->pbi_buscommon.bs_persist_busnum)) | ||
148 | sn_flush_device_list->sfdl_pcibus_info = | 151 | sn_flush_device_list->sfdl_pcibus_info = |
149 | soft; | 152 | soft; |
150 | } | 153 | } |
diff --git a/arch/ia64/sn/pci/tioca_provider.c b/arch/ia64/sn/pci/tioca_provider.c index 5d76a7581465..2fef7c10d6e5 100644 --- a/arch/ia64/sn/pci/tioca_provider.c +++ b/arch/ia64/sn/pci/tioca_provider.c | |||
@@ -559,7 +559,7 @@ tioca_error_intr_handler(int irq, void *arg, struct pt_regs *pt) | |||
559 | ret_stuff.status = 0; | 559 | ret_stuff.status = 0; |
560 | ret_stuff.v0 = 0; | 560 | ret_stuff.v0 = 0; |
561 | 561 | ||
562 | segment = 0; | 562 | segment = soft->ca_common.bs_persist_segment; |
563 | busnum = soft->ca_common.bs_persist_busnum; | 563 | busnum = soft->ca_common.bs_persist_busnum; |
564 | 564 | ||
565 | SAL_CALL_NOLOCK(ret_stuff, | 565 | SAL_CALL_NOLOCK(ret_stuff, |
@@ -622,7 +622,8 @@ tioca_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont | |||
622 | nasid_to_cnodeid(tioca_common->ca_closest_nasid); | 622 | nasid_to_cnodeid(tioca_common->ca_closest_nasid); |
623 | tioca_common->ca_kernel_private = (uint64_t) tioca_kern; | 623 | tioca_common->ca_kernel_private = (uint64_t) tioca_kern; |
624 | 624 | ||
625 | bus = pci_find_bus(0, tioca_common->ca_common.bs_persist_busnum); | 625 | bus = pci_find_bus(tioca_common->ca_common.bs_persist_segment, |
626 | tioca_common->ca_common.bs_persist_busnum); | ||
626 | BUG_ON(!bus); | 627 | BUG_ON(!bus); |
627 | tioca_kern->ca_devices = &bus->devices; | 628 | tioca_kern->ca_devices = &bus->devices; |
628 | 629 | ||