summaryrefslogtreecommitdiffstats
path: root/cpukit/include (follow)
Commit message (Collapse)AuthorAgeFilesLines
* termios: Replace rtems_termios_isig_status_codeSebastian Huber2020-05-071-19/+28
| | | | | | | | | | Merge the rtems_termios_isig_status_code and rtems_termios_iproc_status_code enums into a single rtems_termios_iproc_status_code which is now a part of the API. Simplify rtems_termios_posix_isig_handler() to avoid unreachable code. Close #3800.
* rtems: Deprecate _Copyright_NoticeSebastian Huber2020-05-061-1/+1
| | | | Close #3973.
* rtems: Add rtems_get_copyright_notice()Sebastian Huber2020-05-061-0/+5
| | | | Update #3973.
* rtems: Deprecate <rtems/system.h>Sebastian Huber2020-05-061-0/+4
| | | | Close #3972.
* rtems: Deprecate RTEMS_MAXIMUM_NAME_LENGTHSebastian Huber2020-05-061-2/+3
| | | | | | | | | | | | This define is * not documented, * not used in the RTEMS code base, and * longer than sizeof(rtems_name). Close #3971.
* rtems: Deprecate use of _RTEMS_versionSebastian Huber2020-05-061-5/+4
| | | | Close #3970.
* libdl/obj-comp: Add trace prints when decompressingChris Johns2020-05-051-0/+2
| | | | Updates #3969
* doxygen: Switch @brief and @ingroupSebastian Huber2020-04-281-1/+2
| | | | This order change fixes the Latex documentation build via Doxygen.
* libmisc/shell: Fix the handling of joel scripts in telnetChris Johns2020-04-151-1/+6
| | | | | | | | | | | | - Fix the passing of std[in/out] to child threads - Fix deleting of managed memory in the key destructor - Only set the key in the main loop thread - Only allocate a shell env outside of the main loop - Fix memory leak if the task start fails - Remove error level from shell env, it cannot be returned this way. Add exit_code but the API is broken so it cannot be returned. Closes #3859
* config: Fix typoSebastian Huber2020-04-141-1/+1
| | | | Update #3875.
* score: Return status in _TOD_Set()Sebastian Huber2020-04-141-15/+10
| | | | Update #3949.
* score: Delete RTEMS_DECLARE_GLOBAL_SYMBOL()Sebastian Huber2020-04-081-20/+0
| | | | | | Delete unused RTEMS_DECLARE_GLOBAL_SYMBOL(). Update #3799.
* config: Fix _ISR_Stack_area_endSebastian Huber2020-04-081-6/+9
| | | | | | | | | | | | | | In the previous implementation, the _ISR_Stack_area_begin and _ISR_Stack_area_end symbols were in different sections. If they do not have the same alignment, then the following linker directive could separate them: *(SORT_BY_ALIGNMENT (SORT_BY_NAME (.rtemsstack*))) Do not use different sections and instead define _ISR_Stack_area_end directly. Update #3799.
* score: Add and use RTEMS_SYMBOL_NAME()Sebastian Huber2020-04-081-10/+27
| | | | Update #3799.
* Revert "score: Fix _ISR_Stack_area_end"Sebastian Huber2020-04-051-0/+5
| | | | | This reverts commit 8e80876bdd54e36fb668eee655eec1dd588daf13 which broke several architectures.
* cpukit/rfs: fix typo in header guardGedare Bloom2020-04-031-1/+1
|
* score: Fix _ISR_Stack_area_endSebastian Huber2020-04-031-5/+0
| | | | | | | | | | The _ISR_Stack_area_begin and _ISR_Stack_area_end symbols are in different sections. They must have the same alignment, otherwise the following linker directive could separate them: *(SORT_BY_ALIGNMENT (SORT_BY_NAME (.rtemsstack*))) Update #3799.
* config: Remove filesystem entry config optionsSebastian Huber2020-04-031-56/+14
| | | | | | | | | | | | | | | | | | | | Remove the following undocumented configuration options: * CONFIGURE_FILESYSTEM_ENTRY_DOSFS * CONFIGURE_FILESYSTEM_ENTRY_FTPFS * CONFIGURE_FILESYSTEM_ENTRY_IMFS * CONFIGURE_FILESYSTEM_ENTRY_JFFS2 * CONFIGURE_FILESYSTEM_ENTRY_NFS * CONFIGURE_FILESYSTEM_ENTRY_RFS * CONFIGURE_FILESYSTEM_ENTRY_TFTPFS Update #3836.
* libio: Remove RTEMS_FILESYSTEM_TYPE_MINIIMFSSebastian Huber2020-04-021-3/+0
| | | | | This type is unused. Do not mention non-existing CONFIGURE_FILESYSTEM_MINIIMFS.
* rtems: Fix Doxygen commentSebastian Huber2020-04-021-2/+0
|
* config: Remove CONFIGURE_FILESYSTEM_DEVFSSebastian Huber2020-03-312-12/+0
| | | | | | | | This filesystem no longer exists. Remove unused RTEMS_FILESYSTEM_TYPE_DEVFS. Update #3894.
* ftpd: Remove superfluous definesSebastian Huber2020-03-311-9/+0
| | | | | | These defines are not used and easily conflict with application code. They are also defined by the standard header file <arpa/ftp.h> if someone needs them.
* ftpd: Fix return typesSebastian Huber2020-03-311-2/+4
|
* config: Remove BSP_DEFAULT_UNIFIED_WORK_AREASSebastian Huber2020-03-311-1/+0
| | | | | Do not undefine this unused BSP configuration option. This is a follow up of commit 92b33b8d09377feb14eb5a831ce242047c58d02b.
* score: Document _TLS_AlignmentSebastian Huber2020-03-231-0/+10
|
* score: Fix size of TLS_Thread_control_blockSebastian Huber2020-03-231-1/+3
| | | | | On most architectures, the size of the thread-local storage TCB must be 8 bytes. Fix the definition for 64-bit targets.
* conf: Improve evaluation of event recording optsSebastian Huber2020-03-231-22/+46
| | | | | | | Check for configuration errors earlier. Allow fatal dumps without the other extensions. Add some warnings. Update #3904.
* record: Add rtems_record_dump()Sebastian Huber2020-03-183-17/+151
| | | | | | | | | Add rtems_record_dump_base64() and rtems_record_dump_base64_zlib(). Add CONFIGURE_RECORD_FATAL_DUMP_BASE64 and CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB configuration options. Update #3904.
* rtems: Add rtems_put_char()Sebastian Huber2020-03-161-0/+10
| | | | Update #3904.
* score: Add _IO_Base64()Sebastian Huber2020-03-161-1/+26
| | | | Update #3904.
* libio: Robust file descriptor reference countingSebastian Huber2020-03-132-24/+2
| | | | | | | | | | | | There was a race conditon in the reference counting of file descriptors during a close() operation. After the call to the close handler, the rtems_libio_free() function cleared the flags to zero. However, at this point in time there may still exist some holders of the file descriptor. With RTEMS_DEBUG enabled this could lead to failed assertions in rtems_libio_iop_drop(). Change the code to use only atomic read-modify-write operations on the rtems_libio_iop::flags.
* imfs: Replace devfs with an IMFS specializationSebastian Huber2020-03-095-320/+49
| | | | | | | | | | | | | | | | Add a simplified path evaluation function IMFS_eval_path_devfs() for a device only IMFS configuration. The code size can be further reduced by the application if it disables the support for legacy IO drivers via: #define CONFIGURE_IMFS_DISABLE_MKNOD #define CONFIGURE_IMFS_DISABLE_MKNOD_DEVICE Obsolete CONFIGURE_MAXIMUM_DEVICES. Remove BSP_MAXIMUM_DEVICES. Update #3894. Update #3898.
* imfs: Constify imfs_memfile_bytes_per_blockSebastian Huber2020-03-092-3/+2
| | | | | | | | The CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK value is validated by <rtems/confdefs/libio.h>. Changing this value during runtime could lead to memory corruption. Update #3894.
* libio: Constify some functionsSebastian Huber2020-03-091-4/+4
|
* imfs: Add IMFS_add_node()Sebastian Huber2020-03-041-11/+148
| | | | Update #3894.
* imfs: Remove IMFS_NODE_FLAG_NAME_ALLOCATEDSebastian Huber2020-03-041-3/+0
| | | | | | | | Remove IMFS_NODE_FLAG_NAME_ALLOCATED and instead replace the node control in rename operations. This avoids a special case in the general node destruction which pulled in free(). Update #3894.
* rtems: rtems_scheduler_get_processor_maximum()Sebastian Huber2020-03-041-2/+3
| | | | | | | | | | | | In uniprocessor configurations, use compile-time constants for rtems_scheduler_get_processor_maximum() and rtems_scheduler_get_processor(). This helps compilers and static analyzers to deduce that some loop bodies are only executed once and some conditional statements have a fixed outcome (may improve code generation and reduce false positives). In SMP configurations, directly provide the internal implementation for performance reasons.
* config: Remove <rtems/btimer.h> includeSebastian Huber2020-03-041-4/+0
| | | | | | | The use of CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER does not define anything, so remove the <rtems/btimer.h> include. Update #3875.
* rtems: Add rtems_scheduler_map_priority_from_posix()Sebastian Huber2020-03-031-0/+18
| | | | Update #3881.
* rtems: Add rtems_scheduler_map_priority_to_posix()Sebastian Huber2020-03-031-0/+18
| | | | Update #3881.
* libfdt: De-inline fdt_header_size()Simon Glass2020-03-021-4/+5
| | | | | | | | | | | There does not seem to be a strong reason to inline this function. Also we are about to add some extra code to it which will increase its size. Move it into fdt.c and use a simple declaration in libfdt.h Signed-off-by: Simon Glass <sjg@chromium.org> Message-Id: <20200220214557.176528-2-sjg@chromium.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt.h: add explicit cast from void* to uint8_t* in fdt(32|64)_stLuc Michel2020-03-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Including libfdt.h in a C++ project fails during compilation with recent version of GCC or Clang. This simple example: extern "C" { #include <libfdt.h> } int main(void) { return 0; } leads to the following errors with GCC 9.1.0: /usr/include/libfdt.h: In function ‘void fdt32_st(void*, uint32_t)’: /usr/include/libfdt.h:139:16: error: invalid conversion from ‘void*’ to ‘uint8_t*’ {aka ‘unsigned char*’} [-fpermissive] 139 | uint8_t *bp = property; | ^~~~~~~~ | | | void* /usr/include/libfdt.h: In function ‘void fdt64_st(void*, uint64_t)’: /usr/include/libfdt.h:163:16: error: invalid conversion from ‘void*’ to ‘uint8_t*’ {aka ‘unsigned char*’} [-fpermissive] 163 | uint8_t *bp = property; | ^~~~~~~~ | | | void* This commit adds an explicit cast to uint8_t* to fix this issue. Signed-off-by: Luc Michel <luc.michel@greensocs.com> Message-Id: <20190910104824.1321594-1-luc.michel@greensocs.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt: Replace GPL/BSD boilerplate/reference with SPDX tagsRob Herring2020-03-023-138/+3
| | | | | | | | Replace instances of dual GPLv2 or BSD license boilerplate with SPDX tags. Signed-off-by: Rob Herring <robh@kernel.org> Message-Id: <20190620211944.9378-3-robh@kernel.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt: Add FDT_CREATE_FLAG_NO_NAME_DEDUP flag that trades size for speedNicholas Piggin2020-03-021-1/+7
| | | | | | | | | | | | | Searching for duplicate names scales O(n^2) with the number of names added to a fdt, which can cause a noticable slowdown with larger device trees and very slow CPU cores. Add FDT_CREATE_FLAG_NO_NAME_DEDUP that allow the caller to trade fdt size for speed in the creation process. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Message-Id: <20190509094122.834-4-npiggin@gmail.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt: Introduce fdt_create_with_flags()Nicholas Piggin2020-03-021-1/+37
| | | | | | | | | | | | | | | | | | | | | | | There is a need to be able to specify some options when building an FDT with the SW interface. This can be accomplished with minimal changes by storing intermediate data in the fdt header itself, in fields that are not otherwise needed during the creation process and can be set by fdt_finish(). The fdt.magic field is already used exactly this way, as a state to check with callers that the FDT has been created but not yet finished. fdt.version and fdt.last_comp_version are used to make room for more intermediate state. These are adjacent and unused during the building process. last_comp_version is not yet used for intermediate state, but it is zeroed and treated as used, so as to allow future growth easily. A new interface, fdt_create_with_flags() is added, which takes 32-bit flag value to control creation. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Message-Id: <20190509094122.834-3-npiggin@gmail.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt: Make fdt_get_max_phandle() an inlineDavid Gibson2020-03-021-1/+11
| | | | | | | | | | It's now a trivial wrapper around fdt_find_max_phandle() so we might as well inline it. We also remove it from the versioning linker script. Theoretically, that's a breaking ABI change except that we haven't yet released a version with it exposed in the shared object, so we can get away with it. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt: Add phandle generation helperThierry Reding2020-03-021-0/+19
| | | | | | | | | | | | | | | | | The new fdt_generate_phandle() function can be used to generate a new, unused phandle given a specific device tree blob. The implementation is somewhat naive in that it simply walks the entire device tree to find the highest phandle value and then returns a phandle value one higher than that. A more clever implementation might try to find holes in the current set of phandle values and fill them. But this implementation is relatively simple and works reliably. Also add a test that validates that phandles generated by this new API are indeed unique. Signed-off-by: Thierry Reding <treding@nvidia.com> Message-Id: <20190326153302.17109-3-thierry.reding@gmail.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt: Add new maximum phandle lookup functionThierry Reding2020-03-022-0/+17
| | | | | | | | | | | | | | | | | | | | | | The fdt_get_max_phandle() function has some shortcomings. On one hand it returns just a uint32_t which means to check for the "negative" error code a caller has to explicitly check against the error code (uint32_t)-1. In addition, the -1 is the only error code that can be returned, so a caller cannot tell the difference between the various failures. Fix this by adding a new fdt_find_max_phandle() function that returns an error code on failure and 0 on success, just like other APIs, and stores the maximum phandle value in an output argument on success. This also refactors fdt_get_max_phandle() to use the new function. Add a note pointing out that the new fdt_find_max_phandle() function should be preferred over fdt_get_max_phandle(). Signed-off-by: Thierry Reding <treding@nvidia.com> Message-Id: <20190326153302.17109-1-thierry.reding@gmail.com> [dwg: Reword for some inaccuracies in the commit message] Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* libfdt: add fdt_append_addrrange()AKASHI Takahiro2020-03-021-0/+61
| | | | | | | | | | | | | This function will append an address range property using parent node's "#address-cells" and "#size-cells" properties. It will be used in implementing kdump with kexec_file_load system call at linux kernel for arm64 once it is merged into kernel tree. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Message-Id: <20190327061552.17170-2-takahiro.akashi@linaro.org> [dwg: Correct a SEGV error in the testcase] Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* Revert "libfdt: Add phandle generation helper"David Gibson2020-03-022-20/+0
| | | | | | This reverts commit 54ea41c22415cb0e283d22faf71202051c89400c. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>