04 Jun, 2009

1 commit


03 Jun, 2009

1 commit


30 May, 2009

1 commit


02 May, 2009

1 commit


27 Apr, 2009

2 commits

  • >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--.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: Vladislav Zolotarov
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Vladislav Zolotarov
     
  • Signed-off-by: Vladislav Zolotarov
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Vladislav Zolotarov
     

21 Apr, 2009

1 commit


11 Apr, 2009

1 commit

  • * 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

    Linus Torvalds
     

07 Apr, 2009

9 commits

  • Signed-off-by: David Woodhouse

    David Woodhouse
     
  • 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: David Woodhouse

    David Woodhouse
     
  • * 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
    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)

    Linus Torvalds
     
  • Looks like we forgot to update WHENCE when we converted this driver.

    Signed-off-by: David Woodhouse

    David Woodhouse
     
  • Always use request_firmware() for loading yss225_registers image.

    Signed-off-by: Takashi Iwai
    Signed-off-by: David Woodhouse

    Takashi Iwai
     
  • Signed-off-by: Jaswinder Singh
    Signed-off-by: David Woodhouse

    Jaswinder Singh
     
  • This reverts a hunk of commit 4b29631db33292d416dc395c56122ea865e7635c
    which seems to have been an accident, and which re-introduced a
    previously fixed bug.

    Signed-off-by: David Woodhouse

    David Woodhouse
     
  • This reverts commit 8b249b6856f16f09b0e5b79ce5f4d435e439b9d6.

    This 'fix' is not necessary; we just need to undo the damage caused
    accidentally by Igor/Mauro in 4b29631db33292d416dc395c56122ea865e7635c
    ("V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card")

    Signed-off-by: David Woodhouse

    David Woodhouse
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (74 commits)
    [SCSI] sg: fix q->queue_lock on scsi_error_handler path
    [SCSI] replace __inline with inline
    [SCSI] a2091: make 2 functions static
    [SCSI] a3000: make 2 functions static
    [SCSI] ses: #if 0 the unused ses_match_host()
    [SCSI] use kmem_cache_zalloc instead of kmem_cache_alloc/memset
    [SCSI] sg: fix iovec bugs introduced by the block layer conversion
    [SCSI] qlogicpti: use request_firmware
    [SCSI] advansys: use request_firmware
    [SCSI] qla1280: use request_firmware
    [SCSI] libiscsi: fix iscsi pool error path
    [SCSI] cxgb3i: call ddp release function directly
    [SCSI] cxgb3i: merge cxgb3i_ddp into cxgb3i module
    [SCSI] cxgb3i: close all tcp connections upon chip reset
    [SCSI] cxgb3i: re-read ddp settings information after chip reset
    [SCSI] cxgb3i: re-initialize ddp settings after chip reset
    [SCSI] cxgb3i: subscribe to error notification from cxgb3 driver
    [SCSI] aacraid driver update
    [SCSI] mptsas: remove unneeded check
    [SCSI] config: Make need for SCSI_CDROM clearer
    ...

    Linus Torvalds
     

05 Apr, 2009

2 commits

  • Based on original patch by Ben Hutchings and
    Bastian Blank , with the following main changes:

    Separated the mips firmware and rv2p firmware into different files
    to make it easier to update them separately.

    Added some code to fixup the rv2p code with run-time information
    such as PAGE_SIZE.

    Update version to 2.0.0.

    Signed-off-by: Michael Chan
    Signed-off-by: David S. Miller

    Michael Chan
     
  • Firmware blob looks like this...

    __be16 lanai4_data_size
    unsigned char lanai4_code[]

    Signed-off-by: Jaswinder Singh Rajput
    Signed-off-by: David S. Miller

    Jaswinder Singh Rajput
     

04 Apr, 2009

3 commits


03 Apr, 2009

3 commits


30 Mar, 2009

3 commits


14 Mar, 2009

1 commit


27 Feb, 2009

2 commits


13 Jan, 2009

1 commit

  • Add the Multi-Tech cellular modem firmware to the TI USB serial driver.
    This firmware was extracted from:

    ftp://ftp.multitech.com/wireless/wireless_linux.zip

    Firmware licence: "all firmware components are redistributable in binary
    form" per support@multitech.com
    Copyright (C) 2005 Multi-Tech Systems, Inc.

    Signed-off-by: Chris Adams
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Chris Adams
     

09 Jan, 2009

1 commit


08 Jan, 2009

2 commits

  • Thanks to David Woodhouse for help.

    Signed-off-by: Jaswinder Singh Rajput
    Signed-off-by: David S. Miller

    Jaswinder Singh Rajput
     
  • 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= -j5' and then 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 , 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: "Rafael J. Wysocki"
    Signed-off-by: Sam Ravnborg
    Cc: David Woodhouse

    Sam Ravnborg
     

07 Jan, 2009

1 commit

  • Make firmware/dsp56k/bootstrap.asm buildable on a56, the free Motorola
    DSP56001 assembler (http://www.zdomain.com/a56.html).

    Summary of changes:

    - Remove '' candy (they specify explicit addressing modes,
    which a56 don't grok, but uses implicitly anyway).

    - Replace 'move' with 'movem' when accessing program memory.

    - Rename a few labels to avoid duplicates (which a56 can't handle).

    Signed-off-by: Robert Millan
    Cc: Jaswinder Singh
    Cc: David Woodhouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert Millan
     

06 Jan, 2009

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (44 commits)
    qlge: Fix sparse warnings for tx ring indexes.
    qlge: Fix sparse warning regarding rx buffer queues.
    qlge: Fix sparse endian warning in ql_hw_csum_setup().
    qlge: Fix sparse endian warning for inbound packet control block flags.
    qlge: Fix sparse warnings for byte swapping in qlge_ethool.c
    myri10ge: print MAC and serial number on probe failure
    pkt_sched: cls_u32: Fix locking in u32_change()
    iucv: fix cpu hotplug
    af_iucv: Free iucv path/socket in path_pending callback
    af_iucv: avoid left over IUCV connections from failing connects
    af_iucv: New error return codes for connect()
    net/ehea: bitops work on unsigned longs
    Revert "net: Fix for initial link state in 2.6.28"
    tcp: Kill extraneous SPLICE_F_NONBLOCK checks.
    tcp: don't mask EOF and socket errors on nonblocking splice receive
    dccp: Integrate the TFRC library with DCCP
    dccp: Clean up ccid.c after integration of CCID plugins
    dccp: Lockless integration of CCID congestion-control plugins
    qeth: get rid of extra argument after printk to dev_* conversion
    qeth: No large send using EDDP for HiperSockets.
    ...

    Linus Torvalds
     

05 Jan, 2009

3 commits

  • Firmware blob is big endian

    Signed-off-by: Jaswinder Singh Rajput
    Signed-off-by: David S. Miller

    Jaswinder Singh Rajput
     
  • Firmware blob looks like this...
    u8 firmware_major
    u8 firmware_minor
    u8 firmware_fix
    u8 pad
    __be32 start_address
    __be32 length (total, including BSS sections to be zeroed)
    data... (in __be32 words, which is native for the firmware)

    Signed-off-by: Jaswinder Singh Rajput
    Signed-off-by: David S. Miller

    Jaswinder Singh Rajput
     
  • We store the firmware in its native big-endian form now, so the loop in
    ace_copy() is modified to use be32_to_cpup() when writing it out.

    We can forget the BSS,SBSS sections of the firmware, since we were
    clearing all the device's RAM anyway. And the text,rodata,data sections
    can all be loaded as a single chunk since they're contiguous (give or
    take a few dozen bytes in between).

    Signed-off-by: Jaswinder Singh
    Signed-off-by: David Woodhouse
    Acked-by: Jes Sorensen
    Signed-off-by: David S. Miller

    Jaswinder Singh