From f26a27253a5ec031fc8d48720804a30f26ca28d8 Mon Sep 17 00:00:00 2001
From: Andreas Gnau <andreas.gnau@iopsys.eu>
Date: Wed, 8 Sep 2021 16:17:13 +0200
Subject: [PATCH] bcmkernel: bcm_git: Enable specifying WLAN drivers on cmdline
Enable specifying WLAN-drivers to import on command line.
---
bcmkernel/scripts/bcm_git.sh | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)
diff --git a/bcmkernel/scripts/bcm_git.sh b/bcmkernel/scripts/bcm_git.sh
index 125b22f..c797c02 100755
--- a/bcmkernel/scripts/bcm_git.sh
+++ b/bcmkernel/scripts/bcm_git.sh
@@ -1,7 +1,7 @@
#! /bin/bash
set -eu -o pipefail
-bcm_modules=" \
+BCM_MODULES=" \
data_full_release \
data_gfast_src \
voice_addon \
@@ -283,6 +283,7 @@ add_release ()
{
local version=$1
local repo=$2
+ local bcm_modules="$3"
local do_merge=0; # only merge if the data_full_release was installed else skip.
# to add a release the full src needs to exist
@@ -333,7 +334,9 @@ add_release ()
add_all()
{
- local bcm_base_versions=$@
+ local bcm_base_versions="$1"
+ local repo_name="$2"
+ local bcm_modules="$3"
for base_version in $bcm_base_versions
do
@@ -341,7 +344,7 @@ add_all()
for pre_version in $bcm_pre_versions
do
echo "Adding release ${base_version}${pre_version}"
- add_release ${base_version}${pre_version} $repo_name
+ add_release ${base_version}${pre_version} $repo_name "$bcm_modules"
done
# real release
echo "Adding release ${base_version}"
@@ -369,6 +372,15 @@ DESCRIPTION
string of broadcom versions to add. ex
-R "5.04L.01 5.04L.02"
+ -m --module
+ extra "modules" to import. The default modules are
+ $BCM_MODULES.
+ Additional modules such as WiFi drivers can be supplied, for example
+ --module wlan-bin-all-17.10.157.2802 --module wlan-all-src-17.10.157.2802
+ to import both binaries and source for a specific WiFi driver version.
+ By convention, specify modules sorted by WiFi driver version number and
+ binaries before sources.
+
-t,--tars
directory where the Broadcom SDK tar files is located.
@@ -387,6 +399,7 @@ for arg in "$@"; do
case "$arg" in
"--help") set -- "$@" "-h" ;;
"--revision") set -- "$@" "-R" ;;
+ "--module") set -- "$@" "-m" ;;
"--repo") set -- "$@" "-r" ;;
"--tars") set -- "$@" "-t" ;;
"--prerelease") set -- "$@" "-p" ;;
@@ -395,9 +408,9 @@ for arg in "$@"; do
done
prerelease=0 # include prerelease ?? that is run add_all or add_release
-
+bcm_extra_modules=
# parse short opts
-while getopts "hr:R:t:p" opt; do
+while getopts "hr:R:m:t:p" opt; do
case ${opt} in
h )
usage
@@ -406,6 +419,9 @@ while getopts "hr:R:t:p" opt; do
R )
bcm_version=$OPTARG
;;
+ m )
+ bcm_extra_modules="${bcm_extra_modules} ${OPTARG}"
+ ;;
t )
# path to tar files needs to be absolute from / since the script is doing
# cd into the git repo and the tar files needs to be accessed after that cd is done.
@@ -462,9 +478,9 @@ fi
# do the import of tar files.
if [ "$prerelease" == "1" ]
then
- add_all $bcm_version
+ add_all "$bcm_version" "$repo_name" "$BCM_MODULES $bcm_extra_modules"
else
- add_release $bcm_version $repo_name
+ add_release "$bcm_version" "$repo_name" "$BCM_MODULES $bcm_extra_modules"
fi
###############################################################################
--
GitLab