1. 11 10月, 2007 3 次提交
    • J
      ehea: DLPAR memory add fix · 2c69448b
      Jan-Bernd Themann 提交于
      Due to stability issues in high load situations the HW queue handling
      has to be changed. The HW queues are now stopped and restarted again instead
      of destroying and allocating new HW queues.
      Signed-off-by: NJan-Bernd Themann <themann@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      2c69448b
    • J
      [EHEA]: Use LRO. · d4dc4ec9
      Jan-Bernd Themann 提交于
      Signed-off-by: NJan-Bernd Themann <themann@de.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d4dc4ec9
    • S
      [NET]: Make NAPI polling independent of struct net_device objects. · bea3348e
      Stephen Hemminger 提交于
      Several devices have multiple independant RX queues per net
      device, and some have a single interrupt doorbell for several
      queues.
      
      In either case, it's easier to support layouts like that if the
      structure representing the poll is independant from the net
      device itself.
      
      The signature of the ->poll() call back goes from:
      
      	int foo_poll(struct net_device *dev, int *budget)
      
      to
      
      	int foo_poll(struct napi_struct *napi, int budget)
      
      The caller is returned the number of RX packets processed (or
      the number of "NAPI credits" consumed if you want to get
      abstract).  The callee no longer messes around bumping
      dev->quota, *budget, etc. because that is all handled in the
      caller upon return.
      
      The napi_struct is to be embedded in the device driver private data
      structures.
      
      Furthermore, it is the driver's responsibility to disable all NAPI
      instances in it's ->stop() device close handler.  Since the
      napi_struct is privatized into the driver's private data structures,
      only the driver knows how to get at all of the napi_struct instances
      it may have per-device.
      
      With lots of help and suggestions from Rusty Russell, Roland Dreier,
      Michael Chan, Jeff Garzik, and Jamal Hadi Salim.
      
      Bug fixes from Thomas Graf, Roland Dreier, Peter Zijlstra,
      Joseph Fannin, Scott Wood, Hans J. Koch, and Michael Chan.
      
      [ Ported to current tree and all drivers converted.  Integrated
        Stephen's follow-on kerneldoc additions, and restored poll_list
        handling to the old style to fix mutual exclusion issues.  -DaveM ]
      Signed-off-by: NStephen Hemminger <shemminger@linux-foundation.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bea3348e
  2. 13 9月, 2007 1 次提交
    • J
      ehea: propagate physical port state · 8759cf76
      Jan-Bernd Themann 提交于
      Introduces a module parameter to decide whether the physical
      port link state is propagated to the network stack or not.
      It makes sense not to take the physical port state into account
      on machines with more logical partitions that communicate
      with each other. This is always possible no matter what the physical
      port state is. Thus eHEA can be considered as a switch there.
      Signed-off-by: NJan-Bernd Themann <themann@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      8759cf76
  3. 08 8月, 2007 1 次提交
  4. 25 7月, 2007 1 次提交
  5. 19 7月, 2007 1 次提交
    • T
      eHEA: Fix bonding support · f9e29228
      Thomas Klein 提交于
      The driver didn't allow an interface's MAC address to be modified if the
      respective interface wasn't setup - a failing Hcall was the result. Thus
      bonding wasn't usable. The fix moves the failing Hcall which was registering
      a MAC address for the reception of BC packets in firmware from the port up
      and down functions to the port resources setup functions. Additionally the
      missing update of the last_rx member of the netdev structure was added.
      Signed-off-by: NThomas Klein <tklein@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      f9e29228
  6. 17 7月, 2007 1 次提交
    • T
      eHEA: Introducing support vor DLPAR memory add · 44c82152
      Thomas Klein 提交于
      This patch adds support for DLPAR memory add to the eHEA driver. To detect
      whether memory was added the driver uses its own memory mapping table and
      checks for kernel addresses whether they're located in already known memory
      sections. If not the function ehea_rereg_mrs() is triggered which performs
      a rebuild of the mapping table and a re-registration of the global memory
      region.
      Signed-off-by: NThomas Klein <tklein@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      44c82152
  7. 11 7月, 2007 1 次提交
  8. 09 7月, 2007 1 次提交
  9. 10 6月, 2007 1 次提交
  10. 30 5月, 2007 1 次提交
  11. 28 4月, 2007 7 次提交
  12. 10 2月, 2007 1 次提交
  13. 30 1月, 2007 1 次提交
  14. 23 1月, 2007 1 次提交
  15. 06 11月, 2006 1 次提交
  16. 11 10月, 2006 1 次提交
  17. 19 9月, 2006 1 次提交
    • J
      [PATCH] ehea: bugfix for register access functions · 53ccce23
      Jan-Bernd Themann 提交于
      Hi Jeff,
      
      sorry to bother you again. We figured out that the readq function we
      included in the eHEA patch we sent yesterday to access eHEA registers
      is defined as little endian on POWER. This collides with our adapter.
      We talked to some PPC people who told us there is a discussion going
      on about new access functions. We were told to use __raw_readq /
      __raw_writeq for now.
      
      This patch fixes this bug found by our internal tests today.
      Please apply this small patch on the latest patch we sent you yesterday.
      If it is easier for you I can also give you the entire eHEA patch again.
      
      sorry and thanks a lot,
      Jan-Bernd
      Signed-off-by: NJan-Bernd Themann <themann@de.ibm.com>
      
       drivers/net/ehea/ehea.h    |    2 +-
       drivers/net/ehea/ehea_hw.h |   11 ++++++++---
       2 files changed, 9 insertions(+), 4 deletions(-)
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      53ccce23
  18. 14 9月, 2006 1 次提交
    • J
      [PATCH] ehea: IBM eHEA Ethernet Device Driver · 7a291083
      Jan-Bernd Themann 提交于
      Hi Jeff,
      
      I fixed the __iomem issue and tested the driver with sparse. Looks good so far.
      Thanks for your effort.
      
      Jan-Bernd Themann
      Signed-off-by: NJan-Bernd Themann <themann@de.ibm.com>
      
       drivers/net/Kconfig             |    9
       drivers/net/Makefile            |    1
       drivers/net/ehea/Makefile       |    6
       drivers/net/ehea/ehea.h         |  447 ++++++
       drivers/net/ehea/ehea_ethtool.c |  294 ++++
       drivers/net/ehea/ehea_hcall.h   |   51
       drivers/net/ehea/ehea_hw.h      |  287 ++++
       drivers/net/ehea/ehea_main.c    | 2654 ++++++++++++++++++++++++++++++++++++++++
       drivers/net/ehea/ehea_phyp.c    |  705 ++++++++++
       drivers/net/ehea/ehea_phyp.h    |  455 ++++++
       drivers/net/ehea/ehea_qmr.c     |  582 ++++++++
       drivers/net/ehea/ehea_qmr.h     |  358 +++++
       12 files changed, 5849 insertions(+)
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      7a291083