Commit graph

71590 commits

Author SHA1 Message Date
Kumar Gala
4f458ba8de kernel: Convert away from CONFIG_MP_NUM_CPUS
Move runtime code to use arch_num_cpus() instead of CONFIG_MP_NUM_CPUS
and use CONFIG_MP_MAX_NUM_CPUS for ifdef and BUILD_ASSERT macros.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:09:14 +01:00
Kumar Gala
1a5495adea tests: kernel: smp_boot_delay: Convert CONFIG_MP_NUM_CPUS handling
Move build and build system checks to use CONFIG_MP_MAX_NUM_CPUS
as we phase out CONFIG_MP_NUM_CPUS.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:09:06 +01:00
Kumar Gala
f7522cb71e tests: kernel: spinlock: Convert CONFIG_MP_NUM_CPUS handling
Move build and build system checks to use CONFIG_MP_MAX_NUM_CPUS
as we phase out CONFIG_MP_NUM_CPUS.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:09:06 +01:00
Kumar Gala
b0e916ba67 tests: kernel: smp: Convert CONFIG_MP_NUM_CPUS handling
Move runtime checks to use arch_num_cpus() and build checks
to use CONFIG_MP_MAX_NUM_CPUS.  This is to allow runtime
determination of the number of CPUs in the future.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:09:06 +01:00
Kumar Gala
0a8cef84ae tests: kernel: mp: Convert CONFIG_MP_NUM_CPUS handling
Move build and build system checks to use CONFIG_MP_MAX_NUM_CPUS
as we phase out CONFIG_MP_NUM_CPUS.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:09:06 +01:00
Kumar Gala
311a46e948 tests: mem_slab: mslab_api: Convert CONFIG_MP_NUM_CPUS handling
Move runtime checks to use arch_num_cpus() to use
CONFIG_MP_MAX_NUM_CPUS.  This is to allow runtime
determination of the number of CPUs in the future.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:09:06 +01:00
Kumar Gala
b5ec4109d3 tests: mem_protect: syscalls: Convert CONFIG_MP_NUM_CPUS handling
Move runtime checks to use arch_num_cpus() and build checks
to use CONFIG_MP_MAX_NUM_CPUS.  This is to allow runtime
determination of the number of CPUs in the future.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:09:06 +01:00
Kumar Gala
ab02bbc965 tests: lib: p4workq: Convert CONFIG_MP_NUM_CPUS handling
Move runtime checks to use arch_num_cpus() and build checks
to use CONFIG_MP_MAX_NUM_CPUS.  This is to allow runtime
determination of the number of CPUs in the future.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:08:34 +01:00
Kumar Gala
9be0914885 lib: os: p4wq: Convert CONFIG_MP_NUM_CPUS handling
Move runtime checks to use arch_num_cpus().  This is to allow
runtime determination of the number of CPUs in the future.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 17:08:34 +01:00
Nikolay Agishev
2fb1384da6 boards: qemu_arc_hs: Add separate xip & non-xip configs
Two separate configs for qemu_arc_hs and qemu_arc_hs_xip
were added.

Signed-off-by: Nikolay Agishev <agishev@synopsys.com>
2022-10-31 17:03:44 +01:00
Paul Jans
e35ce37443 drivers: ethernet: enc28j60: Added carrier status update functionality
Expanded the enc28j60 driver to update its carrier status
whenever the Ethernet cable is plugged in or out. I used the
enc424j600 driver as reference, as this driver already
included this functionality. The driver will now take
the interface offline whenever the cable is not plugged in
and stop sending packets. The respective events are also
generated for use in the application. I tested it locally
on my nRF52840 based gateway board using the enc28j60 network
chip. Everything worked as expected.

Signed-off-by: Paul Jans <paul.jans.1999@hotmail.com>

Fixes #51214
2022-10-31 17:03:18 +01:00
Yuval Peress
f460c21578 test: update how unit tests set sources
Replaces cases of setting SOURCES before calling find_package with
proper target_sources.

Signed-off-by: Yuval Peress <peress@google.com>
2022-10-31 17:01:59 +01:00
Yuval Peress
ffb861d1a3 unittest: warn users of deprecated SOURCES
If users set SOURCES before find_package for unit tests, we'll warn them
that this code path will no longer be supported and provide the correct
way of doing things moving forward.

Signed-off-by: Yuval Peress <peress@google.com>
2022-10-31 17:01:59 +01:00
Yuval Peress
9cebf732ee unittest: Only add main.c if it exists
Downstream it's easier to write tests that use target_sources after
including the unittest package instead of specifying a list of sources
before. But if we do that, currently, main.c is added and the build
breaks because it doesn't exist.

Signed-off-by: Yuval Peress <peress@google.com>
2022-10-31 17:01:59 +01:00
Chris Friedt
bea16cae3a posix: correct struct label for pthread_attr_t
Normally, for typedef'ed structures, the struct label should not
end in `_t`.

Signed-off-by: Chris Friedt <cfriedt@meta.com>
2022-10-31 16:59:16 +01:00
Chris Friedt
f5cfeae152 posix: pthread: remove duplicate assignment in pthread_exit
The `self->retval` field was assigned twice.

Signed-off-by: Chris Friedt <cfriedt@meta.com>
2022-10-31 16:58:47 +01:00
Gerson Fernando Budke
e9dde82565 MAINTAINERS: update gd32 maintainers
Promote HaiLong Yang @cameled as gd32 maintainer.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2022-10-31 10:29:14 -04:00
Parthiban Nallathambi
12eb38c5a5 sensor: dht: fix code stlying
fix indent, change space to tab

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2022-10-31 09:28:05 -05:00
Filip Zajdel
4508681020 kconfig: wrap description in guiconfig
Modify description frame to wrap the text so the window
doesn't have to be scrolled horizontally.

Signed-off-by: Filip Zajdel <filip.zajdel@nordicsemi.no>
2022-10-31 23:23:46 +09:00
Keith Packard
62bc9bf3e5 cmake: Allow selection of libc API overflow detection mode
This adds a choice of three different libc API buffer overflow detection
modes:

 * None
 * Compile-time
 * Compile-time and Run-time

These correspond with the clang/gcc _FORTIFY_SOURCE modes (0/1/2).
_FORTIFY_SOURCE depends on compiler optimizations and require libc support
which the minimal C library doesn't include, so _FORTIFY_SOURCE is disabled
by default in those cases. Native tooling might also enable
_FORTIFY_SOURCE, so don't enable it by default in that case either.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-10-31 23:23:27 +09:00
Gaël PORTAY
1578a991bd samples: blinky_pwm: fix missing project renaming
The commit bfb1040612 has renamed the
sample blink_led to blinky_pwm, however, the project still have the
former name: blink_led.

This renames the project to its new name: blinky_pwm.

Signed-off-by: Gaël PORTAY <gael.portay@gmail.com>
2022-10-31 09:22:59 -05:00
Kumar Gala
ec8a689fcc tests: kernel: smp: pick a platform that makes sense for the tests
Pick a platform that actual supports SMP - qemu_x86_64.  Remove setting
CONFIG_TIMESLICING as that is already set.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 09:08:35 -05:00
Kumar Gala
c03ef06fff tests: kernel: mp: pick a platform that makes sense for the tests
Pick a platform that actual supports MP - qemu_x86_64.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2022-10-31 09:08:35 -05:00
Piotr Pryga
f24b5b4b43 Bluetooth: host: df: fix wrong connectionless CTE enable cmd length
There were a bug in a prepare_cl_cte_rx_enable_cmd_params function.
The size of command buffer was wrong when CTE enabled in AoD mode.
The command buffer was extended by param->num_ant_ids, that was
zero in case of AoD. Then a dummy antenna switch pattern was copied
into the command buffer.

That lead to: memory overwrite, and wrong command buffer length.
The command was rejected by Controller.

To fix, use cp->switch_pattern_len that was already assigned with
correct antenna pattern length.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2022-10-31 11:23:44 +01:00
Gaël PORTAY
cd9d2db892 boards: heltec_wifi_lora32_v2: enable lora
This enables the support for the Semtech SX1276 chip on board (see the
pinout[1] and schematic[2] documents).

The chip is connected to SPI as follow:

| PIN  | GPIO   |
| ---- | -------|
| CS#  | GPIO18 |
| CLK  | GPIO5  |
| MOSI | GPIO27 |
| MISO | GPIO19 |
| RST# | GPIO14 |

Additionally, the LoRa DIO PINs are connected as follow:

| PIN  | GPIO   |
| ---- | -------|
| DIO0 | GPIO26 |
| DIO1 | GPIO35 |
| DIO2 | GPIO34 |

_Note_: The first three DIO PINs are connected to the ESP32 MCU only.

[1]: https://resource.heltec.cn/download/WiFi_LoRa_32/WIFI_LoRa_32_V2.1.pdf
[2]: https://resource.heltec.cn/download/WiFi_LoRa_32/V2/WIFI_LoRa_32_V2(868-915).PDF

Signed-off-by: Gaël PORTAY <gael.portay@gmail.com>
2022-10-31 11:23:20 +01:00
Evgeniy Paltsev
ac76c27af8 tests: arc: enable previously disabled tests on ARCv3 64bit platforms
Enable all cbprintf / logging related tests which were previously
disabled for qemu_arc_hs6x.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
2022-10-31 11:22:12 +01:00
Evgeniy Paltsev
ead4d2bc02 ARC: cbprintf: enforce proper alignment
ARC ABI requires stack to be 32 / 64 bit aligned for 32bit and
64 bit architecture variant.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
2022-10-31 11:22:12 +01:00
Maureen Helm
32aa66d57e samples: sensor: Enable sensor info shell command
Enables the new sensor info shell command in the sensor shell sample
application and documents its usage.

Signed-off-by: Maureen Helm <maureen.helm@intel.com>
2022-10-31 11:21:37 +01:00
Maureen Helm
eef0e1a180 samples: sensor: Update sensor shell documentation
Updates the sensor shell sample documentation to reflect the currently
supported sensor shell commands. The list and list_channels commands
were removed in commit 95b4d37230 but the
documentation wasn't updated at the time.

Signed-off-by: Maureen Helm <maureen.helm@intel.com>
2022-10-31 11:21:37 +01:00
Maureen Helm
97defe7095 drivers: sensor: Add shell command to get sensor info iterable section
Adds a new conditional shell command to the sensor shell to get data
from the sensor info iterable section, such as vendor and model name,
for all sensors.

Signed-off-by: Maureen Helm <maureen.helm@intel.com>
2022-10-31 11:21:37 +01:00
Maureen Helm
eee3d8f566 drivers: sensor: Add sensor info iterable section
Adds an iterable section in ROM to hold constant information, such as
vendor and model name, for all enabled sensor driver instances. This
will be used by the future sensor subsystem to enumerate all available
sensors in the system.

Signed-off-by: Maureen Helm <maureen.helm@intel.com>
2022-10-31 11:21:37 +01:00
Keith Packard
217528f2de boards/qemu_x86_tiny: Shrink reserved pages for picolibc heap
Just like newlib.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-10-31 17:17:42 +09:00
Keith Packard
25c378461e libc/picolibc: Set __LINUX_ERRNO_EXTENSIONS__ for picolibc
This makes sure extra errno values from Linux that Zephyr uses are
available.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-10-31 17:17:42 +09:00
Keith Packard
b3073f0099 gcc/picolibc: Disable -fprintf-return-value when printf is not complete
GCC will compute expected sprintf (et al) return values internally and use
them in place of the actual return value. When the printf implementation
has reduced functionality, gcc may compute a different value.

For picolibc, this means disabling the optimization unless floating point
output is enabled.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-10-31 17:17:42 +09:00
Keith Packard
cb5c440525 picolibc: Fix a couple of printfcb wrapper macros
Picolibc aliases the printfcb functions directly to printf
equivalents. There were a couple of these macros that were broken.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-10-31 17:17:42 +09:00
Emil Gydesen
2fd9c82658 Bluetooth: Audio: Increase some values for the audio shell
Increase some value for the shell to be more useful when
working with some audio devices.

Also adds debugging for more services and profiles.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2022-10-31 16:43:41 +09:00
Martin Jäger
d5168a8d96 drivers: i2c: esp32: set timeout to allow clock stretching
The ESP32 series MCUs allow to set a timeout which triggers an error
if the SCL line is unchanged for the specified amount of time.

By default, the ESP-IDF HAL sets the timeout to an arbitrary value of
10 times the bus cycle.

This is not sufficient for chips like the TI bq76952, which pulls the
SCL line low (clock stretching) for several 100 µs.

The timeout should also not be dependent on the chosen bitrate, as it
is defined by the time a chip needs for internal calculation before it
can provide requested data or continue communication.

This commit adds a property to devicetree to allow configuration of
the scl timeout. This value is set via direct register access, as the
ESP-IDF HAL does not provide access to the enable bit and does not
give any information about the maximum size of the timeout (defined
in I2C clock cycles in the register).

Fixes #51351

Signed-off-by: Martin Jäger <martin@libre.solar>
2022-10-31 16:41:57 +09:00
Martin Jäger
1529968884 drivers: i2c: esp32: fix indentation
No functional changes.

Signed-off-by: Martin Jäger <martin@libre.solar>
2022-10-31 16:41:57 +09:00
Henri Xavier
374485bde1 tests: add missing 'picolibc' tag to cpp test
All other picolibc-related tests have this tag.
This allows easy exclusion of picolibc-related tests
from a twister run.

Signed-off-by: Henri Xavier <datacomos@huawei.com>
2022-10-31 16:39:20 +09:00
Mariusz Skamra
3ea297960d Bluetooth: audio: Remove capablilities leftovers
Remove dead code that remained after
https://github.com/zephyrproject-rtos/zephyr/pull/51425 was merged.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2022-10-31 16:39:05 +09:00
Stephanos Ioannidis
69ef22b717 ci: codecov: Clone cached Zephyr repository
This commit updates the codecov workflow to pre-clone the Zephyr
repository from the runner repository cache.

Note that the `origin` remote URL is reconfigured to that of the GitHub
Zephyr repository because the checkout action attempts to delete
everything and re-clone otherwise.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Stephanos Ioannidis
1bfd46bc71 ci: codecov: Use zephyr-runner
This commit updates the codecov workflow to use the new Kubernetes-
based zephyr-runner.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Stephanos Ioannidis
408473f85d ci: clang: Remove obsolete clean-up steps
The repository clean-up steps are no longer necessary because the new
zephyr-runner is ephemeral and does not contain any files from the
previous runs.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Stephanos Ioannidis
6c676827e7 ci: clang: Clone cached Zephyr repository
This commit updates the clang workflow to pre-clone the Zephyr
repository from the runner repository cache.

Note that the `origin` remote URL is reconfigured to that of the GitHub
Zephyr repository because the checkout action attempts to delete
everything and re-clone otherwise.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Stephanos Ioannidis
e81964bb90 ci: clang: Use zephyr-runner
This commit updates the clang workflow to use the new Kubernetes-based
zephyr-runner.

Note that the repository cache directory path has been changed for the
new runner.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Stephanos Ioannidis
4d195cb2c3 ci: twister: Remove obsolete clean-up steps
The repository clean-up steps are no longer necessary because the new
zephyr-runner is ephemeral and does not contain any files from the
previous runs.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Stephanos Ioannidis
a3ae6ad74b ci: twister: Clone cached Zephyr repository
This commit updates the twister workflow to pre-clone the Zephyr
repository from the runner repository cache.

Note that the `origin` remote URL is reconfigured to that of the GitHub
Zephyr repository because the checkout action attempts to delete
everything and re-clone otherwise.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Stephanos Ioannidis
4cf366a81a ci: twister: Use zephyr-runner
This commit updates the twister workflow to use the new Kubernetes-
based zephyr-runner.

Note that the repository cache directory path has been changed for the
new runner.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-10-31 08:08:35 +09:00
Keith Packard
268087646d tests/bluetooth: Use memcpy to put data into net_buf
net_buf does not hold strings, it holds counted bytes. Use memcpy to place
data into the buffer during testing rather than strncpy as the latter
generates warnings because the destination will not be nul-terminated.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-10-29 11:32:06 +03:00
Keith Packard
d61d941ec8 samples/bluetooth: Fix mis-use of bt_data 'data' field
The data field is a *pointer* to the buffer, not the actual buffer itself.
Instead of smashing past the end of the struct, write through that pointer.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-10-29 11:32:06 +03:00