[SCSI] isci: oem parameter format v1.3 (cable select)
v1.3 allows the attenuation of the attached cables to be specified to the driver in terms of 'short', 'medium', and 'long' (see probe_roms.h). These settings (per phy) are retrieved from the platform oem-parameters (BIOS rom) or via a module parameter override. Reviewed-by: Jiangbi Liu <jiangbi.liu@intel.com> Signed-off-by: Jeff Skirvin <jeffrey.d.skirvin@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:

committed by
James Bottomley

parent
594e566ae5
commit
9fee607f0b
@@ -447,6 +447,24 @@ static inline bool is_c1(struct pci_dev *pdev)
|
||||
return false;
|
||||
}
|
||||
|
||||
enum cable_selections {
|
||||
short_cable = 0,
|
||||
long_cable = 1,
|
||||
medium_cable = 2,
|
||||
undefined_cable = 3
|
||||
};
|
||||
|
||||
#define CABLE_OVERRIDE_DISABLED (0x10000)
|
||||
|
||||
static inline int is_cable_select_overridden(void)
|
||||
{
|
||||
return cable_selection_override < CABLE_OVERRIDE_DISABLED;
|
||||
}
|
||||
|
||||
enum cable_selections decode_cable_selection(struct isci_host *ihost, int phy);
|
||||
void validate_cable_selections(struct isci_host *ihost);
|
||||
char *lookup_cable_names(enum cable_selections);
|
||||
|
||||
/* set hw control for 'activity', even though active enclosures seem to drive
|
||||
* the activity led on their own. Skip setting FSENG control on 'status' due
|
||||
* to unexpected operation and 'error' due to not being a supported automatic
|
||||
|
Reference in New Issue
Block a user