From patchwork Mon Dec 18 14:00:55 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Bj=C3=B8rn_Mork?= X-Patchwork-Id: 850079 X-Patchwork-Delegate: blogic@openwrt.org Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.infradead.org (client-ip=65.50.211.133; helo=bombadil.infradead.org; envelope-from=lede-dev-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="PvfXMLZA"; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=mork.no header.i=@mork.no header.b="fQugHj44"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3z0jxw0txGz9s7m for ; Tue, 19 Dec 2017 01:25:56 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:MIME-Version:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=bkM4iqCt9VN3ExzlPiRAFMiKHNbO9MVKs8oh/QMy/oY=; b=PvfXMLZAvm07mi mjsunkmVB1gn3l5JXVGvB6Brl2M3CssKPdZISgBoNVVIw04+PX8Ub0e10MYg15fBXAWDaduPTiMoa IvXM4MdDUg7KFP1tu8NRUNfR4j/Kp1TtN9Xta+OqFN623PVsq2goumu8DWIxS6wMZTvcjqiOdVBJF 8RlXqsrg3q3C/kMT7cdDwd8gOCVO9qxRm7zWQnWI2RyMrTOckWyRCl/Kuk7tnxITCpDah7wBi4dmk nPptt8p9ks5KJO/7ZUSxsRPt49SsBTPpITaWqPJnRy2JVbHqzGljRK/S+RYHZC6U16XpHS3/jT2Hz lJBKQ/s4qu0nrTxAOMNw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.89 #1 (Red Hat Linux)) id 1eQwMP-0005T4-Bn; Mon, 18 Dec 2017 14:25:41 +0000 Received: from canardo.mork.no ([2001:4641::1]) by bombadil.infradead.org with esmtps (Exim 4.89 #1 (Red Hat Linux)) id 1eQwLZ-0004ed-U8 for lede-dev@lists.infradead.org; Mon, 18 Dec 2017 14:24:52 +0000 Received: from miraculix.mork.no ([IPv6:2a02:2121:280:af8e:a0c6:9dff:fee9:c413]) (authenticated bits=0) by canardo.mork.no (8.15.2/8.15.2) with ESMTPSA id vBIEOa9U006300 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 18 Dec 2017 15:24:37 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mork.no; s=b; t=1513607077; bh=/andYD0d2U00aD3u006R5iErdnhO1w3QcrxXFmT+jPo=; h=From:To:Cc:Subject:Date:Message-Id:References:From; b=fQugHj44m5idB/l/A1mCEpps+E+BqD2AVIww8Ec80P3BgKoQKrz4hYeOONS3IC40h g6t2Mr4FePzjtQrr+Ht3nlpDC8F0GShfgBLKR1BSjGDYzKLgPbe9MBodRyQBG2M/yV oI+BfrSrAT+RSqGgFudRu0/o6gHkN4otenYvjD8o= Received: from bjorn by miraculix.mork.no with local (Exim 4.89) (envelope-from ) id 1eQvyf-00031Q-Ir; Mon, 18 Dec 2017 15:01:09 +0100 From: =?utf-8?q?Bj=C3=B8rn_Mork?= To: Felix Fietkau Date: Mon, 18 Dec 2017 15:00:55 +0100 Message-Id: <20171218140056.11551-3-bjorn@mork.no> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20171218140056.11551-1-bjorn@mork.no> References: <20171218140056.11551-1-bjorn@mork.no> MIME-Version: 1.0 X-Virus-Scanned: clamav-milter 0.99.2 at canardo X-Virus-Status: Clean X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20171218_062450_558033_BBBC0906 X-CRM114-Status: UNSURE ( 7.06 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -4.3 (----) X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary: Content analysis details: (-4.3 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at http://www.dnswl.org/, medium trust [2001:4641:0:0:0:0:0:1 listed in] [list.dnswl.org] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid Subject: [LEDE-DEV] [PATCH 2/3] support Quanta and Blackberry modes X-BeenThere: lede-dev@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lede-dev@lists.infradead.org, Jo-Philipp Wich , =?utf-8?q?Bj=C3=B8rn_Mork?= Sender: "Lede-dev" Errors-To: lede-dev-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org Quanta mode was introduced in usb_modeswitch 1.2.6 and Blackberry mode in usb_modeswitch 1.2.7 Signed-off-by: Bjørn Mork --- convert-modeswitch.pl | 2 ++ switch.c | 21 +++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/convert-modeswitch.pl b/convert-modeswitch.pl index 71c2b7950cb5..48d0fd43bfce 100755 --- a/convert-modeswitch.pl +++ b/convert-modeswitch.pl @@ -62,6 +62,8 @@ my %options = ( MBIM => $mode_option, HuaweiMode => $mode_option, HuaweiNewMode => $mode_option, + QuantaMode => $mode_option, + BlackberryMode => $mode_option, OptionMode => $mode_option, SierraMode => $mode_option, SonyMode => $mode_option, diff --git a/switch.c b/switch.c index b3f62fa0da29..fe25e800dc33 100644 --- a/switch.c +++ b/switch.c @@ -375,6 +375,23 @@ static void handle_mbim(struct usbdev_data *data, struct blob_attr **tb) } } +static void handle_quanta(struct usbdev_data *data, struct blob_attr **tb) +{ + int type = LIBUSB_REQUEST_TYPE_VENDOR | LIBUSB_RECIPIENT_DEVICE | LIBUSB_ENDPOINT_IN; + + detach_driver(data); + send_control_packet(data, type, 0xff, 0, 0, 8); +} + +static void handle_blackberry(struct usbdev_data *data, struct blob_attr **tb) +{ + int type = LIBUSB_REQUEST_TYPE_VENDOR | LIBUSB_RECIPIENT_DEVICE | LIBUSB_ENDPOINT_IN; + + detach_driver(data); + send_control_packet(data, type, 0xb1, 0x0000, 0, 8); + send_control_packet(data, type, 0xa9, 0x000e, 0, 8); +} + static void set_alt_setting(struct usbdev_data *data, int setting) { if (libusb_claim_interface(data->devh, data->interface)) @@ -399,6 +416,8 @@ enum { MODE_CISCO, MODE_MBIM, MODE_OPTION, + MODE_QUANTA, + MODE_BLACKBERRY, __MODE_MAX }; @@ -420,6 +439,8 @@ static const struct { [MODE_CISCO] = { "Cisco", handle_cisco }, [MODE_MBIM] = { "MBIM", handle_mbim }, [MODE_OPTION] = { "Option", handle_option }, + [MODE_QUANTA] = { "Quanta", handle_quanta }, + [MODE_BLACKBERRY] = { "Blackberry", handle_blackberry }, }; void handle_switch(struct usbdev_data *data)