Commit Graph

79 Commits

Author SHA1 Message Date
Johan Hedberg
44e0f5fee3 Bluetooth: controller: Update to new HCI driver API
Update the native controller to the new HCI driver API. The devicetree
node is placed under existing `radio` nodes, which seemed like the most
intuitive option.

Signed-off-by: Johan Hedberg <johan.hedberg@gmail.com>
2024-06-11 19:42:49 -04:00
Karol Lasończyk
15fa37d356 dts: Update SAADC compatible and expand nRF54H20 dtsi
Adds full description of the adc node and support for memory regions.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2024-06-11 11:37:59 +01:00
Grzegorz Swiderski
742c728c7e dts: nordic: Add RESETINFO
Add devicetree nodes for the Reset Information registers on nRF54H20,
along with a new binding.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-06-06 10:03:15 +02:00
Gerard Marull-Paretas
8f27e49495 dts: common: nordic: nrf54h20: define can120
Define CAN120 instance.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-05-30 05:20:50 -07:00
Gerard Marull-Paretas
8e46f3c656 dts: common: nordic: nrf54h20: add CANPLL
Define CANPLL, an AUXPLL IP instance used by the CAN IP. PLL settings
are hardcoded in SoC files, as this PLL should not be configured by the
application. It is meant to always run at 80 MHz.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-05-29 08:30:42 -07:00
Gerard Marull-Paretas
b88a1f744a dts: common: nordic: nrf54h20: define hfxo
Define HFXO (High Frequency Crystal Oscillator). This clock is managed
by system controller, from an application point of view it is a fixed
clock.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-05-29 08:30:42 -07:00
Sebastian Bøe
90332b9a0b dts: nordic: 54l: Change the peripheral address map for ns
Define peripherals with the 0x4000_0000 address range when building
for non-secure.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2024-05-24 18:00:47 -04:00
Sebastian Bøe
2c19d3ea92 dts: nordic: 54l: Don't define UICR for the non-secure domain
Don't define UICR for the non-secure domain as it is hardware fixed to
secure.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2024-05-24 18:00:47 -04:00
Sebastian Bøe
50aaaa30c2 dts: nordic: 54l: Don't define wdt30 for the non-secure domain
Don't define wdt30 for the non-secure domain as it is hardware fixed
to secure.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2024-05-24 18:00:47 -04:00
Tomasz Chyrowicz
7d23bd2859 boards: nrf54h20dk: Add SUIT storage definition
Add a definition of SUIT storage, so there will be a common source of
the SUIT storage location for both SDFW and scripts generating SUIT
storage areas, assigned to local domains.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2024-05-24 07:49:42 -04:00
Andrzej Głąbek
fa86c518f6 dts: nordic: nrf54h20: Fix exmif node definition
Remove the "snps,designware-spi" compatible from the EXMIF node in
nRF54H20i, as the spi_dw driver cannot be used for this peripheral
without Nordic-specific modifications that are not present upstream.
An attempt to do so (just setting CONFIG_SPI=y will cause that,
as the driver initialization function will be executed then) results
in a bus fault.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-05-17 14:41:20 -05:00
Johann Fischer
c00071574a dts: nordic: update USBHS node
Add "nordic,nrf-usbhs" vendor compatible and new required properties.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2024-05-17 14:05:08 +01:00
Andrzej Głąbek
41786a6477 drivers: sensor: Add driver for nRF temperature sensor accessed via nrfs
Add driver, together with the corresponding dts binding and node in
the nRF54H20 SoC definiton, for the nRF temperature sensor that cannot
be accessed directly but only through nRF Services (nrfs) layer.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-05-15 09:25:30 +01:00
Jędrzej Ciupis
5df6f99c40 dts: common: nordic: add ieee802154 node to nrf54h20 cpuapp
This commit adds an ieee802154 node to the list of nRF54H20 application
core's peripherals. While it does not translate directly into a physical
RADIO peripheral, it represents the capability to use the ieee802154
radio indirectly through cpurad.

Signed-off-by: Jędrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
2024-05-13 10:21:08 +02:00
Grzegorz Swiderski
97a83ef8a7 dt-bindings: misc: Add nRF54H20 Domain IDs and Owner IDs
Move the Domain IDs from `nrf54h20.dtsi` into its own header file.
Additionally, include another header with Owner IDs.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-05-13 10:36:37 +03:00
Sebastian Głąb
2f17c46fb1 drivers: wdt: nrf: Add WDT instances that exist in nrf54h20
Add WDT instances no. 010, 011, 131, 132.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2024-05-09 15:44:40 +02:00
Alberto Escolar Piedras
0ecfac663d dts: nordic nrf-timer: Expose max frequency as DT property
The counter driver needs to know what is the maximum
counting frequency of each timer peripheral.
Let's add it to its DT.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-05-08 15:58:16 -04:00
Rafał Kuźnia
4d30ccb878 dts: nordic: add EXMIF peripheral description to nRF54H20
Added EXMIF peripheral DTS description and bindings.
The peripheral operates as an SPI device.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2024-05-07 09:52:53 +01:00
Grzegorz Swiderski
a0df4272ac dts: broadcom: Move viper-common.dtsi to dts/common
Squash the two copies of this file found in `dts/arm` and `dts/arm64`.
Their contents were identical up to devicetree property ordering.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-04-25 09:46:25 -04:00
Jakub Zymelka
5e4cb886f4 dts: nordic: Change IRQ number for GPIOTE instances for nRF54L15
Adjusting the interrupt numbers for individual cores
to match the definitions in nrfx.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2024-04-25 12:43:58 +00:00
Håkon Amundsen
5895be5438 dts: nordic: add USBHS node for nrf54h20
Add missing USBHS node to list of global peripherals.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2024-04-25 11:05:41 +00:00
Grzegorz Swiderski
163cacbe4b dts: nordic: nrf54h20: Add SysCtrl VEVIF node
Add a VEVIF node to be used for communicating with SysCtrl (cpusys).
This is the only part of the SysCtrl VPR exposed to local domains.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-04-17 14:36:12 +02:00
Jakub Zymelka
bce52c8057 dts: add nRF54L15 FLPR core
Add nRF54L15 FLPR core support.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2024-04-16 18:36:58 +01:00
Krzysztof Chruściński
8acc6a961a dts: common: nordic: nrf54: Add rx-delay property to SPI
Add rx-delay property to all SPI nodes.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-04-11 14:30:41 +02:00
Nikodem Kastelik
0401d063fa dts: nordic: add PWM instances for nRF54 Series
Add definitions of PWM peripheral instances so it can be utilized
on nRF54H20 and nRF54L15 devices.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2024-04-09 11:05:46 +02:00
Gerard Marull-Paretas
17ed60f0b5 dts: nordic: nrf54h20: add ccm030
Add node for CCM030 instance (AES CCM mode encryption).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-04-05 13:19:21 +02:00
Andrzej Głąbek
a8bb9fd1c1 dts: Remove support for nRF54H20 EngA
This was a preview revision of the SoC that will no longer
be supported.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-18 19:11:36 +00:00
Andrzej Głąbek
029081a3f7 dts: nordic: Add initial support for nRF54H20
Add definition of the nRF54H20 SoC with its Application, Radio,
and Peripheral Processor (PPR) cores and an initial set of
peripherals.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-18 19:11:36 +00:00
Andrzej Głąbek
fd9d482e9d dts: nordic: Add missing ECB020 node in nRF54H20 EngA
This is a follow-up to commit 4db40601dd.

There are two ECB instances in nRF54H20 and the above commit added
only one of them.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-12 14:27:16 +00:00
Andrzej Głąbek
796d09d2a6 dts: nordic: Add DPPIC and IPCT nodes to nRF54H20 EngA
And add the corresponding bindings.

Move alse the already existing bindings for nrf-dppic, nrf-ppi,
and nrf-ipc so they are located together with the new ones and
in more appropriate folders (DPPIC and PPI peripherals are not
related to ARM, and IPC is for sending and receiving events,
not messages, so ipm/ does not seem to be the best fit for it).

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-03-12 14:27:16 +00:00
Grzegorz Swiderski
beab89d6e8 dts: nordic: nrf54h20_enga: Add erase-block-size to mram1x
The MRAM has no concept of erase blocks or pages, so this is treated as
driver configuration.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-08 09:36:04 +01:00
Gerard Marull-Paretas
dec5ab382f dts: nordic: nrf54h20_enga: add BELLBOARD nodes
Add nodes for APP/RAD BELLBOARD peripherals.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas
b823bacecb dts: nordic: nrf54h20_enga: add PPR VEVIF nodes
Add a new nodes for PPR's VEVIF. In app cores, VEVIF registers are part
of the VPR peripheral, so it is exposed as a child node (since it
requires its own properties, eg #mbox-cells). In VPR, it's a CPU child
since it's not a memory-mapped peripheral, but used with CSRs.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-05 16:50:36 +00:00
Gerard Marull-Paretas
30c77786e5 dts: nordic: nrf54h20_enga: add WDT nodes
Add nodes for WDT (Watchdog Timer).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
4db40601dd dts: nordic: nrf54h20_enga: add ECB node
Add node for ECB (AES electronic codebook mode encryption).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
d33e5fc7af dts: nordic: nrf54h20_enga: add RADIO node
Add node for the RADIO.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
bc53031824 dts: nordic: nrf54h20_enga: add EGU node
Add node for EGU (Event Generator Unit).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
9c6f47d786 dts: nordic: nrf54h20_enga: add COMP node
Add node for COMP (comparator).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
f1a352d00f dts: nordic: nrf54h20_enga: add TEMP node
Add nodes for the TEMP (temperature sensor) peripheral.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
735ee4c83a dts: nordic: nrf54h20_enga: add NFCT node
Add node for the NFCT (Near Field Connect Tag) peripheral.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
720719cf80 dts: nordic: nrf54h20_enga: add QDEC nodes
Add nodes for QDEC (Quadrature Decoder).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
010519c8e3 dts: nordic: nrf54h20_enga: add TWIM nodes
Add nodes for I2C/TWIM.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
e5ef767ab2 dts: nordic: nrf54h20_enga: add SPIM nodes
Add SPIM (SPI with EasyDMA) nodes.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
35fecb731a dts: nordic: nrf54h20_enga: add RTC nodes
Add RTC (Real Time Counter) node.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
083bf7e549 dts: nordic: nrf54h20_enga: add TIMER nodes
Add nodes for TIMER peripherals (Timer/Counter).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
5adbac51ab dts: nordic: nrf54h20_enga: add missing UARTE nodes
Add missing UARTE nodes.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Gerard Marull-Paretas
04025d87db dts: nordic: nrf54h20_enga: current-speed needs to be set by boards
This is a setting that depends on the board or application, so it should
not be part of SoC definition files.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-02-27 12:36:54 +01:00
Andrzej Głąbek
1606f65972 dts: nordic: Include input-event-codes.h from nrf_common.dtsi
... so that there is no need to include that header individually
for every added board based on an nRF SoC.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-02-02 16:40:11 +01:00
Andrzej Głąbek
50d56c9503 dts: Add initial support for nRF54H20 EngA SoC
Add definition of the nRF54H20 SoC revision EngA with its Application,
Radio, and Peripheral Processor (PPR) cores and basic peripherals:
GRTC, GPIOs, GPIOTE, and UARTs.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-02-02 16:40:11 +01:00
Grzegorz Swiderski
3cfa2296a6 dts: Move nrf_common.dtsi to the common directory
... so that it can be included by ARM and RISC-V cores. For the same
reason, SysTick can no longer be disabled in this common file.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-02-02 16:40:11 +01:00