Commit graph

99,250 commits

Author SHA1 Message Date
Fabio Baltieri
0442fe3bbf input: npcx_kbd: clear pending interrupts before reenabling detection
The driver right now re-enters polling mode a couple times after the
matrix has been detected as stable as the key interrupt is still pending
and fires again once detection is reenabled.

Clear pending WUI interrupts before reenabling key press detection to
avoid that.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-12-19 10:57:38 +00:00
Andrei Emeltchenko
0223fe897f tests: lib: acpi: Convert to FFF
Convert fake functions to FFF.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
751f871b20 tests: acpi: Add unit test for ACPI table parsing
Initial unit test for ACPI table parsing.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
24b58ecc51 lib: acpi: Add ASSERT() for wrong length
Add ASSERT() for length.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
abbbc43be8 tests: acpi: Rename acpi to integration test
Rename test to integration and allow to include unit tests for ACPI.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
c78bff954e drivers: intc_ioapic: Fix get ioapic_id
Information about IOAPIC can be located not in the first
DMAR Hardware Unit Definition subtable. Iterate them all.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
28ac21330d lib: acpi: Implement acpi_dmar_ioapic_get()
Implement get IOAPIC id from DMAR table.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
2a49611ab0 boards: alder_lake: Enable VTD
Enable VTD for Alder Lake board.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
8924feb960 tests: Refactor ACPI info sample
Take into account multiple DMAR HARDWARE_UNIT tables.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Andrei Emeltchenko
4c3eda827a acpi: Add acpi_dmar_foreach helpers
Add function walking though all DMAR subtables, at the moment only
first subtable is taking into account, which causes bugs for some
boards.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-12-19 11:04:19 +01:00
Anisetti Avinash Krishna
eb2cd31407 drivers: sdhc: intel_emmc_host: Fix return value
Fixes uninitialized variable return by returning zero
at the end of function.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2023-12-19 08:52:00 +01:00
Anisetti Avinash Krishna
fcc572e040 drivers: dma: intel_lpss: Fix channel count condition
Fixes channel count comparison by using connect const.

Signed-off-by: Anisetti Avinash Krishna	<anisetti.avinash.krishna@intel.com>
2023-12-19 08:51:54 +01:00
Andrej Butok
abcfd0cbd8 soc: lpc55xxx: Fix TFM
TFM is using flash, so sys. clock must be decreased.
Fixes #65957

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2023-12-19 08:51:45 +01:00
Pieter De Gendt
276ae6c573 mcumgr: transport: smp_udp: Start socket on interface UP
The implementation waited for a NET_EVENT_L4_CONNECTED event to be
emitted. However we can start the receiving thread in case the interface
is up.

This allows for IPv6 Link Local addresses to be used with mcumgr.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2023-12-19 08:51:34 +01:00
Lukasz Majewski
eccc64fc49 drivers: ethernet: lan865x: Trigger IRQ routine when rca>0 read from TX ftr
This code fixes following issue:

The TX data chunk (with NORX set) is send to chip (via SPI) and at the
same time a frame is received (by the LAN8651 chip), there will be no IRQ
(the CS is still asserted), just the footer will indicate this with the
rca > 0.

Afterwards, new frames are received by LAN865x, but as the previous footer
already is larger than zero there is no IRQ generated.

To be more specific (from [1], chapter 7.7):
----->8-------
RCA – Receive Chunks Available
Asserted:
The MAC-PHY detects CSn deasserted and the previous data footer had no
receive data chunks available (RCA = 0). The IRQn pin will be asserted
when receive data chunks become available for reading while CSn is
deasserted.

Deasserted:
On reception of the first data header following CSn being asserted
------8<------

Doc:
[1] - "OPEN Alliance 10BASE-T1x MAC-PHY Serial Interface"
OPEN_Alliance_10BASET1x_MAC-PHY_Serial_Interface_V1.1.pdf

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2023-12-19 08:51:27 +01:00
Lukasz Majewski
f426ad16e1 drivers: ethernet: Update ETH_LAN865X_TIMEOUT Kconfig description
The description is a bit misleading as the packet is not even read in
the mentioned case by the OA TC6 Zephyr driver.

When the timeout occurs the data (packet) received by LAN865x may be:
- Read latter if still in the RX buffer of LAN865x
or
- Is (probably) dropped by LAN8651 itself as the RX buffer gets overrun

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2023-12-19 08:51:27 +01:00
Lukasz Majewski
4903ec7478 drivers: ethernet: tc6: Check footer parity before updating struct oa_tc6
The parity of the received footer from data transfer (also including the
NORX) shall be checked before members of struct tc6 are updated.

This prevents from updating the driver's crucial metadata (i.e. struct
oa_tc6) with malformed values and informs the upper layers of the driver
that error has been detected.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2023-12-19 08:51:27 +01:00
Lukasz Majewski
d2e864f17b drivers: ethernet: lan865x: Don't wait on semaphore if no memory for pkt
With the current approach, the driver prevents from TX transmission
when waiting on timeout (standard 100ms) for available memory to be
able to allocate memory for RX packet.

It is safe to just protect the part of reading chunks. In that way
pending TX transmission can be performed.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2023-12-19 08:51:27 +01:00
Emil Gydesen
8df987935b Bluetooth: MPL: Add track position notifications during seeking
When seeking the media player should notify clients about the
track position change.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-12-19 08:51:21 +01:00
Michal Smola
096e95898b twister: fix hardware map hardware detection
NXP boards with CMSID-DAP are not detected by twister
--generate-hardware-map, because serial device name 'mbed' is compared
with upper case 'MBED' in a list of supported manufacturers.
Fix it by making the comparison case-insensitive.
Tested using mimxrt1020_evk.

Fixes #63765

Signed-off-by: Michal Smola <michal.smola@nxp.com>
2023-12-19 08:51:14 +01:00
Declan Snyder
410990825a drivers: mdio_nxp_enet: Support MDC freq prop
If the DT node for mdio of nxp enet has a mdc freq specified,
use this when configuring the module.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2023-12-19 08:51:05 +01:00
Declan Snyder
7688e5efb1 dts: mdio-controller: Add MDC frequency property
Add a property to the mdio controller binding to describe the MDC
frequency generated by the controller.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2023-12-19 08:51:05 +01:00
Emil Gydesen
cda5e58aa5 Bluetooth: CAP: Commander discovery support
Implement the CAP Commander discovery function.

Adds support for it in the shell.

This includes initial babblesim and unit testing as well.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-12-19 08:50:40 +01:00
Manuel Loew
2876dcabbf boards: Corrects RAM size of CY8CPROTO-062-4343W PSoC6 eval board.
This PR corrects the RAM size specification of
the Infineon CY8CPROTO-062-4343W PSoC6 eval board.

Fixes #60876

Signed-off-by: Manuel Loew <manuel.loew.infineon@gmail.com>
2023-12-19 08:49:28 +01:00
Anas Nashif
52b8858e82 ci: upload merged coverage file as artifact
Upload merged coverage file as artifact for verification and inspection.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-12-18 16:51:23 -05:00
Yong Cong Sin
170531eb2d tests: kernel: gen_isr_table: rework multi_level_bit_masks tests
Reworked and combined the multi-level interrupt bit masks tests
to work on any configuration of bits in every level.

Updated the bits configuration in the testcase to use
non-symetric numbers so that shifting a level with the wrong
number of bits will certainly cause the test to fail.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-12-18 15:09:36 -05:00
Yong Cong Sin
0884a33ee3 scripts: build: gen_isr_tables: add some debug prints
Add some debug prints for the interrupts bits and bitmasks
in each level.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-12-18 15:09:19 -05:00
Yong Cong Sin
b4db285c1f scripts: build: gen_isr_tables: change naming of bitmask variables
Rename the bitmask variables from `*_LVL_INTERRUPTS` to
`INTERRUPT_LVL_BITMASK[]` array to be consistent with
`INTERRUPT_BITS`, making it easier to loop over the bitmasks.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-12-18 15:09:19 -05:00
Yong Cong Sin
56570cc8c1 scripts: build: gen_isr_tables: fix calculation of THIRD_LVL_INTERRUPTS
The calculation of `THIRD_LVL_INTERRUPTS` bitmask in the
`update_masks()` function is wrong, the number of bits to shift
should be the sum of the first two levels.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2023-12-18 15:09:19 -05:00
Arnaud Pouliquen
dadd16996a west.yml: Update libmetal and open-amp for v2023.10 release
Update to the last relase of open-amp library
The libmetal is updated to a more recent commit to integrate
2 zephyr commits on top of the v2023.10 release.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2023-12-18 19:27:30 +01:00
Erwan Gouriou
44af61b865 west.yml: Point to hal_stm32 version compatible with STM32WBA BLE
Update west manifest to point to hal_stm32 PR containing changes
which allow to build a zephyr bluetooth application on STM32WBA.

Prior building such application, user should run 'west blobs fetch stm32'
to install binary blobs providing the BLE controller support.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2023-12-18 17:31:08 +00:00
Erwan Gouriou
aa8c9322df boards: nucleo_wba55cg: Update clock configuration to be BLE compatible
To be compatible with BLE operation and BLE Controler configuration,
update board clock configuration to work using a fixed core clock at
16MHz.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2023-12-18 17:31:08 +00:00
Erwan Gouriou
79e55c2a04 dts: wba: configure HSI16 as RNG clk source
We might have to do this differently:
Configure rng default clock in .dtsi
Set board specific config in .dts

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-12-18 17:31:08 +00:00
Erwan Gouriou
2c88daab3b dts: stm32wba: Define SRAM6 as RAM_NOCACHE
SRAM6 is used by RF and should be defined as RAM_NOCACHE
to allow unaligned access reads.
"IO" might be a better match but is not available on this arch.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-12-18 17:31:08 +00:00
Erwan Gouriou
6f6410061d soc: stm32wba: Implement BLE controller lib APIs over Zephyr
In order to enable BLE support on STM32WBA, following APIs are implemented:
- HostStack_: BLE Controller scheduling
- ll_sys_: Link layer API required for scheduling
- UTIL_TIMER_: BLE Controller timer utility
- LINKLAYER_PLAT_: BLE controller utilities

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2023-12-18 17:31:08 +00:00
Erwan Gouriou
6ed002ddae modules: Kconfig.stm32: Add Kconfig symbol for RAMCFG
RAMCFG will be required for STM32WBA BLE support.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2023-12-18 17:31:08 +00:00
Erwan Gouriou
54d7793e82 drivers: bluethooth: stm32wba: Add HCI driver for STM32WBA
Add HCI Driver for STM32WBA devices.
Based on B91 HCI driver.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2023-12-18 17:31:08 +00:00
Fabio Baltieri
e51a877a90 bluetooth: shell: match cmd_conn_phy_update conditions
The condition for channel-map are CONFIG_BT_CENTRAL ||
CONFIG_BT_BROADCASTER, change the corresponding handler ifdef so that
it's included in the build if CONFIG_BT_BROADCASTER is enabled but
CONFIG_BT_CENTRAL is not.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-12-18 17:29:02 +00:00
Chaitanya Tata
6152e64aa0 wifi: shell: Fix arg count for regulatory domain
Regulatory domain supports both get and set, so, fix the argument
counts.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2023-12-18 17:46:12 +01:00
Bryan Zhu
67099d2bba timer: ambiq_stimer: fixing disabling tickless not working issue
In init function, start timer with period CYC_PER_TICK if tickless is
not enabled, This change is for fixing the issue that disabling
CONFIG_TICKLESS_KERNEL the OS tick is not work issue, this
causes the OS not starting scheduling correctly.

Signed-off-by: Bryan Zhu <bzhu@ambiq.com>
2023-12-18 15:03:35 +01:00
Murlidhar Roy
d11c65db07 CODEOWNERS: Update codeowners for SDHC Cadence
Updated codeowners for SDHC Cadence Driver files.

Signed-off-by: Murlidhar Roy <murlidhar.roy@intel.com>
2023-12-18 15:00:38 +01:00
Murlidhar Roy
1ddb931fa8 samples: subsys: fs: fs_sample: adding support for fat_fs app
adding support for fat_fs application agilex5 platform

Signed-off-by: Murlidhar Roy <murlidhar.roy@intel.com>
2023-12-18 15:00:38 +01:00
Murlidhar Roy
3426eab29c samples: subsys: shell: shell_module: adding support for shell app
adding support for shell application for agilex5 platform

Signed-off-by: Murlidhar Roy <murlidhar.roy@intel.com>
2023-12-18 15:00:38 +01:00
Murlidhar Roy
bc8e09d4ec boards: arm64: intel: intel_socfpga_agilex5_socdk: Enable sdmmc
Enable SDMMC and add MMC child node

Signed-off-by: Murlidhar Roy <murlidhar.roy@intel.com>
2023-12-18 15:00:38 +01:00
Murlidhar Roy
d16a80d2e8 dts: arm64: intel: add dts node for sdhc in agilex5
adds dts support for cdns sdhc driver bringup on agilex5

Signed-off-by: Murlidhar Roy <murlidhar.roy@intel.com>
2023-12-18 15:00:38 +01:00
Murlidhar Roy
eb006b992f drivers: sdhc: add cdns sdhc/combophy driver files
Add SDHC driver files with new SD framework changes
SDHC driver includes combophy configurations.

Added mmc binding yaml file

Signed-off-by: Murlidhar Roy <murlidhar.roy@intel.com>
2023-12-18 15:00:38 +01:00
Aaron Ye
9a642caebb west.yml: hal_ambiq: Add Bluetooth support.
Imported the original Cooper (Apollo4x BLE controller) device files
from AmbiqSuite SDK 4.4.0 and adapts them to support the new
implemented HCI driver for Apollo4 Blue Plus.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2023-12-18 14:54:53 +01:00
Aaron Ye
a95cbfb0dd boards: arm: apollo4p_blue_kxr_evb: Enable BT HCI.
The BT HCI uses internal IOM4 (SPI4) for communication bus.
Set the default configuration for BT based on the controller supported
capability and HCI driver dependency.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2023-12-18 14:54:53 +01:00
Aaron Ye
d385150bb0 drivers: bluetooth: Add Ambiq HCI driver for Apollo4 Blue Plus.
This commits create the dts binding for Ambiq BT HCI instance.
And create the SPI based common HCI driver for Ambiq Apollox
Blue SoC and the extended soc driver for HCI.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2023-12-18 14:54:53 +01:00
Fabio Baltieri
ecce235322 input: kbd_matrix: fix possible race condition
Fix a possible race condition in the keyboard matrix library where a key
would get pressed between the last read and reenabling the (edge
sensitive) interrupt and the even would be lost.

The window for this to happen is very narrow and had to artificially add
a sleep to reproduce it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-12-18 12:25:19 +01:00