forked from Minki/linux
8b45bc892e
These are changes for drivers that are intimately tied to some SoC and for some reason could not get merged through the respective subsystem maintainer tree. Most of the new code is for the Keystone Navigator driver, which is new base support that is going to be needed for their hardware accelerated network driver and other units. Most of the commits are for moving old code around from at91 and omap for things that are done in device drivers nowadays. - at91: move reset, poweroff, memory and clocksource code into drivers directories - socfpga: add edac driver (through arm-soc, as requested by Boris) - omap: move omap-intc code to drivers/irqchip - sunxi: added an RTC driver for sun6i - omap: mailbox driver related changes - keystone: support for the "Navigator" component - versatile: new reboot, led and soc drivers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQIVAwUAVDWWQGCrR//JCVInAQKX7Q//bDkoseKCZsGaXN7vfQ2YhT3SAc52mROV YQKdNmtMUrHqDgngATZTx5ogOh1hInnqueFjGGhfMYsHQO1Vj8+odj0r+4jhjuUY 3YfY+qZ+91tq33JlUOhKn+mfVMdxJc8XarGgR6MSWYkqWVYCtLtBluum7hKm2UJ6 /e4hd2zzImX5ATwj/LXWLx5eTf1qAVFGWzNUph1DrW+1V5lOu58X4gKwk1QOCVEh Pa0GV9oRTkjoswwz9drzjeFtie2yofQ2mygj6QKxg5NsosIF0+B8kJ61Sxwg56Ak tF+qn1hGtB2cDQkpxK4o2cZgCELhkh5Aqgol/vZUS1DMBSUEGCV9PPp2eOW83r3B 0zsTgsShyVcTh7khdpQmHNRigvcc7e69LaAGC4o/RxaZpCU/LUNCQ+/iqVExSE8A VNEXr+JNxGxhj3m9KUHuEktdWx1oNvaYR8Rr4RPr6EWR8R6emJ04I7kXInvzhJZL HOGh75vSuAU83FrsP8fFRLadoHNVDXylAs38BPfGEMngVpjvwJLgQ3+729CwW+Q4 +xQXAKSwKfr8xA8eg6wBSbFcwnEW4QwRqFqQ5XPw7zTZkCZbiLtvn3JpI5bH5A5Q /d2D+M2vFbB7VbWJBM4etO95eNS/pfhqJhcQh4t0DjXjoW6WqLiHCxhEx8Ogfvop /4ckyGvtEOI= =POJD -----END PGP SIGNATURE----- Merge tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc Pull ARM SoC driver updates from Arnd Bergmann: "These are changes for drivers that are intimately tied to some SoC and for some reason could not get merged through the respective subsystem maintainer tree. Most of the new code is for the Keystone Navigator driver, which is new base support that is going to be needed for their hardware accelerated network driver and other units. Most of the commits are for moving old code around from at91 and omap for things that are done in device drivers nowadays. - at91: move reset, poweroff, memory and clocksource code into drivers directories - socfpga: add edac driver (through arm-soc, as requested by Boris) - omap: move omap-intc code to drivers/irqchip - sunxi: added an RTC driver for sun6i - omap: mailbox driver related changes - keystone: support for the "Navigator" component - versatile: new reboot, led and soc drivers" * tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (92 commits) bus: arm-ccn: Fix spurious warning message leds: add device tree bindings for register bit LEDs soc: add driver for the ARM RealView power: reset: driver for the Versatile syscon reboot leds: add a driver for syscon-based LEDs drivers/soc: ti: fix build break with modules MAINTAINERS: Add Keystone Multicore Navigator drivers entry soc: ti: add Keystone Navigator DMA support Documentation: dt: soc: add Keystone Navigator DMA bindings soc: ti: add Keystone Navigator QMSS driver Documentation: dt: soc: add Keystone Navigator QMSS bindings rtc: sunxi: Depend on platforms sun4i/sun7i that actually have the rtc rtc: sun6i: Add sun6i RTC driver irqchip: omap-intc: remove unnecessary comments irqchip: omap-intc: correct maximum number or MIR registers irqchip: omap-intc: enable TURBO idle mode irqchip: omap-intc: enable IP protection irqchip: omap-intc: remove unnecesary of_address_to_resource() call irqchip: omap-intc: comment style cleanup irqchip: omap-intc: minor improvement to omap_irq_pending() ...
269 lines
6.0 KiB
Plaintext
269 lines
6.0 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 HAVE_AT91_DBGU2
|
|
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 HAVE_AT91_SMD
|
|
bool
|
|
|
|
config HAVE_AT91_H32MX
|
|
bool
|
|
|
|
config SOC_AT91SAM9
|
|
bool
|
|
select ATMEL_AIC_IRQ if !OLD_IRQ_AT91
|
|
select CPU_ARM926T
|
|
select GENERIC_CLOCKEVENTS
|
|
select MEMORY if USE_OF
|
|
select ATMEL_SDRAMC if USE_OF
|
|
|
|
config SOC_SAMA5
|
|
bool
|
|
select ATMEL_AIC5_IRQ
|
|
select CPU_V7
|
|
select GENERIC_CLOCKEVENTS
|
|
select USE_OF
|
|
select MEMORY
|
|
select ATMEL_SDRAMC
|
|
|
|
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.
|
|
|
|
config SOC_SAMA5D4
|
|
bool "SAMA5D4 family"
|
|
select SOC_SAMA5
|
|
select HAVE_AT91_DBGU2
|
|
select CLKSRC_MMIO
|
|
select CACHE_L2X0
|
|
select CACHE_PL310
|
|
select HAVE_FB_ATMEL
|
|
select HAVE_AT91_UTMI
|
|
select HAVE_AT91_SMD
|
|
select HAVE_AT91_USB_CLK
|
|
select HAVE_AT91_H32MX
|
|
help
|
|
Select this if you are using one of Atmel's SAMA5D4 family SoC.
|
|
endif
|
|
|
|
if SOC_SAM_V4_V5
|
|
config SOC_AT91RM9200
|
|
bool "AT91RM9200"
|
|
select ATMEL_AIC_IRQ if !OLD_IRQ_AT91
|
|
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 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 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 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
|