Merge pull request #1613 from antmicro/fix-gtp-pips

071-ppips: take all ppips with one uphill nodes
diff --git a/fuzzers/071-ppips/generate.tcl b/fuzzers/071-ppips/generate.tcl
index f2c868b..50c7046 100644
--- a/fuzzers/071-ppips/generate.tcl
+++ b/fuzzers/071-ppips/generate.tcl
@@ -155,32 +155,20 @@
         set dst_wire [get_wires -downhill -of_objects $pip]
         set src_wire [get_wires -uphill -of_objects $pip]
 
-        # GTP-related wires
-        set logic_outs [regexp "LOGIC_OUTS" $dst_wire]
-        set imux [regexp "IMUX" $src_wire]
-        set ctrl [regexp "GTPE2_CTRL" $src_wire]
-        set clk [regexp "GTPE2_CLK" $src_wire]
+        set num_uphill_nodes [llength [get_nodes -uphill -of_objects [get_nodes -of_objects $dst_wire]]]
 
-        # IBUFDS wires
-        set ibufds [regexp "IBUFDS_GTPE2" $src_wire]
+        # All the "MID" GTP tiles (e.g. in the artix 200T devices) have configuration bits
+        # even for nodes with only one uphill nodes connections.
+        # E.g.: IBUFDS_GTPE2_1_MGTCLKOUT_MUX.IBUFDS_GTPE2_1_MGTCLKOUT
+        # The above is a real PIP and should not be added to the PPIPs list.
         set mux [regexp "MUX" $dst_wire]
 
-        set refclk [regexp "COMMON_REFCLK" $src_wire]
-        set tx_pads [regexp "TX\[NP\]_PAD" $dst_wire]
-        set rx_pads [regexp "RX\[NP\]_PAD" $src_wire]
+        set mgt_clk [regexp "MGT_CLK\[0-9\]+" $dst_wire]
+        set mgtclkout [regexp "MGTCLKOUT" $dst_wire]
 
-        # GTP_CHANNEL OUTCLK wires
-        set gtxoutclk [regexp "GT\[RT\]XOUTCLK" $src_wire]
-
-        if {!$logic_outs    &&
-            !$tx_pads       &&
-            !$rx_pads       &&
-            !$imux          &&
-            !$ctrl          &&
-            !$clk           &&
-            !$refclk        &&
-            !$gtxoutclk     &&
-            !($ibufds && !$mux)} {
+        if {($num_uphill_nodes != 1 && !$mgtclkout) ||
+            $mux ||
+            ($mgt_clk && $tile_suffix != "")} {
             continue
         }