IT猫扑网:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|论坛转贴|软件发布

您当前所在位置:首页操作系统LINUX → 不插网线终端缓慢的问题解决办法

不插网线终端缓慢的问题解决办法

时间:2015/6/28来源:IT猫扑网作者:网管联盟我要评论(0)

  使用Smartarm3250 V1.00版源码,会出现不插入网线,终端会很缓慢的BUG,可以修改drivers/net/lpc32xx_mii.c文件的下面两个函数解决,将两个函数中的变量的lps的值改为5即可:

  /*

  * MAC<--->PHY support functions

  */

  static int lpc32xx_mdio_read(struct mii_bus *bus, int phy_id, int phyreg)

  {

  struct netdata_local *pldat = bus->priv;

  int lps;

  u32 tmp;

  __raw_writel(((phy_id << 8) | phyreg), ENET_MADR(pldat->net_base));

  __raw_writel(MCMD_READ, ENET_MCMD(pldat->net_base));

  /* Wait for unbusy status */

  lps = 50;   //改为5即可

  tmp = __raw_readl(ENET_MIND(pldat->net_base));

  while ((lps > 0) && (tmp & (MIND_BUSY | MIND_MII_LINK_FAIL)))

  {

  msleep(1);

  tmp = __raw_readl(ENET_MIND(pldat->net_base));

  lps--;

  }

  lps = (int) __raw_readl(ENET_MRDD(pldat->net_base));

  __raw_writel(0, ENET_MCMD(pldat->net_base));

  return lps;

  }

  static int lpc32xx_mdio_write(struct mii_bus *bus, int phy_id, int phyreg,

  u16 phydata)

  {

  struct netdata_local *pldat = bus->priv;

  int lps;

  u32 tmp;

  __raw_writel(((phy_id << 8) | phyreg), ENET_MADR(pldat->net_base));

  __raw_writel(phydata, ENET_MWTD(pldat->net_base));

  /* Wait for completion */

  lps = 50;   //改为5即可

  tmp = __raw_readl(ENET_MIND(pldat->net_base));

  while ((lps > 0) && (tmp & MIND_BUSY))

  {

  msleep(1);

  tmp = __raw_readl(ENET_MIND(pldat->net_base));

  lps--;

  }

  return 0;

  }

关键词标签:网线,终端缓慢

相关阅读

文章评论
发表评论

热门文章 安装红帽子RedHat Linux9.0操作系统教程安装红帽子RedHat Linux9.0操作系统教程使用screen管理你的远程会话使用screen管理你的远程会话GNU/Linux安装vmwareGNU/Linux安装vmware如何登录linux vps图形界面 Linux远程桌面连如何登录linux vps图形界面 Linux远程桌面连

相关下载

人气排行 Linux下获取CPUID、硬盘序列号与MAC地址linux tc实现ip流量限制dmidecode命令查看内存型号linux下解压rar文件安装红帽子RedHat Linux9.0操作系统教程Ubuntu linux 关机、重启、注销 命令lcx.exe、nc.exe、sc.exe入侵中的使用方法查看linux服务器硬盘IO读写负载