diff options
author | Jon Loeliger <jdl@freescale.com> | 2007-11-02 15:22:01 -0500 |
---|---|---|
committer | Jon Loeliger <jdl@freescale.com> | 2007-11-02 15:22:01 -0500 |
commit | 3cac27c1d40b151f295dcfdb514fa928732e4ecf (patch) | |
tree | 5dbc1813bfa548e8d31879c39c075bfdcbbf8f86 /board/cds/common/ft_board.c | |
parent | 3c89d75409eb26639d36dfa11d4ee3d8b962dc3c (diff) | |
parent | e60adeac2d8fa30258e1706bb342a3363526e8d7 (diff) |
Merge commit 'remotes/wd/master'
Diffstat (limited to 'board/cds/common/ft_board.c')
-rw-r--r-- | board/cds/common/ft_board.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/board/cds/common/ft_board.c b/board/cds/common/ft_board.c index 9d97905ca9..3eda1009ef 100644 --- a/board/cds/common/ft_board.c +++ b/board/cds/common/ft_board.c @@ -37,17 +37,24 @@ static void cds_pci_fixup(void *blob) map = ft_get_prop(blob, "/" OF_SOC "/pci@8000/interrupt-map", &len); - len /= sizeof(u32); + if (!map) + map = ft_get_prop(blob, "/" OF_PCI "/interrupt-map", &len); - slot = get_pci_slot(); + if (map) { + len /= sizeof(u32); - for (i=0;i<len;i+=7) { - /* We rotate the interrupt pins so that the mapping - * changes depending on the slot the carrier card is in. - */ - map[3] = ((map[3] + slot - 2) % 4) + 1; + slot = get_pci_slot(); - map+=7; + for (i=0;i<len;i+=7) { + /* We rotate the interrupt pins so that the mapping + * changes depending on the slot the carrier card is in. + */ + map[3] = ((map[3] + slot - 2) % 4) + 1; + + map+=7; + } + } else { + printf("*** Warning - No PCI node found\n"); } } #endif |