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 6156bc2965SEugen Hristevconfig SOC_SAMA7G5 6256bc2965SEugen Hristev bool "SAMA7G5 family" 6356bc2965SEugen Hristev depends on ARCH_MULTI_V7 6456bc2965SEugen Hristev select HAVE_AT91_GENERATED_CLK 6556bc2965SEugen Hristev select HAVE_AT91_SAM9X60_PLL 6656bc2965SEugen Hristev select HAVE_AT91_UTMI 67f8e0f301SClaudiu Beznea select PM_OPP 6856bc2965SEugen Hristev select SOC_SAMA7 6956bc2965SEugen Hristev help 7056bc2965SEugen Hristev Select this if you are using one of Microchip's SAMA7G5 family SoC. 7156bc2965SEugen Hristev 723efc4431SKavyasree Kotagiriconfig SOC_LAN966 733efc4431SKavyasree Kotagiri bool "ARMv7 based Microchip LAN966 SoC family" 743efc4431SKavyasree Kotagiri depends on ARCH_MULTI_V7 753efc4431SKavyasree Kotagiri select DW_APB_TIMER_OF 763efc4431SKavyasree Kotagiri select ARM_GIC 773efc4431SKavyasree Kotagiri select MEMORY 783efc4431SKavyasree Kotagiri help 793efc4431SKavyasree Kotagiri This enables support for ARMv7 based Microchip LAN966 SoC family. 803efc4431SKavyasree Kotagiri 811e3ce2b8SJean-Christophe PLAGNIOL-VILLARDconfig SOC_AT91RM9200 82e3246542SMasahiro Yamada bool "AT91RM9200" 83e3246542SMasahiro Yamada depends on ARCH_MULTI_V4T 84ef7eda2cSNicolas Ferre select ATMEL_AIC_IRQ 85b2f06274SAlexandre Belloni select ATMEL_PM if PM 86b53cdd03SAlexandre Belloni select ATMEL_ST 87c750815eSRussell King select CPU_ARM920T 88c84a61d8SBoris BREZILLON select HAVE_AT91_USB_CLK 898423536fSLudovic Desroches select PINCTRL_AT91 9041141127SAlexandre Belloni select SOC_SAM_V4_V5 91896bc871SWenyou Yang select SRAM if PM 9241141127SAlexandre Belloni help 93ed08b63cSNicolas Ferre Select this if you are using Microchip's AT91RM9200 SoC. 949d041268SAndrew Victor 952b019a43SAlexandre Belloniconfig SOC_AT91SAM9 96e3246542SMasahiro Yamada bool "AT91SAM9" 97e3246542SMasahiro Yamada depends on ARCH_MULTI_V5 982b019a43SAlexandre Belloni select ATMEL_AIC_IRQ 99b2f06274SAlexandre Belloni select ATMEL_PM if PM 1002b019a43SAlexandre Belloni select CPU_ARM926T 101a9c0688fSBoris BREZILLON select HAVE_AT91_SMD 102c84a61d8SBoris BREZILLON select HAVE_AT91_USB_CLK 1032b019a43SAlexandre Belloni select HAVE_AT91_UTMI 10474db4fb9SHong Xu select HAVE_FB_ATMEL 1052b019a43SAlexandre Belloni select MEMORY 1068423536fSLudovic Desroches select PINCTRL_AT91 10741141127SAlexandre Belloni select SOC_SAM_V4_V5 108896bc871SWenyou Yang select SRAM if PM 10974db4fb9SHong Xu help 110ed08b63cSNicolas Ferre Select this if you are using one of those Microchip SoC: 1112b019a43SAlexandre Belloni AT91SAM9260 1122b019a43SAlexandre Belloni AT91SAM9261 1132b019a43SAlexandre Belloni AT91SAM9263 1142b019a43SAlexandre Belloni AT91SAM9G15 1152b019a43SAlexandre Belloni AT91SAM9G20 1162b019a43SAlexandre Belloni AT91SAM9G25 1172b019a43SAlexandre Belloni AT91SAM9G35 1182b019a43SAlexandre Belloni AT91SAM9G45 1192b019a43SAlexandre Belloni AT91SAM9G46 1202b019a43SAlexandre Belloni AT91SAM9M10 1212b019a43SAlexandre Belloni AT91SAM9M11 1222b019a43SAlexandre Belloni AT91SAM9N12 1232b019a43SAlexandre Belloni AT91SAM9RL 1242b019a43SAlexandre Belloni AT91SAM9X25 1252b019a43SAlexandre Belloni AT91SAM9X35 1262b019a43SAlexandre Belloni AT91SAM9XE 1279f1ccefeSGreg Ungerer 128fe7ff55dSClaudiu Bezneaconfig SOC_SAM9X60 129fe7ff55dSClaudiu Beznea bool "SAM9X60" 130fe7ff55dSClaudiu Beznea depends on ARCH_MULTI_V5 131fe7ff55dSClaudiu Beznea select ATMEL_AIC5_IRQ 132fe7ff55dSClaudiu Beznea select ATMEL_PM if PM 133fe7ff55dSClaudiu Beznea select CPU_ARM926T 134fe7ff55dSClaudiu Beznea select HAVE_AT91_USB_CLK 135fe7ff55dSClaudiu Beznea select HAVE_AT91_GENERATED_CLK 136fe7ff55dSClaudiu Beznea select HAVE_AT91_SAM9X60_PLL 137fe7ff55dSClaudiu Beznea select MEMORY 138fe7ff55dSClaudiu Beznea select PINCTRL_AT91 139fe7ff55dSClaudiu Beznea select SOC_SAM_V4_V5 140fe7ff55dSClaudiu Beznea select SRAM if PM 141fe7ff55dSClaudiu Beznea help 142fe7ff55dSClaudiu Beznea Select this if you are using Microchip's SAM9X60 SoC 143fe7ff55dSClaudiu Beznea 144*1a92f038SVarshini Rajendranconfig SOC_SAM9X7 145*1a92f038SVarshini Rajendran bool "SAM9X7" 146*1a92f038SVarshini Rajendran depends on ARCH_MULTI_V5 147*1a92f038SVarshini Rajendran select ATMEL_AIC5_IRQ 148*1a92f038SVarshini Rajendran select ATMEL_PM if PM 149*1a92f038SVarshini Rajendran select CPU_ARM926T 150*1a92f038SVarshini Rajendran select HAVE_AT91_USB_CLK 151*1a92f038SVarshini Rajendran select HAVE_AT91_GENERATED_CLK 152*1a92f038SVarshini Rajendran select HAVE_AT91_SAM9X60_PLL 153*1a92f038SVarshini Rajendran select MEMORY 154*1a92f038SVarshini Rajendran select PINCTRL_AT91 155*1a92f038SVarshini Rajendran select SOC_SAM_V4_V5 156*1a92f038SVarshini Rajendran select SRAM if PM 157*1a92f038SVarshini Rajendran help 158*1a92f038SVarshini Rajendran Select this if you are using Microchip's SAM9X7 SoC 159*1a92f038SVarshini Rajendran 1607803dc86SAlexandre Bellonicomment "Clocksource driver selection" 1617803dc86SAlexandre Belloni 1627803dc86SAlexandre Belloniconfig ATMEL_CLOCKSOURCE_PIT 1637803dc86SAlexandre Belloni bool "Periodic Interval Timer (PIT) support" 164*1a92f038SVarshini Rajendran depends on SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5 1657803dc86SAlexandre Belloni default SOC_AT91SAM9 || SOC_SAMA5 1667803dc86SAlexandre Belloni select ATMEL_PIT 1677803dc86SAlexandre Belloni help 1687803dc86SAlexandre Belloni Select this to get a clocksource based on the Atmel Periodic Interval 1697803dc86SAlexandre Belloni Timer. It has a relatively low resolution and the TC Block clocksource 1707803dc86SAlexandre Belloni should be preferred. 1717803dc86SAlexandre Belloni 1727803dc86SAlexandre Belloniconfig ATMEL_CLOCKSOURCE_TCB 1737803dc86SAlexandre Belloni bool "Timer Counter Blocks (TCB) support" 174*1a92f038SVarshini Rajendran default SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA5 1757803dc86SAlexandre Belloni select ATMEL_TCB_CLKSRC 1767803dc86SAlexandre Belloni help 1777803dc86SAlexandre Belloni Select this to get a high precision clocksource based on a 1787803dc86SAlexandre Belloni TC block with a 5+ MHz base clock rate. 1797803dc86SAlexandre Belloni On platforms with 16-bit counters, two timer channels are combined 1807803dc86SAlexandre Belloni to make a single 32-bit timer. 1817803dc86SAlexandre Belloni It can also be used as a clock event device supporting oneshot mode. 1827803dc86SAlexandre Belloni 183f611af4cSClaudiu Bezneaconfig MICROCHIP_CLOCKSOURCE_PIT64B 184f611af4cSClaudiu Beznea bool "64-bit Periodic Interval Timer (PIT64B) support" 185*1a92f038SVarshini Rajendran default SOC_SAM9X60 || SOC_SAM9X7 || SOC_SAMA7 186f611af4cSClaudiu Beznea select MICROCHIP_PIT64B 187f611af4cSClaudiu Beznea help 188f611af4cSClaudiu Beznea Select this to get a high resolution clockevent (SAM9X60) or 189f611af4cSClaudiu Beznea clocksource and clockevent (SAMA7G5) based on Microchip 64-bit 190f611af4cSClaudiu Beznea Periodic Interval Timer. 191f611af4cSClaudiu Beznea 19241141127SAlexandre Belloniconfig HAVE_AT91_UTMI 19341141127SAlexandre Belloni bool 19441141127SAlexandre Belloni 19541141127SAlexandre Belloniconfig HAVE_AT91_USB_CLK 19641141127SAlexandre Belloni bool 19741141127SAlexandre Belloni 19841141127SAlexandre Belloniconfig COMMON_CLK_AT91 19941141127SAlexandre Belloni bool 200863a81c3SBoris Brezillon select MFD_SYSCON 20141141127SAlexandre Belloni 20241141127SAlexandre Belloniconfig HAVE_AT91_SMD 20341141127SAlexandre Belloni bool 20441141127SAlexandre Belloni 20541141127SAlexandre Belloniconfig HAVE_AT91_H32MX 20641141127SAlexandre Belloni bool 20741141127SAlexandre Belloni 208df70aeefSNicolas Ferreconfig HAVE_AT91_GENERATED_CLK 209df70aeefSNicolas Ferre bool 210df70aeefSNicolas Ferre 2110865805dSQuentin Schulzconfig HAVE_AT91_AUDIO_PLL 2120865805dSQuentin Schulz bool 2130865805dSQuentin Schulz 21496e4ea8cSCodrin Ciubotariuconfig HAVE_AT91_I2S_MUX_CLK 21596e4ea8cSCodrin Ciubotariu bool 21696e4ea8cSCodrin Ciubotariu 217fc8c4c05SClaudiu Bezneaconfig HAVE_AT91_SAM9X60_PLL 218fc8c4c05SClaudiu Beznea bool 219fc8c4c05SClaudiu Beznea 22041141127SAlexandre Belloniconfig SOC_SAM_V4_V5 22141141127SAlexandre Belloni bool 22241141127SAlexandre Belloni 22341141127SAlexandre Belloniconfig SOC_SAM_V7 22441141127SAlexandre Belloni bool 22541141127SAlexandre Belloni 22641141127SAlexandre Belloniconfig SOC_SAMA5 22741141127SAlexandre Belloni bool 22841141127SAlexandre Belloni select ATMEL_AIC5_IRQ 229b2f06274SAlexandre Belloni select ATMEL_PM if PM 23041141127SAlexandre Belloni select MEMORY 23141141127SAlexandre Belloni select SOC_SAM_V7 23241141127SAlexandre Belloni select SRAM if PM 23341141127SAlexandre Belloni 234b2f06274SAlexandre Belloniconfig ATMEL_PM 23546a65cd3SYueHaibing bool 236f2f5cf78SClément Léger 237f2f5cf78SClément Légerconfig ATMEL_SECURE_PM 238f2f5cf78SClément Léger bool "Atmel Secure PM support" 239f2f5cf78SClément Léger depends on SOC_SAMA5D2 && ATMEL_PM 240f2f5cf78SClément Léger select ARM_PSCI 241f2f5cf78SClément Léger help 242f2f5cf78SClément Léger When running under a TEE, the suspend mode must be requested to be set 243f2f5cf78SClément Léger at TEE level. When enable, this option will use secure monitor calls 244f2f5cf78SClément Léger to set the suspend level. PSCI is then used to enter suspend. 245b2f06274SAlexandre Belloni 24656bc2965SEugen Hristevconfig SOC_SAMA7 24756bc2965SEugen Hristev bool 24856bc2965SEugen Hristev select ARM_GIC 24956bc2965SEugen Hristev select ATMEL_PM if PM 25056bc2965SEugen Hristev select MEMORY 25156bc2965SEugen Hristev select SOC_SAM_V7 25256bc2965SEugen Hristev select SRAM if PM 2539d041268SAndrew Victorendif 254