zephyr/drivers/slip/Kconfig
Inaky Perez-Gonzalez e1a6c7d472 drivers: slip: Allow specifying the MAC address from config file
The current state of affairs will not allow to set a MAC address and
thus will initialize a random MAC address.

However, when we are in a situation where we are trying to interface
Zephyr OS QEMU VMs with physical targets for testing, this is not
practical. We need to create a macvtap interface, on which we need to
set the MAC address of the Zephyr OS SLIP device so packets can be
routed.  There is no way to guess which random address is going to be
used, and there is no practical way to query it.

So this patch adds a CONFIG_SLIP_MAC_ADDR config
setting. slip_iface_init() is changed to take the code from
slip_get_mac() for initializing the MAC address (which should be
happening there anyway) and if CONFIG_SLIP_MAC_ADDR is set, it takes
that one -- otherwise goes to generate a random one.

Change-Id: I55a68f2743604f310d41c934783eca82084d7e94
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-03-17 10:34:43 +02:00

92 lines
2.8 KiB
Plaintext

# Kconfig - SLIP driver configuration options
#
# Copyright (c) 2016 Intel Corporation
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Intel Corporation nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# SLIP options
#
menuconfig SLIP
bool
prompt "SLIP driver"
select UART_PIPE
select UART_INTERRUPT_DRIVEN
if SLIP
config SLIP_DRV_NAME
string "SLIP Driver name"
default "slip"
help
This option sets the driver name
config SLIP_MTU
int "SLIP MTU"
default 1500
range 80 1500
help
This option sets the MTU for the SLIP connection.
The value is only used when fragmenting the network
data into net_buf's. The actual SLIP connection
does not use this value.
config SLIP_DEBUG
bool "SLIP driver debug"
default n
help
This option enables debug support for SLIP driver.
config SLIP_STATISTICS
bool "SLIP network connection statistics"
default n
help
This option enables statistics support for SLIP driver.
config SLIP_TAP
bool "Use TAP interface to host"
default n
select NET_L2_ETHERNET
help
By default TUN is used. In TAP the Ethernet frames
are transferred over SLIP.
config SLIP_MAC_ADDR
string "MAC address for the interface"
default ""
help
Specify a MAC address for the SLIP interface in the form of
six hex 8-bit chars separaed by colons (eg:
aa:33:cc:22:e2:c0). The default is an empty string, which
means the code will make 00:00:5E:00:53:XX, where XX will be
random.
endif