mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
kernel: update linux 3.3 to 3.3.2
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31336 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -7,8 +7,6 @@ Subject: [PATCH 40/70] MIPS: NET: several fixes to etop driver
|
||||
drivers/net/ethernet/lantiq_etop.c | 208 +++++++++++++++++++-----------------
|
||||
1 files changed, 108 insertions(+), 100 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/ethernet/lantiq_etop.c b/drivers/net/ethernet/lantiq_etop.c
|
||||
index 8fbb069..97ddb09 100644
|
||||
--- a/drivers/net/ethernet/lantiq_etop.c
|
||||
+++ b/drivers/net/ethernet/lantiq_etop.c
|
||||
@@ -103,15 +103,6 @@
|
||||
@@ -48,7 +46,7 @@ index 8fbb069..97ddb09 100644
|
||||
|
||||
spinlock_t lock;
|
||||
|
||||
@@ -207,8 +198,10 @@ ltq_etop_poll_rx(struct napi_struct *napi, int budget)
|
||||
@@ -207,8 +198,10 @@ ltq_etop_poll_rx(struct napi_struct *nap
|
||||
{
|
||||
struct ltq_etop_chan *ch = container_of(napi,
|
||||
struct ltq_etop_chan, napi);
|
||||
@@ -59,7 +57,7 @@ index 8fbb069..97ddb09 100644
|
||||
|
||||
while ((rx < budget) && !complete) {
|
||||
struct ltq_dma_desc *desc = &ch->dma.desc_base[ch->dma.desc];
|
||||
@@ -222,7 +215,9 @@ ltq_etop_poll_rx(struct napi_struct *napi, int budget)
|
||||
@@ -222,7 +215,9 @@ ltq_etop_poll_rx(struct napi_struct *nap
|
||||
}
|
||||
if (complete || !rx) {
|
||||
napi_complete(&ch->napi);
|
||||
@@ -69,7 +67,7 @@ index 8fbb069..97ddb09 100644
|
||||
}
|
||||
return rx;
|
||||
}
|
||||
@@ -234,7 +229,7 @@ ltq_etop_poll_tx(struct napi_struct *napi, int budget)
|
||||
@@ -234,7 +229,7 @@ ltq_etop_poll_tx(struct napi_struct *nap
|
||||
container_of(napi, struct ltq_etop_chan, napi);
|
||||
struct ltq_etop_priv *priv = netdev_priv(ch->netdev);
|
||||
struct netdev_queue *txq =
|
||||
@@ -78,7 +76,7 @@ index 8fbb069..97ddb09 100644
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&priv->lock, flags);
|
||||
@@ -252,7 +247,9 @@ ltq_etop_poll_tx(struct napi_struct *napi, int budget)
|
||||
@@ -252,7 +247,9 @@ ltq_etop_poll_tx(struct napi_struct *nap
|
||||
if (netif_tx_queue_stopped(txq))
|
||||
netif_tx_start_queue(txq);
|
||||
napi_complete(&ch->napi);
|
||||
@@ -102,7 +100,7 @@ index 8fbb069..97ddb09 100644
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
@@ -274,7 +272,7 @@ ltq_etop_free_channel(struct net_device *dev, struct ltq_etop_chan *ch)
|
||||
@@ -274,7 +272,7 @@ ltq_etop_free_channel(struct net_device
|
||||
ltq_dma_free(&ch->dma);
|
||||
if (ch->dma.irq)
|
||||
free_irq(ch->dma.irq, priv);
|
||||
@@ -212,7 +210,7 @@ index 8fbb069..97ddb09 100644
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -411,7 +424,10 @@ ltq_etop_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
@@ -411,7 +424,10 @@ ltq_etop_get_settings(struct net_device
|
||||
{
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
|
||||
@@ -224,7 +222,7 @@ index 8fbb069..97ddb09 100644
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -419,7 +435,10 @@ ltq_etop_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
|
||||
@@ -419,7 +435,10 @@ ltq_etop_set_settings(struct net_device
|
||||
{
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
|
||||
@@ -236,7 +234,7 @@ index 8fbb069..97ddb09 100644
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -427,7 +446,10 @@ ltq_etop_nway_reset(struct net_device *dev)
|
||||
@@ -427,7 +446,10 @@ ltq_etop_nway_reset(struct net_device *d
|
||||
{
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
|
||||
@@ -304,7 +302,7 @@ index 8fbb069..97ddb09 100644
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -662,16 +685,16 @@ ltq_etop_tx(struct sk_buff *skb, struct net_device *dev)
|
||||
@@ -662,16 +685,16 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
int queue = skb_get_queue_mapping(skb);
|
||||
struct netdev_queue *txq = netdev_get_tx_queue(dev, queue);
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
@@ -325,7 +323,7 @@ index 8fbb069..97ddb09 100644
|
||||
netdev_err(dev, "tx ring full\n");
|
||||
netif_tx_stop_queue(txq);
|
||||
return NETDEV_TX_BUSY;
|
||||
@@ -679,7 +702,7 @@ ltq_etop_tx(struct sk_buff *skb, struct net_device *dev)
|
||||
@@ -679,7 +702,7 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
|
||||
/* dma needs to start on a 16 byte aligned address */
|
||||
byte_offset = CPHYSADDR(skb->data) % 16;
|
||||
@@ -334,7 +332,7 @@ index 8fbb069..97ddb09 100644
|
||||
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
@@ -689,11 +712,11 @@ ltq_etop_tx(struct sk_buff *skb, struct net_device *dev)
|
||||
@@ -689,11 +712,11 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
wmb();
|
||||
desc->ctl = LTQ_DMA_OWN | LTQ_DMA_SOP | LTQ_DMA_EOP |
|
||||
LTQ_DMA_TX_OFFSET(byte_offset) | (len & LTQ_DMA_SIZE_MASK);
|
||||
@@ -360,7 +358,7 @@ index 8fbb069..97ddb09 100644
|
||||
ltq_etop_change_mtu(dev, 1500);
|
||||
|
||||
memcpy(&mac, &priv->pldata->mac, sizeof(struct sockaddr));
|
||||
@@ -813,6 +840,9 @@ ltq_etop_tx_timeout(struct net_device *dev)
|
||||
@@ -813,6 +840,9 @@ ltq_etop_tx_timeout(struct net_device *d
|
||||
err = ltq_etop_hw_init(dev);
|
||||
if (err)
|
||||
goto err_hw;
|
||||
@@ -370,7 +368,7 @@ index 8fbb069..97ddb09 100644
|
||||
dev->trans_start = jiffies;
|
||||
netif_wake_queue(dev);
|
||||
return;
|
||||
@@ -836,14 +866,13 @@ static const struct net_device_ops ltq_eth_netdev_ops = {
|
||||
@@ -836,14 +866,13 @@ static const struct net_device_ops ltq_e
|
||||
.ndo_tx_timeout = ltq_etop_tx_timeout,
|
||||
};
|
||||
|
||||
@@ -386,7 +384,7 @@ index 8fbb069..97ddb09 100644
|
||||
|
||||
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||
if (!res) {
|
||||
@@ -920,15 +949,10 @@ ltq_etop_probe(struct platform_device *pdev)
|
||||
@@ -920,15 +949,10 @@ ltq_etop_probe(struct platform_device *p
|
||||
|
||||
spin_lock_init(&priv->lock);
|
||||
|
||||
@@ -406,7 +404,7 @@ index 8fbb069..97ddb09 100644
|
||||
|
||||
err = register_netdev(dev);
|
||||
if (err)
|
||||
@@ -958,6 +982,7 @@ ltq_etop_remove(struct platform_device *pdev)
|
||||
@@ -958,6 +982,7 @@ ltq_etop_remove(struct platform_device *
|
||||
}
|
||||
|
||||
static struct platform_driver ltq_mii_driver = {
|
||||
@@ -414,7 +412,7 @@ index 8fbb069..97ddb09 100644
|
||||
.remove = __devexit_p(ltq_etop_remove),
|
||||
.driver = {
|
||||
.name = "ltq_etop",
|
||||
@@ -965,24 +990,7 @@ static struct platform_driver ltq_mii_driver = {
|
||||
@@ -965,24 +990,7 @@ static struct platform_driver ltq_mii_dr
|
||||
},
|
||||
};
|
||||
|
||||
@@ -440,6 +438,3 @@ index 8fbb069..97ddb09 100644
|
||||
|
||||
MODULE_AUTHOR("John Crispin <blogic@openwrt.org>");
|
||||
MODULE_DESCRIPTION("Lantiq SoC ETOP");
|
||||
--
|
||||
1.7.9.1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user