726 Commits

Author SHA1 Message Date
Sebastian Huber
ed5e02a933 Fix redefinition warnings 2018-10-23 13:25:45 +02:00
Sebastian Huber
1aeb727bd2 pppd: Fix use of uninitialized stack variables 2018-10-23 07:37:11 +02:00
Sebastian Huber
91327bd82a Use global stdout for kernel output and syslog() 2018-10-10 14:20:42 +02:00
Sebastian Huber
f949b432de Fix syslog() priority handling
Ths syslog priority is a mask not a level.
2018-10-10 14:20:06 +02:00
Sebastian Huber
2eae88b07c Fix typo (RTEMS_BSD_MODULE_NET80211) 2018-10-02 10:30:51 +02:00
Sebastian Huber
38c1a410fc telnetd: Update due to API changes
Update #3526.
2018-10-02 07:12:59 +02:00
Christian Mauderer
61575f5c44 Add PHY-driver for KSZ8091RNB with 50MHz.
This adds a driver for the KSZ8091RNB PHY. This PHY needs some special
treatment if it is clocked with a 50MHz clock.
2018-09-27 11:03:21 +02:00
Sebastian Huber
b3825029ff fsl_sdhci.c: Port to RTEMS
Update #3525.
2018-09-25 10:01:41 +02:00
Sebastian Huber
06dd40e544 imx/imx_gpio.c: Port to RTEMS
Update #3525.
2018-09-25 10:01:37 +02:00
Sebastian Huber
13840c1bea Update gpio interface
Update #3525.
2018-09-25 10:01:28 +02:00
Sebastian Huber
b42dea9e51 CONFIG_INTRHOOK(9): Port to RTEMS
Some device drivers (e.g. MMC) need a complex intialization with working
callouts.  Remove the dummy CONFIG_INTRHOOK() implementation and replace
it with the real one from FreeBSD.  Make sure TIMEOUT(9) services work
at this point.

Update #3525.
2018-09-25 10:01:15 +02:00
Sebastian Huber
610349693d if_ffec_mpc8xx: Fix incoming data invalidation
With a write-back cache dirty cache lines may be evicted which could
overwrite new data.

Close #3523.
2018-09-21 10:29:43 +02:00
Sebastian Huber
1b70957bd1 if_ffec_mpc8xx: Use M_NOWAIT for incoming frames
Update #3523.
2018-09-21 10:29:43 +02:00
Sebastian Huber
d101ed8614 if_ffec_mpc8xx: New MDIO driver support
Update #3523.
2018-09-21 10:29:43 +02:00
Sebastian Huber
457b4fc927 if_ffec_mpc8xx: Port driver to libbsd
Update #3523.
2018-09-21 10:29:43 +02:00
Sebastian Huber
860d833e05 if_ffec_mpc8xx: Import legacy driver from RTEMS
Imported from RTEMS commit 1fe1b820de02c274c2b2b3431340152734ee9fb6
(2018-09-12).

Update #3523.
2018-09-21 10:29:43 +02:00
Sebastian Huber
3489e3b639 Update to FreeBSD head 2018-09-17
Git mirror commit 6c2192b1ef8c50788c751f878552526800b1e319.

Update #3472.
2018-09-21 10:29:41 +02:00
Sebastian Huber
bcdce02d9b Update to FreeBSD head 2018-06-01
Git mirror commit fb63610a69b0eb7f69a201ba05c4c1a7a2739cf9.

Update #3472.
2018-09-21 10:29:41 +02:00
Sebastian Huber
2df56dbd60 Update to FreeBSD head 2018-04-01
Git mirror commit 8dfb1ccc26d1cea7e2529303003ff61f9f1784c4.

Update #3472.
2018-09-21 10:29:40 +02:00
Sebastian Huber
18fa92c2dc Update to FreeBSD head 2018-02-01
Git mirror commit d079ae0442af8fa3cfd6d7ede190d04e64a2c0d4.

Update #3472.
2018-09-21 10:29:39 +02:00
Sebastian Huber
bb80d9df8b Update to FreeBSD head 2017-12-01
Git mirror commit e724f51f811a4b2bd29447f8b85ab5c2f9b88266.

Update #3472.
2018-09-21 10:29:38 +02:00
Sebastian Huber
e4a8065910 Update to FreeBSD head 2017-10-01
Git mirror commit b2f0376b45428f13151d229c5ae9d4d8f74acbd1.

Update #3472.
2018-09-21 10:29:37 +02:00
Sebastian Huber
c37f9fba70 Update to FreeBSD head 2017-08-01
Git mirror commit f5002f5e5f78cae9f0269d812dc0aedb0339312c.

Update #3472.
2018-09-21 10:29:37 +02:00
Sebastian Huber
de261e0404 Update to FreeBSD head 2017-06-01
Git mirror commit dfb26efac4ce9101dda240e94d9ab53f80a9e131.

Update #3472.
2018-09-21 10:29:36 +02:00
Sebastian Huber
f01edf1024 mDNSResponder: Update to v765.1.2
The sources can be obtained via:

https://opensource.apple.com/tarballs/mDNSResponder/mDNSResponder-765.1.2.tar.gz

Move mDNS_StartResolveService() and mDNS_StopResolveService() to an
RTEMS-specific file (rtemsbsd/mdns/mDNSResolveService.c) using the
v576.30.4 implementation.  Apple removed these functions without
explanation.

Update #3522.
2018-09-20 11:23:32 +02:00
Sebastian Huber
152d81f178 mDNSResponder: Increase stack size
The current stack size was insuffient on a test run of the foobarclient
test program.

Update #3522.
2018-09-20 11:23:31 +02:00
Sebastian Huber
3f09126cb6 mDNSResponder: Use FPU enabled task 2018-09-20 10:24:35 +02:00
Sebastian Huber
48cbe6cc1b Remove <poll.h>
This header file is provided by RTEMS.
2018-09-17 10:05:02 +02:00
Sebastian Huber
a85d90007e Optimize callout handline via static timer wheel
The number of callouts is a compile-time constant in libbsd.  Use this
in struct callout_cpu and avoid dynamic allocation of tables.  This
signficantly reduces the count of load instructions in the callout
handling.
2018-09-17 09:12:06 +02:00
Sebastian Huber
08fbf18141 Initialize interrupt server earlier
This allows to initialize other basic services which depend on the
interrupt server.
2018-09-12 08:09:38 +02:00
Sebastian Huber
6e5b088e8f Move dynamic mutex pool to separate file
This avoids false link-time dependencies.
2018-09-12 07:59:27 +02:00
Sebastian Huber
3b8f03b1e1 Fix BUS_SPACE_MAXADDR for 64-bit targets 2018-09-12 07:48:17 +02:00
Sebastian Huber
3990b45e97 Use rtems_counter_read() for get_cyclecount() 2018-09-11 11:37:34 +02:00
Sebastian Huber
0f9d58f58b dw_mmc: Avoid conflicting device ivars
Do not overwrite the device ivars used by the simplebus.  Use
unspecified unit number for child device.
2018-09-11 11:36:28 +02:00
Sebastian Huber
f56067e26c vprintf: Avoid printf() to avoid FPU usage 2018-09-10 15:15:42 +02:00
Sebastian Huber
4c22b5c1f2 Add FreeBSD kernel space header files
Move the kernel space content of some Newlib provided header files to
RTEMS and libbsd.  This allows to use the Newlib provided header files
with different FreeBSD baselines.

Update #3472.
2018-08-27 07:44:23 +02:00
Sebastian Huber
63084c1988 IPFW(4): Remove FreeBSD import
This firewall was not ported to RTEMS and is just dead code which may
make trouble during FreeBSD baseline updates.  It also increased the
compile-time of the library for nothing.

Update #3472.
2018-08-24 09:09:51 +02:00
Sebastian Huber
f62c62d2fe Update rtems-bsd-kernel-namespace.h
Update #3472.
2018-08-24 09:09:51 +02:00
Sebastian Huber
12a885cd18 Update due to <sys/time.h> API changes
Changes correspond to FreeBSD commit:

"Make timespecadd(3) and friends public

The timespecadd(3) family of macros were imported from NetBSD back in
r35029. However, they were initially guarded by #ifdef _KERNEL. In the
meantime, we have grown at least 28 syscalls that use timespecs in some
way, leading many programs both inside and outside of the base system to
redefine those macros. It's better just to make the definitions public.

Our kernel currently defines two-argument versions of timespecadd and
timespecsub.  NetBSD, OpenBSD, and FreeDesktop.org's libbsd, however, define
three-argument versions.  Solaris also defines a three-argument version, but
only in its kernel.  This revision changes our definition to match the
common three-argument version.

Bump _FreeBSD_version due to the breaking KPI change.

Discussed with: cem, jilles, ian, bde
Differential Revision:  https://reviews.freebsd.org/D14725"

Update #3472.
2018-08-24 08:57:10 +02:00
Christian Mauderer
028bf82f6d rc.conf: Fix cloned interface setup.
The cloned interfaces have to be set up befor the interface list is
created. Otherwise it's not possible to configure a cloned interface
with a `ifconfig_gifX` line.
2018-08-02 10:32:24 +02:00
Christian Mauderer
c7eec93e3c Add RTEMS_BSD_CONFIG_IPSEC. 2018-08-02 10:32:20 +02:00
Christian Mauderer
1b467ad47d Add ipsec to rc.conf. 2018-08-02 10:25:42 +02:00
Christian Mauderer
b376ae131d ipsec-tools: Port libipsec, setkey and racoon.
Note that this replaces the libipsec from FreeBSD with the one provided
by ipsec-tools.
2018-08-02 10:25:37 +02:00
Christian Mauderer
6215813e04 if_ipsec: Port and add to everything-buildset.
This ports the kernel space parts for ipsec and adds them to the
everything-buildset.
2018-08-01 09:55:27 +02:00
Sebastian Huber
94b5368388 Avoid malloc() in getsockaddr()
The getsockaddr() function is used to allocate a struct sockaddr of the
right length and initialize it with userspace provided data.  It is used
for the connect(), bind() and sendit() family functions.  In particular,
the sendit() function is used by the UDP send functions.  This means
each UDP send needs a malloc() and free() invocation.  This is a
performance problem in RTEMS (first-fit heap) and may lead to heap
fragmentation.  Replace the malloc() allocation with a stack allocation.
This requires SOCK_MAXADDRLEN (= 255) of additional stack space for
libbsd.

A further optimization would be to get rid of the stack copy of the
socket address.  However, this would require to check each consumer of
the address to ensure that it is not modified.
2018-07-04 07:20:37 +02:00
Christian Mauderer
f8cf0746b3 beagle: Disable WiFi if libbsd is build without it.
Update #3351.
2018-06-05 09:59:16 +02:00
Sebastian Huber
b2eb48c23b dhcpcd: Add hooks 2018-05-08 07:37:17 +02:00
Sebastian Huber
8bd38d645c dhcpcd: Add rtems_dhcpcd_start()
Use it throughout to start the DHCP client (dhcpcd).
2018-05-08 06:50:17 +02:00
Sebastian Huber
bd09f9f132 rc_conf: Do not create directories used by dhcpcd
The dhcpcd will create the directories on its own.
2018-05-08 06:50:17 +02:00
Sebastian Huber
9c570da872 rc_conf: Include missing header files 2018-05-08 06:50:17 +02:00