1. 21 3月, 2013 6 次提交
    • C
      gianfar: Poll only active Rx queues · 6be5ed3f
      Claudiu Manoil 提交于
      Split the napi budget fairly among the active queues only, instead
      of dividing it by the total number of Rx queues assigned to the
      given interrupt group.
      Use the h/w indication field RXFi in rstat (receive status register)
      to identify the active rx queues from the current interrupt group
      (i.e. receive event occured on ring i, if ring i is part of the current
      interrupt group). This indication field in rstat, RXFi i=0..7,
      allows us to find out on which queues of the same interrupt group
      do we have incomming traffic once we entered the polling routine for
      the given interrupt group. After servicing the ring i, the corresponding
      bit RXFi will be written with 1 to clear the active queue indication for
      that ring.
      Signed-off-by: NClaudiu Manoil <claudiu.manoil@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6be5ed3f
    • C
      gianfar: Fix tx napi polling · c233cf40
      Claudiu Manoil 提交于
      There are 2 issues with the current napi poll routine, with regards
      to tx ring cleanup:
      1) for multi-queue devices (MQ_MG_MODE), should tx_bit_map != rx_bit_map,
      which is possible (and supported in h/w) if the DT property "fsl,tx-bit-map"
      holds a different value than rx_bit_map, the current polling routine will
      service the wrong Tx queues in this case (i.e. the interrupt group will
      receive interrupts from tx queues that it will not service)
      2) Tx cleanup completion consumes napi budget, whereas the napi budget
      should be reserved for Rx work only.
      
      The patch fixes these issues and provides a clean napi polling routine.
      Napi poll completion is reached when all the Rx queues have been
      serviced and there is no Tx work to do.
      Signed-off-by: NClaudiu Manoil <claudiu.manoil@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c233cf40
    • F
      net: fec: Define indexes as 'unsigned int' · da2191e3
      Fabio Estevam 提交于
      Fix the following warnings that happen when building with W=1 option:
      
      drivers/net/ethernet/freescale/fec.c: In function 'fec_enet_free_buffers':
      drivers/net/ethernet/freescale/fec.c:1337:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
      drivers/net/ethernet/freescale/fec.c: In function 'fec_enet_alloc_buffers':
      drivers/net/ethernet/freescale/fec.c:1361:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
      drivers/net/ethernet/freescale/fec.c: In function 'fec_enet_init':
      drivers/net/ethernet/freescale/fec.c:1631:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
      Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      da2191e3
    • W
      lpc_eth: fix error return code in lpc_eth_drv_probe() · fa90b077
      Wei Yongjun 提交于
      Fix to return a negative error code from the error handling
      case instead of 0, as returned elsewhere in this function.
      Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fa90b077
    • S
      sh_eth: check TSU registers ioremap() error · fc0c0900
      Sergei Shtylyov 提交于
      One must check the result of ioremap() -- in this case it prevents potential
      kernel oops when initializing TSU registers further on...
      Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fc0c0900
    • S
      sh_eth: fix bitbang memory leak · 0582b7d1
      Sergei Shtylyov 提交于
      sh_mdio_init() allocates pointer to 'struct bb_info' but only stores it locally,
      so that sh_mdio_release() can't free it on driver unload.  Add the pointer to
      'struct bb_info' to 'struct sh_eth_private', so that sh_mdio_init() can save
      'bitbang' variable for sh_mdio_release() to be able to free it later...
      Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0582b7d1
  2. 19 3月, 2013 12 次提交
  3. 18 3月, 2013 8 次提交
  4. 17 3月, 2013 1 次提交
  5. 15 3月, 2013 8 次提交
  6. 14 3月, 2013 5 次提交