1. 11 8月, 2011 5 次提交
    • R
      bna: Add New HW Defs · 6849c6b3
      Rasesh Mody 提交于
      Change details:
       - Add new file bna_hw_defs.h to support new code MSGQ, ENET and TX RX redign.
         This makes bna_hw.h obsolete and is removed in a later patch. bna_hw_defs.h
         removes all unused HW register definition that were part of bna_hw.h.
      Signed-off-by: NRasesh Mody <rmody@brocade.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6849c6b3
    • R
      bna: Tx and Rx Redesign · f3bd5173
      Rasesh Mody 提交于
      Change details:
       - This patch contains the changes as a result of redesigning of Tx, Rx data
         path setup. In the old design, setting up Txqs, Rxqs were done in the driver.
         With the new design, most of the hardware setup steps for the Txq, Rxqs are
         moved to FW. Host driver issues commands to FW through the message queue to
         setup/teardown tx, rx data path. FW performs necessary steps and responds
         back to the driver with a status.
       - As a result of this redesign, the state machine implementation for Tx, Rx
         objects have changed significantly. Instead of doing the raw register access,
         these state machines mostly send a command to FW and wait for response and
         take the next action. In addition to tx, rx datapath setup, this patch also
         deals with rx filter configuration - such as unicast address, multicast
         address, vlan filter, promiscuous mode etc.
      Signed-off-by: NRasesh Mody <rmody@brocade.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f3bd5173
    • R
      bna: Introduce ENET as New Driver and FW Interface · 45979c1e
      Rasesh Mody 提交于
      Change details:
       - This patch contains the messages, opcodes and structure format for the
         messages and responses exchanged between driver and the FW. In addition
         this patch contains the state machine implementation for Ethport, Enet,
         IOCEth.
       - Ethport object is responsible for receiving link state events, sending
         port enable/disable commands to FW.
       - Enet object is responsible for synchronizing initialization/teardown of
         tx & rx datapath configuration.
       - IOCEth object is responsible for init/un-init of IO Controller in the
         adapter which runs the FW.
       - This patch also contains code for initialization and resource assignment
         for Ethport, Enet, IOCEth, Tx, Rx objects.
      Signed-off-by: NRasesh Mody <rmody@brocade.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      45979c1e
    • R
      bna: MSGQ Implementation · af027a34
      Rasesh Mody 提交于
      Change details:
       - Currently modules communicate with the FW using 32 byte command and
         response register. This limits the size of the command and response
         messages exchanged with the FW to 32 bytes. We need a mechanism to
         exchange the comamnds and responses exchange with FW that exceeds 32 bytes.
      
       - MSGQ implementation provides that facility. It removes the assumption that
         command/response queue size is precisely calculated to accommodate all
         concurrent FW commands/responses. The queue depth is made variable now, defined
         by a macro. A waiting command list is implemented to hold all the commands
         when there is no place in the command queue. Callback is implemented for
         each command entry to invoke the module posting the command, when there is
         space in the command queue and the command was finally posted to the queue.
         Module/Object information is embedded in the response for tracking purpose.
      Signed-off-by: NRasesh Mody <rmody@brocade.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      af027a34
    • J
      bna: Move the Brocade driver · f844a0ea
      Jeff Kirsher 提交于
      Moves the Brocade driver into drivers/net/ethernet/brocade/ and make
      the necessary Kconfig and Makefile changes.
      
      CC: Rasesh Mody <rmody@brocade.com>
      CC: Debashis Dutt <ddutt@brocade.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      f844a0ea