# SPDX-License-Identifier: GPL-2.0-only menuconfig ARCH_AT91 bool "AT91/Microchip SoCs" depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M select ARM_CPU_SUSPEND if PM && ARCH_MULTI_V7 select COMMON_CLK_AT91 select GPIOLIB select PINCTRL select SOC_BUS if ARCH_AT91 config SOC_SAMV7 bool "SAM Cortex-M7 family" if ARM_SINGLE_ARMV7M select COMMON_CLK_AT91 select PINCTRL_AT91 help Select this if you are using an SoC from Microchip's SAME7, SAMS7 or SAMV7 families. config SOC_SAMA5D2 bool "SAMA5D2 family" depends on ARCH_MULTI_V7 select SOC_SAMA5 select CACHE_L2X0 select HAVE_AT91_UTMI select HAVE_AT91_USB_CLK select HAVE_AT91_H32MX select HAVE_AT91_GENERATED_CLK select HAVE_AT91_AUDIO_PLL select HAVE_AT91_I2S_MUX_CLK select PINCTRL_AT91PIO4 help Select this if ou are using one of Microchip's SAMA5D2 family SoC. config SOC_SAMA5D3 bool "SAMA5D3 family" depends on ARCH_MULTI_V7 select SOC_SAMA5 select HAVE_AT91_UTMI select HAVE_AT91_SMD select HAVE_AT91_USB_CLK select PINCTRL_AT91 help Select this if you are using one of Microchip's SAMA5D3 family SoC. This support covers SAMA5D31, SAMA5D33, SAMA5D34, SAMA5D35, SAMA5D36. config SOC_SAMA5D4 bool "SAMA5D4 family" depends on ARCH_MULTI_V7 select SOC_SAMA5 select CACHE_L2X0 select HAVE_AT91_UTMI select HAVE_AT91_SMD select HAVE_AT91_USB_CLK select HAVE_AT91_H32MX select PINCTRL_AT91 help Select this if you are using one of Microchip's SAMA5D4 family SoC. config SOC_SAMA7G5 bool "SAMA7G5 family" depends on ARCH_MULTI_V7 select HAVE_AT91_GENERATED_CLK select HAVE_AT91_SAM9X60_PLL select HAVE_AT91_UTMI select PM_OPP select SOC_SAMA7 help Select this if you are using one of Microchip's SAMA7G5 family SoC. config SOC_LAN966 bool "ARMv7 based Microchip LAN966 SoC family" depends on ARCH_MULTI_V7 select DW_APB_TIMER_OF select ARM_GIC select MEMORY help This enables support for ARMv7 based Microchip LAN966 SoC family. config SOC_AT91RM9200 bool "AT91RM9200" depends on ARCH_MULTI_V4T select ATMEL_AIC_IRQ select ATMEL_PM if PM select ATMEL_ST select CPU_ARM920T select HAVE_AT91_USB_CLK select PINCTRL_AT91 select SOC_SAM_V4_V5 select SRAM if PM help Select this if you are using Microchip's AT91RM9200 SoC. config SOC_AT91SAM9 bool "AT91SAM9" depends on ARCH_MULTI_V5 select ATMEL_AIC_IRQ select ATMEL_PM if PM select ATMEL_SDRAMC select CPU_ARM926T select HAVE_AT91_SMD select HAVE_AT91_USB_CLK select HAVE_AT91_UTMI select HAVE_FB_ATMEL select MEMORY select PINCTRL_AT91 select SOC_SAM_V4_V5 select SRAM if PM help Select this if you are using one of those Microchip SoC: AT91SAM9260 AT91SAM9261 AT91SAM9263 AT91SAM9G15 AT91SAM9G20 AT91SAM9G25 AT91SAM9G35 AT91SAM9G45 AT91SAM9G46 AT91SAM9M10 AT91SAM9M11 AT91SAM9N12 AT91SAM9RL AT91SAM9X25 AT91SAM9X35 AT91SAM9XE config SOC_SAM9X60 bool "SAM9X60" depends on ARCH_MULTI_V5 select ATMEL_AIC5_IRQ select ATMEL_PM if PM select ATMEL_SDRAMC select CPU_ARM926T select HAVE_AT91_USB_CLK select HAVE_AT91_GENERATED_CLK select HAVE_AT91_SAM9X60_PLL select MEMORY select PINCTRL_AT91 select SOC_SAM_V4_V5 select SRAM if PM help Select this if you are using Microchip's SAM9X60 SoC comment "Clocksource driver selection" config ATMEL_CLOCKSOURCE_PIT bool "Periodic Interval Timer (PIT) support" depends on SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAMA5 default SOC_AT91SAM9 || SOC_SAMA5 select ATMEL_PIT help Select this to get a clocksource based on the Atmel Periodic Interval Timer. It has a relatively low resolution and the TC Block clocksource should be preferred. config ATMEL_CLOCKSOURCE_TCB bool "Timer Counter Blocks (TCB) support" default SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60 || SOC_SAMA5 select ATMEL_TCB_CLKSRC help Select this to get a high precision clocksource based on a TC block with a 5+ MHz base clock rate. On platforms with 16-bit counters, two timer channels are combined to make a single 32-bit timer. It can also be used as a clock event device supporting oneshot mode. config MICROCHIP_CLOCKSOURCE_PIT64B bool "64-bit Periodic Interval Timer (PIT64B) support" default SOC_SAM9X60 || SOC_SAMA7 select MICROCHIP_PIT64B help Select this to get a high resolution clockevent (SAM9X60) or clocksource and clockevent (SAMA7G5) based on Microchip 64-bit Periodic Interval Timer. config HAVE_AT91_UTMI bool config HAVE_AT91_USB_CLK bool config COMMON_CLK_AT91 bool select MFD_SYSCON config HAVE_AT91_SMD bool config HAVE_AT91_H32MX bool config HAVE_AT91_GENERATED_CLK bool config HAVE_AT91_AUDIO_PLL bool config HAVE_AT91_I2S_MUX_CLK bool config HAVE_AT91_SAM9X60_PLL bool config SOC_SAM_V4_V5 bool config SOC_SAM_V7 bool config SOC_SAMA5 bool select ATMEL_AIC5_IRQ select ATMEL_PM if PM select ATMEL_SDRAMC select MEMORY select SOC_SAM_V7 select SRAM if PM config ATMEL_PM bool config SOC_SAMA7 bool select ARM_GIC select ATMEL_PM if PM select ATMEL_SDRAMC select MEMORY select SOC_SAM_V7 select SRAM if PM endif