forked from Minki/linux
Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm
* 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (224 commits) ARM: remove 'select GENERIC_TIME' ARM: 6136/1: ARCH_REQUIRE_GPIOLIB selects GENERIC_GPIO ARM: 6074/1: oprofile: convert from sysdev to platform device ARM: 6073/1: oprofile: remove old files and update KConfig ARM: 6072/1: oprofile: use perf-events framework as backend ARM: 6071/1: perf-events: allow modules to query the number of hardware counters ARM: 6070/1: perf-events: add support for xscale PMUs ARM: 6069/1: perf-events: use numeric ID to identify PMU ARM: 6064/1: pmu: register IRQs at runtime ARM: Optionally allow ARMv6 to use 'normal, bufferable' memory for DMA ARM: 6134/1: Handle instruction cache maintenance fault properly ARM: nwfpe: allow debugging output to be configured at runtime ARM: rename mach_cpu_disable() to platform_cpu_disable() ARM: 6132/1: PL330: Add common core driver ARM: 6094/1: Extend cache-l2x0 to support the 16-way PL310 ARM: Move memory mapping into mmu.c ARM: Ensure meminfo is sorted prior to sanity_check_meminfo ARM: Remove useless linux/bootmem.h includes ARM: convert /proc/cpu/aligment to seq_file arm: use asm-generic/scatterlist.h ...
This commit is contained in:
commit
1d3c6ff44a
@ -20,6 +20,8 @@ Samsung-S3C24XX
|
||||
- S3C24XX ARM Linux Overview
|
||||
Sharp-LH
|
||||
- Linux on Sharp LH79524 and LH7A40X System On a Chip (SOC)
|
||||
SPEAr
|
||||
- ST SPEAr platform Linux Overview
|
||||
VFP/
|
||||
- Release notes for Linux Kernel Vector Floating Point support code
|
||||
empeg/
|
||||
|
60
Documentation/arm/SPEAr/overview.txt
Normal file
60
Documentation/arm/SPEAr/overview.txt
Normal file
@ -0,0 +1,60 @@
|
||||
SPEAr ARM Linux Overview
|
||||
==========================
|
||||
|
||||
Introduction
|
||||
------------
|
||||
|
||||
SPEAr (Structured Processor Enhanced Architecture).
|
||||
weblink : http://www.st.com/spear
|
||||
|
||||
The ST Microelectronics SPEAr range of ARM9/CortexA9 System-on-Chip CPUs are
|
||||
supported by the 'spear' platform of ARM Linux. Currently SPEAr300,
|
||||
SPEAr310, SPEAr320 and SPEAr600 SOCs are supported. Support for the SPEAr13XX
|
||||
series is in progress.
|
||||
|
||||
Hierarchy in SPEAr is as follows:
|
||||
|
||||
SPEAr (Platform)
|
||||
- SPEAr3XX (3XX SOC series, based on ARM9)
|
||||
- SPEAr300 (SOC)
|
||||
- SPEAr300_EVB (Evaluation Board)
|
||||
- SPEAr310 (SOC)
|
||||
- SPEAr310_EVB (Evaluation Board)
|
||||
- SPEAr320 (SOC)
|
||||
- SPEAr320_EVB (Evaluation Board)
|
||||
- SPEAr6XX (6XX SOC series, based on ARM9)
|
||||
- SPEAr600 (SOC)
|
||||
- SPEAr600_EVB (Evaluation Board)
|
||||
- SPEAr13XX (13XX SOC series, based on ARM CORTEXA9)
|
||||
- SPEAr1300 (SOC)
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
A generic configuration is provided for each machine, and can be used as the
|
||||
default by
|
||||
make spear600_defconfig
|
||||
make spear300_defconfig
|
||||
make spear310_defconfig
|
||||
make spear320_defconfig
|
||||
|
||||
Layout
|
||||
------
|
||||
|
||||
The common files for multiple machine families (SPEAr3XX, SPEAr6XX and
|
||||
SPEAr13XX) are located in the platform code contained in arch/arm/plat-spear
|
||||
with headers in plat/.
|
||||
|
||||
Each machine series have a directory with name arch/arm/mach-spear followed by
|
||||
series name. Like mach-spear3xx, mach-spear6xx and mach-spear13xx.
|
||||
|
||||
Common file for machines of spear3xx family is mach-spear3xx/spear3xx.c and for
|
||||
spear6xx is mach-spear6xx/spear6xx.c. mach-spear* also contain soc/machine
|
||||
specific files, like spear300.c, spear310.c, spear320.c and spear600.c.
|
||||
mach-spear* also contains board specific files for each machine type.
|
||||
|
||||
|
||||
Document Author
|
||||
---------------
|
||||
|
||||
Viresh Kumar, (c) 2010 ST Microelectronics
|
@ -520,29 +520,6 @@ Who: Hans de Goede <hdegoede@redhat.com>
|
||||
|
||||
----------------------------
|
||||
|
||||
What: corgikbd, spitzkbd, tosakbd driver
|
||||
When: 2.6.35
|
||||
Files: drivers/input/keyboard/{corgi,spitz,tosa}kbd.c
|
||||
Why: We now have a generic GPIO based matrix keyboard driver that
|
||||
are fully capable of handling all the keys on these devices.
|
||||
The original drivers manipulate the GPIO registers directly
|
||||
and so are difficult to maintain.
|
||||
Who: Eric Miao <eric.y.miao@gmail.com>
|
||||
|
||||
----------------------------
|
||||
|
||||
What: corgi_ssp and corgi_ts driver
|
||||
When: 2.6.35
|
||||
Files: arch/arm/mach-pxa/corgi_ssp.c, drivers/input/touchscreen/corgi_ts.c
|
||||
Why: The corgi touchscreen is now deprecated in favour of the generic
|
||||
ads7846.c driver. The noise reduction technique used in corgi_ts.c,
|
||||
that's to wait till vsync before ADC sampling, is also integrated into
|
||||
ads7846 driver now. Provided that the original driver is not generic
|
||||
and is difficult to maintain, it will be removed later.
|
||||
Who: Eric Miao <eric.y.miao@gmail.com>
|
||||
|
||||
----------------------------
|
||||
|
||||
What: capifs
|
||||
When: February 2011
|
||||
Files: drivers/isdn/capi/capifs.*
|
||||
|
72
MAINTAINERS
72
MAINTAINERS
@ -586,6 +586,12 @@ F: drivers/mtd/nand/bcm_umi_bch.c
|
||||
F: drivers/mtd/nand/bcm_umi_hamming.c
|
||||
F: drivers/mtd/nand/nand_bcm_umi.h
|
||||
|
||||
ARM/CAVIUM NETWORKS CNS3XXX MACHINE SUPPORT
|
||||
M: Anton Vorontsov <avorontsov@mvista.com>
|
||||
S: Maintained
|
||||
F: arch/arm/mach-cns3xxx/
|
||||
T: git git://git.infradead.org/users/cbou/linux-cns3xxx.git
|
||||
|
||||
ARM/CIRRUS LOGIC EP93XX ARM ARCHITECTURE
|
||||
M: Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
M: Ryan Mallon <ryan@bluewatersys.com>
|
||||
@ -775,11 +781,10 @@ M: Philipp Zabel <philipp.zabel@gmail.com>
|
||||
S: Maintained
|
||||
|
||||
ARM/Marvell Loki/Kirkwood/MV78xx0/Orion SOC support
|
||||
M: Lennert Buytenhek <buytenh@marvell.com>
|
||||
M: Nicolas Pitre <nico@marvell.com>
|
||||
M: Lennert Buytenhek <kernel@wantstofly.org>
|
||||
M: Nicolas Pitre <nico@fluxnic.net>
|
||||
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
|
||||
T: git git://git.marvell.com/orion
|
||||
S: Maintained
|
||||
S: Odd Fixes
|
||||
F: arch/arm/mach-loki/
|
||||
F: arch/arm/mach-kirkwood/
|
||||
F: arch/arm/mach-mv78xx0/
|
||||
@ -994,6 +999,20 @@ W: http://www.arm.linux.org.uk/
|
||||
S: Maintained
|
||||
F: arch/arm/vfp/
|
||||
|
||||
ARM/VOIPAC PXA270 SUPPORT
|
||||
M: Marek Vasut <marek.vasut@gmail.com>
|
||||
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
|
||||
S: Maintained
|
||||
F: arch/arm/mach-pxa/vpac270.c
|
||||
F: arch/arm/mach-pxa/include/mach-pxa/vpac270.h
|
||||
|
||||
ARM/ZIPIT Z2 SUPPORT
|
||||
M: Marek Vasut <marek.vasut@gmail.com>
|
||||
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
|
||||
S: Maintained
|
||||
F: arch/arm/mach-pxa/z2.c
|
||||
F: arch/arm/mach-pxa/include/mach-pxa/z2.h
|
||||
|
||||
ASC7621 HARDWARE MONITOR DRIVER
|
||||
M: George Joseph <george.joseph@fairview5.com>
|
||||
L: lm-sensors@lm-sensors.org
|
||||
@ -3635,7 +3654,8 @@ F: drivers/net/wireless/mwl8k.c
|
||||
|
||||
MARVELL SOC MMC/SD/SDIO CONTROLLER DRIVER
|
||||
M: Nicolas Pitre <nico@fluxnic.net>
|
||||
S: Maintained
|
||||
S: Odd Fixes
|
||||
F: drivers/mmc/host/mvsdio.*
|
||||
|
||||
MARVELL YUKON / SYSKONNECT DRIVER
|
||||
M: Mirko Lindner <mlindner@syskonnect.de>
|
||||
@ -5133,7 +5153,7 @@ F: mm/sl?b.c
|
||||
|
||||
SMC91x ETHERNET DRIVER
|
||||
M: Nicolas Pitre <nico@fluxnic.net>
|
||||
S: Maintained
|
||||
S: Odd Fixes
|
||||
F: drivers/net/smc91x.*
|
||||
|
||||
SMSC47B397 HARDWARE MONITOR DRIVER
|
||||
@ -5264,6 +5284,46 @@ F: drivers/serial/sunsu.c
|
||||
F: drivers/serial/sunzilog.c
|
||||
F: drivers/serial/sunzilog.h
|
||||
|
||||
SPEAR PLATFORM SUPPORT
|
||||
M: Viresh Kumar <viresh.kumar@st.com>
|
||||
W: http://www.st.com/spear
|
||||
S: Maintained
|
||||
F: arch/arm/plat-spear/
|
||||
|
||||
SPEAR3XX MACHINE SUPPORT
|
||||
M: Viresh Kumar <viresh.kumar@st.com>
|
||||
W: http://www.st.com/spear
|
||||
S: Maintained
|
||||
F: arch/arm/mach-spear3xx/
|
||||
|
||||
SPEAR6XX MACHINE SUPPORT
|
||||
M: Rajeev Kumar <rajeev-dlh.kumar@st.com>
|
||||
W: http://www.st.com/spear
|
||||
S: Maintained
|
||||
F: arch/arm/mach-spear6xx/
|
||||
|
||||
SPEAR CLOCK FRAMEWORK SUPPORT
|
||||
M: Viresh Kumar <viresh.kumar@st.com>
|
||||
W: http://www.st.com/spear
|
||||
S: Maintained
|
||||
F: arch/arm/mach-spear*/clock.c
|
||||
F: arch/arm/mach-spear*/include/mach/clkdev.h
|
||||
F: arch/arm/plat-spear/clock.c
|
||||
F: arch/arm/plat-spear/include/plat/clock.h and clkdev.h
|
||||
|
||||
SPEAR PAD MULTIPLEXING SUPPORT
|
||||
M: Viresh Kumar <viresh.kumar@st.com>
|
||||
W: http://www.st.com/spear
|
||||
S: Maintained
|
||||
F: arch/arm/plat-spear/include/plat/padmux.h
|
||||
F: arch/arm/plat-spear/padmux.c
|
||||
F: arch/arm/mach-spear*/spear*xx.c
|
||||
F: arch/arm/mach-spear*/include/mach/generic.h
|
||||
F: arch/arm/mach-spear3xx/spear3*0.c
|
||||
F: arch/arm/mach-spear3xx/spear3*0_evb.c
|
||||
F: arch/arm/mach-spear6xx/spear600.c
|
||||
F: arch/arm/mach-spear6xx/spear600_evb.c
|
||||
|
||||
SPECIALIX IO8+ MULTIPORT SERIAL CARD DRIVER
|
||||
M: Roger Wolff <R.E.Wolff@BitWizard.nl>
|
||||
S: Supported
|
||||
|
191
arch/arm/Kconfig
191
arch/arm/Kconfig
@ -13,7 +13,7 @@ config ARM
|
||||
select RTC_LIB
|
||||
select SYS_SUPPORTS_APM_EMULATION
|
||||
select GENERIC_ATOMIC64 if (!CPU_32v6K)
|
||||
select HAVE_OPROFILE
|
||||
select HAVE_OPROFILE if (HAVE_PERF_EVENTS)
|
||||
select HAVE_ARCH_KGDB
|
||||
select HAVE_KPROBES if (!XIP_KERNEL)
|
||||
select HAVE_KRETPROBES if (HAVE_KPROBES)
|
||||
@ -21,6 +21,7 @@ config ARM
|
||||
select HAVE_GENERIC_DMA_COHERENT
|
||||
select HAVE_KERNEL_GZIP
|
||||
select HAVE_KERNEL_LZO
|
||||
select HAVE_KERNEL_LZMA
|
||||
select HAVE_PERF_EVENTS
|
||||
select PERF_USE_VMALLOC
|
||||
help
|
||||
@ -42,6 +43,11 @@ config GENERIC_GPIO
|
||||
|
||||
config GENERIC_TIME
|
||||
bool
|
||||
default y
|
||||
|
||||
config ARCH_USES_GETTIMEOFFSET
|
||||
bool
|
||||
default n
|
||||
|
||||
config GENERIC_CLOCKEVENTS
|
||||
bool
|
||||
@ -175,28 +181,6 @@ config ARM_L1_CACHE_SHIFT_6
|
||||
help
|
||||
Setting ARM L1 cache line size to 64 Bytes.
|
||||
|
||||
if OPROFILE
|
||||
|
||||
config OPROFILE_ARMV6
|
||||
def_bool y
|
||||
depends on CPU_V6 && !SMP
|
||||
select OPROFILE_ARM11_CORE
|
||||
|
||||
config OPROFILE_MPCORE
|
||||
def_bool y
|
||||
depends on CPU_V6 && SMP
|
||||
select OPROFILE_ARM11_CORE
|
||||
|
||||
config OPROFILE_ARM11_CORE
|
||||
bool
|
||||
|
||||
config OPROFILE_ARMV7
|
||||
def_bool y
|
||||
depends on CPU_V7 && !SMP
|
||||
bool
|
||||
|
||||
endif
|
||||
|
||||
config VECTORS_BASE
|
||||
hex
|
||||
default 0xffff0000 if MMU || CPU_HIGH_VECTOR
|
||||
@ -231,6 +215,7 @@ config ARCH_AAEC2000
|
||||
select CPU_ARM920T
|
||||
select ARM_AMBA
|
||||
select HAVE_CLK
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
This enables support for systems based on the Agilent AAEC-2000
|
||||
|
||||
@ -238,21 +223,22 @@ config ARCH_INTEGRATOR
|
||||
bool "ARM Ltd. Integrator family"
|
||||
select ARM_AMBA
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select ICST525
|
||||
select ICST
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select PLAT_VERSATILE
|
||||
help
|
||||
Support for ARM's Integrator platform.
|
||||
|
||||
config ARCH_REALVIEW
|
||||
bool "ARM Ltd. RealView family"
|
||||
select ARM_AMBA
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select ICST307
|
||||
select GENERIC_TIME
|
||||
select ICST
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select ARCH_WANT_OPTIONAL_GPIOLIB
|
||||
select PLAT_VERSATILE
|
||||
select ARM_TIMER_SP804
|
||||
select GPIO_PL061 if GPIOLIB
|
||||
help
|
||||
This enables support for ARM Ltd RealView boards.
|
||||
@ -261,20 +247,33 @@ config ARCH_VERSATILE
|
||||
bool "ARM Ltd. Versatile family"
|
||||
select ARM_AMBA
|
||||
select ARM_VIC
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select ICST307
|
||||
select GENERIC_TIME
|
||||
select ICST
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select ARCH_WANT_OPTIONAL_GPIOLIB
|
||||
select PLAT_VERSATILE
|
||||
select ARM_TIMER_SP804
|
||||
help
|
||||
This enables support for ARM Ltd Versatile board.
|
||||
|
||||
config ARCH_VEXPRESS
|
||||
bool "ARM Ltd. Versatile Express family"
|
||||
select ARCH_WANT_OPTIONAL_GPIOLIB
|
||||
select ARM_AMBA
|
||||
select ARM_TIMER_SP804
|
||||
select COMMON_CLKDEV
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_CLK
|
||||
select ICST
|
||||
select PLAT_VERSATILE
|
||||
help
|
||||
This enables support for the ARM Ltd Versatile Express boards.
|
||||
|
||||
config ARCH_AT91
|
||||
bool "Atmel AT91"
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select HAVE_CLK
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
This enables support for systems based on the Atmel AT91RM9200,
|
||||
AT91SAM9 and AT91CAP9 processors.
|
||||
@ -285,7 +284,6 @@ config ARCH_BCMRING
|
||||
select CPU_V6
|
||||
select ARM_AMBA
|
||||
select COMMON_CLKDEV
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select ARCH_WANT_OPTIONAL_GPIOLIB
|
||||
help
|
||||
@ -294,14 +292,23 @@ config ARCH_BCMRING
|
||||
config ARCH_CLPS711X
|
||||
bool "Cirrus Logic CLPS711x/EP721x-based"
|
||||
select CPU_ARM720T
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Support for Cirrus Logic 711x/721x based boards.
|
||||
|
||||
config ARCH_CNS3XXX
|
||||
bool "Cavium Networks CNS3XXX family"
|
||||
select CPU_V6
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select ARM_GIC
|
||||
help
|
||||
Support for Cavium Networks CNS3XXX platform.
|
||||
|
||||
config ARCH_GEMINI
|
||||
bool "Cortina Systems Gemini"
|
||||
select CPU_FA526
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Support for the Cortina Systems Gemini family SoCs
|
||||
|
||||
@ -310,6 +317,7 @@ config ARCH_EBSA110
|
||||
select CPU_SA110
|
||||
select ISA
|
||||
select NO_IOPORT
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
This is an evaluation board for the StrongARM processor available
|
||||
from Digital. It has limited hardware on-board, including an
|
||||
@ -321,11 +329,10 @@ config ARCH_EP93XX
|
||||
select CPU_ARM920T
|
||||
select ARM_AMBA
|
||||
select ARM_VIC
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select ARCH_HAS_HOLES_MEMORYMODEL
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
This enables support for the Cirrus EP93xx series of CPUs.
|
||||
|
||||
@ -333,16 +340,15 @@ config ARCH_FOOTBRIDGE
|
||||
bool "FootBridge"
|
||||
select CPU_SA110
|
||||
select FOOTBRIDGE
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Support for systems based on the DC21285 companion chip
|
||||
("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
|
||||
|
||||
config ARCH_MXC
|
||||
bool "Freescale MXC/iMX-based"
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
help
|
||||
Support for Freescale MXC/iMX-based family of processors
|
||||
@ -350,12 +356,9 @@ config ARCH_MXC
|
||||
config ARCH_STMP3XXX
|
||||
bool "Freescale STMP3xxx"
|
||||
select CPU_ARM926T
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select GENERIC_GPIO
|
||||
select USB_ARCH_HAS_EHCI
|
||||
help
|
||||
Support for systems based on the Freescale 3xxx CPUs.
|
||||
@ -365,7 +368,6 @@ config ARCH_NETX
|
||||
select CPU_ARM926T
|
||||
select ARM_VIC
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select GENERIC_TIME
|
||||
help
|
||||
This enables support for systems based on the Hilscher NetX Soc
|
||||
|
||||
@ -373,6 +375,7 @@ config ARCH_H720X
|
||||
bool "Hynix HMS720x-based"
|
||||
select CPU_ARM720T
|
||||
select ISA_DMA_API
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
This enables support for systems based on the Hynix HMS720x
|
||||
|
||||
@ -393,7 +396,6 @@ config ARCH_IOP32X
|
||||
select CPU_XSCALE
|
||||
select PLAT_IOP
|
||||
select PCI
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
help
|
||||
Support for Intel's 80219 and IOP32X (XScale) family of
|
||||
@ -405,7 +407,6 @@ config ARCH_IOP33X
|
||||
select CPU_XSCALE
|
||||
select PLAT_IOP
|
||||
select PCI
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
help
|
||||
Support for Intel's IOP33X (XScale) family of processors.
|
||||
@ -415,6 +416,7 @@ config ARCH_IXP23XX
|
||||
depends on MMU
|
||||
select CPU_XSC3
|
||||
select PCI
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Support for Intel's IXP23xx (XScale) family of processors.
|
||||
|
||||
@ -423,6 +425,7 @@ config ARCH_IXP2000
|
||||
depends on MMU
|
||||
select CPU_XSCALE
|
||||
select PCI
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Support for Intel's IXP2400/2800 (XScale) family of processors.
|
||||
|
||||
@ -431,7 +434,6 @@ config ARCH_IXP4XX
|
||||
depends on MMU
|
||||
select CPU_XSCALE
|
||||
select GENERIC_GPIO
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select DMABOUNCE if PCI
|
||||
help
|
||||
@ -441,6 +443,7 @@ config ARCH_L7200
|
||||
bool "LinkUp-L7200"
|
||||
select CPU_ARM720T
|
||||
select FIQ
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Say Y here if you intend to run this kernel on a LinkUp Systems
|
||||
L7200 Software Development Board which uses an ARM720T processor.
|
||||
@ -454,9 +457,7 @@ config ARCH_L7200
|
||||
config ARCH_DOVE
|
||||
bool "Marvell Dove"
|
||||
select PCI
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select PLAT_ORION
|
||||
help
|
||||
@ -466,9 +467,7 @@ config ARCH_KIRKWOOD
|
||||
bool "Marvell Kirkwood"
|
||||
select CPU_FEROCEON
|
||||
select PCI
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select PLAT_ORION
|
||||
help
|
||||
@ -478,7 +477,6 @@ config ARCH_KIRKWOOD
|
||||
config ARCH_LOKI
|
||||
bool "Marvell Loki (88RC8480)"
|
||||
select CPU_FEROCEON
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select PLAT_ORION
|
||||
help
|
||||
@ -488,9 +486,7 @@ config ARCH_MV78XX0
|
||||
bool "Marvell MV78xx0"
|
||||
select CPU_FEROCEON
|
||||
select PCI
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select PLAT_ORION
|
||||
help
|
||||
@ -502,9 +498,7 @@ config ARCH_ORION5X
|
||||
depends on MMU
|
||||
select CPU_FEROCEON
|
||||
select PCI
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select PLAT_ORION
|
||||
help
|
||||
@ -515,11 +509,8 @@ config ARCH_ORION5X
|
||||
config ARCH_MMP
|
||||
bool "Marvell PXA168/910/MMP2"
|
||||
depends on MMU
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select TICK_ONESHOT
|
||||
select PLAT_PXA
|
||||
@ -529,8 +520,8 @@ config ARCH_MMP
|
||||
config ARCH_KS8695
|
||||
bool "Micrel/Kendin KS8695"
|
||||
select CPU_ARM922T
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
|
||||
System-on-Chip devices.
|
||||
@ -539,7 +530,6 @@ config ARCH_NS9XXX
|
||||
bool "NetSilicon NS9xxx"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_GPIO
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_CLK
|
||||
help
|
||||
@ -552,10 +542,7 @@ config ARCH_W90X900
|
||||
bool "Nuvoton W90X900 CPU"
|
||||
select CPU_ARM926T
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
help
|
||||
Support for Nuvoton (Winbond logic dept.) ARM9 processor,
|
||||
@ -569,7 +556,6 @@ config ARCH_W90X900
|
||||
config ARCH_NUC93X
|
||||
bool "Nuvoton NUC93X CPU"
|
||||
select CPU_ARM926T
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
help
|
||||
Support for Nuvoton (Winbond logic dept.) NUC93X MCU,The NUC93X is a
|
||||
@ -578,8 +564,8 @@ config ARCH_NUC93X
|
||||
config ARCH_PNX4008
|
||||
bool "Philips Nexperia PNX4008 Mobile"
|
||||
select CPU_ARM926T
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
This enables support for Philips PNX4008 mobile platform.
|
||||
|
||||
@ -588,11 +574,8 @@ config ARCH_PXA
|
||||
depends on MMU
|
||||
select ARCH_MTD_XIP
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select TICK_ONESHOT
|
||||
select PLAT_PXA
|
||||
@ -601,14 +584,14 @@ config ARCH_PXA
|
||||
|
||||
config ARCH_MSM
|
||||
bool "Qualcomm MSM"
|
||||
select CPU_V6
|
||||
select GENERIC_TIME
|
||||
select HAVE_CLK
|
||||
select GENERIC_CLOCKEVENTS
|
||||
help
|
||||
Support for Qualcomm MSM7K based systems. This runs on the ARM11
|
||||
apps processor of the MSM7K and depends on a shared memory
|
||||
interface to the ARM9 modem processor which runs the baseband stack
|
||||
and controls some vital subsystems (clock and power control, etc).
|
||||
Support for Qualcomm MSM/QSD based systems. This runs on the
|
||||
apps processor of the MSM/QSD and depends on a shared memory
|
||||
interface to the modem processor which runs the baseband
|
||||
stack and controls some vital subsystems
|
||||
(clock and power control, etc).
|
||||
|
||||
config ARCH_SHMOBILE
|
||||
bool "Renesas SH-Mobile"
|
||||
@ -625,6 +608,7 @@ config ARCH_RPC
|
||||
select ISA_DMA_API
|
||||
select NO_IOPORT
|
||||
select ARCH_SPARSEMEM_ENABLE
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
On the Acorn Risc-PC, Linux can support the internal IDE disk and
|
||||
CD-ROM interface, serial and parallel port, and the floppy drive.
|
||||
@ -637,8 +621,6 @@ config ARCH_SA1100
|
||||
select ARCH_MTD_XIP
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select CPU_FREQ
|
||||
select GENERIC_GPIO
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_CLK
|
||||
select TICK_ONESHOT
|
||||
@ -647,23 +629,28 @@ config ARCH_SA1100
|
||||
Support for StrongARM 11x0 based boards.
|
||||
|
||||
config ARCH_S3C2410
|
||||
bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
|
||||
bool "Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443, S3C2450"
|
||||
select GENERIC_GPIO
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select HAVE_CLK
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Samsung S3C2410X CPU based systems, such as the Simtec Electronics
|
||||
BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
|
||||
the Samsung SMDK2410 development board (and derivatives).
|
||||
|
||||
Note, the S3C2416 and the S3C2450 are so close that they even share
|
||||
the same SoC ID code. This means that there is no seperate machine
|
||||
directory (no arch/arm/mach-s3c2450) as the S3C2416 was first.
|
||||
|
||||
config ARCH_S3C64XX
|
||||
bool "Samsung S3C64XX"
|
||||
select PLAT_SAMSUNG
|
||||
select CPU_V6
|
||||
select GENERIC_GPIO
|
||||
select ARM_VIC
|
||||
select HAVE_CLK
|
||||
select NO_IOPORT
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select SAMSUNG_CLKSRC
|
||||
@ -720,6 +707,7 @@ config ARCH_SHARK
|
||||
select ISA_DMA
|
||||
select ZONE_DMA
|
||||
select PCI
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Support for the StrongARM based Digital DNARD machine, also known
|
||||
as "Shark" (<http://www.shark-linux.de/shark.html>).
|
||||
@ -729,6 +717,7 @@ config ARCH_LH7A40X
|
||||
select CPU_ARM922T
|
||||
select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM
|
||||
select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
help
|
||||
Say Y here for systems based on one of the Sharp LH7A40X
|
||||
System on a Chip processors. These CPUs include an ARM922T
|
||||
@ -742,9 +731,7 @@ config ARCH_U300
|
||||
select HAVE_TCM
|
||||
select ARM_AMBA
|
||||
select ARM_VIC
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select GENERIC_GPIO
|
||||
help
|
||||
@ -754,9 +741,9 @@ config ARCH_U8500
|
||||
bool "ST-Ericsson U8500 Series"
|
||||
select CPU_V7
|
||||
select ARM_AMBA
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select COMMON_CLKDEV
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
help
|
||||
Support for ST-Ericsson's Ux500 architecture
|
||||
|
||||
@ -765,11 +752,8 @@ config ARCH_NOMADIK
|
||||
select ARM_AMBA
|
||||
select ARM_VIC
|
||||
select CPU_ARM926T
|
||||
select HAVE_CLK
|
||||
select COMMON_CLKDEV
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
help
|
||||
Support for the Nomadik platform by ST-Ericsson
|
||||
@ -777,11 +761,8 @@ config ARCH_NOMADIK
|
||||
config ARCH_DAVINCI
|
||||
bool "TI DaVinci"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select GENERIC_GPIO
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select HAVE_CLK
|
||||
select ZONE_DMA
|
||||
select HAVE_IDE
|
||||
select COMMON_CLKDEV
|
||||
@ -792,16 +773,24 @@ config ARCH_DAVINCI
|
||||
|
||||
config ARCH_OMAP
|
||||
bool "TI OMAP"
|
||||
select GENERIC_GPIO
|
||||
select HAVE_CLK
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select ARCH_HAS_CPUFREQ
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select ARCH_HAS_HOLES_MEMORYMODEL
|
||||
help
|
||||
Support for TI's OMAP platform (OMAP1 and OMAP2).
|
||||
|
||||
config PLAT_SPEAR
|
||||
bool "ST SPEAr"
|
||||
select ARM_AMBA
|
||||
select ARCH_REQUIRE_GPIOLIB
|
||||
select COMMON_CLKDEV
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_CLK
|
||||
help
|
||||
Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx).
|
||||
|
||||
endchoice
|
||||
|
||||
#
|
||||
@ -817,6 +806,8 @@ source "arch/arm/mach-bcmring/Kconfig"
|
||||
|
||||
source "arch/arm/mach-clps711x/Kconfig"
|
||||
|
||||
source "arch/arm/mach-cns3xxx/Kconfig"
|
||||
|
||||
source "arch/arm/mach-davinci/Kconfig"
|
||||
|
||||
source "arch/arm/mach-dove/Kconfig"
|
||||
@ -887,11 +878,13 @@ source "arch/arm/plat-samsung/Kconfig"
|
||||
source "arch/arm/plat-s3c24xx/Kconfig"
|
||||
source "arch/arm/plat-s5p/Kconfig"
|
||||
source "arch/arm/plat-s5pc1xx/Kconfig"
|
||||
source "arch/arm/plat-spear/Kconfig"
|
||||
|
||||
if ARCH_S3C2410
|
||||
source "arch/arm/mach-s3c2400/Kconfig"
|
||||
source "arch/arm/mach-s3c2410/Kconfig"
|
||||
source "arch/arm/mach-s3c2412/Kconfig"
|
||||
source "arch/arm/mach-s3c2416/Kconfig"
|
||||
source "arch/arm/mach-s3c2440/Kconfig"
|
||||
source "arch/arm/mach-s3c2443/Kconfig"
|
||||
endif
|
||||
@ -920,6 +913,8 @@ source "arch/arm/mach-ux500/Kconfig"
|
||||
|
||||
source "arch/arm/mach-versatile/Kconfig"
|
||||
|
||||
source "arch/arm/mach-vexpress/Kconfig"
|
||||
|
||||
source "arch/arm/mach-w90x900/Kconfig"
|
||||
|
||||
# Definitions to make life easier
|
||||
@ -929,7 +924,6 @@ config ARCH_ACORN
|
||||
config PLAT_IOP
|
||||
bool
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select GENERIC_TIME
|
||||
|
||||
config PLAT_ORION
|
||||
bool
|
||||
@ -937,6 +931,12 @@ config PLAT_ORION
|
||||
config PLAT_PXA
|
||||
bool
|
||||
|
||||
config PLAT_VERSATILE
|
||||
bool
|
||||
|
||||
config ARM_TIMER_SP804
|
||||
bool
|
||||
|
||||
source arch/arm/mm/Kconfig
|
||||
|
||||
config IWMMXT
|
||||
@ -1065,6 +1065,10 @@ config PCI
|
||||
your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
|
||||
VESA. If you have PCI, say Y, otherwise N.
|
||||
|
||||
config PCI_DOMAINS
|
||||
bool
|
||||
depends on PCI
|
||||
|
||||
config PCI_SYSCALL
|
||||
def_bool PCI
|
||||
|
||||
@ -1093,10 +1097,11 @@ source "kernel/time/Kconfig"
|
||||
config SMP
|
||||
bool "Symmetric Multi-Processing (EXPERIMENTAL)"
|
||||
depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\
|
||||
MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500)
|
||||
MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\
|
||||
ARCH_U8500 || ARCH_VEXPRESS_CA9X4)
|
||||
depends on GENERIC_CLOCKEVENTS
|
||||
select USE_GENERIC_SMP_HELPERS
|
||||
select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500)
|
||||
select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500 || ARCH_VEXPRESS_CA9X4)
|
||||
help
|
||||
This enables support for systems with more than one CPU. If you have
|
||||
a system with only one CPU, like most personal computers, say N. If
|
||||
@ -1277,7 +1282,7 @@ config HIGHPTE
|
||||
|
||||
config HW_PERF_EVENTS
|
||||
bool "Enable hardware performance counter support for perf events"
|
||||
depends on PERF_EVENTS && CPU_HAS_PMU && (CPU_V6 || CPU_V7)
|
||||
depends on PERF_EVENTS && CPU_HAS_PMU
|
||||
default y
|
||||
help
|
||||
Enable hardware performance counter support for perf events. If
|
||||
|
@ -121,6 +121,7 @@ machine-$(CONFIG_ARCH_AAEC2000) := aaec2000
|
||||
machine-$(CONFIG_ARCH_AT91) := at91
|
||||
machine-$(CONFIG_ARCH_BCMRING) := bcmring
|
||||
machine-$(CONFIG_ARCH_CLPS711X) := clps711x
|
||||
machine-$(CONFIG_ARCH_CNS3XXX) := cns3xxx
|
||||
machine-$(CONFIG_ARCH_DAVINCI) := davinci
|
||||
machine-$(CONFIG_ARCH_DOVE) := dove
|
||||
machine-$(CONFIG_ARCH_EBSA110) := ebsa110
|
||||
@ -160,7 +161,7 @@ machine-$(CONFIG_ARCH_PNX4008) := pnx4008
|
||||
machine-$(CONFIG_ARCH_PXA) := pxa
|
||||
machine-$(CONFIG_ARCH_REALVIEW) := realview
|
||||
machine-$(CONFIG_ARCH_RPC) := rpc
|
||||
machine-$(CONFIG_ARCH_S3C2410) := s3c2410 s3c2400 s3c2412 s3c2440 s3c2443
|
||||
machine-$(CONFIG_ARCH_S3C2410) := s3c2410 s3c2400 s3c2412 s3c2416 s3c2440 s3c2443
|
||||
machine-$(CONFIG_ARCH_S3C24A0) := s3c24a0
|
||||
machine-$(CONFIG_ARCH_S3C64XX) := s3c64xx
|
||||
machine-$(CONFIG_ARCH_S5P6440) := s5p6440
|
||||
@ -175,9 +176,14 @@ machine-$(CONFIG_ARCH_STMP37XX) := stmp37xx
|
||||
machine-$(CONFIG_ARCH_U300) := u300
|
||||
machine-$(CONFIG_ARCH_U8500) := ux500
|
||||
machine-$(CONFIG_ARCH_VERSATILE) := versatile
|
||||
machine-$(CONFIG_ARCH_VEXPRESS) := vexpress
|
||||
machine-$(CONFIG_ARCH_W90X900) := w90x900
|
||||
machine-$(CONFIG_ARCH_NUC93X) := nuc93x
|
||||
machine-$(CONFIG_FOOTBRIDGE) := footbridge
|
||||
machine-$(CONFIG_MACH_SPEAR300) := spear3xx
|
||||
machine-$(CONFIG_MACH_SPEAR310) := spear3xx
|
||||
machine-$(CONFIG_MACH_SPEAR320) := spear3xx
|
||||
machine-$(CONFIG_MACH_SPEAR600) := spear6xx
|
||||
|
||||
# Platform directory name. This list is sorted alphanumerically
|
||||
# by CONFIG_* macro name.
|
||||
@ -192,6 +198,8 @@ plat-$(CONFIG_PLAT_PXA) := pxa
|
||||
plat-$(CONFIG_PLAT_S3C24XX) := s3c24xx samsung
|
||||
plat-$(CONFIG_PLAT_S5PC1XX) := s5pc1xx samsung
|
||||
plat-$(CONFIG_PLAT_S5P) := s5p samsung
|
||||
plat-$(CONFIG_PLAT_SPEAR) := spear
|
||||
plat-$(CONFIG_PLAT_VERSATILE) := versatile
|
||||
|
||||
ifeq ($(CONFIG_ARCH_EBSA110),y)
|
||||
# This is what happens if you forget the IOCS16 line.
|
||||
|
@ -65,6 +65,7 @@ SEDFLAGS = s/TEXT_START/$(ZTEXTADDR)/;s/BSS_START/$(ZBSSADDR)/
|
||||
|
||||
suffix_$(CONFIG_KERNEL_GZIP) = gzip
|
||||
suffix_$(CONFIG_KERNEL_LZO) = lzo
|
||||
suffix_$(CONFIG_KERNEL_LZMA) = lzma
|
||||
|
||||
targets := vmlinux vmlinux.lds \
|
||||
piggy.$(suffix_y) piggy.$(suffix_y).o \
|
||||
|
@ -40,6 +40,10 @@ extern void error(char *);
|
||||
#include "../../../../lib/decompress_unlzo.c"
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_KERNEL_LZMA
|
||||
#include "../../../../lib/decompress_unlzma.c"
|
||||
#endif
|
||||
|
||||
void do_decompress(u8 *input, int len, u8 *output, void (*error)(char *x))
|
||||
{
|
||||
decompress(input, len, NULL, NULL, output, NULL, error);
|
||||
|
6
arch/arm/boot/compressed/piggy.lzma.S
Normal file
6
arch/arm/boot/compressed/piggy.lzma.S
Normal file
@ -0,0 +1,6 @@
|
||||
.section .piggydata,#alloc
|
||||
.globl input_data
|
||||
input_data:
|
||||
.incbin "arch/arm/boot/compressed/piggy.lzma"
|
||||
.globl input_data_end
|
||||
input_data_end:
|
@ -12,10 +12,10 @@ config ARM_VIC_NR
|
||||
The maximum number of VICs available in the system, for
|
||||
power management.
|
||||
|
||||
config ICST525
|
||||
config ICST
|
||||
bool
|
||||
|
||||
config ICST307
|
||||
config PL330
|
||||
bool
|
||||
|
||||
config SA1111
|
||||
@ -40,3 +40,4 @@ config SHARP_SCOOP
|
||||
|
||||
config COMMON_CLKDEV
|
||||
bool
|
||||
select HAVE_CLK
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
obj-$(CONFIG_ARM_GIC) += gic.o
|
||||
obj-$(CONFIG_ARM_VIC) += vic.o
|
||||
obj-$(CONFIG_ICST525) += icst525.o
|
||||
obj-$(CONFIG_ICST307) += icst307.o
|
||||
obj-$(CONFIG_ICST) += icst.o
|
||||
obj-$(CONFIG_PL330) += pl330.o
|
||||
obj-$(CONFIG_SA1111) += sa1111.o
|
||||
obj-$(CONFIG_PCI_HOST_VIA82C505) += via82c505.o
|
||||
obj-$(CONFIG_DMABOUNCE) += dmabounce.o
|
||||
|
@ -53,12 +53,13 @@ static struct clk *clk_find(const char *dev_id, const char *con_id)
|
||||
continue;
|
||||
match += 1;
|
||||
}
|
||||
if (match == 0)
|
||||
continue;
|
||||
|
||||
if (match > best) {
|
||||
clk = p->clk;
|
||||
best = match;
|
||||
if (match != 3)
|
||||
best = match;
|
||||
else
|
||||
break;
|
||||
}
|
||||
}
|
||||
return clk;
|
||||
|
100
arch/arm/common/icst.c
Normal file
100
arch/arm/common/icst.c
Normal file
@ -0,0 +1,100 @@
|
||||
/*
|
||||
* linux/arch/arm/common/icst307.c
|
||||
*
|
||||
* Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* Support functions for calculating clocks/divisors for the ICST307
|
||||
* clock generators. See http://www.icst.com/ for more information
|
||||
* on these devices.
|
||||
*
|
||||
* This is an almost identical implementation to the ICST525 clock generator.
|
||||
* The s2div and idx2s files are different
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
#include <asm/hardware/icst.h>
|
||||
|
||||
/*
|
||||
* Divisors for each OD setting.
|
||||
*/
|
||||
const unsigned char icst307_s2div[8] = { 10, 2, 8, 4, 5, 7, 3, 6 };
|
||||
const unsigned char icst525_s2div[8] = { 10, 2, 8, 4, 5, 7, 9, 6 };
|
||||
EXPORT_SYMBOL(icst307_s2div);
|
||||
EXPORT_SYMBOL(icst525_s2div);
|
||||
|
||||
unsigned long icst_hz(const struct icst_params *p, struct icst_vco vco)
|
||||
{
|
||||
return p->ref * 2 * (vco.v + 8) / ((vco.r + 2) * p->s2div[vco.s]);
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst_hz);
|
||||
|
||||
/*
|
||||
* Ascending divisor S values.
|
||||
*/
|
||||
const unsigned char icst307_idx2s[8] = { 1, 6, 3, 4, 7, 5, 2, 0 };
|
||||
const unsigned char icst525_idx2s[8] = { 1, 3, 4, 7, 5, 2, 6, 0 };
|
||||
EXPORT_SYMBOL(icst307_idx2s);
|
||||
EXPORT_SYMBOL(icst525_idx2s);
|
||||
|
||||
struct icst_vco
|
||||
icst_hz_to_vco(const struct icst_params *p, unsigned long freq)
|
||||
{
|
||||
struct icst_vco vco = { .s = 1, .v = p->vd_max, .r = p->rd_max };
|
||||
unsigned long f;
|
||||
unsigned int i = 0, rd, best = (unsigned int)-1;
|
||||
|
||||
/*
|
||||
* First, find the PLL output divisor such
|
||||
* that the PLL output is within spec.
|
||||
*/
|
||||
do {
|
||||
f = freq * p->s2div[p->idx2s[i]];
|
||||
|
||||
if (f > p->vco_min && f <= p->vco_max)
|
||||
break;
|
||||
} while (i < 8);
|
||||
|
||||
if (i >= 8)
|
||||
return vco;
|
||||
|
||||
vco.s = p->idx2s[i];
|
||||
|
||||
/*
|
||||
* Now find the closest divisor combination
|
||||
* which gives a PLL output of 'f'.
|
||||
*/
|
||||
for (rd = p->rd_min; rd <= p->rd_max; rd++) {
|
||||
unsigned long fref_div, f_pll;
|
||||
unsigned int vd;
|
||||
int f_diff;
|
||||
|
||||
fref_div = (2 * p->ref) / rd;
|
||||
|
||||
vd = (f + fref_div / 2) / fref_div;
|
||||
if (vd < p->vd_min || vd > p->vd_max)
|
||||
continue;
|
||||
|
||||
f_pll = fref_div * vd;
|
||||
f_diff = f_pll - f;
|
||||
if (f_diff < 0)
|
||||
f_diff = -f_diff;
|
||||
|
||||
if ((unsigned)f_diff < best) {
|
||||
vco.v = vd - 8;
|
||||
vco.r = rd - 2;
|
||||
if (f_diff == 0)
|
||||
break;
|
||||
best = f_diff;
|
||||
}
|
||||
}
|
||||
|
||||
return vco;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst_hz_to_vco);
|
@ -1,161 +0,0 @@
|
||||
/*
|
||||
* linux/arch/arm/common/icst307.c
|
||||
*
|
||||
* Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* Support functions for calculating clocks/divisors for the ICST307
|
||||
* clock generators. See http://www.icst.com/ for more information
|
||||
* on these devices.
|
||||
*
|
||||
* This is an almost identical implementation to the ICST525 clock generator.
|
||||
* The s2div and idx2s files are different
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
#include <asm/hardware/icst307.h>
|
||||
|
||||
/*
|
||||
* Divisors for each OD setting.
|
||||
*/
|
||||
static unsigned char s2div[8] = { 10, 2, 8, 4, 5, 7, 3, 6 };
|
||||
|
||||
unsigned long icst307_khz(const struct icst307_params *p, struct icst307_vco vco)
|
||||
{
|
||||
return p->ref * 2 * (vco.v + 8) / ((vco.r + 2) * s2div[vco.s]);
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst307_khz);
|
||||
|
||||
/*
|
||||
* Ascending divisor S values.
|
||||
*/
|
||||
static unsigned char idx2s[8] = { 1, 6, 3, 4, 7, 5, 2, 0 };
|
||||
|
||||
struct icst307_vco
|
||||
icst307_khz_to_vco(const struct icst307_params *p, unsigned long freq)
|
||||
{
|
||||
struct icst307_vco vco = { .s = 1, .v = p->vd_max, .r = p->rd_max };
|
||||
unsigned long f;
|
||||
unsigned int i = 0, rd, best = (unsigned int)-1;
|
||||
|
||||
/*
|
||||
* First, find the PLL output divisor such
|
||||
* that the PLL output is within spec.
|
||||
*/
|
||||
do {
|
||||
f = freq * s2div[idx2s[i]];
|
||||
|
||||
/*
|
||||
* f must be between 6MHz and 200MHz (3.3 or 5V)
|
||||
*/
|
||||
if (f > 6000 && f <= p->vco_max)
|
||||
break;
|
||||
} while (i < ARRAY_SIZE(idx2s));
|
||||
|
||||
if (i >= ARRAY_SIZE(idx2s))
|
||||
return vco;
|
||||
|
||||
vco.s = idx2s[i];
|
||||
|
||||
/*
|
||||
* Now find the closest divisor combination
|
||||
* which gives a PLL output of 'f'.
|
||||
*/
|
||||
for (rd = p->rd_min; rd <= p->rd_max; rd++) {
|
||||
unsigned long fref_div, f_pll;
|
||||
unsigned int vd;
|
||||
int f_diff;
|
||||
|
||||
fref_div = (2 * p->ref) / rd;
|
||||
|
||||
vd = (f + fref_div / 2) / fref_div;
|
||||
if (vd < p->vd_min || vd > p->vd_max)
|
||||
continue;
|
||||
|
||||
f_pll = fref_div * vd;
|
||||
f_diff = f_pll - f;
|
||||
if (f_diff < 0)
|
||||
f_diff = -f_diff;
|
||||
|
||||
if ((unsigned)f_diff < best) {
|
||||
vco.v = vd - 8;
|
||||
vco.r = rd - 2;
|
||||
if (f_diff == 0)
|
||||
break;
|
||||
best = f_diff;
|
||||
}
|
||||
}
|
||||
|
||||
return vco;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst307_khz_to_vco);
|
||||
|
||||
struct icst307_vco
|
||||
icst307_ps_to_vco(const struct icst307_params *p, unsigned long period)
|
||||
{
|
||||
struct icst307_vco vco = { .s = 1, .v = p->vd_max, .r = p->rd_max };
|
||||
unsigned long f, ps;
|
||||
unsigned int i = 0, rd, best = (unsigned int)-1;
|
||||
|
||||
ps = 1000000000UL / p->vco_max;
|
||||
|
||||
/*
|
||||
* First, find the PLL output divisor such
|
||||
* that the PLL output is within spec.
|
||||
*/
|
||||
do {
|
||||
f = period / s2div[idx2s[i]];
|
||||
|
||||
/*
|
||||
* f must be between 6MHz and 200MHz (3.3 or 5V)
|
||||
*/
|
||||
if (f >= ps && f < 1000000000UL / 6000 + 1)
|
||||
break;
|
||||
} while (i < ARRAY_SIZE(idx2s));
|
||||
|
||||
if (i >= ARRAY_SIZE(idx2s))
|
||||
return vco;
|
||||
|
||||
vco.s = idx2s[i];
|
||||
|
||||
ps = 500000000UL / p->ref;
|
||||
|
||||
/*
|
||||
* Now find the closest divisor combination
|
||||
* which gives a PLL output of 'f'.
|
||||
*/
|
||||
for (rd = p->rd_min; rd <= p->rd_max; rd++) {
|
||||
unsigned long f_in_div, f_pll;
|
||||
unsigned int vd;
|
||||
int f_diff;
|
||||
|
||||
f_in_div = ps * rd;
|
||||
|
||||
vd = (f_in_div + f / 2) / f;
|
||||
if (vd < p->vd_min || vd > p->vd_max)
|
||||
continue;
|
||||
|
||||
f_pll = (f_in_div + vd / 2) / vd;
|
||||
f_diff = f_pll - f;
|
||||
if (f_diff < 0)
|
||||
f_diff = -f_diff;
|
||||
|
||||
if ((unsigned)f_diff < best) {
|
||||
vco.v = vd - 8;
|
||||
vco.r = rd - 2;
|
||||
if (f_diff == 0)
|
||||
break;
|
||||
best = f_diff;
|
||||
}
|
||||
}
|
||||
|
||||
return vco;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst307_ps_to_vco);
|
@ -1,160 +0,0 @@
|
||||
/*
|
||||
* linux/arch/arm/common/icst525.c
|
||||
*
|
||||
* Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* Support functions for calculating clocks/divisors for the ICST525
|
||||
* clock generators. See http://www.icst.com/ for more information
|
||||
* on these devices.
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
#include <asm/hardware/icst525.h>
|
||||
|
||||
/*
|
||||
* Divisors for each OD setting.
|
||||
*/
|
||||
static unsigned char s2div[8] = { 10, 2, 8, 4, 5, 7, 9, 6 };
|
||||
|
||||
unsigned long icst525_khz(const struct icst525_params *p, struct icst525_vco vco)
|
||||
{
|
||||
return p->ref * 2 * (vco.v + 8) / ((vco.r + 2) * s2div[vco.s]);
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst525_khz);
|
||||
|
||||
/*
|
||||
* Ascending divisor S values.
|
||||
*/
|
||||
static unsigned char idx2s[] = { 1, 3, 4, 7, 5, 2, 6, 0 };
|
||||
|
||||
struct icst525_vco
|
||||
icst525_khz_to_vco(const struct icst525_params *p, unsigned long freq)
|
||||
{
|
||||
struct icst525_vco vco = { .s = 1, .v = p->vd_max, .r = p->rd_max };
|
||||
unsigned long f;
|
||||
unsigned int i = 0, rd, best = (unsigned int)-1;
|
||||
|
||||
/*
|
||||
* First, find the PLL output divisor such
|
||||
* that the PLL output is within spec.
|
||||
*/
|
||||
do {
|
||||
f = freq * s2div[idx2s[i]];
|
||||
|
||||
/*
|
||||
* f must be between 10MHz and
|
||||
* 320MHz (5V) or 200MHz (3V)
|
||||
*/
|
||||
if (f > 10000 && f <= p->vco_max)
|
||||
break;
|
||||
} while (i < ARRAY_SIZE(idx2s));
|
||||
|
||||
if (i >= ARRAY_SIZE(idx2s))
|
||||
return vco;
|
||||
|
||||
vco.s = idx2s[i];
|
||||
|
||||
/*
|
||||
* Now find the closest divisor combination
|
||||
* which gives a PLL output of 'f'.
|
||||
*/
|
||||
for (rd = p->rd_min; rd <= p->rd_max; rd++) {
|
||||
unsigned long fref_div, f_pll;
|
||||
unsigned int vd;
|
||||
int f_diff;
|
||||
|
||||
fref_div = (2 * p->ref) / rd;
|
||||
|
||||
vd = (f + fref_div / 2) / fref_div;
|
||||
if (vd < p->vd_min || vd > p->vd_max)
|
||||
continue;
|
||||
|
||||
f_pll = fref_div * vd;
|
||||
f_diff = f_pll - f;
|
||||
if (f_diff < 0)
|
||||
f_diff = -f_diff;
|
||||
|
||||
if ((unsigned)f_diff < best) {
|
||||
vco.v = vd - 8;
|
||||
vco.r = rd - 2;
|
||||
if (f_diff == 0)
|
||||
break;
|
||||
best = f_diff;
|
||||
}
|
||||
}
|
||||
|
||||
return vco;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst525_khz_to_vco);
|
||||
|
||||
struct icst525_vco
|
||||
icst525_ps_to_vco(const struct icst525_params *p, unsigned long period)
|
||||
{
|
||||
struct icst525_vco vco = { .s = 1, .v = p->vd_max, .r = p->rd_max };
|
||||
unsigned long f, ps;
|
||||
unsigned int i = 0, rd, best = (unsigned int)-1;
|
||||
|
||||
ps = 1000000000UL / p->vco_max;
|
||||
|
||||
/*
|
||||
* First, find the PLL output divisor such
|
||||
* that the PLL output is within spec.
|
||||
*/
|
||||
do {
|
||||
f = period / s2div[idx2s[i]];
|
||||
|
||||
/*
|
||||
* f must be between 10MHz and
|
||||
* 320MHz (5V) or 200MHz (3V)
|
||||
*/
|
||||
if (f >= ps && f < 100000)
|
||||
break;
|
||||
} while (i < ARRAY_SIZE(idx2s));
|
||||
|
||||
if (i >= ARRAY_SIZE(idx2s))
|
||||
return vco;
|
||||
|
||||
vco.s = idx2s[i];
|
||||
|
||||
ps = 500000000UL / p->ref;
|
||||
|
||||
/*
|
||||
* Now find the closest divisor combination
|
||||
* which gives a PLL output of 'f'.
|
||||
*/
|
||||
for (rd = p->rd_min; rd <= p->rd_max; rd++) {
|
||||
unsigned long f_in_div, f_pll;
|
||||
unsigned int vd;
|
||||
int f_diff;
|
||||
|
||||
f_in_div = ps * rd;
|
||||
|
||||
vd = (f_in_div + f / 2) / f;
|
||||
if (vd < p->vd_min || vd > p->vd_max)
|
||||
continue;
|
||||
|
||||
f_pll = (f_in_div + vd / 2) / vd;
|
||||
f_diff = f_pll - f;
|
||||
if (f_diff < 0)
|
||||
f_diff = -f_diff;
|
||||
|
||||
if ((unsigned)f_diff < best) {
|
||||
vco.v = vd - 8;
|
||||
vco.r = rd - 2;
|
||||
if (f_diff == 0)
|
||||
break;
|
||||
best = f_diff;
|
||||
}
|
||||
}
|
||||
|
||||
return vco;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(icst525_ps_to_vco);
|
1966
arch/arm/common/pl330.c
Normal file
1966
arch/arm/common/pl330.c
Normal file
File diff suppressed because it is too large
Load Diff
@ -266,13 +266,53 @@ static int vic_set_wake(unsigned int irq, unsigned int on)
|
||||
#endif /* CONFIG_PM */
|
||||
|
||||
static struct irq_chip vic_chip = {
|
||||
.name = "VIC",
|
||||
.ack = vic_ack_irq,
|
||||
.mask = vic_mask_irq,
|
||||
.unmask = vic_unmask_irq,
|
||||
.set_wake = vic_set_wake,
|
||||
.name = "VIC",
|
||||
.ack = vic_ack_irq,
|
||||
.mask = vic_mask_irq,
|
||||
.unmask = vic_unmask_irq,
|
||||
.set_wake = vic_set_wake,
|
||||
};
|
||||
|
||||
static void __init vic_disable(void __iomem *base)
|
||||
{
|
||||
writel(0, base + VIC_INT_SELECT);
|
||||
writel(0, base + VIC_INT_ENABLE);
|
||||
writel(~0, base + VIC_INT_ENABLE_CLEAR);
|
||||
writel(0, base + VIC_IRQ_STATUS);
|
||||
writel(0, base + VIC_ITCR);
|
||||
writel(~0, base + VIC_INT_SOFT_CLEAR);
|
||||
}
|
||||
|
||||
static void __init vic_clear_interrupts(void __iomem *base)
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
writel(0, base + VIC_PL190_VECT_ADDR);
|
||||
for (i = 0; i < 19; i++) {
|
||||
unsigned int value;
|
||||
|
||||
value = readl(base + VIC_PL190_VECT_ADDR);
|
||||
writel(value, base + VIC_PL190_VECT_ADDR);
|
||||
}
|
||||
}
|
||||
|
||||
static void __init vic_set_irq_sources(void __iomem *base,
|
||||
unsigned int irq_start, u32 vic_sources)
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0; i < 32; i++) {
|
||||
if (vic_sources & (1 << i)) {
|
||||
unsigned int irq = irq_start + i;
|
||||
|
||||
set_irq_chip(irq, &vic_chip);
|
||||
set_irq_chip_data(irq, base);
|
||||
set_irq_handler(irq, handle_level_irq);
|
||||
set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* The PL190 cell from ARM has been modified by ST to handle 64 interrupts.
|
||||
* The original cell has 32 interrupts, while the modified one has 64,
|
||||
@ -287,13 +327,7 @@ static void __init vic_init_st(void __iomem *base, unsigned int irq_start,
|
||||
int vic_2nd_block = ((unsigned long)base & ~PAGE_MASK) != 0;
|
||||
|
||||
/* Disable all interrupts initially. */
|
||||
|
||||
writel(0, base + VIC_INT_SELECT);
|
||||
writel(0, base + VIC_INT_ENABLE);
|
||||
writel(~0, base + VIC_INT_ENABLE_CLEAR);
|
||||
writel(0, base + VIC_IRQ_STATUS);
|
||||
writel(0, base + VIC_ITCR);
|
||||
writel(~0, base + VIC_INT_SOFT_CLEAR);
|
||||
vic_disable(base);
|
||||
|
||||
/*
|
||||
* Make sure we clear all existing interrupts. The vector registers
|
||||
@ -302,13 +336,8 @@ static void __init vic_init_st(void __iomem *base, unsigned int irq_start,
|
||||
* the second base address, which is 0x20 in the page
|
||||
*/
|
||||
if (vic_2nd_block) {
|
||||
writel(0, base + VIC_PL190_VECT_ADDR);
|
||||
for (i = 0; i < 19; i++) {
|
||||
unsigned int value;
|
||||
vic_clear_interrupts(base);
|
||||
|
||||
value = readl(base + VIC_PL190_VECT_ADDR);
|
||||
writel(value, base + VIC_PL190_VECT_ADDR);
|
||||
}
|
||||
/* ST has 16 vectors as well, but we don't enable them by now */
|
||||
for (i = 0; i < 16; i++) {
|
||||
void __iomem *reg = base + VIC_VECT_CNTL0 + (i * 4);
|
||||
@ -318,16 +347,7 @@ static void __init vic_init_st(void __iomem *base, unsigned int irq_start,
|
||||
writel(32, base + VIC_PL190_DEF_VECT_ADDR);
|
||||
}
|
||||
|
||||
for (i = 0; i < 32; i++) {
|
||||
if (vic_sources & (1 << i)) {
|
||||
unsigned int irq = irq_start + i;
|
||||
|
||||
set_irq_chip(irq, &vic_chip);
|
||||
set_irq_chip_data(irq, base);
|
||||
set_irq_handler(irq, handle_level_irq);
|
||||
set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
|
||||
}
|
||||
}
|
||||
vic_set_irq_sources(base, irq_start, vic_sources);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -365,37 +385,14 @@ void __init vic_init(void __iomem *base, unsigned int irq_start,
|
||||
}
|
||||
|
||||
/* Disable all interrupts initially. */
|
||||
vic_disable(base);
|
||||
|
||||
writel(0, base + VIC_INT_SELECT);
|
||||
writel(0, base + VIC_INT_ENABLE);
|
||||
writel(~0, base + VIC_INT_ENABLE_CLEAR);
|
||||
writel(0, base + VIC_IRQ_STATUS);
|
||||
writel(0, base + VIC_ITCR);
|
||||
writel(~0, base + VIC_INT_SOFT_CLEAR);
|
||||
|
||||
/*
|
||||
* Make sure we clear all existing interrupts
|
||||
*/
|
||||
writel(0, base + VIC_PL190_VECT_ADDR);
|
||||
for (i = 0; i < 19; i++) {
|
||||
unsigned int value;
|
||||
|
||||
value = readl(base + VIC_PL190_VECT_ADDR);
|
||||
writel(value, base + VIC_PL190_VECT_ADDR);
|
||||
}
|
||||
/* Make sure we clear all existing interrupts */
|
||||
vic_clear_interrupts(base);
|
||||
|
||||
vic_init2(base);
|
||||
|
||||
for (i = 0; i < 32; i++) {
|
||||
if (vic_sources & (1 << i)) {
|
||||
unsigned int irq = irq_start + i;
|
||||
|
||||
set_irq_chip(irq, &vic_chip);
|
||||
set_irq_chip_data(irq, base);
|
||||
set_irq_handler(irq, handle_level_irq);
|
||||
set_irq_flags(irq, IRQF_VALID | IRQF_PROBE);
|
||||
}
|
||||
}
|
||||
vic_set_irq_sources(base, irq_start, vic_sources);
|
||||
|
||||
vic_pm_register(base, irq_start, resume_sources);
|
||||
}
|
||||
|
831
arch/arm/configs/cns3420vb_defconfig
Normal file
831
arch/arm/configs/cns3420vb_defconfig
Normal file
@ -0,0 +1,831 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.34-rc6
|
||||
# Sun May 2 21:58:08 2010
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_HAVE_PROC_CPU=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_STACKTRACE_SUPPORT=y
|
||||
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
|
||||
CONFIG_LOCKDEP_SUPPORT=y
|
||||
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
|
||||
CONFIG_HARDIRQS_SW_RESEND=y
|
||||
CONFIG_GENERIC_IRQ_PROBE=y
|
||||
CONFIG_RWSEM_GENERIC_SPINLOCK=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_NEED_DMA_MAP_STATE=y
|
||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
|
||||
CONFIG_OPROFILE_ARMV6=y
|
||||
CONFIG_OPROFILE_ARM11_CORE=y
|
||||
CONFIG_VECTORS_BASE=0xffff0000
|
||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
|
||||
CONFIG_CONSTRUCTORS=y
|
||||
|
||||
#
|
||||
# General setup
|
||||
#
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
CONFIG_BROKEN_ON_SMP=y
|
||||
CONFIG_INIT_ENV_ARG_LIMIT=32
|
||||
CONFIG_LOCALVERSION=""
|
||||
# CONFIG_LOCALVERSION_AUTO is not set
|
||||
CONFIG_HAVE_KERNEL_GZIP=y
|
||||
CONFIG_HAVE_KERNEL_LZO=y
|
||||
CONFIG_KERNEL_GZIP=y
|
||||
# CONFIG_KERNEL_BZIP2 is not set
|
||||
# CONFIG_KERNEL_LZMA is not set
|
||||
# CONFIG_KERNEL_LZO is not set
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_SYSVIPC_SYSCTL=y
|
||||
# CONFIG_BSD_PROCESS_ACCT is not set
|
||||
|
||||
#
|
||||
# RCU Subsystem
|
||||
#
|
||||
CONFIG_TREE_RCU=y
|
||||
# CONFIG_TREE_PREEMPT_RCU is not set
|
||||
# CONFIG_TINY_RCU is not set
|
||||
# CONFIG_RCU_TRACE is not set
|
||||
CONFIG_RCU_FANOUT=32
|
||||
# CONFIG_RCU_FANOUT_EXACT is not set
|
||||
# CONFIG_TREE_RCU_TRACE is not set
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
CONFIG_CGROUPS=y
|
||||
# CONFIG_CGROUP_DEBUG is not set
|
||||
# CONFIG_CGROUP_NS is not set
|
||||
# CONFIG_CGROUP_FREEZER is not set
|
||||
# CONFIG_CGROUP_DEVICE is not set
|
||||
# CONFIG_CPUSETS is not set
|
||||
# CONFIG_CGROUP_CPUACCT is not set
|
||||
# CONFIG_RESOURCE_COUNTERS is not set
|
||||
# CONFIG_CGROUP_SCHED is not set
|
||||
CONFIG_SYSFS_DEPRECATED=y
|
||||
CONFIG_SYSFS_DEPRECATED_V2=y
|
||||
CONFIG_RELAY=y
|
||||
CONFIG_NAMESPACES=y
|
||||
# CONFIG_UTS_NS is not set
|
||||
# CONFIG_IPC_NS is not set
|
||||
# CONFIG_USER_NS is not set
|
||||
# CONFIG_PID_NS is not set
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_RD_GZIP=y
|
||||
CONFIG_RD_BZIP2=y
|
||||
CONFIG_RD_LZMA=y
|
||||
CONFIG_RD_LZO=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
CONFIG_SYSCTL=y
|
||||
CONFIG_ANON_INODES=y
|
||||
# CONFIG_EMBEDDED is not set
|
||||
CONFIG_UID16=y
|
||||
CONFIG_SYSCTL_SYSCALL=y
|
||||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_EXTRA_PASS is not set
|
||||
CONFIG_HOTPLUG=y
|
||||
CONFIG_PRINTK=y
|
||||
CONFIG_BUG=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_BASE_FULL=y
|
||||
CONFIG_FUTEX=y
|
||||
CONFIG_EPOLL=y
|
||||
CONFIG_SIGNALFD=y
|
||||
CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_AIO=y
|
||||
CONFIG_HAVE_PERF_EVENTS=y
|
||||
CONFIG_PERF_USE_VMALLOC=y
|
||||
|
||||
#
|
||||
# Kernel Performance Events And Counters
|
||||
#
|
||||
# CONFIG_PERF_EVENTS is not set
|
||||
# CONFIG_PERF_COUNTERS is not set
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_COMPAT_BRK=y
|
||||
CONFIG_SLAB=y
|
||||
# CONFIG_SLUB is not set
|
||||
# CONFIG_SLOB is not set
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=m
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
# CONFIG_KPROBES is not set
|
||||
CONFIG_HAVE_KPROBES=y
|
||||
CONFIG_HAVE_KRETPROBES=y
|
||||
|
||||
#
|
||||
# GCOV-based kernel profiling
|
||||
#
|
||||
# CONFIG_GCOV_KERNEL is not set
|
||||
CONFIG_SLOW_WORK=y
|
||||
# CONFIG_SLOW_WORK_DEBUG is not set
|
||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
||||
CONFIG_SLABINFO=y
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_MODULE_FORCE_UNLOAD=y
|
||||
CONFIG_MODVERSIONS=y
|
||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
|
||||
CONFIG_BLOCK=y
|
||||
CONFIG_LBDAF=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_BLK_DEV_INTEGRITY is not set
|
||||
|
||||
#
|
||||
# IO Schedulers
|
||||
#
|
||||
CONFIG_IOSCHED_NOOP=y
|
||||
CONFIG_IOSCHED_DEADLINE=y
|
||||
CONFIG_IOSCHED_CFQ=m
|
||||
# CONFIG_CFQ_GROUP_IOSCHED is not set
|
||||
CONFIG_DEFAULT_DEADLINE=y
|
||||
# CONFIG_DEFAULT_CFQ is not set
|
||||
# CONFIG_DEFAULT_NOOP is not set
|
||||
CONFIG_DEFAULT_IOSCHED="deadline"
|
||||
# CONFIG_INLINE_SPIN_TRYLOCK is not set
|
||||
# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
|
||||
# CONFIG_INLINE_SPIN_LOCK is not set
|
||||
# CONFIG_INLINE_SPIN_LOCK_BH is not set
|
||||
# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
|
||||
# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
|
||||
CONFIG_INLINE_SPIN_UNLOCK=y
|
||||
# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
|
||||
CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
|
||||
# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
|
||||
# CONFIG_INLINE_READ_TRYLOCK is not set
|
||||
# CONFIG_INLINE_READ_LOCK is not set
|
||||
# CONFIG_INLINE_READ_LOCK_BH is not set
|
||||
# CONFIG_INLINE_READ_LOCK_IRQ is not set
|
||||
# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
|
||||
CONFIG_INLINE_READ_UNLOCK=y
|
||||
# CONFIG_INLINE_READ_UNLOCK_BH is not set
|
||||
CONFIG_INLINE_READ_UNLOCK_IRQ=y
|
||||
# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
|
||||
# CONFIG_INLINE_WRITE_TRYLOCK is not set
|
||||
# CONFIG_INLINE_WRITE_LOCK is not set
|
||||
# CONFIG_INLINE_WRITE_LOCK_BH is not set
|
||||
# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
|
||||
# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
|
||||
CONFIG_INLINE_WRITE_UNLOCK=y
|
||||
# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
|
||||
CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
|
||||
# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
|
||||
# CONFIG_MUTEX_SPIN_ON_OWNER is not set
|
||||
# CONFIG_FREEZER is not set
|
||||
|
||||
#
|
||||
# System Type
|
||||
#
|
||||
CONFIG_MMU=y
|
||||
# CONFIG_ARCH_AAEC2000 is not set
|
||||
# CONFIG_ARCH_INTEGRATOR is not set
|
||||
# CONFIG_ARCH_REALVIEW is not set
|
||||
# CONFIG_ARCH_VERSATILE is not set
|
||||
# CONFIG_ARCH_AT91 is not set
|
||||
# CONFIG_ARCH_BCMRING is not set
|
||||
# CONFIG_ARCH_CLPS711X is not set
|
||||
CONFIG_ARCH_CNS3XXX=y
|
||||
# CONFIG_ARCH_GEMINI is not set
|
||||
# CONFIG_ARCH_EBSA110 is not set
|
||||
# CONFIG_ARCH_EP93XX is not set
|
||||
# CONFIG_ARCH_FOOTBRIDGE is not set
|
||||
# CONFIG_ARCH_MXC is not set
|
||||
# CONFIG_ARCH_STMP3XXX is not set
|
||||
# CONFIG_ARCH_NETX is not set
|
||||
# CONFIG_ARCH_H720X is not set
|
||||
# CONFIG_ARCH_IOP13XX is not set
|
||||
# CONFIG_ARCH_IOP32X is not set
|
||||
# CONFIG_ARCH_IOP33X is not set
|
||||
# CONFIG_ARCH_IXP23XX is not set
|
||||
# CONFIG_ARCH_IXP2000 is not set
|
||||
# CONFIG_ARCH_IXP4XX is not set
|
||||
# CONFIG_ARCH_L7200 is not set
|
||||
# CONFIG_ARCH_DOVE is not set
|
||||
# CONFIG_ARCH_KIRKWOOD is not set
|
||||
# CONFIG_ARCH_LOKI is not set
|
||||
# CONFIG_ARCH_MV78XX0 is not set
|
||||
# CONFIG_ARCH_ORION5X is not set
|
||||
# CONFIG_ARCH_MMP is not set
|
||||
# CONFIG_ARCH_KS8695 is not set
|
||||
# CONFIG_ARCH_NS9XXX is not set
|
||||
# CONFIG_ARCH_W90X900 is not set
|
||||
# CONFIG_ARCH_NUC93X is not set
|
||||
# CONFIG_ARCH_PNX4008 is not set
|
||||
# CONFIG_ARCH_PXA is not set
|
||||
# CONFIG_ARCH_MSM is not set
|
||||
# CONFIG_ARCH_SHMOBILE is not set
|
||||
# CONFIG_ARCH_RPC is not set
|
||||
# CONFIG_ARCH_SA1100 is not set
|
||||
# CONFIG_ARCH_S3C2410 is not set
|
||||
# CONFIG_ARCH_S3C64XX is not set
|
||||
# CONFIG_ARCH_S5P6440 is not set
|
||||
# CONFIG_ARCH_S5P6442 is not set
|
||||
# CONFIG_ARCH_S5PC1XX is not set
|
||||
# CONFIG_ARCH_S5PV210 is not set
|
||||
# CONFIG_ARCH_SHARK is not set
|
||||
# CONFIG_ARCH_LH7A40X is not set
|
||||
# CONFIG_ARCH_U300 is not set
|
||||
# CONFIG_ARCH_U8500 is not set
|
||||
# CONFIG_ARCH_NOMADIK is not set
|
||||
# CONFIG_ARCH_DAVINCI is not set
|
||||
# CONFIG_ARCH_OMAP is not set
|
||||
|
||||
#
|
||||
# CNS3XXX platform type
|
||||
#
|
||||
CONFIG_MACH_CNS3420VB=y
|
||||
|
||||
#
|
||||
# Processor Type
|
||||
#
|
||||
CONFIG_CPU_V6=y
|
||||
# CONFIG_CPU_32v6K is not set
|
||||
CONFIG_CPU_32v6=y
|
||||
CONFIG_CPU_ABRT_EV6=y
|
||||
CONFIG_CPU_PABRT_V6=y
|
||||
CONFIG_CPU_CACHE_V6=y
|
||||
CONFIG_CPU_CACHE_VIPT=y
|
||||
CONFIG_CPU_COPY_V6=y
|
||||
CONFIG_CPU_TLB_V6=y
|
||||
CONFIG_CPU_HAS_ASID=y
|
||||
CONFIG_CPU_CP15=y
|
||||
CONFIG_CPU_CP15_MMU=y
|
||||
|
||||
#
|
||||
# Processor Features
|
||||
#
|
||||
CONFIG_ARM_THUMB=y
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_DISABLE is not set
|
||||
# CONFIG_CPU_BPREDICT_DISABLE is not set
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=5
|
||||
CONFIG_CPU_HAS_PMU=y
|
||||
# CONFIG_ARM_ERRATA_411920 is not set
|
||||
CONFIG_ARM_GIC=y
|
||||
|
||||
#
|
||||
# Bus support
|
||||
#
|
||||
# CONFIG_PCI_SYSCALL is not set
|
||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
|
||||
# CONFIG_PCCARD is not set
|
||||
|
||||
#
|
||||
# Kernel Features
|
||||
#
|
||||
# CONFIG_NO_HZ is not set
|
||||
# CONFIG_HIGH_RES_TIMERS is not set
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_VMSPLIT_3G=y
|
||||
# CONFIG_VMSPLIT_2G is not set
|
||||
# CONFIG_VMSPLIT_1G is not set
|
||||
CONFIG_PAGE_OFFSET=0xC0000000
|
||||
CONFIG_PREEMPT_NONE=y
|
||||
# CONFIG_PREEMPT_VOLUNTARY is not set
|
||||
# CONFIG_PREEMPT is not set
|
||||
CONFIG_HZ=100
|
||||
CONFIG_AEABI=y
|
||||
CONFIG_OABI_COMPAT=y
|
||||
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
|
||||
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
|
||||
# CONFIG_HIGHMEM is not set
|
||||
CONFIG_SELECT_MEMORY_MODEL=y
|
||||
CONFIG_FLATMEM_MANUAL=y
|
||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
|
||||
# CONFIG_SPARSEMEM_MANUAL is not set
|
||||
CONFIG_FLATMEM=y
|
||||
CONFIG_FLAT_NODE_MEM_MAP=y
|
||||
CONFIG_PAGEFLAGS_EXTENDED=y
|
||||
CONFIG_SPLIT_PTLOCK_CPUS=4
|
||||
# CONFIG_PHYS_ADDR_T_64BIT is not set
|
||||
CONFIG_ZONE_DMA_FLAG=0
|
||||
CONFIG_VIRT_TO_BUS=y
|
||||
# CONFIG_KSM is not set
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
|
||||
CONFIG_ALIGNMENT_TRAP=y
|
||||
# CONFIG_UACCESS_WITH_MEMCPY is not set
|
||||
|
||||
#
|
||||
# Boot options
|
||||
#
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CMDLINE="console=ttyS0,38400 mem=128M root=/dev/mmcblk0p1 ro rootwait"
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
# CONFIG_KEXEC is not set
|
||||
|
||||
#
|
||||
# CPU Power Management
|
||||
#
|
||||
# CONFIG_CPU_IDLE is not set
|
||||
|
||||
#
|
||||
# Floating point emulation
|
||||
#
|
||||
|
||||
#
|
||||
# At least one emulation must be selected
|
||||
#
|
||||
# CONFIG_FPE_NWFPE is not set
|
||||
# CONFIG_FPE_FASTFPE is not set
|
||||
# CONFIG_VFP is not set
|
||||
|
||||
#
|
||||
# Userspace binary formats
|
||||
#
|
||||
CONFIG_BINFMT_ELF=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_HAVE_AOUT=y
|
||||
# CONFIG_BINFMT_AOUT is not set
|
||||
# CONFIG_BINFMT_MISC is not set
|
||||
|
||||
#
|
||||
# Power management options
|
||||
#
|
||||
# CONFIG_PM is not set
|
||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
# CONFIG_NET is not set
|
||||
|
||||
#
|
||||
# Device Drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
# CONFIG_DEVTMPFS is not set
|
||||
CONFIG_STANDALONE=y
|
||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
|
||||
CONFIG_FW_LOADER=y
|
||||
# CONFIG_FIRMWARE_IN_KERNEL is not set
|
||||
CONFIG_EXTRA_FIRMWARE=""
|
||||
# CONFIG_SYS_HYPERVISOR is not set
|
||||
CONFIG_MTD=y
|
||||
# CONFIG_MTD_DEBUG is not set
|
||||
# CONFIG_MTD_TESTS is not set
|
||||
# CONFIG_MTD_CONCAT is not set
|
||||
CONFIG_MTD_PARTITIONS=y
|
||||
# CONFIG_MTD_REDBOOT_PARTS is not set
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
# CONFIG_MTD_AFS_PARTS is not set
|
||||
# CONFIG_MTD_AR7_PARTS is not set
|
||||
|
||||
#
|
||||
# User Modules And Translation Layers
|
||||
#
|
||||
CONFIG_MTD_CHAR=y
|
||||
CONFIG_MTD_BLKDEVS=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
# CONFIG_FTL is not set
|
||||
# CONFIG_NFTL is not set
|
||||
# CONFIG_INFTL is not set
|
||||
# CONFIG_RFD_FTL is not set
|
||||
# CONFIG_SSFDC is not set
|
||||
# CONFIG_MTD_OOPS is not set
|
||||
|
||||
#
|
||||
# RAM/ROM/Flash chip drivers
|
||||
#
|
||||
CONFIG_MTD_CFI=y
|
||||
# CONFIG_MTD_JEDECPROBE is not set
|
||||
CONFIG_MTD_GEN_PROBE=y
|
||||
# CONFIG_MTD_CFI_ADV_OPTIONS is not set
|
||||
CONFIG_MTD_MAP_BANK_WIDTH_1=y
|
||||
CONFIG_MTD_MAP_BANK_WIDTH_2=y
|
||||
CONFIG_MTD_MAP_BANK_WIDTH_4=y
|
||||
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
|
||||
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
|
||||
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
|
||||
CONFIG_MTD_CFI_I1=y
|
||||
CONFIG_MTD_CFI_I2=y
|
||||
# CONFIG_MTD_CFI_I4 is not set
|
||||
# CONFIG_MTD_CFI_I8 is not set
|
||||
# CONFIG_MTD_CFI_INTELEXT is not set
|
||||
CONFIG_MTD_CFI_AMDSTD=y
|
||||
# CONFIG_MTD_CFI_STAA is not set
|
||||
CONFIG_MTD_CFI_UTIL=y
|
||||
# CONFIG_MTD_RAM is not set
|
||||
# CONFIG_MTD_ROM is not set
|
||||
# CONFIG_MTD_ABSENT is not set
|
||||
|
||||
#
|
||||
# Mapping drivers for chip access
|
||||
#
|
||||
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
|
||||
CONFIG_MTD_PHYSMAP=y
|
||||
# CONFIG_MTD_PHYSMAP_COMPAT is not set
|
||||
# CONFIG_MTD_ARM_INTEGRATOR is not set
|
||||
# CONFIG_MTD_PLATRAM is not set
|
||||
|
||||
#
|
||||
# Self-contained MTD device drivers
|
||||
#
|
||||
# CONFIG_MTD_SLRAM is not set
|
||||
# CONFIG_MTD_PHRAM is not set
|
||||
# CONFIG_MTD_MTDRAM is not set
|
||||
# CONFIG_MTD_BLOCK2MTD is not set
|
||||
|
||||
#
|
||||
# Disk-On-Chip Device Drivers
|
||||
#
|
||||
# CONFIG_MTD_DOC2000 is not set
|
||||
# CONFIG_MTD_DOC2001 is not set
|
||||
# CONFIG_MTD_DOC2001PLUS is not set
|
||||
# CONFIG_MTD_NAND is not set
|
||||
# CONFIG_MTD_ONENAND is not set
|
||||
|
||||
#
|
||||
# LPDDR flash memory drivers
|
||||
#
|
||||
# CONFIG_MTD_LPDDR is not set
|
||||
|
||||
#
|
||||
# UBI - Unsorted block images
|
||||
#
|
||||
# CONFIG_MTD_UBI is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
CONFIG_BLK_DEV=y
|
||||
# CONFIG_BLK_DEV_COW_COMMON is not set
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
|
||||
|
||||
#
|
||||
# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
|
||||
#
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=16
|
||||
CONFIG_BLK_DEV_RAM_SIZE=20000
|
||||
# CONFIG_BLK_DEV_XIP is not set
|
||||
# CONFIG_CDROM_PKTCDVD is not set
|
||||
# CONFIG_MISC_DEVICES is not set
|
||||
CONFIG_HAVE_IDE=y
|
||||
# CONFIG_IDE is not set
|
||||
|
||||
#
|
||||
# SCSI device support
|
||||
#
|
||||
CONFIG_SCSI_MOD=y
|
||||
# CONFIG_RAID_ATTRS is not set
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_SCSI_DMA=y
|
||||
# CONFIG_SCSI_TGT is not set
|
||||
# CONFIG_SCSI_NETLINK is not set
|
||||
CONFIG_SCSI_PROC_FS=y
|
||||
|
||||
#
|
||||
# SCSI support type (disk, tape, CD-ROM)
|
||||
#
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
# CONFIG_CHR_DEV_ST is not set
|
||||
# CONFIG_CHR_DEV_OSST is not set
|
||||
# CONFIG_BLK_DEV_SR is not set
|
||||
# CONFIG_CHR_DEV_SG is not set
|
||||
# CONFIG_CHR_DEV_SCH is not set
|
||||
# CONFIG_SCSI_MULTI_LUN is not set
|
||||
# CONFIG_SCSI_CONSTANTS is not set
|
||||
# CONFIG_SCSI_LOGGING is not set
|
||||
# CONFIG_SCSI_SCAN_ASYNC is not set
|
||||
CONFIG_SCSI_WAIT_SCAN=m
|
||||
|
||||
#
|
||||
# SCSI Transports
|
||||
#
|
||||
# CONFIG_SCSI_SPI_ATTRS is not set
|
||||
# CONFIG_SCSI_FC_ATTRS is not set
|
||||
# CONFIG_SCSI_SAS_LIBSAS is not set
|
||||
# CONFIG_SCSI_SRP_ATTRS is not set
|
||||
CONFIG_SCSI_LOWLEVEL=y
|
||||
# CONFIG_LIBFC is not set
|
||||
# CONFIG_LIBFCOE is not set
|
||||
# CONFIG_SCSI_DEBUG is not set
|
||||
# CONFIG_SCSI_DH is not set
|
||||
# CONFIG_SCSI_OSD_INITIATOR is not set
|
||||
CONFIG_ATA=y
|
||||
# CONFIG_ATA_NONSTANDARD is not set
|
||||
CONFIG_ATA_VERBOSE_ERROR=y
|
||||
# CONFIG_SATA_PMP is not set
|
||||
# CONFIG_ATA_SFF is not set
|
||||
# CONFIG_MD is not set
|
||||
# CONFIG_PHONE is not set
|
||||
|
||||
#
|
||||
# Input device support
|
||||
#
|
||||
CONFIG_INPUT=y
|
||||
# CONFIG_INPUT_FF_MEMLESS is not set
|
||||
# CONFIG_INPUT_POLLDEV is not set
|
||||
# CONFIG_INPUT_SPARSEKMAP is not set
|
||||
|
||||
#
|
||||
# Userland interfaces
|
||||
#
|
||||
CONFIG_INPUT_MOUSEDEV=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
# CONFIG_INPUT_JOYDEV is not set
|
||||
# CONFIG_INPUT_EVDEV is not set
|
||||
# CONFIG_INPUT_EVBUG is not set
|
||||
|
||||
#
|
||||
# Input Device Drivers
|
||||
#
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_INPUT_JOYSTICK is not set
|
||||
# CONFIG_INPUT_TABLET is not set
|
||||
# CONFIG_INPUT_TOUCHSCREEN is not set
|
||||
# CONFIG_INPUT_MISC is not set
|
||||
|
||||
#
|
||||
# Hardware I/O ports
|
||||
#
|
||||
# CONFIG_SERIO is not set
|
||||
# CONFIG_GAMEPORT is not set
|
||||
|
||||
#
|
||||
# Character devices
|
||||
#
|
||||
CONFIG_VT=y
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
CONFIG_HW_CONSOLE=y
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
CONFIG_DEVKMEM=y
|
||||
# CONFIG_SERIAL_NONSTANDARD is not set
|
||||
|
||||
#
|
||||
# Serial drivers
|
||||
#
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=4
|
||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
|
||||
# CONFIG_SERIAL_8250_EXTENDED is not set
|
||||
|
||||
#
|
||||
# Non-8250 serial port support
|
||||
#
|
||||
CONFIG_SERIAL_CORE=y
|
||||
CONFIG_SERIAL_CORE_CONSOLE=y
|
||||
# CONFIG_SERIAL_TIMBERDALE is not set
|
||||
CONFIG_UNIX98_PTYS=y
|
||||
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
|
||||
CONFIG_LEGACY_PTYS=y
|
||||
CONFIG_LEGACY_PTY_COUNT=16
|
||||
# CONFIG_IPMI_HANDLER is not set
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
# CONFIG_R3964 is not set
|
||||
# CONFIG_RAW_DRIVER is not set
|
||||
# CONFIG_TCG_TPM is not set
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_SPI is not set
|
||||
|
||||
#
|
||||
# PPS support
|
||||
#
|
||||
# CONFIG_PPS is not set
|
||||
# CONFIG_W1 is not set
|
||||
# CONFIG_POWER_SUPPLY is not set
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_THERMAL is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
CONFIG_SSB_POSSIBLE=y
|
||||
|
||||
#
|
||||
# Sonics Silicon Backplane
|
||||
#
|
||||
# CONFIG_SSB is not set
|
||||
|
||||
#
|
||||
# Multifunction device drivers
|
||||
#
|
||||
# CONFIG_MFD_CORE is not set
|
||||
# CONFIG_MFD_SM501 is not set
|
||||
# CONFIG_HTC_PASIC3 is not set
|
||||
# CONFIG_MFD_TMIO is not set
|
||||
# CONFIG_REGULATOR is not set
|
||||
# CONFIG_MEDIA_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Graphics support
|
||||
#
|
||||
# CONFIG_VGASTATE is not set
|
||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
|
||||
# CONFIG_FB is not set
|
||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
# CONFIG_DISPLAY_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Console display driver support
|
||||
#
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
CONFIG_DUMMY_CONSOLE=y
|
||||
# CONFIG_SOUND is not set
|
||||
# CONFIG_HID_SUPPORT is not set
|
||||
# CONFIG_USB_SUPPORT is not set
|
||||
CONFIG_MMC=y
|
||||
# CONFIG_MMC_DEBUG is not set
|
||||
# CONFIG_MMC_UNSAFE_RESUME is not set
|
||||
|
||||
#
|
||||
# MMC/SD/SDIO Card Drivers
|
||||
#
|
||||
CONFIG_MMC_BLOCK=y
|
||||
CONFIG_MMC_BLOCK_BOUNCE=y
|
||||
# CONFIG_SDIO_UART is not set
|
||||
# CONFIG_MMC_TEST is not set
|
||||
|
||||
#
|
||||
# MMC/SD/SDIO Host Controller Drivers
|
||||
#
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_PLTFM=y
|
||||
# CONFIG_MEMSTICK is not set
|
||||
# CONFIG_NEW_LEDS is not set
|
||||
# CONFIG_ACCESSIBILITY is not set
|
||||
CONFIG_RTC_LIB=y
|
||||
# CONFIG_RTC_CLASS is not set
|
||||
# CONFIG_DMADEVICES is not set
|
||||
# CONFIG_AUXDISPLAY is not set
|
||||
# CONFIG_UIO is not set
|
||||
|
||||
#
|
||||
# TI VLYNQ
|
||||
#
|
||||
# CONFIG_STAGING is not set
|
||||
|
||||
#
|
||||
# File systems
|
||||
#
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
# CONFIG_EXT2_FS_POSIX_ACL is not set
|
||||
# CONFIG_EXT2_FS_SECURITY is not set
|
||||
# CONFIG_EXT2_FS_XIP is not set
|
||||
# CONFIG_EXT3_FS is not set
|
||||
# CONFIG_EXT4_FS is not set
|
||||
CONFIG_FS_MBCACHE=y
|
||||
# CONFIG_REISERFS_FS is not set
|
||||
# CONFIG_JFS_FS is not set
|
||||
# CONFIG_FS_POSIX_ACL is not set
|
||||
# CONFIG_XFS_FS is not set
|
||||
# CONFIG_GFS2_FS is not set
|
||||
# CONFIG_BTRFS_FS is not set
|
||||
# CONFIG_NILFS2_FS is not set
|
||||
CONFIG_FILE_LOCKING=y
|
||||
CONFIG_FSNOTIFY=y
|
||||
CONFIG_DNOTIFY=y
|
||||
CONFIG_INOTIFY=y
|
||||
CONFIG_INOTIFY_USER=y
|
||||
# CONFIG_QUOTA is not set
|
||||
# CONFIG_AUTOFS_FS is not set
|
||||
CONFIG_AUTOFS4_FS=y
|
||||
# CONFIG_FUSE_FS is not set
|
||||
|
||||
#
|
||||
# Caches
|
||||
#
|
||||
CONFIG_FSCACHE=y
|
||||
# CONFIG_FSCACHE_STATS is not set
|
||||
# CONFIG_FSCACHE_HISTOGRAM is not set
|
||||
# CONFIG_FSCACHE_DEBUG is not set
|
||||
# CONFIG_FSCACHE_OBJECT_LIST is not set
|
||||
# CONFIG_CACHEFILES is not set
|
||||
|
||||
#
|
||||
# CD-ROM/DVD Filesystems
|
||||
#
|
||||
# CONFIG_ISO9660_FS is not set
|
||||
# CONFIG_UDF_FS is not set
|
||||
|
||||
#
|
||||
# DOS/FAT/NT Filesystems
|
||||
#
|
||||
# CONFIG_MSDOS_FS is not set
|
||||
# CONFIG_VFAT_FS is not set
|
||||
# CONFIG_NTFS_FS is not set
|
||||
|
||||
#
|
||||
# Pseudo filesystems
|
||||
#
|
||||
CONFIG_PROC_FS=y
|
||||
CONFIG_PROC_SYSCTL=y
|
||||
CONFIG_PROC_PAGE_MONITOR=y
|
||||
CONFIG_SYSFS=y
|
||||
CONFIG_TMPFS=y
|
||||
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||
# CONFIG_HUGETLB_PAGE is not set
|
||||
# CONFIG_CONFIGFS_FS is not set
|
||||
CONFIG_MISC_FILESYSTEMS=y
|
||||
# CONFIG_ADFS_FS is not set
|
||||
# CONFIG_AFFS_FS is not set
|
||||
# CONFIG_HFS_FS is not set
|
||||
# CONFIG_HFSPLUS_FS is not set
|
||||
# CONFIG_BEFS_FS is not set
|
||||
# CONFIG_BFS_FS is not set
|
||||
# CONFIG_EFS_FS is not set
|
||||
# CONFIG_JFFS2_FS is not set
|
||||
# CONFIG_LOGFS is not set
|
||||
# CONFIG_CRAMFS is not set
|
||||
# CONFIG_SQUASHFS is not set
|
||||
# CONFIG_VXFS_FS is not set
|
||||
# CONFIG_MINIX_FS is not set
|
||||
# CONFIG_OMFS_FS is not set
|
||||
# CONFIG_HPFS_FS is not set
|
||||
# CONFIG_QNX4FS_FS is not set
|
||||
# CONFIG_ROMFS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
|
||||
#
|
||||
# Partition Types
|
||||
#
|
||||
# CONFIG_PARTITION_ADVANCED is not set
|
||||
CONFIG_MSDOS_PARTITION=y
|
||||
# CONFIG_NLS is not set
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
# CONFIG_PRINTK_TIME is not set
|
||||
# CONFIG_ENABLE_WARN_DEPRECATED is not set
|
||||
# CONFIG_ENABLE_MUST_CHECK is not set
|
||||
CONFIG_FRAME_WARN=1024
|
||||
# CONFIG_MAGIC_SYSRQ is not set
|
||||
# CONFIG_STRIP_ASM_SYMS is not set
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_HEADERS_CHECK is not set
|
||||
# CONFIG_DEBUG_KERNEL is not set
|
||||
CONFIG_DEBUG_BUGVERBOSE=y
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
CONFIG_FRAME_POINTER=y
|
||||
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
|
||||
# CONFIG_LKDTM is not set
|
||||
# CONFIG_LATENCYTOP is not set
|
||||
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||
CONFIG_HAVE_FUNCTION_TRACER=y
|
||||
CONFIG_RING_BUFFER=y
|
||||
CONFIG_RING_BUFFER_ALLOW_SWAP=y
|
||||
CONFIG_TRACING_SUPPORT=y
|
||||
# CONFIG_FTRACE is not set
|
||||
# CONFIG_DYNAMIC_DEBUG is not set
|
||||
# CONFIG_SAMPLES is not set
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_ARM_UNWIND is not set
|
||||
# CONFIG_DEBUG_USER is not set
|
||||
# CONFIG_OC_ETM is not set
|
||||
|
||||
#
|
||||
# Security options
|
||||
#
|
||||
# CONFIG_KEYS is not set
|
||||
# CONFIG_SECURITY is not set
|
||||
# CONFIG_SECURITYFS is not set
|
||||
# CONFIG_DEFAULT_SECURITY_SELINUX is not set
|
||||
# CONFIG_DEFAULT_SECURITY_SMACK is not set
|
||||
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
|
||||
CONFIG_DEFAULT_SECURITY_DAC=y
|
||||
CONFIG_DEFAULT_SECURITY=""
|
||||
# CONFIG_CRYPTO is not set
|
||||
# CONFIG_BINARY_PRINTF is not set
|
||||
|
||||
#
|
||||
# Library routines
|
||||
#
|
||||
CONFIG_BITREVERSE=y
|
||||
CONFIG_GENERIC_FIND_LAST_BIT=y
|
||||
CONFIG_CRC_CCITT=y
|
||||
# CONFIG_CRC16 is not set
|
||||
# CONFIG_CRC_T10DIF is not set
|
||||
# CONFIG_CRC_ITU_T is not set
|
||||
CONFIG_CRC32=y
|
||||
# CONFIG_CRC7 is not set
|
||||
# CONFIG_LIBCRC32C is not set
|
||||
CONFIG_ZLIB_INFLATE=y
|
||||
CONFIG_LZO_DECOMPRESS=y
|
||||
CONFIG_DECOMPRESS_GZIP=y
|
||||
CONFIG_DECOMPRESS_BZIP2=y
|
||||
CONFIG_DECOMPRESS_LZMA=y
|
||||
CONFIG_DECOMPRESS_LZO=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
||||
CONFIG_GENERIC_ATOMIC64=y
|
@ -1,13 +1,14 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.33-rc2
|
||||
# Tue Jan 5 13:55:22 2010
|
||||
# Linux kernel version: 2.6.34-rc5
|
||||
# Wed Apr 28 11:23:19 2010
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_GENERIC_GPIO=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_HAVE_PROC_CPU=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_STACKTRACE_SUPPORT=y
|
||||
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
|
||||
@ -18,6 +19,7 @@ CONFIG_GENERIC_IRQ_PROBE=y
|
||||
CONFIG_RWSEM_GENERIC_SPINLOCK=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_NEED_DMA_MAP_STATE=y
|
||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
|
||||
CONFIG_VECTORS_BASE=0xffff0000
|
||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
|
||||
@ -32,6 +34,12 @@ CONFIG_LOCK_KERNEL=y
|
||||
CONFIG_INIT_ENV_ARG_LIMIT=32
|
||||
CONFIG_LOCALVERSION=""
|
||||
CONFIG_LOCALVERSION_AUTO=y
|
||||
CONFIG_HAVE_KERNEL_GZIP=y
|
||||
CONFIG_HAVE_KERNEL_LZO=y
|
||||
CONFIG_KERNEL_GZIP=y
|
||||
# CONFIG_KERNEL_BZIP2 is not set
|
||||
# CONFIG_KERNEL_LZMA is not set
|
||||
# CONFIG_KERNEL_LZO is not set
|
||||
CONFIG_SWAP=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_SYSVIPC_SYSCTL=y
|
||||
@ -52,7 +60,6 @@ CONFIG_RCU_FANOUT=32
|
||||
# CONFIG_TREE_RCU_TRACE is not set
|
||||
# CONFIG_IKCONFIG is not set
|
||||
CONFIG_LOG_BUF_SHIFT=14
|
||||
# CONFIG_GROUP_SCHED is not set
|
||||
# CONFIG_CGROUPS is not set
|
||||
CONFIG_SYSFS_DEPRECATED=y
|
||||
CONFIG_SYSFS_DEPRECATED_V2=y
|
||||
@ -85,10 +92,14 @@ CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_AIO=y
|
||||
CONFIG_HAVE_PERF_EVENTS=y
|
||||
CONFIG_PERF_USE_VMALLOC=y
|
||||
|
||||
#
|
||||
# Kernel Performance Events And Counters
|
||||
#
|
||||
# CONFIG_PERF_EVENTS is not set
|
||||
# CONFIG_PERF_COUNTERS is not set
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_COMPAT_BRK=y
|
||||
CONFIG_SLAB=y
|
||||
@ -104,6 +115,7 @@ CONFIG_HAVE_CLK=y
|
||||
#
|
||||
# GCOV-based kernel profiling
|
||||
#
|
||||
# CONFIG_GCOV_KERNEL is not set
|
||||
# CONFIG_SLOW_WORK is not set
|
||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
||||
CONFIG_SLABINFO=y
|
||||
@ -170,6 +182,7 @@ CONFIG_MMU=y
|
||||
# CONFIG_ARCH_REALVIEW is not set
|
||||
# CONFIG_ARCH_VERSATILE is not set
|
||||
# CONFIG_ARCH_AT91 is not set
|
||||
# CONFIG_ARCH_BCMRING is not set
|
||||
# CONFIG_ARCH_CLPS711X is not set
|
||||
# CONFIG_ARCH_GEMINI is not set
|
||||
# CONFIG_ARCH_EBSA110 is not set
|
||||
@ -179,7 +192,6 @@ CONFIG_MMU=y
|
||||
# CONFIG_ARCH_STMP3XXX is not set
|
||||
# CONFIG_ARCH_NETX is not set
|
||||
# CONFIG_ARCH_H720X is not set
|
||||
# CONFIG_ARCH_NOMADIK is not set
|
||||
# CONFIG_ARCH_IOP13XX is not set
|
||||
# CONFIG_ARCH_IOP32X is not set
|
||||
# CONFIG_ARCH_IOP33X is not set
|
||||
@ -196,21 +208,26 @@ CONFIG_ARCH_MMP=y
|
||||
# CONFIG_ARCH_KS8695 is not set
|
||||
# CONFIG_ARCH_NS9XXX is not set
|
||||
# CONFIG_ARCH_W90X900 is not set
|
||||
# CONFIG_ARCH_NUC93X is not set
|
||||
# CONFIG_ARCH_PNX4008 is not set
|
||||
# CONFIG_ARCH_PXA is not set
|
||||
# CONFIG_ARCH_MSM is not set
|
||||
# CONFIG_ARCH_SHMOBILE is not set
|
||||
# CONFIG_ARCH_RPC is not set
|
||||
# CONFIG_ARCH_SA1100 is not set
|
||||
# CONFIG_ARCH_S3C2410 is not set
|
||||
# CONFIG_ARCH_S3C64XX is not set
|
||||
# CONFIG_ARCH_S5P6440 is not set
|
||||
# CONFIG_ARCH_S5P6442 is not set
|
||||
# CONFIG_ARCH_S5PC1XX is not set
|
||||
# CONFIG_ARCH_S5PV210 is not set
|
||||
# CONFIG_ARCH_SHARK is not set
|
||||
# CONFIG_ARCH_LH7A40X is not set
|
||||
# CONFIG_ARCH_U300 is not set
|
||||
# CONFIG_ARCH_U8500 is not set
|
||||
# CONFIG_ARCH_NOMADIK is not set
|
||||
# CONFIG_ARCH_DAVINCI is not set
|
||||
# CONFIG_ARCH_OMAP is not set
|
||||
# CONFIG_ARCH_BCMRING is not set
|
||||
# CONFIG_ARCH_U8500 is not set
|
||||
# CONFIG_MACH_TAVOREVB is not set
|
||||
|
||||
#
|
||||
@ -218,8 +235,10 @@ CONFIG_ARCH_MMP=y
|
||||
#
|
||||
# CONFIG_MACH_ASPENITE is not set
|
||||
# CONFIG_MACH_ZYLONITE2 is not set
|
||||
# CONFIG_MACH_AVENGERS_LITE is not set
|
||||
# CONFIG_MACH_TTC_DKB is not set
|
||||
CONFIG_MACH_FLINT=y
|
||||
CONFIG_MACH_MARVELL_JASPER=y
|
||||
CONFIG_CPU_MMP2=y
|
||||
CONFIG_PLAT_PXA=y
|
||||
|
||||
@ -246,7 +265,10 @@ CONFIG_ARM_THUMB=y
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_DISABLE is not set
|
||||
# CONFIG_CPU_BPREDICT_DISABLE is not set
|
||||
CONFIG_OUTER_CACHE=y
|
||||
CONFIG_CACHE_TAUROS2=y
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=5
|
||||
CONFIG_CPU_HAS_PMU=y
|
||||
# CONFIG_ARM_ERRATA_411920 is not set
|
||||
CONFIG_COMMON_CLKDEV=y
|
||||
|
||||
@ -298,7 +320,7 @@ CONFIG_ALIGNMENT_TRAP=y
|
||||
#
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_CMDLINE="root=/dev/nfs rootfstype=nfs nfsroot=192.168.1.100:/nfsroot/ ip=192.168.1.101:192.168.1.100::255.255.255.0::eth0:on console=ttyS0,115200 mem=128M user_debug=255"
|
||||
CONFIG_CMDLINE="root=/dev/nfs rootfstype=nfs nfsroot=192.168.1.100:/nfsroot/ ip=192.168.1.101:192.168.1.100::255.255.255.0::eth0:on console=ttyS2,38400 mem=128M user_debug=255"
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
# CONFIG_KEXEC is not set
|
||||
|
||||
@ -338,7 +360,6 @@ CONFIG_NET=y
|
||||
# Networking options
|
||||
#
|
||||
CONFIG_PACKET=y
|
||||
# CONFIG_PACKET_MMAP is not set
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_XFRM=y
|
||||
# CONFIG_XFRM_USER is not set
|
||||
@ -532,6 +553,7 @@ CONFIG_HAVE_IDE=y
|
||||
#
|
||||
# SCSI device support
|
||||
#
|
||||
CONFIG_SCSI_MOD=y
|
||||
# CONFIG_RAID_ATTRS is not set
|
||||
# CONFIG_SCSI is not set
|
||||
# CONFIG_SCSI_DMA is not set
|
||||
@ -640,6 +662,7 @@ CONFIG_SERIAL_PXA=y
|
||||
CONFIG_SERIAL_PXA_CONSOLE=y
|
||||
CONFIG_SERIAL_CORE=y
|
||||
CONFIG_SERIAL_CORE_CONSOLE=y
|
||||
# CONFIG_SERIAL_TIMBERDALE is not set
|
||||
CONFIG_UNIX98_PTYS=y
|
||||
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
@ -667,6 +690,7 @@ CONFIG_I2C_HELPER_AUTO=y
|
||||
CONFIG_I2C_PXA=y
|
||||
# CONFIG_I2C_PXA_SLAVE is not set
|
||||
# CONFIG_I2C_SIMTEC is not set
|
||||
# CONFIG_I2C_XILINX is not set
|
||||
|
||||
#
|
||||
# External I2C/SMBus adapter drivers
|
||||
@ -679,15 +703,9 @@ CONFIG_I2C_PXA=y
|
||||
#
|
||||
# CONFIG_I2C_PCA_PLATFORM is not set
|
||||
# CONFIG_I2C_STUB is not set
|
||||
|
||||
#
|
||||
# Miscellaneous I2C Chip support
|
||||
#
|
||||
# CONFIG_SENSORS_TSL2550 is not set
|
||||
# CONFIG_I2C_DEBUG_CORE is not set
|
||||
# CONFIG_I2C_DEBUG_ALGO is not set
|
||||
# CONFIG_I2C_DEBUG_BUS is not set
|
||||
# CONFIG_I2C_DEBUG_CHIP is not set
|
||||
# CONFIG_SPI is not set
|
||||
|
||||
#
|
||||
@ -702,13 +720,16 @@ CONFIG_GPIOLIB=y
|
||||
#
|
||||
# Memory mapped GPIO expanders:
|
||||
#
|
||||
# CONFIG_GPIO_IT8761E is not set
|
||||
|
||||
#
|
||||
# I2C GPIO expanders:
|
||||
#
|
||||
# CONFIG_GPIO_MAX7300 is not set
|
||||
# CONFIG_GPIO_MAX732X is not set
|
||||
# CONFIG_GPIO_PCA953X is not set
|
||||
# CONFIG_GPIO_PCF857X is not set
|
||||
# CONFIG_GPIO_ADP5588 is not set
|
||||
|
||||
#
|
||||
# PCI GPIO expanders:
|
||||
@ -737,10 +758,12 @@ CONFIG_SSB_POSSIBLE=y
|
||||
# Multifunction device drivers
|
||||
#
|
||||
CONFIG_MFD_CORE=y
|
||||
# CONFIG_MFD_88PM860X is not set
|
||||
# CONFIG_MFD_SM501 is not set
|
||||
# CONFIG_MFD_ASIC3 is not set
|
||||
# CONFIG_HTC_EGPIO is not set
|
||||
# CONFIG_HTC_PASIC3 is not set
|
||||
# CONFIG_HTC_I2CPLD is not set
|
||||
# CONFIG_TPS65010 is not set
|
||||
# CONFIG_TWL4030_CORE is not set
|
||||
# CONFIG_MFD_TMIO is not set
|
||||
@ -749,24 +772,27 @@ CONFIG_MFD_CORE=y
|
||||
# CONFIG_MFD_TC6393XB is not set
|
||||
# CONFIG_PMIC_DA903X is not set
|
||||
# CONFIG_PMIC_ADP5520 is not set
|
||||
CONFIG_MFD_MAX8925=y
|
||||
# CONFIG_MFD_WM8400 is not set
|
||||
# CONFIG_MFD_WM831X is not set
|
||||
# CONFIG_MFD_WM8350_I2C is not set
|
||||
# CONFIG_MFD_WM8994 is not set
|
||||
# CONFIG_MFD_PCF50633 is not set
|
||||
# CONFIG_AB3100_CORE is not set
|
||||
CONFIG_MFD_88PM8607=y
|
||||
CONFIG_REGULATOR=y
|
||||
# CONFIG_REGULATOR_DEBUG is not set
|
||||
# CONFIG_REGULATOR_DUMMY is not set
|
||||
# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
|
||||
# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
|
||||
# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
|
||||
# CONFIG_REGULATOR_BQ24022 is not set
|
||||
# CONFIG_REGULATOR_MAX1586 is not set
|
||||
CONFIG_REGULATOR_MAX8660=y
|
||||
CONFIG_REGULATOR_MAX8649=y
|
||||
# CONFIG_REGULATOR_MAX8660 is not set
|
||||
CONFIG_REGULATOR_MAX8925=y
|
||||
# CONFIG_REGULATOR_LP3971 is not set
|
||||
# CONFIG_REGULATOR_TPS65023 is not set
|
||||
# CONFIG_REGULATOR_TPS6507X is not set
|
||||
CONFIG_REGULATOR_88PM8607=y
|
||||
# CONFIG_MEDIA_SUPPORT is not set
|
||||
|
||||
#
|
||||
@ -781,6 +807,7 @@ CONFIG_LCD_CLASS_DEVICE=y
|
||||
# CONFIG_LCD_PLATFORM is not set
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_GENERIC=y
|
||||
CONFIG_BACKLIGHT_MAX8925=y
|
||||
|
||||
#
|
||||
# Display device support
|
||||
@ -821,6 +848,7 @@ CONFIG_RTC_INTF_DEV=y
|
||||
# CONFIG_RTC_DRV_DS1374 is not set
|
||||
# CONFIG_RTC_DRV_DS1672 is not set
|
||||
# CONFIG_RTC_DRV_MAX6900 is not set
|
||||
CONFIG_RTC_DRV_MAX8925=y
|
||||
# CONFIG_RTC_DRV_RS5C372 is not set
|
||||
# CONFIG_RTC_DRV_ISL1208 is not set
|
||||
# CONFIG_RTC_DRV_X1205 is not set
|
||||
@ -872,7 +900,6 @@ CONFIG_RTC_INTF_DEV=y
|
||||
# CONFIG_EXT2_FS is not set
|
||||
# CONFIG_EXT3_FS is not set
|
||||
# CONFIG_EXT4_FS is not set
|
||||
CONFIG_EXT4_USE_FOR_EXT23=y
|
||||
# CONFIG_REISERFS_FS is not set
|
||||
# CONFIG_JFS_FS is not set
|
||||
CONFIG_FS_POSIX_ACL=y
|
||||
@ -883,7 +910,7 @@ CONFIG_FS_POSIX_ACL=y
|
||||
# CONFIG_NILFS2_FS is not set
|
||||
CONFIG_FILE_LOCKING=y
|
||||
CONFIG_FSNOTIFY=y
|
||||
CONFIG_DNOTIFY=y
|
||||
# CONFIG_DNOTIFY is not set
|
||||
CONFIG_INOTIFY=y
|
||||
CONFIG_INOTIFY_USER=y
|
||||
# CONFIG_QUOTA is not set
|
||||
@ -940,6 +967,7 @@ CONFIG_JFFS2_ZLIB=y
|
||||
# CONFIG_JFFS2_LZO is not set
|
||||
CONFIG_JFFS2_RTIME=y
|
||||
# CONFIG_JFFS2_RUBIN is not set
|
||||
# CONFIG_LOGFS is not set
|
||||
CONFIG_CRAMFS=y
|
||||
# CONFIG_SQUASHFS is not set
|
||||
# CONFIG_VXFS_FS is not set
|
||||
@ -967,6 +995,7 @@ CONFIG_SUNRPC_GSS=y
|
||||
CONFIG_RPCSEC_GSS_KRB5=y
|
||||
# CONFIG_RPCSEC_GSS_SPKM3 is not set
|
||||
# CONFIG_SMB_FS is not set
|
||||
# CONFIG_CEPH_FS is not set
|
||||
# CONFIG_CIFS is not set
|
||||
# CONFIG_NCP_FS is not set
|
||||
# CONFIG_CODA_FS is not set
|
||||
@ -990,7 +1019,7 @@ CONFIG_FRAME_WARN=1024
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
# CONFIG_STRIP_ASM_SYMS is not set
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
# CONFIG_DEBUG_FS is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_HEADERS_CHECK is not set
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DEBUG_SHIRQ is not set
|
||||
@ -1032,6 +1061,7 @@ CONFIG_DEBUG_MEMORY_INIT=y
|
||||
# CONFIG_BACKTRACE_SELF_TEST is not set
|
||||
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
# CONFIG_LKDTM is not set
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_LATENCYTOP is not set
|
||||
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||
@ -1052,6 +1082,7 @@ CONFIG_BRANCH_PROFILE_NONE=y
|
||||
# CONFIG_KMEMTRACE is not set
|
||||
# CONFIG_WORKQUEUE_TRACER is not set
|
||||
# CONFIG_BLK_DEV_IO_TRACE is not set
|
||||
CONFIG_DYNAMIC_DEBUG=y
|
||||
# CONFIG_SAMPLES is not set
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_KGDB is not set
|
||||
@ -1059,9 +1090,7 @@ CONFIG_ARM_UNWIND=y
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_DEBUG_ERRORS=y
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
CONFIG_DEBUG_LL=y
|
||||
# CONFIG_EARLY_PRINTK is not set
|
||||
# CONFIG_DEBUG_ICEDCC is not set
|
||||
# CONFIG_DEBUG_LL is not set
|
||||
# CONFIG_OC_ETM is not set
|
||||
|
||||
#
|
||||
|
773
arch/arm/configs/spear300_defconfig
Normal file
773
arch/arm/configs/spear300_defconfig
Normal file
@ -0,0 +1,773 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.32
|
||||
# Tue Mar 23 14:36:23 2010
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_GENERIC_GPIO=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_STACKTRACE_SUPPORT=y
|
||||
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
|
||||
CONFIG_LOCKDEP_SUPPORT=y
|
||||
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
|
||||
CONFIG_HARDIRQS_SW_RESEND=y
|
||||
CONFIG_GENERIC_IRQ_PROBE=y
|
||||
CONFIG_RWSEM_GENERIC_SPINLOCK=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
|
||||
CONFIG_VECTORS_BASE=0xffff0000
|
||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
|
||||
CONFIG_CONSTRUCTORS=y
|
||||
|
||||
#
|
||||
# General setup
|
||||
#
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
CONFIG_BROKEN_ON_SMP=y
|
||||
CONFIG_INIT_ENV_ARG_LIMIT=32
|
||||
CONFIG_LOCALVERSION=""
|
||||
CONFIG_LOCALVERSION_AUTO=y
|
||||
CONFIG_SWAP=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_SYSVIPC_SYSCTL=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
|
||||
|
||||
#
|
||||
# RCU Subsystem
|
||||
#
|
||||
CONFIG_TREE_RCU=y
|
||||
# CONFIG_TREE_PREEMPT_RCU is not set
|
||||
# CONFIG_RCU_TRACE is not set
|
||||
CONFIG_RCU_FANOUT=32
|
||||
# CONFIG_RCU_FANOUT_EXACT is not set
|
||||
# CONFIG_TREE_RCU_TRACE is not set
|
||||
# CONFIG_IKCONFIG is not set
|
||||
CONFIG_LOG_BUF_SHIFT=17
|
||||
# CONFIG_GROUP_SCHED is not set
|
||||
# CONFIG_CGROUPS is not set
|
||||
# CONFIG_SYSFS_DEPRECATED_V2 is not set
|
||||
# CONFIG_RELAY is not set
|
||||
CONFIG_NAMESPACES=y
|
||||
# CONFIG_UTS_NS is not set
|
||||
# CONFIG_IPC_NS is not set
|
||||
# CONFIG_USER_NS is not set
|
||||
# CONFIG_PID_NS is not set
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_RD_GZIP=y
|
||||
CONFIG_RD_BZIP2=y
|
||||
CONFIG_RD_LZMA=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
CONFIG_SYSCTL=y
|
||||
CONFIG_ANON_INODES=y
|
||||
# CONFIG_EMBEDDED is not set
|
||||
CONFIG_UID16=y
|
||||
CONFIG_SYSCTL_SYSCALL=y
|
||||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_ALL is not set
|
||||
CONFIG_KALLSYMS_EXTRA_PASS=y
|
||||
CONFIG_HOTPLUG=y
|
||||
CONFIG_PRINTK=y
|
||||
CONFIG_BUG=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_BASE_FULL=y
|
||||
CONFIG_FUTEX=y
|
||||
CONFIG_EPOLL=y
|
||||
CONFIG_SIGNALFD=y
|
||||
CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_AIO=y
|
||||
|
||||
#
|
||||
# Kernel Performance Events And Counters
|
||||
#
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_SLUB_DEBUG=y
|
||||
CONFIG_COMPAT_BRK=y
|
||||
# CONFIG_SLAB is not set
|
||||
CONFIG_SLUB=y
|
||||
# CONFIG_SLOB is not set
|
||||
# CONFIG_PROFILING is not set
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
# CONFIG_KPROBES is not set
|
||||
CONFIG_HAVE_KPROBES=y
|
||||
CONFIG_HAVE_KRETPROBES=y
|
||||
CONFIG_HAVE_CLK=y
|
||||
|
||||
#
|
||||
# GCOV-based kernel profiling
|
||||
#
|
||||
# CONFIG_GCOV_KERNEL is not set
|
||||
# CONFIG_SLOW_WORK is not set
|
||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
||||
CONFIG_SLABINFO=y
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
||||
CONFIG_MODVERSIONS=y
|
||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
|
||||
CONFIG_BLOCK=y
|
||||
CONFIG_LBDAF=y
|
||||
CONFIG_BLK_DEV_BSG=y
|
||||
# CONFIG_BLK_DEV_INTEGRITY is not set
|
||||
|
||||
#
|
||||
# IO Schedulers
|
||||
#
|
||||
CONFIG_IOSCHED_NOOP=y
|
||||
CONFIG_IOSCHED_AS=y
|
||||
CONFIG_IOSCHED_DEADLINE=y
|
||||
CONFIG_IOSCHED_CFQ=y
|
||||
# CONFIG_DEFAULT_AS is not set
|
||||
# CONFIG_DEFAULT_DEADLINE is not set
|
||||
CONFIG_DEFAULT_CFQ=y
|
||||
# CONFIG_DEFAULT_NOOP is not set
|
||||
CONFIG_DEFAULT_IOSCHED="cfq"
|
||||
# CONFIG_FREEZER is not set
|
||||
|
||||
#
|
||||
# System Type
|
||||
#
|
||||
CONFIG_MMU=y
|
||||
# CONFIG_ARCH_AAEC2000 is not set
|
||||
# CONFIG_ARCH_INTEGRATOR is not set
|
||||
# CONFIG_ARCH_REALVIEW is not set
|
||||
# CONFIG_ARCH_VERSATILE is not set
|
||||
# CONFIG_ARCH_AT91 is not set
|
||||
# CONFIG_ARCH_CLPS711X is not set
|
||||
# CONFIG_ARCH_GEMINI is not set
|
||||
# CONFIG_ARCH_EBSA110 is not set
|
||||
# CONFIG_ARCH_EP93XX is not set
|
||||
# CONFIG_ARCH_FOOTBRIDGE is not set
|
||||
# CONFIG_ARCH_MXC is not set
|
||||
# CONFIG_ARCH_STMP3XXX is not set
|
||||
# CONFIG_ARCH_NETX is not set
|
||||
# CONFIG_ARCH_H720X is not set
|
||||
# CONFIG_ARCH_NOMADIK is not set
|
||||
# CONFIG_ARCH_IOP13XX is not set
|
||||
# CONFIG_ARCH_IOP32X is not set
|
||||
# CONFIG_ARCH_IOP33X is not set
|
||||
# CONFIG_ARCH_IXP23XX is not set
|
||||
# CONFIG_ARCH_IXP2000 is not set
|
||||
# CONFIG_ARCH_IXP4XX is not set
|
||||
# CONFIG_ARCH_L7200 is not set
|
||||
# CONFIG_ARCH_KIRKWOOD is not set
|
||||
# CONFIG_ARCH_LOKI is not set
|
||||
# CONFIG_ARCH_MV78XX0 is not set
|
||||
# CONFIG_ARCH_ORION5X is not set
|
||||
# CONFIG_ARCH_MMP is not set
|
||||
# CONFIG_ARCH_KS8695 is not set
|
||||
# CONFIG_ARCH_NS9XXX is not set
|
||||
# CONFIG_ARCH_W90X900 is not set
|
||||
# CONFIG_ARCH_PNX4008 is not set
|
||||
# CONFIG_ARCH_PXA is not set
|
||||
# CONFIG_ARCH_MSM is not set
|
||||
# CONFIG_ARCH_RPC is not set
|
||||
# CONFIG_ARCH_SA1100 is not set
|
||||
# CONFIG_ARCH_S3C2410 is not set
|
||||
# CONFIG_ARCH_S3C64XX is not set
|
||||
# CONFIG_ARCH_S5PC1XX is not set
|
||||
# CONFIG_ARCH_SHARK is not set
|
||||
# CONFIG_ARCH_LH7A40X is not set
|
||||
# CONFIG_ARCH_U300 is not set
|
||||
# CONFIG_ARCH_DAVINCI is not set
|
||||
# CONFIG_ARCH_OMAP is not set
|
||||
# CONFIG_ARCH_BCMRING is not set
|
||||
CONFIG_PLAT_SPEAR=y
|
||||
CONFIG_ARCH_SPEAR3XX=y
|
||||
# CONFIG_ARCH_SPEAR6XX is not set
|
||||
CONFIG_MACH_SPEAR300=y
|
||||
# CONFIG_MACH_SPEAR310 is not set
|
||||
# CONFIG_MACH_SPEAR320 is not set
|
||||
CONFIG_BOARD_SPEAR300_EVB=y
|
||||
|
||||
#
|
||||
# Processor Type
|
||||
#
|
||||
CONFIG_CPU_32=y
|
||||
CONFIG_CPU_ARM926T=y
|
||||
CONFIG_CPU_32v5=y
|
||||
CONFIG_CPU_ABRT_EV5TJ=y
|
||||
CONFIG_CPU_PABRT_LEGACY=y
|
||||
CONFIG_CPU_CACHE_VIVT=y
|
||||
CONFIG_CPU_COPY_V4WB=y
|
||||
CONFIG_CPU_TLB_V4WBI=y
|
||||
CONFIG_CPU_CP15=y
|
||||
CONFIG_CPU_CP15_MMU=y
|
||||
|
||||
#
|
||||
# Processor Features
|
||||
#
|
||||
CONFIG_ARM_THUMB=y
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
|
||||
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=5
|
||||
CONFIG_ARM_VIC=y
|
||||
CONFIG_ARM_VIC_NR=2
|
||||
CONFIG_COMMON_CLKDEV=y
|
||||
|
||||
#
|
||||
# Bus support
|
||||
#
|
||||
CONFIG_ARM_AMBA=y
|
||||
# CONFIG_PCI_SYSCALL is not set
|
||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
|
||||
# CONFIG_PCCARD is not set
|
||||
|
||||
#
|
||||
# Kernel Features
|
||||
#
|
||||
# CONFIG_NO_HZ is not set
|
||||
# CONFIG_HIGH_RES_TIMERS is not set
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_VMSPLIT_3G=y
|
||||
# CONFIG_VMSPLIT_2G is not set
|
||||
# CONFIG_VMSPLIT_1G is not set
|
||||
CONFIG_PAGE_OFFSET=0xC0000000
|
||||
CONFIG_PREEMPT_NONE=y
|
||||
# CONFIG_PREEMPT_VOLUNTARY is not set
|
||||
# CONFIG_PREEMPT is not set
|
||||
CONFIG_HZ=100
|
||||
# CONFIG_AEABI is not set
|
||||
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
|
||||
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
|
||||
# CONFIG_HIGHMEM is not set
|
||||
CONFIG_SELECT_MEMORY_MODEL=y
|
||||
CONFIG_FLATMEM_MANUAL=y
|
||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
|
||||
# CONFIG_SPARSEMEM_MANUAL is not set
|
||||
CONFIG_FLATMEM=y
|
||||
CONFIG_FLAT_NODE_MEM_MAP=y
|
||||
CONFIG_PAGEFLAGS_EXTENDED=y
|
||||
CONFIG_SPLIT_PTLOCK_CPUS=4096
|
||||
# CONFIG_PHYS_ADDR_T_64BIT is not set
|
||||
CONFIG_ZONE_DMA_FLAG=0
|
||||
CONFIG_VIRT_TO_BUS=y
|
||||
CONFIG_HAVE_MLOCK=y
|
||||
CONFIG_HAVE_MLOCKED_PAGE_BIT=y
|
||||
# CONFIG_KSM is not set
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
|
||||
CONFIG_ALIGNMENT_TRAP=y
|
||||
# CONFIG_UACCESS_WITH_MEMCPY is not set
|
||||
|
||||
#
|
||||
# Boot options
|
||||
#
|
||||
CONFIG_ZBOOT_ROM_TEXT=0
|
||||
CONFIG_ZBOOT_ROM_BSS=0
|
||||
CONFIG_CMDLINE=""
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
# CONFIG_KEXEC is not set
|
||||
|
||||
#
|
||||
# CPU Power Management
|
||||
#
|
||||
# CONFIG_CPU_IDLE is not set
|
||||
|
||||
#
|
||||
# Floating point emulation
|
||||
#
|
||||
|
||||
#
|
||||
# At least one emulation must be selected
|
||||
#
|
||||
# CONFIG_FPE_NWFPE is not set
|
||||
# CONFIG_FPE_FASTFPE is not set
|
||||
# CONFIG_VFP is not set
|
||||
|
||||
#
|
||||
# Userspace binary formats
|
||||
#
|
||||
CONFIG_BINFMT_ELF=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_HAVE_AOUT=y
|
||||
# CONFIG_BINFMT_AOUT is not set
|
||||
CONFIG_BINFMT_MISC=y
|
||||
|
||||
#
|
||||
# Power management options
|
||||
#
|
||||
# CONFIG_PM is not set
|
||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
# CONFIG_NET is not set
|
||||
|
||||
#
|
||||
# Device Drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
# CONFIG_DEVTMPFS is not set
|
||||
CONFIG_STANDALONE=y
|
||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
|
||||
CONFIG_FW_LOADER=y
|
||||
CONFIG_FIRMWARE_IN_KERNEL=y
|
||||
CONFIG_EXTRA_FIRMWARE=""
|
||||
# CONFIG_DEBUG_DRIVER is not set
|
||||
# CONFIG_DEBUG_DEVRES is not set
|
||||
# CONFIG_SYS_HYPERVISOR is not set
|
||||
# CONFIG_MTD is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
CONFIG_BLK_DEV=y
|
||||
# CONFIG_BLK_DEV_COW_COMMON is not set
|
||||
# CONFIG_BLK_DEV_LOOP is not set
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=16
|
||||
CONFIG_BLK_DEV_RAM_SIZE=16384
|
||||
# CONFIG_BLK_DEV_XIP is not set
|
||||
# CONFIG_CDROM_PKTCDVD is not set
|
||||
CONFIG_MISC_DEVICES=y
|
||||
# CONFIG_ENCLOSURE_SERVICES is not set
|
||||
# CONFIG_C2PORT is not set
|
||||
|
||||
#
|
||||
# EEPROM support
|
||||
#
|
||||
# CONFIG_EEPROM_93CX6 is not set
|
||||
CONFIG_HAVE_IDE=y
|
||||
# CONFIG_IDE is not set
|
||||
|
||||
#
|
||||
# SCSI device support
|
||||
#
|
||||
# CONFIG_RAID_ATTRS is not set
|
||||
# CONFIG_SCSI is not set
|
||||
# CONFIG_SCSI_DMA is not set
|
||||
# CONFIG_SCSI_NETLINK is not set
|
||||
# CONFIG_ATA is not set
|
||||
# CONFIG_MD is not set
|
||||
# CONFIG_PHONE is not set
|
||||
|
||||
#
|
||||
# Input device support
|
||||
#
|
||||
CONFIG_INPUT=y
|
||||
CONFIG_INPUT_FF_MEMLESS=y
|
||||
# CONFIG_INPUT_POLLDEV is not set
|
||||
|
||||
#
|
||||
# Userland interfaces
|
||||
#
|
||||
CONFIG_INPUT_MOUSEDEV=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
# CONFIG_INPUT_JOYDEV is not set
|
||||
# CONFIG_INPUT_EVDEV is not set
|
||||
# CONFIG_INPUT_EVBUG is not set
|
||||
|
||||
#
|
||||
# Input Device Drivers
|
||||
#
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_INPUT_JOYSTICK is not set
|
||||
# CONFIG_INPUT_TABLET is not set
|
||||
# CONFIG_INPUT_TOUCHSCREEN is not set
|
||||
# CONFIG_INPUT_MISC is not set
|
||||
|
||||
#
|
||||
# Hardware I/O ports
|
||||
#
|
||||
CONFIG_SERIO=y
|
||||
CONFIG_SERIO_SERPORT=y
|
||||
# CONFIG_SERIO_AMBAKMI is not set
|
||||
# CONFIG_SERIO_RAW is not set
|
||||
# CONFIG_GAMEPORT is not set
|
||||
|
||||
#
|
||||
# Character devices
|
||||
#
|
||||
CONFIG_VT=y
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
CONFIG_HW_CONSOLE=y
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
CONFIG_DEVKMEM=y
|
||||
# CONFIG_SERIAL_NONSTANDARD is not set
|
||||
|
||||
#
|
||||
# Serial drivers
|
||||
#
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
|
||||
#
|
||||
# Non-8250 serial port support
|
||||
#
|
||||
# CONFIG_SERIAL_AMBA_PL010 is not set
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_CORE=y
|
||||
CONFIG_SERIAL_CORE_CONSOLE=y
|
||||
CONFIG_UNIX98_PTYS=y
|
||||
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
# CONFIG_IPMI_HANDLER is not set
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
# CONFIG_R3964 is not set
|
||||
CONFIG_RAW_DRIVER=y
|
||||
CONFIG_MAX_RAW_DEVS=8192
|
||||
# CONFIG_TCG_TPM is not set
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_SPI is not set
|
||||
|
||||
#
|
||||
# PPS support
|
||||
#
|
||||
# CONFIG_PPS is not set
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_GPIOLIB=y
|
||||
# CONFIG_DEBUG_GPIO is not set
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
|
||||
#
|
||||
# Memory mapped GPIO expanders:
|
||||
#
|
||||
CONFIG_GPIO_PL061=y
|
||||
|
||||
#
|
||||
# I2C GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# PCI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# SPI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# AC97 GPIO expanders:
|
||||
#
|
||||
# CONFIG_W1 is not set
|
||||
# CONFIG_POWER_SUPPLY is not set
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_THERMAL is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
CONFIG_SSB_POSSIBLE=y
|
||||
|
||||
#
|
||||
# Sonics Silicon Backplane
|
||||
#
|
||||
# CONFIG_SSB is not set
|
||||
|
||||
#
|
||||
# Multifunction device drivers
|
||||
#
|
||||
# CONFIG_MFD_CORE is not set
|
||||
# CONFIG_MFD_SM501 is not set
|
||||
# CONFIG_MFD_ASIC3 is not set
|
||||
# CONFIG_HTC_EGPIO is not set
|
||||
# CONFIG_HTC_PASIC3 is not set
|
||||
# CONFIG_MFD_TMIO is not set
|
||||
# CONFIG_MFD_T7L66XB is not set
|
||||
# CONFIG_MFD_TC6387XB is not set
|
||||
# CONFIG_MFD_TC6393XB is not set
|
||||
# CONFIG_REGULATOR is not set
|
||||
# CONFIG_MEDIA_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Graphics support
|
||||
#
|
||||
# CONFIG_VGASTATE is not set
|
||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
|
||||
# CONFIG_FB is not set
|
||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
# CONFIG_DISPLAY_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Console display driver support
|
||||
#
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
CONFIG_DUMMY_CONSOLE=y
|
||||
# CONFIG_SOUND is not set
|
||||
# CONFIG_HID_SUPPORT is not set
|
||||
# CONFIG_USB_SUPPORT is not set
|
||||
# CONFIG_MMC is not set
|
||||
# CONFIG_MEMSTICK is not set
|
||||
# CONFIG_NEW_LEDS is not set
|
||||
# CONFIG_ACCESSIBILITY is not set
|
||||
CONFIG_RTC_LIB=y
|
||||
# CONFIG_RTC_CLASS is not set
|
||||
# CONFIG_DMADEVICES is not set
|
||||
# CONFIG_AUXDISPLAY is not set
|
||||
# CONFIG_UIO is not set
|
||||
|
||||
#
|
||||
# TI VLYNQ
|
||||
#
|
||||
# CONFIG_STAGING is not set
|
||||
|
||||
#
|
||||
# File systems
|
||||
#
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
# CONFIG_EXT2_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
# CONFIG_EXT2_FS_XIP is not set
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
|
||||
CONFIG_EXT3_FS_XATTR=y
|
||||
# CONFIG_EXT3_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
# CONFIG_EXT4_FS is not set
|
||||
CONFIG_JBD=y
|
||||
# CONFIG_JBD_DEBUG is not set
|
||||
CONFIG_FS_MBCACHE=y
|
||||
# CONFIG_REISERFS_FS is not set
|
||||
# CONFIG_JFS_FS is not set
|
||||
# CONFIG_FS_POSIX_ACL is not set
|
||||
# CONFIG_XFS_FS is not set
|
||||
# CONFIG_GFS2_FS is not set
|
||||
# CONFIG_BTRFS_FS is not set
|
||||
# CONFIG_NILFS2_FS is not set
|
||||
CONFIG_FILE_LOCKING=y
|
||||
CONFIG_FSNOTIFY=y
|
||||
CONFIG_DNOTIFY=y
|
||||
# CONFIG_INOTIFY is not set
|
||||
CONFIG_INOTIFY_USER=y
|
||||
# CONFIG_QUOTA is not set
|
||||
# CONFIG_AUTOFS_FS is not set
|
||||
CONFIG_AUTOFS4_FS=m
|
||||
# CONFIG_FUSE_FS is not set
|
||||
|
||||
#
|
||||
# Caches
|
||||
#
|
||||
# CONFIG_FSCACHE is not set
|
||||
|
||||
#
|
||||
# CD-ROM/DVD Filesystems
|
||||
#
|
||||
# CONFIG_ISO9660_FS is not set
|
||||
# CONFIG_UDF_FS is not set
|
||||
|
||||
#
|
||||
# DOS/FAT/NT Filesystems
|
||||
#
|
||||
CONFIG_FAT_FS=m
|
||||
CONFIG_MSDOS_FS=m
|
||||
CONFIG_VFAT_FS=m
|
||||
CONFIG_FAT_DEFAULT_CODEPAGE=437
|
||||
CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
|
||||
# CONFIG_NTFS_FS is not set
|
||||
|
||||
#
|
||||
# Pseudo filesystems
|
||||
#
|
||||
CONFIG_PROC_FS=y
|
||||
CONFIG_PROC_SYSCTL=y
|
||||
CONFIG_PROC_PAGE_MONITOR=y
|
||||
CONFIG_SYSFS=y
|
||||
CONFIG_TMPFS=y
|
||||
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||
# CONFIG_HUGETLB_PAGE is not set
|
||||
# CONFIG_CONFIGFS_FS is not set
|
||||
CONFIG_MISC_FILESYSTEMS=y
|
||||
# CONFIG_ADFS_FS is not set
|
||||
# CONFIG_AFFS_FS is not set
|
||||
# CONFIG_HFS_FS is not set
|
||||
# CONFIG_HFSPLUS_FS is not set
|
||||
# CONFIG_BEFS_FS is not set
|
||||
# CONFIG_BFS_FS is not set
|
||||
# CONFIG_EFS_FS is not set
|
||||
# CONFIG_SQUASHFS is not set
|
||||
# CONFIG_VXFS_FS is not set
|
||||
# CONFIG_MINIX_FS is not set
|
||||
# CONFIG_OMFS_FS is not set
|
||||
# CONFIG_HPFS_FS is not set
|
||||
# CONFIG_QNX4FS_FS is not set
|
||||
# CONFIG_ROMFS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
|
||||
#
|
||||
# Partition Types
|
||||
#
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
# CONFIG_ACORN_PARTITION is not set
|
||||
# CONFIG_OSF_PARTITION is not set
|
||||
# CONFIG_AMIGA_PARTITION is not set
|
||||
# CONFIG_ATARI_PARTITION is not set
|
||||
# CONFIG_MAC_PARTITION is not set
|
||||
CONFIG_MSDOS_PARTITION=y
|
||||
# CONFIG_BSD_DISKLABEL is not set
|
||||
# CONFIG_MINIX_SUBPARTITION is not set
|
||||
# CONFIG_SOLARIS_X86_PARTITION is not set
|
||||
# CONFIG_UNIXWARE_DISKLABEL is not set
|
||||
# CONFIG_LDM_PARTITION is not set
|
||||
# CONFIG_SGI_PARTITION is not set
|
||||
# CONFIG_ULTRIX_PARTITION is not set
|
||||
# CONFIG_SUN_PARTITION is not set
|
||||
# CONFIG_KARMA_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_SYSV68_PARTITION is not set
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_DEFAULT="utf8"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
# CONFIG_NLS_CODEPAGE_737 is not set
|
||||
# CONFIG_NLS_CODEPAGE_775 is not set
|
||||
# CONFIG_NLS_CODEPAGE_850 is not set
|
||||
# CONFIG_NLS_CODEPAGE_852 is not set
|
||||
# CONFIG_NLS_CODEPAGE_855 is not set
|
||||
# CONFIG_NLS_CODEPAGE_857 is not set
|
||||
# CONFIG_NLS_CODEPAGE_860 is not set
|
||||
# CONFIG_NLS_CODEPAGE_861 is not set
|
||||
# CONFIG_NLS_CODEPAGE_862 is not set
|
||||
# CONFIG_NLS_CODEPAGE_863 is not set
|
||||
# CONFIG_NLS_CODEPAGE_864 is not set
|
||||
# CONFIG_NLS_CODEPAGE_865 is not set
|
||||
# CONFIG_NLS_CODEPAGE_866 is not set
|
||||
# CONFIG_NLS_CODEPAGE_869 is not set
|
||||
# CONFIG_NLS_CODEPAGE_936 is not set
|
||||
# CONFIG_NLS_CODEPAGE_950 is not set
|
||||
# CONFIG_NLS_CODEPAGE_932 is not set
|
||||
# CONFIG_NLS_CODEPAGE_949 is not set
|
||||
# CONFIG_NLS_CODEPAGE_874 is not set
|
||||
# CONFIG_NLS_ISO8859_8 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1250 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1251 is not set
|
||||
CONFIG_NLS_ASCII=m
|
||||
# CONFIG_NLS_ISO8859_1 is not set
|
||||
# CONFIG_NLS_ISO8859_2 is not set
|
||||
# CONFIG_NLS_ISO8859_3 is not set
|
||||
# CONFIG_NLS_ISO8859_4 is not set
|
||||
# CONFIG_NLS_ISO8859_5 is not set
|
||||
# CONFIG_NLS_ISO8859_6 is not set
|
||||
# CONFIG_NLS_ISO8859_7 is not set
|
||||
# CONFIG_NLS_ISO8859_9 is not set
|
||||
# CONFIG_NLS_ISO8859_13 is not set
|
||||
# CONFIG_NLS_ISO8859_14 is not set
|
||||
# CONFIG_NLS_ISO8859_15 is not set
|
||||
# CONFIG_NLS_KOI8_R is not set
|
||||
# CONFIG_NLS_KOI8_U is not set
|
||||
# CONFIG_NLS_UTF8 is not set
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
# CONFIG_PRINTK_TIME is not set
|
||||
CONFIG_ENABLE_WARN_DEPRECATED=y
|
||||
CONFIG_ENABLE_MUST_CHECK=y
|
||||
CONFIG_FRAME_WARN=1024
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
# CONFIG_STRIP_ASM_SYMS is not set
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_HEADERS_CHECK is not set
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DEBUG_SHIRQ is not set
|
||||
CONFIG_DETECT_SOFTLOCKUP=y
|
||||
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
|
||||
CONFIG_DETECT_HUNG_TASK=y
|
||||
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
||||
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
|
||||
CONFIG_SCHED_DEBUG=y
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# CONFIG_TIMER_STATS is not set
|
||||
# CONFIG_DEBUG_OBJECTS is not set
|
||||
# CONFIG_SLUB_DEBUG_ON is not set
|
||||
# CONFIG_SLUB_STATS is not set
|
||||
# CONFIG_DEBUG_KMEMLEAK is not set
|
||||
# CONFIG_DEBUG_RT_MUTEXES is not set
|
||||
# CONFIG_RT_MUTEX_TESTER is not set
|
||||
CONFIG_DEBUG_SPINLOCK=y
|
||||
# CONFIG_DEBUG_MUTEXES is not set
|
||||
# CONFIG_DEBUG_LOCK_ALLOC is not set
|
||||
# CONFIG_PROVE_LOCKING is not set
|
||||
# CONFIG_LOCK_STAT is not set
|
||||
CONFIG_DEBUG_SPINLOCK_SLEEP=y
|
||||
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
|
||||
# CONFIG_DEBUG_KOBJECT is not set
|
||||
CONFIG_DEBUG_BUGVERBOSE=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
# CONFIG_DEBUG_VM is not set
|
||||
# CONFIG_DEBUG_WRITECOUNT is not set
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
# CONFIG_DEBUG_LIST is not set
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
# CONFIG_DEBUG_NOTIFIERS is not set
|
||||
# CONFIG_DEBUG_CREDENTIALS is not set
|
||||
CONFIG_FRAME_POINTER=y
|
||||
# CONFIG_BOOT_PRINTK_DELAY is not set
|
||||
# CONFIG_RCU_TORTURE_TEST is not set
|
||||
CONFIG_RCU_CPU_STALL_DETECTOR=y
|
||||
# CONFIG_BACKTRACE_SELF_TEST is not set
|
||||
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_LATENCYTOP is not set
|
||||
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||
# CONFIG_PAGE_POISONING is not set
|
||||
CONFIG_HAVE_FUNCTION_TRACER=y
|
||||
CONFIG_TRACING_SUPPORT=y
|
||||
CONFIG_FTRACE=y
|
||||
# CONFIG_FUNCTION_TRACER is not set
|
||||
# CONFIG_IRQSOFF_TRACER is not set
|
||||
# CONFIG_SCHED_TRACER is not set
|
||||
# CONFIG_ENABLE_DEFAULT_TRACERS is not set
|
||||
# CONFIG_BOOT_TRACER is not set
|
||||
CONFIG_BRANCH_PROFILE_NONE=y
|
||||
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
|
||||
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
||||
# CONFIG_STACK_TRACER is not set
|
||||
# CONFIG_KMEMTRACE is not set
|
||||
# CONFIG_WORKQUEUE_TRACER is not set
|
||||
# CONFIG_BLK_DEV_IO_TRACE is not set
|
||||
# CONFIG_DYNAMIC_DEBUG is not set
|
||||
# CONFIG_SAMPLES is not set
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_KGDB is not set
|
||||
# CONFIG_DEBUG_USER is not set
|
||||
# CONFIG_DEBUG_ERRORS is not set
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
# CONFIG_DEBUG_LL is not set
|
||||
|
||||
#
|
||||
# Security options
|
||||
#
|
||||
# CONFIG_KEYS is not set
|
||||
# CONFIG_SECURITY is not set
|
||||
# CONFIG_SECURITYFS is not set
|
||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
|
||||
# CONFIG_CRYPTO is not set
|
||||
# CONFIG_BINARY_PRINTF is not set
|
||||
|
||||
#
|
||||
# Library routines
|
||||
#
|
||||
CONFIG_GENERIC_FIND_LAST_BIT=y
|
||||
# CONFIG_CRC_CCITT is not set
|
||||
# CONFIG_CRC16 is not set
|
||||
# CONFIG_CRC_T10DIF is not set
|
||||
# CONFIG_CRC_ITU_T is not set
|
||||
# CONFIG_CRC32 is not set
|
||||
# CONFIG_CRC7 is not set
|
||||
# CONFIG_LIBCRC32C is not set
|
||||
CONFIG_ZLIB_INFLATE=y
|
||||
CONFIG_DECOMPRESS_GZIP=y
|
||||
CONFIG_DECOMPRESS_BZIP2=y
|
||||
CONFIG_DECOMPRESS_LZMA=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
775
arch/arm/configs/spear310_defconfig
Normal file
775
arch/arm/configs/spear310_defconfig
Normal file
@ -0,0 +1,775 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.32
|
||||
# Tue Mar 23 14:37:01 2010
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_GENERIC_GPIO=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_STACKTRACE_SUPPORT=y
|
||||
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
|
||||
CONFIG_LOCKDEP_SUPPORT=y
|
||||
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
|
||||
CONFIG_HARDIRQS_SW_RESEND=y
|
||||
CONFIG_GENERIC_IRQ_PROBE=y
|
||||
CONFIG_RWSEM_GENERIC_SPINLOCK=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
|
||||
CONFIG_VECTORS_BASE=0xffff0000
|
||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
|
||||
CONFIG_CONSTRUCTORS=y
|
||||
|
||||
#
|
||||
# General setup
|
||||
#
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
CONFIG_BROKEN_ON_SMP=y
|
||||
CONFIG_INIT_ENV_ARG_LIMIT=32
|
||||
CONFIG_LOCALVERSION=""
|
||||
CONFIG_LOCALVERSION_AUTO=y
|
||||
CONFIG_SWAP=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_SYSVIPC_SYSCTL=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
|
||||
|
||||
#
|
||||
# RCU Subsystem
|
||||
#
|
||||
CONFIG_TREE_RCU=y
|
||||
# CONFIG_TREE_PREEMPT_RCU is not set
|
||||
# CONFIG_RCU_TRACE is not set
|
||||
CONFIG_RCU_FANOUT=32
|
||||
# CONFIG_RCU_FANOUT_EXACT is not set
|
||||
# CONFIG_TREE_RCU_TRACE is not set
|
||||
# CONFIG_IKCONFIG is not set
|
||||
CONFIG_LOG_BUF_SHIFT=17
|
||||
# CONFIG_GROUP_SCHED is not set
|
||||
# CONFIG_CGROUPS is not set
|
||||
# CONFIG_SYSFS_DEPRECATED_V2 is not set
|
||||
# CONFIG_RELAY is not set
|
||||
CONFIG_NAMESPACES=y
|
||||
# CONFIG_UTS_NS is not set
|
||||
# CONFIG_IPC_NS is not set
|
||||
# CONFIG_USER_NS is not set
|
||||
# CONFIG_PID_NS is not set
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_RD_GZIP=y
|
||||
CONFIG_RD_BZIP2=y
|
||||
CONFIG_RD_LZMA=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
CONFIG_SYSCTL=y
|
||||
CONFIG_ANON_INODES=y
|
||||
# CONFIG_EMBEDDED is not set
|
||||
CONFIG_UID16=y
|
||||
CONFIG_SYSCTL_SYSCALL=y
|
||||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_ALL is not set
|
||||
CONFIG_KALLSYMS_EXTRA_PASS=y
|
||||
CONFIG_HOTPLUG=y
|
||||
CONFIG_PRINTK=y
|
||||
CONFIG_BUG=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_BASE_FULL=y
|
||||
CONFIG_FUTEX=y
|
||||
CONFIG_EPOLL=y
|
||||
CONFIG_SIGNALFD=y
|
||||
CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_AIO=y
|
||||
|
||||
#
|
||||
# Kernel Performance Events And Counters
|
||||
#
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_SLUB_DEBUG=y
|
||||
CONFIG_COMPAT_BRK=y
|
||||
# CONFIG_SLAB is not set
|
||||
CONFIG_SLUB=y
|
||||
# CONFIG_SLOB is not set
|
||||
# CONFIG_PROFILING is not set
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
# CONFIG_KPROBES is not set
|
||||
CONFIG_HAVE_KPROBES=y
|
||||
CONFIG_HAVE_KRETPROBES=y
|
||||
CONFIG_HAVE_CLK=y
|
||||
|
||||
#
|
||||
# GCOV-based kernel profiling
|
||||
#
|
||||
# CONFIG_GCOV_KERNEL is not set
|
||||
# CONFIG_SLOW_WORK is not set
|
||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
||||
CONFIG_SLABINFO=y
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
||||
CONFIG_MODVERSIONS=y
|
||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
|
||||
CONFIG_BLOCK=y
|
||||
CONFIG_LBDAF=y
|
||||
CONFIG_BLK_DEV_BSG=y
|
||||
# CONFIG_BLK_DEV_INTEGRITY is not set
|
||||
|
||||
#
|
||||
# IO Schedulers
|
||||
#
|
||||
CONFIG_IOSCHED_NOOP=y
|
||||
CONFIG_IOSCHED_AS=y
|
||||
CONFIG_IOSCHED_DEADLINE=y
|
||||
CONFIG_IOSCHED_CFQ=y
|
||||
# CONFIG_DEFAULT_AS is not set
|
||||
# CONFIG_DEFAULT_DEADLINE is not set
|
||||
CONFIG_DEFAULT_CFQ=y
|
||||
# CONFIG_DEFAULT_NOOP is not set
|
||||
CONFIG_DEFAULT_IOSCHED="cfq"
|
||||
# CONFIG_FREEZER is not set
|
||||
|
||||
#
|
||||
# System Type
|
||||
#
|
||||
CONFIG_MMU=y
|
||||
# CONFIG_ARCH_AAEC2000 is not set
|
||||
# CONFIG_ARCH_INTEGRATOR is not set
|
||||
# CONFIG_ARCH_REALVIEW is not set
|
||||
# CONFIG_ARCH_VERSATILE is not set
|
||||
# CONFIG_ARCH_AT91 is not set
|
||||
# CONFIG_ARCH_CLPS711X is not set
|
||||
# CONFIG_ARCH_GEMINI is not set
|
||||
# CONFIG_ARCH_EBSA110 is not set
|
||||
# CONFIG_ARCH_EP93XX is not set
|
||||
# CONFIG_ARCH_FOOTBRIDGE is not set
|
||||
# CONFIG_ARCH_MXC is not set
|
||||
# CONFIG_ARCH_STMP3XXX is not set
|
||||
# CONFIG_ARCH_NETX is not set
|
||||
# CONFIG_ARCH_H720X is not set
|
||||
# CONFIG_ARCH_NOMADIK is not set
|
||||
# CONFIG_ARCH_IOP13XX is not set
|
||||
# CONFIG_ARCH_IOP32X is not set
|
||||
# CONFIG_ARCH_IOP33X is not set
|
||||
# CONFIG_ARCH_IXP23XX is not set
|
||||
# CONFIG_ARCH_IXP2000 is not set
|
||||
# CONFIG_ARCH_IXP4XX is not set
|
||||
# CONFIG_ARCH_L7200 is not set
|
||||
# CONFIG_ARCH_KIRKWOOD is not set
|
||||
# CONFIG_ARCH_LOKI is not set
|
||||
# CONFIG_ARCH_MV78XX0 is not set
|
||||
# CONFIG_ARCH_ORION5X is not set
|
||||
# CONFIG_ARCH_MMP is not set
|
||||
# CONFIG_ARCH_KS8695 is not set
|
||||
# CONFIG_ARCH_NS9XXX is not set
|
||||
# CONFIG_ARCH_W90X900 is not set
|
||||
# CONFIG_ARCH_PNX4008 is not set
|
||||
# CONFIG_ARCH_PXA is not set
|
||||
# CONFIG_ARCH_MSM is not set
|
||||
# CONFIG_ARCH_RPC is not set
|
||||
# CONFIG_ARCH_SA1100 is not set
|
||||
# CONFIG_ARCH_S3C2410 is not set
|
||||
# CONFIG_ARCH_S3C64XX is not set
|
||||
# CONFIG_ARCH_S5PC1XX is not set
|
||||
# CONFIG_ARCH_SHARK is not set
|
||||
# CONFIG_ARCH_LH7A40X is not set
|
||||
# CONFIG_ARCH_U300 is not set
|
||||
# CONFIG_ARCH_DAVINCI is not set
|
||||
# CONFIG_ARCH_OMAP is not set
|
||||
# CONFIG_ARCH_BCMRING is not set
|
||||
CONFIG_PLAT_SPEAR=y
|
||||
CONFIG_ARCH_SPEAR3XX=y
|
||||
# CONFIG_ARCH_SPEAR6XX is not set
|
||||
# CONFIG_MACH_SPEAR300 is not set
|
||||
CONFIG_MACH_SPEAR310=y
|
||||
# CONFIG_MACH_SPEAR320 is not set
|
||||
# CONFIG_BOARD_SPEAR300_EVB is not set
|
||||
CONFIG_BOARD_SPEAR310_EVB=y
|
||||
|
||||
#
|
||||
# Processor Type
|
||||
#
|
||||
CONFIG_CPU_32=y
|
||||
CONFIG_CPU_ARM926T=y
|
||||
CONFIG_CPU_32v5=y
|
||||
CONFIG_CPU_ABRT_EV5TJ=y
|
||||
CONFIG_CPU_PABRT_LEGACY=y
|
||||
CONFIG_CPU_CACHE_VIVT=y
|
||||
CONFIG_CPU_COPY_V4WB=y
|
||||
CONFIG_CPU_TLB_V4WBI=y
|
||||
CONFIG_CPU_CP15=y
|
||||
CONFIG_CPU_CP15_MMU=y
|
||||
|
||||
#
|
||||
# Processor Features
|
||||
#
|
||||
CONFIG_ARM_THUMB=y
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
|
||||
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=5
|
||||
CONFIG_ARM_VIC=y
|
||||
CONFIG_ARM_VIC_NR=2
|
||||
CONFIG_COMMON_CLKDEV=y
|
||||
|
||||
#
|
||||
# Bus support
|
||||
#
|
||||
CONFIG_ARM_AMBA=y
|
||||
# CONFIG_PCI_SYSCALL is not set
|
||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
|
||||
# CONFIG_PCCARD is not set
|
||||
|
||||
#
|
||||
# Kernel Features
|
||||
#
|
||||
# CONFIG_NO_HZ is not set
|
||||
# CONFIG_HIGH_RES_TIMERS is not set
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_VMSPLIT_3G=y
|
||||
# CONFIG_VMSPLIT_2G is not set
|
||||
# CONFIG_VMSPLIT_1G is not set
|
||||
CONFIG_PAGE_OFFSET=0xC0000000
|
||||
CONFIG_PREEMPT_NONE=y
|
||||
# CONFIG_PREEMPT_VOLUNTARY is not set
|
||||
# CONFIG_PREEMPT is not set
|
||||
CONFIG_HZ=100
|
||||
# CONFIG_AEABI is not set
|
||||
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
|
||||
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
|
||||
# CONFIG_HIGHMEM is not set
|
||||
CONFIG_SELECT_MEMORY_MODEL=y
|
||||
CONFIG_FLATMEM_MANUAL=y
|
||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
|
||||
# CONFIG_SPARSEMEM_MANUAL is not set
|
||||
CONFIG_FLATMEM=y
|
||||
CONFIG_FLAT_NODE_MEM_MAP=y
|
||||
CONFIG_PAGEFLAGS_EXTENDED=y
|
||||
CONFIG_SPLIT_PTLOCK_CPUS=4096
|
||||
# CONFIG_PHYS_ADDR_T_64BIT is not set
|
||||
CONFIG_ZONE_DMA_FLAG=0
|
||||
CONFIG_VIRT_TO_BUS=y
|
||||
CONFIG_HAVE_MLOCK=y
|
||||
CONFIG_HAVE_MLOCKED_PAGE_BIT=y
|
||||
# CONFIG_KSM is not set
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
|
||||
CONFIG_ALIGNMENT_TRAP=y
|
||||
# CONFIG_UACCESS_WITH_MEMCPY is not set
|
||||
|
||||
#
|
||||
# Boot options
|
||||
#
|
||||
CONFIG_ZBOOT_ROM_TEXT=0
|
||||
CONFIG_ZBOOT_ROM_BSS=0
|
||||
CONFIG_CMDLINE=""
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
# CONFIG_KEXEC is not set
|
||||
|
||||
#
|
||||
# CPU Power Management
|
||||
#
|
||||
# CONFIG_CPU_IDLE is not set
|
||||
|
||||
#
|
||||
# Floating point emulation
|
||||
#
|
||||
|
||||
#
|
||||
# At least one emulation must be selected
|
||||
#
|
||||
# CONFIG_FPE_NWFPE is not set
|
||||
# CONFIG_FPE_FASTFPE is not set
|
||||
# CONFIG_VFP is not set
|
||||
|
||||
#
|
||||
# Userspace binary formats
|
||||
#
|
||||
CONFIG_BINFMT_ELF=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_HAVE_AOUT=y
|
||||
# CONFIG_BINFMT_AOUT is not set
|
||||
CONFIG_BINFMT_MISC=y
|
||||
|
||||
#
|
||||
# Power management options
|
||||
#
|
||||
# CONFIG_PM is not set
|
||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
# CONFIG_NET is not set
|
||||
|
||||
#
|
||||
# Device Drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
# CONFIG_DEVTMPFS is not set
|
||||
CONFIG_STANDALONE=y
|
||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
|
||||
CONFIG_FW_LOADER=y
|
||||
CONFIG_FIRMWARE_IN_KERNEL=y
|
||||
CONFIG_EXTRA_FIRMWARE=""
|
||||
# CONFIG_DEBUG_DRIVER is not set
|
||||
# CONFIG_DEBUG_DEVRES is not set
|
||||
# CONFIG_SYS_HYPERVISOR is not set
|
||||
# CONFIG_MTD is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
CONFIG_BLK_DEV=y
|
||||
# CONFIG_BLK_DEV_COW_COMMON is not set
|
||||
# CONFIG_BLK_DEV_LOOP is not set
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=16
|
||||
CONFIG_BLK_DEV_RAM_SIZE=16384
|
||||
# CONFIG_BLK_DEV_XIP is not set
|
||||
# CONFIG_CDROM_PKTCDVD is not set
|
||||
# CONFIG_MG_DISK is not set
|
||||
CONFIG_MISC_DEVICES=y
|
||||
# CONFIG_ENCLOSURE_SERVICES is not set
|
||||
# CONFIG_C2PORT is not set
|
||||
|
||||
#
|
||||
# EEPROM support
|
||||
#
|
||||
# CONFIG_EEPROM_93CX6 is not set
|
||||
CONFIG_HAVE_IDE=y
|
||||
# CONFIG_IDE is not set
|
||||
|
||||
#
|
||||
# SCSI device support
|
||||
#
|
||||
# CONFIG_RAID_ATTRS is not set
|
||||
# CONFIG_SCSI is not set
|
||||
# CONFIG_SCSI_DMA is not set
|
||||
# CONFIG_SCSI_NETLINK is not set
|
||||
# CONFIG_ATA is not set
|
||||
# CONFIG_MD is not set
|
||||
# CONFIG_PHONE is not set
|
||||
|
||||
#
|
||||
# Input device support
|
||||
#
|
||||
CONFIG_INPUT=y
|
||||
CONFIG_INPUT_FF_MEMLESS=y
|
||||
# CONFIG_INPUT_POLLDEV is not set
|
||||
|
||||
#
|
||||
# Userland interfaces
|
||||
#
|
||||
CONFIG_INPUT_MOUSEDEV=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
# CONFIG_INPUT_JOYDEV is not set
|
||||
# CONFIG_INPUT_EVDEV is not set
|
||||
# CONFIG_INPUT_EVBUG is not set
|
||||
|
||||
#
|
||||
# Input Device Drivers
|
||||
#
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_INPUT_JOYSTICK is not set
|
||||
# CONFIG_INPUT_TABLET is not set
|
||||
# CONFIG_INPUT_TOUCHSCREEN is not set
|
||||
# CONFIG_INPUT_MISC is not set
|
||||
|
||||
#
|
||||
# Hardware I/O ports
|
||||
#
|
||||
CONFIG_SERIO=y
|
||||
CONFIG_SERIO_SERPORT=y
|
||||
# CONFIG_SERIO_AMBAKMI is not set
|
||||
# CONFIG_SERIO_RAW is not set
|
||||
# CONFIG_GAMEPORT is not set
|
||||
|
||||
#
|
||||
# Character devices
|
||||
#
|
||||
CONFIG_VT=y
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
CONFIG_HW_CONSOLE=y
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
CONFIG_DEVKMEM=y
|
||||
# CONFIG_SERIAL_NONSTANDARD is not set
|
||||
|
||||
#
|
||||
# Serial drivers
|
||||
#
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
|
||||
#
|
||||
# Non-8250 serial port support
|
||||
#
|
||||
# CONFIG_SERIAL_AMBA_PL010 is not set
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_CORE=y
|
||||
CONFIG_SERIAL_CORE_CONSOLE=y
|
||||
CONFIG_UNIX98_PTYS=y
|
||||
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
# CONFIG_IPMI_HANDLER is not set
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
# CONFIG_R3964 is not set
|
||||
CONFIG_RAW_DRIVER=y
|
||||
CONFIG_MAX_RAW_DEVS=8192
|
||||
# CONFIG_TCG_TPM is not set
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_SPI is not set
|
||||
|
||||
#
|
||||
# PPS support
|
||||
#
|
||||
# CONFIG_PPS is not set
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_GPIOLIB=y
|
||||
# CONFIG_DEBUG_GPIO is not set
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
|
||||
#
|
||||
# Memory mapped GPIO expanders:
|
||||
#
|
||||
CONFIG_GPIO_PL061=y
|
||||
|
||||
#
|
||||
# I2C GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# PCI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# SPI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# AC97 GPIO expanders:
|
||||
#
|
||||
# CONFIG_W1 is not set
|
||||
# CONFIG_POWER_SUPPLY is not set
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_THERMAL is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
CONFIG_SSB_POSSIBLE=y
|
||||
|
||||
#
|
||||
# Sonics Silicon Backplane
|
||||
#
|
||||
# CONFIG_SSB is not set
|
||||
|
||||
#
|
||||
# Multifunction device drivers
|
||||
#
|
||||
# CONFIG_MFD_CORE is not set
|
||||
# CONFIG_MFD_SM501 is not set
|
||||
# CONFIG_MFD_ASIC3 is not set
|
||||
# CONFIG_HTC_EGPIO is not set
|
||||
# CONFIG_HTC_PASIC3 is not set
|
||||
# CONFIG_MFD_TMIO is not set
|
||||
# CONFIG_MFD_T7L66XB is not set
|
||||
# CONFIG_MFD_TC6387XB is not set
|
||||
# CONFIG_MFD_TC6393XB is not set
|
||||
# CONFIG_REGULATOR is not set
|
||||
# CONFIG_MEDIA_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Graphics support
|
||||
#
|
||||
# CONFIG_VGASTATE is not set
|
||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
|
||||
# CONFIG_FB is not set
|
||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
# CONFIG_DISPLAY_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Console display driver support
|
||||
#
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
CONFIG_DUMMY_CONSOLE=y
|
||||
# CONFIG_SOUND is not set
|
||||
# CONFIG_HID_SUPPORT is not set
|
||||
# CONFIG_USB_SUPPORT is not set
|
||||
# CONFIG_MMC is not set
|
||||
# CONFIG_MEMSTICK is not set
|
||||
# CONFIG_NEW_LEDS is not set
|
||||
# CONFIG_ACCESSIBILITY is not set
|
||||
CONFIG_RTC_LIB=y
|
||||
# CONFIG_RTC_CLASS is not set
|
||||
# CONFIG_DMADEVICES is not set
|
||||
# CONFIG_AUXDISPLAY is not set
|
||||
# CONFIG_UIO is not set
|
||||
|
||||
#
|
||||
# TI VLYNQ
|
||||
#
|
||||
# CONFIG_STAGING is not set
|
||||
|
||||
#
|
||||
# File systems
|
||||
#
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
# CONFIG_EXT2_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
# CONFIG_EXT2_FS_XIP is not set
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
|
||||
CONFIG_EXT3_FS_XATTR=y
|
||||
# CONFIG_EXT3_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
# CONFIG_EXT4_FS is not set
|
||||
CONFIG_JBD=y
|
||||
# CONFIG_JBD_DEBUG is not set
|
||||
CONFIG_FS_MBCACHE=y
|
||||
# CONFIG_REISERFS_FS is not set
|
||||
# CONFIG_JFS_FS is not set
|
||||
# CONFIG_FS_POSIX_ACL is not set
|
||||
# CONFIG_XFS_FS is not set
|
||||
# CONFIG_GFS2_FS is not set
|
||||
# CONFIG_BTRFS_FS is not set
|
||||
# CONFIG_NILFS2_FS is not set
|
||||
CONFIG_FILE_LOCKING=y
|
||||
CONFIG_FSNOTIFY=y
|
||||
CONFIG_DNOTIFY=y
|
||||
# CONFIG_INOTIFY is not set
|
||||
CONFIG_INOTIFY_USER=y
|
||||
# CONFIG_QUOTA is not set
|
||||
# CONFIG_AUTOFS_FS is not set
|
||||
CONFIG_AUTOFS4_FS=m
|
||||
# CONFIG_FUSE_FS is not set
|
||||
|
||||
#
|
||||
# Caches
|
||||
#
|
||||
# CONFIG_FSCACHE is not set
|
||||
|
||||
#
|
||||
# CD-ROM/DVD Filesystems
|
||||
#
|
||||
# CONFIG_ISO9660_FS is not set
|
||||
# CONFIG_UDF_FS is not set
|
||||
|
||||
#
|
||||
# DOS/FAT/NT Filesystems
|
||||
#
|
||||
CONFIG_FAT_FS=m
|
||||
CONFIG_MSDOS_FS=m
|
||||
CONFIG_VFAT_FS=m
|
||||
CONFIG_FAT_DEFAULT_CODEPAGE=437
|
||||
CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
|
||||
# CONFIG_NTFS_FS is not set
|
||||
|
||||
#
|
||||
# Pseudo filesystems
|
||||
#
|
||||
CONFIG_PROC_FS=y
|
||||
CONFIG_PROC_SYSCTL=y
|
||||
CONFIG_PROC_PAGE_MONITOR=y
|
||||
CONFIG_SYSFS=y
|
||||
CONFIG_TMPFS=y
|
||||
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||
# CONFIG_HUGETLB_PAGE is not set
|
||||
# CONFIG_CONFIGFS_FS is not set
|
||||
CONFIG_MISC_FILESYSTEMS=y
|
||||
# CONFIG_ADFS_FS is not set
|
||||
# CONFIG_AFFS_FS is not set
|
||||
# CONFIG_HFS_FS is not set
|
||||
# CONFIG_HFSPLUS_FS is not set
|
||||
# CONFIG_BEFS_FS is not set
|
||||
# CONFIG_BFS_FS is not set
|
||||
# CONFIG_EFS_FS is not set
|
||||
# CONFIG_SQUASHFS is not set
|
||||
# CONFIG_VXFS_FS is not set
|
||||
# CONFIG_MINIX_FS is not set
|
||||
# CONFIG_OMFS_FS is not set
|
||||
# CONFIG_HPFS_FS is not set
|
||||
# CONFIG_QNX4FS_FS is not set
|
||||
# CONFIG_ROMFS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
|
||||
#
|
||||
# Partition Types
|
||||
#
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
# CONFIG_ACORN_PARTITION is not set
|
||||
# CONFIG_OSF_PARTITION is not set
|
||||
# CONFIG_AMIGA_PARTITION is not set
|
||||
# CONFIG_ATARI_PARTITION is not set
|
||||
# CONFIG_MAC_PARTITION is not set
|
||||
CONFIG_MSDOS_PARTITION=y
|
||||
# CONFIG_BSD_DISKLABEL is not set
|
||||
# CONFIG_MINIX_SUBPARTITION is not set
|
||||
# CONFIG_SOLARIS_X86_PARTITION is not set
|
||||
# CONFIG_UNIXWARE_DISKLABEL is not set
|
||||
# CONFIG_LDM_PARTITION is not set
|
||||
# CONFIG_SGI_PARTITION is not set
|
||||
# CONFIG_ULTRIX_PARTITION is not set
|
||||
# CONFIG_SUN_PARTITION is not set
|
||||
# CONFIG_KARMA_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_SYSV68_PARTITION is not set
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_DEFAULT="utf8"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
# CONFIG_NLS_CODEPAGE_737 is not set
|
||||
# CONFIG_NLS_CODEPAGE_775 is not set
|
||||
# CONFIG_NLS_CODEPAGE_850 is not set
|
||||
# CONFIG_NLS_CODEPAGE_852 is not set
|
||||
# CONFIG_NLS_CODEPAGE_855 is not set
|
||||
# CONFIG_NLS_CODEPAGE_857 is not set
|
||||
# CONFIG_NLS_CODEPAGE_860 is not set
|
||||
# CONFIG_NLS_CODEPAGE_861 is not set
|
||||
# CONFIG_NLS_CODEPAGE_862 is not set
|
||||
# CONFIG_NLS_CODEPAGE_863 is not set
|
||||
# CONFIG_NLS_CODEPAGE_864 is not set
|
||||
# CONFIG_NLS_CODEPAGE_865 is not set
|
||||
# CONFIG_NLS_CODEPAGE_866 is not set
|
||||
# CONFIG_NLS_CODEPAGE_869 is not set
|
||||
# CONFIG_NLS_CODEPAGE_936 is not set
|
||||
# CONFIG_NLS_CODEPAGE_950 is not set
|
||||
# CONFIG_NLS_CODEPAGE_932 is not set
|
||||
# CONFIG_NLS_CODEPAGE_949 is not set
|
||||
# CONFIG_NLS_CODEPAGE_874 is not set
|
||||
# CONFIG_NLS_ISO8859_8 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1250 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1251 is not set
|
||||
CONFIG_NLS_ASCII=m
|
||||
# CONFIG_NLS_ISO8859_1 is not set
|
||||
# CONFIG_NLS_ISO8859_2 is not set
|
||||
# CONFIG_NLS_ISO8859_3 is not set
|
||||
# CONFIG_NLS_ISO8859_4 is not set
|
||||
# CONFIG_NLS_ISO8859_5 is not set
|
||||
# CONFIG_NLS_ISO8859_6 is not set
|
||||
# CONFIG_NLS_ISO8859_7 is not set
|
||||
# CONFIG_NLS_ISO8859_9 is not set
|
||||
# CONFIG_NLS_ISO8859_13 is not set
|
||||
# CONFIG_NLS_ISO8859_14 is not set
|
||||
# CONFIG_NLS_ISO8859_15 is not set
|
||||
# CONFIG_NLS_KOI8_R is not set
|
||||
# CONFIG_NLS_KOI8_U is not set
|
||||
# CONFIG_NLS_UTF8 is not set
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
# CONFIG_PRINTK_TIME is not set
|
||||
CONFIG_ENABLE_WARN_DEPRECATED=y
|
||||
CONFIG_ENABLE_MUST_CHECK=y
|
||||
CONFIG_FRAME_WARN=1024
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
# CONFIG_STRIP_ASM_SYMS is not set
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_HEADERS_CHECK is not set
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DEBUG_SHIRQ is not set
|
||||
CONFIG_DETECT_SOFTLOCKUP=y
|
||||
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
|
||||
CONFIG_DETECT_HUNG_TASK=y
|
||||
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
||||
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
|
||||
CONFIG_SCHED_DEBUG=y
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# CONFIG_TIMER_STATS is not set
|
||||
# CONFIG_DEBUG_OBJECTS is not set
|
||||
# CONFIG_SLUB_DEBUG_ON is not set
|
||||
# CONFIG_SLUB_STATS is not set
|
||||
# CONFIG_DEBUG_KMEMLEAK is not set
|
||||
# CONFIG_DEBUG_RT_MUTEXES is not set
|
||||
# CONFIG_RT_MUTEX_TESTER is not set
|
||||
CONFIG_DEBUG_SPINLOCK=y
|
||||
# CONFIG_DEBUG_MUTEXES is not set
|
||||
# CONFIG_DEBUG_LOCK_ALLOC is not set
|
||||
# CONFIG_PROVE_LOCKING is not set
|
||||
# CONFIG_LOCK_STAT is not set
|
||||
CONFIG_DEBUG_SPINLOCK_SLEEP=y
|
||||
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
|
||||
# CONFIG_DEBUG_KOBJECT is not set
|
||||
CONFIG_DEBUG_BUGVERBOSE=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
# CONFIG_DEBUG_VM is not set
|
||||
# CONFIG_DEBUG_WRITECOUNT is not set
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
# CONFIG_DEBUG_LIST is not set
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
# CONFIG_DEBUG_NOTIFIERS is not set
|
||||
# CONFIG_DEBUG_CREDENTIALS is not set
|
||||
CONFIG_FRAME_POINTER=y
|
||||
# CONFIG_BOOT_PRINTK_DELAY is not set
|
||||
# CONFIG_RCU_TORTURE_TEST is not set
|
||||
CONFIG_RCU_CPU_STALL_DETECTOR=y
|
||||
# CONFIG_BACKTRACE_SELF_TEST is not set
|
||||
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_LATENCYTOP is not set
|
||||
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||
# CONFIG_PAGE_POISONING is not set
|
||||
CONFIG_HAVE_FUNCTION_TRACER=y
|
||||
CONFIG_TRACING_SUPPORT=y
|
||||
CONFIG_FTRACE=y
|
||||
# CONFIG_FUNCTION_TRACER is not set
|
||||
# CONFIG_IRQSOFF_TRACER is not set
|
||||
# CONFIG_SCHED_TRACER is not set
|
||||
# CONFIG_ENABLE_DEFAULT_TRACERS is not set
|
||||
# CONFIG_BOOT_TRACER is not set
|
||||
CONFIG_BRANCH_PROFILE_NONE=y
|
||||
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
|
||||
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
||||
# CONFIG_STACK_TRACER is not set
|
||||
# CONFIG_KMEMTRACE is not set
|
||||
# CONFIG_WORKQUEUE_TRACER is not set
|
||||
# CONFIG_BLK_DEV_IO_TRACE is not set
|
||||
# CONFIG_DYNAMIC_DEBUG is not set
|
||||
# CONFIG_SAMPLES is not set
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_KGDB is not set
|
||||
# CONFIG_DEBUG_USER is not set
|
||||
# CONFIG_DEBUG_ERRORS is not set
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
# CONFIG_DEBUG_LL is not set
|
||||
|
||||
#
|
||||
# Security options
|
||||
#
|
||||
# CONFIG_KEYS is not set
|
||||
# CONFIG_SECURITY is not set
|
||||
# CONFIG_SECURITYFS is not set
|
||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
|
||||
# CONFIG_CRYPTO is not set
|
||||
# CONFIG_BINARY_PRINTF is not set
|
||||
|
||||
#
|
||||
# Library routines
|
||||
#
|
||||
CONFIG_GENERIC_FIND_LAST_BIT=y
|
||||
# CONFIG_CRC_CCITT is not set
|
||||
# CONFIG_CRC16 is not set
|
||||
# CONFIG_CRC_T10DIF is not set
|
||||
# CONFIG_CRC_ITU_T is not set
|
||||
# CONFIG_CRC32 is not set
|
||||
# CONFIG_CRC7 is not set
|
||||
# CONFIG_LIBCRC32C is not set
|
||||
CONFIG_ZLIB_INFLATE=y
|
||||
CONFIG_DECOMPRESS_GZIP=y
|
||||
CONFIG_DECOMPRESS_BZIP2=y
|
||||
CONFIG_DECOMPRESS_LZMA=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
775
arch/arm/configs/spear320_defconfig
Normal file
775
arch/arm/configs/spear320_defconfig
Normal file
@ -0,0 +1,775 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.32
|
||||
# Tue Mar 23 14:37:12 2010
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_GENERIC_GPIO=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_STACKTRACE_SUPPORT=y
|
||||
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
|
||||
CONFIG_LOCKDEP_SUPPORT=y
|
||||
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
|
||||
CONFIG_HARDIRQS_SW_RESEND=y
|
||||
CONFIG_GENERIC_IRQ_PROBE=y
|
||||
CONFIG_RWSEM_GENERIC_SPINLOCK=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
|
||||
CONFIG_VECTORS_BASE=0xffff0000
|
||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
|
||||
CONFIG_CONSTRUCTORS=y
|
||||
|
||||
#
|
||||
# General setup
|
||||
#
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
CONFIG_BROKEN_ON_SMP=y
|
||||
CONFIG_INIT_ENV_ARG_LIMIT=32
|
||||
CONFIG_LOCALVERSION=""
|
||||
CONFIG_LOCALVERSION_AUTO=y
|
||||
CONFIG_SWAP=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_SYSVIPC_SYSCTL=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
|
||||
|
||||
#
|
||||
# RCU Subsystem
|
||||
#
|
||||
CONFIG_TREE_RCU=y
|
||||
# CONFIG_TREE_PREEMPT_RCU is not set
|
||||
# CONFIG_RCU_TRACE is not set
|
||||
CONFIG_RCU_FANOUT=32
|
||||
# CONFIG_RCU_FANOUT_EXACT is not set
|
||||
# CONFIG_TREE_RCU_TRACE is not set
|
||||
# CONFIG_IKCONFIG is not set
|
||||
CONFIG_LOG_BUF_SHIFT=17
|
||||
# CONFIG_GROUP_SCHED is not set
|
||||
# CONFIG_CGROUPS is not set
|
||||
# CONFIG_SYSFS_DEPRECATED_V2 is not set
|
||||
# CONFIG_RELAY is not set
|
||||
CONFIG_NAMESPACES=y
|
||||
# CONFIG_UTS_NS is not set
|
||||
# CONFIG_IPC_NS is not set
|
||||
# CONFIG_USER_NS is not set
|
||||
# CONFIG_PID_NS is not set
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_RD_GZIP=y
|
||||
CONFIG_RD_BZIP2=y
|
||||
CONFIG_RD_LZMA=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
CONFIG_SYSCTL=y
|
||||
CONFIG_ANON_INODES=y
|
||||
# CONFIG_EMBEDDED is not set
|
||||
CONFIG_UID16=y
|
||||
CONFIG_SYSCTL_SYSCALL=y
|
||||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_ALL is not set
|
||||
CONFIG_KALLSYMS_EXTRA_PASS=y
|
||||
CONFIG_HOTPLUG=y
|
||||
CONFIG_PRINTK=y
|
||||
CONFIG_BUG=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_BASE_FULL=y
|
||||
CONFIG_FUTEX=y
|
||||
CONFIG_EPOLL=y
|
||||
CONFIG_SIGNALFD=y
|
||||
CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_AIO=y
|
||||
|
||||
#
|
||||
# Kernel Performance Events And Counters
|
||||
#
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_SLUB_DEBUG=y
|
||||
CONFIG_COMPAT_BRK=y
|
||||
# CONFIG_SLAB is not set
|
||||
CONFIG_SLUB=y
|
||||
# CONFIG_SLOB is not set
|
||||
# CONFIG_PROFILING is not set
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
# CONFIG_KPROBES is not set
|
||||
CONFIG_HAVE_KPROBES=y
|
||||
CONFIG_HAVE_KRETPROBES=y
|
||||
CONFIG_HAVE_CLK=y
|
||||
|
||||
#
|
||||
# GCOV-based kernel profiling
|
||||
#
|
||||
# CONFIG_GCOV_KERNEL is not set
|
||||
# CONFIG_SLOW_WORK is not set
|
||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
||||
CONFIG_SLABINFO=y
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
||||
CONFIG_MODVERSIONS=y
|
||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
|
||||
CONFIG_BLOCK=y
|
||||
CONFIG_LBDAF=y
|
||||
CONFIG_BLK_DEV_BSG=y
|
||||
# CONFIG_BLK_DEV_INTEGRITY is not set
|
||||
|
||||
#
|
||||
# IO Schedulers
|
||||
#
|
||||
CONFIG_IOSCHED_NOOP=y
|
||||
CONFIG_IOSCHED_AS=y
|
||||
CONFIG_IOSCHED_DEADLINE=y
|
||||
CONFIG_IOSCHED_CFQ=y
|
||||
# CONFIG_DEFAULT_AS is not set
|
||||
# CONFIG_DEFAULT_DEADLINE is not set
|
||||
CONFIG_DEFAULT_CFQ=y
|
||||
# CONFIG_DEFAULT_NOOP is not set
|
||||
CONFIG_DEFAULT_IOSCHED="cfq"
|
||||
# CONFIG_FREEZER is not set
|
||||
|
||||
#
|
||||
# System Type
|
||||
#
|
||||
CONFIG_MMU=y
|
||||
# CONFIG_ARCH_AAEC2000 is not set
|
||||
# CONFIG_ARCH_INTEGRATOR is not set
|
||||
# CONFIG_ARCH_REALVIEW is not set
|
||||
# CONFIG_ARCH_VERSATILE is not set
|
||||
# CONFIG_ARCH_AT91 is not set
|
||||
# CONFIG_ARCH_CLPS711X is not set
|
||||
# CONFIG_ARCH_GEMINI is not set
|
||||
# CONFIG_ARCH_EBSA110 is not set
|
||||
# CONFIG_ARCH_EP93XX is not set
|
||||
# CONFIG_ARCH_FOOTBRIDGE is not set
|
||||
# CONFIG_ARCH_MXC is not set
|
||||
# CONFIG_ARCH_STMP3XXX is not set
|
||||
# CONFIG_ARCH_NETX is not set
|
||||
# CONFIG_ARCH_H720X is not set
|
||||
# CONFIG_ARCH_NOMADIK is not set
|
||||
# CONFIG_ARCH_IOP13XX is not set
|
||||
# CONFIG_ARCH_IOP32X is not set
|
||||
# CONFIG_ARCH_IOP33X is not set
|
||||
# CONFIG_ARCH_IXP23XX is not set
|
||||
# CONFIG_ARCH_IXP2000 is not set
|
||||
# CONFIG_ARCH_IXP4XX is not set
|
||||
# CONFIG_ARCH_L7200 is not set
|
||||
# CONFIG_ARCH_KIRKWOOD is not set
|
||||
# CONFIG_ARCH_LOKI is not set
|
||||
# CONFIG_ARCH_MV78XX0 is not set
|
||||
# CONFIG_ARCH_ORION5X is not set
|
||||
# CONFIG_ARCH_MMP is not set
|
||||
# CONFIG_ARCH_KS8695 is not set
|
||||
# CONFIG_ARCH_NS9XXX is not set
|
||||
# CONFIG_ARCH_W90X900 is not set
|
||||
# CONFIG_ARCH_PNX4008 is not set
|
||||
# CONFIG_ARCH_PXA is not set
|
||||
# CONFIG_ARCH_MSM is not set
|
||||
# CONFIG_ARCH_RPC is not set
|
||||
# CONFIG_ARCH_SA1100 is not set
|
||||
# CONFIG_ARCH_S3C2410 is not set
|
||||
# CONFIG_ARCH_S3C64XX is not set
|
||||
# CONFIG_ARCH_S5PC1XX is not set
|
||||
# CONFIG_ARCH_SHARK is not set
|
||||
# CONFIG_ARCH_LH7A40X is not set
|
||||
# CONFIG_ARCH_U300 is not set
|
||||
# CONFIG_ARCH_DAVINCI is not set
|
||||
# CONFIG_ARCH_OMAP is not set
|
||||
# CONFIG_ARCH_BCMRING is not set
|
||||
CONFIG_PLAT_SPEAR=y
|
||||
CONFIG_ARCH_SPEAR3XX=y
|
||||
# CONFIG_ARCH_SPEAR6XX is not set
|
||||
# CONFIG_MACH_SPEAR300 is not set
|
||||
# CONFIG_MACH_SPEAR310 is not set
|
||||
CONFIG_MACH_SPEAR320=y
|
||||
# CONFIG_BOARD_SPEAR300_EVB is not set
|
||||
CONFIG_BOARD_SPEAR320_EVB=y
|
||||
|
||||
#
|
||||
# Processor Type
|
||||
#
|
||||
CONFIG_CPU_32=y
|
||||
CONFIG_CPU_ARM926T=y
|
||||
CONFIG_CPU_32v5=y
|
||||
CONFIG_CPU_ABRT_EV5TJ=y
|
||||
CONFIG_CPU_PABRT_LEGACY=y
|
||||
CONFIG_CPU_CACHE_VIVT=y
|
||||
CONFIG_CPU_COPY_V4WB=y
|
||||
CONFIG_CPU_TLB_V4WBI=y
|
||||
CONFIG_CPU_CP15=y
|
||||
CONFIG_CPU_CP15_MMU=y
|
||||
|
||||
#
|
||||
# Processor Features
|
||||
#
|
||||
CONFIG_ARM_THUMB=y
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
|
||||
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=5
|
||||
CONFIG_ARM_VIC=y
|
||||
CONFIG_ARM_VIC_NR=2
|
||||
CONFIG_COMMON_CLKDEV=y
|
||||
|
||||
#
|
||||
# Bus support
|
||||
#
|
||||
CONFIG_ARM_AMBA=y
|
||||
# CONFIG_PCI_SYSCALL is not set
|
||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
|
||||
# CONFIG_PCCARD is not set
|
||||
|
||||
#
|
||||
# Kernel Features
|
||||
#
|
||||
# CONFIG_NO_HZ is not set
|
||||
# CONFIG_HIGH_RES_TIMERS is not set
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_VMSPLIT_3G=y
|
||||
# CONFIG_VMSPLIT_2G is not set
|
||||
# CONFIG_VMSPLIT_1G is not set
|
||||
CONFIG_PAGE_OFFSET=0xC0000000
|
||||
CONFIG_PREEMPT_NONE=y
|
||||
# CONFIG_PREEMPT_VOLUNTARY is not set
|
||||
# CONFIG_PREEMPT is not set
|
||||
CONFIG_HZ=100
|
||||
# CONFIG_AEABI is not set
|
||||
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
|
||||
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
|
||||
# CONFIG_HIGHMEM is not set
|
||||
CONFIG_SELECT_MEMORY_MODEL=y
|
||||
CONFIG_FLATMEM_MANUAL=y
|
||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
|
||||
# CONFIG_SPARSEMEM_MANUAL is not set
|
||||
CONFIG_FLATMEM=y
|
||||
CONFIG_FLAT_NODE_MEM_MAP=y
|
||||
CONFIG_PAGEFLAGS_EXTENDED=y
|
||||
CONFIG_SPLIT_PTLOCK_CPUS=4096
|
||||
# CONFIG_PHYS_ADDR_T_64BIT is not set
|
||||
CONFIG_ZONE_DMA_FLAG=0
|
||||
CONFIG_VIRT_TO_BUS=y
|
||||
CONFIG_HAVE_MLOCK=y
|
||||
CONFIG_HAVE_MLOCKED_PAGE_BIT=y
|
||||
# CONFIG_KSM is not set
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
|
||||
CONFIG_ALIGNMENT_TRAP=y
|
||||
# CONFIG_UACCESS_WITH_MEMCPY is not set
|
||||
|
||||
#
|
||||
# Boot options
|
||||
#
|
||||
CONFIG_ZBOOT_ROM_TEXT=0
|
||||
CONFIG_ZBOOT_ROM_BSS=0
|
||||
CONFIG_CMDLINE=""
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
# CONFIG_KEXEC is not set
|
||||
|
||||
#
|
||||
# CPU Power Management
|
||||
#
|
||||
# CONFIG_CPU_IDLE is not set
|
||||
|
||||
#
|
||||
# Floating point emulation
|
||||
#
|
||||
|
||||
#
|
||||
# At least one emulation must be selected
|
||||
#
|
||||
# CONFIG_FPE_NWFPE is not set
|
||||
# CONFIG_FPE_FASTFPE is not set
|
||||
# CONFIG_VFP is not set
|
||||
|
||||
#
|
||||
# Userspace binary formats
|
||||
#
|
||||
CONFIG_BINFMT_ELF=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_HAVE_AOUT=y
|
||||
# CONFIG_BINFMT_AOUT is not set
|
||||
CONFIG_BINFMT_MISC=y
|
||||
|
||||
#
|
||||
# Power management options
|
||||
#
|
||||
# CONFIG_PM is not set
|
||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
# CONFIG_NET is not set
|
||||
|
||||
#
|
||||
# Device Drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
# CONFIG_DEVTMPFS is not set
|
||||
CONFIG_STANDALONE=y
|
||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
|
||||
CONFIG_FW_LOADER=y
|
||||
CONFIG_FIRMWARE_IN_KERNEL=y
|
||||
CONFIG_EXTRA_FIRMWARE=""
|
||||
# CONFIG_DEBUG_DRIVER is not set
|
||||
# CONFIG_DEBUG_DEVRES is not set
|
||||
# CONFIG_SYS_HYPERVISOR is not set
|
||||
# CONFIG_MTD is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
CONFIG_BLK_DEV=y
|
||||
# CONFIG_BLK_DEV_COW_COMMON is not set
|
||||
# CONFIG_BLK_DEV_LOOP is not set
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=16
|
||||
CONFIG_BLK_DEV_RAM_SIZE=16384
|
||||
# CONFIG_BLK_DEV_XIP is not set
|
||||
# CONFIG_CDROM_PKTCDVD is not set
|
||||
# CONFIG_MG_DISK is not set
|
||||
CONFIG_MISC_DEVICES=y
|
||||
# CONFIG_ENCLOSURE_SERVICES is not set
|
||||
# CONFIG_C2PORT is not set
|
||||
|
||||
#
|
||||
# EEPROM support
|
||||
#
|
||||
# CONFIG_EEPROM_93CX6 is not set
|
||||
CONFIG_HAVE_IDE=y
|
||||
# CONFIG_IDE is not set
|
||||
|
||||
#
|
||||
# SCSI device support
|
||||
#
|
||||
# CONFIG_RAID_ATTRS is not set
|
||||
# CONFIG_SCSI is not set
|
||||
# CONFIG_SCSI_DMA is not set
|
||||
# CONFIG_SCSI_NETLINK is not set
|
||||
# CONFIG_ATA is not set
|
||||
# CONFIG_MD is not set
|
||||
# CONFIG_PHONE is not set
|
||||
|
||||
#
|
||||
# Input device support
|
||||
#
|
||||
CONFIG_INPUT=y
|
||||
CONFIG_INPUT_FF_MEMLESS=y
|
||||
# CONFIG_INPUT_POLLDEV is not set
|
||||
|
||||
#
|
||||
# Userland interfaces
|
||||
#
|
||||
CONFIG_INPUT_MOUSEDEV=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
# CONFIG_INPUT_JOYDEV is not set
|
||||
# CONFIG_INPUT_EVDEV is not set
|
||||
# CONFIG_INPUT_EVBUG is not set
|
||||
|
||||
#
|
||||
# Input Device Drivers
|
||||
#
|
||||
# CONFIG_INPUT_KEYBOARD is not set
|
||||
# CONFIG_INPUT_MOUSE is not set
|
||||
# CONFIG_INPUT_JOYSTICK is not set
|
||||
# CONFIG_INPUT_TABLET is not set
|
||||
# CONFIG_INPUT_TOUCHSCREEN is not set
|
||||
# CONFIG_INPUT_MISC is not set
|
||||
|
||||
#
|
||||
# Hardware I/O ports
|
||||
#
|
||||
CONFIG_SERIO=y
|
||||
CONFIG_SERIO_SERPORT=y
|
||||
# CONFIG_SERIO_AMBAKMI is not set
|
||||
# CONFIG_SERIO_RAW is not set
|
||||
# CONFIG_GAMEPORT is not set
|
||||
|
||||
#
|
||||
# Character devices
|
||||
#
|
||||
CONFIG_VT=y
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
CONFIG_HW_CONSOLE=y
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
CONFIG_DEVKMEM=y
|
||||
# CONFIG_SERIAL_NONSTANDARD is not set
|
||||
|
||||
#
|
||||
# Serial drivers
|
||||
#
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
|
||||
#
|
||||
# Non-8250 serial port support
|
||||
#
|
||||
# CONFIG_SERIAL_AMBA_PL010 is not set
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_CORE=y
|
||||
CONFIG_SERIAL_CORE_CONSOLE=y
|
||||
CONFIG_UNIX98_PTYS=y
|
||||
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
# CONFIG_IPMI_HANDLER is not set
|
||||
# CONFIG_HW_RANDOM is not set
|
||||
# CONFIG_R3964 is not set
|
||||
CONFIG_RAW_DRIVER=y
|
||||
CONFIG_MAX_RAW_DEVS=8192
|
||||
# CONFIG_TCG_TPM is not set
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_SPI is not set
|
||||
|
||||
#
|
||||
# PPS support
|
||||
#
|
||||
# CONFIG_PPS is not set
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_GPIOLIB=y
|
||||
# CONFIG_DEBUG_GPIO is not set
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
|
||||
#
|
||||
# Memory mapped GPIO expanders:
|
||||
#
|
||||
CONFIG_GPIO_PL061=y
|
||||
|
||||
#
|
||||
# I2C GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# PCI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# SPI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# AC97 GPIO expanders:
|
||||
#
|
||||
# CONFIG_W1 is not set
|
||||
# CONFIG_POWER_SUPPLY is not set
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_THERMAL is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
CONFIG_SSB_POSSIBLE=y
|
||||
|
||||
#
|
||||
# Sonics Silicon Backplane
|
||||
#
|
||||
# CONFIG_SSB is not set
|
||||
|
||||
#
|
||||
# Multifunction device drivers
|
||||
#
|
||||
# CONFIG_MFD_CORE is not set
|
||||
# CONFIG_MFD_SM501 is not set
|
||||
# CONFIG_MFD_ASIC3 is not set
|
||||
# CONFIG_HTC_EGPIO is not set
|
||||
# CONFIG_HTC_PASIC3 is not set
|
||||
# CONFIG_MFD_TMIO is not set
|
||||
# CONFIG_MFD_T7L66XB is not set
|
||||
# CONFIG_MFD_TC6387XB is not set
|
||||
# CONFIG_MFD_TC6393XB is not set
|
||||
# CONFIG_REGULATOR is not set
|
||||
# CONFIG_MEDIA_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Graphics support
|
||||
#
|
||||
# CONFIG_VGASTATE is not set
|
||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
|
||||
# CONFIG_FB is not set
|
||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
# CONFIG_DISPLAY_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Console display driver support
|
||||
#
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
CONFIG_DUMMY_CONSOLE=y
|
||||
# CONFIG_SOUND is not set
|
||||
# CONFIG_HID_SUPPORT is not set
|
||||
# CONFIG_USB_SUPPORT is not set
|
||||
# CONFIG_MMC is not set
|
||||
# CONFIG_MEMSTICK is not set
|
||||
# CONFIG_NEW_LEDS is not set
|
||||
# CONFIG_ACCESSIBILITY is not set
|
||||
CONFIG_RTC_LIB=y
|
||||
# CONFIG_RTC_CLASS is not set
|
||||
# CONFIG_DMADEVICES is not set
|
||||
# CONFIG_AUXDISPLAY is not set
|
||||
# CONFIG_UIO is not set
|
||||
|
||||
#
|
||||
# TI VLYNQ
|
||||
#
|
||||
# CONFIG_STAGING is not set
|
||||
|
||||
#
|
||||
# File systems
|
||||
#
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
# CONFIG_EXT2_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
# CONFIG_EXT2_FS_XIP is not set
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
|
||||
CONFIG_EXT3_FS_XATTR=y
|
||||
# CONFIG_EXT3_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
# CONFIG_EXT4_FS is not set
|
||||
CONFIG_JBD=y
|
||||
# CONFIG_JBD_DEBUG is not set
|
||||
CONFIG_FS_MBCACHE=y
|
||||
# CONFIG_REISERFS_FS is not set
|
||||
# CONFIG_JFS_FS is not set
|
||||
# CONFIG_FS_POSIX_ACL is not set
|
||||
# CONFIG_XFS_FS is not set
|
||||
# CONFIG_GFS2_FS is not set
|
||||
# CONFIG_BTRFS_FS is not set
|
||||
# CONFIG_NILFS2_FS is not set
|
||||
CONFIG_FILE_LOCKING=y
|
||||
CONFIG_FSNOTIFY=y
|
||||
CONFIG_DNOTIFY=y
|
||||
# CONFIG_INOTIFY is not set
|
||||
CONFIG_INOTIFY_USER=y
|
||||
# CONFIG_QUOTA is not set
|
||||
# CONFIG_AUTOFS_FS is not set
|
||||
CONFIG_AUTOFS4_FS=m
|
||||
# CONFIG_FUSE_FS is not set
|
||||
|
||||
#
|
||||
# Caches
|
||||
#
|
||||
# CONFIG_FSCACHE is not set
|
||||
|
||||
#
|
||||
# CD-ROM/DVD Filesystems
|
||||
#
|
||||
# CONFIG_ISO9660_FS is not set
|
||||
# CONFIG_UDF_FS is not set
|
||||
|
||||
#
|
||||
# DOS/FAT/NT Filesystems
|
||||
#
|
||||
CONFIG_FAT_FS=m
|
||||
CONFIG_MSDOS_FS=m
|
||||
CONFIG_VFAT_FS=m
|
||||
CONFIG_FAT_DEFAULT_CODEPAGE=437
|
||||
CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
|
||||
# CONFIG_NTFS_FS is not set
|
||||
|
||||
#
|
||||
# Pseudo filesystems
|
||||
#
|
||||
CONFIG_PROC_FS=y
|
||||
CONFIG_PROC_SYSCTL=y
|
||||
CONFIG_PROC_PAGE_MONITOR=y
|
||||
CONFIG_SYSFS=y
|
||||
CONFIG_TMPFS=y
|
||||
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||
# CONFIG_HUGETLB_PAGE is not set
|
||||
# CONFIG_CONFIGFS_FS is not set
|
||||
CONFIG_MISC_FILESYSTEMS=y
|
||||
# CONFIG_ADFS_FS is not set
|
||||
# CONFIG_AFFS_FS is not set
|
||||
# CONFIG_HFS_FS is not set
|
||||
# CONFIG_HFSPLUS_FS is not set
|
||||
# CONFIG_BEFS_FS is not set
|
||||
# CONFIG_BFS_FS is not set
|
||||
# CONFIG_EFS_FS is not set
|
||||
# CONFIG_SQUASHFS is not set
|
||||
# CONFIG_VXFS_FS is not set
|
||||
# CONFIG_MINIX_FS is not set
|
||||
# CONFIG_OMFS_FS is not set
|
||||
# CONFIG_HPFS_FS is not set
|
||||
# CONFIG_QNX4FS_FS is not set
|
||||
# CONFIG_ROMFS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
|
||||
#
|
||||
# Partition Types
|
||||
#
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
# CONFIG_ACORN_PARTITION is not set
|
||||
# CONFIG_OSF_PARTITION is not set
|
||||
# CONFIG_AMIGA_PARTITION is not set
|
||||
# CONFIG_ATARI_PARTITION is not set
|
||||
# CONFIG_MAC_PARTITION is not set
|
||||
CONFIG_MSDOS_PARTITION=y
|
||||
# CONFIG_BSD_DISKLABEL is not set
|
||||
# CONFIG_MINIX_SUBPARTITION is not set
|
||||
# CONFIG_SOLARIS_X86_PARTITION is not set
|
||||
# CONFIG_UNIXWARE_DISKLABEL is not set
|
||||
# CONFIG_LDM_PARTITION is not set
|
||||
# CONFIG_SGI_PARTITION is not set
|
||||
# CONFIG_ULTRIX_PARTITION is not set
|
||||
# CONFIG_SUN_PARTITION is not set
|
||||
# CONFIG_KARMA_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_SYSV68_PARTITION is not set
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_DEFAULT="utf8"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
# CONFIG_NLS_CODEPAGE_737 is not set
|
||||
# CONFIG_NLS_CODEPAGE_775 is not set
|
||||
# CONFIG_NLS_CODEPAGE_850 is not set
|
||||
# CONFIG_NLS_CODEPAGE_852 is not set
|
||||
# CONFIG_NLS_CODEPAGE_855 is not set
|
||||
# CONFIG_NLS_CODEPAGE_857 is not set
|
||||
# CONFIG_NLS_CODEPAGE_860 is not set
|
||||
# CONFIG_NLS_CODEPAGE_861 is not set
|
||||
# CONFIG_NLS_CODEPAGE_862 is not set
|
||||
# CONFIG_NLS_CODEPAGE_863 is not set
|
||||
# CONFIG_NLS_CODEPAGE_864 is not set
|
||||
# CONFIG_NLS_CODEPAGE_865 is not set
|
||||
# CONFIG_NLS_CODEPAGE_866 is not set
|
||||
# CONFIG_NLS_CODEPAGE_869 is not set
|
||||
# CONFIG_NLS_CODEPAGE_936 is not set
|
||||
# CONFIG_NLS_CODEPAGE_950 is not set
|
||||
# CONFIG_NLS_CODEPAGE_932 is not set
|
||||
# CONFIG_NLS_CODEPAGE_949 is not set
|
||||
# CONFIG_NLS_CODEPAGE_874 is not set
|
||||
# CONFIG_NLS_ISO8859_8 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1250 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1251 is not set
|
||||
CONFIG_NLS_ASCII=m
|
||||
# CONFIG_NLS_ISO8859_1 is not set
|
||||
# CONFIG_NLS_ISO8859_2 is not set
|
||||
# CONFIG_NLS_ISO8859_3 is not set
|
||||
# CONFIG_NLS_ISO8859_4 is not set
|
||||
# CONFIG_NLS_ISO8859_5 is not set
|
||||
# CONFIG_NLS_ISO8859_6 is not set
|
||||
# CONFIG_NLS_ISO8859_7 is not set
|
||||
# CONFIG_NLS_ISO8859_9 is not set
|
||||
# CONFIG_NLS_ISO8859_13 is not set
|
||||
# CONFIG_NLS_ISO8859_14 is not set
|
||||
# CONFIG_NLS_ISO8859_15 is not set
|
||||
# CONFIG_NLS_KOI8_R is not set
|
||||
# CONFIG_NLS_KOI8_U is not set
|
||||
# CONFIG_NLS_UTF8 is not set
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
# CONFIG_PRINTK_TIME is not set
|
||||
CONFIG_ENABLE_WARN_DEPRECATED=y
|
||||
CONFIG_ENABLE_MUST_CHECK=y
|
||||
CONFIG_FRAME_WARN=1024
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
# CONFIG_STRIP_ASM_SYMS is not set
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_HEADERS_CHECK is not set
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DEBUG_SHIRQ is not set
|
||||
CONFIG_DETECT_SOFTLOCKUP=y
|
||||
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
|
||||
CONFIG_DETECT_HUNG_TASK=y
|
||||
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
||||
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
|
||||
CONFIG_SCHED_DEBUG=y
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# CONFIG_TIMER_STATS is not set
|
||||
# CONFIG_DEBUG_OBJECTS is not set
|
||||
# CONFIG_SLUB_DEBUG_ON is not set
|
||||
# CONFIG_SLUB_STATS is not set
|
||||
# CONFIG_DEBUG_KMEMLEAK is not set
|
||||
# CONFIG_DEBUG_RT_MUTEXES is not set
|
||||
# CONFIG_RT_MUTEX_TESTER is not set
|
||||
CONFIG_DEBUG_SPINLOCK=y
|
||||
# CONFIG_DEBUG_MUTEXES is not set
|
||||
# CONFIG_DEBUG_LOCK_ALLOC is not set
|
||||
# CONFIG_PROVE_LOCKING is not set
|
||||
# CONFIG_LOCK_STAT is not set
|
||||
CONFIG_DEBUG_SPINLOCK_SLEEP=y
|
||||
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
|
||||
# CONFIG_DEBUG_KOBJECT is not set
|
||||
CONFIG_DEBUG_BUGVERBOSE=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
# CONFIG_DEBUG_VM is not set
|
||||
# CONFIG_DEBUG_WRITECOUNT is not set
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
# CONFIG_DEBUG_LIST is not set
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
# CONFIG_DEBUG_NOTIFIERS is not set
|
||||
# CONFIG_DEBUG_CREDENTIALS is not set
|
||||
CONFIG_FRAME_POINTER=y
|
||||
# CONFIG_BOOT_PRINTK_DELAY is not set
|
||||
# CONFIG_RCU_TORTURE_TEST is not set
|
||||
CONFIG_RCU_CPU_STALL_DETECTOR=y
|
||||
# CONFIG_BACKTRACE_SELF_TEST is not set
|
||||
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_LATENCYTOP is not set
|
||||
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||
# CONFIG_PAGE_POISONING is not set
|
||||
CONFIG_HAVE_FUNCTION_TRACER=y
|
||||
CONFIG_TRACING_SUPPORT=y
|
||||
CONFIG_FTRACE=y
|
||||
# CONFIG_FUNCTION_TRACER is not set
|
||||
# CONFIG_IRQSOFF_TRACER is not set
|
||||
# CONFIG_SCHED_TRACER is not set
|
||||
# CONFIG_ENABLE_DEFAULT_TRACERS is not set
|
||||
# CONFIG_BOOT_TRACER is not set
|
||||
CONFIG_BRANCH_PROFILE_NONE=y
|
||||
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
|
||||
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
||||
# CONFIG_STACK_TRACER is not set
|
||||
# CONFIG_KMEMTRACE is not set
|
||||
# CONFIG_WORKQUEUE_TRACER is not set
|
||||
# CONFIG_BLK_DEV_IO_TRACE is not set
|
||||
# CONFIG_DYNAMIC_DEBUG is not set
|
||||
# CONFIG_SAMPLES is not set
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_KGDB is not set
|
||||
# CONFIG_DEBUG_USER is not set
|
||||
# CONFIG_DEBUG_ERRORS is not set
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
# CONFIG_DEBUG_LL is not set
|
||||
|
||||
#
|
||||
# Security options
|
||||
#
|
||||
# CONFIG_KEYS is not set
|
||||
# CONFIG_SECURITY is not set
|
||||
# CONFIG_SECURITYFS is not set
|
||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
|
||||
# CONFIG_CRYPTO is not set
|
||||
# CONFIG_BINARY_PRINTF is not set
|
||||
|
||||
#
|
||||
# Library routines
|
||||
#
|
||||
CONFIG_GENERIC_FIND_LAST_BIT=y
|
||||
# CONFIG_CRC_CCITT is not set
|
||||
# CONFIG_CRC16 is not set
|
||||
# CONFIG_CRC_T10DIF is not set
|
||||
# CONFIG_CRC_ITU_T is not set
|
||||
# CONFIG_CRC32 is not set
|
||||
# CONFIG_CRC7 is not set
|
||||
# CONFIG_LIBCRC32C is not set
|
||||
CONFIG_ZLIB_INFLATE=y
|
||||
CONFIG_DECOMPRESS_GZIP=y
|
||||
CONFIG_DECOMPRESS_BZIP2=y
|
||||
CONFIG_DECOMPRESS_LZMA=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
760
arch/arm/configs/spear600_defconfig
Normal file
760
arch/arm/configs/spear600_defconfig
Normal file
@ -0,0 +1,760 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Linux kernel version: 2.6.32
|
||||
# Tue Mar 23 14:37:26 2010
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_GENERIC_GPIO=y
|
||||
CONFIG_GENERIC_TIME=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_HARDIRQS=y
|
||||
CONFIG_STACKTRACE_SUPPORT=y
|
||||
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
|
||||
CONFIG_LOCKDEP_SUPPORT=y
|
||||
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
|
||||
CONFIG_HARDIRQS_SW_RESEND=y
|
||||
CONFIG_GENERIC_IRQ_PROBE=y
|
||||
CONFIG_RWSEM_GENERIC_SPINLOCK=y
|
||||
CONFIG_GENERIC_HWEIGHT=y
|
||||
CONFIG_GENERIC_CALIBRATE_DELAY=y
|
||||
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
|
||||
CONFIG_VECTORS_BASE=0xffff0000
|
||||
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
|
||||
CONFIG_CONSTRUCTORS=y
|
||||
|
||||
#
|
||||
# General setup
|
||||
#
|
||||
CONFIG_EXPERIMENTAL=y
|
||||
CONFIG_BROKEN_ON_SMP=y
|
||||
CONFIG_INIT_ENV_ARG_LIMIT=32
|
||||
CONFIG_LOCALVERSION=""
|
||||
CONFIG_LOCALVERSION_AUTO=y
|
||||
CONFIG_SWAP=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_SYSVIPC_SYSCTL=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
|
||||
|
||||
#
|
||||
# RCU Subsystem
|
||||
#
|
||||
CONFIG_TREE_RCU=y
|
||||
# CONFIG_TREE_PREEMPT_RCU is not set
|
||||
# CONFIG_RCU_TRACE is not set
|
||||
CONFIG_RCU_FANOUT=32
|
||||
# CONFIG_RCU_FANOUT_EXACT is not set
|
||||
# CONFIG_TREE_RCU_TRACE is not set
|
||||
# CONFIG_IKCONFIG is not set
|
||||
CONFIG_LOG_BUF_SHIFT=17
|
||||
# CONFIG_GROUP_SCHED is not set
|
||||
# CONFIG_CGROUPS is not set
|
||||
# CONFIG_SYSFS_DEPRECATED_V2 is not set
|
||||
# CONFIG_RELAY is not set
|
||||
CONFIG_NAMESPACES=y
|
||||
# CONFIG_UTS_NS is not set
|
||||
# CONFIG_IPC_NS is not set
|
||||
# CONFIG_USER_NS is not set
|
||||
# CONFIG_PID_NS is not set
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_RD_GZIP=y
|
||||
CONFIG_RD_BZIP2=y
|
||||
CONFIG_RD_LZMA=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
CONFIG_SYSCTL=y
|
||||
CONFIG_ANON_INODES=y
|
||||
# CONFIG_EMBEDDED is not set
|
||||
CONFIG_UID16=y
|
||||
CONFIG_SYSCTL_SYSCALL=y
|
||||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_ALL is not set
|
||||
CONFIG_KALLSYMS_EXTRA_PASS=y
|
||||
CONFIG_HOTPLUG=y
|
||||
CONFIG_PRINTK=y
|
||||
CONFIG_BUG=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_BASE_FULL=y
|
||||
CONFIG_FUTEX=y
|
||||
CONFIG_EPOLL=y
|
||||
CONFIG_SIGNALFD=y
|
||||
CONFIG_TIMERFD=y
|
||||
CONFIG_EVENTFD=y
|
||||
CONFIG_SHMEM=y
|
||||
CONFIG_AIO=y
|
||||
|
||||
#
|
||||
# Kernel Performance Events And Counters
|
||||
#
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_SLUB_DEBUG=y
|
||||
CONFIG_COMPAT_BRK=y
|
||||
# CONFIG_SLAB is not set
|
||||
CONFIG_SLUB=y
|
||||
# CONFIG_SLOB is not set
|
||||
# CONFIG_PROFILING is not set
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
# CONFIG_KPROBES is not set
|
||||
CONFIG_HAVE_KPROBES=y
|
||||
CONFIG_HAVE_KRETPROBES=y
|
||||
CONFIG_HAVE_CLK=y
|
||||
|
||||
#
|
||||
# GCOV-based kernel profiling
|
||||
#
|
||||
# CONFIG_GCOV_KERNEL is not set
|
||||
# CONFIG_SLOW_WORK is not set
|
||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
||||
CONFIG_SLABINFO=y
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
||||
CONFIG_MODVERSIONS=y
|
||||
# CONFIG_MODULE_SRCVERSION_ALL is not set
|
||||
CONFIG_BLOCK=y
|
||||
CONFIG_LBDAF=y
|
||||
CONFIG_BLK_DEV_BSG=y
|
||||
# CONFIG_BLK_DEV_INTEGRITY is not set
|
||||
|
||||
#
|
||||
# IO Schedulers
|
||||
#
|
||||
CONFIG_IOSCHED_NOOP=y
|
||||
CONFIG_IOSCHED_AS=y
|
||||
CONFIG_IOSCHED_DEADLINE=y
|
||||
CONFIG_IOSCHED_CFQ=y
|
||||
# CONFIG_DEFAULT_AS is not set
|
||||
# CONFIG_DEFAULT_DEADLINE is not set
|
||||
CONFIG_DEFAULT_CFQ=y
|
||||
# CONFIG_DEFAULT_NOOP is not set
|
||||
CONFIG_DEFAULT_IOSCHED="cfq"
|
||||
# CONFIG_FREEZER is not set
|
||||
|
||||
#
|
||||
# System Type
|
||||
#
|
||||
CONFIG_MMU=y
|
||||
# CONFIG_ARCH_AAEC2000 is not set
|
||||
# CONFIG_ARCH_INTEGRATOR is not set
|
||||
# CONFIG_ARCH_REALVIEW is not set
|
||||
# CONFIG_ARCH_VERSATILE is not set
|
||||
# CONFIG_ARCH_AT91 is not set
|
||||
# CONFIG_ARCH_CLPS711X is not set
|
||||
# CONFIG_ARCH_GEMINI is not set
|
||||
# CONFIG_ARCH_EBSA110 is not set
|
||||
# CONFIG_ARCH_EP93XX is not set
|
||||
# CONFIG_ARCH_FOOTBRIDGE is not set
|
||||
# CONFIG_ARCH_MXC is not set
|
||||
# CONFIG_ARCH_STMP3XXX is not set
|
||||
# CONFIG_ARCH_NETX is not set
|
||||
# CONFIG_ARCH_H720X is not set
|
||||
# CONFIG_ARCH_NOMADIK is not set
|
||||
# CONFIG_ARCH_IOP13XX is not set
|
||||
# CONFIG_ARCH_IOP32X is not set
|
||||
# CONFIG_ARCH_IOP33X is not set
|
||||
# CONFIG_ARCH_IXP23XX is not set
|
||||
# CONFIG_ARCH_IXP2000 is not set
|
||||
# CONFIG_ARCH_IXP4XX is not set
|
||||
# CONFIG_ARCH_L7200 is not set
|
||||
# CONFIG_ARCH_KIRKWOOD is not set
|
||||
# CONFIG_ARCH_LOKI is not set
|
||||
# CONFIG_ARCH_MV78XX0 is not set
|
||||
# CONFIG_ARCH_ORION5X is not set
|
||||
# CONFIG_ARCH_MMP is not set
|
||||
# CONFIG_ARCH_KS8695 is not set
|
||||
# CONFIG_ARCH_NS9XXX is not set
|
||||
# CONFIG_ARCH_W90X900 is not set
|
||||
# CONFIG_ARCH_PNX4008 is not set
|
||||
# CONFIG_ARCH_PXA is not set
|
||||
# CONFIG_ARCH_MSM is not set
|
||||
# CONFIG_ARCH_RPC is not set
|
||||
# CONFIG_ARCH_SA1100 is not set
|
||||
# CONFIG_ARCH_S3C2410 is not set
|
||||
# CONFIG_ARCH_S3C64XX is not set
|
||||
# CONFIG_ARCH_S5PC1XX is not set
|
||||
# CONFIG_ARCH_SHARK is not set
|
||||
# CONFIG_ARCH_LH7A40X is not set
|
||||
# CONFIG_ARCH_U300 is not set
|
||||
# CONFIG_ARCH_DAVINCI is not set
|
||||
# CONFIG_ARCH_OMAP is not set
|
||||
# CONFIG_ARCH_BCMRING is not set
|
||||
CONFIG_PLAT_SPEAR=y
|
||||
# CONFIG_ARCH_SPEAR3XX is not set
|
||||
CONFIG_ARCH_SPEAR6XX=y
|
||||
# CONFIG_MACH_SPEAR300 is not set
|
||||
# CONFIG_MACH_SPEAR310 is not set
|
||||
# CONFIG_MACH_SPEAR320 is not set
|
||||
# CONFIG_BOARD_SPEAR300_EVB is not set
|
||||
CONFIG_MACH_SPEAR600=y
|
||||
CONFIG_BOARD_SPEAR600_EVB=y
|
||||
|
||||
#
|
||||
# Processor Type
|
||||
#
|
||||
CONFIG_CPU_32=y
|
||||
CONFIG_CPU_ARM926T=y
|
||||
CONFIG_CPU_32v5=y
|
||||
CONFIG_CPU_ABRT_EV5TJ=y
|
||||
CONFIG_CPU_PABRT_LEGACY=y
|
||||
CONFIG_CPU_CACHE_VIVT=y
|
||||
CONFIG_CPU_COPY_V4WB=y
|
||||
CONFIG_CPU_TLB_V4WBI=y
|
||||
CONFIG_CPU_CP15=y
|
||||
CONFIG_CPU_CP15_MMU=y
|
||||
|
||||
#
|
||||
# Processor Features
|
||||
#
|
||||
CONFIG_ARM_THUMB=y
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_DISABLE is not set
|
||||
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
|
||||
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=5
|
||||
CONFIG_ARM_VIC=y
|
||||
CONFIG_ARM_VIC_NR=2
|
||||
CONFIG_COMMON_CLKDEV=y
|
||||
|
||||
#
|
||||
# Bus support
|
||||
#
|
||||
CONFIG_ARM_AMBA=y
|
||||
# CONFIG_PCI_SYSCALL is not set
|
||||
# CONFIG_ARCH_SUPPORTS_MSI is not set
|
||||
# CONFIG_PCCARD is not set
|
||||
|
||||
#
|
||||
# Kernel Features
|
||||
#
|
||||
# CONFIG_NO_HZ is not set
|
||||
# CONFIG_HIGH_RES_TIMERS is not set
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
|
||||
CONFIG_VMSPLIT_3G=y
|
||||
# CONFIG_VMSPLIT_2G is not set
|
||||
# CONFIG_VMSPLIT_1G is not set
|
||||
CONFIG_PAGE_OFFSET=0xC0000000
|
||||
CONFIG_PREEMPT_NONE=y
|
||||
# CONFIG_PREEMPT_VOLUNTARY is not set
|
||||
# CONFIG_PREEMPT is not set
|
||||
CONFIG_HZ=100
|
||||
# CONFIG_AEABI is not set
|
||||
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
|
||||
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
|
||||
# CONFIG_HIGHMEM is not set
|
||||
CONFIG_SELECT_MEMORY_MODEL=y
|
||||
CONFIG_FLATMEM_MANUAL=y
|
||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
|
||||
# CONFIG_SPARSEMEM_MANUAL is not set
|
||||
CONFIG_FLATMEM=y
|
||||
CONFIG_FLAT_NODE_MEM_MAP=y
|
||||
CONFIG_PAGEFLAGS_EXTENDED=y
|
||||
CONFIG_SPLIT_PTLOCK_CPUS=4096
|
||||
# CONFIG_PHYS_ADDR_T_64BIT is not set
|
||||
CONFIG_ZONE_DMA_FLAG=0
|
||||
CONFIG_VIRT_TO_BUS=y
|
||||
CONFIG_HAVE_MLOCK=y
|
||||
CONFIG_HAVE_MLOCKED_PAGE_BIT=y
|
||||
# CONFIG_KSM is not set
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
|
||||
CONFIG_ALIGNMENT_TRAP=y
|
||||
# CONFIG_UACCESS_WITH_MEMCPY is not set
|
||||
|
||||
#
|
||||
# Boot options
|
||||
#
|
||||
CONFIG_ZBOOT_ROM_TEXT=0
|
||||
CONFIG_ZBOOT_ROM_BSS=0
|
||||
CONFIG_CMDLINE=""
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
# CONFIG_KEXEC is not set
|
||||
|
||||
#
|
||||
# CPU Power Management
|
||||
#
|
||||
# CONFIG_CPU_IDLE is not set
|
||||
|
||||
#
|
||||
# Floating point emulation
|
||||
#
|
||||
|
||||
#
|
||||
# At least one emulation must be selected
|
||||
#
|
||||
# CONFIG_FPE_NWFPE is not set
|
||||
# CONFIG_FPE_FASTFPE is not set
|
||||
# CONFIG_VFP is not set
|
||||
|
||||
#
|
||||
# Userspace binary formats
|
||||
#
|
||||
CONFIG_BINFMT_ELF=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
CONFIG_HAVE_AOUT=y
|
||||
# CONFIG_BINFMT_AOUT is not set
|
||||
CONFIG_BINFMT_MISC=y
|
||||
# CONFIG_ARTHUR is not set
|
||||
|
||||
#
|
||||
# Power management options
|
||||
#
|
||||
# CONFIG_PM is not set
|
||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
# CONFIG_NET is not set
|
||||
|
||||
#
|
||||
# Device Drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
|
||||
# CONFIG_DEVTMPFS is not set
|
||||
CONFIG_STANDALONE=y
|
||||
CONFIG_PREVENT_FIRMWARE_BUILD=y
|
||||
CONFIG_FW_LOADER=y
|
||||
CONFIG_FIRMWARE_IN_KERNEL=y
|
||||
CONFIG_EXTRA_FIRMWARE=""
|
||||
# CONFIG_DEBUG_DRIVER is not set
|
||||
# CONFIG_DEBUG_DEVRES is not set
|
||||
# CONFIG_SYS_HYPERVISOR is not set
|
||||
# CONFIG_MTD is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
CONFIG_BLK_DEV=y
|
||||
# CONFIG_BLK_DEV_COW_COMMON is not set
|
||||
# CONFIG_BLK_DEV_LOOP is not set
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_COUNT=16
|
||||
CONFIG_BLK_DEV_RAM_SIZE=16384
|
||||
# CONFIG_BLK_DEV_XIP is not set
|
||||
# CONFIG_CDROM_PKTCDVD is not set
|
||||
CONFIG_MISC_DEVICES=y
|
||||
# CONFIG_ENCLOSURE_SERVICES is not set
|
||||
# CONFIG_C2PORT is not set
|
||||
|
||||
#
|
||||
# EEPROM support
|
||||
#
|
||||
# CONFIG_EEPROM_93CX6 is not set
|
||||
CONFIG_HAVE_IDE=y
|
||||
# CONFIG_IDE is not set
|
||||
|
||||
#
|
||||
# SCSI device support
|
||||
#
|
||||
# CONFIG_RAID_ATTRS is not set
|
||||
# CONFIG_SCSI is not set
|
||||
# CONFIG_SCSI_DMA is not set
|
||||
# CONFIG_SCSI_NETLINK is not set
|
||||
# CONFIG_ATA is not set
|
||||
# CONFIG_MD is not set
|
||||
# CONFIG_PHONE is not set
|
||||
|
||||
#
|
||||
# Input device support
|
||||
#
|
||||
CONFIG_INPUT=y
|
||||
CONFIG_INPUT_FF_MEMLESS=y
|
||||
# CONFIG_INPUT_POLLDEV is not set
|
||||
|
||||
#
|
||||
# Userland interfaces
|
||||
#
|
||||
CONFIG_INPUT_MOUSEDEV=y
|
||||
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
# CONFIG_INPUT_JOYDEV is not set
|
||||
# CONFIG_INPUT_EVDEV is not set
|
||||
# CONFIG_INPUT_EVBUG is not set
|
||||
|
||||
#
|
||||
# Hardware I/O ports
|
||||
#
|
||||
CONFIG_SERIO=y
|
||||
CONFIG_SERIO_SERPORT=y
|
||||
# CONFIG_SERIO_AMBAKMI is not set
|
||||
# CONFIG_SERIO_RAW is not set
|
||||
# CONFIG_GAMEPORT is not set
|
||||
|
||||
#
|
||||
# Character devices
|
||||
#
|
||||
CONFIG_VT=y
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
CONFIG_HW_CONSOLE=y
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
CONFIG_DEVKMEM=y
|
||||
# CONFIG_SERIAL_NONSTANDARD is not set
|
||||
|
||||
#
|
||||
# Serial drivers
|
||||
#
|
||||
# CONFIG_SERIAL_8250 is not set
|
||||
|
||||
#
|
||||
# Non-8250 serial port support
|
||||
#
|
||||
# CONFIG_SERIAL_AMBA_PL010 is not set
|
||||
CONFIG_SERIAL_AMBA_PL011=y
|
||||
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
|
||||
CONFIG_SERIAL_CORE=y
|
||||
CONFIG_SERIAL_CORE_CONSOLE=y
|
||||
CONFIG_UNIX98_PTYS=y
|
||||
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
# CONFIG_R3964 is not set
|
||||
CONFIG_RAW_DRIVER=y
|
||||
CONFIG_MAX_RAW_DEVS=8192
|
||||
# CONFIG_TCG_TPM is not set
|
||||
# CONFIG_I2C is not set
|
||||
# CONFIG_SPI is not set
|
||||
|
||||
#
|
||||
# PPS support
|
||||
#
|
||||
# CONFIG_PPS is not set
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_GPIOLIB=y
|
||||
# CONFIG_DEBUG_GPIO is not set
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
|
||||
#
|
||||
# Memory mapped GPIO expanders:
|
||||
#
|
||||
CONFIG_GPIO_PL061=y
|
||||
|
||||
#
|
||||
# I2C GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# PCI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# SPI GPIO expanders:
|
||||
#
|
||||
|
||||
#
|
||||
# AC97 GPIO expanders:
|
||||
#
|
||||
# CONFIG_W1 is not set
|
||||
# CONFIG_POWER_SUPPLY is not set
|
||||
# CONFIG_HWMON is not set
|
||||
# CONFIG_THERMAL is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
CONFIG_SSB_POSSIBLE=y
|
||||
|
||||
#
|
||||
# Sonics Silicon Backplane
|
||||
#
|
||||
# CONFIG_SSB is not set
|
||||
|
||||
#
|
||||
# Multifunction device drivers
|
||||
#
|
||||
# CONFIG_MFD_CORE is not set
|
||||
# CONFIG_MFD_SM501 is not set
|
||||
# CONFIG_HTC_PASIC3 is not set
|
||||
# CONFIG_MFD_TMIO is not set
|
||||
# CONFIG_MFD_T7L66XB is not set
|
||||
# CONFIG_MFD_TC6387XB is not set
|
||||
# CONFIG_REGULATOR is not set
|
||||
# CONFIG_MEDIA_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Graphics support
|
||||
#
|
||||
# CONFIG_VGASTATE is not set
|
||||
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
|
||||
# CONFIG_FB is not set
|
||||
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Display device support
|
||||
#
|
||||
# CONFIG_DISPLAY_SUPPORT is not set
|
||||
|
||||
#
|
||||
# Console display driver support
|
||||
#
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
CONFIG_DUMMY_CONSOLE=y
|
||||
# CONFIG_HID_SUPPORT is not set
|
||||
# CONFIG_USB_SUPPORT is not set
|
||||
# CONFIG_MMC is not set
|
||||
# CONFIG_MEMSTICK is not set
|
||||
# CONFIG_NEW_LEDS is not set
|
||||
# CONFIG_ACCESSIBILITY is not set
|
||||
CONFIG_RTC_LIB=y
|
||||
# CONFIG_RTC_CLASS is not set
|
||||
# CONFIG_DMADEVICES is not set
|
||||
# CONFIG_AUXDISPLAY is not set
|
||||
# CONFIG_UIO is not set
|
||||
|
||||
#
|
||||
# TI VLYNQ
|
||||
#
|
||||
# CONFIG_STAGING is not set
|
||||
|
||||
#
|
||||
# File systems
|
||||
#
|
||||
CONFIG_EXT2_FS=y
|
||||
CONFIG_EXT2_FS_XATTR=y
|
||||
# CONFIG_EXT2_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT2_FS_SECURITY=y
|
||||
# CONFIG_EXT2_FS_XIP is not set
|
||||
CONFIG_EXT3_FS=y
|
||||
# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
|
||||
CONFIG_EXT3_FS_XATTR=y
|
||||
# CONFIG_EXT3_FS_POSIX_ACL is not set
|
||||
CONFIG_EXT3_FS_SECURITY=y
|
||||
# CONFIG_EXT4_FS is not set
|
||||
CONFIG_JBD=y
|
||||
# CONFIG_JBD_DEBUG is not set
|
||||
CONFIG_FS_MBCACHE=y
|
||||
# CONFIG_REISERFS_FS is not set
|
||||
# CONFIG_JFS_FS is not set
|
||||
# CONFIG_FS_POSIX_ACL is not set
|
||||
# CONFIG_XFS_FS is not set
|
||||
# CONFIG_GFS2_FS is not set
|
||||
# CONFIG_BTRFS_FS is not set
|
||||
# CONFIG_NILFS2_FS is not set
|
||||
CONFIG_FILE_LOCKING=y
|
||||
CONFIG_FSNOTIFY=y
|
||||
CONFIG_DNOTIFY=y
|
||||
# CONFIG_INOTIFY is not set
|
||||
CONFIG_INOTIFY_USER=y
|
||||
# CONFIG_QUOTA is not set
|
||||
# CONFIG_AUTOFS_FS is not set
|
||||
CONFIG_AUTOFS4_FS=m
|
||||
# CONFIG_FUSE_FS is not set
|
||||
|
||||
#
|
||||
# Caches
|
||||
#
|
||||
# CONFIG_FSCACHE is not set
|
||||
|
||||
#
|
||||
# CD-ROM/DVD Filesystems
|
||||
#
|
||||
# CONFIG_ISO9660_FS is not set
|
||||
# CONFIG_UDF_FS is not set
|
||||
|
||||
#
|
||||
# DOS/FAT/NT Filesystems
|
||||
#
|
||||
CONFIG_FAT_FS=m
|
||||
CONFIG_MSDOS_FS=m
|
||||
CONFIG_VFAT_FS=m
|
||||
CONFIG_FAT_DEFAULT_CODEPAGE=437
|
||||
CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
|
||||
# CONFIG_NTFS_FS is not set
|
||||
|
||||
#
|
||||
# Pseudo filesystems
|
||||
#
|
||||
CONFIG_PROC_FS=y
|
||||
CONFIG_PROC_SYSCTL=y
|
||||
CONFIG_PROC_PAGE_MONITOR=y
|
||||
CONFIG_SYSFS=y
|
||||
CONFIG_TMPFS=y
|
||||
# CONFIG_TMPFS_POSIX_ACL is not set
|
||||
# CONFIG_HUGETLB_PAGE is not set
|
||||
# CONFIG_CONFIGFS_FS is not set
|
||||
CONFIG_MISC_FILESYSTEMS=y
|
||||
# CONFIG_ADFS_FS is not set
|
||||
# CONFIG_AFFS_FS is not set
|
||||
# CONFIG_HFS_FS is not set
|
||||
# CONFIG_HFSPLUS_FS is not set
|
||||
# CONFIG_BEFS_FS is not set
|
||||
# CONFIG_BFS_FS is not set
|
||||
# CONFIG_EFS_FS is not set
|
||||
# CONFIG_SQUASHFS is not set
|
||||
# CONFIG_VXFS_FS is not set
|
||||
# CONFIG_MINIX_FS is not set
|
||||
# CONFIG_OMFS_FS is not set
|
||||
# CONFIG_HPFS_FS is not set
|
||||
# CONFIG_QNX4FS_FS is not set
|
||||
# CONFIG_ROMFS_FS is not set
|
||||
# CONFIG_SYSV_FS is not set
|
||||
# CONFIG_UFS_FS is not set
|
||||
|
||||
#
|
||||
# Partition Types
|
||||
#
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
# CONFIG_ACORN_PARTITION is not set
|
||||
# CONFIG_OSF_PARTITION is not set
|
||||
# CONFIG_AMIGA_PARTITION is not set
|
||||
# CONFIG_ATARI_PARTITION is not set
|
||||
# CONFIG_MAC_PARTITION is not set
|
||||
CONFIG_MSDOS_PARTITION=y
|
||||
# CONFIG_BSD_DISKLABEL is not set
|
||||
# CONFIG_MINIX_SUBPARTITION is not set
|
||||
# CONFIG_SOLARIS_X86_PARTITION is not set
|
||||
# CONFIG_UNIXWARE_DISKLABEL is not set
|
||||
# CONFIG_LDM_PARTITION is not set
|
||||
# CONFIG_SGI_PARTITION is not set
|
||||
# CONFIG_ULTRIX_PARTITION is not set
|
||||
# CONFIG_SUN_PARTITION is not set
|
||||
# CONFIG_KARMA_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_SYSV68_PARTITION is not set
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_DEFAULT="utf8"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
# CONFIG_NLS_CODEPAGE_737 is not set
|
||||
# CONFIG_NLS_CODEPAGE_775 is not set
|
||||
# CONFIG_NLS_CODEPAGE_850 is not set
|
||||
# CONFIG_NLS_CODEPAGE_852 is not set
|
||||
# CONFIG_NLS_CODEPAGE_855 is not set
|
||||
# CONFIG_NLS_CODEPAGE_857 is not set
|
||||
# CONFIG_NLS_CODEPAGE_860 is not set
|
||||
# CONFIG_NLS_CODEPAGE_861 is not set
|
||||
# CONFIG_NLS_CODEPAGE_862 is not set
|
||||
# CONFIG_NLS_CODEPAGE_863 is not set
|
||||
# CONFIG_NLS_CODEPAGE_864 is not set
|
||||
# CONFIG_NLS_CODEPAGE_865 is not set
|
||||
# CONFIG_NLS_CODEPAGE_866 is not set
|
||||
# CONFIG_NLS_CODEPAGE_869 is not set
|
||||
# CONFIG_NLS_CODEPAGE_936 is not set
|
||||
# CONFIG_NLS_CODEPAGE_950 is not set
|
||||
# CONFIG_NLS_CODEPAGE_932 is not set
|
||||
# CONFIG_NLS_CODEPAGE_949 is not set
|
||||
# CONFIG_NLS_CODEPAGE_874 is not set
|
||||
# CONFIG_NLS_ISO8859_8 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1250 is not set
|
||||
# CONFIG_NLS_CODEPAGE_1251 is not set
|
||||
CONFIG_NLS_ASCII=m
|
||||
# CONFIG_NLS_ISO8859_1 is not set
|
||||
# CONFIG_NLS_ISO8859_2 is not set
|
||||
# CONFIG_NLS_ISO8859_3 is not set
|
||||
# CONFIG_NLS_ISO8859_4 is not set
|
||||
# CONFIG_NLS_ISO8859_5 is not set
|
||||
# CONFIG_NLS_ISO8859_6 is not set
|
||||
# CONFIG_NLS_ISO8859_7 is not set
|
||||
# CONFIG_NLS_ISO8859_9 is not set
|
||||
# CONFIG_NLS_ISO8859_13 is not set
|
||||
# CONFIG_NLS_ISO8859_14 is not set
|
||||
# CONFIG_NLS_ISO8859_15 is not set
|
||||
# CONFIG_NLS_KOI8_R is not set
|
||||
# CONFIG_NLS_KOI8_U is not set
|
||||
# CONFIG_NLS_UTF8 is not set
|
||||
|
||||
#
|
||||
# Kernel hacking
|
||||
#
|
||||
# CONFIG_PRINTK_TIME is not set
|
||||
CONFIG_ENABLE_WARN_DEPRECATED=y
|
||||
CONFIG_ENABLE_MUST_CHECK=y
|
||||
CONFIG_FRAME_WARN=1024
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
# CONFIG_STRIP_ASM_SYMS is not set
|
||||
# CONFIG_UNUSED_SYMBOLS is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_HEADERS_CHECK is not set
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DEBUG_SHIRQ is not set
|
||||
CONFIG_DETECT_SOFTLOCKUP=y
|
||||
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
|
||||
CONFIG_DETECT_HUNG_TASK=y
|
||||
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
||||
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
|
||||
CONFIG_SCHED_DEBUG=y
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# CONFIG_TIMER_STATS is not set
|
||||
# CONFIG_DEBUG_OBJECTS is not set
|
||||
# CONFIG_SLUB_DEBUG_ON is not set
|
||||
# CONFIG_SLUB_STATS is not set
|
||||
# CONFIG_DEBUG_KMEMLEAK is not set
|
||||
# CONFIG_DEBUG_RT_MUTEXES is not set
|
||||
# CONFIG_RT_MUTEX_TESTER is not set
|
||||
CONFIG_DEBUG_SPINLOCK=y
|
||||
# CONFIG_DEBUG_MUTEXES is not set
|
||||
# CONFIG_DEBUG_LOCK_ALLOC is not set
|
||||
# CONFIG_PROVE_LOCKING is not set
|
||||
# CONFIG_LOCK_STAT is not set
|
||||
CONFIG_DEBUG_SPINLOCK_SLEEP=y
|
||||
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
|
||||
# CONFIG_DEBUG_KOBJECT is not set
|
||||
CONFIG_DEBUG_BUGVERBOSE=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
# CONFIG_DEBUG_VM is not set
|
||||
# CONFIG_DEBUG_WRITECOUNT is not set
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
# CONFIG_DEBUG_LIST is not set
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
# CONFIG_DEBUG_NOTIFIERS is not set
|
||||
# CONFIG_DEBUG_CREDENTIALS is not set
|
||||
CONFIG_FRAME_POINTER=y
|
||||
# CONFIG_BOOT_PRINTK_DELAY is not set
|
||||
# CONFIG_RCU_TORTURE_TEST is not set
|
||||
CONFIG_RCU_CPU_STALL_DETECTOR=y
|
||||
# CONFIG_BACKTRACE_SELF_TEST is not set
|
||||
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_LATENCYTOP is not set
|
||||
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||
# CONFIG_PAGE_POISONING is not set
|
||||
CONFIG_HAVE_FUNCTION_TRACER=y
|
||||
CONFIG_TRACING_SUPPORT=y
|
||||
CONFIG_FTRACE=y
|
||||
# CONFIG_FUNCTION_TRACER is not set
|
||||
# CONFIG_IRQSOFF_TRACER is not set
|
||||
# CONFIG_SCHED_TRACER is not set
|
||||
# CONFIG_ENABLE_DEFAULT_TRACERS is not set
|
||||
# CONFIG_BOOT_TRACER is not set
|
||||
CONFIG_BRANCH_PROFILE_NONE=y
|
||||
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
|
||||
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
||||
# CONFIG_STACK_TRACER is not set
|
||||
# CONFIG_KMEMTRACE is not set
|
||||
# CONFIG_WORKQUEUE_TRACER is not set
|
||||
# CONFIG_BLK_DEV_IO_TRACE is not set
|
||||
# CONFIG_DYNAMIC_DEBUG is not set
|
||||
# CONFIG_SAMPLES is not set
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
# CONFIG_KGDB is not set
|
||||
# CONFIG_DEBUG_USER is not set
|
||||
# CONFIG_DEBUG_ERRORS is not set
|
||||
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||
# CONFIG_DEBUG_LL is not set
|
||||
|
||||
#
|
||||
# Security options
|
||||
#
|
||||
# CONFIG_KEYS is not set
|
||||
# CONFIG_SECURITY is not set
|
||||
# CONFIG_SECURITYFS is not set
|
||||
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
|
||||
# CONFIG_CRYPTO is not set
|
||||
# CONFIG_BINARY_PRINTF is not set
|
||||
|
||||
#
|
||||
# Library routines
|
||||
#
|
||||
CONFIG_GENERIC_FIND_LAST_BIT=y
|
||||
# CONFIG_CRC_CCITT is not set
|
||||
# CONFIG_CRC16 is not set
|
||||
# CONFIG_CRC_T10DIF is not set
|
||||
# CONFIG_CRC_ITU_T is not set
|
||||
# CONFIG_CRC32 is not set
|
||||
# CONFIG_CRC7 is not set
|
||||
# CONFIG_LIBCRC32C is not set
|
||||
CONFIG_ZLIB_INFLATE=y
|
||||
CONFIG_DECOMPRESS_GZIP=y
|
||||
CONFIG_DECOMPRESS_BZIP2=y
|
||||
CONFIG_DECOMPRESS_LZMA=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
1456
arch/arm/configs/stamp9g20_defconfig
Normal file
1456
arch/arm/configs/stamp9g20_defconfig
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,21 +1,30 @@
|
||||
#ifndef __ASM_ARM_HARDWARE_ARM_TIMER_H
|
||||
#define __ASM_ARM_HARDWARE_ARM_TIMER_H
|
||||
|
||||
#define TIMER_LOAD 0x00
|
||||
#define TIMER_VALUE 0x04
|
||||
#define TIMER_CTRL 0x08
|
||||
#define TIMER_CTRL_ONESHOT (1 << 0)
|
||||
#define TIMER_CTRL_32BIT (1 << 1)
|
||||
#define TIMER_CTRL_DIV1 (0 << 2)
|
||||
#define TIMER_CTRL_DIV16 (1 << 2)
|
||||
#define TIMER_CTRL_DIV256 (2 << 2)
|
||||
#define TIMER_CTRL_IE (1 << 5) /* Interrupt Enable (versatile only) */
|
||||
#define TIMER_CTRL_PERIODIC (1 << 6)
|
||||
#define TIMER_CTRL_ENABLE (1 << 7)
|
||||
/*
|
||||
* ARM timer implementation, found in Integrator, Versatile and Realview
|
||||
* platforms. Not all platforms support all registers and bits in these
|
||||
* registers, so we mark them with A for Integrator AP, C for Integrator
|
||||
* CP, V for Versatile and R for Realview.
|
||||
*
|
||||
* Integrator AP has 16-bit timers, Integrator CP, Versatile and Realview
|
||||
* can have 16-bit or 32-bit selectable via a bit in the control register.
|
||||
*/
|
||||
#define TIMER_LOAD 0x00 /* ACVR rw */
|
||||
#define TIMER_VALUE 0x04 /* ACVR ro */
|
||||
#define TIMER_CTRL 0x08 /* ACVR rw */
|
||||
#define TIMER_CTRL_ONESHOT (1 << 0) /* CVR */
|
||||
#define TIMER_CTRL_32BIT (1 << 1) /* CVR */
|
||||
#define TIMER_CTRL_DIV1 (0 << 2) /* ACVR */
|
||||
#define TIMER_CTRL_DIV16 (1 << 2) /* ACVR */
|
||||
#define TIMER_CTRL_DIV256 (2 << 2) /* ACVR */
|
||||
#define TIMER_CTRL_IE (1 << 5) /* VR */
|
||||
#define TIMER_CTRL_PERIODIC (1 << 6) /* ACVR */
|
||||
#define TIMER_CTRL_ENABLE (1 << 7) /* ACVR */
|
||||
|
||||
#define TIMER_INTCLR 0x0c
|
||||
#define TIMER_RIS 0x10
|
||||
#define TIMER_MIS 0x14
|
||||
#define TIMER_BGLOAD 0x18
|
||||
#define TIMER_INTCLR 0x0c /* ACVR wo */
|
||||
#define TIMER_RIS 0x10 /* CVR ro */
|
||||
#define TIMER_MIS 0x14 /* CVR ro */
|
||||
#define TIMER_BGLOAD 0x18 /* CVR rw */
|
||||
|
||||
#endif
|
||||
|
@ -21,6 +21,9 @@
|
||||
#define __ASM_ARM_HARDWARE_L2X0_H
|
||||
|
||||
#define L2X0_CACHE_ID 0x000
|
||||
#define L2X0_CACHE_ID_PART_MASK (0xf << 6)
|
||||
#define L2X0_CACHE_ID_PART_L210 (1 << 6)
|
||||
#define L2X0_CACHE_ID_PART_L310 (3 << 6)
|
||||
#define L2X0_CACHE_TYPE 0x004
|
||||
#define L2X0_CTRL 0x100
|
||||
#define L2X0_AUX_CTRL 0x104
|
||||
|
59
arch/arm/include/asm/hardware/icst.h
Normal file
59
arch/arm/include/asm/hardware/icst.h
Normal file
@ -0,0 +1,59 @@
|
||||
/*
|
||||
* arch/arm/include/asm/hardware/icst.h
|
||||
*
|
||||
* Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* Support functions for calculating clocks/divisors for the ICST
|
||||
* clock generators. See http://www.icst.com/ for more information
|
||||
* on these devices.
|
||||
*/
|
||||
#ifndef ASMARM_HARDWARE_ICST_H
|
||||
#define ASMARM_HARDWARE_ICST_H
|
||||
|
||||
struct icst_params {
|
||||
unsigned long ref;
|
||||
unsigned long vco_max; /* inclusive */
|
||||
unsigned long vco_min; /* exclusive */
|
||||
unsigned short vd_min; /* inclusive */
|
||||
unsigned short vd_max; /* inclusive */
|
||||
unsigned char rd_min; /* inclusive */
|
||||
unsigned char rd_max; /* inclusive */
|
||||
const unsigned char *s2div; /* chip specific s2div array */
|
||||
const unsigned char *idx2s; /* chip specific idx2s array */
|
||||
};
|
||||
|
||||
struct icst_vco {
|
||||
unsigned short v;
|
||||
unsigned char r;
|
||||
unsigned char s;
|
||||
};
|
||||
|
||||
unsigned long icst_hz(const struct icst_params *p, struct icst_vco vco);
|
||||
struct icst_vco icst_hz_to_vco(const struct icst_params *p, unsigned long freq);
|
||||
|
||||
/*
|
||||
* ICST307 VCO frequency must be between 6MHz and 200MHz (3.3 or 5V).
|
||||
* This frequency is pre-output divider.
|
||||
*/
|
||||
#define ICST307_VCO_MIN 6000000
|
||||
#define ICST307_VCO_MAX 200000000
|
||||
|
||||
extern const unsigned char icst307_s2div[];
|
||||
extern const unsigned char icst307_idx2s[];
|
||||
|
||||
/*
|
||||
* ICST525 VCO frequency must be between 10MHz and 200MHz (3V) or 320MHz (5V).
|
||||
* This frequency is pre-output divider.
|
||||
*/
|
||||
#define ICST525_VCO_MIN 10000000
|
||||
#define ICST525_VCO_MAX_3V 200000000
|
||||
#define ICST525_VCO_MAX_5V 320000000
|
||||
|
||||
extern const unsigned char icst525_s2div[];
|
||||
extern const unsigned char icst525_idx2s[];
|
||||
|
||||
#endif
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* arch/arm/include/asm/hardware/icst307.h
|
||||
*
|
||||
* Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* Support functions for calculating clocks/divisors for the ICS307
|
||||
* clock generators. See http://www.icst.com/ for more information
|
||||
* on these devices.
|
||||
*
|
||||
* This file is similar to the icst525.h file
|
||||
*/
|
||||
#ifndef ASMARM_HARDWARE_ICST307_H
|
||||
#define ASMARM_HARDWARE_ICST307_H
|
||||
|
||||
struct icst307_params {
|
||||
unsigned long ref;
|
||||
unsigned long vco_max; /* inclusive */
|
||||
unsigned short vd_min; /* inclusive */
|
||||
unsigned short vd_max; /* inclusive */
|
||||
unsigned char rd_min; /* inclusive */
|
||||
unsigned char rd_max; /* inclusive */
|
||||
};
|
||||
|
||||
struct icst307_vco {
|
||||
unsigned short v;
|
||||
unsigned char r;
|
||||
unsigned char s;
|
||||
};
|
||||
|
||||
unsigned long icst307_khz(const struct icst307_params *p, struct icst307_vco vco);
|
||||
struct icst307_vco icst307_khz_to_vco(const struct icst307_params *p, unsigned long freq);
|
||||
struct icst307_vco icst307_ps_to_vco(const struct icst307_params *p, unsigned long period);
|
||||
|
||||
#endif
|
@ -1,36 +0,0 @@
|
||||
/*
|
||||
* arch/arm/include/asm/hardware/icst525.h
|
||||
*
|
||||
* Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* Support functions for calculating clocks/divisors for the ICST525
|
||||
* clock generators. See http://www.icst.com/ for more information
|
||||
* on these devices.
|
||||
*/
|
||||
#ifndef ASMARM_HARDWARE_ICST525_H
|
||||
#define ASMARM_HARDWARE_ICST525_H
|
||||
|
||||
struct icst525_params {
|
||||
unsigned long ref;
|
||||
unsigned long vco_max; /* inclusive */
|
||||
unsigned short vd_min; /* inclusive */
|
||||
unsigned short vd_max; /* inclusive */
|
||||
unsigned char rd_min; /* inclusive */
|
||||
unsigned char rd_max; /* inclusive */
|
||||
};
|
||||
|
||||
struct icst525_vco {
|
||||
unsigned short v;
|
||||
unsigned char r;
|
||||
unsigned char s;
|
||||
};
|
||||
|
||||
unsigned long icst525_khz(const struct icst525_params *p, struct icst525_vco vco);
|
||||
struct icst525_vco icst525_khz_to_vco(const struct icst525_params *p, unsigned long freq);
|
||||
struct icst525_vco icst525_ps_to_vco(const struct icst525_params *p, unsigned long period);
|
||||
|
||||
#endif
|
217
arch/arm/include/asm/hardware/pl330.h
Normal file
217
arch/arm/include/asm/hardware/pl330.h
Normal file
@ -0,0 +1,217 @@
|
||||
/* linux/include/asm/hardware/pl330.h
|
||||
*
|
||||
* Copyright (C) 2010 Samsung Electronics Co. Ltd.
|
||||
* Jaswinder Singh <jassi.brar@samsung.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
#ifndef __PL330_CORE_H
|
||||
#define __PL330_CORE_H
|
||||
|
||||
#define PL330_MAX_CHAN 8
|
||||
#define PL330_MAX_IRQS 32
|
||||
#define PL330_MAX_PERI 32
|
||||
|
||||
enum pl330_srccachectrl {
|
||||
SCCTRL0 = 0, /* Noncacheable and nonbufferable */
|
||||
SCCTRL1, /* Bufferable only */
|
||||
SCCTRL2, /* Cacheable, but do not allocate */
|
||||
SCCTRL3, /* Cacheable and bufferable, but do not allocate */
|
||||
SINVALID1,
|
||||
SINVALID2,
|
||||
SCCTRL6, /* Cacheable write-through, allocate on reads only */
|
||||
SCCTRL7, /* Cacheable write-back, allocate on reads only */
|
||||
};
|
||||
|
||||
enum pl330_dstcachectrl {
|
||||
DCCTRL0 = 0, /* Noncacheable and nonbufferable */
|
||||
DCCTRL1, /* Bufferable only */
|
||||
DCCTRL2, /* Cacheable, but do not allocate */
|
||||
DCCTRL3, /* Cacheable and bufferable, but do not allocate */
|
||||
DINVALID1 = 8,
|
||||
DINVALID2,
|
||||
DCCTRL6, /* Cacheable write-through, allocate on writes only */
|
||||
DCCTRL7, /* Cacheable write-back, allocate on writes only */
|
||||
};
|
||||
|
||||
/* Populated by the PL330 core driver for DMA API driver's info */
|
||||
struct pl330_config {
|
||||
u32 periph_id;
|
||||
u32 pcell_id;
|
||||
#define DMAC_MODE_NS (1 << 0)
|
||||
unsigned int mode;
|
||||
unsigned int data_bus_width:10; /* In number of bits */
|
||||
unsigned int data_buf_dep:10;
|
||||
unsigned int num_chan:4;
|
||||
unsigned int num_peri:6;
|
||||
u32 peri_ns;
|
||||
unsigned int num_events:6;
|
||||
u32 irq_ns;
|
||||
};
|
||||
|
||||
/* Handle to the DMAC provided to the PL330 core */
|
||||
struct pl330_info {
|
||||
/* Owning device */
|
||||
struct device *dev;
|
||||
/* Size of MicroCode buffers for each channel. */
|
||||
unsigned mcbufsz;
|
||||
/* ioremap'ed address of PL330 registers. */
|
||||
void __iomem *base;
|
||||
/* Client can freely use it. */
|
||||
void *client_data;
|
||||
/* PL330 core data, Client must not touch it. */
|
||||
void *pl330_data;
|
||||
/* Populated by the PL330 core driver during pl330_add */
|
||||
struct pl330_config pcfg;
|
||||
/*
|
||||
* If the DMAC has some reset mechanism, then the
|
||||
* client may want to provide pointer to the method.
|
||||
*/
|
||||
void (*dmac_reset)(struct pl330_info *pi);
|
||||
};
|
||||
|
||||
enum pl330_byteswap {
|
||||
SWAP_NO = 0,
|
||||
SWAP_2,
|
||||
SWAP_4,
|
||||
SWAP_8,
|
||||
SWAP_16,
|
||||
};
|
||||
|
||||
/**
|
||||
* Request Configuration.
|
||||
* The PL330 core does not modify this and uses the last
|
||||
* working configuration if the request doesn't provide any.
|
||||
*
|
||||
* The Client may want to provide this info only for the
|
||||
* first request and a request with new settings.
|
||||
*/
|
||||
struct pl330_reqcfg {
|
||||
/* Address Incrementing */
|
||||
unsigned dst_inc:1;
|
||||
unsigned src_inc:1;
|
||||
|
||||
/*
|
||||
* For now, the SRC & DST protection levels
|
||||
* and burst size/length are assumed same.
|
||||
*/
|
||||
bool nonsecure;
|
||||
bool privileged;
|
||||
bool insnaccess;
|
||||
unsigned brst_len:5;
|
||||
unsigned brst_size:3; /* in power of 2 */
|
||||
|
||||
enum pl330_dstcachectrl dcctl;
|
||||
enum pl330_srccachectrl scctl;
|
||||
enum pl330_byteswap swap;
|
||||
};
|
||||
|
||||
/*
|
||||
* One cycle of DMAC operation.
|
||||
* There may be more than one xfer in a request.
|
||||
*/
|
||||
struct pl330_xfer {
|
||||
u32 src_addr;
|
||||
u32 dst_addr;
|
||||
/* Size to xfer */
|
||||
u32 bytes;
|
||||
/*
|
||||
* Pointer to next xfer in the list.
|
||||
* The last xfer in the req must point to NULL.
|
||||
*/
|
||||
struct pl330_xfer *next;
|
||||
};
|
||||
|
||||
/* The xfer callbacks are made with one of these arguments. */
|
||||
enum pl330_op_err {
|
||||
/* The all xfers in the request were success. */
|
||||
PL330_ERR_NONE,
|
||||
/* If req aborted due to global error. */
|
||||
PL330_ERR_ABORT,
|
||||
/* If req failed due to problem with Channel. */
|
||||
PL330_ERR_FAIL,
|
||||
};
|
||||
|
||||
enum pl330_reqtype {
|
||||
MEMTOMEM,
|
||||
MEMTODEV,
|
||||
DEVTOMEM,
|
||||
DEVTODEV,
|
||||
};
|
||||
|
||||
/* A request defining Scatter-Gather List ending with NULL xfer. */
|
||||
struct pl330_req {
|
||||
enum pl330_reqtype rqtype;
|
||||
/* Index of peripheral for the xfer. */
|
||||
unsigned peri:5;
|
||||
/* Unique token for this xfer, set by the client. */
|
||||
void *token;
|
||||
/* Callback to be called after xfer. */
|
||||
void (*xfer_cb)(void *token, enum pl330_op_err err);
|
||||
/* If NULL, req will be done at last set parameters. */
|
||||
struct pl330_reqcfg *cfg;
|
||||
/* Pointer to first xfer in the request. */
|
||||
struct pl330_xfer *x;
|
||||
};
|
||||
|
||||
/*
|
||||
* To know the status of the channel and DMAC, the client
|
||||
* provides a pointer to this structure. The PL330 core
|
||||
* fills it with current information.
|
||||
*/
|
||||
struct pl330_chanstatus {
|
||||
/*
|
||||
* If the DMAC engine halted due to some error,
|
||||
* the client should remove-add DMAC.
|
||||
*/
|
||||
bool dmac_halted;
|
||||
/*
|
||||
* If channel is halted due to some error,
|
||||
* the client should ABORT/FLUSH and START the channel.
|
||||
*/
|
||||
bool faulting;
|
||||
/* Location of last load */
|
||||
u32 src_addr;
|
||||
/* Location of last store */
|
||||
u32 dst_addr;
|
||||
/*
|
||||
* Pointer to the currently active req, NULL if channel is
|
||||
* inactive, even though the requests may be present.
|
||||
*/
|
||||
struct pl330_req *top_req;
|
||||
/* Pointer to req waiting second in the queue if any. */
|
||||
struct pl330_req *wait_req;
|
||||
};
|
||||
|
||||
enum pl330_chan_op {
|
||||
/* Start the channel */
|
||||
PL330_OP_START,
|
||||
/* Abort the active xfer */
|
||||
PL330_OP_ABORT,
|
||||
/* Stop xfer and flush queue */
|
||||
PL330_OP_FLUSH,
|
||||
};
|
||||
|
||||
extern int pl330_add(struct pl330_info *);
|
||||
extern void pl330_del(struct pl330_info *pi);
|
||||
extern int pl330_update(const struct pl330_info *pi);
|
||||
extern void pl330_release_channel(void *ch_id);
|
||||
extern void *pl330_request_channel(const struct pl330_info *pi);
|
||||
extern int pl330_chan_status(void *ch_id, struct pl330_chanstatus *pstatus);
|
||||
extern int pl330_chan_ctrl(void *ch_id, enum pl330_chan_op op);
|
||||
extern int pl330_submit_req(void *ch_id, struct pl330_req *r);
|
||||
|
||||
#endif /* __PL330_CORE_H */
|
59
arch/arm/include/asm/hardware/sp810.h
Normal file
59
arch/arm/include/asm/hardware/sp810.h
Normal file
@ -0,0 +1,59 @@
|
||||
/*
|
||||
* arch/arm/include/asm/hardware/sp810.h
|
||||
*
|
||||
* ARM PrimeXsys System Controller SP810 header file
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#ifndef __ASM_ARM_SP810_H
|
||||
#define __ASM_ARM_SP810_H
|
||||
|
||||
#include <linux/io.h>
|
||||
|
||||
/* sysctl registers offset */
|
||||
#define SCCTRL 0x000
|
||||
#define SCSYSSTAT 0x004
|
||||
#define SCIMCTRL 0x008
|
||||
#define SCIMSTAT 0x00C
|
||||
#define SCXTALCTRL 0x010
|
||||
#define SCPLLCTRL 0x014
|
||||
#define SCPLLFCTRL 0x018
|
||||
#define SCPERCTRL0 0x01C
|
||||
#define SCPERCTRL1 0x020
|
||||
#define SCPEREN 0x024
|
||||
#define SCPERDIS 0x028
|
||||
#define SCPERCLKEN 0x02C
|
||||
#define SCPERSTAT 0x030
|
||||
#define SCSYSID0 0xEE0
|
||||
#define SCSYSID1 0xEE4
|
||||
#define SCSYSID2 0xEE8
|
||||
#define SCSYSID3 0xEEC
|
||||
#define SCITCR 0xF00
|
||||
#define SCITIR0 0xF04
|
||||
#define SCITIR1 0xF08
|
||||
#define SCITOR 0xF0C
|
||||
#define SCCNTCTRL 0xF10
|
||||
#define SCCNTDATA 0xF14
|
||||
#define SCCNTSTEP 0xF18
|
||||
#define SCPERIPHID0 0xFE0
|
||||
#define SCPERIPHID1 0xFE4
|
||||
#define SCPERIPHID2 0xFE8
|
||||
#define SCPERIPHID3 0xFEC
|
||||
#define SCPCELLID0 0xFF0
|
||||
#define SCPCELLID1 0xFF4
|
||||
#define SCPCELLID2 0xFF8
|
||||
#define SCPCELLID3 0xFFC
|
||||
|
||||
static inline void sysctl_soft_reset(void __iomem *base)
|
||||
{
|
||||
/* writing any value to SCSYSSTAT reg will reset system */
|
||||
writel(0, base + SCSYSSTAT);
|
||||
}
|
||||
|
||||
#endif /* __ASM_ARM_SP810_H */
|
@ -53,6 +53,9 @@
|
||||
#define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
|
||||
#define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */
|
||||
|
||||
#define TIOCGRS485 0x542E
|
||||
#define TIOCSRS485 0x542F
|
||||
|
||||
#define FIONCLEX 0x5450 /* these numbers need to be adjusted. */
|
||||
#define FIOCLEX 0x5451
|
||||
#define FIOASYNC 0x5452
|
||||
|
@ -8,10 +8,16 @@
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __ASM_MACH_PCI_H
|
||||
#define __ASM_MACH_PCI_H
|
||||
|
||||
struct pci_sys_data;
|
||||
struct pci_bus;
|
||||
|
||||
struct hw_pci {
|
||||
#ifdef CONFIG_PCI_DOMAINS
|
||||
int domain;
|
||||
#endif
|
||||
struct list_head buses;
|
||||
int nr_controllers;
|
||||
int (*setup)(int nr, struct pci_sys_data *);
|
||||
@ -26,6 +32,9 @@ struct hw_pci {
|
||||
* Per-controller structure
|
||||
*/
|
||||
struct pci_sys_data {
|
||||
#ifdef CONFIG_PCI_DOMAINS
|
||||
int domain;
|
||||
#endif
|
||||
struct list_head node;
|
||||
int busnr; /* primary bus number */
|
||||
u64 mem_offset; /* bus->cpu memory mapping offset */
|
||||
@ -70,3 +79,5 @@ extern int pci_v3_setup(int nr, struct pci_sys_data *);
|
||||
extern struct pci_bus *pci_v3_scan_bus(int nr, struct pci_sys_data *);
|
||||
extern void pci_v3_preinit(void);
|
||||
extern void pci_v3_postinit(void);
|
||||
|
||||
#endif /* __ASM_MACH_PCI_H */
|
||||
|
@ -38,7 +38,7 @@ struct sys_timer {
|
||||
void (*init)(void);
|
||||
void (*suspend)(void);
|
||||
void (*resume)(void);
|
||||
#ifndef CONFIG_GENERIC_TIME
|
||||
#ifdef CONFIG_ARCH_USES_GETTIMEOFFSET
|
||||
unsigned long (*offset)(void);
|
||||
#endif
|
||||
};
|
||||
|
@ -4,8 +4,23 @@
|
||||
#ifdef __KERNEL__
|
||||
#include <asm-generic/pci-dma-compat.h>
|
||||
|
||||
#include <asm/mach/pci.h> /* for pci_sys_data */
|
||||
#include <mach/hardware.h> /* for PCIBIOS_MIN_* */
|
||||
|
||||
#ifdef CONFIG_PCI_DOMAINS
|
||||
static inline int pci_domain_nr(struct pci_bus *bus)
|
||||
{
|
||||
struct pci_sys_data *root = bus->sysdata;
|
||||
|
||||
return root->domain;
|
||||
}
|
||||
|
||||
static inline int pci_proc_domain(struct pci_bus *bus)
|
||||
{
|
||||
return pci_domain_nr(bus);
|
||||
}
|
||||
#endif /* CONFIG_PCI_DOMAINS */
|
||||
|
||||
#ifdef CONFIG_PCI_HOST_ITE8152
|
||||
/* ITE bridge requires setting latency timer to avoid early bus access
|
||||
termination by PIC bus mater devices
|
||||
|
@ -28,4 +28,21 @@ set_perf_event_pending(void)
|
||||
* same indexes here for consistency. */
|
||||
#define PERF_EVENT_INDEX_OFFSET 1
|
||||
|
||||
/* ARM perf PMU IDs for use by internal perf clients. */
|
||||
enum arm_perf_pmu_ids {
|
||||
ARM_PERF_PMU_ID_XSCALE1 = 0,
|
||||
ARM_PERF_PMU_ID_XSCALE2,
|
||||
ARM_PERF_PMU_ID_V6,
|
||||
ARM_PERF_PMU_ID_V6MP,
|
||||
ARM_PERF_PMU_ID_CA8,
|
||||
ARM_PERF_PMU_ID_CA9,
|
||||
ARM_NUM_PMU_IDS,
|
||||
};
|
||||
|
||||
extern enum arm_perf_pmu_ids
|
||||
armpmu_get_pmu_id(void);
|
||||
|
||||
extern int
|
||||
armpmu_get_max_events(void);
|
||||
|
||||
#endif /* __ARM_PERF_EVENT_H__ */
|
||||
|
@ -314,7 +314,7 @@ static inline pte_t pte_mkspecial(pte_t pte) { return pte; }
|
||||
__pgprot_modify(prot, L_PTE_MT_MASK, L_PTE_MT_UNCACHED)
|
||||
#define pgprot_writecombine(prot) \
|
||||
__pgprot_modify(prot, L_PTE_MT_MASK, L_PTE_MT_BUFFERABLE)
|
||||
#if __LINUX_ARM_ARCH__ >= 7
|
||||
#ifdef CONFIG_ARM_DMA_MEM_BUFFERABLE
|
||||
#define pgprot_dmacoherent(prot) \
|
||||
__pgprot_modify(prot, L_PTE_MT_MASK|L_PTE_EXEC, L_PTE_MT_BUFFERABLE)
|
||||
#else
|
||||
|
@ -12,33 +12,33 @@
|
||||
#ifndef __ARM_PMU_H__
|
||||
#define __ARM_PMU_H__
|
||||
|
||||
#ifdef CONFIG_CPU_HAS_PMU
|
||||
|
||||
struct pmu_irqs {
|
||||
const int *irqs;
|
||||
int num_irqs;
|
||||
enum arm_pmu_type {
|
||||
ARM_PMU_DEVICE_CPU = 0,
|
||||
ARM_NUM_PMU_DEVICES,
|
||||
};
|
||||
|
||||
#ifdef CONFIG_CPU_HAS_PMU
|
||||
|
||||
/**
|
||||
* reserve_pmu() - reserve the hardware performance counters
|
||||
*
|
||||
* Reserve the hardware performance counters in the system for exclusive use.
|
||||
* The 'struct pmu_irqs' for the system is returned on success, ERR_PTR()
|
||||
* The platform_device for the system is returned on success, ERR_PTR()
|
||||
* encoded error on failure.
|
||||
*/
|
||||
extern const struct pmu_irqs *
|
||||
reserve_pmu(void);
|
||||
extern struct platform_device *
|
||||
reserve_pmu(enum arm_pmu_type device);
|
||||
|
||||
/**
|
||||
* release_pmu() - Relinquish control of the performance counters
|
||||
*
|
||||
* Release the performance counters and allow someone else to use them.
|
||||
* Callers must have disabled the counters and released IRQs before calling
|
||||
* this. The 'struct pmu_irqs' returned from reserve_pmu() must be passed as
|
||||
* this. The platform_device returned from reserve_pmu() must be passed as
|
||||
* a cookie.
|
||||
*/
|
||||
extern int
|
||||
release_pmu(const struct pmu_irqs *irqs);
|
||||
release_pmu(struct platform_device *pdev);
|
||||
|
||||
/**
|
||||
* init_pmu() - Initialise the PMU.
|
||||
@ -48,24 +48,26 @@ release_pmu(const struct pmu_irqs *irqs);
|
||||
* the actual hardware initialisation.
|
||||
*/
|
||||
extern int
|
||||
init_pmu(void);
|
||||
init_pmu(enum arm_pmu_type device);
|
||||
|
||||
#else /* CONFIG_CPU_HAS_PMU */
|
||||
|
||||
static inline const struct pmu_irqs *
|
||||
reserve_pmu(void)
|
||||
#include <linux/err.h>
|
||||
|
||||
static inline struct platform_device *
|
||||
reserve_pmu(enum arm_pmu_type device)
|
||||
{
|
||||
return ERR_PTR(-ENODEV);
|
||||
}
|
||||
|
||||
static inline int
|
||||
release_pmu(const struct pmu_irqs *irqs)
|
||||
release_pmu(struct platform_device *pdev)
|
||||
{
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
static inline int
|
||||
init_pmu(void)
|
||||
init_pmu(enum arm_pmu_type device)
|
||||
{
|
||||
return -ENODEV;
|
||||
}
|
||||
|
@ -4,24 +4,8 @@
|
||||
#include <asm/memory.h>
|
||||
#include <asm/types.h>
|
||||
|
||||
struct scatterlist {
|
||||
#ifdef CONFIG_DEBUG_SG
|
||||
unsigned long sg_magic;
|
||||
#endif
|
||||
unsigned long page_link;
|
||||
unsigned int offset; /* buffer offset */
|
||||
dma_addr_t dma_address; /* dma address */
|
||||
unsigned int length; /* length */
|
||||
};
|
||||
#include <asm-generic/scatterlist.h>
|
||||
|
||||
/*
|
||||
* These macros should be used after a pci_map_sg call has been done
|
||||
* to get bus addresses of each of the SG entries and their lengths.
|
||||
* You should only work with the number of sg entries pci_map_sg
|
||||
* returns, or alternatively stop on the first sg_dma_len(sg) which
|
||||
* is 0.
|
||||
*/
|
||||
#define sg_dma_address(sg) ((sg)->dma_address)
|
||||
#define sg_dma_len(sg) ((sg)->length)
|
||||
#undef ARCH_HAS_SG_CHAIN
|
||||
|
||||
#endif /* _ASMARM_SCATTERLIST_H */
|
||||
|
@ -82,7 +82,7 @@ struct secondary_data {
|
||||
extern struct secondary_data secondary_data;
|
||||
|
||||
extern int __cpu_disable(void);
|
||||
extern int mach_cpu_disable(unsigned int cpu);
|
||||
extern int platform_cpu_disable(unsigned int cpu);
|
||||
|
||||
extern void __cpu_die(unsigned int cpu);
|
||||
extern void cpu_die(void);
|
||||
|
@ -141,7 +141,7 @@ extern unsigned int user_debug;
|
||||
|
||||
#ifdef CONFIG_ARCH_HAS_BARRIERS
|
||||
#include <mach/barriers.h>
|
||||
#elif __LINUX_ARM_ARCH__ >= 7 || defined(CONFIG_SMP)
|
||||
#elif defined(CONFIG_ARM_DMA_MEM_BUFFERABLE) || defined(CONFIG_SMP)
|
||||
#define mb() do { dsb(); outer_sync(); } while (0)
|
||||
#define rmb() dmb()
|
||||
#define wmb() mb()
|
||||
|
@ -527,6 +527,9 @@ static void __init pcibios_init_hw(struct hw_pci *hw)
|
||||
if (!sys)
|
||||
panic("PCI: unable to allocate sys data!");
|
||||
|
||||
#ifdef CONFIG_PCI_DOMAINS
|
||||
sys->domain = hw->domain;
|
||||
#endif
|
||||
sys->hw = hw;
|
||||
sys->busnr = busnr;
|
||||
sys->swizzle = hw->swizzle;
|
||||
|
@ -16,6 +16,8 @@
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/errno.h>
|
||||
#include <linux/scatterlist.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/proc_fs.h>
|
||||
|
||||
#include <asm/dma.h>
|
||||
|
||||
@ -264,3 +266,37 @@ int get_dma_residue(unsigned int chan)
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(get_dma_residue);
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
static int proc_dma_show(struct seq_file *m, void *v)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0 ; i < MAX_DMA_CHANNELS ; i++) {
|
||||
dma_t *dma = dma_channel(i);
|
||||
if (dma && dma->lock)
|
||||
seq_printf(m, "%2d: %s\n", i, dma->device_id);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int proc_dma_open(struct inode *inode, struct file *file)
|
||||
{
|
||||
return single_open(file, proc_dma_show, NULL);
|
||||
}
|
||||
|
||||
static const struct file_operations proc_dma_operations = {
|
||||
.open = proc_dma_open,
|
||||
.read = seq_read,
|
||||
.llseek = seq_lseek,
|
||||
.release = single_release,
|
||||
};
|
||||
|
||||
static int __init proc_dma_init(void)
|
||||
{
|
||||
proc_create("dma", 0, NULL, &proc_dma_operations);
|
||||
return 0;
|
||||
}
|
||||
|
||||
__initcall(proc_dma_init);
|
||||
#endif
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -2,6 +2,7 @@
|
||||
* linux/arch/arm/kernel/pmu.c
|
||||
*
|
||||
* Copyright (C) 2009 picoChip Designs Ltd, Jamie Iles
|
||||
* Copyright (C) 2010 ARM Ltd, Will Deacon
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
@ -9,65 +10,78 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "PMU: " fmt
|
||||
|
||||
#include <linux/cpumask.h>
|
||||
#include <linux/err.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/platform_device.h>
|
||||
|
||||
#include <asm/pmu.h>
|
||||
|
||||
/*
|
||||
* Define the IRQs for the system. We could use something like a platform
|
||||
* device but that seems fairly heavyweight for this. Also, the performance
|
||||
* counters can't be removed or hotplugged.
|
||||
*
|
||||
* Ordering is important: init_pmu() will use the ordering to set the affinity
|
||||
* to the corresponding core. e.g. the first interrupt will go to cpu 0, the
|
||||
* second goes to cpu 1 etc.
|
||||
*/
|
||||
static const int irqs[] = {
|
||||
#if defined(CONFIG_ARCH_OMAP2)
|
||||
3,
|
||||
#elif defined(CONFIG_ARCH_BCMRING)
|
||||
IRQ_PMUIRQ,
|
||||
#elif defined(CONFIG_MACH_REALVIEW_EB)
|
||||
IRQ_EB11MP_PMU_CPU0,
|
||||
IRQ_EB11MP_PMU_CPU1,
|
||||
IRQ_EB11MP_PMU_CPU2,
|
||||
IRQ_EB11MP_PMU_CPU3,
|
||||
#elif defined(CONFIG_ARCH_OMAP3)
|
||||
INT_34XX_BENCH_MPU_EMUL,
|
||||
#elif defined(CONFIG_ARCH_IOP32X)
|
||||
IRQ_IOP32X_CORE_PMU,
|
||||
#elif defined(CONFIG_ARCH_IOP33X)
|
||||
IRQ_IOP33X_CORE_PMU,
|
||||
#elif defined(CONFIG_ARCH_PXA)
|
||||
IRQ_PMU,
|
||||
#endif
|
||||
};
|
||||
|
||||
static const struct pmu_irqs pmu_irqs = {
|
||||
.irqs = irqs,
|
||||
.num_irqs = ARRAY_SIZE(irqs),
|
||||
};
|
||||
|
||||
static volatile long pmu_lock;
|
||||
|
||||
const struct pmu_irqs *
|
||||
reserve_pmu(void)
|
||||
static struct platform_device *pmu_devices[ARM_NUM_PMU_DEVICES];
|
||||
|
||||
static int __devinit pmu_device_probe(struct platform_device *pdev)
|
||||
{
|
||||
return test_and_set_bit_lock(0, &pmu_lock) ? ERR_PTR(-EBUSY) :
|
||||
&pmu_irqs;
|
||||
|
||||
if (pdev->id < 0 || pdev->id >= ARM_NUM_PMU_DEVICES) {
|
||||
pr_warning("received registration request for unknown "
|
||||
"device %d\n", pdev->id);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (pmu_devices[pdev->id])
|
||||
pr_warning("registering new PMU device type %d overwrites "
|
||||
"previous registration!\n", pdev->id);
|
||||
else
|
||||
pr_info("registered new PMU device of type %d\n",
|
||||
pdev->id);
|
||||
|
||||
pmu_devices[pdev->id] = pdev;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct platform_driver pmu_driver = {
|
||||
.driver = {
|
||||
.name = "arm-pmu",
|
||||
},
|
||||
.probe = pmu_device_probe,
|
||||
};
|
||||
|
||||
static int __init register_pmu_driver(void)
|
||||
{
|
||||
return platform_driver_register(&pmu_driver);
|
||||
}
|
||||
device_initcall(register_pmu_driver);
|
||||
|
||||
struct platform_device *
|
||||
reserve_pmu(enum arm_pmu_type device)
|
||||
{
|
||||
struct platform_device *pdev;
|
||||
|
||||
if (test_and_set_bit_lock(device, &pmu_lock)) {
|
||||
pdev = ERR_PTR(-EBUSY);
|
||||
} else if (pmu_devices[device] == NULL) {
|
||||
clear_bit_unlock(device, &pmu_lock);
|
||||
pdev = ERR_PTR(-ENODEV);
|
||||
} else {
|
||||
pdev = pmu_devices[device];
|
||||
}
|
||||
|
||||
return pdev;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(reserve_pmu);
|
||||
|
||||
int
|
||||
release_pmu(const struct pmu_irqs *irqs)
|
||||
release_pmu(struct platform_device *pdev)
|
||||
{
|
||||
if (WARN_ON(irqs != &pmu_irqs))
|
||||
if (WARN_ON(pdev != pmu_devices[pdev->id]))
|
||||
return -EINVAL;
|
||||
clear_bit_unlock(0, &pmu_lock);
|
||||
clear_bit_unlock(pdev->id, &pmu_lock);
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(release_pmu);
|
||||
@ -87,17 +101,42 @@ set_irq_affinity(int irq,
|
||||
#endif
|
||||
}
|
||||
|
||||
int
|
||||
init_pmu(void)
|
||||
static int
|
||||
init_cpu_pmu(void)
|
||||
{
|
||||
int i, err = 0;
|
||||
struct platform_device *pdev = pmu_devices[ARM_PMU_DEVICE_CPU];
|
||||
|
||||
for (i = 0; i < pmu_irqs.num_irqs; ++i) {
|
||||
err = set_irq_affinity(pmu_irqs.irqs[i], i);
|
||||
if (!pdev) {
|
||||
err = -ENODEV;
|
||||
goto out;
|
||||
}
|
||||
|
||||
for (i = 0; i < pdev->num_resources; ++i) {
|
||||
err = set_irq_affinity(platform_get_irq(pdev, i), i);
|
||||
if (err)
|
||||
break;
|
||||
}
|
||||
|
||||
out:
|
||||
return err;
|
||||
}
|
||||
|
||||
int
|
||||
init_pmu(enum arm_pmu_type device)
|
||||
{
|
||||
int err = 0;
|
||||
|
||||
switch (device) {
|
||||
case ARM_PMU_DEVICE_CPU:
|
||||
err = init_cpu_pmu();
|
||||
break;
|
||||
default:
|
||||
pr_warning("attempt to initialise unknown device %d\n",
|
||||
device);
|
||||
err = -EINVAL;
|
||||
}
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(init_pmu);
|
||||
|
@ -168,7 +168,7 @@ int __cpu_disable(void)
|
||||
struct task_struct *p;
|
||||
int ret;
|
||||
|
||||
ret = mach_cpu_disable(cpu);
|
||||
ret = platform_cpu_disable(cpu);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
|
@ -72,12 +72,15 @@ unsigned long profile_pc(struct pt_regs *regs)
|
||||
EXPORT_SYMBOL(profile_pc);
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_GENERIC_TIME
|
||||
static unsigned long dummy_gettimeoffset(void)
|
||||
#ifdef CONFIG_ARCH_USES_GETTIMEOFFSET
|
||||
u32 arch_gettimeoffset(void)
|
||||
{
|
||||
if (system_timer->offset != NULL)
|
||||
return system_timer->offset() * 1000;
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
#endif /* CONFIG_ARCH_USES_GETTIMEOFFSET */
|
||||
|
||||
#ifdef CONFIG_LEDS_TIMER
|
||||
static inline void do_leds(void)
|
||||
@ -93,63 +96,6 @@ static inline void do_leds(void)
|
||||
#define do_leds()
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_GENERIC_TIME
|
||||
void do_gettimeofday(struct timeval *tv)
|
||||
{
|
||||
unsigned long flags;
|
||||
unsigned long seq;
|
||||
unsigned long usec, sec;
|
||||
|
||||
do {
|
||||
seq = read_seqbegin_irqsave(&xtime_lock, flags);
|
||||
usec = system_timer->offset();
|
||||
sec = xtime.tv_sec;
|
||||
usec += xtime.tv_nsec / 1000;
|
||||
} while (read_seqretry_irqrestore(&xtime_lock, seq, flags));
|
||||
|
||||
/* usec may have gone up a lot: be safe */
|
||||
while (usec >= 1000000) {
|
||||
usec -= 1000000;
|
||||
sec++;
|
||||
}
|
||||
|
||||
tv->tv_sec = sec;
|
||||
tv->tv_usec = usec;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(do_gettimeofday);
|
||||
|
||||
int do_settimeofday(struct timespec *tv)
|
||||
{
|
||||
time_t wtm_sec, sec = tv->tv_sec;
|
||||
long wtm_nsec, nsec = tv->tv_nsec;
|
||||
|
||||
if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC)
|
||||
return -EINVAL;
|
||||
|
||||
write_seqlock_irq(&xtime_lock);
|
||||
/*
|
||||
* This is revolting. We need to set "xtime" correctly. However, the
|
||||
* value in this location is the value at the most recent update of
|
||||
* wall time. Discover what correction gettimeofday() would have
|
||||
* done, and then undo it!
|
||||
*/
|
||||
nsec -= system_timer->offset() * NSEC_PER_USEC;
|
||||
|
||||
wtm_sec = wall_to_monotonic.tv_sec + (xtime.tv_sec - sec);
|
||||
wtm_nsec = wall_to_monotonic.tv_nsec + (xtime.tv_nsec - nsec);
|
||||
|
||||
set_normalized_timespec(&xtime, sec, nsec);
|
||||
set_normalized_timespec(&wall_to_monotonic, wtm_sec, wtm_nsec);
|
||||
|
||||
ntp_clear();
|
||||
write_sequnlock_irq(&xtime_lock);
|
||||
clock_was_set();
|
||||
return 0;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(do_settimeofday);
|
||||
#endif /* !CONFIG_GENERIC_TIME */
|
||||
|
||||
#ifndef CONFIG_GENERIC_CLOCKEVENTS
|
||||
/*
|
||||
@ -214,10 +160,6 @@ device_initcall(timer_init_sysfs);
|
||||
|
||||
void __init time_init(void)
|
||||
{
|
||||
#ifndef CONFIG_GENERIC_TIME
|
||||
if (system_timer->offset == NULL)
|
||||
system_timer->offset = dummy_gettimeoffset;
|
||||
#endif
|
||||
system_timer->init();
|
||||
}
|
||||
|
||||
|
@ -23,14 +23,12 @@ choice
|
||||
config ARCH_AT91RM9200
|
||||
bool "AT91RM9200"
|
||||
select CPU_ARM920T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_AT91_USART3
|
||||
|
||||
config ARCH_AT91SAM9260
|
||||
bool "AT91SAM9260 or AT91SAM9XE"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_AT91_USART3
|
||||
select HAVE_AT91_USART4
|
||||
@ -39,28 +37,24 @@ config ARCH_AT91SAM9260
|
||||
config ARCH_AT91SAM9261
|
||||
bool "AT91SAM9261"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_FB_ATMEL
|
||||
|
||||
config ARCH_AT91SAM9G10
|
||||
bool "AT91SAM9G10"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_FB_ATMEL
|
||||
|
||||
config ARCH_AT91SAM9263
|
||||
bool "AT91SAM9263"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_FB_ATMEL
|
||||
|
||||
config ARCH_AT91SAM9RL
|
||||
bool "AT91SAM9RL"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_AT91_USART3
|
||||
select HAVE_FB_ATMEL
|
||||
@ -68,7 +62,6 @@ config ARCH_AT91SAM9RL
|
||||
config ARCH_AT91SAM9G20
|
||||
bool "AT91SAM9G20"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_AT91_USART3
|
||||
select HAVE_AT91_USART4
|
||||
@ -77,7 +70,6 @@ config ARCH_AT91SAM9G20
|
||||
config ARCH_AT91SAM9G45
|
||||
bool "AT91SAM9G45"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_AT91_USART3
|
||||
select HAVE_FB_ATMEL
|
||||
@ -85,18 +77,17 @@ config ARCH_AT91SAM9G45
|
||||
config ARCH_AT91CAP9
|
||||
bool "AT91CAP9"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
select HAVE_FB_ATMEL
|
||||
|
||||
config ARCH_AT572D940HF
|
||||
bool "AT572D940HF"
|
||||
select CPU_ARM926T
|
||||
select GENERIC_TIME
|
||||
select GENERIC_CLOCKEVENTS
|
||||
|
||||
config ARCH_AT91X40
|
||||
bool "AT91x40"
|
||||
select ARCH_USES_GETTIMEOFFSET
|
||||
|
||||
endchoice
|
||||
|
||||
@ -360,6 +351,19 @@ config MACH_CPU9G20
|
||||
Select this if you are using a Eukrea Electromatique's
|
||||
CPU9G20 Board <http://www.eukrea.com/>
|
||||
|
||||
config MACH_PORTUXG20
|
||||
bool "taskit PortuxG20"
|
||||
help
|
||||
Select this if you are using taskit's PortuxG20.
|
||||
<http://www.taskit.de/en/>
|
||||
|
||||
config MACH_STAMP9G20
|
||||
bool "taskit Stamp9G20 CPU module"
|
||||
help
|
||||
Select this if you are using taskit's Stamp9G20 CPU module on its
|
||||
evaluation board.
|
||||
<http://www.taskit.de/en/>
|
||||
|
||||
endif
|
||||
|
||||
# ----------------------------------------------------------
|
||||
|
@ -63,6 +63,8 @@ obj-$(CONFIG_MACH_AT91SAM9RLEK) += board-sam9rlek.o
|
||||
obj-$(CONFIG_MACH_AT91SAM9G20EK) += board-sam9g20ek.o
|
||||
obj-$(CONFIG_MACH_AT91SAM9G20EK_2MMC) += board-sam9g20ek-2slot-mmc.o
|
||||
obj-$(CONFIG_MACH_CPU9G20) += board-cpu9krea.o
|
||||
obj-$(CONFIG_MACH_STAMP9G20) += board-stamp9g20.o
|
||||
obj-$(CONFIG_MACH_PORTUXG20) += board-stamp9g20.o
|
||||
|
||||
# AT91SAM9G45 board-specific support
|
||||
obj-$(CONFIG_MACH_AT91SAM9G45EKES) += board-sam9m10g45ek.o
|
||||
|
315
arch/arm/mach-at91/board-stamp9g20.c
Normal file
315
arch/arm/mach-at91/board-stamp9g20.c
Normal file
@ -0,0 +1,315 @@
|
||||
/*
|
||||
* Copyright (C) 2010 Christian Glindkamp <christian.glindkamp@taskit.de>
|
||||
* taskit GmbH
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <linux/mm.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/gpio.h>
|
||||
#include <linux/w1-gpio.h>
|
||||
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
#include <mach/board.h>
|
||||
#include <mach/at91sam9_smc.h>
|
||||
|
||||
#include "sam9_smc.h"
|
||||
#include "generic.h"
|
||||
|
||||
|
||||
static void __init portuxg20_map_io(void)
|
||||
{
|
||||
/* Initialize processor: 18.432 MHz crystal */
|
||||
at91sam9260_initialize(18432000);
|
||||
|
||||
/* DGBU on ttyS0. (Rx & Tx only) */
|
||||
at91_register_uart(0, 0, 0);
|
||||
|
||||
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
|
||||
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
|
||||
| ATMEL_UART_DTR | ATMEL_UART_DSR
|
||||
| ATMEL_UART_DCD | ATMEL_UART_RI);
|
||||
|
||||
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) */
|
||||
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
|
||||
|
||||
/* USART2 on ttyS3. (Rx, Tx, CTS, RTS) */
|
||||
at91_register_uart(AT91SAM9260_ID_US2, 3, ATMEL_UART_CTS | ATMEL_UART_RTS);
|
||||
|
||||
/* USART4 on ttyS5. (Rx, Tx only) */
|
||||
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
|
||||
|
||||
/* USART5 on ttyS6. (Rx, Tx only) */
|
||||
at91_register_uart(AT91SAM9260_ID_US5, 6, 0);
|
||||
|
||||
/* set serial console to ttyS0 (ie, DBGU) */
|
||||
at91_set_serial_console(0);
|
||||
}
|
||||
|
||||
static void __init stamp9g20_map_io(void)
|
||||
{
|
||||
/* Initialize processor: 18.432 MHz crystal */
|
||||
at91sam9260_initialize(18432000);
|
||||
|
||||
/* DGBU on ttyS0. (Rx & Tx only) */
|
||||
at91_register_uart(0, 0, 0);
|
||||
|
||||
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
|
||||
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
|
||||
| ATMEL_UART_DTR | ATMEL_UART_DSR
|
||||
| ATMEL_UART_DCD | ATMEL_UART_RI);
|
||||
|
||||
/* set serial console to ttyS0 (ie, DBGU) */
|
||||
at91_set_serial_console(0);
|
||||
}
|
||||
|
||||
static void __init init_irq(void)
|
||||
{
|
||||
at91sam9260_init_interrupts(NULL);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* NAND flash
|
||||
*/
|
||||
static struct atmel_nand_data __initdata nand_data = {
|
||||
.ale = 21,
|
||||
.cle = 22,
|
||||
.rdy_pin = AT91_PIN_PC13,
|
||||
.enable_pin = AT91_PIN_PC14,
|
||||
.bus_width_16 = 0,
|
||||
};
|
||||
|
||||
static struct sam9_smc_config __initdata nand_smc_config = {
|
||||
.ncs_read_setup = 0,
|
||||
.nrd_setup = 2,
|
||||
.ncs_write_setup = 0,
|
||||
.nwe_setup = 2,
|
||||
|
||||
.ncs_read_pulse = 4,
|
||||
.nrd_pulse = 4,
|
||||
.ncs_write_pulse = 4,
|
||||
.nwe_pulse = 4,
|
||||
|
||||
.read_cycle = 7,
|
||||
.write_cycle = 7,
|
||||
|
||||
.mode = AT91_SMC_READMODE | AT91_SMC_WRITEMODE | AT91_SMC_EXNWMODE_DISABLE | AT91_SMC_DBW_8,
|
||||
.tdf_cycles = 3,
|
||||
};
|
||||
|
||||
static void __init add_device_nand(void)
|
||||
{
|
||||
/* configure chip-select 3 (NAND) */
|
||||
sam9_smc_configure(3, &nand_smc_config);
|
||||
|
||||
at91_add_device_nand(&nand_data);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* MCI (SD/MMC)
|
||||
* det_pin, wp_pin and vcc_pin are not connected
|
||||
*/
|
||||
#if defined(CONFIG_MMC_ATMELMCI) || defined(CONFIG_MMC_ATMELMCI_MODULE)
|
||||
static struct mci_platform_data __initdata mmc_data = {
|
||||
.slot[0] = {
|
||||
.bus_width = 4,
|
||||
},
|
||||
};
|
||||
#else
|
||||
static struct at91_mmc_data __initdata mmc_data = {
|
||||
.slot_b = 0,
|
||||
.wire4 = 1,
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* USB Host port
|
||||
*/
|
||||
static struct at91_usbh_data __initdata usbh_data = {
|
||||
.ports = 2,
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* USB Device port
|
||||
*/
|
||||
static struct at91_udc_data __initdata portuxg20_udc_data = {
|
||||
.vbus_pin = AT91_PIN_PC7,
|
||||
.pullup_pin = 0, /* pull-up driven by UDC */
|
||||
};
|
||||
|
||||
static struct at91_udc_data __initdata stamp9g20_udc_data = {
|
||||
.vbus_pin = AT91_PIN_PA22,
|
||||
.pullup_pin = 0, /* pull-up driven by UDC */
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* MACB Ethernet device
|
||||
*/
|
||||
static struct at91_eth_data __initdata macb_data = {
|
||||
.phy_irq_pin = AT91_PIN_PA28,
|
||||
.is_rmii = 1,
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* LEDs
|
||||
*/
|
||||
static struct gpio_led portuxg20_leds[] = {
|
||||
{
|
||||
.name = "LED2",
|
||||
.gpio = AT91_PIN_PC5,
|
||||
.default_trigger = "none",
|
||||
}, {
|
||||
.name = "LED3",
|
||||
.gpio = AT91_PIN_PC4,
|
||||
.default_trigger = "none",
|
||||
}, {
|
||||
.name = "LED4",
|
||||
.gpio = AT91_PIN_PC10,
|
||||
.default_trigger = "heartbeat",
|
||||
}
|
||||
};
|
||||
|
||||
static struct gpio_led stamp9g20_leds[] = {
|
||||
{
|
||||
.name = "D8",
|
||||
.gpio = AT91_PIN_PB18,
|
||||
.active_low = 1,
|
||||
.default_trigger = "none",
|
||||
}, {
|
||||
.name = "D9",
|
||||
.gpio = AT91_PIN_PB19,
|
||||
.active_low = 1,
|
||||
.default_trigger = "none",
|
||||
}, {
|
||||
.name = "D10",
|
||||
.gpio = AT91_PIN_PB20,
|
||||
.active_low = 1,
|
||||
.default_trigger = "heartbeat",
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* SPI devices
|
||||
*/
|
||||
static struct spi_board_info portuxg20_spi_devices[] = {
|
||||
{
|
||||
.modalias = "spidev",
|
||||
.chip_select = 0,
|
||||
.max_speed_hz = 1 * 1000 * 1000,
|
||||
.bus_num = 0,
|
||||
}, {
|
||||
.modalias = "spidev",
|
||||
.chip_select = 0,
|
||||
.max_speed_hz = 1 * 1000 * 1000,
|
||||
.bus_num = 1,
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* Dallas 1-Wire
|
||||
*/
|
||||
static struct w1_gpio_platform_data w1_gpio_pdata = {
|
||||
.pin = AT91_PIN_PA29,
|
||||
.is_open_drain = 1,
|
||||
};
|
||||
|
||||
static struct platform_device w1_device = {
|
||||
.name = "w1-gpio",
|
||||
.id = -1,
|
||||
.dev.platform_data = &w1_gpio_pdata,
|
||||
};
|
||||
|
||||
void add_w1(void)
|
||||
{
|
||||
at91_set_GPIO_periph(w1_gpio_pdata.pin, 1);
|
||||
at91_set_multi_drive(w1_gpio_pdata.pin, 1);
|
||||
platform_device_register(&w1_device);
|
||||
}
|
||||
|
||||
|
||||
static void __init generic_board_init(void)
|
||||
{
|
||||
/* Serial */
|
||||
at91_add_device_serial();
|
||||
/* NAND */
|
||||
add_device_nand();
|
||||
/* MMC */
|
||||
#if defined(CONFIG_MMC_ATMELMCI) || defined(CONFIG_MMC_ATMELMCI_MODULE)
|
||||
at91_add_device_mci(0, &mmc_data);
|
||||
#else
|
||||
at91_add_device_mmc(0, &mmc_data);
|
||||
#endif
|
||||
/* USB Host */
|
||||
at91_add_device_usbh(&usbh_data);
|
||||
/* Ethernet */
|
||||
at91_add_device_eth(&macb_data);
|
||||
/* I2C */
|
||||
at91_add_device_i2c(NULL, 0);
|
||||
/* W1 */
|
||||
add_w1();
|
||||
}
|
||||
|
||||
static void __init portuxg20_board_init(void)
|
||||
{
|
||||
generic_board_init();
|
||||
/* SPI */
|
||||
at91_add_device_spi(portuxg20_spi_devices, ARRAY_SIZE(portuxg20_spi_devices));
|
||||
/* USB Device */
|
||||
at91_add_device_udc(&portuxg20_udc_data);
|
||||
/* LEDs */
|
||||
at91_gpio_leds(portuxg20_leds, ARRAY_SIZE(portuxg20_leds));
|
||||
}
|
||||
|
||||
static void __init stamp9g20_board_init(void)
|
||||
{
|
||||
generic_board_init();
|
||||
/* USB Device */
|
||||
at91_add_device_udc(&stamp9g20_udc_data);
|
||||
/* LEDs */
|
||||
at91_gpio_leds(stamp9g20_leds, ARRAY_SIZE(stamp9g20_leds));
|
||||
}
|
||||
|
||||
MACHINE_START(PORTUXG20, "taskit PortuxG20")
|
||||
/* Maintainer: taskit GmbH */
|
||||
.phys_io = AT91_BASE_SYS,
|
||||
.io_pg_offst = (AT91_VA_BASE_SYS >> 18) & 0xfffc,
|
||||
.boot_params = AT91_SDRAM_BASE + 0x100,
|
||||
.timer = &at91sam926x_timer,
|
||||
.map_io = portuxg20_map_io,
|
||||
.init_irq = init_irq,
|
||||
.init_machine = portuxg20_board_init,
|
||||
MACHINE_END
|
||||
|
||||
MACHINE_START(STAMP9G20, "taskit Stamp9G20")
|
||||
/* Maintainer: taskit GmbH */
|
||||
.phys_io = AT91_BASE_SYS,
|
||||
.io_pg_offst = (AT91_VA_BASE_SYS >> 18) & 0xfffc,
|
||||
.boot_params = AT91_SDRAM_BASE + 0x100,
|
||||
.timer = &at91sam926x_timer,
|
||||
.map_io = stamp9g20_map_io,
|
||||
.init_irq = init_irq,
|
||||
.init_machine = stamp9g20_board_init,
|
||||
MACHINE_END
|
@ -39,6 +39,7 @@
|
||||
#include <linux/usb/atmel_usba_udc.h>
|
||||
#include <linux/atmel-mci.h>
|
||||
#include <sound/atmel-ac97c.h>
|
||||
#include <linux/serial.h>
|
||||
|
||||
/* USB Device */
|
||||
struct at91_udc_data {
|
||||
@ -143,9 +144,10 @@ extern struct platform_device *atmel_default_console_device;
|
||||
extern void __init __deprecated at91_init_serial(struct at91_uart_config *config);
|
||||
|
||||
struct atmel_uart_data {
|
||||
short use_dma_tx; /* use transmit DMA? */
|
||||
short use_dma_rx; /* use receive DMA? */
|
||||
void __iomem *regs; /* virtual base address, if any */
|
||||
short use_dma_tx; /* use transmit DMA? */
|
||||
short use_dma_rx; /* use receive DMA? */
|
||||
void __iomem *regs; /* virt. base address, if any */
|
||||
struct serial_rs485 rs485; /* rs485 settings */
|
||||
};
|
||||
extern void __init at91_add_device_serial(void);
|
||||
|
||||
|
@ -21,7 +21,7 @@
|
||||
#define ARCH_ID_AT91SAM9260 0x019803a0
|
||||
#define ARCH_ID_AT91SAM9261 0x019703a0
|
||||
#define ARCH_ID_AT91SAM9263 0x019607a0
|
||||
#define ARCH_ID_AT91SAM9G10 0x819903a0
|
||||
#define ARCH_ID_AT91SAM9G10 0x019903a0
|
||||
#define ARCH_ID_AT91SAM9G20 0x019905a0
|
||||
#define ARCH_ID_AT91SAM9RL64 0x019b03a0
|
||||
#define ARCH_ID_AT91SAM9G45 0x819b05a0
|
||||
@ -108,7 +108,7 @@ static inline unsigned long at91cap9_rev_identify(void)
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ARCH_AT91SAM9G10
|
||||
#define cpu_is_at91sam9g10() (at91_cpu_identify() == ARCH_ID_AT91SAM9G10)
|
||||
#define cpu_is_at91sam9g10() ((at91_cpu_identify() & ~AT91_CIDR_EXT) == ARCH_ID_AT91SAM9G10)
|
||||
#else
|
||||
#define cpu_is_at91sam9g10() (0)
|
||||
#endif
|
||||
|
@ -24,21 +24,24 @@
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/at91_st.h>
|
||||
#include <mach/at91_dbgu.h>
|
||||
#include <mach/at91_pmc.h>
|
||||
|
||||
static inline void arch_idle(void)
|
||||
{
|
||||
#ifndef CONFIG_DEBUG_KERNEL
|
||||
/*
|
||||
* Disable the processor clock. The processor will be automatically
|
||||
* re-enabled by an interrupt or by a reset.
|
||||
*/
|
||||
// at91_sys_write(AT91_PMC_SCDR, AT91_PMC_PCK);
|
||||
|
||||
at91_sys_write(AT91_PMC_SCDR, AT91_PMC_PCK);
|
||||
#else
|
||||
/*
|
||||
* Set the processor (CP15) into 'Wait for Interrupt' mode.
|
||||
* Unlike disabling the processor clock via the PMC (above)
|
||||
* this allows the processor to be woken via JTAG.
|
||||
*/
|
||||
cpu_do_idle();
|
||||
#endif
|
||||
}
|
||||
|
||||
void (*at91_arch_reset)(void);
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include <asm/setup.h>
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/time.h>
|
||||
#include <asm/pmu.h>
|
||||
|
||||
#include <asm/mach/arch.h>
|
||||
#include <mach/dma.h>
|
||||
@ -85,8 +86,23 @@ static struct platform_device nand_device = {
|
||||
.num_resources = ARRAY_SIZE(nand_resource),
|
||||
};
|
||||
|
||||
static struct resource pmu_resource = {
|
||||
.start = IRQ_PMUIRQ,
|
||||
.end = IRQ_PMUIRQ,
|
||||
.flags = IORESOURCE_IRQ,
|
||||
};
|
||||
|
||||
static struct platform_device pmu_device = {
|
||||
.name = "arm-pmu",
|
||||
.id = ARM_PMU_DEVICE_CPU,
|
||||
.resource = &pmu_resource,
|
||||
.num_resources = 1,
|
||||
};
|
||||
|
||||
|
||||
static struct platform_device *devices[] __initdata = {
|
||||
&nand_device,
|
||||
&pmu_device,
|
||||
};
|
||||
|
||||
/****************************************************************************
|
||||
|
@ -22,7 +22,6 @@
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/bootmem.h>
|
||||
|
||||
#include <asm/sizes.h>
|
||||
#include <mach/hardware.h>
|
||||
|
12
arch/arm/mach-cns3xxx/Kconfig
Normal file
12
arch/arm/mach-cns3xxx/Kconfig
Normal file
@ -0,0 +1,12 @@
|
||||
menu "CNS3XXX platform type"
|
||||
depends on ARCH_CNS3XXX
|
||||
|
||||
config MACH_CNS3420VB
|
||||
bool "Support for CNS3420 Validation Board"
|
||||
help
|
||||
Include support for the Cavium Networks CNS3420 MPCore Platform
|
||||
Baseboard.
|
||||
This is a platform with an on-board ARM11 MPCore and has support
|
||||
for USB, USB-OTG, MMC/SD/SDIO, SATA, PCI-E, etc.
|
||||
|
||||
endmenu
|
2
arch/arm/mach-cns3xxx/Makefile
Normal file
2
arch/arm/mach-cns3xxx/Makefile
Normal file
@ -0,0 +1,2 @@
|
||||
obj-$(CONFIG_ARCH_CNS3XXX) += core.o pm.o
|
||||
obj-$(CONFIG_MACH_CNS3420VB) += cns3420vb.o
|
3
arch/arm/mach-cns3xxx/Makefile.boot
Normal file
3
arch/arm/mach-cns3xxx/Makefile.boot
Normal file
@ -0,0 +1,3 @@
|
||||
zreladdr-y := 0x00008000
|
||||
params_phys-y := 0x00000100
|
||||
initrd_phys-y := 0x00C00000
|
148
arch/arm/mach-cns3xxx/cns3420vb.c
Normal file
148
arch/arm/mach-cns3xxx/cns3420vb.c
Normal file
@ -0,0 +1,148 @@
|
||||
/*
|
||||
* Cavium Networks CNS3420 Validation Board
|
||||
*
|
||||
* Copyright 2000 Deep Blue Solutions Ltd
|
||||
* Copyright 2008 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
* Scott Shu
|
||||
* Copyright 2010 MontaVista Software, LLC.
|
||||
* Anton Vorontsov <avorontsov@mvista.com>
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/compiler.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/serial_core.h>
|
||||
#include <linux/serial_8250.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/mtd/mtd.h>
|
||||
#include <linux/mtd/physmap.h>
|
||||
#include <linux/mtd/partitions.h>
|
||||
#include <asm/setup.h>
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
#include <asm/mach/map.h>
|
||||
#include <asm/mach/time.h>
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/cns3xxx.h>
|
||||
#include <mach/irqs.h>
|
||||
#include "core.h"
|
||||
|
||||
/*
|
||||
* NOR Flash
|
||||
*/
|
||||
static struct mtd_partition cns3420_nor_partitions[] = {
|
||||
{
|
||||
.name = "uboot",
|
||||
.size = 0x00040000,
|
||||
.offset = 0,
|
||||
.mask_flags = MTD_WRITEABLE,
|
||||
}, {
|
||||
.name = "kernel",
|
||||
.size = 0x004C0000,
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
}, {
|
||||
.name = "filesystem",
|
||||
.size = 0x7000000,
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
}, {
|
||||
.name = "filesystem2",
|
||||
.size = 0x0AE0000,
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
}, {
|
||||
.name = "ubootenv",
|
||||
.size = MTDPART_SIZ_FULL,
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
},
|
||||
};
|
||||
|
||||
static struct physmap_flash_data cns3420_nor_pdata = {
|
||||
.width = 2,
|
||||
.parts = cns3420_nor_partitions,
|
||||
.nr_parts = ARRAY_SIZE(cns3420_nor_partitions),
|
||||
};
|
||||
|
||||
static struct resource cns3420_nor_res = {
|
||||
.start = CNS3XXX_FLASH_BASE,
|
||||
.end = CNS3XXX_FLASH_BASE + SZ_128M - 1,
|
||||
.flags = IORESOURCE_MEM | IORESOURCE_MEM_32BIT,
|
||||
};
|
||||
|
||||
static struct platform_device cns3420_nor_pdev = {
|
||||
.name = "physmap-flash",
|
||||
.id = 0,
|
||||
.resource = &cns3420_nor_res,
|
||||
.num_resources = 1,
|
||||
.dev = {
|
||||
.platform_data = &cns3420_nor_pdata,
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* UART
|
||||
*/
|
||||
static void __init cns3420_early_serial_setup(void)
|
||||
{
|
||||
#ifdef CONFIG_SERIAL_8250_CONSOLE
|
||||
static struct uart_port cns3420_serial_port = {
|
||||
.membase = (void __iomem *)CNS3XXX_UART0_BASE_VIRT,
|
||||
.mapbase = CNS3XXX_UART0_BASE,
|
||||
.irq = IRQ_CNS3XXX_UART0,
|
||||
.iotype = UPIO_MEM,
|
||||
.flags = UPF_BOOT_AUTOCONF | UPF_FIXED_TYPE,
|
||||
.regshift = 2,
|
||||
.uartclk = 24000000,
|
||||
.line = 0,
|
||||
.type = PORT_16550A,
|
||||
.fifosize = 16,
|
||||
};
|
||||
|
||||
early_serial_setup(&cns3420_serial_port);
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialization
|
||||
*/
|
||||
static struct platform_device *cns3420_pdevs[] __initdata = {
|
||||
&cns3420_nor_pdev,
|
||||
};
|
||||
|
||||
static void __init cns3420_init(void)
|
||||
{
|
||||
platform_add_devices(cns3420_pdevs, ARRAY_SIZE(cns3420_pdevs));
|
||||
|
||||
pm_power_off = cns3xxx_power_off;
|
||||
}
|
||||
|
||||
static struct map_desc cns3420_io_desc[] __initdata = {
|
||||
{
|
||||
.virtual = CNS3XXX_UART0_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_UART0_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
},
|
||||
};
|
||||
|
||||
static void __init cns3420_map_io(void)
|
||||
{
|
||||
cns3xxx_map_io();
|
||||
iotable_init(cns3420_io_desc, ARRAY_SIZE(cns3420_io_desc));
|
||||
|
||||
cns3420_early_serial_setup();
|
||||
}
|
||||
|
||||
MACHINE_START(CNS3420VB, "Cavium Networks CNS3420 Validation Board")
|
||||
.phys_io = CNS3XXX_UART0_BASE,
|
||||
.io_pg_offst = (CNS3XXX_UART0_BASE_VIRT >> 18) & 0xfffc,
|
||||
.boot_params = 0x00000100,
|
||||
.map_io = cns3420_map_io,
|
||||
.init_irq = cns3xxx_init_irq,
|
||||
.timer = &cns3xxx_timer,
|
||||
.init_machine = cns3420_init,
|
||||
MACHINE_END
|
249
arch/arm/mach-cns3xxx/core.c
Normal file
249
arch/arm/mach-cns3xxx/core.c
Normal file
@ -0,0 +1,249 @@
|
||||
/*
|
||||
* Copyright 1999 - 2003 ARM Limited
|
||||
* Copyright 2000 Deep Blue Solutions Ltd
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <linux/init.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/clockchips.h>
|
||||
#include <linux/io.h>
|
||||
#include <asm/mach/map.h>
|
||||
#include <asm/mach/time.h>
|
||||
#include <asm/mach/irq.h>
|
||||
#include <asm/hardware/gic.h>
|
||||
#include <mach/cns3xxx.h>
|
||||
#include "core.h"
|
||||
|
||||
static struct map_desc cns3xxx_io_desc[] __initdata = {
|
||||
{
|
||||
.virtual = CNS3XXX_TC11MP_TWD_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_TC11MP_TWD_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
}, {
|
||||
.virtual = CNS3XXX_TC11MP_GIC_CPU_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_TC11MP_GIC_CPU_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
}, {
|
||||
.virtual = CNS3XXX_TC11MP_GIC_DIST_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_TC11MP_GIC_DIST_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
}, {
|
||||
.virtual = CNS3XXX_TIMER1_2_3_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_TIMER1_2_3_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
}, {
|
||||
.virtual = CNS3XXX_GPIOA_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_GPIOA_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
}, {
|
||||
.virtual = CNS3XXX_GPIOB_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_GPIOB_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
}, {
|
||||
.virtual = CNS3XXX_MISC_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_MISC_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
}, {
|
||||
.virtual = CNS3XXX_PM_BASE_VIRT,
|
||||
.pfn = __phys_to_pfn(CNS3XXX_PM_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE,
|
||||
},
|
||||
};
|
||||
|
||||
void __init cns3xxx_map_io(void)
|
||||
{
|
||||
iotable_init(cns3xxx_io_desc, ARRAY_SIZE(cns3xxx_io_desc));
|
||||
}
|
||||
|
||||
/* used by entry-macro.S */
|
||||
void __iomem *gic_cpu_base_addr;
|
||||
|
||||
void __init cns3xxx_init_irq(void)
|
||||
{
|
||||
gic_cpu_base_addr = __io(CNS3XXX_TC11MP_GIC_CPU_BASE_VIRT);
|
||||
gic_dist_init(0, __io(CNS3XXX_TC11MP_GIC_DIST_BASE_VIRT), 29);
|
||||
gic_cpu_init(0, gic_cpu_base_addr);
|
||||
}
|
||||
|
||||
void cns3xxx_power_off(void)
|
||||
{
|
||||
u32 __iomem *pm_base = __io(CNS3XXX_PM_BASE_VIRT);
|
||||
u32 clkctrl;
|
||||
|
||||
printk(KERN_INFO "powering system down...\n");
|
||||
|
||||
clkctrl = readl(pm_base + PM_SYS_CLK_CTRL_OFFSET);
|
||||
clkctrl &= 0xfffff1ff;
|
||||
clkctrl |= (0x5 << 9); /* Hibernate */
|
||||
writel(clkctrl, pm_base + PM_SYS_CLK_CTRL_OFFSET);
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* Timer
|
||||
*/
|
||||
static void __iomem *cns3xxx_tmr1;
|
||||
|
||||
static void cns3xxx_timer_set_mode(enum clock_event_mode mode,
|
||||
struct clock_event_device *clk)
|
||||
{
|
||||
unsigned long ctrl = readl(cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
int pclk = cns3xxx_cpu_clock() / 8;
|
||||
int reload;
|
||||
|
||||
switch (mode) {
|
||||
case CLOCK_EVT_MODE_PERIODIC:
|
||||
reload = pclk * 20 / (3 * HZ) * 0x25000;
|
||||
writel(reload, cns3xxx_tmr1 + TIMER1_AUTO_RELOAD_OFFSET);
|
||||
ctrl |= (1 << 0) | (1 << 2) | (1 << 9);
|
||||
break;
|
||||
case CLOCK_EVT_MODE_ONESHOT:
|
||||
/* period set, and timer enabled in 'next_event' hook */
|
||||
ctrl |= (1 << 2) | (1 << 9);
|
||||
break;
|
||||
case CLOCK_EVT_MODE_UNUSED:
|
||||
case CLOCK_EVT_MODE_SHUTDOWN:
|
||||
default:
|
||||
ctrl = 0;
|
||||
}
|
||||
|
||||
writel(ctrl, cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
}
|
||||
|
||||
static int cns3xxx_timer_set_next_event(unsigned long evt,
|
||||
struct clock_event_device *unused)
|
||||
{
|
||||
unsigned long ctrl = readl(cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
|
||||
writel(evt, cns3xxx_tmr1 + TIMER1_AUTO_RELOAD_OFFSET);
|
||||
writel(ctrl | (1 << 0), cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct clock_event_device cns3xxx_tmr1_clockevent = {
|
||||
.name = "cns3xxx timer1",
|
||||
.shift = 8,
|
||||
.features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT,
|
||||
.set_mode = cns3xxx_timer_set_mode,
|
||||
.set_next_event = cns3xxx_timer_set_next_event,
|
||||
.rating = 350,
|
||||
.cpumask = cpu_all_mask,
|
||||
};
|
||||
|
||||
static void __init cns3xxx_clockevents_init(unsigned int timer_irq)
|
||||
{
|
||||
cns3xxx_tmr1_clockevent.irq = timer_irq;
|
||||
cns3xxx_tmr1_clockevent.mult =
|
||||
div_sc((cns3xxx_cpu_clock() >> 3) * 1000000, NSEC_PER_SEC,
|
||||
cns3xxx_tmr1_clockevent.shift);
|
||||
cns3xxx_tmr1_clockevent.max_delta_ns =
|
||||
clockevent_delta2ns(0xffffffff, &cns3xxx_tmr1_clockevent);
|
||||
cns3xxx_tmr1_clockevent.min_delta_ns =
|
||||
clockevent_delta2ns(0xf, &cns3xxx_tmr1_clockevent);
|
||||
|
||||
clockevents_register_device(&cns3xxx_tmr1_clockevent);
|
||||
}
|
||||
|
||||
/*
|
||||
* IRQ handler for the timer
|
||||
*/
|
||||
static irqreturn_t cns3xxx_timer_interrupt(int irq, void *dev_id)
|
||||
{
|
||||
struct clock_event_device *evt = &cns3xxx_tmr1_clockevent;
|
||||
u32 __iomem *stat = cns3xxx_tmr1 + TIMER1_2_INTERRUPT_STATUS_OFFSET;
|
||||
u32 val;
|
||||
|
||||
/* Clear the interrupt */
|
||||
val = readl(stat);
|
||||
writel(val & ~(1 << 2), stat);
|
||||
|
||||
evt->event_handler(evt);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
static struct irqaction cns3xxx_timer_irq = {
|
||||
.name = "timer",
|
||||
.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
|
||||
.handler = cns3xxx_timer_interrupt,
|
||||
};
|
||||
|
||||
/*
|
||||
* Set up the clock source and clock events devices
|
||||
*/
|
||||
static void __init __cns3xxx_timer_init(unsigned int timer_irq)
|
||||
{
|
||||
u32 val;
|
||||
u32 irq_mask;
|
||||
|
||||
/*
|
||||
* Initialise to a known state (all timers off)
|
||||
*/
|
||||
|
||||
/* disable timer1 and timer2 */
|
||||
writel(0, cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
/* stop free running timer3 */
|
||||
writel(0, cns3xxx_tmr1 + TIMER_FREERUN_CONTROL_OFFSET);
|
||||
|
||||
/* timer1 */
|
||||
writel(0x5C800, cns3xxx_tmr1 + TIMER1_COUNTER_OFFSET);
|
||||
writel(0x5C800, cns3xxx_tmr1 + TIMER1_AUTO_RELOAD_OFFSET);
|
||||
|
||||
writel(0, cns3xxx_tmr1 + TIMER1_MATCH_V1_OFFSET);
|
||||
writel(0, cns3xxx_tmr1 + TIMER1_MATCH_V2_OFFSET);
|
||||
|
||||
/* mask irq, non-mask timer1 overflow */
|
||||
irq_mask = readl(cns3xxx_tmr1 + TIMER1_2_INTERRUPT_MASK_OFFSET);
|
||||
irq_mask &= ~(1 << 2);
|
||||
irq_mask |= 0x03;
|
||||
writel(irq_mask, cns3xxx_tmr1 + TIMER1_2_INTERRUPT_MASK_OFFSET);
|
||||
|
||||
/* down counter */
|
||||
val = readl(cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
val |= (1 << 9);
|
||||
writel(val, cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
|
||||
/* timer2 */
|
||||
writel(0, cns3xxx_tmr1 + TIMER2_MATCH_V1_OFFSET);
|
||||
writel(0, cns3xxx_tmr1 + TIMER2_MATCH_V2_OFFSET);
|
||||
|
||||
/* mask irq */
|
||||
irq_mask = readl(cns3xxx_tmr1 + TIMER1_2_INTERRUPT_MASK_OFFSET);
|
||||
irq_mask |= ((1 << 3) | (1 << 4) | (1 << 5));
|
||||
writel(irq_mask, cns3xxx_tmr1 + TIMER1_2_INTERRUPT_MASK_OFFSET);
|
||||
|
||||
/* down counter */
|
||||
val = readl(cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
val |= (1 << 10);
|
||||
writel(val, cns3xxx_tmr1 + TIMER1_2_CONTROL_OFFSET);
|
||||
|
||||
/* Make irqs happen for the system timer */
|
||||
setup_irq(timer_irq, &cns3xxx_timer_irq);
|
||||
|
||||
cns3xxx_clockevents_init(timer_irq);
|
||||
}
|
||||
|
||||
static void __init cns3xxx_timer_init(void)
|
||||
{
|
||||
cns3xxx_tmr1 = __io(CNS3XXX_TIMER1_2_3_BASE_VIRT);
|
||||
|
||||
__cns3xxx_timer_init(IRQ_CNS3XXX_TIMER0);
|
||||
}
|
||||
|
||||
struct sys_timer cns3xxx_timer = {
|
||||
.init = cns3xxx_timer_init,
|
||||
};
|
23
arch/arm/mach-cns3xxx/core.h
Normal file
23
arch/arm/mach-cns3xxx/core.h
Normal file
@ -0,0 +1,23 @@
|
||||
/*
|
||||
* Copyright 2000 Deep Blue Solutions Ltd
|
||||
* Copyright 2004 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __CNS3XXX_CORE_H
|
||||
#define __CNS3XXX_CORE_H
|
||||
|
||||
extern void __iomem *gic_cpu_base_addr;
|
||||
extern struct sys_timer cns3xxx_timer;
|
||||
|
||||
void __init cns3xxx_map_io(void);
|
||||
void __init cns3xxx_init_irq(void);
|
||||
void cns3xxx_power_off(void);
|
||||
void cns3xxx_pwr_power_up(unsigned int block);
|
||||
void cns3xxx_pwr_power_down(unsigned int block);
|
||||
|
||||
#endif /* __CNS3XXX_CORE_H */
|
635
arch/arm/mach-cns3xxx/include/mach/cns3xxx.h
Normal file
635
arch/arm/mach-cns3xxx/include/mach/cns3xxx.h
Normal file
@ -0,0 +1,635 @@
|
||||
/*
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __MACH_BOARD_CNS3XXXH
|
||||
#define __MACH_BOARD_CNS3XXXH
|
||||
|
||||
/*
|
||||
* Memory map
|
||||
*/
|
||||
#define CNS3XXX_FLASH_BASE 0x10000000 /* Flash/SRAM Memory Bank 0 */
|
||||
#define CNS3XXX_FLASH_SIZE SZ_256M
|
||||
|
||||
#define CNS3XXX_DDR2SDRAM_BASE 0x20000000 /* DDR2 SDRAM Memory */
|
||||
|
||||
#define CNS3XXX_SPI_FLASH_BASE 0x60000000 /* SPI Serial Flash Memory */
|
||||
|
||||
#define CNS3XXX_SWITCH_BASE 0x70000000 /* Switch and HNAT Control */
|
||||
#define CNS3XXX_SWITCH_BASE_VIRT 0xFFF00000
|
||||
|
||||
#define CNS3XXX_PPE_BASE 0x70001000 /* HANT */
|
||||
#define CNS3XXX_PPE_BASE_VIRT 0xFFF50000
|
||||
|
||||
#define CNS3XXX_EMBEDDED_SRAM_BASE 0x70002000 /* HANT Embedded SRAM */
|
||||
#define CNS3XXX_EMBEDDED_SRAM_BASE_VIRT 0xFFF60000
|
||||
|
||||
#define CNS3XXX_SSP_BASE 0x71000000 /* Synchronous Serial Port - SPI/PCM/I2C */
|
||||
#define CNS3XXX_SSP_BASE_VIRT 0xFFF01000
|
||||
|
||||
#define CNS3XXX_DMC_BASE 0x72000000 /* DMC Control (DDR2 SDRAM) */
|
||||
#define CNS3XXX_DMC_BASE_VIRT 0xFFF02000
|
||||
|
||||
#define CNS3XXX_SMC_BASE 0x73000000 /* SMC Control */
|
||||
#define CNS3XXX_SMC_BASE_VIRT 0xFFF03000
|
||||
|
||||
#define SMC_MEMC_STATUS_OFFSET 0x000
|
||||
#define SMC_MEMIF_CFG_OFFSET 0x004
|
||||
#define SMC_MEMC_CFG_SET_OFFSET 0x008
|
||||
#define SMC_MEMC_CFG_CLR_OFFSET 0x00C
|
||||
#define SMC_DIRECT_CMD_OFFSET 0x010
|
||||
#define SMC_SET_CYCLES_OFFSET 0x014
|
||||
#define SMC_SET_OPMODE_OFFSET 0x018
|
||||
#define SMC_REFRESH_PERIOD_0_OFFSET 0x020
|
||||
#define SMC_REFRESH_PERIOD_1_OFFSET 0x024
|
||||
#define SMC_SRAM_CYCLES0_0_OFFSET 0x100
|
||||
#define SMC_NAND_CYCLES0_0_OFFSET 0x100
|
||||
#define SMC_OPMODE0_0_OFFSET 0x104
|
||||
#define SMC_SRAM_CYCLES0_1_OFFSET 0x120
|
||||
#define SMC_NAND_CYCLES0_1_OFFSET 0x120
|
||||
#define SMC_OPMODE0_1_OFFSET 0x124
|
||||
#define SMC_USER_STATUS_OFFSET 0x200
|
||||
#define SMC_USER_CONFIG_OFFSET 0x204
|
||||
#define SMC_ECC_STATUS_OFFSET 0x300
|
||||
#define SMC_ECC_MEMCFG_OFFSET 0x304
|
||||
#define SMC_ECC_MEMCOMMAND1_OFFSET 0x308
|
||||
#define SMC_ECC_MEMCOMMAND2_OFFSET 0x30C
|
||||
#define SMC_ECC_ADDR0_OFFSET 0x310
|
||||
#define SMC_ECC_ADDR1_OFFSET 0x314
|
||||
#define SMC_ECC_VALUE0_OFFSET 0x318
|
||||
#define SMC_ECC_VALUE1_OFFSET 0x31C
|
||||
#define SMC_ECC_VALUE2_OFFSET 0x320
|
||||
#define SMC_ECC_VALUE3_OFFSET 0x324
|
||||
#define SMC_PERIPH_ID_0_OFFSET 0xFE0
|
||||
#define SMC_PERIPH_ID_1_OFFSET 0xFE4
|
||||
#define SMC_PERIPH_ID_2_OFFSET 0xFE8
|
||||
#define SMC_PERIPH_ID_3_OFFSET 0xFEC
|
||||
#define SMC_PCELL_ID_0_OFFSET 0xFF0
|
||||
#define SMC_PCELL_ID_1_OFFSET 0xFF4
|
||||
#define SMC_PCELL_ID_2_OFFSET 0xFF8
|
||||
#define SMC_PCELL_ID_3_OFFSET 0xFFC
|
||||
|
||||
#define CNS3XXX_GPIOA_BASE 0x74000000 /* GPIO port A */
|
||||
#define CNS3XXX_GPIOA_BASE_VIRT 0xFFF04000
|
||||
|
||||
#define CNS3XXX_GPIOB_BASE 0x74800000 /* GPIO port B */
|
||||
#define CNS3XXX_GPIOB_BASE_VIRT 0xFFF05000
|
||||
|
||||
#define CNS3XXX_RTC_BASE 0x75000000 /* Real Time Clock */
|
||||
#define CNS3XXX_RTC_BASE_VIRT 0xFFF06000
|
||||
|
||||
#define RTC_SEC_OFFSET 0x00
|
||||
#define RTC_MIN_OFFSET 0x04
|
||||
#define RTC_HOUR_OFFSET 0x08
|
||||
#define RTC_DAY_OFFSET 0x0C
|
||||
#define RTC_SEC_ALM_OFFSET 0x10
|
||||
#define RTC_MIN_ALM_OFFSET 0x14
|
||||
#define RTC_HOUR_ALM_OFFSET 0x18
|
||||
#define RTC_REC_OFFSET 0x1C
|
||||
#define RTC_CTRL_OFFSET 0x20
|
||||
#define RTC_INTR_STS_OFFSET 0x34
|
||||
|
||||
#define CNS3XXX_MISC_BASE 0x76000000 /* Misc Control */
|
||||
#define CNS3XXX_MISC_BASE_VIRT 0xFFF07000 /* Misc Control */
|
||||
|
||||
#define CNS3XXX_PM_BASE 0x77000000 /* Power Management Control */
|
||||
#define CNS3XXX_PM_BASE_VIRT 0xFFF08000
|
||||
|
||||
#define PM_CLK_GATE_OFFSET 0x00
|
||||
#define PM_SOFT_RST_OFFSET 0x04
|
||||
#define PM_HS_CFG_OFFSET 0x08
|
||||
#define PM_CACTIVE_STA_OFFSET 0x0C
|
||||
#define PM_PWR_STA_OFFSET 0x10
|
||||
#define PM_SYS_CLK_CTRL_OFFSET 0x14
|
||||
#define PM_PLL_LCD_I2S_CTRL_OFFSET 0x18
|
||||
#define PM_PLL_HM_PD_OFFSET 0x1C
|
||||
|
||||
#define CNS3XXX_UART0_BASE 0x78000000 /* UART 0 */
|
||||
#define CNS3XXX_UART0_BASE_VIRT 0xFFF09000
|
||||
|
||||
#define CNS3XXX_UART1_BASE 0x78400000 /* UART 1 */
|
||||
#define CNS3XXX_UART1_BASE_VIRT 0xFFF0A000
|
||||
|
||||
#define CNS3XXX_UART2_BASE 0x78800000 /* UART 2 */
|
||||
#define CNS3XXX_UART2_BASE_VIRT 0xFFF0B000
|
||||
|
||||
#define CNS3XXX_DMAC_BASE 0x79000000 /* Generic DMA Control */
|
||||
#define CNS3XXX_DMAC_BASE_VIRT 0xFFF0D000
|
||||
|
||||
#define CNS3XXX_CORESIGHT_BASE 0x7A000000 /* CoreSight */
|
||||
#define CNS3XXX_CORESIGHT_BASE_VIRT 0xFFF0E000
|
||||
|
||||
#define CNS3XXX_CRYPTO_BASE 0x7B000000 /* Crypto */
|
||||
#define CNS3XXX_CRYPTO_BASE_VIRT 0xFFF0F000
|
||||
|
||||
#define CNS3XXX_I2S_BASE 0x7C000000 /* I2S */
|
||||
#define CNS3XXX_I2S_BASE_VIRT 0xFFF10000
|
||||
|
||||
#define CNS3XXX_TIMER1_2_3_BASE 0x7C800000 /* Timer */
|
||||
#define CNS3XXX_TIMER1_2_3_BASE_VIRT 0xFFF10800
|
||||
|
||||
#define TIMER1_COUNTER_OFFSET 0x00
|
||||
#define TIMER1_AUTO_RELOAD_OFFSET 0x04
|
||||
#define TIMER1_MATCH_V1_OFFSET 0x08
|
||||
#define TIMER1_MATCH_V2_OFFSET 0x0C
|
||||
|
||||
#define TIMER2_COUNTER_OFFSET 0x10
|
||||
#define TIMER2_AUTO_RELOAD_OFFSET 0x14
|
||||
#define TIMER2_MATCH_V1_OFFSET 0x18
|
||||
#define TIMER2_MATCH_V2_OFFSET 0x1C
|
||||
|
||||
#define TIMER1_2_CONTROL_OFFSET 0x30
|
||||
#define TIMER1_2_INTERRUPT_STATUS_OFFSET 0x34
|
||||
#define TIMER1_2_INTERRUPT_MASK_OFFSET 0x38
|
||||
|
||||
#define TIMER_FREERUN_OFFSET 0x40
|
||||
#define TIMER_FREERUN_CONTROL_OFFSET 0x44
|
||||
|
||||
#define CNS3XXX_HCIE_BASE 0x7D000000 /* HCIE Control */
|
||||
#define CNS3XXX_HCIE_BASE_VIRT 0xFFF30000
|
||||
|
||||
#define CNS3XXX_RAID_BASE 0x7E000000 /* RAID Control */
|
||||
#define CNS3XXX_RAID_BASE_VIRT 0xFFF12000
|
||||
|
||||
#define CNS3XXX_AXI_IXC_BASE 0x7F000000 /* AXI IXC */
|
||||
#define CNS3XXX_AXI_IXC_BASE_VIRT 0xFFF13000
|
||||
|
||||
#define CNS3XXX_CLCD_BASE 0x80000000 /* LCD Control */
|
||||
#define CNS3XXX_CLCD_BASE_VIRT 0xFFF14000
|
||||
|
||||
#define CNS3XXX_USBOTG_BASE 0x81000000 /* USB OTG Control */
|
||||
#define CNS3XXX_USBOTG_BASE_VIRT 0xFFF15000
|
||||
|
||||
#define CNS3XXX_USB_BASE 0x82000000 /* USB Host Control */
|
||||
#define CNS3XXX_USB_BASE_VIRT 0xFFF16000
|
||||
|
||||
#define CNS3XXX_SATA2_BASE 0x83000000 /* SATA */
|
||||
#define CNS3XXX_SATA2_SIZE SZ_16M
|
||||
#define CNS3XXX_SATA2_BASE_VIRT 0xFFF17000
|
||||
|
||||
#define CNS3XXX_CAMERA_BASE 0x84000000 /* Camera Interface */
|
||||
#define CNS3XXX_CAMERA_BASE_VIRT 0xFFF18000
|
||||
|
||||
#define CNS3XXX_SDIO_BASE 0x85000000 /* SDIO */
|
||||
#define CNS3XXX_SDIO_BASE_VIRT 0xFFF19000
|
||||
|
||||
#define CNS3XXX_I2S_TDM_BASE 0x86000000 /* I2S TDM */
|
||||
#define CNS3XXX_I2S_TDM_BASE_VIRT 0xFFF1A000
|
||||
|
||||
#define CNS3XXX_2DG_BASE 0x87000000 /* 2D Graphic Control */
|
||||
#define CNS3XXX_2DG_BASE_VIRT 0xFFF1B000
|
||||
|
||||
#define CNS3XXX_USB_OHCI_BASE 0x88000000 /* USB OHCI */
|
||||
#define CNS3XXX_USB_OHCI_BASE_VIRT 0xFFF1C000
|
||||
|
||||
#define CNS3XXX_L2C_BASE 0x92000000 /* L2 Cache Control */
|
||||
#define CNS3XXX_L2C_BASE_VIRT 0xFFF27000
|
||||
|
||||
#define CNS3XXX_PCIE0_MEM_BASE 0xA0000000 /* PCIe Port 0 IO/Memory Space */
|
||||
#define CNS3XXX_PCIE0_MEM_BASE_VIRT 0xE0000000
|
||||
|
||||
#define CNS3XXX_PCIE0_HOST_BASE 0xAB000000 /* PCIe Port 0 RC Base */
|
||||
#define CNS3XXX_PCIE0_HOST_BASE_VIRT 0xE1000000
|
||||
|
||||
#define CNS3XXX_PCIE0_IO_BASE 0xAC000000 /* PCIe Port 0 */
|
||||
#define CNS3XXX_PCIE0_IO_BASE_VIRT 0xE2000000
|
||||
|
||||
#define CNS3XXX_PCIE0_CFG0_BASE 0xAD000000 /* PCIe Port 0 CFG Type 0 */
|
||||
#define CNS3XXX_PCIE0_CFG0_BASE_VIRT 0xE3000000
|
||||
|
||||
#define CNS3XXX_PCIE0_CFG1_BASE 0xAE000000 /* PCIe Port 0 CFG Type 1 */
|
||||
#define CNS3XXX_PCIE0_CFG1_BASE_VIRT 0xE4000000
|
||||
|
||||
#define CNS3XXX_PCIE0_MSG_BASE 0xAF000000 /* PCIe Port 0 Message Space */
|
||||
#define CNS3XXX_PCIE0_MSG_BASE_VIRT 0xE5000000
|
||||
|
||||
#define CNS3XXX_PCIE1_MEM_BASE 0xB0000000 /* PCIe Port 1 IO/Memory Space */
|
||||
#define CNS3XXX_PCIE1_MEM_BASE_VIRT 0xE8000000
|
||||
|
||||
#define CNS3XXX_PCIE1_HOST_BASE 0xBB000000 /* PCIe Port 1 RC Base */
|
||||
#define CNS3XXX_PCIE1_HOST_BASE_VIRT 0xE9000000
|
||||
|
||||
#define CNS3XXX_PCIE1_IO_BASE 0xBC000000 /* PCIe Port 1 */
|
||||
#define CNS3XXX_PCIE1_IO_BASE_VIRT 0xEA000000
|
||||
|
||||
#define CNS3XXX_PCIE1_CFG0_BASE 0xBD000000 /* PCIe Port 1 CFG Type 0 */
|
||||
#define CNS3XXX_PCIE1_CFG0_BASE_VIRT 0xEB000000
|
||||
|
||||
#define CNS3XXX_PCIE1_CFG1_BASE 0xBE000000 /* PCIe Port 1 CFG Type 1 */
|
||||
#define CNS3XXX_PCIE1_CFG1_BASE_VIRT 0xEC000000
|
||||
|
||||
#define CNS3XXX_PCIE1_MSG_BASE 0xBF000000 /* PCIe Port 1 Message Space */
|
||||
#define CNS3XXX_PCIE1_MSG_BASE_VIRT 0xED000000
|
||||
|
||||
/*
|
||||
* Testchip peripheral and fpga gic regions
|
||||
*/
|
||||
#define CNS3XXX_TC11MP_SCU_BASE 0x90000000 /* IRQ, Test chip */
|
||||
#define CNS3XXX_TC11MP_SCU_BASE_VIRT 0xFF000000
|
||||
|
||||
#define CNS3XXX_TC11MP_GIC_CPU_BASE 0x90000100 /* Test chip interrupt controller CPU interface */
|
||||
#define CNS3XXX_TC11MP_GIC_CPU_BASE_VIRT 0xFF000100
|
||||
|
||||
#define CNS3XXX_TC11MP_TWD_BASE 0x90000600
|
||||
#define CNS3XXX_TC11MP_TWD_BASE_VIRT 0xFF000600
|
||||
|
||||
#define CNS3XXX_TC11MP_GIC_DIST_BASE 0x90001000 /* Test chip interrupt controller distributor */
|
||||
#define CNS3XXX_TC11MP_GIC_DIST_BASE_VIRT 0xFF001000
|
||||
|
||||
#define CNS3XXX_TC11MP_L220_BASE 0x92002000 /* L220 registers */
|
||||
#define CNS3XXX_TC11MP_L220_BASE_VIRT 0xFF002000
|
||||
|
||||
/*
|
||||
* Misc block
|
||||
*/
|
||||
#define MISC_MEM_MAP(offs) (void __iomem *)(CNS3XXX_MISC_BASE_VIRT + (offs))
|
||||
#define MISC_MEM_MAP_VALUE(offset) (*((volatile unsigned int *)(CNS3XXX_MISC_BASE_VIRT + (offset))))
|
||||
|
||||
#define MISC_MEMORY_REMAP_REG MISC_MEM_MAP_VALUE(0x00)
|
||||
#define MISC_CHIP_CONFIG_REG MISC_MEM_MAP_VALUE(0x04)
|
||||
#define MISC_DEBUG_PROBE_DATA_REG MISC_MEM_MAP_VALUE(0x08)
|
||||
#define MISC_DEBUG_PROBE_SELECTION_REG MISC_MEM_MAP_VALUE(0x0C)
|
||||
#define MISC_IO_PIN_FUNC_SELECTION_REG MISC_MEM_MAP_VALUE(0x10)
|
||||
#define MISC_GPIOA_PIN_ENABLE_REG MISC_MEM_MAP_VALUE(0x14)
|
||||
#define MISC_GPIOB_PIN_ENABLE_REG MISC_MEM_MAP_VALUE(0x18)
|
||||
#define MISC_IO_PAD_DRIVE_STRENGTH_CTRL_A MISC_MEM_MAP_VALUE(0x1C)
|
||||
#define MISC_IO_PAD_DRIVE_STRENGTH_CTRL_B MISC_MEM_MAP_VALUE(0x20)
|
||||
#define MISC_GPIOA_15_0_PULL_CTRL_REG MISC_MEM_MAP_VALUE(0x24)
|
||||
#define MISC_GPIOA_16_31_PULL_CTRL_REG MISC_MEM_MAP_VALUE(0x28)
|
||||
#define MISC_GPIOB_15_0_PULL_CTRL_REG MISC_MEM_MAP_VALUE(0x2C)
|
||||
#define MISC_GPIOB_16_31_PULL_CTRL_REG MISC_MEM_MAP_VALUE(0x30)
|
||||
#define MISC_IO_PULL_CTRL_REG MISC_MEM_MAP_VALUE(0x34)
|
||||
#define MISC_E_FUSE_31_0_REG MISC_MEM_MAP_VALUE(0x40)
|
||||
#define MISC_E_FUSE_63_32_REG MISC_MEM_MAP_VALUE(0x44)
|
||||
#define MISC_E_FUSE_95_64_REG MISC_MEM_MAP_VALUE(0x48)
|
||||
#define MISC_E_FUSE_127_96_REG MISC_MEM_MAP_VALUE(0x4C)
|
||||
#define MISC_SOFTWARE_TEST_1_REG MISC_MEM_MAP_VALUE(0x50)
|
||||
#define MISC_SOFTWARE_TEST_2_REG MISC_MEM_MAP_VALUE(0x54)
|
||||
|
||||
#define MISC_SATA_POWER_MODE MISC_MEM_MAP_VALUE(0x310)
|
||||
|
||||
#define MISC_USB_CFG_REG MISC_MEM_MAP_VALUE(0x800)
|
||||
#define MISC_USB_STS_REG MISC_MEM_MAP_VALUE(0x804)
|
||||
#define MISC_USBPHY00_CFG_REG MISC_MEM_MAP_VALUE(0x808)
|
||||
#define MISC_USBPHY01_CFG_REG MISC_MEM_MAP_VALUE(0x80c)
|
||||
#define MISC_USBPHY10_CFG_REG MISC_MEM_MAP_VALUE(0x810)
|
||||
#define MISC_USBPHY11_CFG_REG MISC_MEM_MAP_VALUE(0x814)
|
||||
|
||||
#define MISC_PCIEPHY_CMCTL(x) MISC_MEM_MAP(0x900 + (x) * 0x004)
|
||||
#define MISC_PCIEPHY_CTL(x) MISC_MEM_MAP(0x940 + (x) * 0x100)
|
||||
#define MISC_PCIE_AXIS_AWMISC(x) MISC_MEM_MAP(0x944 + (x) * 0x100)
|
||||
#define MISC_PCIE_AXIS_ARMISC(x) MISC_MEM_MAP(0x948 + (x) * 0x100)
|
||||
#define MISC_PCIE_AXIS_RMISC(x) MISC_MEM_MAP(0x94C + (x) * 0x100)
|
||||
#define MISC_PCIE_AXIS_BMISC(x) MISC_MEM_MAP(0x950 + (x) * 0x100)
|
||||
#define MISC_PCIE_AXIM_RMISC(x) MISC_MEM_MAP(0x954 + (x) * 0x100)
|
||||
#define MISC_PCIE_AXIM_BMISC(x) MISC_MEM_MAP(0x958 + (x) * 0x100)
|
||||
#define MISC_PCIE_CTRL(x) MISC_MEM_MAP(0x95C + (x) * 0x100)
|
||||
#define MISC_PCIE_PM_DEBUG(x) MISC_MEM_MAP(0x960 + (x) * 0x100)
|
||||
#define MISC_PCIE_RFC_DEBUG(x) MISC_MEM_MAP(0x964 + (x) * 0x100)
|
||||
#define MISC_PCIE_CXPL_DEBUGL(x) MISC_MEM_MAP(0x968 + (x) * 0x100)
|
||||
#define MISC_PCIE_CXPL_DEBUGH(x) MISC_MEM_MAP(0x96C + (x) * 0x100)
|
||||
#define MISC_PCIE_DIAG_DEBUGH(x) MISC_MEM_MAP(0x970 + (x) * 0x100)
|
||||
#define MISC_PCIE_W1CLR(x) MISC_MEM_MAP(0x974 + (x) * 0x100)
|
||||
#define MISC_PCIE_INT_MASK(x) MISC_MEM_MAP(0x978 + (x) * 0x100)
|
||||
#define MISC_PCIE_INT_STATUS(x) MISC_MEM_MAP(0x97C + (x) * 0x100)
|
||||
|
||||
/*
|
||||
* Power management and clock control
|
||||
*/
|
||||
#define PMU_REG_VALUE(offset) (*((volatile unsigned int *)(CNS3XXX_PM_BASE_VIRT + (offset))))
|
||||
|
||||
#define PM_CLK_GATE_REG PMU_REG_VALUE(0x000)
|
||||
#define PM_SOFT_RST_REG PMU_REG_VALUE(0x004)
|
||||
#define PM_HS_CFG_REG PMU_REG_VALUE(0x008)
|
||||
#define PM_CACTIVE_STA_REG PMU_REG_VALUE(0x00C)
|
||||
#define PM_PWR_STA_REG PMU_REG_VALUE(0x010)
|
||||
#define PM_CLK_CTRL_REG PMU_REG_VALUE(0x014)
|
||||
#define PM_PLL_LCD_I2S_CTRL_REG PMU_REG_VALUE(0x018)
|
||||
#define PM_PLL_HM_PD_CTRL_REG PMU_REG_VALUE(0x01C)
|
||||
#define PM_REGULAT_CTRL_REG PMU_REG_VALUE(0x020)
|
||||
#define PM_WDT_CTRL_REG PMU_REG_VALUE(0x024)
|
||||
#define PM_WU_CTRL0_REG PMU_REG_VALUE(0x028)
|
||||
#define PM_WU_CTRL1_REG PMU_REG_VALUE(0x02C)
|
||||
#define PM_CSR_REG PMU_REG_VALUE(0x030)
|
||||
|
||||
/* PM_CLK_GATE_REG */
|
||||
#define PM_CLK_GATE_REG_OFFSET_SDIO (25)
|
||||
#define PM_CLK_GATE_REG_OFFSET_GPU (24)
|
||||
#define PM_CLK_GATE_REG_OFFSET_CIM (23)
|
||||
#define PM_CLK_GATE_REG_OFFSET_LCDC (22)
|
||||
#define PM_CLK_GATE_REG_OFFSET_I2S (21)
|
||||
#define PM_CLK_GATE_REG_OFFSET_RAID (20)
|
||||
#define PM_CLK_GATE_REG_OFFSET_SATA (19)
|
||||
#define PM_CLK_GATE_REG_OFFSET_PCIE(x) (17 + (x))
|
||||
#define PM_CLK_GATE_REG_OFFSET_USB_HOST (16)
|
||||
#define PM_CLK_GATE_REG_OFFSET_USB_OTG (15)
|
||||
#define PM_CLK_GATE_REG_OFFSET_TIMER (14)
|
||||
#define PM_CLK_GATE_REG_OFFSET_CRYPTO (13)
|
||||
#define PM_CLK_GATE_REG_OFFSET_HCIE (12)
|
||||
#define PM_CLK_GATE_REG_OFFSET_SWITCH (11)
|
||||
#define PM_CLK_GATE_REG_OFFSET_GPIO (10)
|
||||
#define PM_CLK_GATE_REG_OFFSET_UART3 (9)
|
||||
#define PM_CLK_GATE_REG_OFFSET_UART2 (8)
|
||||
#define PM_CLK_GATE_REG_OFFSET_UART1 (7)
|
||||
#define PM_CLK_GATE_REG_OFFSET_RTC (5)
|
||||
#define PM_CLK_GATE_REG_OFFSET_GDMA (4)
|
||||
#define PM_CLK_GATE_REG_OFFSET_SPI_PCM_I2C (3)
|
||||
#define PM_CLK_GATE_REG_OFFSET_SMC_NFI (1)
|
||||
#define PM_CLK_GATE_REG_MASK (0x03FFFFBA)
|
||||
|
||||
/* PM_SOFT_RST_REG */
|
||||
#define PM_SOFT_RST_REG_OFFST_WARM_RST_FLAG (31)
|
||||
#define PM_SOFT_RST_REG_OFFST_CPU1 (29)
|
||||
#define PM_SOFT_RST_REG_OFFST_CPU0 (28)
|
||||
#define PM_SOFT_RST_REG_OFFST_SDIO (25)
|
||||
#define PM_SOFT_RST_REG_OFFST_GPU (24)
|
||||
#define PM_SOFT_RST_REG_OFFST_CIM (23)
|
||||
#define PM_SOFT_RST_REG_OFFST_LCDC (22)
|
||||
#define PM_SOFT_RST_REG_OFFST_I2S (21)
|
||||
#define PM_SOFT_RST_REG_OFFST_RAID (20)
|
||||
#define PM_SOFT_RST_REG_OFFST_SATA (19)
|
||||
#define PM_SOFT_RST_REG_OFFST_PCIE(x) (17 + (x))
|
||||
#define PM_SOFT_RST_REG_OFFST_USB_HOST (16)
|
||||
#define PM_SOFT_RST_REG_OFFST_USB_OTG (15)
|
||||
#define PM_SOFT_RST_REG_OFFST_TIMER (14)
|
||||
#define PM_SOFT_RST_REG_OFFST_CRYPTO (13)
|
||||
#define PM_SOFT_RST_REG_OFFST_HCIE (12)
|
||||
#define PM_SOFT_RST_REG_OFFST_SWITCH (11)
|
||||
#define PM_SOFT_RST_REG_OFFST_GPIO (10)
|
||||
#define PM_SOFT_RST_REG_OFFST_UART3 (9)
|
||||
#define PM_SOFT_RST_REG_OFFST_UART2 (8)
|
||||
#define PM_SOFT_RST_REG_OFFST_UART1 (7)
|
||||
#define PM_SOFT_RST_REG_OFFST_RTC (5)
|
||||
#define PM_SOFT_RST_REG_OFFST_GDMA (4)
|
||||
#define PM_SOFT_RST_REG_OFFST_SPI_PCM_I2C (3)
|
||||
#define PM_SOFT_RST_REG_OFFST_DMC (2)
|
||||
#define PM_SOFT_RST_REG_OFFST_SMC_NFI (1)
|
||||
#define PM_SOFT_RST_REG_OFFST_GLOBAL (0)
|
||||
#define PM_SOFT_RST_REG_MASK (0xF3FFFFBF)
|
||||
|
||||
/* PMHS_CFG_REG */
|
||||
#define PM_HS_CFG_REG_OFFSET_SDIO (25)
|
||||
#define PM_HS_CFG_REG_OFFSET_GPU (24)
|
||||
#define PM_HS_CFG_REG_OFFSET_CIM (23)
|
||||
#define PM_HS_CFG_REG_OFFSET_LCDC (22)
|
||||
#define PM_HS_CFG_REG_OFFSET_I2S (21)
|
||||
#define PM_HS_CFG_REG_OFFSET_RAID (20)
|
||||
#define PM_HS_CFG_REG_OFFSET_SATA (19)
|
||||
#define PM_HS_CFG_REG_OFFSET_PCIE1 (18)
|
||||
#define PM_HS_CFG_REG_OFFSET_PCIE0 (17)
|
||||
#define PM_HS_CFG_REG_OFFSET_USB_HOST (16)
|
||||
#define PM_HS_CFG_REG_OFFSET_USB_OTG (15)
|
||||
#define PM_HS_CFG_REG_OFFSET_TIMER (14)
|
||||
#define PM_HS_CFG_REG_OFFSET_CRYPTO (13)
|
||||
#define PM_HS_CFG_REG_OFFSET_HCIE (12)
|
||||
#define PM_HS_CFG_REG_OFFSET_SWITCH (11)
|
||||
#define PM_HS_CFG_REG_OFFSET_GPIO (10)
|
||||
#define PM_HS_CFG_REG_OFFSET_UART3 (9)
|
||||
#define PM_HS_CFG_REG_OFFSET_UART2 (8)
|
||||
#define PM_HS_CFG_REG_OFFSET_UART1 (7)
|
||||
#define PM_HS_CFG_REG_OFFSET_RTC (5)
|
||||
#define PM_HS_CFG_REG_OFFSET_GDMA (4)
|
||||
#define PM_HS_CFG_REG_OFFSET_SPI_PCM_I2S (3)
|
||||
#define PM_HS_CFG_REG_OFFSET_DMC (2)
|
||||
#define PM_HS_CFG_REG_OFFSET_SMC_NFI (1)
|
||||
#define PM_HS_CFG_REG_MASK (0x03FFFFBE)
|
||||
#define PM_HS_CFG_REG_MASK_SUPPORT (0x01100806)
|
||||
|
||||
/* PM_CACTIVE_STA_REG */
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_SDIO (25)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_GPU (24)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_CIM (23)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_LCDC (22)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_I2S (21)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_RAID (20)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_SATA (19)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_PCIE1 (18)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_PCIE0 (17)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_USB_HOST (16)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_USB_OTG (15)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_TIMER (14)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_CRYPTO (13)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_HCIE (12)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_SWITCH (11)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_GPIO (10)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_UART3 (9)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_UART2 (8)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_UART1 (7)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_RTC (5)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_GDMA (4)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_SPI_PCM_I2S (3)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_DMC (2)
|
||||
#define PM_CACTIVE_STA_REG_OFFSET_SMC_NFI (1)
|
||||
#define PM_CACTIVE_STA_REG_MASK (0x03FFFFBE)
|
||||
|
||||
/* PM_PWR_STA_REG */
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_SDIO (25)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_GPU (24)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_CIM (23)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_LCDC (22)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_I2S (21)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_RAID (20)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_SATA (19)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_PCIE1 (18)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_PCIE0 (17)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_USB_HOST (16)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_USB_OTG (15)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_TIMER (14)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_CRYPTO (13)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_HCIE (12)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_SWITCH (11)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_GPIO (10)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_UART3 (9)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_UART2 (8)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_UART1 (7)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_RTC (5)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_GDMA (4)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_SPI_PCM_I2S (3)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_DMC (2)
|
||||
#define PM_PWR_STA_REG_REG_OFFSET_SMC_NFI (1)
|
||||
#define PM_PWR_STA_REG_REG_MASK (0x03FFFFBE)
|
||||
|
||||
/* PM_CLK_CTRL_REG */
|
||||
#define PM_CLK_CTRL_REG_OFFSET_I2S_MCLK (31)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_DDR2_CHG_EN (30)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_PCIE_REF1_EN (29)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_PCIE_REF0_EN (28)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_TIMER_SIM_MODE (27)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_I2SCLK_DIV (24)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_I2SCLK_SEL (22)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_CLKOUT_DIV (20)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_CLKOUT_SEL (16)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_MDC_DIV (14)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_CRYPTO_CLK_SEL (12)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_CPU_PWR_MODE (9)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_PLL_DDR2_SEL (7)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_DIV_IMMEDIATE (6)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_CPU_CLK_DIV (4)
|
||||
#define PM_CLK_CTRL_REG_OFFSET_PLL_CPU_SEL (0)
|
||||
|
||||
#define PM_CPU_CLK_DIV(DIV) { \
|
||||
PM_CLK_CTRL_REG &= ~((0x3) << PM_CLK_CTRL_REG_OFFSET_CPU_CLK_DIV); \
|
||||
PM_CLK_CTRL_REG |= (((DIV)&0x3) << PM_CLK_CTRL_REG_OFFSET_CPU_CLK_DIV); \
|
||||
}
|
||||
|
||||
#define PM_PLL_CPU_SEL(CPU) { \
|
||||
PM_CLK_CTRL_REG &= ~((0xF) << PM_CLK_CTRL_REG_OFFSET_PLL_CPU_SEL); \
|
||||
PM_CLK_CTRL_REG |= (((CPU)&0xF) << PM_CLK_CTRL_REG_OFFSET_PLL_CPU_SEL); \
|
||||
}
|
||||
|
||||
/* PM_PLL_LCD_I2S_CTRL_REG */
|
||||
#define PM_PLL_LCD_I2S_CTRL_REG_OFFSET_MCLK_SMC_DIV (22)
|
||||
#define PM_PLL_LCD_I2S_CTRL_REG_OFFSET_R_SEL (17)
|
||||
#define PM_PLL_LCD_I2S_CTRL_REG_OFFSET_PLL_LCD_P (11)
|
||||
#define PM_PLL_LCD_I2S_CTRL_REG_OFFSET_PLL_LCD_M (3)
|
||||
#define PM_PLL_LCD_I2S_CTRL_REG_OFFSET_PLL_LCD_S (0)
|
||||
|
||||
/* PM_PLL_HM_PD_CTRL_REG */
|
||||
#define PM_PLL_HM_PD_CTRL_REG_OFFSET_SATA_PHY1 (11)
|
||||
#define PM_PLL_HM_PD_CTRL_REG_OFFSET_SATA_PHY0 (10)
|
||||
#define PM_PLL_HM_PD_CTRL_REG_OFFSET_PLL_I2SCD (6)
|
||||
#define PM_PLL_HM_PD_CTRL_REG_OFFSET_PLL_I2S (5)
|
||||
#define PM_PLL_HM_PD_CTRL_REG_OFFSET_PLL_LCD (4)
|
||||
#define PM_PLL_HM_PD_CTRL_REG_OFFSET_PLL_USB (3)
|
||||
#define PM_PLL_HM_PD_CTRL_REG_OFFSET_PLL_RGMII (2)
|
||||
#define PM_PLL_HM_PD_CTRL_REG_MASK (0x00000C7C)
|
||||
|
||||
/* PM_WDT_CTRL_REG */
|
||||
#define PM_WDT_CTRL_REG_OFFSET_RESET_CPU_ONLY (0)
|
||||
|
||||
/* PM_CSR_REG - Clock Scaling Register*/
|
||||
#define PM_CSR_REG_OFFSET_CSR_EN (30)
|
||||
#define PM_CSR_REG_OFFSET_CSR_NUM (0)
|
||||
|
||||
#define CNS3XXX_PWR_CLK_EN(BLOCK) (0x1<<PM_CLK_GATE_REG_OFFSET_##BLOCK)
|
||||
|
||||
/* Software reset*/
|
||||
#define CNS3XXX_PWR_SOFTWARE_RST(BLOCK) (0x1<<PM_SOFT_RST_REG_OFFST_##BLOCK)
|
||||
|
||||
/*
|
||||
* CNS3XXX support several power saving mode as following,
|
||||
* DFS, IDLE, HALT, DOZE, SLEEP, Hibernate
|
||||
*/
|
||||
#define CNS3XXX_PWR_CPU_MODE_DFS (0)
|
||||
#define CNS3XXX_PWR_CPU_MODE_IDLE (1)
|
||||
#define CNS3XXX_PWR_CPU_MODE_HALT (2)
|
||||
#define CNS3XXX_PWR_CPU_MODE_DOZE (3)
|
||||
#define CNS3XXX_PWR_CPU_MODE_SLEEP (4)
|
||||
#define CNS3XXX_PWR_CPU_MODE_HIBERNATE (5)
|
||||
|
||||
#define CNS3XXX_PWR_PLL(BLOCK) (0x1<<PM_PLL_HM_PD_CTRL_REG_OFFSET_##BLOCK)
|
||||
#define CNS3XXX_PWR_PLL_ALL PM_PLL_HM_PD_CTRL_REG_MASK
|
||||
|
||||
/* Change CPU frequency and divider */
|
||||
#define CNS3XXX_PWR_PLL_CPU_300MHZ (0)
|
||||
#define CNS3XXX_PWR_PLL_CPU_333MHZ (1)
|
||||
#define CNS3XXX_PWR_PLL_CPU_366MHZ (2)
|
||||
#define CNS3XXX_PWR_PLL_CPU_400MHZ (3)
|
||||
#define CNS3XXX_PWR_PLL_CPU_433MHZ (4)
|
||||
#define CNS3XXX_PWR_PLL_CPU_466MHZ (5)
|
||||
#define CNS3XXX_PWR_PLL_CPU_500MHZ (6)
|
||||
#define CNS3XXX_PWR_PLL_CPU_533MHZ (7)
|
||||
#define CNS3XXX_PWR_PLL_CPU_566MHZ (8)
|
||||
#define CNS3XXX_PWR_PLL_CPU_600MHZ (9)
|
||||
#define CNS3XXX_PWR_PLL_CPU_633MHZ (10)
|
||||
#define CNS3XXX_PWR_PLL_CPU_666MHZ (11)
|
||||
#define CNS3XXX_PWR_PLL_CPU_700MHZ (12)
|
||||
|
||||
#define CNS3XXX_PWR_CPU_CLK_DIV_BY1 (0)
|
||||
#define CNS3XXX_PWR_CPU_CLK_DIV_BY2 (1)
|
||||
#define CNS3XXX_PWR_CPU_CLK_DIV_BY4 (2)
|
||||
|
||||
/* Change DDR2 frequency */
|
||||
#define CNS3XXX_PWR_PLL_DDR2_200MHZ (0)
|
||||
#define CNS3XXX_PWR_PLL_DDR2_266MHZ (1)
|
||||
#define CNS3XXX_PWR_PLL_DDR2_333MHZ (2)
|
||||
#define CNS3XXX_PWR_PLL_DDR2_400MHZ (3)
|
||||
|
||||
void cns3xxx_pwr_soft_rst(unsigned int block);
|
||||
void cns3xxx_pwr_clk_en(unsigned int block);
|
||||
int cns3xxx_cpu_clock(void);
|
||||
|
||||
/*
|
||||
* ARM11 MPCore interrupt sources (primary GIC)
|
||||
*/
|
||||
#define IRQ_CNS3XXX_PMU (IRQ_TC11MP_GIC_START + 0)
|
||||
#define IRQ_CNS3XXX_SDIO (IRQ_TC11MP_GIC_START + 1)
|
||||
#define IRQ_CNS3XXX_L2CC (IRQ_TC11MP_GIC_START + 2)
|
||||
#define IRQ_CNS3XXX_RTC (IRQ_TC11MP_GIC_START + 3)
|
||||
#define IRQ_CNS3XXX_I2S (IRQ_TC11MP_GIC_START + 4)
|
||||
#define IRQ_CNS3XXX_PCM (IRQ_TC11MP_GIC_START + 5)
|
||||
#define IRQ_CNS3XXX_SPI (IRQ_TC11MP_GIC_START + 6)
|
||||
#define IRQ_CNS3XXX_I2C (IRQ_TC11MP_GIC_START + 7)
|
||||
#define IRQ_CNS3XXX_CIM (IRQ_TC11MP_GIC_START + 8)
|
||||
#define IRQ_CNS3XXX_GPU (IRQ_TC11MP_GIC_START + 9)
|
||||
#define IRQ_CNS3XXX_LCD (IRQ_TC11MP_GIC_START + 10)
|
||||
#define IRQ_CNS3XXX_GPIOA (IRQ_TC11MP_GIC_START + 11)
|
||||
#define IRQ_CNS3XXX_GPIOB (IRQ_TC11MP_GIC_START + 12)
|
||||
#define IRQ_CNS3XXX_UART0 (IRQ_TC11MP_GIC_START + 13)
|
||||
#define IRQ_CNS3XXX_UART1 (IRQ_TC11MP_GIC_START + 14)
|
||||
#define IRQ_CNS3XXX_UART2 (IRQ_TC11MP_GIC_START + 15)
|
||||
#define IRQ_CNS3XXX_ARM11 (IRQ_TC11MP_GIC_START + 16)
|
||||
|
||||
#define IRQ_CNS3XXX_SW_STATUS (IRQ_TC11MP_GIC_START + 17)
|
||||
#define IRQ_CNS3XXX_SW_R0TXC (IRQ_TC11MP_GIC_START + 18)
|
||||
#define IRQ_CNS3XXX_SW_R0RXC (IRQ_TC11MP_GIC_START + 19)
|
||||
#define IRQ_CNS3XXX_SW_R0QE (IRQ_TC11MP_GIC_START + 20)
|
||||
#define IRQ_CNS3XXX_SW_R0QF (IRQ_TC11MP_GIC_START + 21)
|
||||
#define IRQ_CNS3XXX_SW_R1TXC (IRQ_TC11MP_GIC_START + 22)
|
||||
#define IRQ_CNS3XXX_SW_R1RXC (IRQ_TC11MP_GIC_START + 23)
|
||||
#define IRQ_CNS3XXX_SW_R1QE (IRQ_TC11MP_GIC_START + 24)
|
||||
#define IRQ_CNS3XXX_SW_R1QF (IRQ_TC11MP_GIC_START + 25)
|
||||
#define IRQ_CNS3XXX_SW_PPE (IRQ_TC11MP_GIC_START + 26)
|
||||
|
||||
#define IRQ_CNS3XXX_CRYPTO (IRQ_TC11MP_GIC_START + 27)
|
||||
#define IRQ_CNS3XXX_HCIE (IRQ_TC11MP_GIC_START + 28)
|
||||
#define IRQ_CNS3XXX_PCIE0_DEVICE (IRQ_TC11MP_GIC_START + 29)
|
||||
#define IRQ_CNS3XXX_PCIE1_DEVICE (IRQ_TC11MP_GIC_START + 30)
|
||||
#define IRQ_CNS3XXX_USB_OTG (IRQ_TC11MP_GIC_START + 31)
|
||||
#define IRQ_CNS3XXX_USB_EHCI (IRQ_TC11MP_GIC_START + 32)
|
||||
#define IRQ_CNS3XXX_SATA (IRQ_TC11MP_GIC_START + 33)
|
||||
#define IRQ_CNS3XXX_RAID (IRQ_TC11MP_GIC_START + 34)
|
||||
#define IRQ_CNS3XXX_SMC (IRQ_TC11MP_GIC_START + 35)
|
||||
|
||||
#define IRQ_CNS3XXX_DMAC_ABORT (IRQ_TC11MP_GIC_START + 36)
|
||||
#define IRQ_CNS3XXX_DMAC0 (IRQ_TC11MP_GIC_START + 37)
|
||||
#define IRQ_CNS3XXX_DMAC1 (IRQ_TC11MP_GIC_START + 38)
|
||||
#define IRQ_CNS3XXX_DMAC2 (IRQ_TC11MP_GIC_START + 39)
|
||||
#define IRQ_CNS3XXX_DMAC3 (IRQ_TC11MP_GIC_START + 40)
|
||||
#define IRQ_CNS3XXX_DMAC4 (IRQ_TC11MP_GIC_START + 41)
|
||||
#define IRQ_CNS3XXX_DMAC5 (IRQ_TC11MP_GIC_START + 42)
|
||||
#define IRQ_CNS3XXX_DMAC6 (IRQ_TC11MP_GIC_START + 43)
|
||||
#define IRQ_CNS3XXX_DMAC7 (IRQ_TC11MP_GIC_START + 44)
|
||||
#define IRQ_CNS3XXX_DMAC8 (IRQ_TC11MP_GIC_START + 45)
|
||||
#define IRQ_CNS3XXX_DMAC9 (IRQ_TC11MP_GIC_START + 46)
|
||||
#define IRQ_CNS3XXX_DMAC10 (IRQ_TC11MP_GIC_START + 47)
|
||||
#define IRQ_CNS3XXX_DMAC11 (IRQ_TC11MP_GIC_START + 48)
|
||||
#define IRQ_CNS3XXX_DMAC12 (IRQ_TC11MP_GIC_START + 49)
|
||||
#define IRQ_CNS3XXX_DMAC13 (IRQ_TC11MP_GIC_START + 50)
|
||||
#define IRQ_CNS3XXX_DMAC14 (IRQ_TC11MP_GIC_START + 51)
|
||||
#define IRQ_CNS3XXX_DMAC15 (IRQ_TC11MP_GIC_START + 52)
|
||||
#define IRQ_CNS3XXX_DMAC16 (IRQ_TC11MP_GIC_START + 53)
|
||||
#define IRQ_CNS3XXX_DMAC17 (IRQ_TC11MP_GIC_START + 54)
|
||||
|
||||
#define IRQ_CNS3XXX_PCIE0_RC (IRQ_TC11MP_GIC_START + 55)
|
||||
#define IRQ_CNS3XXX_PCIE1_RC (IRQ_TC11MP_GIC_START + 56)
|
||||
#define IRQ_CNS3XXX_TIMER0 (IRQ_TC11MP_GIC_START + 57)
|
||||
#define IRQ_CNS3XXX_TIMER1 (IRQ_TC11MP_GIC_START + 58)
|
||||
#define IRQ_CNS3XXX_USB_OHCI (IRQ_TC11MP_GIC_START + 59)
|
||||
#define IRQ_CNS3XXX_TIMER2 (IRQ_TC11MP_GIC_START + 60)
|
||||
#define IRQ_CNS3XXX_EXTERNAL_PIN0 (IRQ_TC11MP_GIC_START + 61)
|
||||
#define IRQ_CNS3XXX_EXTERNAL_PIN1 (IRQ_TC11MP_GIC_START + 62)
|
||||
#define IRQ_CNS3XXX_EXTERNAL_PIN2 (IRQ_TC11MP_GIC_START + 63)
|
||||
|
||||
#define NR_IRQS_CNS3XXX (IRQ_TC11MP_GIC_START + 64)
|
||||
|
||||
#if !defined(NR_IRQS) || (NR_IRQS < NR_IRQS_CNS3XXX)
|
||||
#undef NR_IRQS
|
||||
#define NR_IRQS NR_IRQS_CNS3XXX
|
||||
#endif
|
||||
|
||||
#endif /* __MACH_BOARD_CNS3XXX_H */
|
21
arch/arm/mach-cns3xxx/include/mach/debug-macro.S
Normal file
21
arch/arm/mach-cns3xxx/include/mach/debug-macro.S
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
* Debugging macro include header
|
||||
*
|
||||
* Copyright 1994-1999 Russell King
|
||||
* Copyright 2008 Cavium Networks
|
||||
* Moved from linux/arch/arm/kernel/debug.S by Ben Dooks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
.macro addruart,rx
|
||||
mrc p15, 0, \rx, c1, c0
|
||||
tst \rx, #1 @ MMU enabled?
|
||||
moveq \rx, #0x10000000
|
||||
movne \rx, #0xf0000000 @ virtual base
|
||||
orr \rx, \rx, #0x00009000
|
||||
.endm
|
||||
|
||||
#include <asm/hardware/debug-pl01x.S>
|
82
arch/arm/mach-cns3xxx/include/mach/entry-macro.S
Normal file
82
arch/arm/mach-cns3xxx/include/mach/entry-macro.S
Normal file
@ -0,0 +1,82 @@
|
||||
/*
|
||||
* Low-level IRQ helper macros for Cavium Networks platforms
|
||||
*
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <asm/hardware/gic.h>
|
||||
|
||||
.macro disable_fiq
|
||||
.endm
|
||||
|
||||
.macro get_irqnr_preamble, base, tmp
|
||||
ldr \base, =gic_cpu_base_addr
|
||||
ldr \base, [\base]
|
||||
.endm
|
||||
|
||||
.macro arch_ret_to_user, tmp1, tmp2
|
||||
.endm
|
||||
|
||||
/*
|
||||
* The interrupt numbering scheme is defined in the
|
||||
* interrupt controller spec. To wit:
|
||||
*
|
||||
* Interrupts 0-15 are IPI
|
||||
* 16-28 are reserved
|
||||
* 29-31 are local. We allow 30 to be used for the watchdog.
|
||||
* 32-1020 are global
|
||||
* 1021-1022 are reserved
|
||||
* 1023 is "spurious" (no interrupt)
|
||||
*
|
||||
* For now, we ignore all local interrupts so only return an interrupt if it's
|
||||
* between 30 and 1020. The test_for_ipi routine below will pick up on IPIs.
|
||||
*
|
||||
* A simple read from the controller will tell us the number of the highest
|
||||
* priority enabled interrupt. We then just need to check whether it is in the
|
||||
* valid range for an IRQ (30-1020 inclusive).
|
||||
*/
|
||||
|
||||
.macro get_irqnr_and_base, irqnr, irqstat, base, tmp
|
||||
|
||||
ldr \irqstat, [\base, #GIC_CPU_INTACK] /* bits 12-10 = src CPU, 9-0 = int # */
|
||||
|
||||
ldr \tmp, =1021
|
||||
|
||||
bic \irqnr, \irqstat, #0x1c00
|
||||
|
||||
cmp \irqnr, #29
|
||||
cmpcc \irqnr, \irqnr
|
||||
cmpne \irqnr, \tmp
|
||||
cmpcs \irqnr, \irqnr
|
||||
|
||||
.endm
|
||||
|
||||
/* We assume that irqstat (the raw value of the IRQ acknowledge
|
||||
* register) is preserved from the macro above.
|
||||
* If there is an IPI, we immediately signal end of interrupt on the
|
||||
* controller, since this requires the original irqstat value which
|
||||
* we won't easily be able to recreate later.
|
||||
*/
|
||||
|
||||
.macro test_for_ipi, irqnr, irqstat, base, tmp
|
||||
bic \irqnr, \irqstat, #0x1c00
|
||||
cmp \irqnr, #16
|
||||
strcc \irqstat, [\base, #GIC_CPU_EOI]
|
||||
cmpcs \irqnr, \irqnr
|
||||
.endm
|
||||
|
||||
/* As above, this assumes that irqstat and base are preserved.. */
|
||||
|
||||
.macro test_for_ltirq, irqnr, irqstat, base, tmp
|
||||
bic \irqnr, \irqstat, #0x1c00
|
||||
mov \tmp, #0
|
||||
cmp \irqnr, #29
|
||||
moveq \tmp, #1
|
||||
streq \irqstat, [\base, #GIC_CPU_EOI]
|
||||
cmp \tmp, #0
|
||||
.endm
|
22
arch/arm/mach-cns3xxx/include/mach/hardware.h
Normal file
22
arch/arm/mach-cns3xxx/include/mach/hardware.h
Normal file
@ -0,0 +1,22 @@
|
||||
/*
|
||||
* This file contains the hardware definitions of the Cavium Networks boards.
|
||||
*
|
||||
* Copyright 2003 ARM Limited.
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __MACH_HARDWARE_H
|
||||
#define __MACH_HARDWARE_H
|
||||
|
||||
#include <asm/sizes.h>
|
||||
|
||||
/* macro to get at IO space when running virtually */
|
||||
#define PCIBIOS_MIN_IO 0x00000000
|
||||
#define PCIBIOS_MIN_MEM 0x00000000
|
||||
#define pcibios_assign_all_busses() 1
|
||||
|
||||
#endif
|
17
arch/arm/mach-cns3xxx/include/mach/io.h
Normal file
17
arch/arm/mach-cns3xxx/include/mach/io.h
Normal file
@ -0,0 +1,17 @@
|
||||
/*
|
||||
* Copyright 2008 Cavium Networks
|
||||
* Copyright 2003 ARM Limited
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
#ifndef __MACH_IO_H
|
||||
#define __MACH_IO_H
|
||||
|
||||
#define IO_SPACE_LIMIT 0xffffffff
|
||||
|
||||
#define __io(a) __typesafe_io(a)
|
||||
#define __mem_pci(a) (a)
|
||||
|
||||
#endif
|
24
arch/arm/mach-cns3xxx/include/mach/irqs.h
Normal file
24
arch/arm/mach-cns3xxx/include/mach/irqs.h
Normal file
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Copyright 2000 Deep Blue Solutions Ltd.
|
||||
* Copyright 2003 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __MACH_IRQS_H
|
||||
#define __MACH_IRQS_H
|
||||
|
||||
#define IRQ_LOCALTIMER 29
|
||||
#define IRQ_LOCALWDOG 30
|
||||
#define IRQ_TC11MP_GIC_START 32
|
||||
|
||||
#include <mach/cns3xxx.h>
|
||||
|
||||
#ifndef NR_IRQS
|
||||
#error "NR_IRQS not defined by the board-specific files"
|
||||
#endif
|
||||
|
||||
#endif
|
26
arch/arm/mach-cns3xxx/include/mach/memory.h
Normal file
26
arch/arm/mach-cns3xxx/include/mach/memory.h
Normal file
@ -0,0 +1,26 @@
|
||||
/*
|
||||
* Copyright 2003 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __MACH_MEMORY_H
|
||||
#define __MACH_MEMORY_H
|
||||
|
||||
/*
|
||||
* Physical DRAM offset.
|
||||
*/
|
||||
#define PHYS_OFFSET UL(0x00000000)
|
||||
|
||||
#define __phys_to_bus(x) ((x) + PHYS_OFFSET)
|
||||
#define __bus_to_phys(x) ((x) - PHYS_OFFSET)
|
||||
|
||||
#define __virt_to_bus(v) __phys_to_bus(__virt_to_phys(v))
|
||||
#define __bus_to_virt(b) __phys_to_virt(__bus_to_phys(b))
|
||||
#define __pfn_to_bus(p) __phys_to_bus(__pfn_to_phys(p))
|
||||
#define __bus_to_pfn(b) __phys_to_pfn(__bus_to_phys(b))
|
||||
|
||||
#endif
|
29
arch/arm/mach-cns3xxx/include/mach/system.h
Normal file
29
arch/arm/mach-cns3xxx/include/mach/system.h
Normal file
@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Copyright 2000 Deep Blue Solutions Ltd
|
||||
* Copyright 2003 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __MACH_SYSTEM_H
|
||||
#define __MACH_SYSTEM_H
|
||||
|
||||
#include <linux/io.h>
|
||||
#include <asm/proc-fns.h>
|
||||
#include <mach/hardware.h>
|
||||
|
||||
static inline void arch_idle(void)
|
||||
{
|
||||
/*
|
||||
* This should do all the clock switching
|
||||
* and wait for interrupt tricks
|
||||
*/
|
||||
cpu_do_idle();
|
||||
}
|
||||
|
||||
void arch_reset(char mode, const char *cmd);
|
||||
|
||||
#endif
|
12
arch/arm/mach-cns3xxx/include/mach/timex.h
Normal file
12
arch/arm/mach-cns3xxx/include/mach/timex.h
Normal file
@ -0,0 +1,12 @@
|
||||
/*
|
||||
* Cavium Networks architecture timex specifications
|
||||
*
|
||||
* Copyright 2003 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#define CLOCK_TICK_RATE (50000000 / 16)
|
55
arch/arm/mach-cns3xxx/include/mach/uncompress.h
Normal file
55
arch/arm/mach-cns3xxx/include/mach/uncompress.h
Normal file
@ -0,0 +1,55 @@
|
||||
/*
|
||||
* Copyright 2003 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <asm/mach-types.h>
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/cns3xxx.h>
|
||||
|
||||
#define AMBA_UART_DR(base) (*(volatile unsigned char *)((base) + 0x00))
|
||||
#define AMBA_UART_LCRH(base) (*(volatile unsigned char *)((base) + 0x2c))
|
||||
#define AMBA_UART_CR(base) (*(volatile unsigned char *)((base) + 0x30))
|
||||
#define AMBA_UART_FR(base) (*(volatile unsigned char *)((base) + 0x18))
|
||||
|
||||
/*
|
||||
* Return the UART base address
|
||||
*/
|
||||
static inline unsigned long get_uart_base(void)
|
||||
{
|
||||
if (machine_is_cns3420vb())
|
||||
return CNS3XXX_UART0_BASE;
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* This does not append a newline
|
||||
*/
|
||||
static inline void putc(int c)
|
||||
{
|
||||
unsigned long base = get_uart_base();
|
||||
|
||||
while (AMBA_UART_FR(base) & (1 << 5))
|
||||
barrier();
|
||||
|
||||
AMBA_UART_DR(base) = c;
|
||||
}
|
||||
|
||||
static inline void flush(void)
|
||||
{
|
||||
unsigned long base = get_uart_base();
|
||||
|
||||
while (AMBA_UART_FR(base) & (1 << 3))
|
||||
barrier();
|
||||
}
|
||||
|
||||
/*
|
||||
* nothing to do
|
||||
*/
|
||||
#define arch_decomp_setup()
|
||||
#define arch_decomp_wdog()
|
11
arch/arm/mach-cns3xxx/include/mach/vmalloc.h
Normal file
11
arch/arm/mach-cns3xxx/include/mach/vmalloc.h
Normal file
@ -0,0 +1,11 @@
|
||||
/*
|
||||
* Copyright 2000 Russell King.
|
||||
* Copyright 2003 ARM Limited
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#define VMALLOC_END 0xd8000000
|
86
arch/arm/mach-cns3xxx/pm.c
Normal file
86
arch/arm/mach-cns3xxx/pm.c
Normal file
@ -0,0 +1,86 @@
|
||||
/*
|
||||
* Copyright 2008 Cavium Networks
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License, Version 2, as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <linux/delay.h>
|
||||
#include <mach/system.h>
|
||||
#include <mach/cns3xxx.h>
|
||||
|
||||
void cns3xxx_pwr_clk_en(unsigned int block)
|
||||
{
|
||||
PM_CLK_GATE_REG |= (block & PM_CLK_GATE_REG_MASK);
|
||||
}
|
||||
|
||||
void cns3xxx_pwr_power_up(unsigned int block)
|
||||
{
|
||||
PM_PLL_HM_PD_CTRL_REG &= ~(block & CNS3XXX_PWR_PLL_ALL);
|
||||
|
||||
/* Wait for 300us for the PLL output clock locked. */
|
||||
udelay(300);
|
||||
};
|
||||
|
||||
void cns3xxx_pwr_power_down(unsigned int block)
|
||||
{
|
||||
/* write '1' to power down */
|
||||
PM_PLL_HM_PD_CTRL_REG |= (block & CNS3XXX_PWR_PLL_ALL);
|
||||
};
|
||||
|
||||
static void cns3xxx_pwr_soft_rst_force(unsigned int block)
|
||||
{
|
||||
/*
|
||||
* bit 0, 28, 29 => program low to reset,
|
||||
* the other else program low and then high
|
||||
*/
|
||||
if (block & 0x30000001) {
|
||||
PM_SOFT_RST_REG &= ~(block & PM_SOFT_RST_REG_MASK);
|
||||
} else {
|
||||
PM_SOFT_RST_REG &= ~(block & PM_SOFT_RST_REG_MASK);
|
||||
PM_SOFT_RST_REG |= (block & PM_SOFT_RST_REG_MASK);
|
||||
}
|
||||
}
|
||||
|
||||
void cns3xxx_pwr_soft_rst(unsigned int block)
|
||||
{
|
||||
static unsigned int soft_reset;
|
||||
|
||||
if (soft_reset & block) {
|
||||
/* SPI/I2C/GPIO use the same block, reset once. */
|
||||
return;
|
||||
} else {
|
||||
soft_reset |= block;
|
||||
}
|
||||
cns3xxx_pwr_soft_rst_force(block);
|
||||
}
|
||||
|
||||
void arch_reset(char mode, const char *cmd)
|
||||
{
|
||||
/*
|
||||
* To reset, we hit the on-board reset register
|
||||
* in the system FPGA.
|
||||
*/
|
||||
cns3xxx_pwr_soft_rst(CNS3XXX_PWR_SOFTWARE_RST(GLOBAL));
|
||||
}
|
||||
|
||||
/*
|
||||
* cns3xxx_cpu_clock - return CPU/L2 clock
|
||||
* aclk: cpu clock/2
|
||||
* hclk: cpu clock/4
|
||||
* pclk: cpu clock/8
|
||||
*/
|
||||
int cns3xxx_cpu_clock(void)
|
||||
{
|
||||
int cpu;
|
||||
int cpu_sel;
|
||||
int div_sel;
|
||||
|
||||
cpu_sel = (PM_CLK_CTRL_REG >> PM_CLK_CTRL_REG_OFFSET_PLL_CPU_SEL) & 0xf;
|
||||
div_sel = (PM_CLK_CTRL_REG >> PM_CLK_CTRL_REG_OFFSET_CPU_CLK_DIV) & 0x3;
|
||||
|
||||
cpu = (300 + ((cpu_sel / 3) * 100) + ((cpu_sel % 3) * 33)) >> div_sel;
|
||||
|
||||
return cpu;
|
||||
}
|
@ -41,7 +41,7 @@ static struct platform_device adssphere_flash = {
|
||||
.resource = &adssphere_flash_resource,
|
||||
};
|
||||
|
||||
static struct ep93xx_eth_data adssphere_eth_data = {
|
||||
static struct ep93xx_eth_data __initdata adssphere_eth_data = {
|
||||
.phy_id = 1,
|
||||
};
|
||||
|
||||
|
@ -96,6 +96,10 @@ static struct clk clk_keypad = {
|
||||
.enable_mask = EP93XX_SYSCON_KEYTCHCLKDIV_KEN,
|
||||
.set_rate = set_keytchclk_rate,
|
||||
};
|
||||
static struct clk clk_spi = {
|
||||
.parent = &clk_xtali,
|
||||
.rate = EP93XX_EXT_CLK_RATE,
|
||||
};
|
||||
static struct clk clk_pwm = {
|
||||
.parent = &clk_xtali,
|
||||
.rate = EP93XX_EXT_CLK_RATE,
|
||||
@ -186,6 +190,7 @@ static struct clk_lookup clocks[] = {
|
||||
INIT_CK("ep93xx-ohci", NULL, &clk_usb_host),
|
||||
INIT_CK("ep93xx-keypad", NULL, &clk_keypad),
|
||||
INIT_CK("ep93xx-fb", NULL, &clk_video),
|
||||
INIT_CK("ep93xx-spi.0", NULL, &clk_spi),
|
||||
INIT_CK(NULL, "pwm_clk", &clk_pwm),
|
||||
INIT_CK(NULL, "m2p0", &clk_m2p0),
|
||||
INIT_CK(NULL, "m2p1", &clk_m2p1),
|
||||
@ -473,6 +478,14 @@ static int __init ep93xx_clock_init(void)
|
||||
/* Initialize the pll2 derived clocks */
|
||||
clk_usb_host.rate = clk_pll2.rate / (((value >> 28) & 0xf) + 1);
|
||||
|
||||
/*
|
||||
* EP93xx SSP clock rate was doubled in version E2. For more information
|
||||
* see:
|
||||
* http://www.cirrus.com/en/pubs/appNote/AN273REV4.pdf
|
||||
*/
|
||||
if (ep93xx_chip_revision() < EP93XX_CHIP_REV_E2)
|
||||
clk_spi.rate /= 2;
|
||||
|
||||
pr_info("PLL1 running at %ld MHz, PLL2 at %ld MHz\n",
|
||||
clk_pll1.rate / 1000000, clk_pll2.rate / 1000000);
|
||||
pr_info("FCLK %ld MHz, HCLK %ld MHz, PCLK %ld MHz\n",
|
||||
|
@ -31,10 +31,12 @@
|
||||
#include <linux/amba/serial.h>
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/i2c-gpio.h>
|
||||
#include <linux/spi/spi.h>
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/fb.h>
|
||||
#include <mach/ep93xx_keypad.h>
|
||||
#include <mach/ep93xx_spi.h>
|
||||
|
||||
#include <asm/mach/map.h>
|
||||
#include <asm/mach/time.h>
|
||||
@ -222,6 +224,20 @@ void ep93xx_devcfg_set_clear(unsigned int set_bits, unsigned int clear_bits)
|
||||
}
|
||||
EXPORT_SYMBOL(ep93xx_devcfg_set_clear);
|
||||
|
||||
/**
|
||||
* ep93xx_chip_revision() - returns the EP93xx chip revision
|
||||
*
|
||||
* See <mach/platform.h> for more information.
|
||||
*/
|
||||
unsigned int ep93xx_chip_revision(void)
|
||||
{
|
||||
unsigned int v;
|
||||
|
||||
v = __raw_readl(EP93XX_SYSCON_SYSCFG);
|
||||
v &= EP93XX_SYSCON_SYSCFG_REV_MASK;
|
||||
v >>= EP93XX_SYSCON_SYSCFG_REV_SHIFT;
|
||||
return v;
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* EP93xx peripheral handling
|
||||
@ -330,6 +346,10 @@ static struct platform_device ep93xx_ohci_device = {
|
||||
.resource = ep93xx_ohci_resources,
|
||||
};
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
* EP93xx ethernet peripheral handling
|
||||
*************************************************************************/
|
||||
static struct ep93xx_eth_data ep93xx_eth_data;
|
||||
|
||||
static struct resource ep93xx_eth_resource[] = {
|
||||
@ -354,6 +374,12 @@ static struct platform_device ep93xx_eth_device = {
|
||||
.resource = ep93xx_eth_resource,
|
||||
};
|
||||
|
||||
/**
|
||||
* ep93xx_register_eth - Register the built-in ethernet platform device.
|
||||
* @data: platform specific ethernet configuration (__initdata)
|
||||
* @copy_addr: flag indicating that the MAC address should be copied
|
||||
* from the IndAd registers (as programmed by the bootloader)
|
||||
*/
|
||||
void __init ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr)
|
||||
{
|
||||
if (copy_addr)
|
||||
@ -370,11 +396,19 @@ void __init ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr)
|
||||
static struct i2c_gpio_platform_data ep93xx_i2c_data;
|
||||
|
||||
static struct platform_device ep93xx_i2c_device = {
|
||||
.name = "i2c-gpio",
|
||||
.id = 0,
|
||||
.dev.platform_data = &ep93xx_i2c_data,
|
||||
.name = "i2c-gpio",
|
||||
.id = 0,
|
||||
.dev = {
|
||||
.platform_data = &ep93xx_i2c_data,
|
||||
},
|
||||
};
|
||||
|
||||
/**
|
||||
* ep93xx_register_i2c - Register the i2c platform device.
|
||||
* @data: platform specific i2c-gpio configuration (__initdata)
|
||||
* @devices: platform specific i2c bus device information (__initdata)
|
||||
* @num: the number of devices on the i2c bus
|
||||
*/
|
||||
void __init ep93xx_register_i2c(struct i2c_gpio_platform_data *data,
|
||||
struct i2c_board_info *devices, int num)
|
||||
{
|
||||
@ -398,17 +432,67 @@ void __init ep93xx_register_i2c(struct i2c_gpio_platform_data *data,
|
||||
platform_device_register(&ep93xx_i2c_device);
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* EP93xx SPI peripheral handling
|
||||
*************************************************************************/
|
||||
static struct ep93xx_spi_info ep93xx_spi_master_data;
|
||||
|
||||
static struct resource ep93xx_spi_resources[] = {
|
||||
{
|
||||
.start = EP93XX_SPI_PHYS_BASE,
|
||||
.end = EP93XX_SPI_PHYS_BASE + 0x18 - 1,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
{
|
||||
.start = IRQ_EP93XX_SSP,
|
||||
.end = IRQ_EP93XX_SSP,
|
||||
.flags = IORESOURCE_IRQ,
|
||||
},
|
||||
};
|
||||
|
||||
static struct platform_device ep93xx_spi_device = {
|
||||
.name = "ep93xx-spi",
|
||||
.id = 0,
|
||||
.dev = {
|
||||
.platform_data = &ep93xx_spi_master_data,
|
||||
},
|
||||
.num_resources = ARRAY_SIZE(ep93xx_spi_resources),
|
||||
.resource = ep93xx_spi_resources,
|
||||
};
|
||||
|
||||
/**
|
||||
* ep93xx_register_spi() - registers spi platform device
|
||||
* @info: ep93xx board specific spi master info (__initdata)
|
||||
* @devices: SPI devices to register (__initdata)
|
||||
* @num: number of SPI devices to register
|
||||
*
|
||||
* This function registers platform device for the EP93xx SPI controller and
|
||||
* also makes sure that SPI pins are muxed so that I2S is not using those pins.
|
||||
*/
|
||||
void __init ep93xx_register_spi(struct ep93xx_spi_info *info,
|
||||
struct spi_board_info *devices, int num)
|
||||
{
|
||||
/*
|
||||
* When SPI is used, we need to make sure that I2S is muxed off from
|
||||
* SPI pins.
|
||||
*/
|
||||
ep93xx_devcfg_clear_bits(EP93XX_SYSCON_DEVCFG_I2SONSSP);
|
||||
|
||||
ep93xx_spi_master_data = *info;
|
||||
spi_register_board_info(devices, num);
|
||||
platform_device_register(&ep93xx_spi_device);
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* EP93xx LEDs
|
||||
*************************************************************************/
|
||||
static struct gpio_led ep93xx_led_pins[] = {
|
||||
{
|
||||
.name = "platform:grled",
|
||||
.gpio = EP93XX_GPIO_LINE_GRLED,
|
||||
.name = "platform:grled",
|
||||
.gpio = EP93XX_GPIO_LINE_GRLED,
|
||||
}, {
|
||||
.name = "platform:rdled",
|
||||
.gpio = EP93XX_GPIO_LINE_RDLED,
|
||||
.name = "platform:rdled",
|
||||
.gpio = EP93XX_GPIO_LINE_RDLED,
|
||||
},
|
||||
};
|
||||
|
||||
@ -528,7 +612,7 @@ static struct platform_device ep93xx_fb_device = {
|
||||
.name = "ep93xx-fb",
|
||||
.id = -1,
|
||||
.dev = {
|
||||
.platform_data = &ep93xxfb_data,
|
||||
.platform_data = &ep93xxfb_data,
|
||||
.coherent_dma_mask = DMA_BIT_MASK(32),
|
||||
.dma_mask = &ep93xx_fb_device.dev.coherent_dma_mask,
|
||||
},
|
||||
@ -536,6 +620,10 @@ static struct platform_device ep93xx_fb_device = {
|
||||
.resource = ep93xx_fb_resource,
|
||||
};
|
||||
|
||||
/**
|
||||
* ep93xx_register_fb - Register the framebuffer platform device.
|
||||
* @data: platform specific framebuffer configuration (__initdata)
|
||||
*/
|
||||
void __init ep93xx_register_fb(struct ep93xxfb_mach_info *data)
|
||||
{
|
||||
ep93xxfb_data = *data;
|
||||
@ -546,6 +634,8 @@ void __init ep93xx_register_fb(struct ep93xxfb_mach_info *data)
|
||||
/*************************************************************************
|
||||
* EP93xx matrix keypad peripheral handling
|
||||
*************************************************************************/
|
||||
static struct ep93xx_keypad_platform_data ep93xx_keypad_data;
|
||||
|
||||
static struct resource ep93xx_keypad_resource[] = {
|
||||
{
|
||||
.start = EP93XX_KEY_MATRIX_PHYS_BASE,
|
||||
@ -559,15 +649,22 @@ static struct resource ep93xx_keypad_resource[] = {
|
||||
};
|
||||
|
||||
static struct platform_device ep93xx_keypad_device = {
|
||||
.name = "ep93xx-keypad",
|
||||
.id = -1,
|
||||
.num_resources = ARRAY_SIZE(ep93xx_keypad_resource),
|
||||
.resource = ep93xx_keypad_resource,
|
||||
.name = "ep93xx-keypad",
|
||||
.id = -1,
|
||||
.dev = {
|
||||
.platform_data = &ep93xx_keypad_data,
|
||||
},
|
||||
.num_resources = ARRAY_SIZE(ep93xx_keypad_resource),
|
||||
.resource = ep93xx_keypad_resource,
|
||||
};
|
||||
|
||||
/**
|
||||
* ep93xx_register_keypad - Register the keypad platform device.
|
||||
* @data: platform specific keypad configuration (__initdata)
|
||||
*/
|
||||
void __init ep93xx_register_keypad(struct ep93xx_keypad_platform_data *data)
|
||||
{
|
||||
ep93xx_keypad_device.dev.platform_data = data;
|
||||
ep93xx_keypad_data = *data;
|
||||
platform_device_register(&ep93xx_keypad_device);
|
||||
}
|
||||
|
||||
|
@ -74,7 +74,7 @@ static void __init edb93xx_register_flash(void)
|
||||
}
|
||||
}
|
||||
|
||||
static struct ep93xx_eth_data edb93xx_eth_data = {
|
||||
static struct ep93xx_eth_data __initdata edb93xx_eth_data = {
|
||||
.phy_id = 1,
|
||||
};
|
||||
|
||||
@ -82,7 +82,7 @@ static struct ep93xx_eth_data edb93xx_eth_data = {
|
||||
/*************************************************************************
|
||||
* EDB93xx i2c peripheral handling
|
||||
*************************************************************************/
|
||||
static struct i2c_gpio_platform_data edb93xx_i2c_gpio_data = {
|
||||
static struct i2c_gpio_platform_data __initdata edb93xx_i2c_gpio_data = {
|
||||
.sda_pin = EP93XX_GPIO_LINE_EEDAT,
|
||||
.sda_is_open_drain = 0,
|
||||
.scl_pin = EP93XX_GPIO_LINE_EECLK,
|
||||
|
@ -41,7 +41,7 @@ static struct platform_device gesbc9312_flash = {
|
||||
.resource = &gesbc9312_flash_resource,
|
||||
};
|
||||
|
||||
static struct ep93xx_eth_data gesbc9312_eth_data = {
|
||||
static struct ep93xx_eth_data __initdata gesbc9312_eth_data = {
|
||||
.phy_id = 1,
|
||||
};
|
||||
|
||||
|
@ -106,6 +106,7 @@
|
||||
|
||||
#define EP93XX_AAC_BASE EP93XX_APB_IOMEM(0x00080000)
|
||||
|
||||
#define EP93XX_SPI_PHYS_BASE EP93XX_APB_PHYS(0x000a0000)
|
||||
#define EP93XX_SPI_BASE EP93XX_APB_IOMEM(0x000a0000)
|
||||
|
||||
#define EP93XX_IRDA_BASE EP93XX_APB_IOMEM(0x000b0000)
|
||||
|
@ -6,9 +6,11 @@
|
||||
|
||||
struct i2c_gpio_platform_data;
|
||||
struct i2c_board_info;
|
||||
struct spi_board_info;
|
||||
struct platform_device;
|
||||
struct ep93xxfb_mach_info;
|
||||
struct ep93xx_keypad_platform_data;
|
||||
struct ep93xx_spi_info;
|
||||
|
||||
struct ep93xx_eth_data
|
||||
{
|
||||
@ -33,9 +35,19 @@ static inline void ep93xx_devcfg_clear_bits(unsigned int bits)
|
||||
ep93xx_devcfg_set_clear(0x00, bits);
|
||||
}
|
||||
|
||||
#define EP93XX_CHIP_REV_D0 3
|
||||
#define EP93XX_CHIP_REV_D1 4
|
||||
#define EP93XX_CHIP_REV_E0 5
|
||||
#define EP93XX_CHIP_REV_E1 6
|
||||
#define EP93XX_CHIP_REV_E2 7
|
||||
|
||||
unsigned int ep93xx_chip_revision(void);
|
||||
|
||||
void ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr);
|
||||
void ep93xx_register_i2c(struct i2c_gpio_platform_data *data,
|
||||
struct i2c_board_info *devices, int num);
|
||||
void ep93xx_register_spi(struct ep93xx_spi_info *info,
|
||||
struct spi_board_info *devices, int num);
|
||||
void ep93xx_register_fb(struct ep93xxfb_mach_info *data);
|
||||
void ep93xx_register_pwm(int pwm0, int pwm1);
|
||||
int ep93xx_pwm_acquire_gpio(struct platform_device *pdev);
|
||||
|
@ -80,7 +80,7 @@ static void __init micro9_register_flash(void)
|
||||
/*************************************************************************
|
||||
* Micro9 Ethernet
|
||||
*************************************************************************/
|
||||
static struct ep93xx_eth_data micro9_eth_data = {
|
||||
static struct ep93xx_eth_data __initdata micro9_eth_data = {
|
||||
.phy_id = 0x1f,
|
||||
};
|
||||
|
||||
|
@ -49,17 +49,17 @@ static struct platform_device simone_flash = {
|
||||
},
|
||||
};
|
||||
|
||||
static struct ep93xx_eth_data simone_eth_data = {
|
||||
static struct ep93xx_eth_data __initdata simone_eth_data = {
|
||||
.phy_id = 1,
|
||||
};
|
||||
|
||||
static struct ep93xxfb_mach_info simone_fb_info = {
|
||||
static struct ep93xxfb_mach_info __initdata simone_fb_info = {
|
||||
.num_modes = EP93XXFB_USE_MODEDB,
|
||||
.bpp = 16,
|
||||
.flags = EP93XXFB_USE_SDCSN0 | EP93XXFB_PCLK_FALLING,
|
||||
};
|
||||
|
||||
static struct i2c_gpio_platform_data simone_i2c_gpio_data = {
|
||||
static struct i2c_gpio_platform_data __initdata simone_i2c_gpio_data = {
|
||||
.sda_pin = EP93XX_GPIO_LINE_EEDAT,
|
||||
.sda_is_open_drain = 0,
|
||||
.scl_pin = EP93XX_GPIO_LINE_EECLK,
|
||||
|
@ -125,11 +125,11 @@ static struct platform_device snappercl15_nand_device = {
|
||||
.num_resources = ARRAY_SIZE(snappercl15_nand_resource),
|
||||
};
|
||||
|
||||
static struct ep93xx_eth_data snappercl15_eth_data = {
|
||||
static struct ep93xx_eth_data __initdata snappercl15_eth_data = {
|
||||
.phy_id = 1,
|
||||
};
|
||||
|
||||
static struct i2c_gpio_platform_data snappercl15_i2c_gpio_data = {
|
||||
static struct i2c_gpio_platform_data __initdata snappercl15_i2c_gpio_data = {
|
||||
.sda_pin = EP93XX_GPIO_LINE_EEDAT,
|
||||
.sda_is_open_drain = 0,
|
||||
.scl_pin = EP93XX_GPIO_LINE_EECLK,
|
||||
@ -145,7 +145,7 @@ static struct i2c_board_info __initdata snappercl15_i2c_data[] = {
|
||||
},
|
||||
};
|
||||
|
||||
static struct ep93xxfb_mach_info snappercl15_fb_info = {
|
||||
static struct ep93xxfb_mach_info __initdata snappercl15_fb_info = {
|
||||
.num_modes = EP93XXFB_USE_MODEDB,
|
||||
.bpp = 16,
|
||||
};
|
||||
|
@ -186,7 +186,7 @@ static struct platform_device ts72xx_wdt_device = {
|
||||
.resource = ts72xx_wdt_resources,
|
||||
};
|
||||
|
||||
static struct ep93xx_eth_data ts72xx_eth_data = {
|
||||
static struct ep93xx_eth_data __initdata ts72xx_eth_data = {
|
||||
.phy_id = 1,
|
||||
};
|
||||
|
||||
|
@ -11,6 +11,7 @@ config ARCH_INTEGRATOR_AP
|
||||
config ARCH_INTEGRATOR_CP
|
||||
bool "Support Integrator/CP platform"
|
||||
select ARCH_CINTEGRATOR
|
||||
select ARM_TIMER_SP804
|
||||
help
|
||||
Include support for the ARM(R) Integrator CP platform.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
# Object file lists.
|
||||
|
||||
obj-y := clock.o core.o lm.o
|
||||
obj-y := core.o lm.o
|
||||
obj-$(CONFIG_ARCH_INTEGRATOR_AP) += integrator_ap.o
|
||||
obj-$(CONFIG_ARCH_INTEGRATOR_CP) += integrator_cp.o
|
||||
|
||||
|
@ -1,2 +0,0 @@
|
||||
extern void integrator_time_init(unsigned long, unsigned int);
|
||||
extern unsigned long integrator_gettimeoffset(void);
|
@ -24,15 +24,13 @@
|
||||
#include <asm/clkdev.h>
|
||||
#include <mach/clkdev.h>
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/platform.h>
|
||||
#include <asm/irq.h>
|
||||
#include <asm/hardware/arm_timer.h>
|
||||
#include <mach/cm.h>
|
||||
#include <asm/system.h>
|
||||
#include <asm/leds.h>
|
||||
#include <asm/mach/time.h>
|
||||
|
||||
#include "common.h"
|
||||
|
||||
static struct amba_pl010_data integrator_uart_data;
|
||||
|
||||
static struct amba_device rtc_device = {
|
||||
@ -163,8 +161,8 @@ arch_initcall(integrator_init);
|
||||
* UART0 7 6
|
||||
* UART1 5 4
|
||||
*/
|
||||
#define SC_CTRLC (IO_ADDRESS(INTEGRATOR_SC_BASE) + INTEGRATOR_SC_CTRLC_OFFSET)
|
||||
#define SC_CTRLS (IO_ADDRESS(INTEGRATOR_SC_BASE) + INTEGRATOR_SC_CTRLS_OFFSET)
|
||||
#define SC_CTRLC IO_ADDRESS(INTEGRATOR_SC_CTRLC)
|
||||
#define SC_CTRLS IO_ADDRESS(INTEGRATOR_SC_CTRLS)
|
||||
|
||||
static void integrator_uart_set_mctrl(struct amba_device *dev, void __iomem *base, unsigned int mctrl)
|
||||
{
|
||||
@ -196,7 +194,7 @@ static struct amba_pl010_data integrator_uart_data = {
|
||||
.set_mctrl = integrator_uart_set_mctrl,
|
||||
};
|
||||
|
||||
#define CM_CTRL IO_ADDRESS(INTEGRATOR_HDR_BASE) + INTEGRATOR_HDR_CTRL_OFFSET
|
||||
#define CM_CTRL IO_ADDRESS(INTEGRATOR_HDR_CTRL)
|
||||
|
||||
static DEFINE_SPINLOCK(cm_lock);
|
||||
|
||||
@ -217,120 +215,3 @@ void cm_control(u32 mask, u32 set)
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(cm_control);
|
||||
|
||||
/*
|
||||
* Where is the timer (VA)?
|
||||
*/
|
||||
#define TIMER0_VA_BASE (IO_ADDRESS(INTEGRATOR_CT_BASE)+0x00000000)
|
||||
#define TIMER1_VA_BASE (IO_ADDRESS(INTEGRATOR_CT_BASE)+0x00000100)
|
||||
#define TIMER2_VA_BASE (IO_ADDRESS(INTEGRATOR_CT_BASE)+0x00000200)
|
||||
#define VA_IC_BASE IO_ADDRESS(INTEGRATOR_IC_BASE)
|
||||
|
||||
/*
|
||||
* How long is the timer interval?
|
||||
*/
|
||||
#define TIMER_INTERVAL (TICKS_PER_uSEC * mSEC_10)
|
||||
#if TIMER_INTERVAL >= 0x100000
|
||||
#define TICKS2USECS(x) (256 * (x) / TICKS_PER_uSEC)
|
||||
#elif TIMER_INTERVAL >= 0x10000
|
||||
#define TICKS2USECS(x) (16 * (x) / TICKS_PER_uSEC)
|
||||
#else
|
||||
#define TICKS2USECS(x) ((x) / TICKS_PER_uSEC)
|
||||
#endif
|
||||
|
||||
static unsigned long timer_reload;
|
||||
|
||||
/*
|
||||
* Returns number of ms since last clock interrupt. Note that interrupts
|
||||
* will have been disabled by do_gettimeoffset()
|
||||
*/
|
||||
unsigned long integrator_gettimeoffset(void)
|
||||
{
|
||||
unsigned long ticks1, ticks2, status;
|
||||
|
||||
/*
|
||||
* Get the current number of ticks. Note that there is a race
|
||||
* condition between us reading the timer and checking for
|
||||
* an interrupt. We get around this by ensuring that the
|
||||
* counter has not reloaded between our two reads.
|
||||
*/
|
||||
ticks2 = readl(TIMER1_VA_BASE + TIMER_VALUE) & 0xffff;
|
||||
do {
|
||||
ticks1 = ticks2;
|
||||
status = __raw_readl(VA_IC_BASE + IRQ_RAW_STATUS);
|
||||
ticks2 = readl(TIMER1_VA_BASE + TIMER_VALUE) & 0xffff;
|
||||
} while (ticks2 > ticks1);
|
||||
|
||||
/*
|
||||
* Number of ticks since last interrupt.
|
||||
*/
|
||||
ticks1 = timer_reload - ticks2;
|
||||
|
||||
/*
|
||||
* Interrupt pending? If so, we've reloaded once already.
|
||||
*/
|
||||
if (status & (1 << IRQ_TIMERINT1))
|
||||
ticks1 += timer_reload;
|
||||
|
||||
/*
|
||||
* Convert the ticks to usecs
|
||||
*/
|
||||
return TICKS2USECS(ticks1);
|
||||
}
|
||||
|
||||
/*
|
||||
* IRQ handler for the timer
|
||||
*/
|
||||
static irqreturn_t
|
||||
integrator_timer_interrupt(int irq, void *dev_id)
|
||||
{
|
||||
/*
|
||||
* clear the interrupt
|
||||
*/
|
||||
writel(1, TIMER1_VA_BASE + TIMER_INTCLR);
|
||||
|
||||
timer_tick();
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
static struct irqaction integrator_timer_irq = {
|
||||
.name = "Integrator Timer Tick",
|
||||
.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
|
||||
.handler = integrator_timer_interrupt,
|
||||
};
|
||||
|
||||
/*
|
||||
* Set up timer interrupt, and return the current time in seconds.
|
||||
*/
|
||||
void __init integrator_time_init(unsigned long reload, unsigned int ctrl)
|
||||
{
|
||||
unsigned int timer_ctrl = TIMER_CTRL_ENABLE | TIMER_CTRL_PERIODIC;
|
||||
|
||||
timer_reload = reload;
|
||||
timer_ctrl |= ctrl;
|
||||
|
||||
if (timer_reload > 0x100000) {
|
||||
timer_reload >>= 8;
|
||||
timer_ctrl |= TIMER_CTRL_DIV256;
|
||||
} else if (timer_reload > 0x010000) {
|
||||
timer_reload >>= 4;
|
||||
timer_ctrl |= TIMER_CTRL_DIV16;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialise to a known state (all timers off)
|
||||
*/
|
||||
writel(0, TIMER0_VA_BASE + TIMER_CTRL);
|
||||
writel(0, TIMER1_VA_BASE + TIMER_CTRL);
|
||||
writel(0, TIMER2_VA_BASE + TIMER_CTRL);
|
||||
|
||||
writel(timer_reload, TIMER1_VA_BASE + TIMER_LOAD);
|
||||
writel(timer_reload, TIMER1_VA_BASE + TIMER_VALUE);
|
||||
writel(timer_ctrl, TIMER1_VA_BASE + TIMER_CTRL);
|
||||
|
||||
/*
|
||||
* Make irqs happen for the system timer
|
||||
*/
|
||||
setup_irq(IRQ_TIMERINT1, &integrator_timer_irq);
|
||||
}
|
||||
|
@ -19,32 +19,39 @@
|
||||
#include <linux/io.h>
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/platform.h>
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/hardware/icst525.h>
|
||||
#include <asm/hardware/icst.h>
|
||||
|
||||
static struct cpufreq_driver integrator_driver;
|
||||
|
||||
#define CM_ID (IO_ADDRESS(INTEGRATOR_HDR_BASE)+INTEGRATOR_HDR_ID_OFFSET)
|
||||
#define CM_OSC (IO_ADDRESS(INTEGRATOR_HDR_BASE)+INTEGRATOR_HDR_OSC_OFFSET)
|
||||
#define CM_STAT (IO_ADDRESS(INTEGRATOR_HDR_BASE)+INTEGRATOR_HDR_STAT_OFFSET)
|
||||
#define CM_LOCK (IO_ADDRESS(INTEGRATOR_HDR_BASE)+INTEGRATOR_HDR_LOCK_OFFSET)
|
||||
#define CM_ID IO_ADDRESS(INTEGRATOR_HDR_ID)
|
||||
#define CM_OSC IO_ADDRESS(INTEGRATOR_HDR_OSC)
|
||||
#define CM_STAT IO_ADDRESS(INTEGRATOR_HDR_STAT)
|
||||
#define CM_LOCK IO_ADDRESS(INTEGRATOR_HDR_LOCK)
|
||||
|
||||
static const struct icst525_params lclk_params = {
|
||||
.ref = 24000,
|
||||
.vco_max = 320000,
|
||||
static const struct icst_params lclk_params = {
|
||||
.ref = 24000000,
|
||||
.vco_max = ICST525_VCO_MAX_5V,
|
||||
.vco_min = ICST525_VCO_MIN,
|
||||
.vd_min = 8,
|
||||
.vd_max = 132,
|
||||
.rd_min = 24,
|
||||
.rd_max = 24,
|
||||
.s2div = icst525_s2div,
|
||||
.idx2s = icst525_idx2s,
|
||||
};
|
||||
|
||||
static const struct icst525_params cclk_params = {
|
||||
.ref = 24000,
|
||||
.vco_max = 320000,
|
||||
static const struct icst_params cclk_params = {
|
||||
.ref = 24000000,
|
||||
.vco_max = ICST525_VCO_MAX_5V,
|
||||
.vco_min = ICST525_VCO_MIN,
|
||||
.vd_min = 12,
|
||||
.vd_max = 160,
|
||||
.rd_min = 24,
|
||||
.rd_max = 24,
|
||||
.s2div = icst525_s2div,
|
||||
.idx2s = icst525_idx2s,
|
||||
};
|
||||
|
||||
/*
|
||||
@ -52,17 +59,17 @@ static const struct icst525_params cclk_params = {
|
||||
*/
|
||||
static int integrator_verify_policy(struct cpufreq_policy *policy)
|
||||
{
|
||||
struct icst525_vco vco;
|
||||
struct icst_vco vco;
|
||||
|
||||
cpufreq_verify_within_limits(policy,
|
||||
policy->cpuinfo.min_freq,
|
||||
policy->cpuinfo.max_freq);
|
||||
|
||||
vco = icst525_khz_to_vco(&cclk_params, policy->max);
|
||||
policy->max = icst525_khz(&cclk_params, vco);
|
||||
vco = icst_hz_to_vco(&cclk_params, policy->max * 1000);
|
||||
policy->max = icst_hz(&cclk_params, vco) / 1000;
|
||||
|
||||
vco = icst525_khz_to_vco(&cclk_params, policy->min);
|
||||
policy->min = icst525_khz(&cclk_params, vco);
|
||||
vco = icst_hz_to_vco(&cclk_params, policy->min * 1000);
|
||||
policy->min = icst_hz(&cclk_params, vco) / 1000;
|
||||
|
||||
cpufreq_verify_within_limits(policy,
|
||||
policy->cpuinfo.min_freq,
|
||||
@ -78,7 +85,7 @@ static int integrator_set_target(struct cpufreq_policy *policy,
|
||||
{
|
||||
cpumask_t cpus_allowed;
|
||||
int cpu = policy->cpu;
|
||||
struct icst525_vco vco;
|
||||
struct icst_vco vco;
|
||||
struct cpufreq_freqs freqs;
|
||||
u_int cm_osc;
|
||||
|
||||
@ -104,17 +111,17 @@ static int integrator_set_target(struct cpufreq_policy *policy,
|
||||
}
|
||||
vco.v = cm_osc & 255;
|
||||
vco.r = 22;
|
||||
freqs.old = icst525_khz(&cclk_params, vco);
|
||||
freqs.old = icst_hz(&cclk_params, vco) / 1000;
|
||||
|
||||
/* icst525_khz_to_vco rounds down -- so we need the next
|
||||
/* icst_hz_to_vco rounds down -- so we need the next
|
||||
* larger freq in case of CPUFREQ_RELATION_L.
|
||||
*/
|
||||
if (relation == CPUFREQ_RELATION_L)
|
||||
target_freq += 999;
|
||||
if (target_freq > policy->max)
|
||||
target_freq = policy->max;
|
||||
vco = icst525_khz_to_vco(&cclk_params, target_freq);
|
||||
freqs.new = icst525_khz(&cclk_params, vco);
|
||||
vco = icst_hz_to_vco(&cclk_params, target_freq * 1000);
|
||||
freqs.new = icst_hz(&cclk_params, vco) / 1000;
|
||||
|
||||
freqs.cpu = policy->cpu;
|
||||
|
||||
@ -154,7 +161,7 @@ static unsigned int integrator_get(unsigned int cpu)
|
||||
cpumask_t cpus_allowed;
|
||||
unsigned int current_freq;
|
||||
u_int cm_osc;
|
||||
struct icst525_vco vco;
|
||||
struct icst_vco vco;
|
||||
|
||||
cpus_allowed = current->cpus_allowed;
|
||||
|
||||
@ -172,7 +179,7 @@ static unsigned int integrator_get(unsigned int cpu)
|
||||
vco.v = cm_osc & 255;
|
||||
vco.r = 22;
|
||||
|
||||
current_freq = icst525_khz(&cclk_params, vco); /* current freq */
|
||||
current_freq = icst_hz(&cclk_params, vco) / 1000; /* current freq */
|
||||
|
||||
set_cpus_allowed(current, cpus_allowed);
|
||||
|
||||
|
@ -25,7 +25,7 @@
|
||||
|
||||
#include <asm/clkdev.h>
|
||||
#include <mach/clkdev.h>
|
||||
#include <asm/hardware/icst525.h>
|
||||
#include <asm/hardware/icst.h>
|
||||
#include <mach/lm.h>
|
||||
#include <mach/impd1.h>
|
||||
#include <asm/sizes.h>
|
||||
@ -41,32 +41,25 @@ struct impd1_module {
|
||||
struct clk_lookup *clks[3];
|
||||
};
|
||||
|
||||
static const struct icst525_params impd1_vco_params = {
|
||||
.ref = 24000, /* 24 MHz */
|
||||
.vco_max = 200000, /* 200 MHz */
|
||||
static const struct icst_params impd1_vco_params = {
|
||||
.ref = 24000000, /* 24 MHz */
|
||||
.vco_max = ICST525_VCO_MAX_3V,
|
||||
.vco_min = ICST525_VCO_MIN,
|
||||
.vd_min = 12,
|
||||
.vd_max = 519,
|
||||
.rd_min = 3,
|
||||
.rd_max = 120,
|
||||
.s2div = icst525_s2div,
|
||||
.idx2s = icst525_idx2s,
|
||||
};
|
||||
|
||||
static void impd1_setvco(struct clk *clk, struct icst525_vco vco)
|
||||
static void impd1_setvco(struct clk *clk, struct icst_vco vco)
|
||||
{
|
||||
struct impd1_module *impd1 = clk->data;
|
||||
int vconr = clk - impd1->vcos;
|
||||
u32 val;
|
||||
|
||||
val = vco.v | (vco.r << 9) | (vco.s << 16);
|
||||
u32 val = vco.v | (vco.r << 9) | (vco.s << 16);
|
||||
|
||||
writel(0xa05f, impd1->base + IMPD1_LOCK);
|
||||
switch (vconr) {
|
||||
case 0:
|
||||
writel(val, impd1->base + IMPD1_OSC1);
|
||||
break;
|
||||
case 1:
|
||||
writel(val, impd1->base + IMPD1_OSC2);
|
||||
break;
|
||||
}
|
||||
writel(val, clk->vcoreg);
|
||||
writel(0, impd1->base + IMPD1_LOCK);
|
||||
|
||||
#ifdef DEBUG
|
||||
@ -74,11 +67,17 @@ static void impd1_setvco(struct clk *clk, struct icst525_vco vco)
|
||||
vco.r = (val >> 9) & 0x7f;
|
||||
vco.s = (val >> 16) & 7;
|
||||
|
||||
pr_debug("IM-PD1: VCO%d clock is %ld kHz\n",
|
||||
vconr, icst525_khz(&impd1_vco_params, vco));
|
||||
pr_debug("IM-PD1: VCO%d clock is %ld Hz\n",
|
||||
vconr, icst525_hz(&impd1_vco_params, vco));
|
||||
#endif
|
||||
}
|
||||
|
||||
static const struct clk_ops impd1_clk_ops = {
|
||||
.round = icst_clk_round,
|
||||
.set = icst_clk_set,
|
||||
.setvco = impd1_setvco,
|
||||
};
|
||||
|
||||
void impd1_tweak_control(struct device *dev, u32 mask, u32 val)
|
||||
{
|
||||
struct impd1_module *impd1 = dev_get_drvdata(dev);
|
||||
@ -374,11 +373,13 @@ static int impd1_probe(struct lm_device *dev)
|
||||
(unsigned long)dev->resource.start);
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(impd1->vcos); i++) {
|
||||
impd1->vcos[i].ops = &impd1_clk_ops,
|
||||
impd1->vcos[i].owner = THIS_MODULE,
|
||||
impd1->vcos[i].params = &impd1_vco_params,
|
||||
impd1->vcos[i].data = impd1,
|
||||
impd1->vcos[i].setvco = impd1_setvco;
|
||||
impd1->vcos[i].data = impd1;
|
||||
}
|
||||
impd1->vcos[0].vcoreg = impd1->base + IMPD1_OSC1;
|
||||
impd1->vcos[1].vcoreg = impd1->base + IMPD1_OSC2;
|
||||
|
||||
impd1->clks[0] = clkdev_alloc(&impd1->vcos[0], NULL, "lm%x:01000",
|
||||
dev->id);
|
||||
|
@ -2,14 +2,15 @@
|
||||
#define __ASM_MACH_CLKDEV_H
|
||||
|
||||
#include <linux/module.h>
|
||||
#include <asm/hardware/icst525.h>
|
||||
#include <plat/clock.h>
|
||||
|
||||
struct clk {
|
||||
unsigned long rate;
|
||||
const struct clk_ops *ops;
|
||||
struct module *owner;
|
||||
const struct icst525_params *params;
|
||||
const struct icst_params *params;
|
||||
void __iomem *vcoreg;
|
||||
void *data;
|
||||
void (*setvco)(struct clk *, struct icst525_vco vco);
|
||||
};
|
||||
|
||||
static inline int __clk_get(struct clk *clk)
|
||||
|
@ -8,6 +8,7 @@
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/platform.h>
|
||||
#include <mach/irqs.h>
|
||||
|
||||
.macro disable_fiq
|
||||
|
@ -23,7 +23,6 @@
|
||||
#define __ASM_ARCH_HARDWARE_H
|
||||
|
||||
#include <asm/sizes.h>
|
||||
#include <mach/platform.h>
|
||||
|
||||
/*
|
||||
* Where in virtual memory the IO devices (timers, system controllers
|
||||
@ -36,17 +35,19 @@
|
||||
#define PCIO_BASE PCI_IO_VADDR
|
||||
#define PCIMEM_BASE PCI_MEMORY_VADDR
|
||||
|
||||
#ifdef CONFIG_MMU
|
||||
/* macro to get at IO space when running virtually */
|
||||
#define IO_ADDRESS(x) (((x) >> 4) + IO_BASE)
|
||||
#else
|
||||
#define IO_ADDRESS(x) (x)
|
||||
#endif
|
||||
|
||||
#define pcibios_assign_all_busses() 1
|
||||
|
||||
#define PCIBIOS_MIN_IO 0x6000
|
||||
#define PCIBIOS_MIN_MEM 0x00100000
|
||||
|
||||
/* macro to get at IO space when running virtually */
|
||||
#ifdef CONFIG_MMU
|
||||
#define IO_ADDRESS(x) (((x) & 0x000fffff) | (((x) >> 4) & 0x0ff00000) | IO_BASE)
|
||||
#else
|
||||
#define IO_ADDRESS(x) (x)
|
||||
#endif
|
||||
|
||||
#define __io_address(n) ((void __iomem *)IO_ADDRESS(n))
|
||||
|
||||
#endif
|
||||
|
||||
|
@ -23,9 +23,6 @@
|
||||
*
|
||||
* Integrator address map
|
||||
*
|
||||
* NOTE: This is a multi-hosted header file for use with uHAL and
|
||||
* supported debuggers.
|
||||
*
|
||||
* ***********************************************************************/
|
||||
|
||||
#ifndef __address_h
|
||||
@ -290,12 +287,14 @@
|
||||
#define INTEGRATOR_DBG_LEDS (INTEGRATOR_DBG_BASE + INTEGRATOR_DBG_LEDS_OFFSET)
|
||||
#define INTEGRATOR_DBG_SWITCH (INTEGRATOR_DBG_BASE + INTEGRATOR_DBG_SWITCH_OFFSET)
|
||||
|
||||
#define INTEGRATOR_AP_GPIO_BASE 0x1B000000 /* GPIO */
|
||||
|
||||
#if defined(CONFIG_ARCH_INTEGRATOR_AP)
|
||||
#define INTEGRATOR_GPIO_BASE 0x1B000000 /* GPIO */
|
||||
#elif defined(CONFIG_ARCH_INTEGRATOR_CP)
|
||||
#define INTEGRATOR_GPIO_BASE 0xC9000000 /* GPIO */
|
||||
#endif
|
||||
#define INTEGRATOR_CP_MMC_BASE 0x1C000000 /* MMC */
|
||||
#define INTEGRATOR_CP_AACI_BASE 0x1D000000 /* AACI */
|
||||
#define INTEGRATOR_CP_ETH_BASE 0xC8000000 /* Ethernet */
|
||||
#define INTEGRATOR_CP_GPIO_BASE 0xC9000000 /* GPIO */
|
||||
#define INTEGRATOR_CP_SIC_BASE 0xCA000000 /* SIC */
|
||||
#define INTEGRATOR_CP_CTL_BASE 0xCB000000 /* CP system control */
|
||||
|
||||
/* ------------------------------------------------------------------------
|
||||
* KMI keyboard/mouse definitions
|
||||
@ -328,20 +327,6 @@
|
||||
*/
|
||||
#define PHYS_PCI_V3_BASE 0x62000000
|
||||
|
||||
#define PCI_DRAMSIZE INTEGRATOR_SSRAM_SIZE
|
||||
|
||||
/* 'export' these to UHAL */
|
||||
#define UHAL_PCI_IO PCI_IO_BASE
|
||||
#define UHAL_PCI_MEM PCI_MEM_BASE
|
||||
#define UHAL_PCI_ALLOC_IO_BASE 0x00004000
|
||||
#define UHAL_PCI_ALLOC_MEM_BASE PCI_MEM_BASE
|
||||
#define UHAL_PCI_MAX_SLOT 20
|
||||
|
||||
/* ========================================================================
|
||||
* Start of uHAL definitions
|
||||
* ========================================================================
|
||||
*/
|
||||
|
||||
/* ------------------------------------------------------------------------
|
||||
* Integrator Interrupt Controllers
|
||||
* ------------------------------------------------------------------------
|
||||
@ -389,7 +374,7 @@
|
||||
*/
|
||||
|
||||
/* ------------------------------------------------------------------------
|
||||
* LED's - The header LED is not accessible via the uHAL API
|
||||
* LED's
|
||||
* ------------------------------------------------------------------------
|
||||
*
|
||||
*/
|
||||
@ -401,35 +386,19 @@
|
||||
|
||||
#define LED_BANK INTEGRATOR_DBG_LEDS
|
||||
|
||||
/*
|
||||
* Memory definitions - run uHAL out of SSRAM.
|
||||
*
|
||||
*/
|
||||
#define uHAL_MEMORY_SIZE INTEGRATOR_SSRAM_SIZE
|
||||
|
||||
/*
|
||||
* Clean base - dummy
|
||||
*
|
||||
*/
|
||||
#define CLEAN_BASE INTEGRATOR_BOOT_ROM_HI
|
||||
|
||||
/*
|
||||
* Timer definitions
|
||||
*
|
||||
* Only use timer 1 & 2
|
||||
* (both run at 24MHz and will need the clock divider set to 16).
|
||||
*
|
||||
* Timer 0 runs at bus frequency and therefore could vary and currently
|
||||
* uHAL can't handle that.
|
||||
*
|
||||
* Timer 0 runs at bus frequency
|
||||
*/
|
||||
|
||||
#define INTEGRATOR_TIMER0_BASE INTEGRATOR_CT_BASE
|
||||
#define INTEGRATOR_TIMER1_BASE (INTEGRATOR_CT_BASE + 0x100)
|
||||
#define INTEGRATOR_TIMER2_BASE (INTEGRATOR_CT_BASE + 0x200)
|
||||
|
||||
#define MAX_TIMER 2
|
||||
#define MAX_PERIOD 699050
|
||||
#define TICKS_PER_uSEC 24
|
||||
|
||||
/*
|
||||
@ -437,14 +406,9 @@
|
||||
*
|
||||
*/
|
||||
#define mSEC_1 1000
|
||||
#define mSEC_5 (mSEC_1 * 5)
|
||||
#define mSEC_10 (mSEC_1 * 10)
|
||||
#define mSEC_25 (mSEC_1 * 25)
|
||||
#define SEC_1 (mSEC_1 * 1000)
|
||||
|
||||
#define INTEGRATOR_CSR_BASE 0x10000000
|
||||
#define INTEGRATOR_CSR_SIZE 0x10000000
|
||||
|
||||
#endif
|
||||
|
||||
/* END */
|
||||
|
@ -27,9 +27,14 @@
|
||||
#include <linux/sysdev.h>
|
||||
#include <linux/amba/bus.h>
|
||||
#include <linux/amba/kmi.h>
|
||||
#include <linux/clocksource.h>
|
||||
#include <linux/clockchips.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/io.h>
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/platform.h>
|
||||
#include <asm/hardware/arm_timer.h>
|
||||
#include <asm/irq.h>
|
||||
#include <asm/setup.h>
|
||||
#include <asm/param.h> /* HZ */
|
||||
@ -43,8 +48,6 @@
|
||||
#include <asm/mach/map.h>
|
||||
#include <asm/mach/time.h>
|
||||
|
||||
#include "common.h"
|
||||
|
||||
/*
|
||||
* All IO addresses are mapped onto VA 0xFFFx.xxxx, where x.xxxx
|
||||
* is the (PA >> 12).
|
||||
@ -55,7 +58,7 @@
|
||||
#define VA_IC_BASE IO_ADDRESS(INTEGRATOR_IC_BASE)
|
||||
#define VA_SC_BASE IO_ADDRESS(INTEGRATOR_SC_BASE)
|
||||
#define VA_EBI_BASE IO_ADDRESS(INTEGRATOR_EBI_BASE)
|
||||
#define VA_CMIC_BASE IO_ADDRESS(INTEGRATOR_HDR_BASE) + INTEGRATOR_HDR_IC_OFFSET
|
||||
#define VA_CMIC_BASE IO_ADDRESS(INTEGRATOR_HDR_IC)
|
||||
|
||||
/*
|
||||
* Logical Physical
|
||||
@ -117,8 +120,8 @@ static struct map_desc ap_io_desc[] __initdata = {
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE
|
||||
}, {
|
||||
.virtual = IO_ADDRESS(INTEGRATOR_GPIO_BASE),
|
||||
.pfn = __phys_to_pfn(INTEGRATOR_GPIO_BASE),
|
||||
.virtual = IO_ADDRESS(INTEGRATOR_AP_GPIO_BASE),
|
||||
.pfn = __phys_to_pfn(INTEGRATOR_AP_GPIO_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE
|
||||
}, {
|
||||
@ -334,14 +337,163 @@ static void __init ap_init(void)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Where is the timer (VA)?
|
||||
*/
|
||||
#define TIMER0_VA_BASE IO_ADDRESS(INTEGRATOR_TIMER0_BASE)
|
||||
#define TIMER1_VA_BASE IO_ADDRESS(INTEGRATOR_TIMER1_BASE)
|
||||
#define TIMER2_VA_BASE IO_ADDRESS(INTEGRATOR_TIMER2_BASE)
|
||||
|
||||
/*
|
||||
* How long is the timer interval?
|
||||
*/
|
||||
#define TIMER_INTERVAL (TICKS_PER_uSEC * mSEC_10)
|
||||
#if TIMER_INTERVAL >= 0x100000
|
||||
#define TICKS2USECS(x) (256 * (x) / TICKS_PER_uSEC)
|
||||
#elif TIMER_INTERVAL >= 0x10000
|
||||
#define TICKS2USECS(x) (16 * (x) / TICKS_PER_uSEC)
|
||||
#else
|
||||
#define TICKS2USECS(x) ((x) / TICKS_PER_uSEC)
|
||||
#endif
|
||||
|
||||
static unsigned long timer_reload;
|
||||
|
||||
static void __iomem * const clksrc_base = (void __iomem *)TIMER2_VA_BASE;
|
||||
|
||||
static cycle_t timersp_read(struct clocksource *cs)
|
||||
{
|
||||
return ~(readl(clksrc_base + TIMER_VALUE) & 0xffff);
|
||||
}
|
||||
|
||||
static struct clocksource clocksource_timersp = {
|
||||
.name = "timer2",
|
||||
.rating = 200,
|
||||
.read = timersp_read,
|
||||
.mask = CLOCKSOURCE_MASK(16),
|
||||
.shift = 16,
|
||||
.flags = CLOCK_SOURCE_IS_CONTINUOUS,
|
||||
};
|
||||
|
||||
static void integrator_clocksource_init(u32 khz)
|
||||
{
|
||||
struct clocksource *cs = &clocksource_timersp;
|
||||
void __iomem *base = clksrc_base;
|
||||
u32 ctrl = TIMER_CTRL_ENABLE;
|
||||
|
||||
if (khz >= 1500) {
|
||||
khz /= 16;
|
||||
ctrl = TIMER_CTRL_DIV16;
|
||||
}
|
||||
|
||||
writel(ctrl, base + TIMER_CTRL);
|
||||
writel(0xffff, base + TIMER_LOAD);
|
||||
|
||||
cs->mult = clocksource_khz2mult(khz, cs->shift);
|
||||
clocksource_register(cs);
|
||||
}
|
||||
|
||||
static void __iomem * const clkevt_base = (void __iomem *)TIMER1_VA_BASE;
|
||||
|
||||
/*
|
||||
* IRQ handler for the timer
|
||||
*/
|
||||
static irqreturn_t integrator_timer_interrupt(int irq, void *dev_id)
|
||||
{
|
||||
struct clock_event_device *evt = dev_id;
|
||||
|
||||
/* clear the interrupt */
|
||||
writel(1, clkevt_base + TIMER_INTCLR);
|
||||
|
||||
evt->event_handler(evt);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
static void clkevt_set_mode(enum clock_event_mode mode, struct clock_event_device *evt)
|
||||
{
|
||||
u32 ctrl = readl(clkevt_base + TIMER_CTRL) & ~TIMER_CTRL_ENABLE;
|
||||
|
||||
BUG_ON(mode == CLOCK_EVT_MODE_ONESHOT);
|
||||
|
||||
if (mode == CLOCK_EVT_MODE_PERIODIC) {
|
||||
writel(ctrl, clkevt_base + TIMER_CTRL);
|
||||
writel(timer_reload, clkevt_base + TIMER_LOAD);
|
||||
ctrl |= TIMER_CTRL_PERIODIC | TIMER_CTRL_ENABLE;
|
||||
}
|
||||
|
||||
writel(ctrl, clkevt_base + TIMER_CTRL);
|
||||
}
|
||||
|
||||
static int clkevt_set_next_event(unsigned long next, struct clock_event_device *evt)
|
||||
{
|
||||
unsigned long ctrl = readl(clkevt_base + TIMER_CTRL);
|
||||
|
||||
writel(ctrl & ~TIMER_CTRL_ENABLE, clkevt_base + TIMER_CTRL);
|
||||
writel(next, clkevt_base + TIMER_LOAD);
|
||||
writel(ctrl | TIMER_CTRL_ENABLE, clkevt_base + TIMER_CTRL);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct clock_event_device integrator_clockevent = {
|
||||
.name = "timer1",
|
||||
.shift = 34,
|
||||
.features = CLOCK_EVT_FEAT_PERIODIC,
|
||||
.set_mode = clkevt_set_mode,
|
||||
.set_next_event = clkevt_set_next_event,
|
||||
.rating = 300,
|
||||
.cpumask = cpu_all_mask,
|
||||
};
|
||||
|
||||
static struct irqaction integrator_timer_irq = {
|
||||
.name = "timer",
|
||||
.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
|
||||
.handler = integrator_timer_interrupt,
|
||||
.dev_id = &integrator_clockevent,
|
||||
};
|
||||
|
||||
static void integrator_clockevent_init(u32 khz)
|
||||
{
|
||||
struct clock_event_device *evt = &integrator_clockevent;
|
||||
unsigned int ctrl = 0;
|
||||
|
||||
if (khz * 1000 > 0x100000 * HZ) {
|
||||
khz /= 256;
|
||||
ctrl |= TIMER_CTRL_DIV256;
|
||||
} else if (khz * 1000 > 0x10000 * HZ) {
|
||||
khz /= 16;
|
||||
ctrl |= TIMER_CTRL_DIV16;
|
||||
}
|
||||
|
||||
timer_reload = khz * 1000 / HZ;
|
||||
writel(ctrl, clkevt_base + TIMER_CTRL);
|
||||
|
||||
evt->irq = IRQ_TIMERINT1;
|
||||
evt->mult = div_sc(khz, NSEC_PER_MSEC, evt->shift);
|
||||
evt->max_delta_ns = clockevent_delta2ns(0xffff, evt);
|
||||
evt->min_delta_ns = clockevent_delta2ns(0xf, evt);
|
||||
|
||||
setup_irq(IRQ_TIMERINT1, &integrator_timer_irq);
|
||||
clockevents_register_device(evt);
|
||||
}
|
||||
|
||||
/*
|
||||
* Set up timer(s).
|
||||
*/
|
||||
static void __init ap_init_timer(void)
|
||||
{
|
||||
integrator_time_init(1000000 * TICKS_PER_uSEC / HZ, 0);
|
||||
u32 khz = TICKS_PER_uSEC * 1000;
|
||||
|
||||
writel(0, TIMER0_VA_BASE + TIMER_CTRL);
|
||||
writel(0, TIMER1_VA_BASE + TIMER_CTRL);
|
||||
writel(0, TIMER2_VA_BASE + TIMER_CTRL);
|
||||
|
||||
integrator_clocksource_init(khz);
|
||||
integrator_clockevent_init(khz);
|
||||
}
|
||||
|
||||
static struct sys_timer ap_timer = {
|
||||
.init = ap_init_timer,
|
||||
.offset = integrator_gettimeoffset,
|
||||
};
|
||||
|
||||
MACHINE_START(INTEGRATOR, "ARM-Integrator")
|
||||
|
@ -25,10 +25,12 @@
|
||||
#include <asm/clkdev.h>
|
||||
#include <mach/clkdev.h>
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/platform.h>
|
||||
#include <asm/irq.h>
|
||||
#include <asm/setup.h>
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/hardware/icst525.h>
|
||||
#include <asm/hardware/arm_timer.h>
|
||||
#include <asm/hardware/icst.h>
|
||||
|
||||
#include <mach/cm.h>
|
||||
#include <mach/lm.h>
|
||||
@ -39,24 +41,20 @@
|
||||
#include <asm/mach/map.h>
|
||||
#include <asm/mach/time.h>
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#define INTCP_PA_MMC_BASE 0x1c000000
|
||||
#define INTCP_PA_AACI_BASE 0x1d000000
|
||||
#include <plat/timer-sp.h>
|
||||
|
||||
#define INTCP_PA_FLASH_BASE 0x24000000
|
||||
#define INTCP_FLASH_SIZE SZ_32M
|
||||
|
||||
#define INTCP_PA_CLCD_BASE 0xc0000000
|
||||
|
||||
#define INTCP_VA_CIC_BASE IO_ADDRESS(INTEGRATOR_HDR_BASE) + 0x40
|
||||
#define INTCP_VA_CIC_BASE IO_ADDRESS(INTEGRATOR_HDR_BASE + 0x40)
|
||||
#define INTCP_VA_PIC_BASE IO_ADDRESS(INTEGRATOR_IC_BASE)
|
||||
#define INTCP_VA_SIC_BASE IO_ADDRESS(0xca000000)
|
||||
#define INTCP_VA_SIC_BASE IO_ADDRESS(INTEGRATOR_CP_SIC_BASE)
|
||||
|
||||
#define INTCP_PA_ETH_BASE 0xc8000000
|
||||
#define INTCP_ETH_SIZE 0x10
|
||||
|
||||
#define INTCP_VA_CTRL_BASE IO_ADDRESS(0xcb000000)
|
||||
#define INTCP_VA_CTRL_BASE IO_ADDRESS(INTEGRATOR_CP_CTL_BASE)
|
||||
#define INTCP_FLASHPROG 0x04
|
||||
#define CINTEGRATOR_FLASHPROG_FLVPPEN (1 << 0)
|
||||
#define CINTEGRATOR_FLASHPROG_FLWREN (1 << 1)
|
||||
@ -71,7 +69,9 @@
|
||||
* f1600000 16000000 UART 0
|
||||
* f1700000 17000000 UART 1
|
||||
* f1a00000 1a000000 Debug LEDs
|
||||
* f1b00000 1b000000 GPIO
|
||||
* fc900000 c9000000 GPIO
|
||||
* fca00000 ca000000 SIC
|
||||
* fcb00000 cb000000 CP system control
|
||||
*/
|
||||
|
||||
static struct map_desc intcp_io_desc[] __initdata = {
|
||||
@ -116,18 +116,18 @@ static struct map_desc intcp_io_desc[] __initdata = {
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE
|
||||
}, {
|
||||
.virtual = IO_ADDRESS(INTEGRATOR_GPIO_BASE),
|
||||
.pfn = __phys_to_pfn(INTEGRATOR_GPIO_BASE),
|
||||
.virtual = IO_ADDRESS(INTEGRATOR_CP_GPIO_BASE),
|
||||
.pfn = __phys_to_pfn(INTEGRATOR_CP_GPIO_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE
|
||||
}, {
|
||||
.virtual = IO_ADDRESS(0xca000000),
|
||||
.pfn = __phys_to_pfn(0xca000000),
|
||||
.virtual = IO_ADDRESS(INTEGRATOR_CP_SIC_BASE),
|
||||
.pfn = __phys_to_pfn(INTEGRATOR_CP_SIC_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE
|
||||
}, {
|
||||
.virtual = IO_ADDRESS(0xcb000000),
|
||||
.pfn = __phys_to_pfn(0xcb000000),
|
||||
.virtual = IO_ADDRESS(INTEGRATOR_CP_CTL_BASE),
|
||||
.pfn = __phys_to_pfn(INTEGRATOR_CP_CTL_BASE),
|
||||
.length = SZ_4K,
|
||||
.type = MT_DEVICE
|
||||
}
|
||||
@ -266,33 +266,43 @@ static void __init intcp_init_irq(void)
|
||||
/*
|
||||
* Clock handling
|
||||
*/
|
||||
#define CM_LOCK (IO_ADDRESS(INTEGRATOR_HDR_BASE)+INTEGRATOR_HDR_LOCK_OFFSET)
|
||||
#define CM_AUXOSC (IO_ADDRESS(INTEGRATOR_HDR_BASE)+0x1c)
|
||||
#define CM_LOCK (__io_address(INTEGRATOR_HDR_BASE)+INTEGRATOR_HDR_LOCK_OFFSET)
|
||||
#define CM_AUXOSC (__io_address(INTEGRATOR_HDR_BASE)+0x1c)
|
||||
|
||||
static const struct icst525_params cp_auxvco_params = {
|
||||
.ref = 24000,
|
||||
.vco_max = 320000,
|
||||
static const struct icst_params cp_auxvco_params = {
|
||||
.ref = 24000000,
|
||||
.vco_max = ICST525_VCO_MAX_5V,
|
||||
.vco_min = ICST525_VCO_MIN,
|
||||
.vd_min = 8,
|
||||
.vd_max = 263,
|
||||
.rd_min = 3,
|
||||
.rd_max = 65,
|
||||
.s2div = icst525_s2div,
|
||||
.idx2s = icst525_idx2s,
|
||||
};
|
||||
|
||||
static void cp_auxvco_set(struct clk *clk, struct icst525_vco vco)
|
||||
static void cp_auxvco_set(struct clk *clk, struct icst_vco vco)
|
||||
{
|
||||
u32 val;
|
||||
|
||||
val = readl(CM_AUXOSC) & ~0x7ffff;
|
||||
val = readl(clk->vcoreg) & ~0x7ffff;
|
||||
val |= vco.v | (vco.r << 9) | (vco.s << 16);
|
||||
|
||||
writel(0xa05f, CM_LOCK);
|
||||
writel(val, CM_AUXOSC);
|
||||
writel(val, clk->vcoreg);
|
||||
writel(0, CM_LOCK);
|
||||
}
|
||||
|
||||
static const struct clk_ops cp_auxclk_ops = {
|
||||
.round = icst_clk_round,
|
||||
.set = icst_clk_set,
|
||||
.setvco = cp_auxvco_set,
|
||||
};
|
||||
|
||||
static struct clk cp_auxclk = {
|
||||
.ops = &cp_auxclk_ops,
|
||||
.params = &cp_auxvco_params,
|
||||
.setvco = cp_auxvco_set,
|
||||
.vcoreg = CM_AUXOSC,
|
||||
};
|
||||
|
||||
static struct clk_lookup cp_lookups[] = {
|
||||
@ -363,8 +373,8 @@ static struct platform_device intcp_flash_device = {
|
||||
|
||||
static struct resource smc91x_resources[] = {
|
||||
[0] = {
|
||||
.start = INTCP_PA_ETH_BASE,
|
||||
.end = INTCP_PA_ETH_BASE + INTCP_ETH_SIZE - 1,
|
||||
.start = INTEGRATOR_CP_ETH_BASE,
|
||||
.end = INTEGRATOR_CP_ETH_BASE + INTCP_ETH_SIZE - 1,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
[1] = {
|
||||
@ -394,8 +404,8 @@ static struct platform_device *intcp_devs[] __initdata = {
|
||||
*/
|
||||
static unsigned int mmc_status(struct device *dev)
|
||||
{
|
||||
unsigned int status = readl(IO_ADDRESS(0xca000000) + 4);
|
||||
writel(8, IO_ADDRESS(0xcb000000) + 8);
|
||||
unsigned int status = readl(IO_ADDRESS(0xca000000 + 4));
|
||||
writel(8, IO_ADDRESS(INTEGRATOR_CP_CTL_BASE + 8));
|
||||
|
||||
return status & 8;
|
||||
}
|
||||
@ -413,8 +423,8 @@ static struct amba_device mmc_device = {
|
||||
.platform_data = &mmc_data,
|
||||
},
|
||||
.res = {
|
||||
.start = INTCP_PA_MMC_BASE,
|
||||
.end = INTCP_PA_MMC_BASE + SZ_4K - 1,
|
||||
.start = INTEGRATOR_CP_MMC_BASE,
|
||||
.end = INTEGRATOR_CP_MMC_BASE + SZ_4K - 1,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
.irq = { IRQ_CP_MMCIINT0, IRQ_CP_MMCIINT1 },
|
||||
@ -426,8 +436,8 @@ static struct amba_device aaci_device = {
|
||||
.init_name = "mb:1d",
|
||||
},
|
||||
.res = {
|
||||
.start = INTCP_PA_AACI_BASE,
|
||||
.end = INTCP_PA_AACI_BASE + SZ_4K - 1,
|
||||
.start = INTEGRATOR_CP_AACI_BASE,
|
||||
.end = INTEGRATOR_CP_AACI_BASE + SZ_4K - 1,
|
||||
.flags = IORESOURCE_MEM,
|
||||
},
|
||||
.irq = { IRQ_CP_AACIINT, NO_IRQ },
|
||||
@ -567,16 +577,22 @@ static void __init intcp_init(void)
|
||||
}
|
||||
}
|
||||
|
||||
#define TIMER_CTRL_IE (1 << 5) /* Interrupt Enable */
|
||||
#define TIMER0_VA_BASE __io_address(INTEGRATOR_TIMER0_BASE)
|
||||
#define TIMER1_VA_BASE __io_address(INTEGRATOR_TIMER1_BASE)
|
||||
#define TIMER2_VA_BASE __io_address(INTEGRATOR_TIMER2_BASE)
|
||||
|
||||
static void __init intcp_timer_init(void)
|
||||
{
|
||||
integrator_time_init(1000000 / HZ, TIMER_CTRL_IE);
|
||||
writel(0, TIMER0_VA_BASE + TIMER_CTRL);
|
||||
writel(0, TIMER1_VA_BASE + TIMER_CTRL);
|
||||
writel(0, TIMER2_VA_BASE + TIMER_CTRL);
|
||||
|
||||
sp804_clocksource_init(TIMER2_VA_BASE);
|
||||
sp804_clockevents_init(TIMER1_VA_BASE, IRQ_TIMERINT1);
|
||||
}
|
||||
|
||||
static struct sys_timer cp_timer = {
|
||||
.init = intcp_timer_init,
|
||||
.offset = integrator_gettimeoffset,
|
||||
};
|
||||
|
||||
MACHINE_START(CINTEGRATOR, "ARM-IntegratorCP")
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include <linux/io.h>
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/platform.h>
|
||||
#include <asm/leds.h>
|
||||
#include <asm/system.h>
|
||||
#include <asm/mach-types.h>
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include <linux/io.h>
|
||||
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/platform.h>
|
||||
#include <asm/irq.h>
|
||||
#include <asm/signal.h>
|
||||
#include <asm/system.h>
|
||||
@ -389,9 +390,9 @@ static int __init pci_v3_setup_resources(struct resource **resource)
|
||||
* means I can't get additional information on the reason for the pm2fb
|
||||
* problems. I suppose I'll just have to mind-meld with the machine. ;)
|
||||
*/
|
||||
#define SC_PCI (IO_ADDRESS(INTEGRATOR_SC_BASE) + INTEGRATOR_SC_PCIENABLE_OFFSET)
|
||||
#define SC_LBFADDR (IO_ADDRESS(INTEGRATOR_SC_BASE) + 0x20)
|
||||
#define SC_LBFCODE (IO_ADDRESS(INTEGRATOR_SC_BASE) + 0x24)
|
||||
#define SC_PCI IO_ADDRESS(INTEGRATOR_SC_PCIENABLE)
|
||||
#define SC_LBFADDR IO_ADDRESS(INTEGRATOR_SC_BASE + 0x20)
|
||||
#define SC_LBFCODE IO_ADDRESS(INTEGRATOR_SC_BASE + 0x24)
|
||||
|
||||
static int
|
||||
v3_pci_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
|
||||
|
@ -176,7 +176,7 @@ static struct plat_serial8250_port n2100_serial_port[] = {
|
||||
.mapbase = N2100_UART,
|
||||
.membase = (char *)N2100_UART,
|
||||
.irq = 0,
|
||||
.flags = UPF_SKIP_TEST,
|
||||
.flags = UPF_SKIP_TEST | UPF_AUTO_IRQ | UPF_SHARE_IRQ,
|
||||
.iotype = UPIO_MEM,
|
||||
.regshift = 0,
|
||||
.uartclk = 1843200,
|
||||
|
@ -21,7 +21,6 @@
|
||||
#include <linux/tty.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/serial_core.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/bitops.h>
|
||||
#include <linux/time.h>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user