Hi Wolfram, On Fri, Sep 12, 2014 at 11:58 AM, Wolfram Sang <wsa@xxxxxxxxxxxxx> 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@xxxxxxxxxxxxxx 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 -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html