Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp4909354ybv; Mon, 17 Feb 2020 08:15:07 -0800 (PST) X-Google-Smtp-Source: APXvYqzPk6Qx117rAptKBbGr6OJk6y6Wxh2zodIRXB8+70cgXTd5H46D/NR0q0Q27xUj50IRV4Zi X-Received: by 2002:aca:aa0e:: with SMTP id t14mr10776477oie.149.1581956107445; Mon, 17 Feb 2020 08:15:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581956107; cv=none; d=google.com; s=arc-20160816; b=Admhl/bjIyPXMCY5f5IfjDy7uqfy/1NxlXT8F3/jfWm8dk7qz+GPJbGUZyfJD+aY0g NN2pZi4h+r30ly0hbTs8jG32FSZzha7T5EgKKHmbOdVZAWinO8PGAGWuweNKfJ18j1rd dqWd3JktloY/nHcePgzA4gQx04HRkRG69VPdw/FPSPx/HW21OVj/ZoMTLHjtSSSI/nuW 0BfZd0+qezfcsxADdYnf2Mbvy0kf70YxyMGE2VNBL8fddBljRapqOi8J0cHQQImTwvbe MoRSUJbPxMdG/1zYjIobYhfs2iISCuDE9Dt6xa7sVnZMwf0XekjOc4Spy0fNBArSxCSq QyUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=UgcPBQ7CNSGXY8Xu+92Rfes8otvMGYy7oStvb2+VOOo=; b=hjQQ8orUKkyX5590tXevMm2YkjJKeTUFCWA8+YClf4NiH1+dKlD+6vieDJFQTQ/oU0 JJjXAgI2B5+ar5Tnqh4sTwOOamzDZmWEuBwZuvQe10ekntbojL916XVOG4VS3iCAykk3 xHHz8BS2yLLdxUZi71fI2Mpr1U640TOqdbtO1eG5ZBfVcMLEnSHUT/1FoBY/7dBrPtFh BdFupsIftm8QIhd+DfwWf0BKti7c/dHq6Iki0OIIUhopeMgSmH2m6a1Ae5obN84GwAt3 XIyzbo/znasdcIjS9cqjYr91TRYqQOKYjvTWBSPKLS41SJL2Ffxd06QSRAezCBPkS9l7 ljlA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=E0U1OKN6; 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 u12si391125otq.51.2020.02.17.08.14.52; Mon, 17 Feb 2020 08:15:07 -0800 (PST) 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; dkim=pass header.i=@kernel.org header.s=default header.b=E0U1OKN6; 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 S1729044AbgBQQDs (ORCPT + 99 others); Mon, 17 Feb 2020 11:03:48 -0500 Received: from mail.kernel.org ([198.145.29.99]:53498 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726492AbgBQQDs (ORCPT ); Mon, 17 Feb 2020 11:03:48 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C249F20679; Mon, 17 Feb 2020 16:03:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1581955427; bh=zQUBgUJ2ADvgmEghqQUPA0mRqlNGYYqucg4WuZ5HL1I=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=E0U1OKN6El32rOayHDQuAh+bO0lJfJkm/Z6RM/Om2xqb6sr2OtupgIkXQZ3bI0UUj mfTWoKJs+vBIF2QOfOCesioO7Ke/yq0ZnvgFr5oTqtkSr+e2oFXNsKUtcKWcMs0/vg nLzh4lZGDKV/MK9gIZanVyz+nSS0wWIEzO9/Pf4M= Date: Mon, 17 Feb 2020 17:03:45 +0100 From: gregkh To: Vitor Soares Cc: Boris Brezillon , Arnd Bergmann , "linux-kernel@vger.kernel.org" , "linux-i3c@lists.infradead.org" , Jose Abreu , Joao Pinto , Wolfram Sang , Boris Brezillon , Mark Brown Subject: Re: [RFC v2 0/4] Introduce i3c device userspace interface Message-ID: <20200217160345.GA1501229@kroah.com> References: <20200217155141.08e87b3f@collabora.com> <20200217163622.6c78fa3f@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Feb 17, 2020 at 03:55:08PM +0000, Vitor Soares wrote: > Hi, > > From: Boris Brezillon > Date: Mon, Feb 17, 2020 at 15:36:22 > > > On Mon, 17 Feb 2020 16:06:45 +0100 > > Arnd Bergmann wrote: > > > > > On Mon, Feb 17, 2020 at 3:51 PM Boris Brezillon > > > wrote: > > > > Sorry for taking so long to reply, and thanks for working on that topic. > > > > > > > > On Wed, 29 Jan 2020 13:17:31 +0100 > > > > Vitor Soares wrote: > > > > > > > > > For today there is no way to use i3c devices from user space and > > > > > the introduction of such API will help developers during the i3c device > > > > > or i3c host controllers development. > > > > > > > > > > The i3cdev module is highly based on i2c-dev and yet I tried to address > > > > > the concerns raised in [1]. > > > > > > > > > > NOTES: > > > > > - The i3cdev dynamically request an unused major number. > > > > > > > > > > - The i3c devices are dynamically exposed/removed from dev/ folder based > > > > > on if they have a device driver bound to it. > > > > > > > > May I ask why you need to automatically bind devices to the i3cdev > > > > driver when they don't have a driver matching the device id > > > > loaded/compiled-in? If we get the i3c subsystem to generate proper > > > > uevents we should be able to load the i3cdev module and bind the device > > > > to this driver using a udev rule. > > > > > > I think that would require manual configuration to ensure that the correct > > > set of devices get bound to either the userspace driver or an in-kernel > > > driver. > > > > Hm, isn't that what udev is supposed to do anyway? Remember that > > I3C devices expose a manufacturer and part-id (which are similar to the > > USB vendor and product ids), so deciding when an I3C device should be > > bound to the i3cdev driver should be fairly easy, and that's a > > per-device decision anyway. > > > > > The method from the current patch series is more complicated, > > > but it means that any device can be accessed by the user space driver > > > as long as it's not already owned by a kernel driver. > > > > Well, I'm more worried about the extra churn this auto-binding logic > > might create for the common 'on-demand driver loading' use case. At > > first, there's no driver matching a specific device, but userspace > > might load one based on the uevents it receives. With the current > > approach, that means we'd first have to unbind the device before > > loading the driver. AFAICT, no other subsystem does that. > > I'm about to finish v3 (today or tomorrow) and I think I fixed all > concerns rise during v2. I would like you to see that version before any > change. Why are there so many "RFC" series here? I treat "RFC" as "I don't really like this patch but I'm throwing it out there for others to look at if they care". No RFC should ever go on beyond a v1 as obviously you think this is good enough by now, right? Also, I almost never review RFC patches, we have enough "real" patches to review as it is :) thanks, greg k-h