Similar to other TSN features, query the Station Interface capability
register to see whether preemption is supported on this port or not.
On LS1028A, preemption is available on ports 0 and 2, but not on 1
and 3.
This will allow us in the future to write the pMAC registers only on the
ENETC ports where a pMAC actually exists.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
        if (val & ENETC_SIPCAPR0_QBV)
                si->hw_features |= ENETC_SI_F_QBV;
 
+       if (val & ENETC_SIPCAPR0_QBU)
+               si->hw_features |= ENETC_SI_F_QBU;
+
        if (val & ENETC_SIPCAPR0_PSFP)
                si->hw_features |= ENETC_SI_F_PSFP;
 }
 
        ENETC_ERR_UCMCSWP       = BIT(1),
 };
 
-#define ENETC_SI_F_QBV BIT(0)
-#define ENETC_SI_F_PSFP BIT(1)
+#define ENETC_SI_F_PSFP BIT(0)
+#define ENETC_SI_F_QBV  BIT(1)
+#define ENETC_SI_F_QBU  BIT(2)
 
 /* PCI IEP device data */
 struct enetc_si {
 
 #define ENETC_SICTR0   0x18
 #define ENETC_SICTR1   0x1c
 #define ENETC_SIPCAPR0 0x20
-#define ENETC_SIPCAPR0_QBV     BIT(4)
 #define ENETC_SIPCAPR0_PSFP    BIT(9)
 #define ENETC_SIPCAPR0_RSS     BIT(8)
+#define ENETC_SIPCAPR0_QBV     BIT(4)
+#define ENETC_SIPCAPR0_QBU     BIT(3)
 #define ENETC_SIPCAPR1 0x24
 #define ENETC_SITGTGR  0x30
 #define ENETC_SIRBGCR  0x38