diff options
author | Dan Williams <dan.j.williams@intel.com> | 2011-03-11 19:43:57 +0100 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2011-07-03 12:55:31 +0200 |
commit | 4711ba10b13891edf228944a9d0a21dfe7fe90f0 (patch) | |
tree | c846eb029eb2bc827a614df963b00aa412b95956 /drivers/scsi/isci/probe_roms.h | |
parent | isci: Fixup for OEM parameter EFI variable retrieval (diff) | |
download | linux-4711ba10b13891edf228944a9d0a21dfe7fe90f0.tar.xz linux-4711ba10b13891edf228944a9d0a21dfe7fe90f0.zip |
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>
Diffstat (limited to 'drivers/scsi/isci/probe_roms.h')
-rw-r--r-- | drivers/scsi/isci/probe_roms.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/scsi/isci/probe_roms.h b/drivers/scsi/isci/probe_roms.h index c2162cf12056..1b444838779f 100644 --- a/drivers/scsi/isci/probe_roms.h +++ b/drivers/scsi/isci/probe_roms.h @@ -96,6 +96,10 @@ struct isci_oem_hdr { #define ISCI_ROM_SIG "ISCUOEMB" #define ISCI_ROM_SIG_SIZE 8 +#define ISCI_PREBOOT_SOURCE_INIT (0x00) +#define ISCI_PREBOOT_SOURCE_OROM (0x80) +#define ISCI_PREBOOT_SOURCE_EFI (0x81) + #define ISCI_EFI_VENDOR_GUID \ EFI_GUID(0x193dfefa, 0xa445, 0x4302, 0x99, 0xd8, 0xef, 0x3a, 0xad, \ 0x1a, 0x04, 0xc6) @@ -112,8 +116,8 @@ struct isci_oem_hdr { * being assigned is sufficient to declare manual PORT configuration. */ enum SCIC_PORT_CONFIGURATION_MODE { - SCIC_PORT_MANUAL_CONFIGURATION_MODE = 0, - SCIC_PORT_AUTOMATIC_CONFIGURATION_MODE = 1 + SCIC_PORT_AUTOMATIC_CONFIGURATION_MODE = 0, + SCIC_PORT_MANUAL_CONFIGURATION_MODE = 1 }; struct sci_bios_oem_param_block_hdr { |