diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c
index b7311bc00258569e210949fcf2c17ceaaa62b46b..747562037e238a01abee17b370ad819ed1c9ca7e 100644
--- a/drivers/net/ethoc.c
+++ b/drivers/net/ethoc.c
@@ -655,7 +655,7 @@ static int ethoc_open(struct net_device *dev)
 
 	/* calculate the number of TX/RX buffers */
 	num_bd = (dev->mem_end - dev->mem_start + 1) / ETHOC_BUFSIZ;
-	priv->num_tx = min(min_tx, num_bd / 4);
+	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);