|
@@ -103,10 +103,10 @@ static ssize_t gfar_set_rx_stash_size(struct device *dev,
|
|
|
|
|
|
spin_lock_irqsave(&priv->rxlock, flags);
|
|
spin_lock_irqsave(&priv->rxlock, flags);
|
|
if (length > priv->rx_buffer_size)
|
|
if (length > priv->rx_buffer_size)
|
|
- return count;
|
|
|
|
|
|
+ goto out;
|
|
|
|
|
|
if (length == priv->rx_stash_size)
|
|
if (length == priv->rx_stash_size)
|
|
- return count;
|
|
|
|
|
|
+ goto out;
|
|
|
|
|
|
priv->rx_stash_size = length;
|
|
priv->rx_stash_size = length;
|
|
|
|
|
|
@@ -125,6 +125,7 @@ static ssize_t gfar_set_rx_stash_size(struct device *dev,
|
|
|
|
|
|
gfar_write(&priv->regs->attr, temp);
|
|
gfar_write(&priv->regs->attr, temp);
|
|
|
|
|
|
|
|
+out:
|
|
spin_unlock_irqrestore(&priv->rxlock, flags);
|
|
spin_unlock_irqrestore(&priv->rxlock, flags);
|
|
|
|
|
|
return count;
|
|
return count;
|
|
@@ -154,10 +155,10 @@ static ssize_t gfar_set_rx_stash_index(struct device *dev,
|
|
|
|
|
|
spin_lock_irqsave(&priv->rxlock, flags);
|
|
spin_lock_irqsave(&priv->rxlock, flags);
|
|
if (index > priv->rx_stash_size)
|
|
if (index > priv->rx_stash_size)
|
|
- return count;
|
|
|
|
|
|
+ goto out;
|
|
|
|
|
|
if (index == priv->rx_stash_index)
|
|
if (index == priv->rx_stash_index)
|
|
- return count;
|
|
|
|
|
|
+ goto out;
|
|
|
|
|
|
priv->rx_stash_index = index;
|
|
priv->rx_stash_index = index;
|
|
|
|
|
|
@@ -166,6 +167,7 @@ static ssize_t gfar_set_rx_stash_index(struct device *dev,
|
|
temp |= ATTRELI_EI(index);
|
|
temp |= ATTRELI_EI(index);
|
|
gfar_write(&priv->regs->attreli, flags);
|
|
gfar_write(&priv->regs->attreli, flags);
|
|
|
|
|
|
|
|
+out:
|
|
spin_unlock_irqrestore(&priv->rxlock, flags);
|
|
spin_unlock_irqrestore(&priv->rxlock, flags);
|
|
|
|
|
|
return count;
|
|
return count;
|