diff --git a/[refs] b/[refs] index d5a08017b6b8..54cd11f54899 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0baa080c75cea6357bfba9b93ba598d747457cbd +refs/heads/master: a4d63a943735efa30270ce70716d43323fd40f02 diff --git a/trunk/drivers/net/ethoc.c b/trunk/drivers/net/ethoc.c index 6d82dc646ac0..34d0c69e67f7 100644 --- a/trunk/drivers/net/ethoc.c +++ b/trunk/drivers/net/ethoc.c @@ -662,8 +662,8 @@ static int ethoc_open(struct net_device *dev) if (ret) return ret; - /* calculate the number of TX/RX buffers */ - num_bd = (dev->mem_end - dev->mem_start + 1) / ETHOC_BUFSIZ; + /* calculate the number of TX/RX buffers, maximum 128 supported */ + num_bd = min(128, (dev->mem_end - dev->mem_start + 1) / ETHOC_BUFSIZ); priv->num_tx = max(min_tx, num_bd / 4); priv->num_rx = num_bd - priv->num_tx; ethoc_write(priv, TX_BD_NUM, priv->num_tx);