33305b56a2
Runtime tested on Ubiquiti EdgeRouter Lite. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be> SVN-Revision: 47472
34 lines
1.1 KiB
Diff
34 lines
1.1 KiB
Diff
--- a/drivers/staging/octeon/ethernet.c
|
|
+++ b/drivers/staging/octeon/ethernet.c
|
|
@@ -663,6 +663,7 @@ static int cvm_oct_probe(struct platform
|
|
int interface;
|
|
int fau = FAU_NUM_PACKET_BUFFERS_TO_FREE;
|
|
int qos;
|
|
+ int i;
|
|
struct device_node *pip;
|
|
|
|
octeon_mdiobus_force_mod_depencency();
|
|
@@ -747,13 +748,19 @@ static int cvm_oct_probe(struct platform
|
|
}
|
|
|
|
num_interfaces = cvmx_helper_get_number_of_interfaces();
|
|
- for (interface = 0; interface < num_interfaces; interface++) {
|
|
- cvmx_helper_interface_mode_t imode =
|
|
- cvmx_helper_interface_get_mode(interface);
|
|
- int num_ports = cvmx_helper_ports_on_interface(interface);
|
|
+ for (i = 0; i < num_interfaces; i++) {
|
|
+ cvmx_helper_interface_mode_t imode;
|
|
+ int interface;
|
|
+ int num_ports;
|
|
int port;
|
|
int port_index;
|
|
|
|
+ interface = i;
|
|
+ if (cvmx_sysinfo_get()->board_type == CVMX_BOARD_TYPE_UBNT_E200)
|
|
+ interface = num_interfaces - (i + 1);
|
|
+
|
|
+ num_ports = cvmx_helper_ports_on_interface(interface);
|
|
+ imode = cvmx_helper_interface_get_mode(interface);
|
|
for (port_index = 0,
|
|
port = cvmx_helper_get_ipd_port(interface, 0);
|
|
port < cvmx_helper_get_ipd_port(interface, num_ports);
|