The clock related functions are obviously only required if
silabs,siwx91x-clock is compiled.
This commit highlights some inconsistencies in clock management. They will
be addressed later.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Macro QSPI_ROMDRIVER_PRESENT allow to use the ROM version of rsi_qspi.c
(and save a bit of flash). This flag is used by the upstream Wiseconnect
SDK.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Macro RNG_ROMDRIVER_PRESENT allow to use the ROM version of rsi_rng.c (and
save a bit of flash). This flag is used by the upstream Wiseconnect SDK.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
File sl_si91x_driver_gpio.c is only required by silabs,siwx91x-gpio.
As for sl_si91x_peripheral_gpio.c, it used by silabs,siwx91x-gpio and
silabs,siwx91x-pinctrl.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
We try to keep this file more or less alphabetically ordered (except big
drivers: NWP, WIFI and PM).
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Since commit 2113d56c68 ("soc: silabs: Fix SL_CODE_CLASSIFY conflict"),
there are no more text_application_ram or .cc_text sections.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Normally, SL_CODE_CLASSIFY() renames the symbols. SL_CODE_COMPONENT_* is
here to provide the prefix the user want to use for a specific component.
However, since SLI_CODE_CLASSIFICATION_DISABLE is set, SL_CODE_CLASSIFY()
is a no-op and SL_CODE_COMPONENT_* are useless.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Include directives in hal_silabs only specify the header filename without
specifying any subdirectory. They rely to a bunch -I directives to find
the correct paths.
In addition, the hal_silabs sources tends to include header from the other
subdirectory in an anarchic way. These header are generally only required
to compile functions that are finally unused by Zephyr drivers.
There has been some tentative to conditionally include the external
headers. However, it broke the code compilation and prevent the use of
IS_ENABLE() (so #define has to be widely used leading to real mess). It is
cleaner to just add all the included paths to the compiler command line.
A few private headers path are still declared per components.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Since commit edbd4186 ("wiseconnect: Patch for sli_si91x_clock_manager.c")
in hal_silabs repository, a few files became useless.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
`_DIR' suffix is superfluous in the CMakeLists.txt. In addition, COMMON_DIR
is rarely used and not descriptive enough.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
ADC_CONTEXT_USES_KERNEL_TIMER is required for ADC_CONTEXT_INIT_TIMER().
However, it should be defined in the Zephry driver, not in the Wiseconnect
integration.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
When SAP runs on hostapd, the HE (11ax) capability should be determined
based on hw_mode->he_capab, which reflects the Wi-Fi FW capability.
Using conf->ieee80211ax is incorrect because it only represents the
default value derived from build-time configuration macros, and does not
accurately represent real hardware capabilities.
Same change is also needed for VHT and HT check.
Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
- add SDHC driver code to support both SDMMC and SDIO fucntion
- add SDHC dts node and Kconfig
- add clock configuration for SDHC
Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
Add initial support for the PSOC 4100S Max series, starting
with the CY8C4149AZI-S598 (100-TQFP package) used on the
CY8CKIT-041S-MAX development board.
The infrastructure supports adding additional part numbers
in the future as needed.
Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
In case DPP reconfiguration test, if the dpp_akm has psk,
it will set WPA_KEY_MGMT_PSK | WPA_KEY_MGMT_PSK_SHA256 |
WPA_KEY_MGMT_FT_PSK to key_mgmt, then wifi status shows
security as "Unknown".
Signed-off-by: Gang Li <gang.li_1@nxp.com>
Add new APIs to set operating mode 11n, 11ac and 11ax for SoftAP.
Currently, the 11n, 11ac and 11ax are enabled by default. Theses APIs
can be used to configure operating modes enable/disable for SoftAP.
Signed-off-by: Hui Bai <hui.bai@nxp.com>
Move the multicore middleware to the new mcux-sdk-ng integration from
hal_nxp, instead of using the legacy integration method.
This will allow for easier integration of future releases.
Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
Implement power management with IDLE, STOP, PSTOP1, and PSTOP2 modes.
- Add power state definitions with timing parameters
- Implement pm_state_set() with proper SLEEPDEEP handling
- Add XIP-safe WFI execution from RAM
- Enable SMC driver and power mode protection
- Remove forced timer Kconfig defaults
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Fixes the Kconfig name of this so that it matches the value from
soc.yml, this has not been deprecated because this SoC is a virtual
SoC used only with the boards in zephyr meaning it should not cause
any breakage of out-of-tree boards
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
The format currently expected by devices and sample display
application for BGR_565 is actually RGB_565 format with bytes
swapped (not B / R swapped). That is:
PIXEL_FORMAT_RGB_565:
* @code{.unparsed}
* 7......0 15.....8
* | gggBbbbb RrrrrGgg | ...
* @endcode
current PIXEL_FORMAT_BGR_565:
* @code{.unparsed}
* 7......0 15.....8
* | RrrrrGgg gggBbbbb | ...
* @endcode
This is explained in both st7796s display driver but also is
what is generated by the sample display application. As a video
format (ex: V4L2), such format is not mentioned as BGR (for
which R and B are swapped) but RGB_565X.
Within the whole Zephyr tree, rename the curremt BGR_565 format
into RGB_565X in order to emphasis that this is a byte swapped
format rather than a B/G component swapped format.
This also correct the description of the format in display.h
file, which wasn't correct based on what was being used by
display driver or sample display app.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Add stub implementations for all remaining smtc_modem_hal functions
required by LoRa Basics Modem. These functions are not yet implemented
but provide the necessary symbols for linking.
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
Add the initial smtc_modem_hal implementation for Zephyr that provides the
hardware abstraction layer required by LoRa Basics Modem.
To fully port the LoRa Basic Modem library to Zephyr we need to port and
adapt three parts (see [0]):
1. Radio Driver HAL
2. RAL BSP
3. LoRa Basics Modem HAL
Right now the Radio Driver HAL and the RAL BSP are correctly implemented by
the lbm_sx126x drivers, this patchset is taking care of the initial work of
porting and adapting also the LoRa Basics Modem HAL.
The LBM library provides a porting tool [1] that (quoting from [2]) "[...]
provides a automatic suite of tests that will help user ensures that lora
basics modem mcu and radio HAL functions are implemented in a good way
(SPI, radio_irq, time, timer, random, radio config, sleep and low power)"
This patchset is taking care of making the porting tool a first class test
suite for Zephyr implementing the needed HAL functions.
[0] https://github.com/Lora-net/SWL2001/blob/master/lbm_lib/PORTING_GUIDE.md
[1] https://github.com/Lora-net/SWL2001/blob/master/lbm_examples/main_examples/main_porting_tests.c
[2] https://github.com/Lora-net/SWL2001/blob/master/lbm_examples/README.md
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
A set of preliminary (but harmless) changes to prepare for adding the HAL
implementation.
- Rename CMake variables for clarity and consistency, adding an 'LBM_LIB_'
prefix when the path is a library / module path.
- Change zephyr_library_include_directories to zephyr_include_directories
for the RAL/RALF includes, since these headers may be needed outside the
library itself.
- Make lbm_common.h available to code outside the driver directory.
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
Move and rename the region Kconfig symbols from LORAMAC_REGION_* to
LORAWAN_REGION_* to make them backend-agnostic.
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
Move the connectivity framework to the new mcux-sdk-ng integration from
hal_nxp, instead of using the legacy integration method.
This will allow for easier integration of future releases.
Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
Since the latest hal_renesas has updated the I2C Controller config
to build the IIC Controller source. Without this update, many
current PRs on mainstream which has the update for hal_renesas
revision will fail.
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
This commit adds initial support for non secure nRF7120 targets in
zephyr.
There are important limitations, such as:
- The hardware Crypto accelerator is not supported and thus the non
secure target is NOT secure for production applications in upstream
Zephyr.
- The BL2 is not supported, so no DFU is supported with this support
Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
The DMA_MCUX_EDMA_V5 configuration option has been removed and replaced
with DMA_MCUX_EDMA_V4, as both versions share the same register layout
and can use the same driver implementation.
Key changes:
- Remove CONFIG_DMA_MCUX_EDMA_V5 Kconfig option
- Replace DMA_MCUX_EDMA_V5 conditionals with DMA_MCUX_EDMA_V4
- Remove DMAx_Type typedef, use DMA_Type directly
- Update EDMA_HW_TCD macros for V4 to use HAL-provided accessor macros
- Add DMA_MCUX_EDMA_DMAMUX Kconfig option to control DMAMUX support
based on device tree property
- Update device tree binding to add has-dmamux property
- Update HAL driver selection to use DMA_MCUX_EDMA_DMAMUX instead of
DMA_MCUX_EDMA for DMAMUX component
- Add SOC_SERIES_MCXE31X to DMA_MCUX_TEST_SLOT_START configuration
- Calculate DMA_TCD_ALIGN_SIZE from edma_tcd_t structure size
Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
Rename the lora_basics_modem backend directory to lora-basics-modem
for consistency with the module naming convention.
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
Replace some manually-defined DT_COMPAT_<> Kconfig macro variables with
their automatically generated counterparts. In most cases, this is
straightforward as the manually defined macro is named identically to the
one generated by the build system.
Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>