lkml.org 
[lkml]   [2006]   [Mar]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] Lower e100 latency
    On Thu, 23 Mar 2006 22:07:11 +0100, "J.A. Magallon" <jamagallon@able.es> wrote:

    > On Thu, 23 Mar 2006 01:40:46 -0800, Andrew Morton <akpm@osdl.org> wrote:
    >
    > >
    > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.16/2.6.16-mm1/
    > >
    >

    --- linux/drivers/net/e100.c.orig 2006-01-24 09:20:44.000000000 +0100
    +++ linux/drivers/net/e100.c 2006-01-24 09:21:55.000000000 +0100
    @@ -884,23 +884,23 @@
    * procedure it should be done under lock.
    */
    spin_lock_irqsave(&nic->mdio_lock, flags);
    - for (i = 100; i; --i) {
    + for (i = 1000; i; --i) {
    if (readl(&nic->csr->mdi_ctrl) & mdi_ready)
    break;
    - udelay(20);
    + udelay(2);
    }
    if (unlikely(!i)) {
    - printk("e100.mdio_ctrl(%s) won't go Ready\n",
    + DPRINTK(PROBE, ERR, "e100.mdio_ctrl(%s) won't go Ready\n",
    nic->netdev->name );
    spin_unlock_irqrestore(&nic->mdio_lock, flags);
    return 0; /* No way to indicate timeout error */
    }
    writel((reg << 16) | (addr << 21) | dir | data, &nic->csr->mdi_ctrl);

    - for (i = 0; i < 100; i++) {
    - udelay(20);
    + for (i = 0; i < 1000; i++) {
    if ((data_out = readl(&nic->csr->mdi_ctrl)) & mdi_ready)
    break;
    + udelay(2);
    }
    spin_unlock_irqrestore(&nic->mdio_lock, flags);
    DPRINTK(HW, DEBUG,

    --
    J.A. Magallon <jamagallon()able!es> \ Software is like sex:
    werewolf!able!es \ It's better when it's free
    Mandriva Linux release 2006.1 (Cooker) for i586
    Linux 2.6.15-jam20 (gcc 4.0.3 (4.0.3-1mdk for Mandriva Linux release 2006.1))
    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2006-03-23 22:16    [W:4.153 / U:0.224 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site