|
@@ -812,9 +812,10 @@ static u32 stmmac_get_synopsys_id(struct stmmac_priv *priv)
|
|
|
*/
|
|
|
static int stmmac_get_hw_features(struct stmmac_priv *priv)
|
|
|
{
|
|
|
- u32 hw_cap = priv->hw->dma->get_hw_feature(priv->ioaddr);
|
|
|
+ u32 hw_cap = 0;
|
|
|
+ if (priv->hw->dma->get_hw_feature) {
|
|
|
+ hw_cap = priv->hw->dma->get_hw_feature(priv->ioaddr);
|
|
|
|
|
|
- if (likely(hw_cap)) {
|
|
|
priv->dma_cap.mbps_10_100 = (hw_cap & DMA_HW_FEAT_MIISEL);
|
|
|
priv->dma_cap.mbps_1000 = (hw_cap & DMA_HW_FEAT_GMIISEL) >> 1;
|
|
|
priv->dma_cap.half_duplex = (hw_cap & DMA_HW_FEAT_HDSEL) >> 2;
|