for (port_num = 0;
                     port_num < RIO_GET_TOTAL_PORTS(rdev->swpinfo);
                     port_num++) {
-                       /*Enable Input Output Port (transmitter reviever)*/
-                       rio_enable_rx_tx_port(port, 0,
+                       if (sw_inport == port_num) {
+                               rio_enable_rx_tx_port(port, 0,
                                              RIO_ANY_DESTID(port->sys_size),
                                              hopcount, port_num);
-
-                       if (sw_inport == port_num) {
                                rdev->rswitch->port_ok |= (1 << port_num);
                                continue;
                        }
                                pr_debug(
                                    "RIO: scanning device on port %d\n",
                                    port_num);
+                               rio_enable_rx_tx_port(port, 0,
+                                             RIO_ANY_DESTID(port->sys_size),
+                                             hopcount, port_num);
                                rdev->rswitch->port_ok |= (1 << port_num);
                                rio_route_add_entry(rdev, RIO_GLOBAL_TABLE,
                                                RIO_ANY_DESTID(port->sys_size),