mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
Merge pull request #20995 from benpicco/confirm_send-retval
drivers/netdev: revise return values of `.confirm_send()`
This commit is contained in:
commit
dedc8f950f
@ -221,13 +221,13 @@ static int _sam0_eth_confirm_send(netdev_t *netdev, void *info)
|
|||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Retry Limit Exceeded */
|
/* Retry Limit Exceeded, Collision Occurred */
|
||||||
if (tsr & GMAC_TSR_RLE) {
|
if (tsr & (GMAC_TSR_RLE | GMAC_TSR_COL)) {
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Transmit Frame Corruption, Collision Occurred */
|
/* Transmit Frame Corruption */
|
||||||
if (tsr & (GMAC_TSR_TFC | GMAC_TSR_COL)) {
|
if (tsr & GMAC_TSR_TFC) {
|
||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -468,10 +468,12 @@ typedef struct netdev_driver {
|
|||||||
* frame delimiters, etc. May be an estimate for performance
|
* frame delimiters, etc. May be an estimate for performance
|
||||||
* reasons.)
|
* reasons.)
|
||||||
* @retval -EAGAIN Transmission still ongoing. (Call later again!)
|
* @retval -EAGAIN Transmission still ongoing. (Call later again!)
|
||||||
* @retval -ECOMM Any kind of transmission error, such as collision
|
* @retval -EHOSTUNREACH Layer 2 ACK timeout
|
||||||
* detected, layer 2 ACK timeout, etc.
|
* @retval -EBUSY Medium is busy. (E.g. Auto-CCA failed / timed out,
|
||||||
|
* collision detected)
|
||||||
|
* @retval -ENETDOWN Interface is not connected / powered down
|
||||||
|
* @retval -EIO Any kind of transmission error
|
||||||
* Use @p info for more details
|
* Use @p info for more details
|
||||||
* @retval -EBUSY Medium is busy. (E.g. Auto-CCA failed / timed out)
|
|
||||||
* @retval <0 Other error. (Please use a negative errno code.)
|
* @retval <0 Other error. (Please use a negative errno code.)
|
||||||
*
|
*
|
||||||
* @warning After netdev_driver_t::send was called and returned zero, this
|
* @warning After netdev_driver_t::send was called and returned zero, this
|
||||||
|
Loading…
Reference in New Issue
Block a user