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