Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: missing timer in dts: how to deal ?

On Fri, May 05, 2023 at 12:14:01PM +0100, Robert Swindells wrote:
> Manuel Bouyer <bouyer%antioche.eu.org@localhost> wrote:
> > the i.mx6sx SoC I got working recently includes a single-core cortex A9 CPU.
> > As I understand it, all A9 CPUs have the TWD timer, and this is what we
> > use for delay and hardclock(). But the imx6sx.dtsi file is missing the
> > TWD node ("arm,cortex-a9-twd-timer"), while the imx6qdl.dtsi includes it.
> >
> > How can we deal with this ?
> > - add the twd node to our copy of the device tree (this is what I did
> >   in my tree but didn't commit it). But this patches a file in sys/external
> > - fake a node in the in-memory fdt early in boot (but is there a way to do
> >   this ? I couldn't find anything related to fake nodes in dev/fdt/ or
> >   dev/ofw/)
> > - add a non-fdt attachement for TWD (and need to find where and when to
> >   attach it - maybe as a child of
> >   cpus0 at simplebus0
> The way to "patch" a device tree is to put files in sys/arch/arm/dts,
> they will be used before the ones in sys/external.

Thanks, I tried this.
Unfortunably, although this seems to work for final (.dts) files, it doesn't
seem to work for inclued (.dtsi) ones.

I put my modified imx6sx.dtsi in sys/arch/arm/dts and unpatched the one
in sys/external/glp2/dts, and the resulting imx6sx-udoo-neo-full.dtb doesn't
have the twd entry.
Patching every .dts using imx6sx.dtsi doesn't seems the way to go (there is
at last 10 of them).

Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference

Home | Main Index | Thread Index | Old Index