Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions boot/ti-k3-r5-loader/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,12 @@ config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_CONFIG_FILE
help
Path to the TI K3 R5 Loader configuration file.

config BR2_TARGET_TI_K3_R5_LOADER_CONFIG_FRAGMENT_FILES
string "Additional configuration fragment files"
help
A space-separated list of configuration fragment files,
that will be merged to the tiboot3.bin configuration file.

config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_DTS_PATH
string "Device Tree Source file paths"
help
Expand Down
1 change: 1 addition & 0 deletions boot/ti-k3-r5-loader/ti-k3-r5-loader.mk
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ TI_K3_R5_LOADER_MAKE_OPTS = \
HOSTLDFLAGS="$(HOST_LDFLAGS)" \
BINMAN_INDIRS=$(BINARIES_DIR)

TI_K3_R5_LOADER_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_CONFIG_FRAGMENT_FILES))
TI_K3_R5_LOADER_TIBOOT3_BIN = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_TIBOOT3_BIN))

define TI_K3_R5_LOADER_INSTALL_TIBOOT3_BIN
Expand Down
5 changes: 5 additions & 0 deletions docs/manual/migrating.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -242,3 +242,8 @@ If you want to provide such libraries either:
- Serve it by adding the library to your overlay.
- Install the libraries from your project with NPM and bundle with a JavaScript
bundler.

In 2026.02, the network-manager package stopped selecting the gnutls package as
a cryptography backend automatically. Manually enable the gnutls or libnss
package if you require features that depend on a cryptography backend, such as
certificate-based authentication.
63 changes: 63 additions & 0 deletions package/dpdk/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,69 @@ config BR2_PACKAGE_DPDK_EXAMPLES
config BR2_PACKAGE_DPDK_TESTS
bool "Install tests"

config BR2_PACKAGE_DPDK_DRIVERS_LIST
string "List of enabled drivers"
help
Controls which DPDK drivers are built.

Values:
(empty): use DPDK defaults
none : build no drivers
list : e.g. "net/virtio,net/intel/ixgbe"

To list possible drivers found in the DPDK source tree:
find drivers -mindepth 2 -maxdepth 3 -type d \
! -printf '%P\n' | sort

Note: providing manually a list of dpdk drivers to enable
does not automatically enable its dependencies (internal or
external). It is the user responsiblity to add internal dpdk
dependencies in this list, and/or select the relevant
Buildroot packages for external dependencies. DPDK
configuration will fail in case of missing dependencies.

config BR2_PACKAGE_DPDK_LIBS_LIST
string "List of enabled libraries"
help
Controls which DPDK libraries are built.

Values:
(empty): use DPDK defaults
none : build no libraries
list : e.g. "hash,fib,rib"

To list all libraries found in the DPDK source tree:
find lib -mindepth 2 -maxdepth 2 -type f -name meson.build \
-printf '%h\n' | xargs -n1 basename | sort -u

Note: providing manually a list of dpdk libraries to enable
does not automatically enable its dependencies (internal or
external). It is the user responsiblity to add internal dpdk
dependencies in this list, and/or select the relevant
Buildroot packages for external dependencies. DPDK
configuration will fail in case of missing dependencies.

config BR2_PACKAGE_DPDK_APPS_LIST
string "List of enabled applications"
help
Controls which DPDK applications are built.

Values:
(empty): use DPDK defaults
none : build no apps
list : e.g. "test-cmdline,test-pmd"

To list all applications found in the DPDK source tree:
find app -mindepth 2 -maxdepth 2 -type f -name meson.build \
-printf '%h\n' | xargs -n1 basename | sort -u

Note: providing manually a list of dpdk libraries to enable
does not automatically enable its dependencies (internal or
external). It is the user responsiblity to add internal dpdk
dependencies in this list, and/or select the relevant
Buildroot packages for external dependencies. DPDK
configuration will fail in case of missing dependencies.

endif

comment "dpdk needs a glibc toolchain w/ threads, gcc >= 4.9, headers >= 4.19"
Expand Down
27 changes: 27 additions & 0 deletions package/dpdk/dpdk.mk
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,33 @@ else
DPDK_CONF_OPTS += -Dexamples=
endif

DPDK_DRIVERS := $(call qstrip,$(BR2_PACKAGE_DPDK_DRIVERS_LIST))
ifneq ($(DPDK_DRIVERS),)
ifeq ($(DPDK_DRIVERS),none)
DPDK_CONF_OPTS += -Ddisable_drivers='*/*'
else
DPDK_CONF_OPTS += -Denable_drivers='$(DPDK_DRIVERS)'
endif
endif

DPDK_LIBS := $(call qstrip,$(BR2_PACKAGE_DPDK_LIBS_LIST))
ifneq ($(DPDK_LIBS),)
ifeq ($(DPDK_LIBS),none)
DPDK_CONF_OPTS += -Ddisable_libs='*'
else
DPDK_CONF_OPTS += -Denable_libs='$(DPDK_LIBS)'
endif
endif

DPDK_APPS := $(call qstrip,$(BR2_PACKAGE_DPDK_APPS_LIST))
ifneq ($(DPDK_APPS),)
ifeq ($(DPDK_APPS),none)
DPDK_CONF_OPTS += -Ddisable_apps='*'
else
DPDK_CONF_OPTS += -Denable_apps='$(DPDK_APPS)'
endif
endif

ifeq ($(BR2_PACKAGE_DPDK_TESTS),y)
DPDK_CONF_OPTS += -Dtests=true
else
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
From 76458fafc5a9cd0eebe94455ed39f41eac986c67 Mon Sep 17 00:00:00 2001
From: Patrice Fournier <patrice.fournier@t38fax.com>
Date: Tue, 4 Feb 2025 15:54:26 -0500
Subject: [PATCH] [mod_spandsp] Fix compilation against >=2023/06/02 spandsp

* [mod_spandsp] Fix compilation against >=2023/06/02 spandsp

spandsp, beginning with commit d9681c37 and coinciding with the
SPANDSP_RELEASE_DATE of 20230620, introduced the following changes to
its V.18 protocol API, which FreeSWITCH is not able to compile against:
- Certain V.18 constants were renamed.
- The v18_init function now requires passing a third function, handling
the V.18 modem's status changes.

This patch allows FreeSWITCH to build against current versions of
spandsp by:
- Using the new V.18 constant names.
- Implementing a simple status reporter callback function and passing it
as the third function to v18_init.

Additionally, it retains backward compatibility with prior versions of
spandp through #if conditions checking the value of
SPANDSP_RELEASE_DATE.

Signed-off-by: Patrice Fournier <patrice.fournier@t38fax.com>

* [mod_spandsp] Pass session to handle_v18_status.

---------

Signed-off-by: Patrice Fournier <patrice.fournier@t38fax.com>
Co-authored-by: Morgan Scarafiotti <morgan.scarafiotti@t38fax.com>
Co-authored-by: Andrey Volk <andywolk@gmail.com>

Upstream: https://github.com/signalwire/freeswitch/commit/76458fafc5a9cd0eebe94455ed39f41eac986c67

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
.../applications/mod_spandsp/mod_spandsp.c | 1 -
.../applications/mod_spandsp/mod_spandsp.h | 6 ++++
.../mod_spandsp/mod_spandsp_dsp.c | 32 ++++++++++++++++---
3 files changed, 34 insertions(+), 5 deletions(-)

diff --git a/src/mod/applications/mod_spandsp/mod_spandsp.c b/src/mod/applications/mod_spandsp/mod_spandsp.c
index 3f69b9746a..50d03f93a3 100644
--- a/src/mod/applications/mod_spandsp/mod_spandsp.c
+++ b/src/mod/applications/mod_spandsp/mod_spandsp.c
@@ -37,7 +37,6 @@


#include "mod_spandsp.h"
-#include <spandsp/version.h>
#include "mod_spandsp_modem.h"

/* **************************************************************************
diff --git a/src/mod/applications/mod_spandsp/mod_spandsp.h b/src/mod/applications/mod_spandsp/mod_spandsp.h
index 01f79e254d..6a936eee18 100644
--- a/src/mod/applications/mod_spandsp/mod_spandsp.h
+++ b/src/mod/applications/mod_spandsp/mod_spandsp.h
@@ -58,6 +58,12 @@ typedef int zap_socket_t;
#define SPANDSP_EVENT_TXFAXNEGOCIATERESULT "spandsp::txfaxnegociateresult"
#define SPANDSP_EVENT_RXFAXNEGOCIATERESULT "spandsp::rxfaxnegociateresult"

+#include <spandsp/version.h>
+
+#if SPANDSP_RELEASE_DATE < 20230620
+#define V18_MODE_WEITBRECHT_5BIT_4545 V18_MODE_5BIT_4545
+#define V18_MODE_WEITBRECHT_5BIT_50 V18_MODE_5BIT_50
+#endif


/* The global stuff */
diff --git a/src/mod/applications/mod_spandsp/mod_spandsp_dsp.c b/src/mod/applications/mod_spandsp/mod_spandsp_dsp.c
index 836808a48d..51ac2a0e63 100644
--- a/src/mod/applications/mod_spandsp/mod_spandsp_dsp.c
+++ b/src/mod/applications/mod_spandsp/mod_spandsp_dsp.c
@@ -152,17 +152,27 @@ static void put_text_msg(void *user_data, const uint8_t *msg, int len)

}

+#if SPANDSP_RELEASE_DATE >= 20230620
+static void handle_v18_status(void *user_data, int status)
+{
+ switch_core_session_t *session = (switch_core_session_t *) user_data;
+ switch_channel_t *channel = switch_core_session_get_channel(session);
+
+ switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_INFO, "%s detected V.18 modem: %s\n", switch_channel_get_name(channel), v18_status_to_str(status));
+}
+#endif
+
static int get_v18_mode(switch_core_session_t *session)
{
switch_channel_t *channel = switch_core_session_get_channel(session);
const char *var;
- int r = V18_MODE_5BIT_4545;
+ int r = V18_MODE_WEITBRECHT_5BIT_4545;

if ((var = switch_channel_get_variable(channel, "v18_mode"))) {
if (!strcasecmp(var, "5BIT_45") || !strcasecmp(var, "baudot")) {
- r = V18_MODE_5BIT_4545;
+ r = V18_MODE_WEITBRECHT_5BIT_4545;
} else if (!strcasecmp(var, "5BIT_50")) {
- r = V18_MODE_5BIT_50;
+ r = V18_MODE_WEITBRECHT_5BIT_50;
} else if (!strcasecmp(var, "DTMF")) {
r = V18_MODE_DTMF;
} else if (!strcasecmp(var, "EDT")) {
@@ -213,8 +223,11 @@ switch_status_t spandsp_tdd_send_session(switch_core_session_t *session, const c
return SWITCH_STATUS_FALSE;
}

+#if SPANDSP_RELEASE_DATE >= 20230620
+ tdd_state = v18_init(NULL, TRUE, get_v18_mode(session), V18_AUTOMODING_GLOBAL, put_text_msg, NULL, handle_v18_status, session);
+#else
tdd_state = v18_init(NULL, TRUE, get_v18_mode(session), V18_AUTOMODING_GLOBAL, put_text_msg, NULL);
-
+#endif

v18_put(tdd_state, text, -1);

@@ -260,7 +273,13 @@ switch_status_t spandsp_tdd_encode_session(switch_core_session_t *session, const
}

pvt->session = session;
+
+#if SPANDSP_RELEASE_DATE >= 20230620
+ pvt->tdd_state = v18_init(NULL, TRUE, get_v18_mode(session), V18_AUTOMODING_GLOBAL, put_text_msg, NULL, handle_v18_status, session);
+#else
pvt->tdd_state = v18_init(NULL, TRUE, get_v18_mode(session), V18_AUTOMODING_GLOBAL, put_text_msg, NULL);
+#endif
+
pvt->head_lead = TDD_LEAD;

v18_put(pvt->tdd_state, text, -1);
@@ -338,7 +357,12 @@ switch_status_t spandsp_tdd_decode_session(switch_core_session_t *session)
}

pvt->session = session;
+
+#if SPANDSP_RELEASE_DATE >= 20230620
+ pvt->tdd_state = v18_init(NULL, FALSE, get_v18_mode(session), V18_AUTOMODING_GLOBAL, put_text_msg, pvt, handle_v18_status, session);
+#else
pvt->tdd_state = v18_init(NULL, FALSE, get_v18_mode(session), V18_AUTOMODING_GLOBAL, put_text_msg, pvt);
+#endif

if ((status = switch_core_media_bug_add(session, "spandsp_tdd_decode", NULL,
tdd_decode_callback, pvt, 0, SMBF_READ_REPLACE | SMBF_NO_PAUSE, &bug)) != SWITCH_STATUS_SUCCESS) {
--
2.47.3

2 changes: 1 addition & 1 deletion package/git/git.hash
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# From: https://www.kernel.org/pub/software/scm/git/sha256sums.asc
sha256 3cd8fee86f69a949cb610fee8cd9264e6873d07fa58411f6060b3d62729ed7c5 git-2.52.0.tar.xz
sha256 5818bd7d80b061bbbdfec8a433d609dc8818a05991f731ffc4a561e2ca18c653 git-2.53.0.tar.xz
# Locally calculated
sha256 5b2198d1645f767585e8a88ac0499b04472164c0d2da22e75ecf97ef443ab32e COPYING
sha256 1922f45d2c49e390032c9c0ba6d7cac904087f7cec51af30c2b2ad022ce0e76a LGPL-2.1
2 changes: 1 addition & 1 deletion package/git/git.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
################################################################################

GIT_VERSION = 2.52.0
GIT_VERSION = 2.53.0
GIT_SOURCE = git-$(GIT_VERSION).tar.xz
GIT_SITE = $(BR2_KERNEL_MIRROR)/software/scm/git
GIT_LICENSE = GPL-2.0, LGPL-2.1+
Expand Down
46 changes: 0 additions & 46 deletions package/jasper/0001-Fixes-367.patch

This file was deleted.

Loading