On Wed, 28 Mar 2018 11:42:07 -0500 Rob Herring <robh@xxxxxxxxxx> wrote: > >> > >> > +where device-type is describing the type of device connected on the bus > >> > +(gpio-controller, sensor, ...). > >> > + > >> > +Required properties > >> > +------------------- > >> > +- reg: contains 3 cells > >> > + + first cell : encodes the I2C address. Should be 0 if the device does not > >> > + have one (0 is not a valid I3C address). > >> > >> Change here to "encodes the static I2C address". > >> > >> 0 is not a valid I2C address? > > > > According to [1] it is reserved, and it's reserved in the I3C spec > > anyway (see "Table 9 I3C Slave Address Restrictions" in the I3C spec). > > Sorry, what I meant was s/I3C/I2C/. The first cell is I2C address and > 0 is not valid. Okay, got it now :-). > > >> > + > >> > + + second and third cells: should encode the ProvisionalID. The second cell > >> > + contains the manufacturer ID left-shifted by 1. > >> > + The third cell contains ORing of the part ID > >> > + left-shifted by 16, the instance ID left-shifted > >> > + by 12 and the extra information. This encoding is > >> > + following the PID definition provided by the I3C > >> > + specification. > > > > One extra question for you: should I refer to the I3C_DEV(), > > I3C_DEV_WITH_STATIC_ADDR() and I2C_DEV() macros in the bindings doc? > > And if I do, should I use them my example? > > Well, I don't want to see "device@I3C_DEV(...)" for unit-addresses. That wouldn't work anyway. > You can use them for reg property, but it's somewhat pointless to use > it in one place and not the other. Not sure I follow you. These macros have been added to ease definitions of reg, but you'll still have to manually define the unit-address manually. Are you saying I should not use them in dts files or just that I should not mention it in the doc. If this is the former, then patch 6 should be dropped. -- Boris Brezillon, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com