Received: by 10.192.165.148 with SMTP id m20csp205258imm; Thu, 26 Apr 2018 19:32:36 -0700 (PDT) X-Google-Smtp-Source: AB8JxZrvzINXGaR/g427KZ47Bf20MWKNPqEmu/qMx/vKcyCKUNHgVJH+8H9qOD8LG/A2oYQKtyDz X-Received: by 2002:a17:902:6113:: with SMTP id t19-v6mr520224plj.372.1524796355999; Thu, 26 Apr 2018 19:32:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524796355; cv=none; d=google.com; s=arc-20160816; b=D+KgMQDohFNOr9RHFhmkJxKlQ/hx/0xSFB5r+/UOjwLPfssdAuIX8PAKghoSqAjITq suO4WjVg7+2OSg/P4IPy6SYH/A5ZgEIix01kM9LH7U2q+N5cBjE/nlz3GKF4u2IvgLCh 95AN+VpLhz1FlL2pGXdD6vmW0rNqHj4TOOUItYgOywcPdbDO+T9/nukUqvYmvWF5dd6i DZJpZoSWtOxa2hAnvT3OkpuH88ksPJaXnncfRa4FpNzk5PkzXvbXfTa/8tJzJdCYoBBE SAjfD6GXlAz/wkg49bsCwNy3pmjnI0l/lCVeLxpV2k365UbVohqeygxcvhVnFQZzBwlM hd/A== 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 :message-id:date:subject:cc:to:from:arc-authentication-results; bh=FWyWCj008lRDGnSti29b6EB/gS4sP/rgUuZ6TcxBB3g=; b=hvs6YdUIs7b5AnSPXjqi7oDk/UazbzYS7VRbl2UYb92JasoH6peexvYbOscCmoQVWC UxgVND/s8ysD+1OmMVMJcddmsRDWwR/dW/IiGXEkzaY+Bb57VCOCvQt52zak353J7qWV dHBMviuvK6/2VEyQsGF6kdI1tfpLtWibh4abkBwR6YeP6kAZuhwlaZt3Q6AkSq2pah9L Bw3qGEJmFRC1CWE8jEnXFHfFIbdnFzFVG/vz1lqK2Y0VNbm83SB0iRHMZyhKFC4TTPU+ P+ksq9DZidxeUGtaJXM6ldldA1J5o36fXU5jBYqsQnixajofzFrL8w3PjsIEp7Wyk5QV jTSw== 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 i124-v6si297128pgd.111.2018.04.26.19.32.22; Thu, 26 Apr 2018 19:32:35 -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 S1757369AbeD0CaX (ORCPT + 99 others); Thu, 26 Apr 2018 22:30:23 -0400 Received: from alexa-out-sd-01.qualcomm.com ([199.106.114.38]:58345 "EHLO alexa-out-sd-01.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757297AbeD0C3z (ORCPT ); Thu, 26 Apr 2018 22:29:55 -0400 Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-01.qualcomm.com with ESMTP; 26 Apr 2018 19:23:43 -0700 X-IronPort-AV: E=McAfee;i="5900,7806,8875"; a="147817301" Received: from sdias-linux.qualcomm.com (HELO sdias-linux1.qualcomm.com) ([10.46.162.58]) by ironmsg03-sd.qualcomm.com with ESMTP; 26 Apr 2018 19:23:40 -0700 Received: by sdias-linux1.qualcomm.com (Postfix, from userid 84243) id F03F73B2A; Thu, 26 Apr 2018 19:23:39 -0700 (PDT) From: Sujeev Dias To: Greg Kroah-Hartman , Arnd Bergmann Cc: Sujeev Dias , linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Tony Truong Subject: MHI initial design review Date: Thu, 26 Apr 2018 19:23:27 -0700 Message-Id: <1524795811-21399-1-git-send-email-sdias@codeaurora.org> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Greg Kroah-Hartman\All This is the initial submit of Modem Host Interface (MHI) stack for upstream consideration. MHI is a communication protocol to communicate with external Qualcomm modems and Wi-Fi chipsets over high speed peripheral buses. Even though MHI doesn’t dictate underlying physical layer, protocol and mhi stack is structured for PCIe based devices. For additional details related to MHI interface please see Documentation/mhi.txt. MHI stack partitioned into three main components: 1. Core layer handles all MHI protocol specific actions such as firmware download, and data transfer /drivers/bus/mhi/core/* 2. Control layer bus master, manages power transitions of external modem. /drivers/bus/mhi/controllers/* 3. Device drivers MHI channels (physical transport channels) exposed as mhi devices for clients to send and receive data. /drivers/bus/mhi/device/* There are three ways which clients can interface with MHI framework to send and receive data from external modem. 1. Register directly with mhi core layer as a mhi device driver 2. User space clients can interface via mhi_uci driver. 3. For net traffic, mhi_netdev can be used. Can you please do a high-level design review of the MHI driver and let me know if I need to make any design changes before the drivers can be considered for upstream. Thanks Sujeev