Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp823345pxb; Thu, 5 Nov 2020 14:05:55 -0800 (PST) X-Google-Smtp-Source: ABdhPJwUo8wc9wtZYQJvMHy4Czfk3QUaF2/PX2M6QQy54spWHgyGhwEfbm9/aerpMN8dnG5AXG6N X-Received: by 2002:a17:906:2f97:: with SMTP id w23mr4647172eji.54.1604613954924; Thu, 05 Nov 2020 14:05:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604613954; cv=none; d=google.com; s=arc-20160816; b=Q7PVoQf5OzTt5KHV78UdEaxbaUz+H0H2X7aBirRK0USLMclUpcWFr1ZarBqiwcsP6S ujyvk9FTF738PdbJNWLnnUqNyIHQd9YWFny0haEMeCBI7XRhZXA/8WhSeChYnOVIHmwY Ox6Xy7pbmgXo9Y5X2joUBO1d4v1p0NR97TWQcv9CI9mD3bSIG6YgQpm5MJh2QDjF8yRT XriLS2pE0rG5yEAmuRc1Nn88OCxeiiLNvOv61WNyP9aaFPkcGSqN+nAiGT5J6zDd5Tr1 3Vy8rqEVgiNDtb1RX8PEIKlnihV77/aRTGb67gRJPAE8KNRKUnbTlJf/iFVGknoK+ogW NJ2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=kkrL6/jK3eJFpTLVXsZRPhI+a3UIbjZsmKJ9Y1LYQJ0=; b=BA+wzUZe6mE4lQnvcp+I5rnAke4j4s+YcRjthGD7jK7SfRRyNj+uD1YzvuQ/3U/fWY Ghv+ZVqQMXHI4HNTlaA7fUS5ILrR0qtKX6XeiRH22kBm6Sy5qpHwwZrMs26pBRQAWINX E5vfppZlmRqbzDuVybi+cM8RHZhWgv26THUyrytIwzF4WSwKbLfpVXVYWptax7UTGFYH 4kD+pK0OjFODmEESsVmH8qpTyja4j2n/w6TLLQCClQb8FOF74tpDWIB8UMxyjoPRJXT/ BZMGoIGcyBqS2s1d2MFP2ug18pvGDzFjqJAV+ARBUURIfXK0DSWHTbLjhk9aIweax7gI mfFQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=l1zyt1jY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ec18si2090191ejb.679.2020.11.05.14.05.32; Thu, 05 Nov 2020 14:05:54 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=l1zyt1jY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732686AbgKEWA5 (ORCPT + 99 others); Thu, 5 Nov 2020 17:00:57 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58910 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732444AbgKEWAz (ORCPT ); Thu, 5 Nov 2020 17:00:55 -0500 Received: from mail-ej1-x643.google.com (mail-ej1-x643.google.com [IPv6:2a00:1450:4864:20::643]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 777A1C0613D2 for ; Thu, 5 Nov 2020 14:00:55 -0800 (PST) Received: by mail-ej1-x643.google.com with SMTP id oq3so4855315ejb.7 for ; Thu, 05 Nov 2020 14:00:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=kkrL6/jK3eJFpTLVXsZRPhI+a3UIbjZsmKJ9Y1LYQJ0=; b=l1zyt1jYkTklLUA4dKaMEI57G5m3V/WrJO9UWEROVOt1ialjv5+aPaK+2azNEcKZm0 vrcxfUIr6eZ8Kun/So75Mc20VmON8d5xdIS2rpzD+CsMBd2VqqhnemRqlDOnL66sjr1P Ecc5lreu6+8+82eLvbrs02WwGF4FFHLHcePgPZ8d4QfyEF9+q7bmSY/+90lZC5kIEp4O 5u8S7sFHPozXs0wKAV3gQx9l3oe6/V92olWejfApaKFk3N1zIixtWQeU33iTAoGmromx XUW+nJIH2V3f6sE6BWIFVXi1z/N5WJiO7KgF5iUw/PsjqHrTRre+btTWTFt0ilKSzUBm fn3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=kkrL6/jK3eJFpTLVXsZRPhI+a3UIbjZsmKJ9Y1LYQJ0=; b=mK2iN8P++qJIESb3fNNnNuFr9i8W58gjUd3UGNBRZc6oIqLfIHkgorefG25QnjpBzY AZwA4XsvzoSkIbh1RyRujEAxierDDagymrIw4TCQ01ZxQYk4JPL3iAUuGRH3GsuBZ8p3 rmGe6SPqjg3gDbBsb3OObDOgy5j3qMglMZYzJXuis+d/svXjdx2kk8YRg0Ht2DEjSR33 6lowTaU9B9z9DxkwtnczquVYhGgdWR5kOb4jZK+gCr3RoinsPYyaV+yu4DhxEuGL9qmg BkvVglh4Vv00xIlXXpU4MjnyXEdNHaSJOFZse9WqmJGL+LqIHHkMCCLJxSjMheGTXEox 1c5g== X-Gm-Message-State: AOAM530fQYBpyC8jn/xZsiSZU3afGQSE/ClvAR3KXvkYbPQywO7kAvCD nYA0oVUijIK5IBliKz96MrxlH2K3NVzaMABt/jFMsA== X-Received: by 2002:a17:906:ad8e:: with SMTP id la14mr4221902ejb.264.1604613654118; Thu, 05 Nov 2020 14:00:54 -0800 (PST) MIME-Version: 1.0 References: <20201023003338.1285642-1-david.m.ertman@intel.com> <20201023003338.1285642-2-david.m.ertman@intel.com> In-Reply-To: From: Dan Williams Date: Thu, 5 Nov 2020 14:00:00 -0800 Message-ID: Subject: Re: [PATCH v3 01/10] Add auxiliary bus support To: "Ertman, David M" Cc: "alsa-devel@alsa-project.org" , Takashi Iwai , Mark Brown , linux-rdma , Jason Gunthorpe , Doug Ledford , Netdev , David Miller , Jakub Kicinski , Greg KH , Ranjani Sridharan , Pierre-Louis Bossart , Fred Oh , Parav Pandit , "Saleem, Shiraz" , "Patil, Kiran" , Linux Kernel Mailing List , Leon Romanovsky Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Nov 5, 2020 at 11:28 AM Ertman, David M wrote: [..] > > > Each auxiliary_device represents a part of its parent > > > +functionality. The generic behavior can be extended and specialized as > > needed > > > +by encapsulating an auxiliary_device within other domain-specific > > structures and > > > +the use of .ops callbacks. Devices on the auxiliary bus do not share any > > > +structures and the use of a communication channel with the parent is > > > +domain-specific. > > > > Should there be any guidance here on when to use ops and when to just > > export functions from parent driver to child. EXPORT_SYMBOL_NS() seems > > a perfect fit for publishing shared routines between parent and child. > > > > I would leave this up the driver writers to determine what is best for them. I think there is a pathological case that can be avoided with a statement like the following: "Note that ops are intended as a way to augment instance behavior within a class of auxiliary devices, it is not the mechanism for exporting common infrastructure from the parent. Consider EXPORT_SYMBOL_NS() to convey infrastructure from the parent module to the auxiliary module(s)." As for your other dispositions of the feedback, looks good to me.