* Question about compatible fallback and documentation
@ 2019-04-14 16:18 Clément Péron
2019-04-29 22:05 ` Rob Herring
0 siblings, 1 reply; 3+ messages in thread
From: Clément Péron @ 2019-04-14 16:18 UTC (permalink / raw)
To: devicetree, Rob Herring
Hi,
I have to bind an already existing IP by a vendor in a new SoC called
"SOC3" device-tree.
In the 1st gen of "SOC1" the IP is introduced :
soc1.dtsi :
compatible = "vendor,ip-soc1";
Then a 2nd gen of the IP is introduced in "SOC2" with new registers.
But the driver of the 1st gen is still working fine and no update of
the existing driver has been introduced because not required.
soc2.dtsi :
compatible = "vendor,ip-soc2", "vendor,ip-soc1";
Finally in "SOC3" and regardind the user manual we think that the IP
introduced is the same as "SOC2".
Should the compatible in soc3.dtsi be A or B?
A) compatible = "vendor,ip-soc2", "vendor,ip-soc1";
or
B) compatible = "vendor,ip-soc3", "vendor,ip-soc2", "vendor,ip-soc1";
I propose the solution B) because we don't know what could happens
maybe the IP could need a quirks only for "SOC3". And device tree
shouldn't move for the user only the driver.
Last question does we have to document all the compatible use in
DTS(i) files in the Documentation ? or only the compatible used by the
drivers ?
Thanks for answers,
Clement
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Question about compatible fallback and documentation
2019-04-14 16:18 Question about compatible fallback and documentation Clément Péron
@ 2019-04-29 22:05 ` Rob Herring
2019-05-10 19:47 ` Clément Péron
0 siblings, 1 reply; 3+ messages in thread
From: Rob Herring @ 2019-04-29 22:05 UTC (permalink / raw)
To: Clément Péron; +Cc: devicetree
On Sun, Apr 14, 2019 at 06:18:04PM +0200, Cl�ment P�ron wrote:
> Hi,
>
> I have to bind an already existing IP by a vendor in a new SoC called
> "SOC3" device-tree.
>
> In the 1st gen of "SOC1" the IP is introduced :
> soc1.dtsi :
> compatible = "vendor,ip-soc1";
>
> Then a 2nd gen of the IP is introduced in "SOC2" with new registers.
> But the driver of the 1st gen is still working fine and no update of
> the existing driver has been introduced because not required.
> soc2.dtsi :
> compatible = "vendor,ip-soc2", "vendor,ip-soc1";
>
> Finally in "SOC3" and regardind the user manual we think that the IP
> introduced is the same as "SOC2".
> Should the compatible in soc3.dtsi be A or B?
> A) compatible = "vendor,ip-soc2", "vendor,ip-soc1";
> or
> B) compatible = "vendor,ip-soc3", "vendor,ip-soc2", "vendor,ip-soc1";
>
> I propose the solution B) because we don't know what could happens
> maybe the IP could need a quirks only for "SOC3". And device tree
> shouldn't move for the user only the driver.
B is correct.
Or you could list soc3 and soc2 given you do know there are additional
features. That would require a driver update, but likely the new SoC
requires some OS changes. Maybe someday SoC design will be disciplined
enough that new SoCs are fully backwards compatible.
> Last question does we have to document all the compatible use in
> DTS(i) files in the Documentation ? or only the compatible used by the
> drivers ?
What is used in DTS files.
Rob
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Question about compatible fallback and documentation
2019-04-29 22:05 ` Rob Herring
@ 2019-05-10 19:47 ` Clément Péron
0 siblings, 0 replies; 3+ messages in thread
From: Clément Péron @ 2019-05-10 19:47 UTC (permalink / raw)
To: Rob Herring; +Cc: devicetree
Hi,
On Tue, 30 Apr 2019 at 00:05, Rob Herring <robh@kernel.org> wrote:
>
> On Sun, Apr 14, 2019 at 06:18:04PM +0200, Clément Péron wrote:
> > Hi,
> >
> > I have to bind an already existing IP by a vendor in a new SoC called
> > "SOC3" device-tree.
> >
> > In the 1st gen of "SOC1" the IP is introduced :
> > soc1.dtsi :
> > compatible = "vendor,ip-soc1";
> >
> > Then a 2nd gen of the IP is introduced in "SOC2" with new registers.
> > But the driver of the 1st gen is still working fine and no update of
> > the existing driver has been introduced because not required.
> > soc2.dtsi :
> > compatible = "vendor,ip-soc2", "vendor,ip-soc1";
> >
> > Finally in "SOC3" and regardind the user manual we think that the IP
> > introduced is the same as "SOC2".
> > Should the compatible in soc3.dtsi be A or B?
> > A) compatible = "vendor,ip-soc2", "vendor,ip-soc1";
> > or
> > B) compatible = "vendor,ip-soc3", "vendor,ip-soc2", "vendor,ip-soc1";
> >
> > I propose the solution B) because we don't know what could happens
> > maybe the IP could need a quirks only for "SOC3". And device tree
> > shouldn't move for the user only the driver.
>
> B is correct.
>
> Or you could list soc3 and soc2 given you do know there are additional
> features. That would require a driver update, but likely the new SoC
> requires some OS changes. Maybe someday SoC design will be disciplined
> enough that new SoCs are fully backwards compatible.
Thanks for the answer,
Clement
>
> > Last question does we have to document all the compatible use in
> > DTS(i) files in the Documentation ? or only the compatible used by the
> > drivers ?
>
> What is used in DTS files.
>
> Rob
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-05-10 19:47 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-14 16:18 Question about compatible fallback and documentation Clément Péron
2019-04-29 22:05 ` Rob Herring
2019-05-10 19:47 ` Clément Péron
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).