<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 3, 2020, 6:58 AM Christian Mauderer <<a href="mailto:christian.mauderer@embedded-brains.de">christian.mauderer@embedded-brains.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello Kinsey,<br>
<br>
On 01/09/2020 23:56, Kinsey Moore wrote:<br>
> Hi,<br>
> <br>
> I’ve been working on proper AArch64 support for RTEMS<br>
<br>
That's great. It means good raspberry pi 4 support ;-)<br>
<br>
> (versus running<br>
> 32-bit ARM RTEMS behind a bootloader or JTAG device that switches the<br>
> CPU to AArch32 mode) and while the vast majority of the architecture<br>
> support code is new, lives in its own aarch64 directories, and is<br>
> unrelated to RTEMS’s ARM support, there are several drivers living in<br>
> the ARM shared directory that are critical to AArch64 support and many<br>
> more that could potentially be shared. Given the limited scope of<br>
> initial bringup on Qemu, that list is currently: GICv3, GPT(timer), and<br>
> PL011(uart). I don’t really see a precedent for this type of sharing<br>
> other than the global bsps/shared and bsps/include directories. The<br>
> global shared directories might make sense for the PL011 since it could<br>
> theoretically be used by anything that supports AXI/AMBA, but the GIC<br>
> and GPT drivers rely on ARM system registers to function with both<br>
> AArch32 and AArch64.<br>
> <br>
>  <br>
> <br>
> In short, where should the GICv3 and GPT drivers be relocated along with<br>
> their associated headers, if at all?<br>
> <br>
<br>
I might get a similar problem with some drivers shared between some<br>
PowerPC and ARM too (NXP reuses some of the Freescale PowerPC<br>
peripherals in up to date ARM controllers). I think in theory we already<br>
have such drivers that maybe should be shared but are copied or<br>
re-implemented in multiple BSPs instead.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">The Gaisler IP drivers were moved up in the tree recently also.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
One possibility might would be to add all arm/shared to the aarch64 too.<br>
But that is a bit unclear<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"></blockquote></div></div><div dir="auto">shared/arm??</div><div dir="auto"><br></div><div dir="auto">shared/nxp</div><div dir="auto"><br></div><div dir="auto">Or</div><div dir="auto"><br></div><div dir="auto">shared/IP/vendor?</div><div dir="auto"><br></div><div dir="auto">They need to be above a single architecture to be shared across architectures.</div><div dir="auto"><br></div><div dir="auto">This is just SoC IP modules that are being reused.</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"></blockquote></div></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
But as long as the drivers compile for every BSP and are removed at link<br>
time they maybe could just be moved to the general shared directory. We<br>
also have other drivers the re that are only used on a few BSPs. For<br>
example the drivers in shared/net/* or shared/dev/ide/*<br>
<br>
Best regards<br>
<br>
Christian<br>
<br>
>  <br>
> <br>
> Thanks,<br>
> <br>
> Kinsey Moore<br>
> <br>
> <br>
> _______________________________________________<br>
> devel mailing list<br>
> <a href="mailto:devel@rtems.org" target="_blank" rel="noreferrer">devel@rtems.org</a><br>
> <a href="http://lists.rtems.org/mailman/listinfo/devel" rel="noreferrer noreferrer" target="_blank">http://lists.rtems.org/mailman/listinfo/devel</a><br>
> <br>
<br>
-- <br>
--------------------------------------------<br>
embedded brains GmbH<br>
Herr Christian Mauderer<br>
Dornierstr. 4<br>
D-82178 Puchheim<br>
Germany<br>
email: <a href="mailto:christian.mauderer@embedded-brains.de" target="_blank" rel="noreferrer">christian.mauderer@embedded-brains.de</a><br>
Phone: +49-89-18 94 741 - 18<br>
Fax:   +49-89-18 94 741 - 08<br>
PGP: Public key available on request.<br>
<br>
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br>
_______________________________________________<br>
devel mailing list<br>
<a href="mailto:devel@rtems.org" target="_blank" rel="noreferrer">devel@rtems.org</a><br>
<a href="http://lists.rtems.org/mailman/listinfo/devel" rel="noreferrer noreferrer" target="_blank">http://lists.rtems.org/mailman/listinfo/devel</a><br>
</blockquote></div></div></div>