From 5176324e2f1cb20bd3f8e9d1b58ad6e137de1ef2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fin=20Maa=C3=9F?= Date: Mon, 29 Apr 2024 12:24:06 +0200 Subject: [PATCH] mgmt: hawkbit: samples: use net config settings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit use net config setting and `CONFIG_NET_CONFIG_NEED_IPV4` to get dhcpv4 address. Signed-off-by: Fin Maaß --- samples/subsys/mgmt/hawkbit/CMakeLists.txt | 4 +- samples/subsys/mgmt/hawkbit/prj.conf | 3 ++ samples/subsys/mgmt/hawkbit/src/dhcp.c | 54 ---------------------- samples/subsys/mgmt/hawkbit/src/dhcp.h | 12 ----- samples/subsys/mgmt/hawkbit/src/main.c | 4 -- 5 files changed, 4 insertions(+), 73 deletions(-) delete mode 100644 samples/subsys/mgmt/hawkbit/src/dhcp.c delete mode 100644 samples/subsys/mgmt/hawkbit/src/dhcp.h diff --git a/samples/subsys/mgmt/hawkbit/CMakeLists.txt b/samples/subsys/mgmt/hawkbit/CMakeLists.txt index 8fff29c67c3537..1c48c7fe88844a 100644 --- a/samples/subsys/mgmt/hawkbit/CMakeLists.txt +++ b/samples/subsys/mgmt/hawkbit/CMakeLists.txt @@ -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) diff --git a/samples/subsys/mgmt/hawkbit/prj.conf b/samples/subsys/mgmt/hawkbit/prj.conf index 469d8710ae39cb..8feda355f28aef 100644 --- a/samples/subsys/mgmt/hawkbit/prj.conf +++ b/samples/subsys/mgmt/hawkbit/prj.conf @@ -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 diff --git a/samples/subsys/mgmt/hawkbit/src/dhcp.c b/samples/subsys/mgmt/hawkbit/src/dhcp.c deleted file mode 100644 index b8dae6357a3ea5..00000000000000 --- a/samples/subsys/mgmt/hawkbit/src/dhcp.c +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2020 Linumiz - * - * SPDX-License-Identifier: Apache-2.0 - */ - -#include - -#include - -#include -#include -#include -#include - -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); -} diff --git a/samples/subsys/mgmt/hawkbit/src/dhcp.h b/samples/subsys/mgmt/hawkbit/src/dhcp.h deleted file mode 100644 index db6708693913f2..00000000000000 --- a/samples/subsys/mgmt/hawkbit/src/dhcp.h +++ /dev/null @@ -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 diff --git a/samples/subsys/mgmt/hawkbit/src/main.c b/samples/subsys/mgmt/hawkbit/src/main.c index 6374b025851d5a..b8323b308a1680 100644 --- a/samples/subsys/mgmt/hawkbit/src/main.c +++ b/samples/subsys/mgmt/hawkbit/src/main.c @@ -12,8 +12,6 @@ #include #include -#include "dhcp.h" - #if defined(CONFIG_NET_SOCKETS_SOCKOPT_TLS) #include #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));