On Thu, Sep 05, 2024 at 09:39:54AM -0700, Nikunj Kela wrote: > > On 9/5/2024 9:23 AM, Andrew Lunn wrote: > >> If the QUPs yaml changes are not included in the same series with > >> i2c,serial yaml changes, you see these errors: > >> > >> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/qcom/qcom,geni-se.example.dtb: geniqup@9c0000: serial@990000:compatible:0: 'qcom,sa8255p-geni-uart' is not one of ['qcom,geni-uart', 'qcom,geni-debug-uart'] > >> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/qcom/qcom,geni-se.example.dtb: geniqup@9c0000: i2c@984000:compatible:0: 'qcom,sa8255p-geni-i2c' is not one of ['qcom,geni-i2c', 'qcom,geni-i2c-master-hub'] > > So you have a couple of options: > > > > 1) It sounds like you should get the QUP changes merged first. Then > > submit the i2c,serial changes. Is there a reason you cannot do > > this? Is there a mutual dependency between these two series, or > > just a one way dependency? > > The ask in this thread is to create new yaml files since existing one is > using generic compatibles. With new yaml, we would need to provide > example and can't avoid it. If we have to provide example of QUP node, > IMO, we should provide a few subnodes as well since just QUP node > without subnodes(i2c/serial/spi) will not be very useful. Does it need to be useful, at the beginning? Was the development done all at once, i2c, serial and spi all mixed together, inseparable? More likely, you have a set of patches adding some sort of base, and hopefully a DT binding patch for that base. Then you add a driver in drivers/tty/serial, with patches which extend the DT binding with the serial port. You then add a driver in driver/i2c/busses and extend the DT binding for I2C. And then add a driver for SPI in drivers/spi, which again extends the DT binding? This would be typical for how an MFD would be posted. Please go search the lists for examples of MFDs you might be able to follow. Andrew