1. 13 8月, 2009 1 次提交
    • E
      bnx2x: Using the new FW · ca00392c
      Eilon Greenstein 提交于
      The new FW improves the packets per second rate. It required a lot of change in
      the FW which implies many changes in the driver to support it. It is now also
      possible for the driver to use a separate MSI-X vector for Rx and Tx - this also
      add some to the complicity of this change.
      
      All things said - after this patch, practically all performance matrixes show
      improvement.
      Though Vladislav Zolotarov is not signed on this patch, he did most of the job
      and deserves credit for that.
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ca00392c
  2. 09 7月, 2009 1 次提交
  3. 04 6月, 2009 1 次提交
  4. 02 5月, 2009 1 次提交
  5. 27 4月, 2009 1 次提交
    • V
      bnx2x: Separated FW from the source. · 94a78b79
      Vladislav Zolotarov 提交于
      >From now on FW will be downloaded from the binary file using request_firmware.
      
      There will be different files for every supported chip. Currently 57710 (e1) and
      57711 (e1h).
      
      File names have the following format: bnx2x-<chip version>-<FW version>.fw.
      ihex versions of current FW files are submitted in the next patch.
      
      Each binary file has a header in the following format:
      
      
      struct bnx2x_fw_file_section {
      	__be32 len;
      	__be32 offset;
      }
      
      struct bnx2x_fw_file_hdr {
      	struct bnx2x_fw_file_section init_ops;
      	struct bnx2x_fw_file_section init_ops_offsets;
      	struct bnx2x_fw_file_section init_data;
      	struct bnx2x_fw_file_section tsem_int_table_data;
      	struct bnx2x_fw_file_section tsem_pram_data;
      	struct bnx2x_fw_file_section usem_int_table_data;
      	struct bnx2x_fw_file_section usem_pram_data;
      	struct bnx2x_fw_file_section csem_int_table_data;
      	struct bnx2x_fw_file_section csem_pram_data;
      	struct bnx2x_fw_file_section xsem_int_table_data;
      	struct bnx2x_fw_file_section xsem_pram_data;
      	struct bnx2x_fw_file_section fw_version;
      }
      
      Each bnx2x_fw_file_section contains the length and the offset of the appropriate
      section in the binary file. Values are stored in the big endian format.
      
      Data types of arrays:
      
      init_data            __be32
      init_ops_offsets     __be16
      XXsem_pram_data         u8
      XXsem_int_table_data    u8
      init_ops             struct raw_op {
                                u8   op;
      			__be24 offset;
                              __be32 data;
      		     }
      fw_version              u8
      
      >From now boundaries of a specific initialization stage are stored in
      init_ops_offsets array instead of being defined by separate macroes. The index 
      in init_ops_offsets is calculated by BLOCK_OPS_IDX macro:
      
      #define BLOCK_OPS_IDX(block, stage, end) \
             (2*(((block)*STAGE_IDX_MAX) + (stage)) + (end))
      
      Security:
      
      In addition to sanity check of array boundaries bnx2x will check a FW version.
      Additional checks might be added in the future.
      Signed-off-by: NVladislav Zolotarov <vladz@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      94a78b79
  6. 21 4月, 2009 1 次提交
  7. 07 4月, 2009 5 次提交
  8. 05 4月, 2009 2 次提交
  9. 04 4月, 2009 2 次提交
  10. 03 4月, 2009 3 次提交
  11. 30 3月, 2009 3 次提交
  12. 14 3月, 2009 1 次提交
  13. 27 2月, 2009 2 次提交
  14. 13 1月, 2009 1 次提交
  15. 08 1月, 2009 2 次提交
    • J
      firmware: convert e100 driver to request_firmware() · 9ac32e1b
      Jaswinder Singh Rajput 提交于
      Thanks to David Woodhouse for help.
      Signed-off-by: NJaswinder Singh Rajput <jaswinderrajput@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9ac32e1b
    • S
      fix modules_install via NFS · 8b249b68
      Sam Ravnborg 提交于
      Rafael reported:
      
      I get the following error from 'make modules_install' on my test boxes:
      
        HOSTCC  firmware/ihex2fw
      /home/rafael/src/linux-2.6/firmware/ihex2fw.c:268: fatal error: opening dependency file firmware/.ihex2fw.d: Read-only file system
      compilation terminated.
      make[3]: *** [firmware/ihex2fw] Error 1
      make[2]: *** [_modinst_post] Error 2
      make[1]: *** [sub-make] Error 2
      make: *** [all] Error 2
      
      where the configuration is that the kernel is compiled on a build box
      with 'make O=<destdir> -j5' and then <destdir> is mounted over NFS read-only by
      each test box (full path to this directory is the same on the build box and on
      the test boxes).  Then, I cd into <destdir>, run 'make modules_install' and get
      the error above.
      
      The issue turns out to be that we when we install firmware pick
      up the list of firmware blobs from firmware/Makefile.
      And this triggers the Makefile rules to update ihex2fw.
      
      There were two solutions for this issue:
      1) Move the list of firmware blobs to a separate file
      2) Avoid ihex2fw rebuild by moving it to scripts
      
      As I seriously beleive that the list of firmware blobs should be
      done in a fundamental different way solution 2) was selected.
      Reported-and-tested-by: N"Rafael J. Wysocki" <rjw@sisk.pl>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: David Woodhouse <dwmw2@infradead.org>
      8b249b68
  16. 05 1月, 2009 3 次提交
  17. 30 12月, 2008 1 次提交
  18. 27 11月, 2008 1 次提交
  19. 23 9月, 2008 1 次提交
  20. 02 9月, 2008 1 次提交
  21. 16 7月, 2008 1 次提交
  22. 15 7月, 2008 5 次提交