1. 27 Apr, 2009 1 commit
    • Vladislav Zolotarov's avatar
      bnx2x: Separated FW from the source. · 0eae2a4d
      Vladislav Zolotarov authored
      
      
      >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: default avatarVladislav Zolotarov <vladz@broadcom.com>
      Signed-off-by: default avatarEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0eae2a4d
  2. 21 Apr, 2009 1 commit
  3. 10 Apr, 2009 1 commit
    • Linus Torvalds's avatar
      Merge git://git.infradead.org/~dwmw2/firmware-2.6 · aeb537e9
      Linus Torvalds authored
      * git://git.infradead.org/~dwmw2/firmware-2.6:
        qla1280: Fix off-by-some error in firmware loading.
        Add README.AddingFirmware file. Basically telling people not to.
        firmware: Remove newly-added slicoss and sxg firmware images
        firmware/WHENCE: Add missing origin information for Ambassador atmsar11.fw
        ALSA: wavefront - Always use request_firmware()
        Remove fdump tool for av7110 firmware
        firmware: convert av7110 driver to request_firmware()
        Partially revert "V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card"
        Revert "fix modules_install via NFS"
      
      Add-add conflicts in firmware/WHENCE fixed manually
      aeb537e9
  4. 07 Apr, 2009 3 commits
    • David Woodhouse's avatar
      firmware: Remove newly-added slicoss and sxg firmware images · ed7331ed
      David Woodhouse authored
      
      
      These are available elsewhere (for example in the linux-firmware.git
      repository); they have no business being added to the kernel source
      tree.
      
      We are only putting stuff in the firmware/ directory of the kernel
      source when it's extracted from long-standing drivers which used to
      include it directly.
      
      We didn't intend to open the floodgates to including megabytes of new
      firmware which was previously being distributed separately.
      Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
      ed7331ed
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 · bfe8ff32
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
        b44: Use kernel DMA addresses for the kernel DMA API
        forcedeth: Fix resume from hibernation regression.
        xfrm: fix fragmentation on inter family tunnels
        ibm_newemac: Fix dangerous struct assumption
        gigaset: documentation update
        gigaset: in file ops, check for device disconnect before anything else
        bas_gigaset: use tasklet_hi_schedule for timing critical tasklets
        net/802/fddi.c: add MODULE_LICENSE
        smsc911x: remove unused #include <linux/version.h>
        axnet_cs: fix phy_id detection for bogus Asix chip.
        bnx2: Use request_firmware()
        b44: Fix sizes passed to b44_sync_dma_desc_for_{device,cpu}()
        socket: use percpu_add() while updating sockets_in_use
        virtio_net: Set the mac config only when VIRITO_NET_F_MAC
        myri_sbus: use request_firmware
        e1000: fix loss of multicast packets
        vxge: should include tcp.h
      
      Conflict in firmware/WHENCE (SCSI vs net firmware)
      bfe8ff32
    • David Woodhouse's avatar
      firmware/WHENCE: Add missing origin information for Ambassador atmsar11.fw · 43e79a44
      David Woodhouse authored
      
      
      Looks like we forgot to update WHENCE when we converted this driver.
      Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
      43e79a44
  5. 06 Apr, 2009 3 commits
  6. 04 Apr, 2009 2 commits
  7. 03 Apr, 2009 6 commits
  8. 30 Mar, 2009 3 commits
  9. 13 Mar, 2009 1 commit
  10. 27 Feb, 2009 2 commits
  11. 13 Jan, 2009 1 commit
  12. 08 Jan, 2009 1 commit
  13. 07 Jan, 2009 1 commit
  14. 06 Jan, 2009 1 commit
  15. 05 Jan, 2009 3 commits
  16. 26 Nov, 2008 1 commit
  17. 23 Sep, 2008 1 commit
  18. 14 Jul, 2008 7 commits
  19. 10 Jul, 2008 1 commit