Name
DRV_HDWR
_pbuf_pool_free_hook() — PBUF free hook callback
Synopsis
#include <cyg/io/eth/eth_drv.h>
u8_t DRV_HDWR_pbuf_pool_free_hook(
struct pbuf *p)
;
Description
If the driver specific header file
defines ECOS_LWIP_PBUF_POOL_FREE_HOOK
then
the driver should implement a hardware-specific function matching
this defined prototype.
The function is called when lwIP is releasing a packet buffer, allowing the low-level device driver access to the (now unused) packet buffer. This avoids the overhead of lwIP having to complete the free operation, and for the driver having to make a subsequent allocation call.
If the driver does want to make use of the packet buffer
descriptor (for example, to replace a DMA buffer slot) then it
must call the lwIP
routine pbuf_pool_reinit()
to ensure a
valid descriptor state prior to reuse.
Return value
If the driver does not make use of the referenced struct pbuf then it returns a value of 1 to indicate that the packet buffer has not been reused.
If the driver does claim the packet buffer then it should return 0 to indicate that the packet buffer descriptor has been reused.
2024-03-18 | Open Publication License |