Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752115AbdHQHsn convert rfc822-to-8bit (ORCPT ); Thu, 17 Aug 2017 03:48:43 -0400 Received: from mail.free-electrons.com ([62.4.15.54]:51536 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750926AbdHQHsk (ORCPT ); Thu, 17 Aug 2017 03:48:40 -0400 Date: Thu, 17 Aug 2017 09:48:26 +0200 From: Boris Brezillon To: Geert Uytterhoeven Cc: Wolfram Sang , Arnd Bergmann , Linux I2C , Jonathan Corbet , "linux-doc@vger.kernel.org" , Greg Kroah-Hartman , Przemyslaw Sroka , Arkadiusz Golec , Alan Douglas , Bartosz Folta , Damian Kos , Alicja Jurasik-Urbaniak , Jan Kotas , Cyprian Wronka , Alexandre Belloni , Thomas Petazzoni , Nishanth Menon , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , "devicetree@vger.kernel.org" , Linux Kernel Mailing List Subject: Re: [RFC 2/5] i3c: Add core I3C infrastructure Message-ID: <20170817094826.2b9efcb8@bbrezillon> In-Reply-To: References: <1501518290-5723-1-git-send-email-boris.brezillon@free-electrons.com> <1501518290-5723-3-git-send-email-boris.brezillon@free-electrons.com> <20170731231509.77d1fba4@bbrezillon> <20170801142936.5df48702@bbrezillon> <20170801153414.6ce34ee8@bbrezillon> <20170801141218.GA1450@katana> <20170801164826.423183ff@bbrezillon> <20170801150108.GC1450@katana> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1263 Lines: 27 Le Wed, 16 Aug 2017 23:03:55 +0200, Geert Uytterhoeven a écrit : > On Tue, Aug 1, 2017 at 5:01 PM, Wolfram Sang wrote: > >> I'm perfectly fine with the I3C / I2C framework separation. The only > >> minor problem I had with that was the inaccuracy of the > >> sysfs/device-model representation: we don't have one i2c and one i3c > >> bus, we just have one i3c bus with a mix of i2c and i3c devices. > > > > I understand that. What if I2C had the same seperation between the "bus" > > and the "master"? > > There can be multiple masters on an i2c bus. But not on an i3c bus, due > to SCL being push/pull. I guess you mean there can't be a mix of I2C and I3C masters on the same bus. Then yes, you're right, you can only connect I2C slaves on an I3C bus, but I don't think Wolfram suggested this approach to support this case. Note that there can be multiple I3C masters on an I3C bus. When a 'secondary master' wants to become the current master it must ask the permission to the 'current master' which can decide to ack or nack the request. As soon as the previous 'current master' accepted to release the bus it should act as a slave and if it needs to reclaim the bus, it should ask the new 'current master'.