1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 241141127SAlexandre Bellonimenuconfig ARCH_AT91 3ed08b63cSNicolas Ferre bool "AT91/Microchip SoCs" 45d6f5267SArnd Bergmann depends on (CPU_LITTLE_ENDIAN && (ARCH_MULTI_V4T || ARCH_MULTI_V5)) || \ 55d6f5267SArnd Bergmann ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M 6dbeb0c8eSArnd Bergmann select ARM_CPU_SUSPEND if PM && ARCH_MULTI_V7 7ef7eda2cSNicolas Ferre select COMMON_CLK_AT91 85c34a4e8SLinus Walleij select GPIOLIB 941141127SAlexandre Belloni select PINCTRL 1041141127SAlexandre Belloni select SOC_BUS 118f4b4794SLudovic Desroches 1241141127SAlexandre Belloniif ARCH_AT91 132d4c44e9SSzemző Andrásconfig SOC_SAMV7 142d4c44e9SSzemző András bool "SAM Cortex-M7 family" if ARM_SINGLE_ARMV7M 152d4c44e9SSzemző András select COMMON_CLK_AT91 162d4c44e9SSzemző András select PINCTRL_AT91 172d4c44e9SSzemző András help 18ed08b63cSNicolas Ferre Select this if you are using an SoC from Microchip's SAME7, SAMS7 or SAMV7 192d4c44e9SSzemző András families. 202d4c44e9SSzemző András 21c268a743SNicolas Ferreconfig SOC_SAMA5D2 22e3246542SMasahiro Yamada bool "SAMA5D2 family" 23e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 24c268a743SNicolas Ferre select SOC_SAMA5 25c268a743SNicolas Ferre select CACHE_L2X0 26c268a743SNicolas Ferre select HAVE_AT91_UTMI 27c268a743SNicolas Ferre select HAVE_AT91_USB_CLK 28c268a743SNicolas Ferre select HAVE_AT91_H32MX 29c268a743SNicolas Ferre select HAVE_AT91_GENERATED_CLK 300865805dSQuentin Schulz select HAVE_AT91_AUDIO_PLL 3196e4ea8cSCodrin Ciubotariu select HAVE_AT91_I2S_MUX_CLK 328423536fSLudovic Desroches select PINCTRL_AT91PIO4 33c268a743SNicolas Ferre help 34ed08b63cSNicolas Ferre Select this if ou are using one of Microchip's SAMA5D2 family SoC. 35c268a743SNicolas Ferre 368f4b4794SLudovic Desrochesconfig SOC_SAMA5D3 37e3246542SMasahiro Yamada bool "SAMA5D3 family" 38e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 398f4b4794SLudovic Desroches select SOC_SAMA5 40f090fb37SBoris BREZILLON select HAVE_AT91_UTMI 41a9c0688fSBoris BREZILLON select HAVE_AT91_SMD 42c84a61d8SBoris BREZILLON select HAVE_AT91_USB_CLK 438423536fSLudovic Desroches select PINCTRL_AT91 448f4b4794SLudovic Desroches help 45ed08b63cSNicolas Ferre Select this if you are using one of Microchip's SAMA5D3 family SoC. 467f457160SJosh Wu This support covers SAMA5D31, SAMA5D33, SAMA5D34, SAMA5D35, SAMA5D36. 472dc850b6SNicolas Ferre 482dc850b6SNicolas Ferreconfig SOC_SAMA5D4 49e3246542SMasahiro Yamada bool "SAMA5D4 family" 50e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 512dc850b6SNicolas Ferre select SOC_SAMA5 522dc850b6SNicolas Ferre select CACHE_L2X0 532dc850b6SNicolas Ferre select HAVE_AT91_UTMI 542dc850b6SNicolas Ferre select HAVE_AT91_SMD 552dc850b6SNicolas Ferre select HAVE_AT91_USB_CLK 562dc850b6SNicolas Ferre select HAVE_AT91_H32MX 578423536fSLudovic Desroches select PINCTRL_AT91 582dc850b6SNicolas Ferre help 59ed08b63cSNicolas Ferre Select this if you are using one of Microchip's SAMA5D4 family SoC. 608f4b4794SLudovic Desroches 61*452d18c7SRyan Wannerconfig SOC_SAMA7D65 62*452d18c7SRyan Wanner bool "SAMA7D65 family" 63*452d18c7SRyan Wanner depends on ARCH_MULTI_V7 64*452d18c7SRyan Wanner select HAVE_AT91_GENERATED_CLK 65*452d18c7SRyan Wanner select HAVE_AT91_SAM9X60_PLL 66*452d18c7SRyan Wanner select HAVE_AT91_USB_CLK 67*452d18c7SRyan Wanner select HAVE_AT91_UTMI 68*452d18c7SRyan Wanner select SOC_SAMA7 69*452d18c7SRyan Wanner help 70*452d18c7SRyan Wanner Select this if you are using one of Microchip's SAMA7D65 family SoC. 71*452d18c7SRyan Wanner 7256bc2965SEugen Hristevconfig SOC_SAMA7G5 7356bc2965SEugen Hristev bool "SAMA7G5 family" 7456bc2965SEugen Hristev depends on ARCH_MULTI_V7 7556bc2965SEugen Hristev select HAVE_AT91_GENERATED_CLK 7656bc2965SEugen Hristev select HAVE_AT91_SAM9X60_PLL 7756bc2965SEugen Hristev select HAVE_AT91_UTMI 78f8e0f301SClaudiu Beznea select PM_OPP 7956bc2965SEugen Hristev select SOC_SAMA7 8056bc2965SEugen Hristev help 8156bc2965SEugen Hristev Select this if you are using one of Microchip's SAMA7G5 family SoC. 8256bc2965SEugen Hristev 833efc4431SKavyasree Kotagiriconfig SOC_LAN966 843efc4431SKavyasree Kotagiri bool "ARMv7 based Microchip LAN966 SoC family" 853efc4431SKavyasree Kotagiri depends on ARCH_MULTI_V7 863efc4431SKavyasree Kotagiri select DW_APB_TIMER_OF 873efc4431SKavyasree Kotagiri select ARM_GIC 883efc4431SKavyasree Kotagiri select MEMORY 893efc4431SKavyasree Kotagiri help 903efc4431SKavyasree Kotagiri This enables support for ARMv7 based Microchip LAN966 SoC family. 913efc4431SKavyasree Kotagiri 921e3ce2b8SJean-Christophe PLAGNIOL-VILLARDconfig SOC_AT91RM9200 93e3246542SMasahiro Yamada bool "AT91RM9200" 94e3246542SMasahiro Yamada depends on ARCH_MULTI_V4T 95ef7eda2cSNicolas Ferre select ATMEL_AIC_IRQ 96b2f06274SAlexandre Belloni select ATMEL_PM if PM 97b53cdd03SAlexandre Belloni select ATMEL_ST 98c750815eSRussell King select CPU_ARM920T 99c84a61d8SBoris BREZILLON select HAVE_AT91_USB_CLK 1008423536fSLudovic Desroches select PINCTRL_AT91 10141141127SAlexandre Belloni select SOC_SAM_V4_V5 102896bc871SWenyou Yang select SRAM if PM 10341141127SAlexandre Belloni help 104ed08b63cSNicolas Ferre Select this if you are using Microchip's AT91RM9200 SoC. 1059d041268SAndrew Victor 1062b019a43SAlexandre Belloniconfig SOC_AT91SAM9 107e3246542SMasahiro Yamada bool "AT91SAM9" 108e3246542SMasahiro Yamada depends on ARCH_MULTI_V5 1092b019a43SAlexandre Belloni select ATMEL_AIC_IRQ 110b2f06274SAlexandre Belloni select ATMEL_PM if PM 1112b019a43SAlexandre Belloni select CPU_ARM926T 112a9c0688fSBoris BREZILLON select HAVE_AT91_SMD 113c84a61d8SBoris BREZILLON select HAVE_AT91_USB_CLK 1142b019a43SAlexandre Belloni select HAVE_AT91_UTMI 11574db4fb9SHong Xu select HAVE_FB_ATMEL 1162b019a43SAlexandre Belloni select MEMORY 1178423536fSLudovic Desroches select PINCTRL_AT91 11841141127SAlexandre Belloni select SOC_SAM_V4_V5 119896bc871SWenyou Yang select SRAM if PM 12074db4fb9SHong Xu help 121ed08b63cSNicolas Ferre Select this if you are using one of those Microchip SoC: 1222b019a43SAlexandre Belloni AT91SAM9260 1232b019a43SAlexandre Belloni AT91SAM9261 1242b019a43SAlexandre Belloni AT91SAM9263 1252b019a43SAlexandre Belloni AT91SAM9G15 1262b019a43SAlexandre Belloni AT91SAM9G20 1272b019a43SAlexandre Belloni AT91SAM9G25 1282b019a43SAlexandre Belloni AT91SAM9G35 1292b019a43SAlexandre Belloni AT91SAM9G45 1302b019a43SAlexandre Belloni AT91SAM9G46 1312b019a43SAlexandre Belloni AT91SAM9M10 1322b019a43SAlexandre Belloni AT91SAM9M11 1332b019a43SAlexandre Belloni AT91SAM9N12 1342b019a43SAlexandre Belloni AT91SAM9RL 1352b019a43SAlexandre Belloni AT91SAM9X25 1362b019a43SAlexandre Belloni AT91SAM9X35 1372b019a43SAlexandre Belloni AT91SAM9XE 1389f1ccefeSGreg Ungerer 139fe7ff55dSClaudiu Bezneaconfig SOC_SAM9X60 140fe7ff55dSClaudiu Beznea bool "SAM9X60" 141fe7ff55dSClaudiu Beznea depends on ARCH_MULTI_V5 142fe7ff55dSClaudiu Beznea select ATMEL_AIC5_IRQ 143fe7ff55dSClaudiu Beznea select ATMEL_PM if PM 144fe7ff55dSClaudiu Beznea select CPU_ARM926T 145fe7ff55dSClaudiu Beznea select HAVE_AT91_USB_CLK 146fe7ff55dSClaudiu Beznea select HAVE_AT91_GENERATED_CLK 147fe7ff55dSClaudiu Beznea select HAVE_AT91_SAM9X60_PLL 148fe7ff55dSClaudiu Beznea select MEMORY 149fe7ff55dSClaudiu Beznea select PINCTRL_AT91 150fe7ff55dSClaudiu Beznea select SOC_SAM_V4_V5 151fe7ff55dSClaudiu Beznea select SRAM if PM 152fe7ff55dSClaudiu Beznea help 153fe7ff55dSClaudiu Beznea Select this if you are using Microchip's SAM9X60 SoC 154fe7ff55dSClaudiu Beznea 1551a92f038SVarshini Rajendranconfig SOC_SAM9X7 1561a92f038SVarshini Rajendran bool "SAM9X7" 1571a92f038SVarshini Rajendran depends on ARCH_MULTI_V5 1581a92f038SVarshini Rajendran select ATMEL_AIC5_IRQ 1591a92f038SVarshini Rajendran select ATMEL_PM if PM 1601a92f038SVarshini Rajendran select CPU_ARM926T 1611a92f038SVarshini Rajendran select HAVE_AT91_USB_CLK 1621a92f038SVarshini Rajendran select HAVE_AT91_GENERATED_CLK 1631a92f038SVarshini Rajendran select HAVE_AT91_SAM9X60_PLL 1641a92f038SVarshini Rajendran select MEMORY 1651a92f038SVarshini Rajendran select PINCTRL_AT91 1661a92f038SVarshini Rajendran select SOC_SAM_V4_V5 1671a92f038SVarshini Rajendran select SRAM if PM 1681a92f038SVarshini Rajendran help 1691a92f038SVarshini Rajendran Select this if you are using Microchip's SAM9X7 SoC 1701a92f038SVarshini Rajendran 1717803dc86SAlexandre Bellonicomment "Clocksource driver selection" 1727803dc86SAlexandre Belloni 1737803dc86SAlexandre Belloniconfig ATMEL_CLOCKSOURCE_PIT 1747803dc86SAlexandre Belloni bool "Periodic Interval Timer (PIT) support" 1751a92f038SVarshini Rajendran depends on SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5 1767803dc86SAlexandre Belloni default SOC_AT91SAM9 || SOC_SAMA5 1777803dc86SAlexandre Belloni select ATMEL_PIT 1787803dc86SAlexandre Belloni help 1797803dc86SAlexandre Belloni Select this to get a clocksource based on the Atmel Periodic Interval 1807803dc86SAlexandre Belloni Timer. It has a relatively low resolution and the TC Block clocksource 1817803dc86SAlexandre Belloni should be preferred. 1827803dc86SAlexandre Belloni 1837803dc86SAlexandre Belloniconfig ATMEL_CLOCKSOURCE_TCB 1847803dc86SAlexandre Belloni bool "Timer Counter Blocks (TCB) support" 1851a92f038SVarshini Rajendran default SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5 1867803dc86SAlexandre Belloni select ATMEL_TCB_CLKSRC 1877803dc86SAlexandre Belloni help 1887803dc86SAlexandre Belloni Select this to get a high precision clocksource based on a 1897803dc86SAlexandre Belloni TC block with a 5+ MHz base clock rate. 1907803dc86SAlexandre Belloni On platforms with 16-bit counters, two timer channels are combined 1917803dc86SAlexandre Belloni to make a single 32-bit timer. 1927803dc86SAlexandre Belloni It can also be used as a clock event device supporting oneshot mode. 1937803dc86SAlexandre Belloni 194f611af4cSClaudiu Bezneaconfig MICROCHIP_CLOCKSOURCE_PIT64B 195f611af4cSClaudiu Beznea bool "64-bit Periodic Interval Timer (PIT64B) support" 1961a92f038SVarshini Rajendran default SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA7 197f611af4cSClaudiu Beznea select MICROCHIP_PIT64B 198f611af4cSClaudiu Beznea help 199f611af4cSClaudiu Beznea Select this to get a high resolution clockevent (SAM9X60) or 200f611af4cSClaudiu Beznea clocksource and clockevent (SAMA7G5) based on Microchip 64-bit 201f611af4cSClaudiu Beznea Periodic Interval Timer. 202f611af4cSClaudiu Beznea 20341141127SAlexandre Belloniconfig HAVE_AT91_UTMI 20441141127SAlexandre Belloni bool 20541141127SAlexandre Belloni 20641141127SAlexandre Belloniconfig HAVE_AT91_USB_CLK 20741141127SAlexandre Belloni bool 20841141127SAlexandre Belloni 20941141127SAlexandre Belloniconfig COMMON_CLK_AT91 21041141127SAlexandre Belloni bool 211863a81c3SBoris Brezillon select MFD_SYSCON 21241141127SAlexandre Belloni 21341141127SAlexandre Belloniconfig HAVE_AT91_SMD 21441141127SAlexandre Belloni bool 21541141127SAlexandre Belloni 21641141127SAlexandre Belloniconfig HAVE_AT91_H32MX 21741141127SAlexandre Belloni bool 21841141127SAlexandre Belloni 219df70aeefSNicolas Ferreconfig HAVE_AT91_GENERATED_CLK 220df70aeefSNicolas Ferre bool 221df70aeefSNicolas Ferre 2220865805dSQuentin Schulzconfig HAVE_AT91_AUDIO_PLL 2230865805dSQuentin Schulz bool 2240865805dSQuentin Schulz 22596e4ea8cSCodrin Ciubotariuconfig HAVE_AT91_I2S_MUX_CLK 22696e4ea8cSCodrin Ciubotariu bool 22796e4ea8cSCodrin Ciubotariu 228fc8c4c05SClaudiu Bezneaconfig HAVE_AT91_SAM9X60_PLL 229fc8c4c05SClaudiu Beznea bool 230fc8c4c05SClaudiu Beznea 23141141127SAlexandre Belloniconfig SOC_SAM_V4_V5 23241141127SAlexandre Belloni bool 23341141127SAlexandre Belloni 23441141127SAlexandre Belloniconfig SOC_SAM_V7 23541141127SAlexandre Belloni bool 23641141127SAlexandre Belloni 23741141127SAlexandre Belloniconfig SOC_SAMA5 23841141127SAlexandre Belloni bool 23941141127SAlexandre Belloni select ATMEL_AIC5_IRQ 240b2f06274SAlexandre Belloni select ATMEL_PM if PM 24141141127SAlexandre Belloni select MEMORY 24241141127SAlexandre Belloni select SOC_SAM_V7 24341141127SAlexandre Belloni select SRAM if PM 24441141127SAlexandre Belloni 245b2f06274SAlexandre Belloniconfig ATMEL_PM 24646a65cd3SYueHaibing bool 247f2f5cf78SClément Léger 248f2f5cf78SClément Légerconfig ATMEL_SECURE_PM 249f2f5cf78SClément Léger bool "Atmel Secure PM support" 250f2f5cf78SClément Léger depends on SOC_SAMA5D2 && ATMEL_PM 251f2f5cf78SClément Léger select ARM_PSCI 252f2f5cf78SClément Léger help 253f2f5cf78SClément Léger When running under a TEE, the suspend mode must be requested to be set 254f2f5cf78SClément Léger at TEE level. When enable, this option will use secure monitor calls 255f2f5cf78SClément Léger to set the suspend level. PSCI is then used to enter suspend. 256b2f06274SAlexandre Belloni 25756bc2965SEugen Hristevconfig SOC_SAMA7 25856bc2965SEugen Hristev bool 25956bc2965SEugen Hristev select ARM_GIC 26056bc2965SEugen Hristev select ATMEL_PM if PM 26156bc2965SEugen Hristev select MEMORY 26256bc2965SEugen Hristev select SOC_SAM_V7 26356bc2965SEugen Hristev select SRAM if PM 2649d041268SAndrew Victorendif 265