Changeset ea395a7 in rtems-libbsd


Ignore:
Timestamp:
Jan 30, 2017, 4:58:18 PM (3 years ago)
Author:
Kevin Kirspel <kevin-kirspel@…>
Branches:
fd86c091b97759106da7355ce1dd81ebe030e285, f020f08430150c1656a0ad0a1de13699db9b980b
Children:
5382f639
Parents:
2c4840f
git-author:
Kevin Kirspel <kevin-kirspel@…> (01/30/17 16:58:18)
git-committer:
Sebastian Huber <sebastian.huber@…> (02/14/17 08:36:40)
Message:

Add ordered Nexus devices

Add support for ordering the initialization of Nexus devices. This can
be used to make sure a device is initialized before a dependant device.

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • freebsd/sys/sys/linker_set.h

    • Property mode changed from 100644 to 100755
    r2c4840f rea395a7  
    7878#define RTEMS_BSD_DEFINE_SET_ITEM(set, sym, type)                       \
    7979        static type const __set_##set##_sym_##sym                       \
    80         __section(".rtemsroset.bsd." __STRING(set) ".content") __used
     80       __section(".rtemsroset.bsd." __STRING(set) ".content.1") __used
     81
     82#define RTEMS_BSD_DEFINE_SET_ITEM_ORDERED(set, sym, order, type)     \
     83        static type const __set_##set##_sym_##sym     \
     84       __section(".rtemsroset.bsd." __STRING(set) ".content.0."  RTEMS_XSTRING( order )) __used
    8185
    8286#define __MAKE_SET(set, sym)                                            \
  • rtemsbsd/include/rtems/bsd/bsd.h

    • Property mode changed from 100644 to 100755
    r2c4840f rea395a7  
    8484            &SYSINIT_ENTRY_NAME(name##_nexusmodule) }
    8585
     86#define RTEMS_BSD_DEFINE_NEXUS_DEVICE_ORDERED(name, unit, order, resource_count, resources) \
     87    extern struct sysinit SYSINIT_ENTRY_NAME(name##_nexusmodule); \
     88    RTEMS_BSD_DEFINE_SET_ITEM_ORDERED(nexus, name##unit, order, rtems_bsd_device) = \
     89        { #name, unit, (resource_count), (resources), \
     90            &SYSINIT_ENTRY_NAME(name##_nexusmodule) }
     91
    8692rtems_status_code rtems_bsd_initialize(void);
    8793
Note: See TracChangeset for help on using the changeset viewer.