Commit graph

240 commits

Author SHA1 Message Date
Jaska Uimonen 09085ef63c dts: xtensa: intel: update cavs25 sram size
Cavs25 sram size should be 3MB instead of 2MB, thus update the correct
value.

Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
2023-06-16 05:46:37 -04:00
Jaroslaw Stelter 9c0dd7e3be intel_adsp: ace20_lnl: Change LNL core count to 5
The ACE 2.0 LNL platform has 5 HIFI4 cores. Change number
of cores to enable 5th core on the platform.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
2023-05-15 08:00:11 -04:00
Jaroslaw Stelter edaac6d8d2 ace20_lnl: dts: Add d-cache and i-cache line size
Added i-cache-line-size and d-cache-line-size values
to device tree for ace20_lnl platforms. These values
are used by sys_cache_instr_line_size_get and
sys_cache_data_line_size_get functions.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
2023-05-15 08:00:11 -04:00
Lucas Tamborrino a35dd4b926 drivers: dma: esp32s3: Add DMA support for esp32s3
Add GDMA support for esp32s3.
Remove suspend/resume since they are optional and do
the same as start/stop.
Fix possible null pointer derreference.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-05-10 10:15:05 +02:00
Sylvio Alves 4c66ac81fd soc: esp32s3: add usb serial dts interface
Enable ESP32-S3 usb-serial interface.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2023-05-09 14:31:23 +02:00
Iuliana Prodan b2f1f64f57 boards: xtensa: nxp_adsp_imx8m: Add UART support for the ADSP from i.MX8MP
Enable UART on the DSP from the i.MX8MP target:
- add corresponding nodes in dtsi and dts;
- create a dts overlay for uart;
- add a config fragment for uart and console configuration.

So, in order to compile an application and enable UART
a user must run west build using DTC_OVERLAY_FILE and CONF_FILE.

Here's an example for hello_world:
west build -p always -b nxp_adsp_imx8m samples/hello_world/
-DDTC_OVERLAY_FILE="boards/xtensa/nxp_adsp_imx8m/
nxp_adsp_imx8m_uart.overlay" -DCONF_FILE="boards/xtensa/nxp_adsp_imx8m/
nxp_adsp_imx8m_uart.conf"

For other applications, like SOF, where we don't need UART, we simply run:
west build -p always -b nxp_adsp_imx8m ../modules/audio/sof/ --
-DTOOLCHAIN=/opt/zephyr-sdk-0.15.2/xtensa-nxp_imx8m_adsp_zephyr-elf/
bin/xtensa-nxp_imx8m_adsp_zephyr-elf -DINIT_CONFIG=imx8m_defconfig

The nxp_adsp_imx8m is using the nxp_imx_iuart driver.
For now, is used in poll mode.
Next step is to enable the interrupt controller in
DSP and use the interrupt driver UART.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-08 13:06:12 -05:00
Tomasz Leman 9028ad5d71 drivers: gpdma: pm runtime works only on ace
CAVS platforms are not fully integrated with zephyr. Some of the
registers are still programed from SOF side. This feature can be enabled
for those platforms later when integration is fully done.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2023-04-25 16:19:45 +02:00
Benjamin Björnsson a43a43d4b0 dts: Add missing adc dt-bindings include
Add missing include of adc dt-bindings in top .dtsi
file containing an adc node.

Signed-off-by: Benjamin Björnsson <benjamin.bjornsson@gmail.com>
2023-04-20 10:48:33 +02:00
Sylvio Alves a6c8c6e546 soc: esp32s3: add Wi-Fi support
This adds Wi-Fi linker areas and also bring wi-Fi entry
into SoC device tree.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2023-04-19 17:11:58 +02:00
Kai Vehmanen 3702f35d40 Revert "dts: adsp: ace: Changed used watchdog device"
This reverts commit c558fd5323.

This change results in boot failures on ace15 platform.

Link: https://github.com/thesofproject/sof/issues/7433
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2023-04-18 18:28:45 -04:00
Jaroslaw Stelter b4497b5642 intel_adsp: ace20_lnl: Add HDA devices to devicetree
This patch adds HDA to device tree for LNL platforms.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-04-18 10:48:43 -04:00
Anas Nashif af78069782 intel_adsp: ace20_lnl: Add dma missing properties
Add dma properties to lnl in dt.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-04-18 10:48:43 -04:00
Anas Nashif 0507effd5b intel_adsp: ace20_lnl: Remove lps node
Remove lps node from DTS.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-04-18 10:48:43 -04:00
Jaroslaw Stelter 66c6b49f38 intel_adsp: ace20_lnl: Add I2S clock source dts
The I2CLCTL_MLCS setting was recently added to MTL
platform. LNL has these registers in separate space, therefore
new field is added to intel,ssp-dai.yaml and appropraite definitions
to LNL device tree.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
2023-04-18 10:48:18 -04:00
Jaroslaw Stelter 99d5d9aaa8 drivers: ssp: Repleace shim2 with hdamlssp
Repleace usage of shim2 device tree field with hdamlssp.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-04-18 10:48:18 -04:00
Jaroslaw Stelter 3c54d7efc4 intel_adsp: ace20_lnl: dmic: Add new dmic shims.
In ACE 2.0 platform (LNL) dmic got two new shim register ranges.
DMIC driver need to program them to configure the interface.
This patch adds new shims to device tree.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
2023-04-13 20:51:10 -04:00
Moritz Fischer 32bf596297 dts: xtensa: espressif: esp32s2: Add TWAI node
This adds the TWAI node to the ESP32S2 devicetree.

Signed-off-by: Moritz Fischer <moritzf@google.com>
2023-04-11 11:27:34 +02:00
Lucas Tamborrino 2c1da15e35 dts: esp32s3: add PCNT device
Add PCNT node device to esp32s3
Update PCNT binding to include esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-04-05 11:23:48 -05:00
Jaroslaw Stelter 391e88a332 intel_adsp: ace20_lnl: dts: Add clkctl definition
Add clkctl definition for Intel LNL ACE platform.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
2023-04-03 15:17:21 +02:00
Kumar Gala 5c76a8119c intel_adsp: ace20_lnl: Sort SoC nodes by address
Sort SoC nodes by address to make it easier to find them.  As part
of this also move the intel-sha node under SoC where it belongs.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-04-03 15:17:21 +02:00
Jaroslaw Stelter b8fb89dc27 intel_adsp: ace20_lnl: ssp: Add new ssp shims
In ACE 2.0 platform (LNL) ssp got new shim registers.
SSP driver need to program them to configure the interface.
This patch adds new shims to device tree.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
2023-04-03 15:17:21 +02:00
Kumar Gala ac10124665 intel_adsp: ace20_lnl: Move power domains under lps node.
As the power domain nodes don't represent something accessible via
a MMIO register move those under the lps node to address warnings
generated when building the DTS.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-04-03 15:17:21 +02:00
Jaroslaw Stelter e2881fe61a intel_adsp: ace20_lnl: add soc definitions for LNL platform.
LNL platform is ACE 2.0 series with changes in shim registers and HW
features. Initial definition replicates MTL as much as possible, however
it will vary after enabling LNL platform.

Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-04-03 15:17:21 +02:00
Jaroslaw Stelter f5728c298d intel_adsp: ace20_lnl: add initial ace 2.0 (LNL) board definition
This commit adds definition of ACE 2.0 Lunar Lake board.board.

Signed-off-by: Krzysztof Frydryk <Krzysztofx.Frydryk@intel.com>
Signed-off-by: Jaroslaw Stelter <Jaroslaw.Stelter@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-04-03 15:17:21 +02:00
Lucas Tamborrino 1b2ec541ce dts: esp32s3: add MCPWM device
Add MCPWM device node to esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-04-02 22:08:57 -04:00
Lucas Tamborrino ed0d242bb7 dts: esp32s3: add LEDC device
Add LEDC device for esp32s3
Update PWM LED binding
Remove invalid comment from driver source file

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-03-31 09:19:56 +02:00
Adrian Warecki c558fd5323 dts: adsp: ace: Changed used watchdog device
Changed the watchdog driver used by the ACE platform from
snps,designware-watchdog to intel,adsp-watchdog.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2023-03-29 09:45:49 -04:00
Jaska Uimonen 95168e6776 soc: intel_adsp: cavs: start using zephyr power management
Start using zephyr power management in cavs platform in a similar way
that is already done in ace. This commit only addresses the power off/on
sequence. Runtime power management is not implemented.

Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
2023-03-23 07:57:14 -04:00
Lucas Tamborrino 7486fe7a83 dts: esp32s3: add TRNG support
Add True Random Number Generator support on esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-03-23 09:40:50 +01:00
Felipe bd705e68b0 soc: xtensa: esp32: increase shared memory region
for esp32 and esp32_net because the default 2048
bytes are not sufficient for rpmsg usage.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2023-03-16 16:42:13 +01:00
Lucas Tamborrino fd2191b2b1 dts: esp32s3: Add wdt support
Add watchdog support for esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-03-15 09:11:42 +01:00
Lucas Tamborrino c530eca285 dts: esp32s3: Add timers support
Add timer support for esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-03-14 10:50:37 +01:00
Lucas Tamborrino fa358f9757 dts: esp32s3: Add SPI support
Add SPI support for esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-03-13 14:02:06 +01:00
Iuliana Prodan 9d5c21d580 dts: xtensa: nxp: remove unused include
Remove unused include file from dtsi.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-03-11 08:44:07 +02:00
Marc Herbert 68c1cafb41 intel_adsp: dts: ace: lower case 71C00 to fix DTC warning
Fixes the warning below. This commit does not change the firmware
binary. Thanks Kumar Gala for the suggestion.

  build-mtl/zephyr/zephyr.dts:279.42-285.5: Warning (simple_bus_reg):
  /soc/ace_comm_widget@71C00: simple-bus unit address format error,
  expected "71c00"

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2023-03-07 08:33:30 +01:00
Lucas Tamborrino ca0c46604f dts: esp32s3: add i2c support
Add i2c support for esp32s3

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-02-28 14:44:47 +01:00
Sylvio Alves bbd40b85c0 soc: esp32s3: add base source content
This brings esp32s3 linker, DTS and all
necessary files to allow the soc support.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2023-02-27 19:41:33 +01:00
Adrian Warecki 55be5d81f2 ace: dts: Add watchdog device to the device tree
Added watchdog devices to the device tree of mtl platform.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2023-02-19 20:42:52 -05:00
Felipe Neves 865f4e64b5 dts: xtensa: esp32: modify esp32 dts
To split ipm area into ipm memory and
general use shared memory.

Signed-off-by: Felipe Neves <felipe.neves@linaro.org>
2023-02-19 20:41:18 -05:00
Adrian Warecki 8794de2934 intel_adsp: soc: ace: Add communication widget driver
Intel DSP Communication Widget is a device for generic sideband
message transmit/receive between IPs in a SOC.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2023-01-18 10:47:21 +01:00
Jaska Uimonen a9b3d93550 intel_adsp: dai: Add support for ALH up to 16 nodes
ALH dts definitions need to have 16 nodes, thus add them to supported
platforms (cavs25 and ace15).

Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
2023-01-17 13:06:39 -05:00
Marek Matej 937ea00e7a drivers: adc: esp32: Add support for single-shot conversion
Allow single-shot adc conversion on all supported targets.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2022-12-23 23:45:05 +00:00
Tomasz Leman 73feb35e99 ace: dts: gpdma: add third controller
Meteorlake has three GPDMA controllers.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2022-12-21 10:11:41 +01:00
Jakub Dabek d76419973a devicetree: add virtual memory entry for intel platform
Add virtual memory entry in dt to use as virtual space
regions for aplication.
Add virtual memory definition in adsp_memory.h

Signed-off-by: Jakub Dabek <jakub.dabek@intel.com>
2022-12-20 07:03:55 -05:00
Serhiy Katsyuba 9cf89603df intel_adsp: dai: Add support for ALH streams 2 and 3
Adds two additional alh2 and alh3 "devices" to already defined
alh0 and alh1. This (seems) is a temporarily solution as
the hardware actually supports 16 streams and future update
to device tree is required.

Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2022-12-17 06:47:55 -05:00
Tomasz Leman d9432ebcb9 ace: dts: hda: add power domain
Assigning power domain to the HDA DMA.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2022-12-16 11:03:15 +00:00
Tomasz Leman ff01458111 ace: dts: gpdma: add power domain
Assigning power domain to the GP DMA.

NOTE: Only controllers 1 and 2 are under IO_0 domain, controller 0 is
      under HUB-ULP domain.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2022-12-15 19:17:21 +01:00
Marek Matej 45d55205db drivers: esp32: temp: CPU die temperature sensor
Support for the measuring the CPU die temperature
for the ESP32 targets S2,C3. The ESP32 support
was ommited due to lack of offset calibration.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2022-12-15 18:21:39 +01:00
Marek Matej f86a7d2c25 drivers: dac: esp32: Add support for DAC controller
Initial DAC driver for the ESP32/ESP32-S2 SOCs

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2022-12-13 16:29:38 +00:00
Kai Vehmanen 2dd4cbc755 dts: xtensa: intel: update cavs25_tgph to match cavs25
Add definitions for DMAs, Digital Audio Interfaces (DAIs) and
the necessary clocks to enable full use of audio peripherals
in the intel_adsp_cavs25_tgph boards.

Link: https://github.com/thesofproject/sof/issues/6710
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2022-12-07 10:36:34 -05:00