Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Unable to render {include} The included page could not be found.
Unable to render {include} The included page could not be found.

Network Interface Functions
NetIF_Add()

Add a network device and hardware as a network interface.

Files

net_if.h/net_if.c

Prototype

NET_IF_NBR NetIF_Add(void *if_api,

void *dev_api,

void *dev_bsp,

void *dev_cfg,

void *phy_api,

void *phy_cfg,

NET_ERR *perr);

Arguments

if_api

Pointer to the desired link-layer API for this network interface and device hardware. In most cases, the desired link-layer interface will point to the Ethernet API, NetIF_API_Ether (see also section L16-1(1) on page 362).

dev_api

Pointer to the desired device driver API for this network interface (see also section 5-3-3 “Adding an Ethernet Interface” on page 94 and section 5-4-2 “Adding a Wireless Interface” on page 100).

dev_bsp

Pointer to the specific device's BSP interface for this network interface (see also Chapter 6, “Network Board Support Package” on page 121).

dev_cfg

Pointer to a configuration structure used to configure the device hardware for the specific network interface (see also Chapter 5, “Network Interface Configuration” on page 77).

phy_api

Pointer to an optional physical layer device driver API for this network interface. In most cases, the generic physical layer device API will be used, NetPhy_API_Generic, but for Ethernet devices that have non-MII or non-RMII compliant physical layer components, another device-specific physical layer device driver API may be necessary. See also section 7-4 “Ethernet PHY API Implementation” on page 155.

phy_cfg

Pointer to a configuration structure used to configure the physical layer hardware for the specific network interface (see also section 5-3-2 “Ethernet PHY Configuration” on page 92).

perr

Pointer to variable that will receive the return error code from this function:

NET_IF_ERR_NONE

NET_IF_ERR_NULL_PTR

NET_IF_ERR_INVALID_IF

NET_IF_ERR_INVALID_CFG

NET_IF_ERR_NONE_AVAIL

NET_BUF_ERR_POOL_INIT

NET_BUF_ERR_INVALID_POOL_TYPE

NET_BUF_ERR_INVALID_POOL_ADDR

NET_BUF_ERR_INVALID_POOL_SIZE

NET_BUF_ERR_INVALID_POOL_QTY

NET_BUF_ERR_INVALID_SIZE

NET_OS_ERR_INIT_DEV_TX_RDY

NET_OS_ERR_INIT_DEV_TX_RDY_NAME

NET_OS_ERR_LOCK

Returned Value

Network interface number, if device and hardware successfully added;

NET_IF_NBR_NONE, otherwise.

Required Configuration

None.

Notes / Warnings

The first network interface added and started is the default interface used for all default communication. See also section C-12-1 on page 542 and section C-12-2 on page 544.

Both physical layer API and configuration parameters must ,either be specified or passed NULL pointers.

Additional error codes may be returned by the specific interface or device driver.

See section 16-1-1 “Adding Network Interfaces” on page 361 for a detailed example of how to add an interface.

  • No labels