[PATCH] rtems/rtems-kernel-nexus.c: LibBSD init now uses all pass levels.

Nils Hölscher nilhoel1 at gmail.com
Mon Aug 12 06:04:42 UTC 2019


Hi,

Yes I agree.
We should keep the behaviour as close to FreeBSD as possible.

Best,
Nils

On Mon, 12 Aug 2019 at 07:48, Sebastian Huber <
sebastian.huber at embedded-brains.de> wrote:

> On 12/08/2019 00:23, Chris Johns wrote:
> > On 10/8/19 4:33 am, Christian Mauderer wrote:
> >> thanks for the patch. It sounds like we will get a behaviour that is
> >> more similar to FreeBSD one with it.
> >
> > Yes.
> >
> >> But it has the potential to have a
> >> big influence on existing BSPs so it would be good to have some more
> >> feedback for it before merging it.
> >
> > Do you have specific BSPs in mind? If we agree this behaviour is more
> like
> > FreeBSD would that mean a BSP that breaks needs to be fixed?
>
> The FreeBSD nexus bus use this:
>
> freebsd-org/sys/arm/arm/nexus.c:EARLY_DRIVER_MODULE(nexus, root,
> nexus_driver, nexus_devclass, 0, 0,
> freebsd-org/sys/arm/arm/nexus.c-    BUS_PASS_BUS + BUS_PASS_ORDER_EARLY);
> freebsd-org/sys/arm/arm/nexus.c-
> --
> freebsd-org/sys/i386/acpica/acpi_machdep.c:DRIVER_MODULE(nexus_acpi,
> root, nexus_acpi_driver, nexus_devclass, 0, 0);
> --
> freebsd-org/sys/powerpc/powerpc/nexus.c:EARLY_DRIVER_MODULE(nexus, root,
> nexus_driver, nexus_devclass, 0, 0,
> freebsd-org/sys/powerpc/powerpc/nexus.c-    BUS_PASS_BUS);
> freebsd-org/sys/powerpc/powerpc/nexus.c-MODULE_VERSION(nexus, 1);
> --
> freebsd-org/sys/mips/mips/nexus.c:EARLY_DRIVER_MODULE(nexus, root,
> nexus_driver, nexus_devclass, 0, 0,
> freebsd-org/sys/mips/mips/nexus.c-    BUS_PASS_BUS + BUS_PASS_ORDER_EARLY);
> --
> freebsd-org/sys/arm64/arm64/nexus.c:EARLY_DRIVER_MODULE(nexus_fdt, root,
> nexus_fdt_driver, nexus_fdt_devclass,
> freebsd-org/sys/arm64/arm64/nexus.c-    0, 0, BUS_PASS_BUS +
> BUS_PASS_ORDER_FIRST);
> freebsd-org/sys/arm64/arm64/nexus.c-
> --
> freebsd-org/sys/arm64/arm64/nexus.c:EARLY_DRIVER_MODULE(nexus_acpi,
> root, nexus_acpi_driver, nexus_acpi_devclass,
> freebsd-org/sys/arm64/arm64/nexus.c-    0, 0, BUS_PASS_BUS +
> BUS_PASS_ORDER_FIRST);
> freebsd-org/sys/arm64/arm64/nexus.c-
> --
> freebsd-org/sys/amd64/acpica/acpi_machdep.c:DRIVER_MODULE(nexus_acpi,
> root, nexus_acpi_driver, nexus_devclass, 0, 0);
> --
> freebsd-org/sys/sparc64/sparc64/nexus.c:EARLY_DRIVER_MODULE(nexus, root,
> nexus_driver, nexus_devclass, 0, 0,
> freebsd-org/sys/sparc64/sparc64/nexus.c-    BUS_PASS_BUS);
> freebsd-org/sys/sparc64/sparc64/nexus.c-MODULE_VERSION(nexus, 1);
> --
> freebsd-org/sys/riscv/riscv/nexus.c:EARLY_DRIVER_MODULE(nexus_fdt, root,
> nexus_fdt_driver, nexus_fdt_devclass,
> freebsd-org/sys/riscv/riscv/nexus.c-    0, 0, BUS_PASS_BUS +
> BUS_PASS_ORDER_FIRST);
> freebsd-org/sys/riscv/riscv/nexus.c-
> --
> freebsd-org/sys/x86/xen/xen_nexus.c:DRIVER_MODULE(nexus_xen, root,
> nexus_xen_driver, nexus_devclass, 0, 0);
> --
> freebsd-org/sys/x86/x86/nexus.c:DRIVER_MODULE(nexus, root, nexus_driver,
> nexus_devclass, 0, 0);
> freebsd-org/sys/x86/x86/nexus.c-
> freebsd-org/sys/x86/x86/nexus.c-static int
>
> So, I think we should change it to:
>
> EARLY_DRIVER_MODULE(nexus, root, nexus_driver, nexus_devclass, 0, 0,
>      BUS_PASS_BUS + BUS_PASS_ORDER_EARLY);
>
> --
> Sebastian Huber, embedded brains GmbH
>
> Address : Dornierstr. 4, D-82178 Puchheim, Germany
> Phone   : +49 89 189 47 41-16
> Fax     : +49 89 189 47 41-09
> E-Mail  : sebastian.huber at embedded-brains.de
> PGP     : Public key available on request.
>
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20190812/18d24495/attachment-0002.html>


More information about the devel mailing list