From 4abdde3ad6bc0b3b157c4bf6ec0bf139d11d07e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Wed, 13 May 2015 14:13:28 +0200 Subject: [PATCH] b53: add hacky CPU port fixes for devices not using port 5 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Rafał Miłecki --- drivers/net/phy/b53/b53_common.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/drivers/net/phy/b53/b53_common.c +++ b/drivers/net/phy/b53/b53_common.c @@ -25,6 +25,7 @@ #include #include #include +#include #include "b53_regs.h" #include "b53_priv.h" @@ -1313,6 +1314,18 @@ static int b53_switch_init(struct b53_de sw_dev->cpu_port = 5; } + if (of_machine_is_compatible("asus,rt-ac87u")) + sw_dev->cpu_port = 7; + else if (of_machine_is_compatible("netgear,r8000")) + sw_dev->cpu_port = 8; + + /* + * Workaround for devices using port 8 (connected to the 3rd iface). + * For some reason it doesn't work (no packets on eth2). + */ + if (of_machine_is_compatible("netgear,r8000")) + sw_dev->cpu_port = 5; + /* cpu port is always last */ sw_dev->ports = sw_dev->cpu_port + 1; dev->enabled_ports |= BIT(sw_dev->cpu_port);