mgmt: hawkbit: samples: use net config settings
use net config setting and `CONFIG_NET_CONFIG_NEED_IPV4` to get dhcpv4 address. Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
This commit is contained in:
parent
cbd9b37ef5
commit
5176324e2f
|
@ -10,9 +10,7 @@ set(KCONFIG_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/Kconfig)
|
|||
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
|
||||
project(hawkbit)
|
||||
|
||||
FILE(GLOB app_sources src/*.c)
|
||||
target_sources(app PRIVATE ${app_sources})
|
||||
target_sources_ifdef(CONFIG_NET_DHCPV4 app PRIVATE src/dhcp.c)
|
||||
target_sources(app PRIVATE src/main.c)
|
||||
|
||||
include(${ZEPHYR_BASE}/samples/net/common/common.cmake)
|
||||
|
||||
|
|
|
@ -23,6 +23,9 @@ CONFIG_MAIN_STACK_SIZE=4096
|
|||
CONFIG_HEAP_MEM_POOL_SIZE=4096
|
||||
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096
|
||||
|
||||
CONFIG_NET_CONFIG_SETTINGS=y
|
||||
CONFIG_NET_CONFIG_NEED_IPV4=y
|
||||
|
||||
CONFIG_NET_IPV4=y
|
||||
CONFIG_NET_IPV6=n
|
||||
|
||||
|
|
|
@ -1,54 +0,0 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Linumiz
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include <zephyr/logging/log.h>
|
||||
|
||||
#include <zephyr/kernel.h>
|
||||
|
||||
#include <zephyr/net/net_if.h>
|
||||
#include <zephyr/net/net_core.h>
|
||||
#include <zephyr/net/net_context.h>
|
||||
#include <zephyr/net/net_mgmt.h>
|
||||
|
||||
static struct net_mgmt_event_callback mgmt_cb;
|
||||
|
||||
/* Semaphore to indicate a lease has been acquired */
|
||||
static K_SEM_DEFINE(got_address, 0, 1);
|
||||
|
||||
static void handler(struct net_mgmt_event_callback *cb,
|
||||
uint32_t mgmt_event,
|
||||
struct net_if *iface)
|
||||
{
|
||||
bool notified = false;
|
||||
|
||||
if (mgmt_event != NET_EVENT_IPV4_DHCP_BOUND) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!notified) {
|
||||
k_sem_give(&got_address);
|
||||
notified = true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Start a DHCP client, and wait for a lease to be acquired.
|
||||
*/
|
||||
void app_dhcpv4_startup(void)
|
||||
{
|
||||
struct net_if *iface;
|
||||
|
||||
net_mgmt_init_event_callback(&mgmt_cb, handler,
|
||||
NET_EVENT_IPV4_DHCP_BOUND);
|
||||
net_mgmt_add_event_callback(&mgmt_cb);
|
||||
|
||||
iface = net_if_get_default();
|
||||
|
||||
net_dhcpv4_start(iface);
|
||||
|
||||
/* Wait for a lease */
|
||||
k_sem_take(&got_address, K_FOREVER);
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Linumiz
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#ifndef __DHCP_H__
|
||||
#define __DHCP_H__
|
||||
|
||||
void app_dhcpv4_startup(void);
|
||||
|
||||
#endif
|
|
@ -12,8 +12,6 @@
|
|||
#include <zephyr/logging/log.h>
|
||||
#include <zephyr/data/json.h>
|
||||
|
||||
#include "dhcp.h"
|
||||
|
||||
#if defined(CONFIG_NET_SOCKETS_SOCKOPT_TLS)
|
||||
#include <zephyr/net/tls_credentials.h>
|
||||
#include "ca_certificate.h"
|
||||
|
@ -62,8 +60,6 @@ int main(void)
|
|||
LOG_INF("hawkBit sample app started");
|
||||
LOG_INF("Image build time: " __DATE__ " " __TIME__);
|
||||
|
||||
app_dhcpv4_startup();
|
||||
|
||||
#if defined(CONFIG_NET_SOCKETS_SOCKOPT_TLS)
|
||||
tls_credential_add(CA_CERTIFICATE_TAG, TLS_CREDENTIAL_CA_CERTIFICATE,
|
||||
ca_certificate, sizeof(ca_certificate));
|
||||
|
|
Loading…
Reference in a new issue