diff mbox

roboswitch: add support for BCM63xx

Message ID 20160728172426.GA11505@Mindship-03
State Accepted
Headers show

Commit Message

Jouke Witteveen July 28, 2016, 5:24 p.m. UTC
These devices do not properly identify themselves.

Signed-off-by: Jouke Witteveen <j.witteveen@gmail.com>
---
This is a very old patch that I had laying around but never submitted
because I had no hardware to test it on. A while ago it was tested by
Carl Lee <ljbha007@gmail.com>, for whom it worked. Based on that and
other publicly available RoboSwitch code, I expect this patch to be
good. It will not break anything that currently works.
 src/drivers/driver_roboswitch.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Jouni Malinen Aug. 7, 2016, 9:56 p.m. UTC | #1
On Thu, Jul 28, 2016 at 07:24:26PM +0200, Jouke Witteveen wrote:
> These devices do not properly identify themselves.
> 
> Signed-off-by: Jouke Witteveen <j.witteveen@gmail.com>
> ---
> This is a very old patch that I had laying around but never submitted
> because I had no hardware to test it on. A while ago it was tested by
> Carl Lee <ljbha007@gmail.com>, for whom it worked. Based on that and
> other publicly available RoboSwitch code, I expect this patch to be
> good. It will not break anything that currently works.

Thanks, applied.
diff mbox

Patch

diff --git a/src/drivers/driver_roboswitch.c b/src/drivers/driver_roboswitch.c
index d3e0595..e8a5135 100644
--- a/src/drivers/driver_roboswitch.c
+++ b/src/drivers/driver_roboswitch.c
@@ -1,6 +1,6 @@ 
 /*
  * WPA Supplicant - roboswitch driver interface
- * Copyright (c) 2008-2009 Jouke Witteveen
+ * Copyright (c) 2008-2012 Jouke Witteveen
  *
  * This software may be distributed under the terms of the BSD license.
  * See README for more details.
@@ -401,7 +401,9 @@  static void * wpa_driver_roboswitch_init(void *ctx, const char *ifname)
 		os_free(drv);
 		return NULL;
 	}
-	if (if_mii(&drv->ifr)->phy_id != ROBO_PHY_ADDR) {
+	/* BCM63xx devices provide 0 here */
+	if (if_mii(&drv->ifr)->phy_id != ROBO_PHY_ADDR &&
+	    if_mii(&drv->ifr)->phy_id != 0) {
 		wpa_printf(MSG_INFO, "%s: Invalid phy address (not a "
 			   "RoboSwitch?)", __func__);
 		os_free(drv);