mirror of
https://github.com/hak5/wifipineapple-openwrt.git
synced 2025-10-29 16:57:19 +00:00
brcm47xx: BGMAC Driver corrections
1) Fix what appears to be a logic error in bgmac_phy_advertise. 2) Fix bgmac_ioctl to use passed phy_id; needed for switch-robo interface w/ the driver to work correctly. I still have the issue with the interface always being HD when the speed/duplex is set manually (e.g., echo "100FD" > /proc/switch/eth0/port/N/media). Signed-off-by: Nathan Hintz <nlhintz@hotmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35052 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -608,7 +608,7 @@
|
||||
+ if (bgmac->phyaddr == BGMAC_PHY_NOREGS)
|
||||
+ return;
|
||||
+
|
||||
+ if (bgmac->autoneg)
|
||||
+ if (!bgmac->autoneg)
|
||||
+ return;
|
||||
+
|
||||
+ /* Adv selected 10/100 speeds */
|
||||
@@ -1097,13 +1097,13 @@
|
||||
+ case SIOCGMIIREG:
|
||||
+ if (!netif_running(net_dev))
|
||||
+ return -EAGAIN;
|
||||
+ data->val_out = bgmac_phy_read(bgmac, bgmac->phyaddr,
|
||||
+ data->val_out = bgmac_phy_read(bgmac, data->phy_id,
|
||||
+ data->reg_num & 0x1f);
|
||||
+ return 0;
|
||||
+ case SIOCSMIIREG:
|
||||
+ if (!netif_running(net_dev))
|
||||
+ return -EAGAIN;
|
||||
+ bgmac_phy_write(bgmac, bgmac->phyaddr, data->reg_num & 0x1f,
|
||||
+ bgmac_phy_write(bgmac, data->phy_id, data->reg_num & 0x1f,
|
||||
+ data->val_in);
|
||||
+ return 0;
|
||||
+ default:
|
||||
|
||||
Reference in New Issue
Block a user