Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp300235pxu; Fri, 4 Dec 2020 03:44:07 -0800 (PST) X-Google-Smtp-Source: ABdhPJxC0wID/CUboT3/4EhUnZemDe89a4gKDZPKrpaZd1eG3BBbjddpNBRaRKdpMR69hpNo7GKR X-Received: by 2002:a17:906:25e:: with SMTP id 30mr6481266ejl.544.1607082247570; Fri, 04 Dec 2020 03:44:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607082247; cv=none; d=google.com; s=arc-20160816; b=J+XNZky6ic/KC0KTC+bJ8nQw+sNWzbGvzUt6gqE2dvFI7tNtWY0PxvZOtrQeu0odIp 6raWTUNAHK+rr4BYSGZxPSuv2n6xwRieGu3NjtfNb+J0USk7ivC5hKy3N41iNwLfQtph FldSRHSX+cAosqg2WfU1KsX8O857tzkqA7AoUZzRbsbJTkl6R9m+n4oYcj0Vol9bwdRy 6y8142D31Hsayd7GsydNxb+ece9TIjLsn6/3CdYq1Qx7DWzMWhVJ+n9xXmJvcSeL4p2F L8crLYcHvSu3zLlP3ezuKROkNztUFQ5X2ZHNkwVG/+nXDo+wqqdLtyDcwaACFKolCu92 0rjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:dkim-signature:date; bh=qbU6dW7FhD65iBHUsRzULfxIai07mGSfFK0htJCq6x0=; b=cLZUz2GAH8Fxqctl7QdeULlxBY1i1SzVQGbKpFKQpLhyhjHsjMUihWCdJCIr3ImrNW r0lalKHcPlZeB7YTHir03keA3WJTbmO9vuncEtS/8L7vBf88LAzX8IJXbgjeLrBCDtHO bYNJj8hktSr/U0SyINl0EVaQzdeFTA7lQV2gOgEV53xdyBVeVxto2IWRjUtnmjKqO70z tihIdNopAjcDgkEhRrOY4JZ09pGcrWefJ4kZzIpulxRVpYRoAuF1a6saFVRLuJN7/1fY jBReIdM9ByoZc5GltDfJ7JcqlYZBEsEbcp43LryJjsEyiCwR2cezslgOEx3vfcN+zfi8 WbZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=pgzHwqQI; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g3si1159311ejx.230.2020.12.04.03.43.44; Fri, 04 Dec 2020 03:44:07 -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=@linuxfoundation.org header.s=korg header.b=pgzHwqQI; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730114AbgLDLmL (ORCPT + 99 others); Fri, 4 Dec 2020 06:42:11 -0500 Received: from mail.kernel.org ([198.145.29.99]:38134 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725999AbgLDLmL (ORCPT ); Fri, 4 Dec 2020 06:42:11 -0500 Date: Fri, 4 Dec 2020 12:42:46 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1607082090; bh=U+D8jQyF2x7hxn+mgXKApvlrbJWVFjxv8aEqAKyetO4=; h=From:To:Cc:Subject:References:In-Reply-To:From; b=pgzHwqQII3NRBJIRuBKi8KUHFpoykh2NAC8oAmuATii8kf7GxzUu5WwCliXD1+7KD SLwaG5RKj8YEjSZFdnw97/idOqD3UmftByYTQE+u1gB6pQ6RRVQK/is2uWeoAyR3nd lB+8Q9xv9WeKHfmSB1weOGsoHXMTlFdTgFgW5VJ0= From: Greg KH To: Dan Williams Cc: broonie@kernel.org, lgirdwood@gmail.com, davem@davemloft.net, kuba@kernel.org, jgg@nvidia.com, Kiran Patil , Ranjani Sridharan , Fred Oh , Leon Romanovsky , Dave Ertman , Pierre-Louis Bossart , Shiraz Saleem , Parav Pandit , Martin Habets , linux-rdma@vger.kernel.org, netdev@vger.kernel.org, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: Re: [resend/standalone PATCH v4] Add auxiliary bus support Message-ID: References: <160695681289.505290.8978295443574440604.stgit@dwillia2-desk3.amr.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <160695681289.505290.8978295443574440604.stgit@dwillia2-desk3.amr.corp.intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Dec 02, 2020 at 04:54:24PM -0800, Dan Williams wrote: > From: Dave Ertman > > Add support for the Auxiliary Bus, auxiliary_device and auxiliary_driver. > It enables drivers to create an auxiliary_device and bind an > auxiliary_driver to it. > > The bus supports probe/remove shutdown and suspend/resume callbacks. > Each auxiliary_device has a unique string based id; driver binds to > an auxiliary_device based on this id through the bus. > > Co-developed-by: Kiran Patil > Co-developed-by: Ranjani Sridharan > Co-developed-by: Fred Oh > Co-developed-by: Leon Romanovsky > Signed-off-by: Kiran Patil > Signed-off-by: Ranjani Sridharan > Signed-off-by: Fred Oh > Signed-off-by: Leon Romanovsky > Signed-off-by: Dave Ertman > Reviewed-by: Pierre-Louis Bossart > Reviewed-by: Shiraz Saleem > Reviewed-by: Parav Pandit > Reviewed-by: Dan Williams > Reviewed-by: Martin Habets > Link: https://lore.kernel.org/r/20201113161859.1775473-2-david.m.ertman@intel.com > Signed-off-by: Dan Williams > --- > This patch is "To:" the maintainers that have a pending backlog of > driver updates dependent on this facility, and "Cc:" Greg. Greg, I > understand you have asked for more time to fully review this and apply > it to driver-core.git, likely for v5.12, but please consider Acking it > for v5.11 instead. It looks good to me and several other stakeholders. > Namely, stakeholders that have pressure building up behind this facility > in particular Mellanox RDMA, but also SOF, Intel Ethernet, and later on > Compute Express Link. > > I will take the blame for the 2 months of silence that made this awkward > to take through driver-core.git, but at the same time I do not want to > see that communication mistake inconvenience other parties that > reasonably thought this was shaping up to land in v5.11. > > I am willing to host this version at: > > git://git.kernel.org/pub/scm/linux/kernel/git/djbw/linux tags/auxiliary-bus-for-5.11 > > ...for all the independent drivers to have a common commit baseline. It > is not there yet pending Greg's Ack. > > For example implementations incorporating this patch, see Dave Ertman's > SOF series: > > https://lore.kernel.org/r/20201113161859.1775473-2-david.m.ertman@intel.com > > ...and Leon's mlx5 series: > > http://lore.kernel.org/r/20201026111849.1035786-1-leon@kernel.org > > PS: Greg I know I promised some review on newcomer patches to help with > your queue, unfortunately Intel-internal review is keeping my plate > full. Again, I do not want other stakeholder to be waiting on me to > resolve that backlog. Ok, I spent some hours today playing around with this. I wrote up a small test-patch for this (how did anyone test this thing???) and while it feels awkward in places, and it feels like there is still way too much "boilerplate" code that a user has to write and manage, I don't have the time myself to fix it up right now. So I'll go apply this to my tree, and provide a tag for everyone else to be able to pull from for their different development trees so they can work on. I do have 3 follow-on patches that I will send to the list in response to this message that I will be applying on top of this patch. They do some minor code formatting changes, as well as change the return type of the remove function to make it more future-proof. That last change will require users of this code to change their implementations, but it will be obvious what to do as you will get a build warning. Note, I'm still not comfortable with a few things here. The documentation feels odd, and didn't really help me out in writing any test code, which doesn't seem right. Also the use of strings and '.' as part of the api feels awkward, and messy, and of course, totally undocumented. But, as the use of '.' is undocumented, that means we can change it in the future! Because no driver or device name should ever be a user api reliant thing, if we come up with a better way to do all of this in the future, that shouldn't be a problem to change existing users over to this. So this is a warning to everyone, you CAN NOT depend on the sysfs name of a device or bus name for any tool. If so, your userspace tool is broken. Thanks for everyone in sticking with this, I know it's been a long slog, hopefully this will help some driver authors move forward with their crazy complex devices :) thanks, greg k-h