/* * Copyright (C) 2015 Kaspar Schleiser * * This file is subject to the terms and conditions of the GNU Lesser General * Public License v2.1. See the file LICENSE in the top level directory for * more details. */ /** * @ingroup drivers_netdev_netdev2 * @{ * * @file * @brief Definitions for netdev2 common ethernet code * * @author Kaspar Schleiser */ #ifndef NETDEV2_ETH_H #define NETDEV2_ETH_H #include #include "net/netdev2.h" #include "net/netopt.h" #ifdef __cplusplus extern "C" { #endif /** * @brief Fallback function for netdev2 ethernet devices' _get function * * Supposed to be used by netdev2 drivers as default case. * * @warning Driver *MUST* implement NETOPT_ADDRESS case! * * @param[in] dev network device descriptor * @param[in] opt option type * @param[out] value pointer to store the option's value in * @param[in] max_len maximal amount of byte that fit into @p value * * @return number of bytes written to @p value * @return <0 on error */ int netdev2_eth_get(netdev2_t *dev, netopt_t opt, void *value, size_t max_len); /** * @brief Fallback function for netdev2 ethernet devices' _set function * * @param[in] dev network device descriptor * @param[in] opt option type * @param[in] value value to set * @param[in] value_len the length of @p value * * @return number of bytes used from @p value * @return <0 on error */ int netdev2_eth_set(netdev2_t *dev, netopt_t opt, void *value, size_t value_len); #ifdef __cplusplus } #endif /** @} */ #endif /* NETDEV2_ETH_H */