From patchwork Wed Mar 15 10:53:53 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 70122 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2261445wrd; Wed, 15 Mar 2023 04:07:25 -0700 (PDT) X-Google-Smtp-Source: AK7set9KIn7rjNKcy08jPCvhEQnt0rTL8LMfR0ZxeoMSgdUTskTo4evB64syYgTLv+WIrVNqbLLa X-Received: by 2002:a05:6a20:4420:b0:d5:e107:bd19 with SMTP id ce32-20020a056a20442000b000d5e107bd19mr3929079pzb.31.1678878444796; Wed, 15 Mar 2023 04:07:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1678878444; cv=none; d=google.com; s=arc-20160816; b=rMW0RuwSEck44tC8o/ZqKM8e7qU+d52Qi7dY08vFRMbn6EyOxiWWr9h8vfnkcW41UF kyHEo1Q/fkUHmFXvCufGa9lmpTe4d4M7+WlWa7fI0xLrv+47BlEbZ/IBZqvPUcsDYyyg +GWsTwHbLPwwWw73tqrlOXd17e4rG4Ugw9s/SJvx9amPtkBq4xPJzsrk++er5eYqve4A Dg4cLTH5Urxxkjbu/JgKKxNQLTDShhZ4wvjLpAvKnWhfjKFh8guDAbXmimcXEFxygRVK a3kFr1V7DwEcKtOhQfs8JeQ7/wi8DyiKh12rb6Zdfhl22xJ6hxUD8QsIDLrjdOXLyZwt 7P0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=wWXnI0SkCooJMA0/xwXnc2tbsdTrHiS7iL7LzBlT/8I=; b=NUmvwdfzA5yQbN9FuMOuNSpEJHNhtv8kCZIOP3lpMAZsHv5KVBOPRouRxuRrjuro52 hWC5c+LmqGcwBiMEUsVxYQ1YQIR1WtGWnOULMsdY/5ccU12RY9agnQWa5jaHka7ZkHub jGAkDHIWXPm4V6+suWQkhR8MEKGhrmCFekPovc0QnfycffVe4gIy0HznPZoLWTcT/l1X vZh43nVrAW8fY2EfgpgHTOdpf0mRmL/9lQBsi+YeRKKnRIGVX+mbVSPbUOPiWU7FZ+SG UJITECWSclE9ZNia1Y56CwkteCWM+OrPqYGN9lurbUOAFQTGCtJeRzMXz0itsOGcqKuL 6alg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Ps8EWqpJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e35-20020a635023000000b004dffd0e0409si4602558pgb.518.2023.03.15.04.07.11; Wed, 15 Mar 2023 04:07:24 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Ps8EWqpJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230018AbjCOKzQ (ORCPT + 99 others); Wed, 15 Mar 2023 06:55:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59292 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229878AbjCOKzN (ORCPT ); Wed, 15 Mar 2023 06:55:13 -0400 Received: from mta-64-227.siemens.flowmailer.net (mta-64-227.siemens.flowmailer.net [185.136.64.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CE64E38664 for ; Wed, 15 Mar 2023 03:55:10 -0700 (PDT) Received: by mta-64-227.siemens.flowmailer.net with ESMTPSA id 20230315105508c77470d0ee4c03592a for ; Wed, 15 Mar 2023 11:55:08 +0100 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=wWXnI0SkCooJMA0/xwXnc2tbsdTrHiS7iL7LzBlT/8I=; b=Ps8EWqpJu0XIKUeZoCPnNyId0MgnqxC8kvU+IC+/TqRIBJYNDdSZZEEoTrAkkpVkz9zIRf 9JrD8IlfUbg1o8ECIDm5YUDmBXjg4JPeKWNE6sKcjz32IEgf5gb5b4J0Q1vTKq6SFnccE/Or yTEcq0NGLSzyk4tJBYk2f99ZBjQVQ=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH v2 2/3] tty: n_gsm: allow window size configuration Date: Wed, 15 Mar 2023 11:53:53 +0100 Message-Id: <20230315105354.6234-2-daniel.starke@siemens.com> In-Reply-To: <20230315105354.6234-1-daniel.starke@siemens.com> References: <20230315105354.6234-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2, SPF_HELO_PASS,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1760431644371833842?= X-GMAIL-MSGID: =?utf-8?q?1760431644371833842?= From: Daniel Starke n_gsm is based on the 3GPP 07.010 and its newer version is the 3GPP 27.010. See https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=1516 The changes from 07.010 to 27.010 are non-functional. Therefore, I refer to the newer 27.010 here. Chapter 6 describes the error recovery mode option which is based on I frames. The k parameter defines the maximum number of I frames that a DLC can have unacknowledged as described in chapter 5.7.4. The current n_gsm implementation does not support the error recovery mode option. However, the k parameter is also part of the parameter negotiation message as described in chapter 5.4.6.3.1. Chapter 5.7.4 also notes that the allowed value range for k is 1-7. That means a 0 is counted as invalid here. This means that the user needs to configure a valid value here even if the function itself is not supported. Otherwise, parameter negotiation may fail. Allow setting of k via ioctl in gsm_config(). Range checks are already included. Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) v1 -> v2: No changes. Link: https://lore.kernel.org/all/20230228062957.3150-2-daniel.starke@siemens.com/ diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index 9d0e7701ffd4..5bbedfc36fd1 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -3276,8 +3276,8 @@ static int gsm_config(struct gsm_mux *gsm, struct gsm_config *c) int need_close = 0; int need_restart = 0; - /* Stuff we don't support yet - UI or I frame transport, windowing */ - if ((c->adaption != 1 && c->adaption != 2) || c->k) + /* Stuff we don't support yet - UI or I frame transport */ + if (c->adaption != 1 && c->adaption != 2) return -EOPNOTSUPP; /* Check the MRU/MTU range looks sane */ if (c->mru < MIN_MTU || c->mtu < MIN_MTU)