diff options
author | James Morris <james.l.morris@oracle.com> | 2014-06-24 18:46:07 +1000 |
---|---|---|
committer | James Morris <james.l.morris@oracle.com> | 2014-06-24 18:46:07 +1000 |
commit | f01387d2693813eb5271a3448e6a082322c7d75d (patch) | |
tree | b591ca73c85276bae53d7db57ff1565be45a29da /drivers/staging/octeon | |
parent | Merge branch 'next' of git://git.infradead.org/users/pcmoore/selinux into next (diff) | |
parent | Linux 3.15 (diff) | |
download | linux-dev-f01387d2693813eb5271a3448e6a082322c7d75d.tar.xz linux-dev-f01387d2693813eb5271a3448e6a082322c7d75d.zip |
Merge commit 'v3.15' into next
Diffstat (limited to 'drivers/staging/octeon')
-rw-r--r-- | drivers/staging/octeon/ethernet-defines.h | 4 | ||||
-rw-r--r-- | drivers/staging/octeon/ethernet-mdio.c | 20 | ||||
-rw-r--r-- | drivers/staging/octeon/ethernet-mem.c | 11 | ||||
-rw-r--r-- | drivers/staging/octeon/ethernet-rgmii.c | 23 | ||||
-rw-r--r-- | drivers/staging/octeon/ethernet-tx.c | 8 | ||||
-rw-r--r-- | drivers/staging/octeon/ethernet.c | 10 | ||||
-rw-r--r-- | drivers/staging/octeon/octeon-ethernet.h | 2 |
7 files changed, 36 insertions, 42 deletions
diff --git a/drivers/staging/octeon/ethernet-defines.h b/drivers/staging/octeon/ethernet-defines.h index bdaec8d2ca0c..2a98a2153e16 100644 --- a/drivers/staging/octeon/ethernet-defines.h +++ b/drivers/staging/octeon/ethernet-defines.h @@ -33,10 +33,6 @@ * driver will use this memory instead of kernel memory for pools. This * allows 32bit userspace application to access the buffers, but also * requires all received packets to be copied. - * CONFIG_CAVIUM_OCTEON_NUM_PACKET_BUFFERS - * This kernel config option allows the user to control the number of - * packet and work queue buffers allocated by the driver. If this is zero, - * the driver uses the default from below. * USE_SKBUFFS_IN_HW * Tells the driver to populate the packet buffers with kernel skbuffs. * This allows the driver to receive packets without copying them. It also diff --git a/drivers/staging/octeon/ethernet-mdio.c b/drivers/staging/octeon/ethernet-mdio.c index 83b103091cf2..3f067f189b3d 100644 --- a/drivers/staging/octeon/ethernet-mdio.c +++ b/drivers/staging/octeon/ethernet-mdio.c @@ -127,23 +127,21 @@ static void cvm_oct_adjust_link(struct net_device *dev) link_info.s.link_up = priv->last_link ? 1 : 0; link_info.s.full_duplex = priv->phydev->duplex ? 1 : 0; link_info.s.speed = priv->phydev->speed; - cvmx_helper_link_set( priv->port, link_info); + cvmx_helper_link_set(priv->port, link_info); if (priv->last_link) { netif_carrier_on(dev); if (priv->queue != -1) printk_ratelimited("%s: %u Mbps %s duplex, " - "port %2d, queue %2d\n", - dev->name, priv->phydev->speed, - priv->phydev->duplex ? - "Full" : "Half", - priv->port, priv->queue); + "port %2d, queue %2d\n", dev->name, + priv->phydev->speed, + priv->phydev->duplex ? "Full" : "Half", + priv->port, priv->queue); else printk_ratelimited("%s: %u Mbps %s duplex, " - "port %2d, POW\n", - dev->name, priv->phydev->speed, - priv->phydev->duplex ? - "Full" : "Half", - priv->port); + "port %2d, POW\n", dev->name, + priv->phydev->speed, + priv->phydev->duplex ? "Full" : "Half", + priv->port); } else { netif_carrier_off(dev); printk_ratelimited("%s: Link down\n", dev->name); diff --git a/drivers/staging/octeon/ethernet-mem.c b/drivers/staging/octeon/ethernet-mem.c index 199059d64c9b..bf666b023190 100644 --- a/drivers/staging/octeon/ethernet-mem.c +++ b/drivers/staging/octeon/ethernet-mem.c @@ -30,6 +30,7 @@ #include <asm/octeon/octeon.h> +#include "ethernet-mem.h" #include "ethernet-defines.h" #include <asm/octeon/cvmx-fpa.h> @@ -79,10 +80,10 @@ static void cvm_oct_free_hw_skbuff(int pool, int size, int elements) } while (memory); if (elements < 0) - pr_warning("Freeing of pool %u had too many skbuffs (%d)\n", + pr_warn("Freeing of pool %u had too many skbuffs (%d)\n", pool, elements); else if (elements > 0) - pr_warning("Freeing of pool %u is missing %d skbuffs\n", + pr_warn("Freeing of pool %u is missing %d skbuffs\n", pool, elements); } @@ -113,7 +114,7 @@ static int cvm_oct_fill_hw_memory(int pool, int size, int elements) */ memory = kmalloc(size + 256, GFP_ATOMIC); if (unlikely(memory == NULL)) { - pr_warning("Unable to allocate %u bytes for FPA pool %d\n", + pr_warn("Unable to allocate %u bytes for FPA pool %d\n", elements * size, pool); break; } @@ -146,10 +147,10 @@ static void cvm_oct_free_hw_memory(int pool, int size, int elements) } while (fpa); if (elements < 0) - pr_warning("Freeing of pool %u had too many buffers (%d)\n", + pr_warn("Freeing of pool %u had too many buffers (%d)\n", pool, elements); else if (elements > 0) - pr_warning("Warning: Freeing of pool %u is missing %d buffers\n", + pr_warn("Warning: Freeing of pool %u is missing %d buffers\n", pool, elements); } diff --git a/drivers/staging/octeon/ethernet-rgmii.c b/drivers/staging/octeon/ethernet-rgmii.c index ea53af30dfa7..0ec0da328215 100644 --- a/drivers/staging/octeon/ethernet-rgmii.c +++ b/drivers/staging/octeon/ethernet-rgmii.c @@ -43,7 +43,7 @@ #include <asm/octeon/cvmx-npi-defs.h> #include <asm/octeon/cvmx-gmxx-defs.h> -DEFINE_SPINLOCK(global_register_lock); +static DEFINE_SPINLOCK(global_register_lock); static int number_rgmii_ports; @@ -72,7 +72,8 @@ static void cvm_oct_rgmii_poll(struct net_device *dev) * If the 10Mbps preamble workaround is supported and we're * at 10Mbps we may need to do some special checking. */ - if (USE_10MBPS_PREAMBLE_WORKAROUND && (link_info.s.speed == 10)) { + if (USE_10MBPS_PREAMBLE_WORKAROUND && + (link_info.s.speed == 10)) { /* * Read the GMXX_RXX_INT_REG[PCTERR] bit and @@ -166,9 +167,8 @@ static void cvm_oct_rgmii_poll(struct net_device *dev) if (use_global_register_lock) spin_unlock_irqrestore(&global_register_lock, flags); - else { + else mutex_unlock(&priv->phydev->bus->mdio_lock); - } if (priv->phydev == NULL) { /* Tell core. */ @@ -232,8 +232,10 @@ static irqreturn_t cvm_oct_rgmii_rml_interrupt(int cpl, void *dev_id) (interface, index)]; struct octeon_ethernet *priv = netdev_priv(dev); - if (dev && !atomic_read(&cvm_oct_poll_queue_stopping)) - queue_work(cvm_oct_poll_queue, &priv->port_work); + if (dev && + !atomic_read(&cvm_oct_poll_queue_stopping)) + queue_work(cvm_oct_poll_queue, + &priv->port_work); gmx_rx_int_reg.u64 = 0; gmx_rx_int_reg.s.phy_dupx = 1; @@ -274,8 +276,10 @@ static irqreturn_t cvm_oct_rgmii_rml_interrupt(int cpl, void *dev_id) (interface, index)]; struct octeon_ethernet *priv = netdev_priv(dev); - if (dev && !atomic_read(&cvm_oct_poll_queue_stopping)) - queue_work(cvm_oct_poll_queue, &priv->port_work); + if (dev && + !atomic_read(&cvm_oct_poll_queue_stopping)) + queue_work(cvm_oct_poll_queue, + &priv->port_work); gmx_rx_int_reg.u64 = 0; gmx_rx_int_reg.s.phy_dupx = 1; @@ -327,7 +331,8 @@ int cvm_oct_rgmii_stop(struct net_device *dev) static void cvm_oct_rgmii_immediate_poll(struct work_struct *work) { - struct octeon_ethernet *priv = container_of(work, struct octeon_ethernet, port_work); + struct octeon_ethernet *priv = + container_of(work, struct octeon_ethernet, port_work); cvm_oct_rgmii_poll(cvm_oct_device[priv->port]); } diff --git a/drivers/staging/octeon/ethernet-tx.c b/drivers/staging/octeon/ethernet-tx.c index 47541e1608f3..4e54d8540219 100644 --- a/drivers/staging/octeon/ethernet-tx.c +++ b/drivers/staging/octeon/ethernet-tx.c @@ -95,7 +95,7 @@ static void cvm_oct_kick_tx_poll_watchdog(void) cvmx_write_csr(CVMX_CIU_TIMX(1), ciu_timx.u64); } -void cvm_oct_free_tx_skbs(struct net_device *dev) +static void cvm_oct_free_tx_skbs(struct net_device *dev) { int32_t skb_to_free; int qos, queues_per_port; @@ -554,7 +554,7 @@ int cvm_oct_xmit_pow(struct sk_buff *skb, struct net_device *dev) printk_ratelimited("%s: Failed to allocate a work queue entry\n", dev->name); priv->stats.tx_dropped++; - dev_kfree_skb(skb); + dev_kfree_skb_any(skb); return 0; } @@ -565,7 +565,7 @@ int cvm_oct_xmit_pow(struct sk_buff *skb, struct net_device *dev) dev->name); cvmx_fpa_free(work, CVMX_FPA_WQE_POOL, DONT_WRITEBACK(1)); priv->stats.tx_dropped++; - dev_kfree_skb(skb); + dev_kfree_skb_any(skb); return 0; } @@ -682,7 +682,7 @@ int cvm_oct_xmit_pow(struct sk_buff *skb, struct net_device *dev) work->grp); priv->stats.tx_packets++; priv->stats.tx_bytes += skb->len; - dev_kfree_skb(skb); + dev_consume_skb_any(skb); return 0; } diff --git a/drivers/staging/octeon/ethernet.c b/drivers/staging/octeon/ethernet.c index 089dc4b9efd4..ff7214aac9dd 100644 --- a/drivers/staging/octeon/ethernet.c +++ b/drivers/staging/octeon/ethernet.c @@ -55,17 +55,11 @@ #include <asm/octeon/cvmx-gmxx-defs.h> #include <asm/octeon/cvmx-smix-defs.h> -#if defined(CONFIG_CAVIUM_OCTEON_NUM_PACKET_BUFFERS) \ - && CONFIG_CAVIUM_OCTEON_NUM_PACKET_BUFFERS -int num_packet_buffers = CONFIG_CAVIUM_OCTEON_NUM_PACKET_BUFFERS; -#else -int num_packet_buffers = 1024; -#endif +static int num_packet_buffers = 1024; module_param(num_packet_buffers, int, 0444); MODULE_PARM_DESC(num_packet_buffers, "\n" "\tNumber of packet buffers to allocate and store in the\n" - "\tFPA. By default, 1024 packet buffers are used unless\n" - "\tCONFIG_CAVIUM_OCTEON_NUM_PACKET_BUFFERS is defined."); + "\tFPA. By default, 1024 packet buffers are used.\n"); int pow_receive_group = 15; module_param(pow_receive_group, int, 0444); diff --git a/drivers/staging/octeon/octeon-ethernet.h b/drivers/staging/octeon/octeon-ethernet.h index 9360e22e0739..4cf3884070fa 100644 --- a/drivers/staging/octeon/octeon-ethernet.h +++ b/drivers/staging/octeon/octeon-ethernet.h @@ -58,7 +58,7 @@ struct octeon_ethernet { /* Last negotiated link state */ uint64_t link_info; /* Called periodically to check link status */ - void (*poll) (struct net_device *dev); + void (*poll)(struct net_device *dev); struct delayed_work port_periodic_work; struct work_struct port_work; /* may be unused. */ struct device_node *of_node; |