const struct ravb_hw_info *info = priv->info;
int error;
+ /* Clear transmission suspension */
+ ravb_modify(ndev, CCC, CCC_DTSR, 0);
+
/* Set CONFIG mode */
error = ravb_set_opmode(ndev, CCC_OPC_CONFIG);
if (error)
if (error)
return error;
+ /* Request for transmission suspension */
+ ravb_modify(ndev, CCC, CCC_DTSR, CCC_DTSR);
+ error = ravb_wait(ndev, CSR, CSR_DTS, CSR_DTS);
+ if (error)
+ netdev_err(ndev, "failed to stop AXI BUS\n");
+
/* Stop AVB-DMAC process */
return ravb_set_opmode(ndev, CCC_OPC_CONFIG);
}