Commit Graph

74 Commits

Author SHA1 Message Date
Ioan Dragomir
92a11405f7 drivers: can: Add CAN support for max32662
Adapt MAX32690 driver to use Wrap_MXC_CAN_Init to handle differences
in the MSDK API (see analogdevicesinc/msdk#1306) between the
MAX32690 and MAX32662.

can_driver_api.timing_min required phase_seg1 >= 3 and phase_seg2 >= 2
when configuring CAN bit timing. Both microcontrollers covered by this
driver (MAX32662, MAX32690) support values down to 1 for both of these
timing parameters.

Refer to the docs for registers CAN_BUSTIM1, CANn_BUSTIM1.

Add a can0 node to the MAX32662 dtsi.

Signed-off-by: Ioan Dragomir <ioan.dragomir@analog.com>
2025-06-16 14:13:59 -04:00
Anıl Kara
b38a1f4a89 dts: arm: adi: Add CAN peripheral to max32690
This commit defines CAN peripheral as a devicetree node.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-16 14:13:59 -04:00
Furkan Akkiz
e5fb161de4 dts: arm: adi: Add MAX32657 DMA instances and binding file
Add DMA0 and DMA1 nodes to MAX32657 dtsi file and add binding file
for DMA slots.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-10 08:47:42 +02:00
Furkan Akkiz
01d6e15551 dts: arm: adi: Add MAX32657 WDT instances
Add WDT0 node to MAX32657 dtsi files.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-05 15:03:11 -05:00
Tahsin Mutlugun
7ad934701f dts: common: adi: Update default power state durations
Set new default minimum sleep amount for each power state. Users can
still update these values depending on their needs.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
2415dcc5ea dts: arm: adi: Add power management states in devicetree
This commits added power management states in max32xxx MCUs
Common states added in max32xxx.dtsi file and additional ones
added in max32655.dtsi

Exit-latency-us value set as per of device datasheet spec.
The typical value is mentioned in DS is multiplied with 2.
For more information please take a look:
https://www.analog.com/en/products/max32655.html

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
497f2ce835 dts: adi: Enable low-power pin modes
low-power pins can be used while device power management enabled.
Usage

...
&uart0a_rx_p0_0 {
  pinmux = <MAX32_PINMUX(0, 0, AF1)>;
  low-power-enable;
  /* Add low power mode flags, like: */
  output-high;
  bias-disable;
  ...
};
...

Default gpio sleep states are defined, user shall update sleep_pins
configuration as per of their needs

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
367cd74ed1 soc: Add the MAX32657 NS Peripheral
This commit adds MAX32657 Non-Secure peripheral support

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Furkan Akkiz
40a60a6ac2 dts: arm: adi: max32650: Add more peripheral nodes
This commit adds following updates to MAX32650 SoC:
- Divide SRAM to sections according to UG.
- Add DMA and SPI nodes
- Add WDT nodes without adding clock property
- Include dma binding to SoC dts file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
Signed-off-by: Burak Babaoglu <burak.babaoglu@analog.com>
2025-05-14 11:03:22 +01:00
Pete Johanson
99171c39d6 dts: common: adi: Corrected HPB alt func
Correctly use AF3 for HPB on P1.12 for MAX32690.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-05-02 15:20:55 +02:00
Pete Johanson
f4b52a43d9 drivers: memc: Add MAX32 HyperBus driver
Add memc driver for the MAX32 HyperBus peripheral, supporting HyperRAM
and Xccela PSRAM memory devices.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-05-02 15:20:55 +02:00
Sadik Ozer
cb93c201d5 dts: arm: adi: Enable TRNG
Add MAX32657 TRNG device node
Add TRNG in MAX32657 board file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-04-28 16:40:10 +02:00
Sadik Ozer
f9ce25fd05 soc: Add the MAX32657 SoC
MAX32657 is Cortex-M33 based Analog Devices MCU.
It supports ARM TrustZone security model.
There will be two boards of this MCU Secure and Non-Secure

This commit defines Secure version of peripherals.

Basic feature of MAX32657 device:
- Core is Cortex-M33
- 50MHz IPO clock
- There are 54 interrupt vectors
- 1MB flash & 256 SRAM
- MAX32657 has:
   - 1 x UART
   - 1 x I2C/I3C
   - 1 x SPI
   - 6 x TIMER
   - 1 x RTC
   - 1 x WDT
   - 1 x TRNG

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-04-28 16:40:10 +02:00
Furkan Akkiz
59f709273d dts: arm: adi: Add USBHS instance to MAX32690
Insert USBHS instance to MAX32690 devicetree.
Add bindings for MAX32 UDC driver.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-04-09 19:31:24 +02:00
Sadik Ozer
4901863742 dts: arm: adi: Fix MAX32670 I2C clock index
I2C2 clock index is 21 for MAX32670

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-02-21 18:02:41 +00:00
Mert Ekren
1fb3bd7986 dts: arm: adi: Update MAX32675 I2C2 instance clock bit
I2C2 GCR bit is different than common defined in MAX32xxx.dtsi

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-02-21 18:02:41 +00:00
Furkan Akkiz
4bcd2dbb37 dts: arm: adi: Delete I2C2 node for MAX32662
Deleted I2C2 node which is not supported by MAX32662.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-02-21 18:02:41 +00:00
Mert Ekren
6280d2acbf dts: Add MAX32666 SDHC nodes and bindings
Include sdhc0 in MAX32666 devicetree and add devicetree bindings for
MAX32 SDHC driver

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-02-14 20:20:03 +01:00
Yasin Ustuner
c62606daa7 include: zephyr: dt-bindings: Add MAX32660 DMA binding
This commit adds binding file for DMA slots

Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
2025-02-14 17:04:57 +01:00
Yasin Ustuner
de9f48ee33 soc: adi: Add MAX32660 SoC
This commit adds MAX32660 SoC
and dts files.

Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
2025-02-14 17:04:57 +01:00
Burak Babaoglu
1db033dd62 soc: adi: Add the MAX32650 SoC
This commit adds MAX32650 Kconfig
and dts files for basic port.

Signed-off-by: Burak Babaoglu <Burak.Babaoglu@analog.com>
Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
2025-02-14 13:35:26 +01:00
Yasin Ustuner
efe94a9a29 dts: arm: adi: Fix MAX32XXX RTC addresses
This commit fixes RTC addresses of MAX32662,
MAX32670, MAX32672 and MAX32675 boards.

Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
2025-01-29 09:29:04 +01:00
Tahsin Mutlugun
acd5d08c98 dts: arm: adi: max32655: Move include line for DMA bindings
To prevent duplication of include lines across tests, move DMA binding
include into max32655.dtsi.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-01-24 11:00:27 +01:00
Yasin Ustuner
ab278c2419 soc: adi: Add the MAX78000 SoC
This commit adds MAX78000 SoC
and dts files.

Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
2025-01-22 20:47:21 +01:00
Furkan Akkiz
f42568ca7b soc: adi: Add the MAX78002 SoC
Added MAX78002 Kconfig and dts files.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-11-16 15:09:57 -05:00
Okan Sahin
b4d1076ab2 dts: arm: adi: Add counter RTC instance to MAX32xxx
This commit instantiates counter RTC on MAX32xxx MCUs.

Co-authored-by: Sadik Ozer <sadik.ozer@analog.com>
Signed-off-by: Okan Sahin <okan.sahin@analog.com>
2024-11-16 15:08:43 -05:00
Mert Vatansever
321f735f9f dts: arm: adi: Add binding file for MAX32xxx flash driver
This commit adds flash controller driver binding file.

Signed-off-by: Mert Vatansever <mert.vatansever@analog.com>
2024-10-22 20:39:41 +02:00
Sadik Ozer
6623e834db dts: Add 1-Wire inside device tree
Add 1-Wire register file
Some MAX32 MCUs has 1-Wire peripheral some one not
So that added in device related dtsi file.

Has 1-W       Not have 1-W
MAX32655        MAX32662
MAX32666        MAX32670
MAX32680        MAX32672
MAX32690        MAX32675

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-10-18 14:16:14 +02:00
Sadik Ozer
98f19592f1 dts: arm: adi: Add MAX32662 missing pin definitions
This commit add missing pins that not defined in pinctrl file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-10-03 17:07:25 +01:00
Sadik Ozer
0dcadcd99f dts: arm: adi: Add PWM sub node to MAX32xxx
Add pwm yml file.
TIMER0/1/2/3 support pwm, LPTIMER0/1 not.
LPTIMER0/1 provide 16bits out that not meet pwm requirement.

Co-authored-by: Mert Vatansever <mert.vatansever@analog.com>
Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-23 18:12:00 -04:00
Sadik Ozer
80b7fe6595 dts: arm: adi: Add timer counter instance for MAX32662
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
2d361871d2 dts: arm: adi: Add timer counter instance for MAX32680
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
346796101a dts: arm: adi: Add timer counter instance for MAX32672
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
16edf9ab84 dts: arm: adi: Add timer counter instance to MAX32670
Add counter subnode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
351d0e2dab dts: arm: adi: Add timer counter instance for MAX32690
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
083249d9e5 dts: arm: adi: Add MAX32655 timer counter instances
Add counter subnode in timer nodes.
Add coutner .yaml file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Furkan Akkiz
6ebd8dac08 dts: arm: adi: Add MAX32662 timer instances
Add timer instances of MAX32662 to dtsi file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
9fd88ec9b0 dts: arm: adi: Add MAX32666 timer instance
This commits add MAX32666 timer instances in dts file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Mert Ekren
3b39d2c548 dts: arm: adi: Add MAX32675 extra timer instance
Add MAX32675 lptimer0/1 instance in dtsi file

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2024-09-11 20:18:33 -04:00
Tahsin Mutlugun
5fd68929ff dts: arm: adi: max32680 Add extra timer peripherals
Add timer 4 and 5 into devicetree.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2024-09-11 20:18:33 -04:00
Furkan Akkiz
5d699a6b28 dts: arm: adi: Add MAX32672 timer instances
Add time instances of MAX32672 to dts file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-09-11 20:18:33 -04:00
Mert Ekren
334599b472 dts: arm: adi: Add MAX32670 timer instances
Add timer instances of MAX32670 to dts file

Co-authored-by: Sadik Ozer <sadik.ozer@analog.com>
Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2024-09-11 20:18:33 -04:00
Furkan Akkiz
4e30a64ff0 dts: arm: adi: Add MAX32690 timer instances
Add timer instances of MAX32690 to dts file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
166ac001bf dts: arm: adi: Add Timer instance to MAX32655
Add timer instance in device tree
Add timer yaml file

Timer0/1/2/3 are common for MAX32xxx MCUs
MAX32655 has additional Timer4/5 which are low power timers

Co-authored-by: Mert Vatansever <mert.vatansever@analog.com>
Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Furkan Akkiz
d7f92d0869 dts: arm: adi: Add ADC inside devicetree
Add ADC peripheral definiton inside device tree file
Add devicetree bindings for MAX32 ADC driver.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
Co-authored-by: Okan Sahin <okan.sahin@analog.com>
2024-09-04 21:28:08 +02:00
Mert Ekren
3002840e03 dts: arm: adi: Add MAX32675 DMA instance and binding file
Add DMA0 node to MAX32675 dtsi file and add binding file for DMA slots.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2024-08-15 14:50:13 -04:00
Mert Ekren
68d09a88f9 dts: Add MAX32666 DMA nodes and bindings
Insert dma0 in MAX32666 devicetree and add devicetree bindings
for MAX32 DMA driver.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2024-08-15 14:50:13 -04:00
Furkan Akkiz
32bf51b438 dts: arm: adi: Add MAX32662 DMA instance and binding file
Add DMA0 node to MAX32662 dtsi file and add binding file for DMA slots.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-08-15 14:50:13 -04:00
Furkan Akkiz
bc754b4f4e dts: arm: adi: Add MAX32662 SPI instances
Add SPI instances of MAX32662 to dtsi file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-08-14 14:45:27 -04:00
Sadik Ozer
10475e4b11 dts: arm: adi: Add MAX32666 SPI instances
This commits add MAX32666 SPI instances in dts file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-08-14 14:45:27 -04:00