summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* rtemsbsd: Remove old DHCP init prototypeHEADmasterKinsey Moore2024-03-271-22/+0
| | | | | This prototype should have been removed with commit ac4db4cec5b6b1e0a25e910851e50831afb0749d.
* freebsd/mmcsd: Disable on-device cache usageKinsey Moore2024-03-051-0/+6
| | | | | | This disables any usage of the on-device R/W cache since all device cache maintenance functions are compiled out under RTEMS leaving no way to flush the cache before system reset and making data loss possible.
* rtemsbsd/rtems: Don't leak memory on errorKinsey Moore2024-01-312-1/+17
|
* rtemsbsd/rtems: Check function return valuesKinsey Moore2024-01-312-5/+9
|
* rtemsbsd/rc-conf: Avoid use after freeKinsey Moore2024-01-311-1/+4
|
* rtemsbsd/sys/arm: Add imxrt1166 USBPHY driverChristian Mauderer2023-08-213-0/+241
| | | | | Adds a driver for the i.MXRT1166 USB PHY and enable USB for the imxrt11xx BSPs.
* bsp/imxrt: Enable cache handlingChristian Mauderer2023-08-211-1/+1
| | | | | The BSP needs the CPU_DATA_CACHE_ALIGNMENT set to enable correct cache handling in libbsd. Otherwise for example USB doesn't work reliable.
* imx: Enable GPIO driver for imxrt tooChristian Mauderer2023-07-241-2/+2
|
* ipsec-tools: Fix copying fd_set prior to selectChristian Mauderer2023-05-311-0/+7
| | | | | | | | | | | | | The racoon session code copies an fd_set from one variable into another prior to calling select. That works well for simple structures. In libbsd we have to allocate fd_sets instead of using fixed structures to avoid a problem with file numbers bigger than FD_SETSIZE. The simple assignment didn't work in that case. This patch makes sure that a memcpy is used instead. Update #4913
* rtemsbsd/rc_conf: Fixed non-nullterminated string causing crashesAaron Nyholm2023-04-131-1/+3
|
* waf: Update to waf 2.0.25Joel Sherrill2023-02-201-8/+8
| | | | Updates #4860
* Use FreeBSD Git repository (not obsolete mirror)Sebastian Huber2023-01-041-0/+0
| | | | Git commit 5d85e12f44ccb0e5728344a002c108ddc105e038.
* sys/bitset.h: reduce visibility of BIT_* macrosStefan Eßer2022-09-284-28/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add two underscore characters "__" to names of BIT_* and BITSET_* macros to move them to the implementation name space and to prevent a name space pollution due to BIT_* macros in 3rd party programs with conflicting parameter signatures. These prefixed macro names are used in kernel header files to define macros in e.g. sched.h, sys/cpuset.h and sys/domainset.h. If C programs are built with either -D_KERNEL (automatically passed when building a kernel or kernel modules) or -D_WANT_FREENBSD_BITSET (or this macros is defined in the source code before including the bitset macros), then all macros are made visible with their previous names, too. E.g., both __BIT_SET() and BIT_SET() are visible with either of _KERNEL or _WANT_FREEBSD_BITSET defined. The main reason for this change is that some 3rd party sources including sched.h have been found to contain conflicting BIT_* macros. As a work-around, parts of shed.h have been made conditional and depend on _WITH_CPU_SET_T being set when sched.h is included. Ports that expect the full functionality provided by sched.h need to be built with -D_WITH_CPU_SET_T. But this leads to conflicts if BIT_* macros are defined in that program, too. This patch set makes all of sched.h visible again without this parameter being passed and without any name space pollution due to BIT_* macros becoming visible when sched.h is included. This patch set will be backported to the STABLE branches, but ports will need to use -D_WITH_CPU_SET_T as long as there are supported releases that do not contain these patches. Reviewed by: kib, markj MFC after: 1 month Relnotes: yes Differential Revision: https://reviews.freebsd.org/D33235
* arm/lpc: Add option to customize device probesSebastian Huber2022-09-063-9/+67
|
* if_lpe.c: Use interface transmitSebastian Huber2022-09-061-303/+207
| | | | This avoids the need for a transmit task and transmit interrupts.
* if_lpe.c: Move transmit initializationSebastian Huber2022-09-061-117/+152
| | | | | Move the transmit initialization out of the transmit task to be able to remove the transmit task in the next patch.
* if_lpe.c: Port to LibBSDSebastian Huber2022-09-062-245/+231
|
* if_lpe.c: Import legacy LPC Ethernet driverSebastian Huber2022-09-063-1482/+1682
| | | | | | | | | The standard FreeBSD MII support causes severe problems on the LPC3200 chip family. If an Ethernet module register is accessed while there is no clock from the PHY, the chip completely locks up and only an external watchdog can recover from this state. The legacy driver had a custom PHY management code which helped to avoid such issues. The if_lpe.c driver is no longer maintained by FreeBSD.
* stdio/local.h: Make Newlib config independentSebastian Huber2022-07-241-1/+1
|
* Define IFCAP_NOMAP for Newlib compatibilitySebastian Huber2022-07-072-0/+6
|
* Define IN_HISTORICAL_NETS for kernel spaceSebastian Huber2022-07-071-0/+3
| | | | | | | | | | | | | | | | | | | Required by FreeBSD commit: Author: Mike Karels <karels@FreeBSD.org> Date: Tue Oct 26 22:01:09 2021 -0500 kernel: deprecate Internet Class A/B/C Hide historical Class A/B/C macros unless IN_HISTORICAL_NETS is defined; define it for user level. Define IN_MULTICAST separately from IN_CLASSD, and use it in pf instead of IN_CLASSD. Stop using class for setting default masks when not specified; instead, define new default mask (24 bits). Warn when an Internet address is set without a mask. MFC after: 1 month Reviewed by: cy Differential Revision: https://reviews.freebsd.org/D32708
* Kernel-side infrastructure to implement nvlist-based set/get ifcapsKonstantin Belousov2022-07-071-0/+12
| | | | | | | Reviewed by: hselasky, jhb, kp (previous version) Sponsored by: NVIDIA Networking MFC after: 3 weeks Differential revision: https://reviews.freebsd.org/D32551
* uipc_socket.c: Modify MSG_TLSAPPDATA to only do Alert RecordsRick Macklem2022-07-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Without this patch, the MSG_TLSAPPDATA flag would cause soreceive_generic() to return ENXIO for any non-application data record in a TLS receive stream. This works ok for TLS1.2, since Alert records appear to be the only non-application data records received. However, for TLS1.3, there can be post-handshake handshake records, such as NewSessionKey sent to the client from the server. These handshake records cannot be handled by the upcall which does an SSL_read() with length == 0. It appears that the client can simply throw away these NewSessionKey records, but to do so, it needs to receive them within the kernel. This patch modifies the semantics of MSG_TLSAPPDATA slightly, so that it only applies to Alert records and not Handshake records. It is needed to allow the krpc to work with KTLS1.3. Reviewed by: hselasky MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D35170
* Widen ifnet_detach_sxlock coverageKristof Provost2022-07-071-0/+2
| | | | | | | | | Widen the ifnet_detach_sxlock to cover the entire vnet sysuninit code. This ensures that we can't end up having the vnet_sysuninit free the UDP pcb while the detach code is running and trying to purge the UDP pcb. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D28530
* Add the MSG_TLSAPPDATA flag to indicate "return ENXIO" for non-application ↵Rick Macklem2022-07-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | TLS data records. The kernel RPC cannot process non-application data records when using TLS. It must to an upcall to a userspace daemon that will call SSL_read() to process them. This patch adds a new flag called MSG_TLSAPPDATA that the kernel RPC can use to tell sorecieve() to return ENXIO instead of a non-application data record, when that is what is at the top of the receive queue. I put the code in #ifdef KERN_TLS/#endif, although it will build without that, so that it is recognized as only useful when KERN_TLS is enabled. The alternative to doing this is to have the kernel RPC re-queue the non-application data message after receiving it, but that seems more complicated and might introduce message ordering issues when there are multiple non-application data records one after another. I do not know what, if any, changes will be required to support TLS1.3. Reviewed by: glebius Differential Revision: https://reviews.freebsd.org/D25923
* CONTRIBUTING.rst: Add FreeBSD baseline update hintsSebastian Huber2022-07-071-0/+11
|
* user-space: Request FreeBSD bitset APISebastian Huber2022-06-301-0/+1
| | | | | | This is required for recent Newlib versions. Update #4667.
* build: Ensure mandatory compiler/linker flagsSebastian Huber2022-06-231-4/+4
| | | | Make sure the flags are present in all build configurations.
* README.rst: Remove RTEMS_POSIX_API from BSP configSebastian Huber2022-06-221-2/+2
|
* build: Do not require RTEMS_POSIX_APISebastian Huber2022-06-221-4/+0
|
* netstat: Do not use signalsSebastian Huber2022-06-222-17/+4
|
* wlanstats: Do not use signalsSebastian Huber2022-06-222-16/+8
|
* ping6: Do not use signalsSebastian Huber2022-06-221-0/+16
|
* ping: Do not use signalsSebastian Huber2022-06-221-0/+8
|
* openssl: Do not use signalsSebastian Huber2022-06-224-3/+13
|
* wpa: Use CONFIG_ELOOP_KQUEUESebastian Huber2022-06-221-0/+3
| | | | This avoids issues with the fd_set size.
* wpa: Do not use signalsSebastian Huber2022-06-221-0/+16
|
* ipsec-tools: Do not use signalsSebastian Huber2022-06-223-14/+24
|
* racoon: Do not rely on <sys/types.h>Sebastian Huber2022-06-221-1/+1
|
* CONTRIBUTING.rst: Warn about white space changesSebastian Huber2022-06-091-6/+6
|
* if_ffec: Allow PHY that is connected to other FFECChristian Mauderer2022-06-071-0/+120
| | | | | | | | | The i.MX6UL (and some others from the i.MX family) have shared MDIO lines for multiple FFECs. This patch allows to use the MDIO interface from another Ethernet controller. Note that you have to make sure that the FFECs are initialized in the right order. Normally that can be done via FDT.
* if_ffec: Reduce buffer sizeChristian Mauderer2022-06-071-0/+8
| | | | | Typical embedded systems don't have that much memory. Reduce the buffer size to something more sensible for the usual type of application.
* if_stmac: fix compilation error (related to crc32_raw move in FreeBSD)Karel Gardas2022-06-041-0/+1
| | | | | FreeBSD in 2019 moved crc32 function into separate gsb_crc32.h header file and probably after libbsd sync with this change if_stmac got broken.
* Use rtems_task_exit()Sebastian Huber2022-06-0118-41/+25
|
* if_atsam: Recover from receive freezesSebastian Huber2022-06-011-5/+15
| | | | | | | | | | | Under unknown conditions the receive path ended up in a frozen state. In this state, the DMA and driver descriptor head were equal and all receive descriptors had the used bit set. So, the DMA was unable to store received frames. However, the receive daemon was never woken up to refill the receive buffers. It seems that the RXUBR interrupt can be used to recover from this state. Update #4652.
* if_atsam: Shorten sysctl namesSebastian Huber2022-06-011-27/+27
| | | | Update #4652.
* if_atsam: Add tx/rx desc sysctlsSebastian Huber2022-06-011-0/+77
| | | | Update #4652.
* if_atsam: Add register sysctlsSebastian Huber2022-06-011-2/+39
| | | | Update #4652.
* if_atsam: Allow stats reset via sysctlSebastian Huber2022-06-011-0/+25
| | | | Update #4652.
* libbsd.txt: Move issues and TODOSebastian Huber2022-05-232-144/+124
|