Received: by 2002:a25:f815:0:0:0:0:0 with SMTP id u21csp1079018ybd; Wed, 26 Jun 2019 10:49:16 -0700 (PDT) X-Google-Smtp-Source: APXvYqyN6wjdPCNx9anJ6VLTf7ogHXjMfJfj8epjeuitfoBGcY+3LWbjVibsm+WdFchP+cHhHUVV X-Received: by 2002:a17:90a:ad41:: with SMTP id w1mr354503pjv.52.1561571356563; Wed, 26 Jun 2019 10:49:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1561571356; cv=none; d=google.com; s=arc-20160816; b=bDOT6sk78hXXLmZ7jzplBw1RMYY//b4DB0FFBIKQk5arMl39KUbHbN5dozpYdJtqek FjXVaPrMwbWRWpMPzzGKud/GqTNfKF4hbRaRvmOPVaqy3iA/999Lg8Yzxa+KPn79V3tl m9N0aqaF6z1ARO29V7h7QtZA0JHZTQQCcOeHr+p7kHu2y7PjZfiQZPEzSFvwqOAt8cbb 8qpHdaq0Wq4RjDJ9XTOczUSALfYhaWNsYFUstSV2B4oJkZWovod+lEn1X4TqyjPwKIJd Vf2QGut/9+JvyLG1GUU+YJmG1XK7EzB9zHBcAvH87Eg7E6PARPsrxcJUZ6e/rp5gAlxF 5ktQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id; bh=ln0+8Npjfn2W+GjgKiOtCirnH1l8pkeRT5EBU8eEnk4=; b=yjhxqh6LUVLUSZY31oFZ5uEGb+jH+0Q7wcjr+ic267M/wWiOA+CBkmJor9v82+p6xX tE/0vtGN2Wi3CqwOTqRdMkDt3MY7teWZYZ/qJqbkRI9VdjbGZ9skunPfzLoI4me4e9SN OquPjPwQ5yivCA3ghTAbGTbr6u1fDx9LBEfblW0V4YSX0//Aj6oSJUzc4ime7zF1xkUe N/4clIQf+8KDuua779JUHhbO5Lu4hkIg6q+k+cVw2QT75IhXx+dIoV8z4ueZ6dJKACYR PwMORsqN+JpgkIGDfWbH9D467HFglAC0MoVO9JMLYtksspbQxYtNQZgYVsGdNfE0wd44 wy5Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i5si2482602pjk.57.2019.06.26.10.48.59; Wed, 26 Jun 2019 10:49:16 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726381AbfFZRsx (ORCPT + 99 others); Wed, 26 Jun 2019 13:48:53 -0400 Received: from s3.sipsolutions.net ([144.76.43.62]:46802 "EHLO sipsolutions.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726179AbfFZRsx (ORCPT ); Wed, 26 Jun 2019 13:48:53 -0400 Received: by sipsolutions.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1hgC2C-0007vw-Ho; Wed, 26 Jun 2019 19:48:40 +0200 Message-ID: <9e46f95b8727c8b95aedb144970986a21266983c.camel@sipsolutions.net> Subject: Re: [PATCH v2 00/17] net: introduce Qualcomm IPA driver From: Johannes Berg To: Arnd Bergmann , Alex Elder Cc: Dan Williams , Subash Abhinov Kasiviswanathan , abhishek.esse@gmail.com, Ben Chan , Bjorn Andersson , cpratapa@codeaurora.org, David Miller , DTML , Eric Caruso , evgreen@chromium.org, Ilias Apalodimas , Linux ARM , linux-arm-msm@vger.kernel.org, Linux Kernel Mailing List , linux-soc@vger.kernel.org, Networking , syadagir@codeaurora.org Date: Wed, 26 Jun 2019 19:48:38 +0200 In-Reply-To: (sfid-20190626_155908_107021_A3066824) References: <380a6185-7ad1-6be0-060b-e6e5d4126917@linaro.org> <36bca57c999f611353fd9741c55bb2a7@codeaurora.org> <153fafb91267147cf22e2bf102dd822933ec823a.camel@redhat.com> (sfid-20190626_155908_107021_A3066824) Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.5 (3.28.5-3.fc28) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2019-06-26 at 15:58 +0200, Arnd Bergmann wrote: > > > The IPA hardware is actually something that sits *between* the > > AP and the modem. It implements one form of communication > > pathway (IP data), but there are others (including QMI, which > > presents a network-like interface but it's actually implemented > > via clever use of shared memory and interrupts). > > Can you clarify how QMI fits in here? Do you mean one has to > talk to both IPA and QMI to use the modem, or are these two > alternative implementations for the same basic purpose? I'm not going to comment on QMI specifically, because my understanding might well be wrong, and any response to your question will likely correct my understanding :-) (Thus, you should probably also ignore everything I ever said about QMI) > My previous understanding was that from the hardware perspective > there is only one control interface, which is for IPA. Part of this > is abstracted to user space with ioctl commands to the IPA driver, > and then one must set up rmnet to match these by configuring > an rmnet device over netlink messages from user space, but > rmnet does not have a control protocol with the hardware. Right so this is why I say it's confusing when we just talk about "control interface" or "path". I see multiple layers of control * hardware control, which you mention here. This might be things like "enable/disable aggregation on an rmnet channel" etc. I guess this type of thing would have been implemented with ioctls? Not the aggregation specifically, but things that affect how you set up the hardware. * modem control, which we conflate, but can be like AT commands or MBIM. From the kernel driver POV, this is actually just another channel it provides for userspace to talk to the modem. johannes