/* Transmits packets that fit into TX descriptor (are <=120B)  */
static void meth_tx_short_prepare(struct meth_private *priv, struct sk_buff *skb)
/* Transmits packets that fit into TX descriptor (are <=120B)  */
static void meth_tx_short_prepare(struct meth_private *priv, struct sk_buff *skb)
{
	tx_packet *desc = &priv->tx_ring[priv->tx_write];
	int len = (skb->len < ETH_ZLEN) ? ETH_ZLEN : skb->len;
	desc->header.raw = METH_TX_CMD_INT_EN | (len-1) | ((128-len) << 16);
	skb_copy_from_linear_data(skb, desc->data.dt + (120 - len), skb->len);
	if (skb->len < len)
		memset(desc->data.dt + 120 - len + skb->len, 0, len-skb->len);
}