linux/drivers/scsi/isci/firmware
Dan Williams 4711ba10b1 isci: fix oem parameter initialization and mode detection
1/ Since commit 858d4aa7 "isci: Move firmware loading to per PCI device" we have
   been silently falling back to built-in defaults for the parameter settings by
   skipping the call to scic_oem_parameters_set().

2/ The afe parameters from the firmware were not being honored

3/ The latest oem parameter definition flips the mode_type values which are
   now 0: for APC 1: for MPC.  For APC we need to make sure all the phys
   default to the same address otherwise strict_wide_ports will cause duplicate
   domains.

4/ Fix up the driver announcement to indicate the source of the
   parameters.

5/ Fix up the sas addresses to be unique per controller (in the fallback case)

Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2011-07-03 03:55:31 -07:00
..
Makefile
README
create_fw.c isci: fix oem parameter initialization and mode detection 2011-07-03 03:55:31 -07:00
create_fw.h isci: fix oem parameter initialization and mode detection 2011-07-03 03:55:31 -07:00

README

This defines the temporary binary blow we are to pass to the SCU
driver to emulate the binary firmware that we will eventually be
able to access via NVRAM on the SCU controller.

The current size of the binary blob is expected to be 149 bytes or larger

Header Types:
0x1: Phy Masks
0x2: Phy Gens
0x3: SAS Addrs
0xff: End of Data

ID string - u8[12]: "#SCU MAGIC#\0"
Version - u8: 1
SubVersion - u8: 0

Header Type - u8: 0x1
Size - u8: 8
Phy Mask - u32[8]

Header Type - u8: 0x2
Size - u8: 8
Phy Gen - u32[8]

Header Type - u8: 0x3
Size - u8: 8
Sas Addr - u64[8]

Header Type - u8: 0xf


==============================================================================

Place isci_firmware.bin in /lib/firmware
Be sure to recreate the initramfs image to include the firmware.