1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

671 Commits

Author SHA1 Message Date
81a0566c12
cpu/native: fix typo 'funtion' -> 'function' 2020-10-02 07:57:27 +02:00
Francisco
b5c51d244e
Merge pull request #14909 from OTAkeys/pr/conn_can_clean_up
can: add proper checks for ifnum validity
2020-10-01 09:22:28 +02:00
Vincent Dupont
b4f29035ce native/can: fix CAN init
Native CAN device was not properly ported to periph_can interface.
This commit fixes this by renaming all needed structures and files so
auto_init_can can initialize the native device. FEATURES_PROVIDED is
also updated for native.
2020-09-30 12:59:03 +02:00
Marian Buschsieweke
e66d5fad31
cpu/native: Add architecture_arch.h 2020-09-29 12:34:00 +02:00
MrKevinWeiss
7893158b5a drivers/dev_enums: Remove unused dev_enums.h 2020-09-24 09:27:39 +02:00
MrKevinWeiss
d95452b979 cpu/native: Remove unused TIMER_0_EN 2020-09-22 16:26:01 +02:00
Cenk Gündoğan
0d0bc91553
Merge pull request #14754 from leandrolanzieri/pr/no_archives
build system: link object files
2020-09-10 09:36:29 +02:00
Leandro Lanzieri
24d2578606
cpu/native: pull xtimer when RTC is used 2020-09-09 16:59:18 +02:00
Leandro Lanzieri
81cb769cad
makefiles: avoid building archives when compiling 2020-09-04 15:01:10 +02:00
benpicco
029ae8c7d2
Merge pull request #14766 from benpicco/cpu/native-rtc_set_alarm
cpu/native: RTC: implement rtc_set_alarm()
2020-08-28 17:39:47 +02:00
Martine Lenders
3d457b76cc
Merge pull request #14757 from benpicco/socket_zep_reboot
socket_zep: fix reboot
2020-08-26 19:41:16 +02:00
Benjamin Valentin
a41817bebd socket_zep: fix reboot
The `_zep_params_setup()` function will modify the `argv` string passed to it.
This is a problem because that string is re-used on reboot.

The modified string is then later processed in `socket_zep_setup()`, so we have to keep
the memory around.

The `strdup()` fulfills all this and the memory is freed by `execve()` on reboot.
A proper solution would be to parse the strings in `_zep_params_setup()`.
2020-08-26 15:38:03 +02:00
Benjamin Valentin
d2e0af2941 cpu/native: gpio: provide dummy implementations for GPIO IRQ 2020-08-25 13:53:14 +02:00
Benjamin Valentin
39b41d62cd cpu/native: allow to disable native periph implementations 2020-08-25 13:53:14 +02:00
Frank Hessel
4275b36cdb cpu/native: Adapt HW SPI for HW GPIO support 2020-08-25 13:53:14 +02:00
Benjamin Valentin
ea25e8580c cpu/native: add Linux GPIO implementation 2020-08-25 13:53:14 +02:00
Marian Buschsieweke
b657ebc39a
cpu/native: Don't access sched_active_*
Replaced accesses to sched_active_* with API calls in C files
2020-08-17 12:16:08 +02:00
Benjamin Valentin
bdc43c245c cpu/native: RTC: implement rtc_set_alarm()
Use xtimer to simulate an RTC timer.
This allows to simulate software that makes use of `rtc_set_alarm()`
on native.
2020-08-16 23:28:30 +02:00
Benjamin Valentin
bd2e6c30e6 cpu/native/async_read: close fds on cleanup
This was lost when moving to poll().
We need to close the fds on cleanup.

fixes #14636
2020-07-28 14:47:59 +02:00
Marian Buschsieweke
7d4911e3ad
cpu/native/Kconfig: Select HAS_LIBSTDCPP 2020-07-23 20:34:20 +02:00
benpicco
f3bce19646
Merge pull request #14503 from maribu/cpp-feature
build system: Add libstdcpp feature and doc
2020-07-23 19:05:10 +02:00
47e2885f80 cpu/native: async_read: add native_async_read_add_int_handler()
fcntl(fd, F_SETOWN, getpid()); doesn't seem to work on Linux
to get generate a signal when an event on the GPIO fd occurs.

So fall back to the same method as on OS X and call poll() in
a child process.
2020-07-21 11:50:18 +02:00
a274ea45fc cpu/native: async_read: rewrite select() call to poll()
select() can not listen to POLLPRI events which are used by the
Kernel's GPIO API.

In preparation for that, rewrite async_read() to use poll() instead
of select().
2020-07-21 11:50:18 +02:00
Leandro Lanzieri
64970ab131
cpu/native: Add Kconfig symbols 2020-07-16 13:53:45 +02:00
Marian Buschsieweke
0ed7ead587
cpu/native: Workaround for libstdcpp for FreeBSD
On FreeBSD, libstdc++ is known to not work with -m32. Thus, we don't provide
it feature libstdcpp there.
2020-07-15 20:29:02 +02:00
Marian Buschsieweke
cf482c5d46
build system: Add libstdcpp feature and doc
- Add libstdcpp feature to indicate a platform is providing a libstdc++
  implementation ready for use
- The existing cpp feature now only indicates a working C++ toolchain without
  libstdc++. (E.g. still useful for the Arduino compatibility layer.)
- Added libstdcpp as required feature were needed
- Added some documentation on C++ on RIOT
2020-07-15 11:45:22 +02:00
Akshai M
5523d119b6 gnrc/pktbuf : Move 'GNRC_PKTBUF_SIZE' to 'CONFIG_' 2020-06-11 14:46:36 +05:30
49375e1e10 cpu/native: rename trace -> backtrace 2020-06-04 14:37:01 +02:00
Leandro Lanzieri
9f41acaac6
cpu/native: Move dependencies to Makefile.dep 2020-05-20 18:24:39 +02:00
fabian18
a3a1c160ee mtd: Change API to return 0 on success
Returning the number of bytes written/read could return a negative integer
because a uint32_t is expected for the length in read()/write() operations.
2020-05-06 20:24:27 +02:00
5a9f01d91a
native: pass eeprom file path via command line 2020-04-29 08:56:33 +02:00
cbdda3c990
cpu/native: read/persist EEPROM data at startup/reboot/exit 2020-04-29 08:55:10 +02:00
4e1d7abddc
cpu/native: implement eeprom peripheral driver
The driver simply manages an internal buffer in memory that can be filled/dumped from/to a file
2020-04-29 08:55:08 +02:00
Martine Lenders
55a7010a0a
Merge pull request #13157 from nmeum/pr/fuzzing_tcp_only
Add AFL-based fuzzing setup for network modules
2020-04-18 10:54:14 +02:00
Jose Alamos
77325b4cde ieee802154: add CONFIG_ prefix to config macros 2020-04-08 19:08:25 +02:00
Sören Tempel
d7104e4992 makefiles/toolchain: add support for afl 2020-04-07 14:24:10 +02:00
0bb3304df3
native: don't export NATIVEINCLUDES 2020-03-26 10:25:49 +01:00
Jose Alamos
3ad574a822 drivers/netdev: use netdev_trigger_event_isr function 2020-03-06 14:03:43 +01:00
Wouter Symons
d477b5bc24 cpu/native/can/candev_linux: add check for real can when setting bittimings in init 2020-02-21 09:36:19 +01:00
Sebastian Meiling
32f1178ff0 native: fix c11_atomic sizes on FreeBSD
There is size difference for atomic_int_fast8 and atomiic_uint_fast8
on FreeBSD, i.e., they match uint32_t with size of 4 bytes instead of
uint8_t with size of 8. Hence, tests/c11_atomics_cpp_compat buildtest
fails on FreeBSD.
2020-01-23 13:23:02 +01:00
Sören Tempel
5ef5ab7e4b Add CPU feature for stack smash protections 2020-01-22 15:59:02 +01:00
Martine Lenders
7430ea98ed
Merge pull request #13096 from nmeum/pr/fix_asan_target
boards/native: fix all-asan Makefile target
2020-01-14 13:43:22 +01:00
Sören Tempel
e2b8231796 boards/native: fix crash with all-asan
Without this change a RIOT application compiled with all-asan will
segfault as RIOT provides its own malloc by default. Add a define for
disabling custom malloc, calloc and realloc implementations and use it
when compiling with all-asan.
2020-01-12 16:17:48 +01:00
Hyungsin
6eed5b9d43 remove XTIMER_OVERHEAD 2020-01-10 13:22:11 -08:00
Francisco
f6f4469542
Merge pull request #11889 from miri64/tapsetup/enh/sudo
tapsetup: require to be executed with sudo
2020-01-04 10:43:06 +01:00
Martine S. Lenders
bacef29086 native: adapt doc on tapsetup for new sudo requirement 2020-01-03 21:00:54 +01:00
Martine S. Lenders
0957b6301b
stdio_native: initial import 2019-12-18 14:15:40 +01:00
Sebastian Meiling
912f003a35
Merge pull request #12864 from smlng/pr_freebsd_zep
cpu/native: add missing header in socket zep
2019-12-03 17:47:27 +01:00
Sebastian Meiling
6dd7d6010f cpu/native: add missing header in socket zep
Building e.g. gnrc_border_router example on FreeBSD fails due to
missing defines related to sockets. This adds the missing header
<sys/socket.h> to fix compiling.
2019-12-03 15:34:25 +01:00
Martine Lenders
2f74d9d644
Merge pull request #12517 from miri64/native/enh/reset-command
native: allow for native to be resetable via SIGUSR1
2019-12-03 10:56:11 +01:00
Martine Lenders
fa317910d0
native: allow for native to be resetable via SIGUSR1 2019-12-03 09:51:52 +01:00
31b027124b cpu/native: fix typos 2019-11-23 22:39:36 +01:00
Francois Berder
4a31f94cfc many typo fixes
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
Francisco Molina
97dda76e7a cpu/native/irq_cpu.c: fix cpp.check unitialized variable 2019-11-21 11:58:07 +01:00
MrKevinWeiss
5c085d711d cpu/native: Suppress cpu specific spi_clk_t in doxygen 2019-11-18 11:44:13 +01:00
Benjamin Valentin
0ea2cbf1eb boards: remove RTT_NUMOF/RTC_NUMOF
Those macros are defined but never used.
2019-11-08 14:20:33 +01:00
Marian Buschsieweke
314184adb5
cpu: Platform specific C11 atomics compat headers
Added headers to define platform specific sizes and types for the C11 atomics
compatibility module for C++.
2019-10-24 23:08:36 +02:00
Francisco Molina
45c8eafd42 Makefile.include: remove repeated OS declaration 2019-10-18 10:36:43 +02:00
Francisco Molina
f3482de277 REMOVEME: add OS and OS_ARCH variable 2019-10-18 08:46:51 +02:00
Frank Hessel
51194b9c0d
cpu/native: Implement hardware SPI access (Linux) 2019-10-16 14:32:53 +02:00
ebf43616b7 cpu: add arch_* features 2019-10-13 21:03:41 +02:00
Sebastian Meiling
935bb51e14 cpu/native: adapt timer to return 0 on success
Adapt periph/timer implementation of native based MCUs
to return 0 on success for all functions.
2019-09-11 13:51:02 +02:00
Benjamin Valentin
7047a200af cpu/native: advertise support for unaligned memory access
On Linux, even if the architecture does not support it, the kernel will
catch the fault and emulate the unaligned accesss.
2019-09-04 14:15:52 +02:00
smlng
2de4b3011b periph_common: add as dependency to periph drivers
Rational: the periph_common module is required by (most) other periph drivers
and also during startup of the CPU/MCU to run periph_init. The latter is only
required if other periph drivers are used, hence periph_common should be a
depency of periph_* modules and *not* of the CPU/MCU. This PR fixes that
by making periph_common a depency of periph_* and removing the explicit
include in the CPU/MCU implementation.
2019-06-03 13:44:10 +02:00
Gilles DOFFE
90f819eee2 cpu/native: return 0 if GPIO is an output in gpio_init
If the GPIO is in an output state, gpio_init() can return 0 without bad
consequences.
-1 was return until now.

Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
2019-03-11 01:44:22 +01:00
Gilles DOFFE
dc8a44ce14 cpu/native: correct emails in header
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
2019-03-11 01:44:22 +01:00
Gilles DOFFE
1da6a03f09 cpu/native: add pwm implementation
Simulate PWM signals with a 2 dimensions array.

Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
2019-03-11 01:44:22 +01:00
aa90f93de3
Merge pull request #10891 from kaspar030/fix_native_thread_yield_higher
cpu/native: fix race in thread_yield_higher()
2019-02-01 16:10:54 +01:00
smlng
6183d5f5c5 netdev: remove layer2 netstats from netdev drivers
Removing usage of netdev->stats in all net drivers, as it is
handled by gnrc_netif.
2019-02-01 11:25:27 +02:00
62bb4cc526 cpu/native: fix race condition in thread_yield_higher()
Error case:
1. thread_yield_higher() stores the thread's ucontext
2. creates an "isr ucontext" for isr_thread_yield, switches to it

Case 1: no signals are pending, continues in isr_thread_yield()
3a. sched_run is called
4a. return to sched_active_thread ucontext

Case 2: signals pending (the crashing scenario), continues in native_irq_handler()
3b. handles signals
4b. if sched_context_switch_request is set, call sched_run
5b. return to sched_active_thread ucontext

4b misses the call to sched_run(), leading to a possible return into a
non-ready thread.
2019-01-28 17:12:01 +01:00
Martine Lenders
83bc4b162f socket_zep: fix undefined timestamp conversion behavior 2019-01-24 14:05:31 +01:00
Gunar Schorcht
c5e9f12243 doc: fix undocumented func in socket_zep_params.h 2019-01-18 07:18:06 +01:00
Martine Lenders
d34bf526c1
Merge pull request #10783 from kaspar030/fix_native_timer
cpu/native/periph/timer: fix type conversion
2019-01-17 11:11:01 +01:00
f5345fbd38 cpu/native/periph/timer: fix undefined behaviour 2019-01-16 15:16:54 +01:00
Kees Bakker
2d04cdfb89 cpu/native: do normal assignment instead of memcpy 2019-01-10 19:43:43 +01:00
7ed3f80989
zep: Remove PAN ID initialization from reset 2018-11-28 11:31:02 +01:00
Semjon Kerner
5b0152f4f7 drivers/netdev_ieee802154: drop NETOPT_MAX_PKT_SIZE 2018-10-16 13:28:03 +02:00
Joakim Nohlgård
4a5ef1d2f6 native/netdev_tap: Rename variable to fix Wshadow warning 2018-09-28 09:57:30 +02:00
Hauke Petersen
a965532d07 cpu/native/gpio: remove empty gpio irq func stubs 2018-09-20 14:51:19 +02:00
c0fdce22b3
netdev_tap: declare netdev_driver struct as const 2018-08-23 17:31:45 +02:00
Martine Lenders
c0a7da3068 native: Mark llvm and gnu as supported toolchains 2018-08-16 16:41:58 +02:00
Martine Lenders
ad133da209 native: ignore -Wformat-nonliteral for formatting syscalls
The point of that call is to wrap the actual host system's formatting
functions, so the non-literal formatting string is alright here.
2018-08-01 09:03:01 +02:00
608f0135d7
zep: Use netdev reset function 2018-07-16 15:36:34 +02:00
4133908fe0 cpu/native: fix doxygen grouping 2018-06-11 19:12:02 +02:00
Simon Brummer
323a38819a native: Enforce safe strncpy usage in tap device setup 2018-06-10 17:16:46 +02:00
Joakim Nohlgård
2d88cfca15 native: Define PROVIDES_PM_SET_LOWEST 2018-05-15 10:58:05 +02:00
Gaëtan Harter
40c28d78c0 Revert "native: remove non required NATIVEINCLUDES"
This reverts commit 93a521c501.
2018-04-12 17:48:07 +02:00
Martine Lenders
f52b17022e netdev_tap: fix return value of set option function 2018-04-10 15:12:15 +02:00
Martine Lenders
690c36b3cf
Merge pull request #8652 from cladmi/pr/remove_nativeincludes
native: remove non required NATIVEINCLUDES
2018-03-22 15:57:38 +00:00
Gaëtan Harter
93a521c501 native: remove non required NATIVEINCLUDES
Some modules used a 'NATIVEINCLUDES' with different include path and no other
included directories.
It was defining basic 'include' in a different order and not using other things
defined in INCLUDES.
After doing some checks with the given include path and possible conflicting
files, there should be no conflict when using the default one.

* No common headers between all the NATIVEINCLUDES directories
* No common headers files between board/native/include, cpu/native/include and
  other files in the repository (except other boards/cpus of course).
2018-03-20 17:51:03 +01:00
Martine Lenders
875a5c165d trace: initial import of a stack backtrace function for native
Sometimes the debugger just isn't fast enough to debug that pesky race
conditions. This module provides at least a little help.
2018-03-20 15:12:48 +00:00
Bas Stottelaar
a05d1b1004 cpu/board: native: use common peripheral initialization 2018-03-15 23:26:01 +01:00
23b414b732 drivers: net: adapt to iolist-using netdev 2018-03-06 14:00:31 +01:00
ff6b8aa4f1 cpu/native/netdev_tap: adapt to netdev with iolist 2018-03-06 14:00:31 +01:00
Hauke Petersen
4fd16b0bcc cpu/native: add empty uart/power_x functions 2018-03-02 10:54:21 +01:00
c450cdebeb
Merge pull request #8482 from cogip/qdec
drivers: Initial import of low-level QDEC driver interface
2018-02-26 17:44:58 +01:00
MichelRottleuthner
bad08596f6
Merge pull request #8399 from OTAkeys/fix/mtd_native_write
mtd_native: fix overlapping pages write check
2018-02-26 15:38:46 +01:00
Vincent Dupont
f04ecee9f6 mtd_native: fix overlapping pages write check 2018-02-26 15:32:06 +01:00
Gilles DOFFE
07158755ea cpu/native: add qdec implementation
* Add support for the native encoder interface
* Native QDEC is there mostly for simulation
* Calling code will have to simulate QDEC increment/decrement

Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
2018-02-23 23:16:42 +01:00
smlng
15a7e6bb98 cpu/native: reduce scope of CFLAGS for OSX compatibility 2018-02-09 17:44:41 +01:00