]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - board/pcippc2/pcippc2.c
Patch by Guillaume Alexandre,, 04 Nov 2002:
[karo-tx-uboot.git] / board / pcippc2 / pcippc2.c
index e1b065b0cedbd21795d223f2a60dab67b2ea7804..80ca40250c27f4b7fcc0cb554f88c0901553270e 100644 (file)
@@ -117,6 +117,8 @@ int misc_init_r (void)
 {
        pcippc2_fpga_init ();
 
+       pcippc2_cpci3264_init ();
+
 #if defined(CONFIG_WATCHDOG)
        pcippc2_wdt_init ();
 #endif
@@ -147,6 +149,25 @@ void doc_init (void)
        doc_probe (pcippc2_fpga1_phys + HW_FPGA1_DOC);
 }
 
+void pcippc2_cpci3264_init (void)
+{
+  pci_dev_t            bdf = pci_find_device(FPGA_VENDOR_ID, FPGA_DEVICE_ID, 0);
+
+  if (bdf == -1)
+  {
+    puts("Unable to find FPGA !\n");
+    hang();
+  }
+
+       if((in32(pcippc2_fpga0_phys + HW_FPGA0_BOARD) & 0x01000000) == 0x01000000)
+       /* 32-bits Compact PCI bus - LSB bit */
+       {
+               iobarrier_rw();
+               out32(BRIDGE(CPCI, PCIDG), 0x40000000); /* 32-bits bridge, Pipeline */
+               iobarrier_rw();
+       }
+}
+
 #if defined(CONFIG_WATCHDOG)
 
 void pcippc2_wdt_init (void)