summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* sysinit: Add RTEMS_SYSINIT_ZERO_MEMORYSebastian Huber2020-02-0610-22/+111
| | | | | | | | Use a dedicate system initialization step to zero the memory used for the workspace and C program heap. This avoids dead code in case CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY is not configured.
* config: CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLYSebastian Huber2020-02-062-13/+7
| | | | | | | Canonicalize CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY and use defined/undefined instead of TRUE/FALSE. Close #3862.
* samples/iostream: Simplify configurationSebastian Huber2020-02-061-1/+0
| | | | | Remove CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY since it is not needed and just increases the boot time.
* config: Remove BSP_ZERO_WORKSPACE_AUTOMATICALLYSebastian Huber2020-02-061-7/+1
| | | | Update #3863.
* score: Fix linker sets on small data area targetsSebastian Huber2020-02-062-5/+14
| | | | Update #3865.
* score: Optimize STATUS_BUILD()Sebastian Huber2020-02-041-3/+5
| | | | | | Do not cast to unsigned int to avoid an unsigned long long enum type. Use a multiplication/division instead to preserve the signedness of the POSIX status.
* libtests/malloc04: Fix typoSebastian Huber2020-02-041-1/+1
| | | | Update #3838.
* fstests/fsstatvfs: Include missing header fileSebastian Huber2020-02-041-0/+1
|
* config: Add CONFIGURE_VERBOSE_SYSTEM_INITIALIZATIONSebastian Huber2020-02-045-2/+576
| | | | Update #3861.
* Use RTEMS_SYSINIT_ORDER_LAST_BUT_5Sebastian Huber2020-02-0416-16/+16
| | | | | | | | Use RTEMS_SYSINIT_ORDER_LAST_BUT_5 instead of RTEMS_SYSINIT_ORDER_LAST to allow applications and support functions to place system initialization handlers behind the standard handlers. Update #3838.
* sysinit: Add RTEMS_SYSINIT_ORDER_LAST_BUT_[1-9]Sebastian Huber2020-02-042-12/+39
| | | | Update #3838.
* bsps: Rework work area initializationSebastian Huber2020-02-0426-371/+550
| | | | | | | | | | | | | | | | | | | | The work area initialization was done by the BSP through bsp_work_area_initialize(). This approach predated the system initialization through the system initialization linker set. The workspace and C program heap were unconditionally initialized. The aim is to support RTEMS application configurations which do not need the workspace and C program heap. In these configurations, the workspace and C prgram heap should not get initialized. Change all bsp_work_area_initialize() to implement _Memory_Get() instead. Move the dirty memory, sbrk(), per-CPU data, workspace, and malloc() heap initialization into separate system initialization steps. This makes it also easier to test the individual initialization steps. This change adds a dependency to _Heap_Extend() to all BSPs. This dependency will be removed in a follow up change. Update #3838.
* bsps: Remove uses of BSP_GET_WORK_AREA_DEBUGSebastian Huber2020-02-043-65/+0
| | | | | | | | | The code covered by BSP_GET_WORK_AREA_DEBUG was basically dead code since there was no normal way to activate it (e.g. via a BSP configuration option). A follow up patch will bring back this feature through a CONFIGURE_VERBOSE_SYSTEM_INITIALIZATION configuration option. Update #3838.
* stackchk: Add RTEMS_SYSINIT_ISR_STACKSebastian Huber2020-02-042-2/+3
| | | | | | | Use a dedicated system initialization step for the stack checker interrupt stack support. Update #3838.
* bsps: Add RTEMS_SYSINIT_BSP_EARLYSebastian Huber2020-02-046-38/+49
| | | | | | | Add new BSP system initialization step for work to be performed before the work areas are initialized. Update #3838.
* bsps: Add RamEnd to linker command filesSebastian Huber2020-02-0456-1/+56
| | | | Update #3838.
* score: Add _Memory_Fill()Sebastian Huber2020-02-043-1/+59
| | | | Update #3838.
* score: Add Memory HandlerSebastian Huber2020-02-044-0/+400
| | | | Update #3838.
* score: Optimize per-processor data placementSebastian Huber2020-02-011-1/+8
| | | | Only align per-processor data in SMP configurations.
* psxmsgq03: Adjust test caseSebastian Huber2020-01-281-1/+1
| | | | | | | Commit e22554535796fc29a7ed7c5e2338128e324a621d changed the error status from ENOMEM to EAGAIN. Update #3857.
* smptests/smpmulticast01: Fix test configurationSebastian Huber2020-01-281-1/+1
| | | | Problem introduced by 77ac1519e863b7095f69c976353f7647c6f6f63b.
* libtest: Fix T_check_task_context()Sebastian Huber2020-01-281-2/+2
| | | | Fix T_check_task_context() in RTEMS_SMP with RTEMS_DEBUG configurations.
* record: Fix configurationSebastian Huber2020-01-281-2/+4
|
* Use EAGAIN for POSIX mq wait in ISR errorMartin Erik Werner2020-01-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modify the status code returned by _CORE_message_queue_Submit() when it detects a wait about to happen in an ISR (which would be deadly) to return a status which translated to EAGAIN instead of ENOMEM. This is only relevant for POSIX message queues, since Classic API message queues cannot block on send. The motivation is to match the "most related" errno value returned from mq_send() and mq_timedsend() according to POSIX, via Open Group: [EAGAIN] The O_NONBLOCK flag is set in the message queue description associated with mqdes, and the specified message queue is full. or via the RTEMS POSIX users documentation EAGAIN The message queue is non-blocking, and there is no room on the queue for another message as specified by the mq_maxmsg. Neither of these matches the case ofi avoided ISR wait perfectly, but they seem to be the closest equivalent, unless it is desirable to keep a new non-standard error for this case. It is presumed that this is not desirable. The previously returned ENOMEM error value is not documented in either the Open Group or the RTEMS POSIX uses documentation. A companion patch corrects the documentation to include this error condition. Based on the discussion in: https://lists.rtems.org/pipermail/devel/2020-January/056891.html closes #3857. Message-Id: <CAF9ehCW5P12ZkZja4UPYTbdBFUyC1VKVL-tU7nyUtvK1Lz2Z3g@mail.gmail.com>
* bsps/arm/shared: Add GICv3 implementationKinsey Moore2020-01-174-9/+427
| | | | | | | | | This adds support for the GICv3 interrupt controller along with the redistributor to control SGIs and PPIs which wasn't present in GICv2 implementations. GICv3 implementations only optionally support memory-mapped GICC interface interaction and require system register access be implemented, so the GICC interface is accessed only through system registers.
* posix_devctl - Add support for SOCKCLOSEJoel Sherrill2020-01-175-3/+53
| | | | | | | | | The FACE Technical Standard, Edition 3.0 and later require the definition of the subcommand SOCKCLOSE in <devctl.h>. Reference: ​https://www.opengroup.org/face closes #3856.
* bsp/raspberrypi: Updated the console API.G S Niteesh2020-01-0710-404/+198
| | | | | | Replaces the legacy termios API with new termios API (#3034) Replaces the custom PL011 serial driver with RTEMS arm-pl011. Update #3034
* bsp/raspberrypi: Enable FDT support.G S Niteesh2020-01-073-0/+17
| | | | This commit adds FDT support to the BSP.
* bsp/raspberrypi: Fix size of work area.Christian Mauderer2020-01-075-189/+80
| | | | | | | | | | The BSP tried to get the size of the SDRAM based on the revision code. Unfortunately the code had some bugs so that the default size has been used. Beneath that the MMU table hasn't been adapted. This patch queries the SDRAM size via a special VC Mailbox call instead. For the MMU adaption a simmilar method to the one in the imx BSP is used.
* bsps/arm: Define index of the workspace entry.Christian Mauderer2020-01-072-5/+6
| | | | | | The imx BSP contained a hack to change the workspace entry of the MMU table. This makes the used define visible for other BSPs too so that the same hack can be used for example in raspberry pi too.
* cpukit/libfs: remove more dead code from pipe/fifo.cGedare Bloom2020-01-031-2/+0
| | | | | Dead code identified by Coverity (CID 1456674). The value of ret at line 358 is always 0.
* bsps/irq: fix resource leak in irq-server.cGedare Bloom2020-01-031-0/+1
| | | | | | Resource leak identified by Coverity (CID 1456675). The value of instances is leaked in case some but not all irq servers are created. It should be stored in bsp_interrupt_server_instances.
* cpukit/libfs: remove dead code from pipe/fifo.cGedare Bloom2020-01-031-2/+0
| | | | | Dead code identified by Coverity (CID 1456678). The value of ret at line 293 is always 0.
* mpci: Fix blocking proxy statusSebastian Huber2020-01-023-24/+4
| | | | | Remove THREAD_STATUS_PROXY_BLOCKING and replace it with STATUS_PROXY_BLOCKING.
* rtems: Fix MPCI initializationSebastian Huber2020-01-0216-158/+77
| | | | Update #2408.
* score: Fix objects node initializationSebastian Huber2020-01-021-0/+1
| | | | | | | The objects node is statically initialized to one. Clear the node field before it is set. Update #3621.
* bsps/powerpc: Fix warningSebastian Huber2020-01-021-3/+1
| | | | Update #3834.
* sppercpudata01: Test PER_CPU_DATA_OFFSET()Sebastian Huber2019-12-201-1/+4
| | | | | Make sure PER_CPU_DATA_OFFSET() is tested also in uniprocessor configurations.
* libtest: Add T_check_task_context() actionSebastian Huber2019-12-206-2/+134
|
* libtest: Use test configuration in T_now()Sebastian Huber2019-12-205-47/+32
| | | | | Use the user provided now handler of the test configuration to get the time in T_now().
* libtest: Fix use of T_check_true()Sebastian Huber2019-12-202-3/+3
|
* bsps/powerpc: Support constructors with prioritySebastian Huber2019-12-196-115/+59
| | | | Close #3339.
* config: Improve EDF SMP scheduler configurationSebastian Huber2019-12-197-12/+15
| | | | | | | | Use CONFIGURE_MAXIMUM_PROCESSORS to configure the EDF SMP scheduler context. This avoids hard to debug configuration errors resulting in memory corruptions. Close #3815.
* libmisc/top: Fix the idle time and priorities on SMPChris Johns2019-12-191-11/+27
| | | | | | | - This patch is based on the patch attached to #3552 submitted by jameszxj. Closes #3552
* bsps/arm: Export bsp_start_hook_0_doneSebastian Huber2019-12-191-5/+8
| | | | Close #3789.
* config: Fix CONFIGURE_MAXIMUM_POSIX_THREADSSebastian Huber2019-12-191-1/+1
| | | | | | Bug was introduced by previous commit. Update #3845.
* config: Remove Ada configuration optionsSebastian Huber2019-12-193-64/+22
| | | | Update #3845.
* config: CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORSSebastian Huber2019-12-19116-121/+126
| | | | | | | Rename CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS into CONFIGURE_MAXIMUM_FILE_DESCRIPTORS. Update #3753.
* config: CONFIGURE_HAS_OWN_DEVICE_DRIVER_TABLESebastian Huber2019-12-191-30/+28
| | | | | | Remove CONFIGURE_HAS_OWN_DEVICE_DRIVER_TABLE. Update #3844.
* libcsupport: Update rtems_print printk handler to return the lengthChris Johns2019-12-161-2/+1
|