mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-02-20 09:44:44 +02:00
force MII access in AR2313 ethernet to KSEG1 instead of physical addresses - why the fsck has this ever worked for anybody??
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6258 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
03faf73e66
commit
39133a937d
@ -1527,7 +1527,7 @@ diff -urN linux.old/drivers/net/ar2313/ar2313.c linux.eth/drivers/net/ar2313/ar2
|
|||||||
+{
|
+{
|
||||||
+ volatile ETHERNET_STRUCT * ethernet;
|
+ volatile ETHERNET_STRUCT * ethernet;
|
||||||
+
|
+
|
||||||
+ ethernet = (volatile ETHERNET_STRUCT *)(ar_eth_base); /* always MAC 0 */
|
+ ethernet = (volatile ETHERNET_STRUCT *)KSEG1ADDR(ar_eth_base); /* always MAC 0 */
|
||||||
+ ethernet->mii_addr = ((reg << MII_ADDR_REG_SHIFT) |
|
+ ethernet->mii_addr = ((reg << MII_ADDR_REG_SHIFT) |
|
||||||
+ (phy << MII_ADDR_PHY_SHIFT));
|
+ (phy << MII_ADDR_PHY_SHIFT));
|
||||||
+ while (ethernet->mii_addr & MII_ADDR_BUSY);
|
+ while (ethernet->mii_addr & MII_ADDR_BUSY);
|
||||||
@ -1539,7 +1539,7 @@ diff -urN linux.old/drivers/net/ar2313/ar2313.c linux.eth/drivers/net/ar2313/ar2
|
|||||||
+{
|
+{
|
||||||
+ volatile ETHERNET_STRUCT * ethernet;
|
+ volatile ETHERNET_STRUCT * ethernet;
|
||||||
+
|
+
|
||||||
+ ethernet = (volatile ETHERNET_STRUCT *)(ar_eth_base); /* always MAC 0 */
|
+ ethernet = (volatile ETHERNET_STRUCT *)KSEG1ADDR(ar_eth_base); /* always MAC 0 */
|
||||||
+ while (ethernet->mii_addr & MII_ADDR_BUSY);
|
+ while (ethernet->mii_addr & MII_ADDR_BUSY);
|
||||||
+ ethernet->mii_data = data << MII_DATA_SHIFT;
|
+ ethernet->mii_data = data << MII_DATA_SHIFT;
|
||||||
+ ethernet->mii_addr = ((reg << MII_ADDR_REG_SHIFT) |
|
+ ethernet->mii_addr = ((reg << MII_ADDR_REG_SHIFT) |
|
||||||
|
Loading…
x
Reference in New Issue
Block a user