Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp8408868imu; Thu, 15 Nov 2018 11:03:36 -0800 (PST) X-Google-Smtp-Source: AJdET5fWfaEWz4cfc0eiZwdFWf25LhGjvgX1F3wyIrJ88JpT7IN71n5Ocs0oLOQ6T/zEhU6yp7/x X-Received: by 2002:a63:1d59:: with SMTP id d25mr4620713pgm.180.1542308616798; Thu, 15 Nov 2018 11:03:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542308616; cv=none; d=google.com; s=arc-20160816; b=KDqB+/G+GoFLkkhdL6qNl6AEhBAPCQAfQsnf/NdWSAXwEGgG8X8WNgRSRpiCbnvxiS PDoOnt6kMWpAcTge2p/xhYKnmvLeusqfyrt65DvE4dlVv9M/fnhQaLp0ATx+Gn5ur4m2 TK93oNOAL+wnn3JW08pbV+uASaIyolFH0KOBW5X12DBQwIhsbyxLX88ldAvYkyGgy3zU n4vbRsIf1F114GZptiqTo+dHrsyVKO2X+JaHyG0Oe/4GUrNv3qiudXokfU1T9scCOOBT MVlOcuMXfWkpQL4UtVlkRlFS4E1Huo25T4/nYqiXvexrAl0KdcomT8vpTbLHuFwn0EzJ hEWg== 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:message-id:subject:cc:to:from:date; bh=8xJ+0TYXM0itXX1L7AJnrm2Jh1SibSEkeSf6W1DLXGY=; b=ccJVs6hg7Q/IBFrdrkdGaZT3DrLqHvy0FOaMA+WaoPZJB3lKymLHSd+wb9es8wNgKr Ri2vrxOJCfLSVa0HBxmj38usF1meA4MdKazA9Hp7GOpWpDAw/cFkXtg0xgrA1QzDe+El AuyDmwjNxGfaYQrUkodXHaNYhZ9Xp0euA+vjkoCx3SlLp1G3qTokDm8bKy/yHnuoVDIP KMU1WeBSCd5ZTtqdVO9Hf3cEtpUmXhCgMD30lnAFwOYuu3zrZCxoF+vV61bLhe/fMF2e H4nfCjngXkbIWon2AU93P/Tqs4WPcDQOYbDTmgMfM6PHrFJbh3IeUDlGBbdEn0EbMwBb mxbA== 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 n3si27254292pgk.405.2018.11.15.11.03.21; Thu, 15 Nov 2018 11:03:36 -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; 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 S1727660AbeKPFKC (ORCPT + 99 others); Fri, 16 Nov 2018 00:10:02 -0500 Received: from mail.bootlin.com ([62.4.15.54]:52141 "EHLO mail.bootlin.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725742AbeKPFKB (ORCPT ); Fri, 16 Nov 2018 00:10:01 -0500 Received: by mail.bootlin.com (Postfix, from userid 110) id B6B762084B; Thu, 15 Nov 2018 20:00:59 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mail.bootlin.com X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT shortcircuit=ham autolearn=disabled version=3.4.2 Received: from bbrezillon (91-160-177-164.subs.proxad.net [91.160.177.164]) by mail.bootlin.com (Postfix) with ESMTPSA id 12B5920714; Thu, 15 Nov 2018 20:00:59 +0100 (CET) Date: Thu, 15 Nov 2018 20:00:58 +0100 From: Boris Brezillon To: vitor Cc: Wolfram Sang , , "Jonathan Corbet" , , Greg Kroah-Hartman , Arnd Bergmann , Przemyslaw Sroka , Arkadiusz Golec , Alan Douglas , Bartosz Folta , Damian Kos , Alicja Jurasik-Urbaniak , "Cyprian Wronka" , Suresh Punnoose , "Rafal Ciepiela" , Thomas Petazzoni , Nishanth Menon , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , "Kumar Gala" , , , Geert Uytterhoeven , Linus Walleij , Xiang Lin , , Sekhar Nori , Przemyslaw Gaj , Peter Rosin , Mike Shettel , Stephen Boyd , Mark Brown Subject: Re: [PATCH v10 0/9] Add the I3C subsystem Message-ID: <20181115200058.1869afdb@bbrezillon> In-Reply-To: <1d64f21a-ad24-94e0-2c17-25729ef59a31@synopsys.com> References: <20181026144333.12276-1-boris.brezillon@bootlin.com> <76b1d15d-232c-d8ba-5eba-8394e71be725@synopsys.com> <20181115135731.25f60990@bbrezillon> <20181115150137.GB4169@kunai> <20181115162826.42b54776@bbrezillon> <1d64f21a-ad24-94e0-2c17-25729ef59a31@synopsys.com> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 15 Nov 2018 18:03:47 +0000 vitor wrote: > Hi Boris, > > > On 15/11/18 15:28, Boris Brezillon wrote: > > On Thu, 15 Nov 2018 16:01:37 +0100 > > Wolfram Sang wrote: > > > >> Hi Boris, > >> > >>> What we could do though, is expose I3C devices that do not have a > >>> driver in kernel space, like spidev does. > >> ... > >> > >>> Mark, Wolfram, Arnd, Greg, any opinion? > >> Is there a benefit for having drivers in userspace? My gut feeling is to > >> encourage people to write kernel drivers. If this is, for some reason, > >> not possible for some driver, then we have a use case at hand to test > >> the then-to-be-developed userspace interface against. Until then, I > >> personally wouldn't waste effort on designing it without a user in > >> sight. > > I kind of agree with that. Vitor, do you have a use case in mind for > > such userspace drivers? I don't think it's worth designing an API for > > something we don't need (yet). > > My use case is a tool for tests, lets say like the i2c tools. What would you like to test exactly? > There is > other subsystems, some of them mentioned on this thread, that have and > ioctl system call or other method to change parameters or send data. I don't think they added the /dev interface before having a real use case for it. > > > I rise this topic because I really think it worth to define now how this > should be design (and for me how to do the things right) to avoid future > issues. Actually it should be done the other way around: you should have a real need and the /dev interface should be designed to fulfill this need. Based on this real use case we can discuss other potential usage that might appear in the future and try to design something more future-proof, but clearly, this userspace interface should be driven by a real/well-defined use case. Also, exposing things to userspace is way more risky than adding a new in-kernel subsystem/framework, because it then becomes part of the stable ABI. To make things clearer, I'm not against the idea of exposing I3C devices (or I3C buses) to userspace, but I'd like to understand what you plan to do with that. If this is about testing, what kind of tests you'd like to run. If this is about developing drivers in userspace, why can't these be done in kernel space (license issues?), and what would those drivers be allowed to do?