This adds the CC1312R SoC by Texas Instruments, this requires virtually
no changes since the cc13x2_c26x2 family of SoCs already implement
everything.
One thing not yet enabled is the IEEE 802.15.4g Sub-GHz
driver for this SoC because I can't download SmartRF Studio
due to access constraints from TI.
Signed-off-by: Jean-Pierre De Jesus DIAZ <me@jeandudey.tech>
Add DMA controller node to PSOC 4100SMAX device tree and introduce
the corresponding binding file `infineon,dmac.yaml`.
Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
This adds a new sensor driver (with custom channels) for the S3KM1110, a
24GHz mmWave radar sensor from Iclegend that uses a UART interface.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
A lot of BeagleBoard.org boards contain SOCs with co-processors such as
M4F in AM62x (PocketBeagle 2 [0]), R5s in AM67A (BeagleY-AI [1]). In such
targets, the application is normally loaded by the Linux host using
remoteproc.
There have been some out of tree patches to have micropython and other
Zephyr applications output to allow having a console without requiring
manual connections. This patch attempts to provide a more concrete and
upstream way to have that functionality.
The implementation uses existing rpmsg service subsystem.
Only implemented poll_out
Tested on PocketBeagle 2 M4F core.
[0]: https://docs.zephyrproject.org/latest/boards/beagle/pocketbeagle_2/doc/index.html
[1]: https://docs.zephyrproject.org/latest/boards/beagle/beagley_ai/doc/index.html
Signed-off-by: Ayush Singh <ayush@beagleboard.org>
Implements PWM driver support for the MAX22216/MAX22217 device.
This driver integrates with the Zephyr PWM API and uses the parent
MFD device to perform register access.
Signed-off-by: Cherrence Sarip <cherrence.sarip@analog.com>
Add MISC driver support for the MAX22216/MAX22217 device.
The driver provides miscellaneous functions and uses the parent
MFD device for register access.
Signed-off-by: John Erasmus Mari Geronimo <johnerasmusmari.geronimo@analog.com>
Signed-off-by: Cherrence Sarip <cherrence.sarip@analog.com>
1. enable nxp_t1s_phy support
2. add board variant frdm_mcxa577_mcxa577_t1s using nxp_t1s_phy
3. verified using samples/net/zperf
Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
1. adjusted enet_qos driver to cope with features missing on mcxa577
2. enabled enet_qos support
3. verified samples/net/zperf
Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
ltdc controller is also available in stm32l4r5 and stm32l4q5
so add it within stm32l4p5. It is not available in stm32l4r5
hence delete the node for this platform.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
As done with ST MCU boards, enable all gpios at SoC level to avoid
to handle them at board level.
Signed-off-by: Christophe Guibout <christophe.guibout@st.com>
Add the stm32mp21x initial device tree source based on stm32mp2_m33.dtsi
stm32mp21 series boards, covering non-secure configuration for zephyr on
the Cortex-M33 core.
These files provide the basic hardware description, including CPU
(Cortex-M33), memory, and RCC clock controller.
Also factorize stm32mp2_m33.dtsi where some definitions were only dedicated
to stm32mp25x, split IRQ number declaration which are different
between stm32mp25x and stm32mp21x.
Signed-off-by: Christophe Guibout <christophe.guibout@st.com>
Add devicetree nodes for the UDP peripheral on SAM4S and SAM4E SoCs,
along with the corresponding devicetree binding.
The UDP controller is present at:
- SAM4S: 0x40034000, IRQ 34
- SAM4E: 0x40084000, IRQ 35
Both variants share the same compatible "atmel,sam-udp" and feature:
- 8 hardware endpoints (EP0-EP7)
- 1 bidirectional endpoint (EP0 for control)
- 5 IN endpoints, 4 OUT endpoints
- Full-speed USB 2.0 (12 Mbps)
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
The bits cell for KINETIS_SIM_DMA_CLK and KINETIS_SIM_DMAMUX_CLK was
incorrectly set to 0x00000002 (a bitmask), but the driver passes this
value directly as the bit-shift index to CLK_GATE_DEFINE(). The HAL
defines:
kCLOCK_Dma0 = CLK_GATE_DEFINE(0x1040U, 1U)
kCLOCK_Dmamux0 = CLK_GATE_DEFINE(0x103CU, 1U)
Fix the bit index to 1 in both nxp_k6x.dtsi and nxp_k8x.dtsi.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Update the clock-cells documentation to describe the 32-bit `name` (id)
cell encoding produced by KINETIS_SIM_CLOCK(). The explicit offset and
bits cells are retained with a note that they exist for consumers such as
the ADC16 driver that read them directly rather than via clock_control.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Replace all raw 3-cell clock specifiers in nxp_mcxc_common.dtsi with
KINETIS_SIM_CLOCK() macro calls. CMP and VREF legacy alias specifiers
are replaced with their real SCGC4 gate addresses (bits 19 and 20);
DMA and DMAMUX are replaced with their SCGC7/SCGC6 gate addresses.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Replace all raw 3-cell <&sim KINETIS_SIM_FOO 0xOFFSET BIT> specifiers
with the new KINETIS_SIM_CLOCK() macro. The macro encodes gate offset,
gate bit, and clock name into the first (id) cell while keeping the
explicit offset/bits as the 2nd and 3rd cells for ADC16 and other
consumers that read them directly.
ENET and ENET_1588 legacy alias specifiers (which used invalid out-of-range
clock-name values) are replaced with their real SCGC2 gate register
addresses (offset 0x1028, bit 26).
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Split interrupt configuration from am64x_r5.dtsi into individual
R5F core files (am64x_r5f0_0.dtsi, am64x_r5f0_1.dtsi,
am64x_r5f1_0.dtsi, am64x_r5f1_1.dtsi) as each core uses
different mailbox channels and VIM interrupt line mappings.
Signed-off-by: Dave Joseph <d-joseph@ti.com>
Add interrupt-names property to binding to enable per-channel
interrupt lookup via DT_INST_IRQ_BY_NAME(). Each channel's
interrupt is identified by name: "rx_0", "rx_1", "rx_2", etc.
Signed-off-by: Dave Joseph <d-joseph@ti.com>
This adds initial support for the CH32V ethernet peripheral.
The driver supports both internal and external PHY configurations.
Signed-off-by: James Bennion-Pedley <james@bojit.org>
Use PSCI CPU suspend to implement CPU idle for Cortex-A55 Core on i.MX 93.
Signed-off-by: Chenhui Zhao <chenhui.zhao@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
For use in tests where the existing "vnd,dac" driver doesn't work as it
returns error codes for all API functions. The approach is mimicked from
the adc-emul driver.
Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
Instead of using MCOX specific check with STM32MP1 devices,
the dedicated enable bit is defined in device tree.
This breaks compatibility with old DT overlays for
STM32MP13 devices.
The new overlay should now have 2 clocks, where the 1st one
is the enable bit, e.g. like:
clocks = <&rcc MCO1CFGR_REG BIT(12)>, <&rcc ...>;
Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
The change introduces clock-names into the MCO device tree.
This shouldn't break compatibility with existing DT overlays.
It clarifies the clock configuration for devices
with dedicated enable bit for MCO.
Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
Adapt all Espressif SoC and driver code to the updated
hal_espressif module synced with IDF master branch.
Main changes:
- clock control: delegate peripheral clock gating to HAL
layer using new clock/reset APIs
- SPI/GDMA: adapt to restructured DMA HAL with new channel
allocation and configuration interfaces
- ethernet: add RMII clock configuration and PHY management
- GPIO: simplify using direct HAL function calls
- flash: adapt to updated SPI flash HAL interfaces
- linker scripts: update IRAM/DRAM mappings for new HAL
object files
- DTS: fix ESP32-S2 PSRAM dcache1 address to match actual
MMU mapping region (0x3f800000 DRAM1 instead of 0x3f500000
DPORT which lacks 8-bit access capability)
- west.yml: update hal_espressif revision
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Add Atmel SAM USBHS driver for SAM E70/S70/V70/V71 family. The driver
was tested using CDC-ACM and testusb samples.
Fixes: #74663
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
Rename microchip,aes-g1 binding file to match compatible, fixes a:
dts/bindings/crypto/microchip,aes-g1-crypto.yaml: bad file name for
compatible 'microchip,aes-g1'; this should be named
'microchip,aes-g1.yaml' instead
error on unrelated PRs.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The simulated flash driver incorrectly applied the no_explicit_erase
capability. It was overriding Kconfig settings with a missing Devicetree
property, which caused RAM-like configurations to wrongly report needing
explicit erases before writes.
This commit fixes the initialization macro to correctly check the DT
instance property no-explicit-erase, while properly falling back to the
global CONFIG_FLASH_SIMULATOR_EXPLICIT_ERASE Kconfig.
A new runtime test is also added to properly verify this capability.
Fixes#100352Fixes#100400
Signed-off-by: Seyoung Jeong <seyoungjeong@gmail.com>
We update MEC172x and MEC174x/5x/165x device tree I2C hardware
nodes with properties used by the updated I2C V2 driver. GIRQs
are an array of integers where each integer encodes the GIRQ
number and bit position of each interrupt source. The PCR property
is a single integer encoding the PCR register index and bit position.
Signed-off-by: Scott Worley <scott.worley@microchip.com>
We modified the Microchip XEC/MEC version 2 I2C byte mode driver
to work on v3.8 I2C hardware in MEC174x/5x/165x SoCs. The changes
are as follows:
1. Add a local header file containing register and bit field definitions
2. Use Zephyr inline register access functions (sys_read/write)
instead of CMSIS register structures.
3. Change DT bindings to require GPIO references for the SCL and SDA
pins. MEC172x will use GPIO driver to get line states. MEC174x/5x
have v3.8 I2C hardware with read-only live values of SCL/SDA pin
states in the bit-bang control register. The MEC172x SoC code to
read I2C GPIO's is no longer needed and is removed in a later
commit in this series.
4. Use WAIT_FOR macro in place of custom spin loops.
5. SonarQube code check recommendations except WAIT_FOR macro which is
based on a GNU compiler extension.
Signed-off-by: Scott Worley <scott.worley@microchip.com>
Allow providing an unlock configuration for unlocking the padcfg region as
part of the ti,control-module node.
Map the child pinctrl node using the `ranges` property to the base address
space.
Signed-off-by: Amneesh Singh <amneesh@ti.com>