Commit 55774d09 authored by Dennis Dalessandro's avatar Dennis Dalessandro Committed by Doug Ledford

IB/hfi1: Document phys port state bits not used in IB

A couple bits are used by OPA for link physical state that are not present
as part of InfiniBand. Add a short blurb what those states mean and removed
an unused state.

Cc: Leon Romanovsky <leon@kernel.org>
Reviewed-by: default avatarTodd Rimmer <todd.rimmer@intel.com>
Reviewed-by: default avatarBrent Rothermel <brent.r.rothermel@intel.com>
Signed-off-by: default avatarDennis Dalessandro <dennis.dalessandro@intel.com>
Reviewed-by: default avatarLeon Romanovsky <leonro@mellanox.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent b6422bc0
...@@ -84,7 +84,8 @@ static inline u8 port_states_to_phys_state(struct opa_port_states *ps) ...@@ -84,7 +84,8 @@ static inline u8 port_states_to_phys_state(struct opa_port_states *ps)
/* /*
* OPA port physical states * OPA port physical states
* IB Volume 1, Table 146 PortInfo/IB Volume 2 Section 5.4.2(1) PortPhysState * IB Volume 1, Table 146 PortInfo/IB Volume 2 Section 5.4.2(1) PortPhysState
* values. * values are the same in OmniPath Architecture. OPA leverages some of the same
* concepts as InfiniBand, but has a few other states as well.
* *
* When writing, only values 0-3 are valid, other values are ignored. * When writing, only values 0-3 are valid, other values are ignored.
* When reading, 0 is reserved. * When reading, 0 is reserved.
...@@ -92,6 +93,8 @@ static inline u8 port_states_to_phys_state(struct opa_port_states *ps) ...@@ -92,6 +93,8 @@ static inline u8 port_states_to_phys_state(struct opa_port_states *ps)
* Returned by the ibphys_portstate() routine. * Returned by the ibphys_portstate() routine.
*/ */
enum opa_port_phys_state { enum opa_port_phys_state {
/* Values 0-7 have the same meaning in OPA as in InfiniBand. */
IB_PORTPHYSSTATE_NOP = 0, IB_PORTPHYSSTATE_NOP = 0,
/* 1 is reserved */ /* 1 is reserved */
IB_PORTPHYSSTATE_POLLING = 2, IB_PORTPHYSSTATE_POLLING = 2,
...@@ -101,9 +104,23 @@ enum opa_port_phys_state { ...@@ -101,9 +104,23 @@ enum opa_port_phys_state {
IB_PORTPHYSSTATE_LINK_ERROR_RECOVERY = 6, IB_PORTPHYSSTATE_LINK_ERROR_RECOVERY = 6,
IB_PORTPHYSSTATE_PHY_TEST = 7, IB_PORTPHYSSTATE_PHY_TEST = 7,
/* 8 is reserved */ /* 8 is reserved */
/*
* Offline: Port is quiet (transmitters disabled) due to lack of
* physical media, unsupported media, or transition between link up
* and next link up attempt
*/
OPA_PORTPHYSSTATE_OFFLINE = 9, OPA_PORTPHYSSTATE_OFFLINE = 9,
OPA_PORTPHYSSTATE_GANGED = 10,
/* 10 is reserved */
/*
* Phy_Test: Specific test patterns are transmitted, and receiver BER
* can be monitored. This facilitates signal integrity testing for the
* physical layer of the port.
*/
OPA_PORTPHYSSTATE_TEST = 11, OPA_PORTPHYSSTATE_TEST = 11,
OPA_PORTPHYSSTATE_MAX = 11, OPA_PORTPHYSSTATE_MAX = 11,
/* values 12-15 are reserved/ignored */ /* values 12-15 are reserved/ignored */
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment