From c39fc1ff07fec98afe53ac70941a19a91e3422d2 Mon Sep 17 00:00:00 2001 From: Bjørn Mork Date: Tue, 9 Aug 2016 11:02:23 +0200 Subject: qmi.pl: impref usage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Bjørn Mork --- scripts/qmi.pl | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/scripts/qmi.pl b/scripts/qmi.pl index a961f0b..655e7ea 100755 --- a/scripts/qmi.pl +++ b/scripts/qmi.pl @@ -1519,8 +1519,10 @@ i.e a stream of TLVs starting with 0x followed by the raw contents, all encoded Command aliases and expected arguments (no encoding): DMS: - impref [carrier] - carrier defaults to 'GENERIC', system is forced to DMS - + impref [carrier] [slot] - carrier defaults to 'GENERIC', system is forced to DMS + example: + $0 --device=wwan0 impref 02.08.02.00 002.007_000 GENERIC 1 + NAS: gstatus - Sierra Wireless specific, system is forced to NAS @@ -2268,8 +2270,10 @@ sub mk_img_str { } sub dms_set_fw_pref { - my ($fwver, $cfg, $carrier) = @_; - my $slot = 0xff; # FIXME: allow override? + my ($fwver, $cfg, $carrier, $slot) = @_; + if (!$slot || $slot !~ /^[1-4]$/) { + $slot = 0xff; + } my $req = &mk_dms(0x0048, # QMI_WDS_MODIFY_PROFILE_SETTINGS { 0x01 => pack("CC", 2, 0) . # arraylen = 2, type = 0 (modem) &mk_img_str($fwver, $cfg, $carrier) . @@ -2696,10 +2700,10 @@ if ($system == QMI_WDS) { } } elsif ($system == QMI_DMS) { if ($cmd eq 'impref') { - my ($fwver, $cfg, $carrier) = @ARGV; + my ($fwver, $cfg, $carrier, $slot) = @ARGV; $carrier ||= 'GENERIC'; &usage unless ($fwver =~ /^\d{2}\.\d{2}\.\d{2}\.\d{2}$/ && $cfg =~ /^\d{3}\.\d{3}_\d{3}$/); - &dms_set_fw_pref($fwver, $cfg, $carrier); + &dms_set_fw_pref($fwver, $cfg, $carrier, $slot); } } elsif ($system == QMI_NAS) { if (!$cmd) { -- cgit v1.2.3