X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/d2f4cca420ecfa2410a7c8149dd342ab3901848e..a5bb023d0e2738dce6c759988cf85c3b88c53a7c:/package/openwrt/wlcompat.c diff --git a/package/openwrt/wlcompat.c b/package/openwrt/wlcompat.c index fdcb36cc9..3c163fd18 100644 --- a/package/openwrt/wlcompat.c +++ b/package/openwrt/wlcompat.c @@ -569,12 +569,12 @@ static const struct iw_priv_args wlcompat_private_args[] = { PRIV_SET_TXPWR_LIMIT, IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, 0, - "set_txpwr_limit" + "set_txpwr_force" }, { PRIV_GET_TXPWR_LIMIT, 0, IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, - "get_txpwr_limit" + "get_txpwr_force" } }; @@ -695,7 +695,21 @@ static int new_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) { static int __init wlcompat_init() { - dev = dev_get_by_name("eth1"); + int found = 0, i; + char *devname = "eth0"; + + while (!found && (dev = dev_get_by_name(devname))) { + if ((wl_ioctl(dev, WLC_GET_MAGIC, &i, sizeof(i)) == 0) && i == WLC_IOCTL_MAGIC) + found = 1; + devname[3]++; + } + + if (!found) { + printk("No Broadcom devices found.\n"); + return -ENODEV; + } + + #ifdef DEBUG old_ioctl = dev->do_ioctl; dev->do_ioctl = new_ioctl;