# Copyright (c) 2020 O.S.Systems
# SPDX-License-Identifier: Apache-2.0

# Disable default configs
CONFIG_NET_L2_ETHERNET=n

CONFIG_NET_DHCPV4=n

CONFIG_NET_CONFIG_SETTINGS=n

# UART support
CONFIG_SERIAL=y

# GSM modem support
CONFIG_MODEM=y
CONFIG_MODEM_SHELL=y
CONFIG_MODEM_GSM_PPP=y
CONFIG_MODEM_GSM_APN="<Your Access Point Network>"

# PPP networking support
CONFIG_NET_DRIVERS=y
CONFIG_NET_NATIVE=y
CONFIG_NET_PPP=y
CONFIG_NET_L2_PPP=y
CONFIG_NET_L2_PPP_TIMEOUT=10000

CONFIG_DNS_SERVER_IP_ADDRESSES=y
CONFIG_DNS_SERVER1="8.8.8.8"
