From mboxrd@z Thu Jan 1 00:00:00 1970 From: Geert Uytterhoeven Subject: Re: [RFC 4/4] ARM: shmobile: r8a7790: adapt DTS for I2C slave support Date: Fri, 12 Sep 2014 12:10:37 +0200 Message-ID: References: <1410274470-12712-1-git-send-email-wsa@the-dreams.de> <9935938.eKOCvCAtLt@fb07-iapwap2> <20140912083348.GA1289@katana> <7627175.tG5quZH0VN@fb07-iapwap2> <20140912095821.GB1930@katana> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: In-Reply-To: <20140912095821.GB1930@katana> Sender: linux-sh-owner@vger.kernel.org To: Wolfram Sang Cc: Marc Dietrich , Linux I2C , Linux-sh list , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Jean Delvare , Magnus Damm , Andrey Danin , "devicetree@vger.kernel.org" , Stephen Warren List-Id: linux-i2c@vger.kernel.org Hi Wolfram, On Fri, Sep 12, 2014 at 11:58 AM, Wolfram Sang wrote: > 2) Slave mode is needed for board bringup > > Some other components need a specific I2C slave to be present before > userspace is available, otherwise the system is unusable. This is IMO > then a hardware description and justifies DT entries: OK, I didn't think this case, which is similar to an external device requiring a GPIO to be at a specific level. > DT pseudocode: > > i2c { > compatible = "nvidia, tegra-i2c"; > > ec-slave@42 { > compatible = "nvidia, ax100-ec-slave"; > reg = <0x42>; > }; > }; So distinguishing between drivers providing slave services (using slave mode) and drivers driving actual slave hardware (using master mode) is done based on the compatible-property. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds