mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-29 07:34:06 +08:00
91a55d4f69
Introduce the OLD_IRQ_AT91 Kconfig option to prepare migration to the new AIC driver. Select this option for all at91 SoCs and all available boards so that we can later move DT enabled boards to the new irq driver and keep the old implementation when legacy boards are selected. Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
257 lines
5.7 KiB
Plaintext
257 lines
5.7 KiB
Plaintext
if ARCH_AT91
|
|
|
|
config HAVE_AT91_UTMI
|
|
bool
|
|
|
|
config HAVE_AT91_USB_CLK
|
|
bool
|
|
|
|
config HAVE_AT91_DBGU0
|
|
bool
|
|
|
|
config HAVE_AT91_DBGU1
|
|
bool
|
|
|
|
config AT91_USE_OLD_CLK
|
|
bool
|
|
|
|
config AT91_PMC_UNIT
|
|
bool
|
|
default !ARCH_AT91X40
|
|
|
|
config COMMON_CLK_AT91
|
|
bool
|
|
default AT91_PMC_UNIT && USE_OF && !AT91_USE_OLD_CLK
|
|
select COMMON_CLK
|
|
|
|
config OLD_CLK_AT91
|
|
bool
|
|
default AT91_PMC_UNIT && AT91_USE_OLD_CLK
|
|
|
|
config OLD_IRQ_AT91
|
|
bool
|
|
select MULTI_IRQ_HANDLER
|
|
select SPARSE_IRQ
|
|
|
|
config AT91_SAM9_ALT_RESET
|
|
bool
|
|
default !ARCH_AT91X40
|
|
|
|
config AT91_SAM9G45_RESET
|
|
bool
|
|
default !ARCH_AT91X40
|
|
|
|
config AT91_SAM9_TIME
|
|
bool
|
|
|
|
config HAVE_AT91_SMD
|
|
bool
|
|
|
|
config SOC_AT91SAM9
|
|
bool
|
|
select AT91_SAM9_TIME
|
|
select CPU_ARM926T
|
|
select GENERIC_CLOCKEVENTS
|
|
|
|
config SOC_SAMA5
|
|
bool
|
|
select AT91_SAM9_TIME
|
|
select CPU_V7
|
|
select GENERIC_CLOCKEVENTS
|
|
select USE_OF
|
|
|
|
menu "Atmel AT91 System-on-Chip"
|
|
|
|
choice
|
|
|
|
prompt "Core type"
|
|
|
|
config ARCH_AT91X40
|
|
bool "ARM7 AT91X40"
|
|
depends on !MMU
|
|
select CPU_ARM7TDMI
|
|
select ARCH_USES_GETTIMEOFFSET
|
|
select OLD_IRQ_AT91
|
|
|
|
help
|
|
Select this if you are using one of Atmel's AT91X40 SoC.
|
|
|
|
config SOC_SAM_V4_V5
|
|
bool "ARM9 AT91SAM9/AT91RM9200"
|
|
help
|
|
Select this if you are using one of Atmel's AT91SAM9 or
|
|
AT91RM9200 SoC.
|
|
|
|
config SOC_SAM_V7
|
|
bool "Cortex A5"
|
|
help
|
|
Select this if you are using one of Atmel's SAMA5D3 SoC.
|
|
|
|
endchoice
|
|
|
|
comment "Atmel AT91 Processor"
|
|
|
|
if SOC_SAM_V7
|
|
config SOC_SAMA5D3
|
|
bool "SAMA5D3 family"
|
|
select SOC_SAMA5
|
|
select HAVE_FB_ATMEL
|
|
select HAVE_AT91_DBGU1
|
|
select HAVE_AT91_UTMI
|
|
select HAVE_AT91_SMD
|
|
select HAVE_AT91_USB_CLK
|
|
help
|
|
Select this if you are using one of Atmel's SAMA5D3 family SoC.
|
|
This support covers SAMA5D31, SAMA5D33, SAMA5D34, SAMA5D35, SAMA5D36.
|
|
endif
|
|
|
|
if SOC_SAM_V4_V5
|
|
config SOC_AT91RM9200
|
|
bool "AT91RM9200"
|
|
select CPU_ARM920T
|
|
select GENERIC_CLOCKEVENTS
|
|
select HAVE_AT91_DBGU0
|
|
select HAVE_AT91_USB_CLK
|
|
|
|
config SOC_AT91SAM9260
|
|
bool "AT91SAM9260, AT91SAM9XE or AT91SAM9G20"
|
|
select HAVE_AT91_DBGU0
|
|
select SOC_AT91SAM9
|
|
select HAVE_AT91_USB_CLK
|
|
help
|
|
Select this if you are using one of Atmel's AT91SAM9260, AT91SAM9XE
|
|
or AT91SAM9G20 SoC.
|
|
|
|
config SOC_AT91SAM9261
|
|
bool "AT91SAM9261 or AT91SAM9G10"
|
|
select HAVE_AT91_DBGU0
|
|
select HAVE_FB_ATMEL
|
|
select SOC_AT91SAM9
|
|
select HAVE_AT91_USB_CLK
|
|
help
|
|
Select this if you are using one of Atmel's AT91SAM9261 or AT91SAM9G10 SoC.
|
|
|
|
config SOC_AT91SAM9263
|
|
bool "AT91SAM9263"
|
|
select HAVE_AT91_DBGU1
|
|
select HAVE_FB_ATMEL
|
|
select SOC_AT91SAM9
|
|
select HAVE_AT91_USB_CLK
|
|
|
|
config SOC_AT91SAM9RL
|
|
bool "AT91SAM9RL"
|
|
select HAVE_AT91_DBGU0
|
|
select HAVE_FB_ATMEL
|
|
select SOC_AT91SAM9
|
|
select HAVE_AT91_UTMI
|
|
|
|
config SOC_AT91SAM9G45
|
|
bool "AT91SAM9G45 or AT91SAM9M10 families"
|
|
select HAVE_AT91_DBGU1
|
|
select HAVE_FB_ATMEL
|
|
select SOC_AT91SAM9
|
|
select HAVE_AT91_UTMI
|
|
select HAVE_AT91_USB_CLK
|
|
help
|
|
Select this if you are using one of Atmel's AT91SAM9G45 family SoC.
|
|
This support covers AT91SAM9G45, AT91SAM9G46, AT91SAM9M10 and AT91SAM9M11.
|
|
|
|
config SOC_AT91SAM9X5
|
|
bool "AT91SAM9x5 family"
|
|
select HAVE_AT91_DBGU0
|
|
select HAVE_FB_ATMEL
|
|
select SOC_AT91SAM9
|
|
select HAVE_AT91_UTMI
|
|
select HAVE_AT91_SMD
|
|
select HAVE_AT91_USB_CLK
|
|
help
|
|
Select this if you are using one of Atmel's AT91SAM9x5 family SoC.
|
|
This means that your SAM9 name finishes with a '5' (except if it is
|
|
AT91SAM9G45!).
|
|
This support covers AT91SAM9G15, AT91SAM9G25, AT91SAM9X25, AT91SAM9G35
|
|
and AT91SAM9X35.
|
|
|
|
config SOC_AT91SAM9N12
|
|
bool "AT91SAM9N12 family"
|
|
select HAVE_AT91_DBGU0
|
|
select HAVE_FB_ATMEL
|
|
select SOC_AT91SAM9
|
|
select HAVE_AT91_USB_CLK
|
|
help
|
|
Select this if you are using Atmel's AT91SAM9N12 SoC.
|
|
|
|
# ----------------------------------------------------------
|
|
endif # SOC_SAM_V4_V5
|
|
|
|
|
|
if SOC_SAM_V4_V5 || ARCH_AT91X40
|
|
source arch/arm/mach-at91/Kconfig.non_dt
|
|
endif
|
|
|
|
comment "Generic Board Type"
|
|
|
|
config MACH_AT91RM9200_DT
|
|
bool "Atmel AT91RM9200 Evaluation Kits with device-tree support"
|
|
depends on SOC_AT91RM9200
|
|
select OLD_IRQ_AT91
|
|
select USE_OF
|
|
help
|
|
Select this if you want to experiment device-tree with
|
|
an Atmel RM9200 Evaluation Kit.
|
|
|
|
config MACH_AT91SAM9_DT
|
|
bool "Atmel AT91SAM Evaluation Kits with device-tree support"
|
|
depends on SOC_AT91SAM9
|
|
select OLD_IRQ_AT91
|
|
select USE_OF
|
|
help
|
|
Select this if you want to experiment device-tree with
|
|
an Atmel Evaluation Kit.
|
|
|
|
config MACH_SAMA5_DT
|
|
bool "Atmel SAMA5 Evaluation Kits with device-tree support"
|
|
depends on SOC_SAMA5
|
|
select OLD_IRQ_AT91
|
|
select USE_OF
|
|
select PHYLIB if NETDEVICES
|
|
help
|
|
Select this if you want to experiment device-tree with
|
|
an Atmel Evaluation Kit.
|
|
|
|
# ----------------------------------------------------------
|
|
|
|
comment "AT91 Feature Selections"
|
|
|
|
config AT91_SLOW_CLOCK
|
|
bool "Suspend-to-RAM disables main oscillator"
|
|
depends on SUSPEND
|
|
help
|
|
Select this if you want Suspend-to-RAM to save the most power
|
|
possible (without powering off the CPU) by disabling the PLLs
|
|
and main oscillator so that only the 32 KiHz clock is available.
|
|
|
|
When only that slow-clock is available, some peripherals lose
|
|
functionality. Many can't issue wakeup events unless faster
|
|
clocks are available. Some lose their operating state and
|
|
need to be completely re-initialized.
|
|
|
|
config AT91_TIMER_HZ
|
|
int "Kernel HZ (jiffies per second)"
|
|
range 32 1024
|
|
depends on ARCH_AT91
|
|
default "128" if ARCH_AT91RM9200
|
|
default "100"
|
|
help
|
|
On AT91rm9200 chips where you're using a system clock derived
|
|
from the 32768 Hz hardware clock, this tick rate should divide
|
|
it exactly: use a power-of-two value, such as 128 or 256, to
|
|
reduce timing errors caused by rounding.
|
|
|
|
On AT91sam926x chips, or otherwise when using a higher precision
|
|
system clock (of at least several MHz), rounding is less of a
|
|
problem so it can be safer to use a decimal values like 100.
|
|
|
|
endmenu
|
|
|
|
endif
|