Received: from fg-out-1718.google.com ([72.14.220.157]) by linuxtogo.org with esmtp (Exim 4.69) (envelope-from ) id 1O6X5v-0001QS-5o for openembedded-devel@lists.openembedded.org; Tue, 27 Apr 2010 00:48:03 +0200 Received: by fg-out-1718.google.com with SMTP id 19so2429415fgg.6 for ; Mon, 26 Apr 2010 15:44:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:to:cc:subject:date :message-id:x-mailer; bh=qXhbPBKuUqNWnlGY6QAiDpsdJZanDqpLRFrLPY3TsHU=; b=uMXISy6/0pAgNcYO/j3R03Swq6vP0AIoDEXdo36jlcWmdus3HJWITkgdJtK4wzsPEW N6DC+BUltDimmXvNKoyrZ1xfpHDM3rLnf0y+P+sVYEPsMKuqBBEU2+zMa6LAwWvxqpq5 QqYByuu2qlORlwcdK9deXMYA+IBh7lig9+vhI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:cc:subject:date:message-id:x-mailer; b=gM1kHXrATV71hBt6yfZQnIeITgyCpbQEGU6kITFiP8I5+g345Yt1f1Bj6+ZTorlK8H KwFINalZ0riGbZgMNk5Jd18CH0EEB5WAHtLBcUbeSWMMnwKZMiICD9DIAhxRI8bObQ3d e6eVDxNDpUV7lSQURLoGDzaU3qGx/rVC4KYio= Received: by 10.87.71.21 with SMTP id y21mr3093240fgk.69.1272321865426; Mon, 26 Apr 2010 15:44:25 -0700 (PDT) Received: from localhost.localdomain (z0701.wist.uni-linz.ac.at [193.171.42.194]) by mx.google.com with ESMTPS id e20sm4047987fga.16.2010.04.26.15.42.21 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 26 Apr 2010 15:44:22 -0700 (PDT) From: =?utf-8?q?Matthias=20G=C3=BCnther?= To: openembedded-devel@lists.openembedded.org Date: Tue, 27 Apr 2010 00:41:37 +0200 Message-Id: <1272321699-5405-1-git-send-email-matgnt@gmail.com> X-Mailer: git-send-email 1.6.3.3 X-SA-Exim-Connect-IP: 72.14.220.157 X-SA-Exim-Mail-From: matgnt@gmail.com X-SA-Exim-Scanned: No (on linuxtogo.org); Message bigger than SAmaxbody (256000) Subject: [PATCH v2 1/3] topas910: Add BSP patch against 2.6.32.9 and make it default. X-BeenThere: openembedded-devel@lists.openembedded.org X-Mailman-Version: 2.1.11 Precedence: list Reply-To: openembedded-devel@lists.openembedded.org List-Id: Using the OpenEmbedded metadata to build Distributions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Apr 2010 22:48:03 -0000 --- recipes/linux/linux-2.6.32/topas910/defconfig | 1359 + .../topas910/linux-2.6.32.9_topas910.patch |52973 ++++++++++++++++++++ recipes/linux/linux_2.6.26.bb | 2 +- recipes/linux/linux_2.6.32.bb | 6 +- 4 files changed, 54338 insertions(+), 2 deletions(-) create mode 100644 recipes/linux/linux-2.6.32/topas910/defconfig create mode 100644 recipes/linux/linux-2.6.32/topas910/linux-2.6.32.9_topas910.patch diff --git a/recipes/linux/linux-2.6.32/topas910/defconfig b/recipes/linux/linux-2.6.32/topas910/defconfig new file mode 100644 index 0000000..b9f3d4c --- /dev/null +++ b/recipes/linux/linux-2.6.32/topas910/defconfig @@ -0,0 +1,1359 @@ +# +# Automatically generated make config: don't edit +# Linux kernel version: 2.6.32 +# Thu Dec 3 11:39:59 2009 +# +CONFIG_ARM=y +CONFIG_SYS_SUPPORTS_APM_EMULATION=y +CONFIG_GENERIC_GPIO=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_LOCK_KERNEL=y +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +# CONFIG_BSD_PROCESS_ACCT is not set +# CONFIG_TASKSTATS is not set +# CONFIG_AUDIT 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=14 +# CONFIG_GROUP_SCHED is not set +# CONFIG_CGROUPS is not set +CONFIG_SYSFS_DEPRECATED=y +CONFIG_SYSFS_DEPRECATED_V2=y +# 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_NET_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_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 + +# +# Kernel Performance Events And Counters +# +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_COMPAT_BRK=y +CONFIG_SLAB=y +# CONFIG_SLUB is not set +# 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 + +# +# GCOV-based kernel profiling +# +CONFIG_SLOW_WORK=y +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 is not set +# 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_AS=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_DEFAULT_AS=y +# CONFIG_DEFAULT_DEADLINE is not set +# CONFIG_DEFAULT_CFQ is not set +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="anticipatory" +CONFIG_FREEZER=y + +# +# 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_IMX is not set +CONFIG_ARCH_TMPA910=y +# 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_CPU_TMPA910=y +# CONFIG_CPU_TMPA900 is not set +CONFIG_MACH_TOPAS910=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 + +# +# Bus support +# +# CONFIG_PCI_SYSCALL is not set +# CONFIG_ARCH_SUPPORTS_MSI is not set +# CONFIG_PCCARD is not set + +# +# Kernel Features +# +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 is not set +# CONFIG_PREEMPT_VOLUNTARY is not set +CONFIG_PREEMPT=y +CONFIG_HZ=100 +CONFIG_AEABI=y +# CONFIG_OABI_COMPAT 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="mem=63M mtdparts=physmap-flash.0:384k(bootloader)ro,5120k(kernel),-(root) root=/dev/mtdblock2 rdinit=/init" +# CONFIG_XIP_KERNEL is not set +# CONFIG_KEXEC is not set + +# +# CPU Power Management +# +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_GOV_LADDER=y + +# +# Floating point emulation +# + +# +# At least one emulation must be selected +# +CONFIG_VFP=y + +# +# 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=y +# CONFIG_PM_DEBUG is not set +CONFIG_PM_SLEEP=y +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +CONFIG_APM_EMULATION=y +# CONFIG_PM_RUNTIME is not set +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_MMAP=y +CONFIG_UNIX=y +CONFIG_XFRM=y +# CONFIG_XFRM_USER is not set +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +# CONFIG_XFRM_STATISTICS is not set +# CONFIG_NET_KEY is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +# CONFIG_IP_ADVANCED_ROUTER is not set +CONFIG_IP_FIB_HASH=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +CONFIG_IP_PNP_RARP=y +CONFIG_NET_IPIP=y +# CONFIG_NET_IPGRE is not set +# CONFIG_IP_MROUTE is not set +# CONFIG_ARPD is not set +CONFIG_SYN_COOKIES=y +# CONFIG_INET_AH is not set +# CONFIG_INET_ESP is not set +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_XFRM_TUNNEL is not set +CONFIG_INET_TUNNEL=y +CONFIG_INET_XFRM_MODE_TRANSPORT=y +CONFIG_INET_XFRM_MODE_TUNNEL=y +CONFIG_INET_XFRM_MODE_BEET=y +# CONFIG_INET_LRO is not set +CONFIG_INET_DIAG=y +CONFIG_INET_TCP_DIAG=y +# CONFIG_TCP_CONG_ADVANCED is not set +CONFIG_TCP_CONG_CUBIC=y +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +# CONFIG_IPV6 is not set +# CONFIG_NETWORK_SECMARK is not set +# CONFIG_NETFILTER is not set +# CONFIG_IP_DCCP is not set +# CONFIG_IP_SCTP is not set +# CONFIG_RDS is not set +# CONFIG_TIPC is not set +# CONFIG_ATM is not set +# CONFIG_BRIDGE is not set +# CONFIG_NET_DSA is not set +# CONFIG_VLAN_8021Q is not set +# CONFIG_DECNET is not set +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set +# CONFIG_PHONET is not set +# CONFIG_IEEE802154 is not set +# CONFIG_NET_SCHED is not set +# CONFIG_DCB is not set + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_HAMRADIO is not set +# CONFIG_CAN is not set +# CONFIG_IRDA is not set +# CONFIG_BT is not set +# CONFIG_AF_RXRPC is not set +# CONFIG_WIRELESS is not set +# CONFIG_WIMAX is not set +# CONFIG_RFKILL is not set +# CONFIG_NET_9P is not set + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +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_CONNECTOR 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=y +CONFIG_MTD_GEN_PROBE=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_NOSWAP=y +# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set +# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set +CONFIG_MTD_CFI_GEOMETRY=y +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_OTP is not set +CONFIG_MTD_CFI_INTELEXT=y +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=y +CONFIG_MTD_PHYSMAP_START=0x20000000 +CONFIG_MTD_PHYSMAP_LEN=0x02000000 +CONFIG_MTD_PHYSMAP_BANKWIDTH=2 +# CONFIG_MTD_ARM_INTEGRATOR is not set +# CONFIG_MTD_IMPA7 is not set +# CONFIG_MTD_PLATRAM is not set + +# +# Self-contained MTD device drivers +# +# CONFIG_MTD_DATAFLASH is not set +# CONFIG_MTD_M25P80 is not set +# CONFIG_MTD_SST25L is not set +# 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=y +# CONFIG_MTD_NAND_VERIFY_WRITE is not set +# CONFIG_MTD_NAND_ECC_SMC is not set +# CONFIG_MTD_NAND_MUSEUM_IDS is not set +# CONFIG_MTD_NAND_GPIO is not set +CONFIG_MTD_NAND_IDS=y +# CONFIG_MTD_NAND_DISKONCHIP is not set +# CONFIG_MTD_NAND_NANDSIM is not set +# CONFIG_MTD_NAND_PLATFORM is not set +CONFIG_MTD_NAND_TMPA910=y +# 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 +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_RAM is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set +# CONFIG_MG_DISK is not set +# CONFIG_MISC_DEVICES is not set +CONFIG_HAVE_IDE=y +# CONFIG_IDE is not set + +# +# SCSI device support +# +# 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=y +# CONFIG_BLK_DEV_SR_VENDOR is not set +CONFIG_CHR_DEV_SG=y +# 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_ISCSI_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set +# CONFIG_SCSI_SRP_ATTRS is not set +CONFIG_SCSI_LOWLEVEL=y +# CONFIG_ISCSI_TCP is not set +# 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 is not set +# CONFIG_MD is not set +CONFIG_NETDEVICES=y +# CONFIG_DUMMY is not set +# CONFIG_BONDING is not set +# CONFIG_MACVLAN is not set +# CONFIG_EQUALIZER is not set +# CONFIG_TUN is not set +# CONFIG_VETH is not set +# CONFIG_PHYLIB is not set +CONFIG_NET_ETHERNET=y +CONFIG_MII=y +# CONFIG_AX88796 is not set +# CONFIG_SMC91X is not set +CONFIG_DM9000=y +CONFIG_DM9000_DEBUGLEVEL=0 +# CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL is not set +# CONFIG_ENC28J60 is not set +# CONFIG_ETHOC is not set +# CONFIG_SMC911X is not set +# CONFIG_SMSC911X is not set +# CONFIG_DNET is not set +# CONFIG_IBM_NEW_EMAC_ZMII is not set +# CONFIG_IBM_NEW_EMAC_RGMII is not set +# CONFIG_IBM_NEW_EMAC_TAH is not set +# CONFIG_IBM_NEW_EMAC_EMAC4 is not set +# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set +# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set +# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set +# CONFIG_B44 is not set +# CONFIG_KS8842 is not set +# CONFIG_KS8851 is not set +# CONFIG_KS8851_MLL is not set +# CONFIG_NETDEV_1000 is not set +# CONFIG_NETDEV_10000 is not set +# CONFIG_WLAN is not set + +# +# Enable WiMAX (Networking options) to see the WiMAX drivers +# +# CONFIG_WAN is not set +# CONFIG_PPP is not set +# CONFIG_SLIP is not set +# CONFIG_NETCONSOLE is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set +# CONFIG_ISDN 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 + +# +# 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=y +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ATKBD is not set +# CONFIG_QT2160 is not set +# CONFIG_KEYBOARD_LKKBD is not set +CONFIG_KEYBOARD_GPIO=y +# CONFIG_KEYBOARD_MATRIX is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_INPUT_MOUSE=y +# CONFIG_MOUSE_PS2 is not set +# CONFIG_MOUSE_SERIAL is not set +# CONFIG_MOUSE_APPLETOUCH is not set +# CONFIG_MOUSE_BCM5974 is not set +# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_MOUSE_GPIO is not set +# CONFIG_MOUSE_SYNAPTICS_I2C is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TABLET is not set +CONFIG_INPUT_TOUCHSCREEN=y +# CONFIG_TOUCHSCREEN_ADS7846 is not set +# CONFIG_TOUCHSCREEN_AD7877 is not set +# CONFIG_TOUCHSCREEN_AD7879_I2C is not set +# CONFIG_TOUCHSCREEN_AD7879_SPI is not set +# CONFIG_TOUCHSCREEN_AD7879 is not set +# CONFIG_TOUCHSCREEN_EETI is not set +# CONFIG_TOUCHSCREEN_FUJITSU is not set +# CONFIG_TOUCHSCREEN_GUNZE is not set +# CONFIG_TOUCHSCREEN_ELO is not set +# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set +# CONFIG_TOUCHSCREEN_MCS5000 is not set +# CONFIG_TOUCHSCREEN_MTOUCH is not set +# CONFIG_TOUCHSCREEN_INEXIO is not set +# CONFIG_TOUCHSCREEN_MK712 is not set +# CONFIG_TOUCHSCREEN_PENMOUNT is not set +CONFIG_TOUCHSCREEN_TMPA910=y +# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set +# CONFIG_TOUCHSCREEN_TOUCHWIN is not set +# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set +# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set +# CONFIG_TOUCHSCREEN_TSC2007 is not set +# CONFIG_INPUT_MISC is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +CONFIG_SERIO_SERPORT=y +# 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=y +CONFIG_DEVKMEM=y +# CONFIG_SERIAL_NONSTANDARD is not set + +# +# Serial drivers +# +# CONFIG_SERIAL_8250 is not set + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_MAX3100 is not set +CONFIG_SERIAL_TMPA910=y +CONFIG_SERIAL_TMPA910_CONSOLE=y +CONFIG_SERIAL_TMPA910_CONSOLE_PREFERED=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=y +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +# CONFIG_R3964 is not set +# CONFIG_RAW_DRIVER is not set +# CONFIG_TCG_TPM is not set +CONFIG_I2C=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_HELPER_AUTO=y + +# +# I2C Hardware Bus support +# +CONFIG_I2C_TMPA910=y + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_GPIO is not set +# CONFIG_I2C_OCORES is not set +# CONFIG_I2C_SIMTEC is not set + +# +# External I2C/SMBus adapter drivers +# +# CONFIG_I2C_PARPORT_LIGHT is not set +# CONFIG_I2C_TAOS_EVM is not set + +# +# Other I2C/SMBus bus drivers +# +# CONFIG_I2C_PCA_PLATFORM is not set +# CONFIG_I2C_STUB is not set + +# +# Miscellaneous I2C Chip support +# +# CONFIG_DS1682 is not set +# 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=y +CONFIG_SPI_MASTER=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_BITBANG is not set +# CONFIG_SPI_GPIO is not set +CONFIG_SPI_TMPA910=y + +# +# SPI Protocol Masters +# +CONFIG_SPI_SPIDEV=y +# CONFIG_SPI_TLE62X0 is not set + +# +# PPS support +# +# CONFIG_PPS is not set +CONFIG_ARCH_REQUIRE_GPIOLIB=y +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y + +# +# Memory mapped GPIO expanders: +# + +# +# I2C GPIO expanders: +# +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCF857X is not set + +# +# PCI GPIO expanders: +# + +# +# SPI GPIO expanders: +# +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MCP23S08 is not set +# CONFIG_GPIO_MC33880 is not set + +# +# 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_TPS65010 is not set +# CONFIG_TWL4030_CORE is not set +# CONFIG_MFD_TMIO is not set +# CONFIG_MFD_TC6393XB is not set +# CONFIG_PMIC_DA903X is not set +# CONFIG_MFD_WM8400 is not set +# CONFIG_MFD_WM831X is not set +# CONFIG_MFD_WM8350_I2C is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_MFD_MC13783 is not set +# CONFIG_AB3100_CORE is not set +# CONFIG_EZX_PCAP 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=y +# CONFIG_FIRMWARE_EDID is not set +# CONFIG_FB_DDC is not set +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +# CONFIG_FB_SYS_FILLRECT is not set +# CONFIG_FB_SYS_COPYAREA is not set +# CONFIG_FB_SYS_IMAGEBLIT is not set +# CONFIG_FB_FOREIGN_ENDIAN is not set +# CONFIG_FB_SYS_FOPS is not set +# CONFIG_FB_SVGALIB is not set +# CONFIG_FB_MACMODES is not set +# CONFIG_FB_BACKLIGHT is not set +# CONFIG_FB_MODE_HELPERS is not set +# CONFIG_FB_TILEBLITTING is not set + +# +# Frame buffer hardware drivers +# +CONFIG_FB_TMPA910=y +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_BROADSHEET is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_LCD_CLASS_DEVICE=y +# CONFIG_LCD_LMS283GF05 is not set +# CONFIG_LCD_LTV350QV is not set +# CONFIG_LCD_ILI9320 is not set +# CONFIG_LCD_TDO24M is not set +# CONFIG_LCD_VGG2432A4 is not set +# CONFIG_LCD_PLATFORM is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_GENERIC=y + +# +# Display device support +# +CONFIG_DISPLAY_SUPPORT=y + +# +# Display hardware drivers +# + +# +# Console display driver support +# +# CONFIG_VGA_CONSOLE is not set +CONFIG_DUMMY_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +CONFIG_FONTS=y +# CONFIG_FONT_8x8 is not set +# CONFIG_FONT_8x16 is not set +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +CONFIG_FONT_MINI_4x6=y +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +# CONFIG_FONT_10x18 is not set +CONFIG_LOGO=y +# CONFIG_LOGO_LINUX_MONO is not set +# CONFIG_LOGO_LINUX_VGA16 is not set +CONFIG_LOGO_LINUX_CLUT224=y +CONFIG_SOUND=y +CONFIG_SOUND_OSS_CORE=y +CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SND=y +CONFIG_SND_TIMER=y +CONFIG_SND_PCM=y +# CONFIG_SND_SEQUENCER is not set +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=y +CONFIG_SND_PCM_OSS=y +CONFIG_SND_PCM_OSS_PLUGINS=y +# CONFIG_SND_DYNAMIC_MINORS is not set +CONFIG_SND_SUPPORT_OLD_API=y +CONFIG_SND_VERBOSE_PROCFS=y +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set +# CONFIG_SND_RAWMIDI_SEQ is not set +# CONFIG_SND_OPL3_LIB_SEQ is not set +# CONFIG_SND_OPL4_LIB_SEQ is not set +# CONFIG_SND_SBAWE_SEQ is not set +# CONFIG_SND_EMU10K1_SEQ is not set +# CONFIG_SND_DRIVERS is not set +CONFIG_SND_ARM=y +# CONFIG_SND_TMPA910_WM8976 is not set +CONFIG_SND_TMPA910_PCM1773=y +CONFIG_SND_SPI=y +# CONFIG_SND_SOC is not set +# CONFIG_SOUND_PRIME is not set +CONFIG_HID_SUPPORT=y +CONFIG_HID=y +# CONFIG_HIDRAW is not set +# CONFIG_HID_PID is not set + +# +# Special HID drivers +# +CONFIG_USB_SUPPORT=y +CONFIG_USB_ARCH_HAS_HCD=y +# CONFIG_USB_ARCH_HAS_OHCI is not set +# CONFIG_USB_ARCH_HAS_EHCI is not set +# CONFIG_USB is not set +# CONFIG_USB_MUSB_HDRC is not set +# CONFIG_USB_GADGET_MUSB_HDRC is not set + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# +CONFIG_USB_GADGET=y +CONFIG_USB_GADGET_DEBUG_FILES=y +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GADGET_SELECTED=y +# CONFIG_USB_GADGET_AT91 is not set +# CONFIG_USB_GADGET_ATMEL_USBA is not set +# CONFIG_USB_GADGET_FSL_USB2 is not set +# CONFIG_USB_GADGET_LH7A40X is not set +CONFIG_USB_GADGET_TMPA910=y +CONFIG_USB_TMPA910=y +# CONFIG_USB_GADGET_OMAP is not set +# CONFIG_USB_GADGET_PXA25X is not set +# CONFIG_USB_GADGET_R8A66597 is not set +# CONFIG_USB_GADGET_PXA27X is not set +# CONFIG_USB_GADGET_S3C_HSOTG is not set +# CONFIG_USB_GADGET_IMX is not set +# CONFIG_USB_GADGET_S3C2410 is not set +# CONFIG_USB_GADGET_M66592 is not set +# CONFIG_USB_GADGET_AMD5536UDC is not set +# CONFIG_USB_GADGET_FSL_QE is not set +# CONFIG_USB_GADGET_CI13XXX is not set +# CONFIG_USB_GADGET_NET2280 is not set +# CONFIG_USB_GADGET_GOKU is not set +# CONFIG_USB_GADGET_LANGWELL is not set +# CONFIG_USB_GADGET_DUMMY_HCD is not set +# CONFIG_USB_GADGET_DUALSPEED is not set +# CONFIG_USB_ZERO is not set +# CONFIG_USB_AUDIO is not set +CONFIG_USB_ETH=m +CONFIG_USB_ETH_RNDIS=y +# CONFIG_USB_ETH_EEM is not set +CONFIG_USB_GADGETFS=m +CONFIG_USB_FILE_STORAGE=m +# CONFIG_USB_FILE_STORAGE_TEST is not set +CONFIG_USB_G_SERIAL=m +# CONFIG_USB_MIDI_GADGET is not set +CONFIG_USB_G_PRINTER=m +CONFIG_USB_CDC_COMPOSITE=m + +# +# OTG and related infrastructure +# +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_NOP_USB_XCEIV 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 is not set +# CONFIG_EXT2_FS_XIP is not set +CONFIG_EXT3_FS=y +# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set +# CONFIG_EXT3_FS_XATTR is not set +# CONFIG_EXT4_FS is not set +CONFIG_JBD=y +CONFIG_FS_MBCACHE=y +# CONFIG_REISERFS_FS is not set +# CONFIG_JFS_FS is not set +CONFIG_FS_POSIX_ACL=y +# CONFIG_XFS_FS is not set +# CONFIG_GFS2_FS is not set +# CONFIG_OCFS2_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 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=y +# CONFIG_MSDOS_FS is not set +CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# 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=y +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_FS_WBUF_VERIFY is not set +CONFIG_JFFS2_SUMMARY=y +# CONFIG_JFFS2_FS_XATTR is not set +# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFFS2_LZO is not set +CONFIG_JFFS2_RTIME=y +# CONFIG_JFFS2_RUBIN 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 +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V3=y +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=y +# CONFIG_NFS_V4_1 is not set +CONFIG_ROOT_NFS=y +# CONFIG_NFSD is not set +CONFIG_LOCKD=y +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=y +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=y +CONFIG_SUNRPC_GSS=y +CONFIG_RPCSEC_GSS_KRB5=y +# CONFIG_RPCSEC_GSS_SPKM3 is not set +# CONFIG_SMB_FS is not set +CONFIG_CIFS=m +# CONFIG_CIFS_STATS is not set +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_EXPERIMENTAL is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_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="iso8859-1" +CONFIG_NLS_CODEPAGE_437=y +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +CONFIG_NLS_CODEPAGE_850=y +# 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 is not set +CONFIG_NLS_ISO8859_1=y +# 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=y +# CONFIG_DLM is not set + +# +# Kernel hacking +# +# CONFIG_PRINTK_TIME is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +# 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 is not set +# 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_LATENCYTOP is not set +# CONFIG_SYSCTL_SYSCALL_CHECK is not set +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_TRACING_SUPPORT=y +# CONFIG_FTRACE 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 + +# +# 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=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_PCOMP=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +# CONFIG_CRYPTO_GF128MUL is not set +# CONFIG_CRYPTO_NULL is not set +CONFIG_CRYPTO_WORKQUEUE=y +# CONFIG_CRYPTO_CRYPTD is not set +# CONFIG_CRYPTO_AUTHENC is not set +# CONFIG_CRYPTO_TEST is not set + +# +# Authenticated Encryption with Associated Data +# +# CONFIG_CRYPTO_CCM is not set +# CONFIG_CRYPTO_GCM is not set +# CONFIG_CRYPTO_SEQIV is not set + +# +# Block modes +# +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_CTR is not set +# CONFIG_CRYPTO_CTS is not set +# CONFIG_CRYPTO_ECB is not set +# CONFIG_CRYPTO_LRW is not set +# CONFIG_CRYPTO_PCBC is not set +# CONFIG_CRYPTO_XTS is not set + +# +# Hash modes +# +# CONFIG_CRYPTO_HMAC is not set +# CONFIG_CRYPTO_XCBC is not set +# CONFIG_CRYPTO_VMAC is not set + +# +# Digest +# +# CONFIG_CRYPTO_CRC32C is not set +# CONFIG_CRYPTO_GHASH is not set +# CONFIG_CRYPTO_MD4 is not set +CONFIG_CRYPTO_MD5=y +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_RMD128 is not set +# CONFIG_CRYPTO_RMD160 is not set +# CONFIG_CRYPTO_RMD256 is not set +# CONFIG_CRYPTO_RMD320 is not set +# CONFIG_CRYPTO_SHA1 is not set +# CONFIG_CRYPTO_SHA256 is not set +# CONFIG_CRYPTO_SHA512 is not set +# CONFIG_CRYPTO_TGR192 is not set +# CONFIG_CRYPTO_WP512 is not set + +# +# Ciphers +# +# CONFIG_CRYPTO_AES is not set +# CONFIG_CRYPTO_ANUBIS is not set +# CONFIG_CRYPTO_ARC4 is not set +# CONFIG_CRYPTO_BLOWFISH is not set +# CONFIG_CRYPTO_CAMELLIA is not set +# CONFIG_CRYPTO_CAST5 is not set +# CONFIG_CRYPTO_CAST6 is not set +CONFIG_CRYPTO_DES=y +# CONFIG_CRYPTO_FCRYPT is not set +# CONFIG_CRYPTO_KHAZAD is not set +# CONFIG_CRYPTO_SALSA20 is not set +# CONFIG_CRYPTO_SEED is not set +# CONFIG_CRYPTO_SERPENT is not set +# CONFIG_CRYPTO_TEA is not set +# CONFIG_CRYPTO_TWOFISH is not set + +# +# Compression +# +# CONFIG_CRYPTO_DEFLATE is not set +# CONFIG_CRYPTO_ZLIB is not set +# CONFIG_CRYPTO_LZO is not set + +# +# Random Number Generation +# +# CONFIG_CRYPTO_ANSI_CPRNG is not set +CONFIG_CRYPTO_HW=y +# CONFIG_BINARY_PRINTF is not set + +# +# Library routines +# +CONFIG_BITREVERSE=y +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=y +CONFIG_CRC32=y +CONFIG_CRC7=y +# CONFIG_LIBCRC32C is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=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 +CONFIG_NLATTR=y diff --git a/recipes/linux/linux-2.6.32/topas910/linux-2.6.32.9_topas910.patch b/recipes/linux/linux-2.6.32/topas910/linux-2.6.32.9_topas910.patch new file mode 100644 index 0000000..feccfe9 --- /dev/null +++ b/recipes/linux/linux-2.6.32/topas910/linux-2.6.32.9_topas910.patch @@ -0,0 +1,52973 @@ +diff --git a/Documentation/Changes b/Documentation/Changes +index f08b313..6d0f1ef 100644 +--- a/Documentation/Changes ++++ b/Documentation/Changes +@@ -49,8 +49,6 @@ o oprofile 0.9 # oprofiled --version + o udev 081 # udevinfo -V + o grub 0.93 # grub --version + o mcelog 0.6 +-o iptables 1.4.1 # iptables -V +- + + Kernel compilation + ================== +diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile +index 50075df..ab8300f 100644 +--- a/Documentation/DocBook/Makefile ++++ b/Documentation/DocBook/Makefile +@@ -32,10 +32,10 @@ PS_METHOD = $(prefer-db2x) + + ### + # The targets that may be used. +-PHONY += xmldocs sgmldocs psdocs pdfdocs htmldocs mandocs installmandocs cleandocs xmldoclinks ++PHONY += xmldocs sgmldocs psdocs pdfdocs htmldocs mandocs installmandocs cleandocs media + + BOOKS := $(addprefix $(obj)/,$(DOCBOOKS)) +-xmldocs: $(BOOKS) xmldoclinks ++xmldocs: $(BOOKS) + sgmldocs: xmldocs + + PS := $(patsubst %.xml, %.ps, $(BOOKS)) +@@ -45,24 +45,15 @@ PDF := $(patsubst %.xml, %.pdf, $(BOOKS)) + pdfdocs: $(PDF) + + HTML := $(sort $(patsubst %.xml, %.html, $(BOOKS))) +-htmldocs: $(HTML) ++htmldocs: media $(HTML) + $(call build_main_index) +- $(call build_images) + + MAN := $(patsubst %.xml, %.9, $(BOOKS)) + mandocs: $(MAN) + +-build_images = mkdir -p $(objtree)/Documentation/DocBook/media/ && \ +- cp $(srctree)/Documentation/DocBook/dvb/*.png $(srctree)/Documentation/DocBook/v4l/*.gif $(objtree)/Documentation/DocBook/media/ +- +-xmldoclinks: +-ifneq ($(objtree),$(srctree)) +- for dep in dvb media-entities.tmpl media-indices.tmpl v4l; do \ +- rm -f $(objtree)/Documentation/DocBook/$$dep \ +- && ln -s $(srctree)/Documentation/DocBook/$$dep $(objtree)/Documentation/DocBook/ \ +- || exit; \ +- done +-endif ++media: ++ mkdir -p $(srctree)/Documentation/DocBook/media/ ++ cp $(srctree)/Documentation/DocBook/dvb/*.png $(srctree)/Documentation/DocBook/v4l/*.gif $(srctree)/Documentation/DocBook/media/ + + installmandocs: mandocs + mkdir -p /usr/local/man/man9/ +diff --git a/Documentation/dontdiff b/Documentation/dontdiff +index e1efc40..0dda0c8 100644 +--- a/Documentation/dontdiff ++++ b/Documentation/dontdiff +@@ -121,7 +121,6 @@ logo_*.c + logo_*_clut224.c + logo_*_mono.c + lxdialog +-mach-types + mach-types.h + machtypes.h + map +diff --git a/Documentation/filesystems/ext4.txt b/Documentation/filesystems/ext4.txt +index e1def17..6d94e06 100644 +--- a/Documentation/filesystems/ext4.txt ++++ b/Documentation/filesystems/ext4.txt +@@ -153,8 +153,8 @@ journal_dev=devnum When the external journal device's major/minor numbers + identified through its new major/minor numbers encoded + in devnum. + +-norecovery Don't load the journal on mounting. Note that +-noload if the filesystem was not unmounted cleanly, ++noload Don't load the journal on mounting. Note that ++ if the filesystem was not unmounted cleanly, + skipping the journal replay will lead to the + filesystem containing inconsistencies that can + lead to any number of problems. +@@ -196,7 +196,7 @@ nobarrier This also requires an IO stack which can support + also be used to enable or disable barriers, for + consistency with other ext4 mount options. + +-inode_readahead_blks=n This tuning parameter controls the maximum ++inode_readahead=n This tuning parameter controls the maximum + number of inode table blocks that ext4's inode + table readahead algorithm will pre-read into + the buffer cache. The default value is 32 blocks. +@@ -353,12 +353,6 @@ noauto_da_alloc replacing existing files via patterns such as + system crashes before the delayed allocation + blocks are forced to disk. + +-discard Controls whether ext4 should issue discard/TRIM +-nodiscard(*) commands to the underlying block device when +- blocks are freed. This is useful for SSD devices +- and sparse/thinly-provisioned LUNs, but it is off +- by default until sufficient testing has been done. +- + Data Mode + ========= + There are 3 different data modes: +diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt +index 5bc4eaa..9107b38 100644 +--- a/Documentation/kernel-parameters.txt ++++ b/Documentation/kernel-parameters.txt +@@ -2645,8 +2645,6 @@ and is between 256 and 4096 characters. It is defined in the file + to a common usb-storage quirk flag as follows: + a = SANE_SENSE (collect more than 18 bytes + of sense data); +- b = BAD_SENSE (don't collect more than 18 +- bytes of sense data); + c = FIX_CAPACITY (decrease the reported + device capacity by one sector); + h = CAPACITY_HEURISTICS (decrease the +diff --git a/Documentation/kvm/api.txt b/Documentation/kvm/api.txt +index db3a706..5a4bc8c 100644 +--- a/Documentation/kvm/api.txt ++++ b/Documentation/kvm/api.txt +@@ -593,42 +593,6 @@ struct kvm_irqchip { + } chip; + }; + +-4.27 KVM_GET_CLOCK +- +-Capability: KVM_CAP_ADJUST_CLOCK +-Architectures: x86 +-Type: vm ioctl +-Parameters: struct kvm_clock_data (out) +-Returns: 0 on success, -1 on error +- +-Gets the current timestamp of kvmclock as seen by the current guest. In +-conjunction with KVM_SET_CLOCK, it is used to ensure monotonicity on scenarios +-such as migration. +- +-struct kvm_clock_data { +- __u64 clock; /* kvmclock current value */ +- __u32 flags; +- __u32 pad[9]; +-}; +- +-4.28 KVM_SET_CLOCK +- +-Capability: KVM_CAP_ADJUST_CLOCK +-Architectures: x86 +-Type: vm ioctl +-Parameters: struct kvm_clock_data (in) +-Returns: 0 on success, -1 on error +- +-Sets the current timestamp of kvmclock to the valued specific in its parameter. +-In conjunction with KVM_GET_CLOCK, it is used to ensure monotonicity on scenarios +-such as migration. +- +-struct kvm_clock_data { +- __u64 clock; /* kvmclock current value */ +- __u32 flags; +- __u32 pad[9]; +-}; +- + 5. The kvm_run structure + + Application code obtains a pointer to the kvm_run structure by +diff --git a/Documentation/spi/spidev_test.c b/Documentation/spi/spidev_test.c +index 10abd37..ddd00f6 100644 +--- a/Documentation/spi/spidev_test.c ++++ b/Documentation/spi/spidev_test.c +@@ -161,9 +161,11 @@ int main(int argc, char *argv[]) + + parse_opts(argc, argv); + ++ printf("open <%s>\n", device); ++ + fd = open(device, O_RDWR); + if (fd < 0) +- pabort("can't open device"); ++ pabort("can't open device <%s>"); + + /* + * spi mode +diff --git a/Documentation/video4linux/CARDLIST.saa7134 b/Documentation/video4linux/CARDLIST.saa7134 +index 94e255a..2620d60 100644 +--- a/Documentation/video4linux/CARDLIST.saa7134 ++++ b/Documentation/video4linux/CARDLIST.saa7134 +@@ -172,4 +172,3 @@ + 171 -> Beholder BeholdTV X7 [5ace:7595] + 172 -> RoverMedia TV Link Pro FM [19d1:0138] + 173 -> Zolid Hybrid TV Tuner PCI [1131:2004] +-174 -> Asus Europa Hybrid OEM [1043:4847] +diff --git a/Documentation/video4linux/gspca.txt b/Documentation/video4linux/gspca.txt +index 90e85a8..3f61825 100644 +--- a/Documentation/video4linux/gspca.txt ++++ b/Documentation/video4linux/gspca.txt +@@ -37,7 +37,6 @@ ov519 041e:405f Creative Live! VISTA VF0330 + ov519 041e:4060 Creative Live! VISTA VF0350 + ov519 041e:4061 Creative Live! VISTA VF0400 + ov519 041e:4064 Creative Live! VISTA VF0420 +-ov519 041e:4067 Creative Live! Cam Video IM (VF0350) + ov519 041e:4068 Creative Live! VISTA VF0470 + spca561 0458:7004 Genius VideoCAM Express V2 + sunplus 0458:7006 Genius Dsc 1.3 Smart +diff --git a/MAINTAINERS b/MAINTAINERS +index c57d396..4f96ac8 100644 +--- a/MAINTAINERS ++++ b/MAINTAINERS +@@ -5594,11 +5594,9 @@ S: Maintained + F: drivers/net/wireless/rndis_wlan.c + + USB XHCI DRIVER +-M: Sarah Sharp ++M: Sarah Sharp + L: linux-usb@vger.kernel.org + S: Supported +-F: drivers/usb/host/xhci* +-F: drivers/usb/host/pci-quirks* + + USB ZC0301 DRIVER + M: Luca Risolia +diff --git a/Makefile b/Makefile +index ec932b2..f5cdb72 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,7 +1,7 @@ + VERSION = 2 + PATCHLEVEL = 6 + SUBLEVEL = 32 +-EXTRAVERSION = .9 ++EXTRAVERSION = + NAME = Man-Eating Seals of Antiquity + + # *DOCUMENTATION* +diff --git a/README b/README +index 737838f..632f7c5 100644 +--- a/README ++++ b/README +@@ -372,4 +372,3 @@ IF SOMETHING GOES WRONG: + + gdb'ing a non-running kernel currently fails because gdb (wrongly) + disregards the starting offset for which the kernel is compiled. +- +diff --git a/README.kc b/README.kc +new file mode 100644 +index 0000000..8491afe +--- /dev/null ++++ b/README.kc +@@ -0,0 +1,7 @@ ++kernel concepts Linux kernel development ++ ++Log: ++git remote add linus git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git ++ ++Merge upstream: ++git pull linus refs/tags/v2.6.30 +diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c +index 62619f2..9a3334a 100644 +--- a/arch/alpha/kernel/osf_sys.c ++++ b/arch/alpha/kernel/osf_sys.c +@@ -178,18 +178,25 @@ SYSCALL_DEFINE6(osf_mmap, unsigned long, addr, unsigned long, len, + unsigned long, prot, unsigned long, flags, unsigned long, fd, + unsigned long, off) + { +- unsigned long ret = -EINVAL; ++ struct file *file = NULL; ++ unsigned long ret = -EBADF; + + #if 0 + if (flags & (_MAP_HASSEMAPHORE | _MAP_INHERIT | _MAP_UNALIGNED)) + printk("%s: unimplemented OSF mmap flags %04lx\n", + current->comm, flags); + #endif +- if ((off + PAGE_ALIGN(len)) < off) +- goto out; +- if (off & ~PAGE_MASK) +- goto out; +- ret = sys_mmap_pgoff(addr, len, prot, flags, fd, off >> PAGE_SHIFT); ++ if (!(flags & MAP_ANONYMOUS)) { ++ file = fget(fd); ++ if (!file) ++ goto out; ++ } ++ flags &= ~(MAP_EXECUTABLE | MAP_DENYWRITE); ++ down_write(¤t->mm->mmap_sem); ++ ret = do_mmap(file, addr, len, prot, flags, off); ++ up_write(¤t->mm->mmap_sem); ++ if (file) ++ fput(file); + out: + return ret; + } +diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig +index 1c4119c..508a718 100644 +--- a/arch/arm/Kconfig ++++ b/arch/arm/Kconfig +@@ -344,6 +344,26 @@ config ARCH_H720X + help + This enables support for systems based on the Hynix HMS720x + ++config ARCH_IMX ++ bool "IMX" ++ select CPU_ARM920T ++ select GENERIC_GPIO ++ select GENERIC_TIME ++ select GENERIC_CLOCKEVENTS ++ help ++ Support for Motorola's i.MX family of processors (MX1, MXL). ++ ++config ARCH_TMPA910 ++ bool "Toshiba TX09 / TMPA9xx based" ++ select CPU_ARM926T ++ select GENERIC_GPIO ++ select ARCH_REQUIRE_GPIOLIB ++ select GENERIC_CLOCKEVENTS ++ select GENERIC_CLOCKEVENTS_BUILD ++ help ++ This enables support for Toshiba TX09 series TMPA9xx / TMPA9xxCR based ++ devices. ++ + config ARCH_NOMADIK + bool "STMicroelectronics Nomadik" + select ARM_AMBA +@@ -802,6 +822,8 @@ source "arch/arm/mach-u300/Kconfig" + + source "arch/arm/mach-w90x900/Kconfig" + ++source "arch/arm/mach-tmpa910/Kconfig" ++ + source "arch/arm/mach-bcmring/Kconfig" + + # Definitions to make life easier +diff --git a/arch/arm/Makefile b/arch/arm/Makefile +index a73caaf..ae9defb 100644 +--- a/arch/arm/Makefile ++++ b/arch/arm/Makefile +@@ -126,6 +126,7 @@ machine-$(CONFIG_ARCH_EBSA110) := ebsa110 + machine-$(CONFIG_ARCH_EP93XX) := ep93xx + machine-$(CONFIG_ARCH_GEMINI) := gemini + machine-$(CONFIG_ARCH_H720X) := h720x ++machine-$(CONFIG_ARCH_IMX) := imx + machine-$(CONFIG_ARCH_INTEGRATOR) := integrator + machine-$(CONFIG_ARCH_IOP13XX) := iop13xx + machine-$(CONFIG_ARCH_IOP32X) := iop32x +@@ -165,6 +166,7 @@ machine-$(CONFIG_ARCH_SA1100) := sa1100 + machine-$(CONFIG_ARCH_SHARK) := shark + machine-$(CONFIG_ARCH_STMP378X) := stmp378x + machine-$(CONFIG_ARCH_STMP37XX) := stmp37xx ++machine-$(CONFIG_ARCH_TMPA910) := tmpa910 + machine-$(CONFIG_ARCH_U300) := u300 + machine-$(CONFIG_ARCH_VERSATILE) := versatile + machine-$(CONFIG_ARCH_W90X900) := w90x900 +diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile +index ce39dc5..db539a7 100644 +--- a/arch/arm/boot/compressed/Makefile ++++ b/arch/arm/boot/compressed/Makefile +@@ -36,6 +36,10 @@ ifeq ($(CONFIG_CPU_XSCALE),y) + OBJS += head-xscale.o + endif + ++ifeq ($(CONFIG_ARCH_TMPA910),y) ++OBJS += head-tmpa910.o ++endif ++ + ifeq ($(CONFIG_PXA_SHARPSL),y) + OBJS += head-sharpsl.o + endif +diff --git a/arch/arm/boot/compressed/head-tmpa910.S b/arch/arm/boot/compressed/head-tmpa910.S +new file mode 100644 +index 0000000..aae9972 +--- /dev/null ++++ b/arch/arm/boot/compressed/head-tmpa910.S +@@ -0,0 +1,32 @@ ++/* ++ * The head file for Toshiba TMPA910 ++ * by Yin, Fengwei (fengwei.yin@gmail.com) ++ * TMPA910 sepific. This is merged int head.S by the linker. ++ */ ++ ++#include ++#include ++#include ++ ++ .section ".start", "ax" ++tmpa910_start: ++ @ Preserve r8/r7 i.e. kernel entry values ++ ++ @ Data cache might be active. ++ @ Be sure to flush kernel binary out of the cache, ++ @ whatever state it is, before it is turned off. ++ @ This is done by fetching through currently executed ++ @ memory to be sure we hit the same cache. ++ bic r2, pc, #0x1f ++ add r3, r2, #0x10000 @ 64 kb is quite enough... ++1: ldr r0, [r2], #32 ++ teq r2, r3 ++ bne 1b ++ mcr p15, 0, r0, c7, c10, 4 @ drain WB ++ mcr p15, 0, r0, c7, c7, 0 @ flush I & D caches ++ ++ @ disabling MMU and caches ++ mrc p15, 0, r0, c1, c0, 0 @ read control reg ++ bic r0, r0, #0x05 @ clear DC, MMU ++ bic r0, r0, #0x1000 @ clear Icache ++ mcr p15, 0, r0, c1, c0, 0 +diff --git a/arch/arm/configs/tonga_defconfig b/arch/arm/configs/tonga_defconfig +new file mode 100644 +index 0000000..b06d038 +--- /dev/null ++++ b/arch/arm/configs/tonga_defconfig +@@ -0,0 +1,1373 @@ ++# ++# Automatically generated make config: don't edit ++# Linux kernel version: 2.6.32 ++# Fri Mar 12 17:46:36 2010 ++# ++CONFIG_ARM=y ++CONFIG_SYS_SUPPORTS_APM_EMULATION=y ++CONFIG_GENERIC_GPIO=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 is not set ++CONFIG_SWAP=y ++CONFIG_SYSVIPC=y ++CONFIG_SYSVIPC_SYSCTL=y ++CONFIG_POSIX_MQUEUE=y ++CONFIG_POSIX_MQUEUE_SYSCTL=y ++# CONFIG_BSD_PROCESS_ACCT is not set ++# CONFIG_TASKSTATS is not set ++# CONFIG_AUDIT 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=14 ++# 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_NET_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 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 ++ ++# ++# Kernel Performance Events And Counters ++# ++CONFIG_VM_EVENT_COUNTERS=y ++CONFIG_COMPAT_BRK=y ++CONFIG_SLAB=y ++# CONFIG_SLUB is not set ++# 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 ++ ++# ++# GCOV-based kernel profiling ++# ++CONFIG_SLOW_WORK=y ++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 is not set ++# CONFIG_MODULE_SRCVERSION_ALL is not set ++CONFIG_BLOCK=y ++# CONFIG_LBDAF is not set ++# CONFIG_BLK_DEV_BSG is not set ++# 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=y ++# CONFIG_DEFAULT_DEADLINE is not set ++# CONFIG_DEFAULT_CFQ is not set ++# CONFIG_DEFAULT_NOOP is not set ++CONFIG_DEFAULT_IOSCHED="anticipatory" ++# 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_IMX is not set ++CONFIG_ARCH_TMPA910=y ++# 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_CPU_TMPA910 is not set ++CONFIG_CPU_TMPA900=y ++# CONFIG_DISPLAY_GLYN_640_480 is not set ++# CONFIG_MACH_TOPASA900 is not set ++CONFIG_MACH_TONGA=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 ++ ++# ++# Bus support ++# ++# CONFIG_PCI_SYSCALL is not set ++# CONFIG_ARCH_SUPPORTS_MSI is not set ++# CONFIG_PCCARD is not set ++ ++# ++# Kernel Features ++# ++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 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="mem=63M mtdparts=physmap-flash.0:384k(bootloader)ro,5120k(kernel),-(root) root=/dev/mtdblock2 rdinit=/init" ++# CONFIG_XIP_KERNEL is not set ++# CONFIG_KEXEC is not set ++ ++# ++# CPU Power Management ++# ++CONFIG_CPU_IDLE=y ++CONFIG_CPU_IDLE_GOV_LADDER=y ++ ++# ++# Floating point emulation ++# ++ ++# ++# At least one emulation must be selected ++# ++CONFIG_VFP=y ++ ++# ++# 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=y ++ ++# ++# Networking options ++# ++CONFIG_PACKET=y ++CONFIG_PACKET_MMAP=y ++CONFIG_UNIX=y ++CONFIG_XFRM=y ++# CONFIG_XFRM_USER is not set ++# CONFIG_XFRM_SUB_POLICY is not set ++# CONFIG_XFRM_MIGRATE is not set ++# CONFIG_XFRM_STATISTICS is not set ++# CONFIG_NET_KEY is not set ++CONFIG_INET=y ++CONFIG_IP_MULTICAST=y ++# CONFIG_IP_ADVANCED_ROUTER is not set ++CONFIG_IP_FIB_HASH=y ++CONFIG_IP_PNP=y ++CONFIG_IP_PNP_DHCP=y ++CONFIG_IP_PNP_BOOTP=y ++CONFIG_IP_PNP_RARP=y ++CONFIG_NET_IPIP=y ++# CONFIG_NET_IPGRE is not set ++# CONFIG_IP_MROUTE is not set ++# CONFIG_ARPD is not set ++CONFIG_SYN_COOKIES=y ++# CONFIG_INET_AH is not set ++# CONFIG_INET_ESP is not set ++# CONFIG_INET_IPCOMP is not set ++# CONFIG_INET_XFRM_TUNNEL is not set ++CONFIG_INET_TUNNEL=y ++CONFIG_INET_XFRM_MODE_TRANSPORT=y ++CONFIG_INET_XFRM_MODE_TUNNEL=y ++CONFIG_INET_XFRM_MODE_BEET=y ++# CONFIG_INET_LRO is not set ++CONFIG_INET_DIAG=y ++CONFIG_INET_TCP_DIAG=y ++# CONFIG_TCP_CONG_ADVANCED is not set ++CONFIG_TCP_CONG_CUBIC=y ++CONFIG_DEFAULT_TCP_CONG="cubic" ++# CONFIG_TCP_MD5SIG is not set ++# CONFIG_IPV6 is not set ++# CONFIG_NETWORK_SECMARK is not set ++# CONFIG_NETFILTER is not set ++# CONFIG_IP_DCCP is not set ++# CONFIG_IP_SCTP is not set ++# CONFIG_RDS is not set ++# CONFIG_TIPC is not set ++# CONFIG_ATM is not set ++# CONFIG_BRIDGE is not set ++# CONFIG_NET_DSA is not set ++# CONFIG_VLAN_8021Q is not set ++# CONFIG_DECNET is not set ++# CONFIG_LLC2 is not set ++# CONFIG_IPX is not set ++# CONFIG_ATALK is not set ++# CONFIG_X25 is not set ++# CONFIG_LAPB is not set ++# CONFIG_ECONET is not set ++# CONFIG_WAN_ROUTER is not set ++# CONFIG_PHONET is not set ++# CONFIG_IEEE802154 is not set ++# CONFIG_NET_SCHED is not set ++# CONFIG_DCB is not set ++ ++# ++# Network testing ++# ++# CONFIG_NET_PKTGEN is not set ++# CONFIG_HAMRADIO is not set ++# CONFIG_CAN is not set ++# CONFIG_IRDA is not set ++# CONFIG_BT is not set ++# CONFIG_AF_RXRPC is not set ++# CONFIG_WIRELESS is not set ++# CONFIG_WIMAX is not set ++# CONFIG_RFKILL is not set ++# CONFIG_NET_9P 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_DEBUG_DRIVER is not set ++# CONFIG_DEBUG_DEVRES is not set ++# CONFIG_SYS_HYPERVISOR is not set ++# CONFIG_CONNECTOR 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=y ++CONFIG_MTD_GEN_PROBE=y ++CONFIG_MTD_CFI_ADV_OPTIONS=y ++CONFIG_MTD_CFI_NOSWAP=y ++# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set ++# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set ++CONFIG_MTD_CFI_GEOMETRY=y ++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_OTP is not set ++CONFIG_MTD_CFI_INTELEXT=y ++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 is not set ++# CONFIG_MTD_ARM_INTEGRATOR is not set ++# CONFIG_MTD_IMPA7 is not set ++# CONFIG_MTD_PLATRAM is not set ++ ++# ++# Self-contained MTD device drivers ++# ++# CONFIG_MTD_DATAFLASH is not set ++# CONFIG_MTD_M25P80 is not set ++# CONFIG_MTD_SST25L is not set ++# 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=y ++# CONFIG_MTD_NAND_VERIFY_WRITE is not set ++# CONFIG_MTD_NAND_ECC_SMC is not set ++# CONFIG_MTD_NAND_MUSEUM_IDS is not set ++# CONFIG_MTD_NAND_GPIO is not set ++CONFIG_MTD_NAND_IDS=y ++# CONFIG_MTD_NAND_DISKONCHIP is not set ++# CONFIG_MTD_NAND_NANDSIM is not set ++# CONFIG_MTD_NAND_PLATFORM is not set ++CONFIG_MTD_NAND_TMPA910=y ++# CONFIG_MTD_ONENAND is not set ++ ++# ++# LPDDR flash memory drivers ++# ++# CONFIG_MTD_LPDDR is not set ++ ++# ++# UBI - Unsorted block images ++# ++CONFIG_MTD_UBI=y ++CONFIG_MTD_UBI_WL_THRESHOLD=4096 ++CONFIG_MTD_UBI_BEB_RESERVE=1 ++CONFIG_MTD_UBI_GLUEBI=y ++ ++# ++# UBI debugging options ++# ++# CONFIG_MTD_UBI_DEBUG 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 ++# CONFIG_BLK_DEV_NBD is not set ++# CONFIG_BLK_DEV_RAM is not set ++# CONFIG_CDROM_PKTCDVD is not set ++# CONFIG_ATA_OVER_ETH is not set ++# CONFIG_MG_DISK is not set ++# CONFIG_MISC_DEVICES is not set ++CONFIG_HAVE_IDE=y ++# CONFIG_IDE is not set ++ ++# ++# SCSI device support ++# ++# 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=y ++# CONFIG_BLK_DEV_SR_VENDOR is not set ++CONFIG_CHR_DEV_SG=y ++# 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_ISCSI_ATTRS is not set ++# CONFIG_SCSI_SAS_LIBSAS is not set ++# CONFIG_SCSI_SRP_ATTRS is not set ++CONFIG_SCSI_LOWLEVEL=y ++# CONFIG_ISCSI_TCP is not set ++# 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 is not set ++# CONFIG_MD is not set ++CONFIG_NETDEVICES=y ++# CONFIG_DUMMY is not set ++# CONFIG_BONDING is not set ++# CONFIG_MACVLAN is not set ++# CONFIG_EQUALIZER is not set ++# CONFIG_TUN is not set ++# CONFIG_VETH is not set ++# CONFIG_PHYLIB is not set ++CONFIG_NET_ETHERNET=y ++CONFIG_MII=y ++# CONFIG_AX88796 is not set ++# CONFIG_SMC91X is not set ++CONFIG_DM9000=y ++CONFIG_DM9000_DEBUGLEVEL=0 ++# CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL is not set ++# CONFIG_ENC28J60 is not set ++# CONFIG_ETHOC is not set ++# CONFIG_SMC911X is not set ++# CONFIG_SMSC911X is not set ++# CONFIG_DNET is not set ++# CONFIG_IBM_NEW_EMAC_ZMII is not set ++# CONFIG_IBM_NEW_EMAC_RGMII is not set ++# CONFIG_IBM_NEW_EMAC_TAH is not set ++# CONFIG_IBM_NEW_EMAC_EMAC4 is not set ++# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set ++# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set ++# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set ++# CONFIG_B44 is not set ++# CONFIG_KS8842 is not set ++# CONFIG_KS8851 is not set ++# CONFIG_KS8851_MLL is not set ++# CONFIG_NETDEV_1000 is not set ++# CONFIG_NETDEV_10000 is not set ++CONFIG_WLAN=y ++# CONFIG_WLAN_PRE80211 is not set ++# CONFIG_WLAN_80211 is not set ++ ++# ++# Enable WiMAX (Networking options) to see the WiMAX drivers ++# ++# CONFIG_WAN is not set ++# CONFIG_PPP is not set ++# CONFIG_SLIP is not set ++# CONFIG_NETCONSOLE is not set ++# CONFIG_NETPOLL is not set ++# CONFIG_NET_POLL_CONTROLLER is not set ++# CONFIG_ISDN 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 ++ ++# ++# 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=y ++# CONFIG_INPUT_EVBUG is not set ++ ++# ++# Input Device Drivers ++# ++CONFIG_INPUT_KEYBOARD=y ++# CONFIG_KEYBOARD_ADP5588 is not set ++# CONFIG_KEYBOARD_ATKBD is not set ++# CONFIG_QT2160 is not set ++# CONFIG_KEYBOARD_LKKBD is not set ++CONFIG_KEYBOARD_GPIO=y ++# CONFIG_KEYBOARD_MATRIX is not set ++# CONFIG_KEYBOARD_MAX7359 is not set ++# CONFIG_KEYBOARD_NEWTON is not set ++# CONFIG_KEYBOARD_OPENCORES is not set ++# CONFIG_KEYBOARD_STOWAWAY is not set ++# CONFIG_KEYBOARD_SUNKBD is not set ++# CONFIG_KEYBOARD_XTKBD is not set ++CONFIG_INPUT_MOUSE=y ++# CONFIG_MOUSE_PS2 is not set ++# CONFIG_MOUSE_SERIAL is not set ++# CONFIG_MOUSE_APPLETOUCH is not set ++# CONFIG_MOUSE_BCM5974 is not set ++# CONFIG_MOUSE_VSXXXAA is not set ++# CONFIG_MOUSE_GPIO is not set ++# CONFIG_MOUSE_SYNAPTICS_I2C is not set ++# CONFIG_INPUT_JOYSTICK is not set ++# CONFIG_INPUT_TABLET is not set ++CONFIG_INPUT_TOUCHSCREEN=y ++# CONFIG_TOUCHSCREEN_ADS7846 is not set ++# CONFIG_TOUCHSCREEN_AD7877 is not set ++# CONFIG_TOUCHSCREEN_AD7879_I2C is not set ++# CONFIG_TOUCHSCREEN_AD7879_SPI is not set ++# CONFIG_TOUCHSCREEN_AD7879 is not set ++# CONFIG_TOUCHSCREEN_EETI is not set ++# CONFIG_TOUCHSCREEN_FUJITSU is not set ++# CONFIG_TOUCHSCREEN_GUNZE is not set ++# CONFIG_TOUCHSCREEN_ELO is not set ++# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set ++# CONFIG_TOUCHSCREEN_MCS5000 is not set ++# CONFIG_TOUCHSCREEN_MTOUCH is not set ++# CONFIG_TOUCHSCREEN_INEXIO is not set ++# CONFIG_TOUCHSCREEN_MK712 is not set ++# CONFIG_TOUCHSCREEN_PENMOUNT is not set ++CONFIG_TOUCHSCREEN_TMPA910=y ++# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set ++# CONFIG_TOUCHSCREEN_TOUCHWIN is not set ++# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set ++# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set ++# CONFIG_TOUCHSCREEN_TSC2007 is not set ++# CONFIG_INPUT_MISC is not set ++ ++# ++# Hardware I/O ports ++# ++CONFIG_SERIO=y ++CONFIG_SERIO_SERPORT=y ++# 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=y ++CONFIG_DEVKMEM=y ++# CONFIG_SERIAL_NONSTANDARD is not set ++ ++# ++# Serial drivers ++# ++# CONFIG_SERIAL_8250 is not set ++ ++# ++# Non-8250 serial port support ++# ++# CONFIG_SERIAL_MAX3100 is not set ++CONFIG_SERIAL_TMPA910=y ++CONFIG_SERIAL_TMPA910_CONSOLE=y ++CONFIG_SERIAL_TMPA910_CONSOLE_PREFERED=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=y ++# CONFIG_HW_RANDOM_TIMERIOMEM is not set ++# CONFIG_R3964 is not set ++# CONFIG_RAW_DRIVER is not set ++# CONFIG_TCG_TPM is not set ++CONFIG_I2C=y ++CONFIG_I2C_BOARDINFO=y ++CONFIG_I2C_COMPAT=y ++CONFIG_I2C_CHARDEV=y ++CONFIG_I2C_HELPER_AUTO=y ++ ++# ++# I2C Hardware Bus support ++# ++CONFIG_I2C_TMPA910=y ++ ++# ++# I2C system bus drivers (mostly embedded / system-on-chip) ++# ++# CONFIG_I2C_GPIO is not set ++# CONFIG_I2C_OCORES is not set ++# CONFIG_I2C_SIMTEC is not set ++ ++# ++# External I2C/SMBus adapter drivers ++# ++# CONFIG_I2C_PARPORT_LIGHT is not set ++# CONFIG_I2C_TAOS_EVM is not set ++ ++# ++# Other I2C/SMBus bus drivers ++# ++# CONFIG_I2C_PCA_PLATFORM is not set ++# CONFIG_I2C_STUB is not set ++ ++# ++# Miscellaneous I2C Chip support ++# ++# CONFIG_DS1682 is not set ++# 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=y ++# CONFIG_SPI_DEBUG is not set ++CONFIG_SPI_MASTER=y ++ ++# ++# SPI Master Controller Drivers ++# ++# CONFIG_SPI_BITBANG is not set ++# CONFIG_SPI_GPIO is not set ++CONFIG_SPI_TMPA910=y ++ ++# ++# SPI Protocol Masters ++# ++CONFIG_SPI_SPIDEV=y ++# CONFIG_SPI_TLE62X0 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: ++# ++ ++# ++# I2C GPIO expanders: ++# ++# CONFIG_GPIO_MAX732X is not set ++# CONFIG_GPIO_PCA953X is not set ++# CONFIG_GPIO_PCF857X is not set ++ ++# ++# PCI GPIO expanders: ++# ++ ++# ++# SPI GPIO expanders: ++# ++# CONFIG_GPIO_MAX7301 is not set ++# CONFIG_GPIO_MCP23S08 is not set ++# CONFIG_GPIO_MC33880 is not set ++ ++# ++# 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_TPS65010 is not set ++# CONFIG_TWL4030_CORE is not set ++# CONFIG_MFD_TMIO is not set ++# CONFIG_MFD_TC6393XB is not set ++# CONFIG_PMIC_DA903X is not set ++# CONFIG_MFD_WM8400 is not set ++# CONFIG_MFD_WM831X is not set ++# CONFIG_MFD_WM8350_I2C is not set ++# CONFIG_MFD_PCF50633 is not set ++# CONFIG_MFD_MC13783 is not set ++# CONFIG_AB3100_CORE is not set ++# CONFIG_EZX_PCAP 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=y ++# CONFIG_FIRMWARE_EDID is not set ++# CONFIG_FB_DDC is not set ++# CONFIG_FB_BOOT_VESA_SUPPORT is not set ++CONFIG_FB_CFB_FILLRECT=y ++CONFIG_FB_CFB_COPYAREA=y ++CONFIG_FB_CFB_IMAGEBLIT=y ++# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set ++# CONFIG_FB_SYS_FILLRECT is not set ++# CONFIG_FB_SYS_COPYAREA is not set ++# CONFIG_FB_SYS_IMAGEBLIT is not set ++# CONFIG_FB_FOREIGN_ENDIAN is not set ++# CONFIG_FB_SYS_FOPS is not set ++# CONFIG_FB_SVGALIB is not set ++# CONFIG_FB_MACMODES is not set ++# CONFIG_FB_BACKLIGHT is not set ++# CONFIG_FB_MODE_HELPERS is not set ++# CONFIG_FB_TILEBLITTING is not set ++ ++# ++# Frame buffer hardware drivers ++# ++CONFIG_FB_TMPA910=y ++# CONFIG_FB_S1D13XXX is not set ++# CONFIG_FB_VIRTUAL is not set ++# CONFIG_FB_METRONOME is not set ++# CONFIG_FB_MB862XX is not set ++# CONFIG_FB_BROADSHEET is not set ++CONFIG_BACKLIGHT_LCD_SUPPORT=y ++CONFIG_LCD_CLASS_DEVICE=y ++# CONFIG_LCD_LMS283GF05 is not set ++# CONFIG_LCD_LTV350QV is not set ++# CONFIG_LCD_ILI9320 is not set ++# CONFIG_LCD_TDO24M is not set ++# CONFIG_LCD_VGG2432A4 is not set ++# CONFIG_LCD_PLATFORM is not set ++CONFIG_BACKLIGHT_CLASS_DEVICE=y ++CONFIG_BACKLIGHT_GENERIC=y ++ ++# ++# Display device support ++# ++CONFIG_DISPLAY_SUPPORT=y ++ ++# ++# Display hardware drivers ++# ++ ++# ++# Console display driver support ++# ++# CONFIG_VGA_CONSOLE is not set ++CONFIG_DUMMY_CONSOLE=y ++CONFIG_FRAMEBUFFER_CONSOLE=y ++# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set ++CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y ++CONFIG_FONTS=y ++# CONFIG_FONT_8x8 is not set ++# CONFIG_FONT_8x16 is not set ++# CONFIG_FONT_6x11 is not set ++# CONFIG_FONT_7x14 is not set ++# CONFIG_FONT_PEARL_8x8 is not set ++# CONFIG_FONT_ACORN_8x8 is not set ++CONFIG_FONT_MINI_4x6=y ++# CONFIG_FONT_SUN8x16 is not set ++# CONFIG_FONT_SUN12x22 is not set ++# CONFIG_FONT_10x18 is not set ++CONFIG_LOGO=y ++# CONFIG_LOGO_LINUX_MONO is not set ++# CONFIG_LOGO_LINUX_VGA16 is not set ++CONFIG_LOGO_LINUX_CLUT224=y ++CONFIG_SOUND=y ++CONFIG_SOUND_OSS_CORE=y ++CONFIG_SOUND_OSS_CORE_PRECLAIM=y ++CONFIG_SND=y ++CONFIG_SND_TIMER=y ++CONFIG_SND_PCM=y ++# CONFIG_SND_SEQUENCER is not set ++CONFIG_SND_OSSEMUL=y ++CONFIG_SND_MIXER_OSS=y ++CONFIG_SND_PCM_OSS=y ++CONFIG_SND_PCM_OSS_PLUGINS=y ++# CONFIG_SND_DYNAMIC_MINORS is not set ++CONFIG_SND_SUPPORT_OLD_API=y ++CONFIG_SND_VERBOSE_PROCFS=y ++# CONFIG_SND_VERBOSE_PRINTK is not set ++# CONFIG_SND_DEBUG is not set ++# CONFIG_SND_RAWMIDI_SEQ is not set ++# CONFIG_SND_OPL3_LIB_SEQ is not set ++# CONFIG_SND_OPL4_LIB_SEQ is not set ++# CONFIG_SND_SBAWE_SEQ is not set ++# CONFIG_SND_EMU10K1_SEQ is not set ++CONFIG_SND_DRIVERS=y ++# CONFIG_SND_DUMMY is not set ++# CONFIG_SND_MTPAV is not set ++# CONFIG_SND_SERIAL_U16550 is not set ++# CONFIG_SND_MPU401 is not set ++CONFIG_SND_ARM=y ++CONFIG_SND_TMPA910_WM8976=y ++# CONFIG_SND_TMPA910_PCM1773 is not set ++CONFIG_SND_SPI=y ++# CONFIG_SND_SOC is not set ++# CONFIG_SOUND_PRIME is not set ++CONFIG_HID_SUPPORT=y ++CONFIG_HID=y ++# CONFIG_HIDRAW is not set ++# CONFIG_HID_PID is not set ++ ++# ++# Special HID drivers ++# ++CONFIG_USB_SUPPORT=y ++CONFIG_USB_ARCH_HAS_HCD=y ++CONFIG_USB_ARCH_HAS_OHCI=y ++# CONFIG_USB_ARCH_HAS_EHCI is not set ++# CONFIG_USB is not set ++ ++# ++# Enable Host or Gadget support to see Inventra options ++# ++ ++# ++# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ++# ++# CONFIG_USB_GADGET is not set ++ ++# ++# OTG and related infrastructure ++# ++# 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 is not set ++# CONFIG_EXT2_FS_XIP is not set ++CONFIG_EXT3_FS=y ++# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set ++# CONFIG_EXT3_FS_XATTR is not set ++# CONFIG_EXT4_FS is not set ++CONFIG_JBD=y ++CONFIG_FS_MBCACHE=y ++# CONFIG_REISERFS_FS is not set ++# CONFIG_JFS_FS is not set ++CONFIG_FS_POSIX_ACL=y ++# CONFIG_XFS_FS is not set ++# CONFIG_OCFS2_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 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=y ++# CONFIG_MSDOS_FS is not set ++CONFIG_VFAT_FS=y ++CONFIG_FAT_DEFAULT_CODEPAGE=437 ++CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" ++# 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=y ++CONFIG_JFFS2_FS_DEBUG=0 ++CONFIG_JFFS2_FS_WRITEBUFFER=y ++# CONFIG_JFFS2_FS_WBUF_VERIFY is not set ++CONFIG_JFFS2_SUMMARY=y ++# CONFIG_JFFS2_FS_XATTR is not set ++# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set ++CONFIG_JFFS2_ZLIB=y ++# CONFIG_JFFS2_LZO is not set ++CONFIG_JFFS2_RTIME=y ++# CONFIG_JFFS2_RUBIN is not set ++# CONFIG_UBIFS_FS 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 ++CONFIG_NETWORK_FILESYSTEMS=y ++CONFIG_NFS_FS=y ++CONFIG_NFS_V3=y ++CONFIG_NFS_V3_ACL=y ++CONFIG_NFS_V4=y ++# CONFIG_NFS_V4_1 is not set ++CONFIG_ROOT_NFS=y ++# CONFIG_NFSD is not set ++CONFIG_LOCKD=y ++CONFIG_LOCKD_V4=y ++CONFIG_NFS_ACL_SUPPORT=y ++CONFIG_NFS_COMMON=y ++CONFIG_SUNRPC=y ++CONFIG_SUNRPC_GSS=y ++CONFIG_RPCSEC_GSS_KRB5=y ++# CONFIG_RPCSEC_GSS_SPKM3 is not set ++# CONFIG_SMB_FS is not set ++CONFIG_CIFS=m ++# CONFIG_CIFS_STATS is not set ++CONFIG_CIFS_WEAK_PW_HASH=y ++CONFIG_CIFS_XATTR=y ++CONFIG_CIFS_POSIX=y ++# CONFIG_CIFS_DEBUG2 is not set ++# CONFIG_CIFS_EXPERIMENTAL is not set ++# CONFIG_NCP_FS is not set ++# CONFIG_CODA_FS is not set ++# CONFIG_AFS_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="iso8859-1" ++CONFIG_NLS_CODEPAGE_437=y ++# CONFIG_NLS_CODEPAGE_737 is not set ++# CONFIG_NLS_CODEPAGE_775 is not set ++CONFIG_NLS_CODEPAGE_850=y ++# 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 is not set ++CONFIG_NLS_ISO8859_1=y ++# 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=y ++# CONFIG_DLM is not set ++ ++# ++# Kernel hacking ++# ++# CONFIG_PRINTK_TIME is not set ++CONFIG_ENABLE_WARN_DEPRECATED=y ++# 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 is not set ++# 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_DEBUG_SLAB 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 is not set ++# 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 is not set ++# 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 is not set ++# 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 is not set ++CONFIG_SAMPLES=y ++# CONFIG_SAMPLE_KOBJECT is not set ++CONFIG_HAVE_ARCH_KGDB=y ++# CONFIG_KGDB is not set ++# CONFIG_ARM_UNWIND 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=y ++# CONFIG_DEBUG_ICEDCC 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=y ++ ++# ++# Crypto core or helper ++# ++CONFIG_CRYPTO_ALGAPI=y ++CONFIG_CRYPTO_ALGAPI2=y ++CONFIG_CRYPTO_AEAD2=y ++CONFIG_CRYPTO_BLKCIPHER=y ++CONFIG_CRYPTO_BLKCIPHER2=y ++CONFIG_CRYPTO_HASH=y ++CONFIG_CRYPTO_HASH2=y ++CONFIG_CRYPTO_RNG2=y ++CONFIG_CRYPTO_PCOMP=y ++CONFIG_CRYPTO_MANAGER=y ++CONFIG_CRYPTO_MANAGER2=y ++# CONFIG_CRYPTO_GF128MUL is not set ++# CONFIG_CRYPTO_NULL is not set ++CONFIG_CRYPTO_WORKQUEUE=y ++# CONFIG_CRYPTO_CRYPTD is not set ++# CONFIG_CRYPTO_AUTHENC is not set ++# CONFIG_CRYPTO_TEST is not set ++ ++# ++# Authenticated Encryption with Associated Data ++# ++# CONFIG_CRYPTO_CCM is not set ++# CONFIG_CRYPTO_GCM is not set ++# CONFIG_CRYPTO_SEQIV is not set ++ ++# ++# Block modes ++# ++CONFIG_CRYPTO_CBC=y ++# CONFIG_CRYPTO_CTR is not set ++# CONFIG_CRYPTO_CTS is not set ++# CONFIG_CRYPTO_ECB is not set ++# CONFIG_CRYPTO_LRW is not set ++# CONFIG_CRYPTO_PCBC is not set ++# CONFIG_CRYPTO_XTS is not set ++ ++# ++# Hash modes ++# ++# CONFIG_CRYPTO_HMAC is not set ++# CONFIG_CRYPTO_XCBC is not set ++# CONFIG_CRYPTO_VMAC is not set ++ ++# ++# Digest ++# ++# CONFIG_CRYPTO_CRC32C is not set ++# CONFIG_CRYPTO_GHASH is not set ++# CONFIG_CRYPTO_MD4 is not set ++CONFIG_CRYPTO_MD5=y ++# CONFIG_CRYPTO_MICHAEL_MIC is not set ++# CONFIG_CRYPTO_RMD128 is not set ++# CONFIG_CRYPTO_RMD160 is not set ++# CONFIG_CRYPTO_RMD256 is not set ++# CONFIG_CRYPTO_RMD320 is not set ++# CONFIG_CRYPTO_SHA1 is not set ++# CONFIG_CRYPTO_SHA256 is not set ++# CONFIG_CRYPTO_SHA512 is not set ++# CONFIG_CRYPTO_TGR192 is not set ++# CONFIG_CRYPTO_WP512 is not set ++ ++# ++# Ciphers ++# ++# CONFIG_CRYPTO_AES is not set ++# CONFIG_CRYPTO_ANUBIS is not set ++# CONFIG_CRYPTO_ARC4 is not set ++# CONFIG_CRYPTO_BLOWFISH is not set ++# CONFIG_CRYPTO_CAMELLIA is not set ++# CONFIG_CRYPTO_CAST5 is not set ++# CONFIG_CRYPTO_CAST6 is not set ++CONFIG_CRYPTO_DES=y ++# CONFIG_CRYPTO_FCRYPT is not set ++# CONFIG_CRYPTO_KHAZAD is not set ++# CONFIG_CRYPTO_SALSA20 is not set ++# CONFIG_CRYPTO_SEED is not set ++# CONFIG_CRYPTO_SERPENT is not set ++# CONFIG_CRYPTO_TEA is not set ++# CONFIG_CRYPTO_TWOFISH is not set ++ ++# ++# Compression ++# ++# CONFIG_CRYPTO_DEFLATE is not set ++# CONFIG_CRYPTO_ZLIB is not set ++# CONFIG_CRYPTO_LZO is not set ++ ++# ++# Random Number Generation ++# ++# CONFIG_CRYPTO_ANSI_CPRNG is not set ++CONFIG_CRYPTO_HW=y ++# CONFIG_BINARY_PRINTF is not set ++ ++# ++# Library routines ++# ++CONFIG_BITREVERSE=y ++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=y ++CONFIG_CRC32=y ++CONFIG_CRC7=y ++# CONFIG_LIBCRC32C is not set ++CONFIG_ZLIB_INFLATE=y ++CONFIG_ZLIB_DEFLATE=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 ++CONFIG_NLATTR=y +diff --git a/arch/arm/configs/topas910_defconfig b/arch/arm/configs/topas910_defconfig +new file mode 100644 +index 0000000..b9f3d4c +--- /dev/null ++++ b/arch/arm/configs/topas910_defconfig +@@ -0,0 +1,1359 @@ ++# ++# Automatically generated make config: don't edit ++# Linux kernel version: 2.6.32 ++# Thu Dec 3 11:39:59 2009 ++# ++CONFIG_ARM=y ++CONFIG_SYS_SUPPORTS_APM_EMULATION=y ++CONFIG_GENERIC_GPIO=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_LOCK_KERNEL=y ++CONFIG_INIT_ENV_ARG_LIMIT=32 ++CONFIG_LOCALVERSION="" ++# CONFIG_LOCALVERSION_AUTO is not set ++CONFIG_SWAP=y ++CONFIG_SYSVIPC=y ++CONFIG_SYSVIPC_SYSCTL=y ++CONFIG_POSIX_MQUEUE=y ++CONFIG_POSIX_MQUEUE_SYSCTL=y ++# CONFIG_BSD_PROCESS_ACCT is not set ++# CONFIG_TASKSTATS is not set ++# CONFIG_AUDIT 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=14 ++# CONFIG_GROUP_SCHED is not set ++# CONFIG_CGROUPS is not set ++CONFIG_SYSFS_DEPRECATED=y ++CONFIG_SYSFS_DEPRECATED_V2=y ++# 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_NET_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_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 ++ ++# ++# Kernel Performance Events And Counters ++# ++CONFIG_VM_EVENT_COUNTERS=y ++CONFIG_COMPAT_BRK=y ++CONFIG_SLAB=y ++# CONFIG_SLUB is not set ++# 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 ++ ++# ++# GCOV-based kernel profiling ++# ++CONFIG_SLOW_WORK=y ++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 is not set ++# 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_AS=y ++CONFIG_IOSCHED_DEADLINE=y ++CONFIG_IOSCHED_CFQ=y ++CONFIG_DEFAULT_AS=y ++# CONFIG_DEFAULT_DEADLINE is not set ++# CONFIG_DEFAULT_CFQ is not set ++# CONFIG_DEFAULT_NOOP is not set ++CONFIG_DEFAULT_IOSCHED="anticipatory" ++CONFIG_FREEZER=y ++ ++# ++# 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_IMX is not set ++CONFIG_ARCH_TMPA910=y ++# 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_CPU_TMPA910=y ++# CONFIG_CPU_TMPA900 is not set ++CONFIG_MACH_TOPAS910=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 ++ ++# ++# Bus support ++# ++# CONFIG_PCI_SYSCALL is not set ++# CONFIG_ARCH_SUPPORTS_MSI is not set ++# CONFIG_PCCARD is not set ++ ++# ++# Kernel Features ++# ++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 is not set ++# CONFIG_PREEMPT_VOLUNTARY is not set ++CONFIG_PREEMPT=y ++CONFIG_HZ=100 ++CONFIG_AEABI=y ++# CONFIG_OABI_COMPAT 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="mem=63M mtdparts=physmap-flash.0:384k(bootloader)ro,5120k(kernel),-(root) root=/dev/mtdblock2 rdinit=/init" ++# CONFIG_XIP_KERNEL is not set ++# CONFIG_KEXEC is not set ++ ++# ++# CPU Power Management ++# ++CONFIG_CPU_IDLE=y ++CONFIG_CPU_IDLE_GOV_LADDER=y ++ ++# ++# Floating point emulation ++# ++ ++# ++# At least one emulation must be selected ++# ++CONFIG_VFP=y ++ ++# ++# 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=y ++# CONFIG_PM_DEBUG is not set ++CONFIG_PM_SLEEP=y ++CONFIG_SUSPEND=y ++CONFIG_SUSPEND_FREEZER=y ++CONFIG_APM_EMULATION=y ++# CONFIG_PM_RUNTIME is not set ++CONFIG_ARCH_SUSPEND_POSSIBLE=y ++CONFIG_NET=y ++ ++# ++# Networking options ++# ++CONFIG_PACKET=y ++CONFIG_PACKET_MMAP=y ++CONFIG_UNIX=y ++CONFIG_XFRM=y ++# CONFIG_XFRM_USER is not set ++# CONFIG_XFRM_SUB_POLICY is not set ++# CONFIG_XFRM_MIGRATE is not set ++# CONFIG_XFRM_STATISTICS is not set ++# CONFIG_NET_KEY is not set ++CONFIG_INET=y ++CONFIG_IP_MULTICAST=y ++# CONFIG_IP_ADVANCED_ROUTER is not set ++CONFIG_IP_FIB_HASH=y ++CONFIG_IP_PNP=y ++CONFIG_IP_PNP_DHCP=y ++CONFIG_IP_PNP_BOOTP=y ++CONFIG_IP_PNP_RARP=y ++CONFIG_NET_IPIP=y ++# CONFIG_NET_IPGRE is not set ++# CONFIG_IP_MROUTE is not set ++# CONFIG_ARPD is not set ++CONFIG_SYN_COOKIES=y ++# CONFIG_INET_AH is not set ++# CONFIG_INET_ESP is not set ++# CONFIG_INET_IPCOMP is not set ++# CONFIG_INET_XFRM_TUNNEL is not set ++CONFIG_INET_TUNNEL=y ++CONFIG_INET_XFRM_MODE_TRANSPORT=y ++CONFIG_INET_XFRM_MODE_TUNNEL=y ++CONFIG_INET_XFRM_MODE_BEET=y ++# CONFIG_INET_LRO is not set ++CONFIG_INET_DIAG=y ++CONFIG_INET_TCP_DIAG=y ++# CONFIG_TCP_CONG_ADVANCED is not set ++CONFIG_TCP_CONG_CUBIC=y ++CONFIG_DEFAULT_TCP_CONG="cubic" ++# CONFIG_TCP_MD5SIG is not set ++# CONFIG_IPV6 is not set ++# CONFIG_NETWORK_SECMARK is not set ++# CONFIG_NETFILTER is not set ++# CONFIG_IP_DCCP is not set ++# CONFIG_IP_SCTP is not set ++# CONFIG_RDS is not set ++# CONFIG_TIPC is not set ++# CONFIG_ATM is not set ++# CONFIG_BRIDGE is not set ++# CONFIG_NET_DSA is not set ++# CONFIG_VLAN_8021Q is not set ++# CONFIG_DECNET is not set ++# CONFIG_LLC2 is not set ++# CONFIG_IPX is not set ++# CONFIG_ATALK is not set ++# CONFIG_X25 is not set ++# CONFIG_LAPB is not set ++# CONFIG_ECONET is not set ++# CONFIG_WAN_ROUTER is not set ++# CONFIG_PHONET is not set ++# CONFIG_IEEE802154 is not set ++# CONFIG_NET_SCHED is not set ++# CONFIG_DCB is not set ++ ++# ++# Network testing ++# ++# CONFIG_NET_PKTGEN is not set ++# CONFIG_HAMRADIO is not set ++# CONFIG_CAN is not set ++# CONFIG_IRDA is not set ++# CONFIG_BT is not set ++# CONFIG_AF_RXRPC is not set ++# CONFIG_WIRELESS is not set ++# CONFIG_WIMAX is not set ++# CONFIG_RFKILL is not set ++# CONFIG_NET_9P is not set ++ ++# ++# Device Drivers ++# ++ ++# ++# Generic Driver Options ++# ++CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" ++CONFIG_DEVTMPFS=y ++CONFIG_DEVTMPFS_MOUNT=y ++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_CONNECTOR 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=y ++CONFIG_MTD_GEN_PROBE=y ++CONFIG_MTD_CFI_ADV_OPTIONS=y ++CONFIG_MTD_CFI_NOSWAP=y ++# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set ++# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set ++CONFIG_MTD_CFI_GEOMETRY=y ++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_OTP is not set ++CONFIG_MTD_CFI_INTELEXT=y ++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=y ++CONFIG_MTD_PHYSMAP_START=0x20000000 ++CONFIG_MTD_PHYSMAP_LEN=0x02000000 ++CONFIG_MTD_PHYSMAP_BANKWIDTH=2 ++# CONFIG_MTD_ARM_INTEGRATOR is not set ++# CONFIG_MTD_IMPA7 is not set ++# CONFIG_MTD_PLATRAM is not set ++ ++# ++# Self-contained MTD device drivers ++# ++# CONFIG_MTD_DATAFLASH is not set ++# CONFIG_MTD_M25P80 is not set ++# CONFIG_MTD_SST25L is not set ++# 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=y ++# CONFIG_MTD_NAND_VERIFY_WRITE is not set ++# CONFIG_MTD_NAND_ECC_SMC is not set ++# CONFIG_MTD_NAND_MUSEUM_IDS is not set ++# CONFIG_MTD_NAND_GPIO is not set ++CONFIG_MTD_NAND_IDS=y ++# CONFIG_MTD_NAND_DISKONCHIP is not set ++# CONFIG_MTD_NAND_NANDSIM is not set ++# CONFIG_MTD_NAND_PLATFORM is not set ++CONFIG_MTD_NAND_TMPA910=y ++# 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 ++# CONFIG_BLK_DEV_NBD is not set ++# CONFIG_BLK_DEV_RAM is not set ++# CONFIG_CDROM_PKTCDVD is not set ++# CONFIG_ATA_OVER_ETH is not set ++# CONFIG_MG_DISK is not set ++# CONFIG_MISC_DEVICES is not set ++CONFIG_HAVE_IDE=y ++# CONFIG_IDE is not set ++ ++# ++# SCSI device support ++# ++# 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=y ++# CONFIG_BLK_DEV_SR_VENDOR is not set ++CONFIG_CHR_DEV_SG=y ++# 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_ISCSI_ATTRS is not set ++# CONFIG_SCSI_SAS_LIBSAS is not set ++# CONFIG_SCSI_SRP_ATTRS is not set ++CONFIG_SCSI_LOWLEVEL=y ++# CONFIG_ISCSI_TCP is not set ++# 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 is not set ++# CONFIG_MD is not set ++CONFIG_NETDEVICES=y ++# CONFIG_DUMMY is not set ++# CONFIG_BONDING is not set ++# CONFIG_MACVLAN is not set ++# CONFIG_EQUALIZER is not set ++# CONFIG_TUN is not set ++# CONFIG_VETH is not set ++# CONFIG_PHYLIB is not set ++CONFIG_NET_ETHERNET=y ++CONFIG_MII=y ++# CONFIG_AX88796 is not set ++# CONFIG_SMC91X is not set ++CONFIG_DM9000=y ++CONFIG_DM9000_DEBUGLEVEL=0 ++# CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL is not set ++# CONFIG_ENC28J60 is not set ++# CONFIG_ETHOC is not set ++# CONFIG_SMC911X is not set ++# CONFIG_SMSC911X is not set ++# CONFIG_DNET is not set ++# CONFIG_IBM_NEW_EMAC_ZMII is not set ++# CONFIG_IBM_NEW_EMAC_RGMII is not set ++# CONFIG_IBM_NEW_EMAC_TAH is not set ++# CONFIG_IBM_NEW_EMAC_EMAC4 is not set ++# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set ++# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set ++# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set ++# CONFIG_B44 is not set ++# CONFIG_KS8842 is not set ++# CONFIG_KS8851 is not set ++# CONFIG_KS8851_MLL is not set ++# CONFIG_NETDEV_1000 is not set ++# CONFIG_NETDEV_10000 is not set ++# CONFIG_WLAN is not set ++ ++# ++# Enable WiMAX (Networking options) to see the WiMAX drivers ++# ++# CONFIG_WAN is not set ++# CONFIG_PPP is not set ++# CONFIG_SLIP is not set ++# CONFIG_NETCONSOLE is not set ++# CONFIG_NETPOLL is not set ++# CONFIG_NET_POLL_CONTROLLER is not set ++# CONFIG_ISDN 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 ++ ++# ++# 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=y ++# CONFIG_INPUT_EVBUG is not set ++ ++# ++# Input Device Drivers ++# ++CONFIG_INPUT_KEYBOARD=y ++# CONFIG_KEYBOARD_ADP5588 is not set ++# CONFIG_KEYBOARD_ATKBD is not set ++# CONFIG_QT2160 is not set ++# CONFIG_KEYBOARD_LKKBD is not set ++CONFIG_KEYBOARD_GPIO=y ++# CONFIG_KEYBOARD_MATRIX is not set ++# CONFIG_KEYBOARD_MAX7359 is not set ++# CONFIG_KEYBOARD_NEWTON is not set ++# CONFIG_KEYBOARD_OPENCORES is not set ++# CONFIG_KEYBOARD_STOWAWAY is not set ++# CONFIG_KEYBOARD_SUNKBD is not set ++# CONFIG_KEYBOARD_XTKBD is not set ++CONFIG_INPUT_MOUSE=y ++# CONFIG_MOUSE_PS2 is not set ++# CONFIG_MOUSE_SERIAL is not set ++# CONFIG_MOUSE_APPLETOUCH is not set ++# CONFIG_MOUSE_BCM5974 is not set ++# CONFIG_MOUSE_VSXXXAA is not set ++# CONFIG_MOUSE_GPIO is not set ++# CONFIG_MOUSE_SYNAPTICS_I2C is not set ++# CONFIG_INPUT_JOYSTICK is not set ++# CONFIG_INPUT_TABLET is not set ++CONFIG_INPUT_TOUCHSCREEN=y ++# CONFIG_TOUCHSCREEN_ADS7846 is not set ++# CONFIG_TOUCHSCREEN_AD7877 is not set ++# CONFIG_TOUCHSCREEN_AD7879_I2C is not set ++# CONFIG_TOUCHSCREEN_AD7879_SPI is not set ++# CONFIG_TOUCHSCREEN_AD7879 is not set ++# CONFIG_TOUCHSCREEN_EETI is not set ++# CONFIG_TOUCHSCREEN_FUJITSU is not set ++# CONFIG_TOUCHSCREEN_GUNZE is not set ++# CONFIG_TOUCHSCREEN_ELO is not set ++# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set ++# CONFIG_TOUCHSCREEN_MCS5000 is not set ++# CONFIG_TOUCHSCREEN_MTOUCH is not set ++# CONFIG_TOUCHSCREEN_INEXIO is not set ++# CONFIG_TOUCHSCREEN_MK712 is not set ++# CONFIG_TOUCHSCREEN_PENMOUNT is not set ++CONFIG_TOUCHSCREEN_TMPA910=y ++# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set ++# CONFIG_TOUCHSCREEN_TOUCHWIN is not set ++# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set ++# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set ++# CONFIG_TOUCHSCREEN_TSC2007 is not set ++# CONFIG_INPUT_MISC is not set ++ ++# ++# Hardware I/O ports ++# ++CONFIG_SERIO=y ++CONFIG_SERIO_SERPORT=y ++# 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=y ++CONFIG_DEVKMEM=y ++# CONFIG_SERIAL_NONSTANDARD is not set ++ ++# ++# Serial drivers ++# ++# CONFIG_SERIAL_8250 is not set ++ ++# ++# Non-8250 serial port support ++# ++# CONFIG_SERIAL_MAX3100 is not set ++CONFIG_SERIAL_TMPA910=y ++CONFIG_SERIAL_TMPA910_CONSOLE=y ++CONFIG_SERIAL_TMPA910_CONSOLE_PREFERED=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=y ++# CONFIG_HW_RANDOM_TIMERIOMEM is not set ++# CONFIG_R3964 is not set ++# CONFIG_RAW_DRIVER is not set ++# CONFIG_TCG_TPM is not set ++CONFIG_I2C=y ++CONFIG_I2C_BOARDINFO=y ++CONFIG_I2C_COMPAT=y ++CONFIG_I2C_CHARDEV=y ++CONFIG_I2C_HELPER_AUTO=y ++ ++# ++# I2C Hardware Bus support ++# ++CONFIG_I2C_TMPA910=y ++ ++# ++# I2C system bus drivers (mostly embedded / system-on-chip) ++# ++# CONFIG_I2C_GPIO is not set ++# CONFIG_I2C_OCORES is not set ++# CONFIG_I2C_SIMTEC is not set ++ ++# ++# External I2C/SMBus adapter drivers ++# ++# CONFIG_I2C_PARPORT_LIGHT is not set ++# CONFIG_I2C_TAOS_EVM is not set ++ ++# ++# Other I2C/SMBus bus drivers ++# ++# CONFIG_I2C_PCA_PLATFORM is not set ++# CONFIG_I2C_STUB is not set ++ ++# ++# Miscellaneous I2C Chip support ++# ++# CONFIG_DS1682 is not set ++# 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=y ++CONFIG_SPI_MASTER=y ++ ++# ++# SPI Master Controller Drivers ++# ++# CONFIG_SPI_BITBANG is not set ++# CONFIG_SPI_GPIO is not set ++CONFIG_SPI_TMPA910=y ++ ++# ++# SPI Protocol Masters ++# ++CONFIG_SPI_SPIDEV=y ++# CONFIG_SPI_TLE62X0 is not set ++ ++# ++# PPS support ++# ++# CONFIG_PPS is not set ++CONFIG_ARCH_REQUIRE_GPIOLIB=y ++CONFIG_GPIOLIB=y ++CONFIG_GPIO_SYSFS=y ++ ++# ++# Memory mapped GPIO expanders: ++# ++ ++# ++# I2C GPIO expanders: ++# ++# CONFIG_GPIO_MAX732X is not set ++# CONFIG_GPIO_PCA953X is not set ++# CONFIG_GPIO_PCF857X is not set ++ ++# ++# PCI GPIO expanders: ++# ++ ++# ++# SPI GPIO expanders: ++# ++# CONFIG_GPIO_MAX7301 is not set ++# CONFIG_GPIO_MCP23S08 is not set ++# CONFIG_GPIO_MC33880 is not set ++ ++# ++# 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_TPS65010 is not set ++# CONFIG_TWL4030_CORE is not set ++# CONFIG_MFD_TMIO is not set ++# CONFIG_MFD_TC6393XB is not set ++# CONFIG_PMIC_DA903X is not set ++# CONFIG_MFD_WM8400 is not set ++# CONFIG_MFD_WM831X is not set ++# CONFIG_MFD_WM8350_I2C is not set ++# CONFIG_MFD_PCF50633 is not set ++# CONFIG_MFD_MC13783 is not set ++# CONFIG_AB3100_CORE is not set ++# CONFIG_EZX_PCAP 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=y ++# CONFIG_FIRMWARE_EDID is not set ++# CONFIG_FB_DDC is not set ++# CONFIG_FB_BOOT_VESA_SUPPORT is not set ++CONFIG_FB_CFB_FILLRECT=y ++CONFIG_FB_CFB_COPYAREA=y ++CONFIG_FB_CFB_IMAGEBLIT=y ++# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set ++# CONFIG_FB_SYS_FILLRECT is not set ++# CONFIG_FB_SYS_COPYAREA is not set ++# CONFIG_FB_SYS_IMAGEBLIT is not set ++# CONFIG_FB_FOREIGN_ENDIAN is not set ++# CONFIG_FB_SYS_FOPS is not set ++# CONFIG_FB_SVGALIB is not set ++# CONFIG_FB_MACMODES is not set ++# CONFIG_FB_BACKLIGHT is not set ++# CONFIG_FB_MODE_HELPERS is not set ++# CONFIG_FB_TILEBLITTING is not set ++ ++# ++# Frame buffer hardware drivers ++# ++CONFIG_FB_TMPA910=y ++# CONFIG_FB_S1D13XXX is not set ++# CONFIG_FB_VIRTUAL is not set ++# CONFIG_FB_METRONOME is not set ++# CONFIG_FB_MB862XX is not set ++# CONFIG_FB_BROADSHEET is not set ++CONFIG_BACKLIGHT_LCD_SUPPORT=y ++CONFIG_LCD_CLASS_DEVICE=y ++# CONFIG_LCD_LMS283GF05 is not set ++# CONFIG_LCD_LTV350QV is not set ++# CONFIG_LCD_ILI9320 is not set ++# CONFIG_LCD_TDO24M is not set ++# CONFIG_LCD_VGG2432A4 is not set ++# CONFIG_LCD_PLATFORM is not set ++CONFIG_BACKLIGHT_CLASS_DEVICE=y ++CONFIG_BACKLIGHT_GENERIC=y ++ ++# ++# Display device support ++# ++CONFIG_DISPLAY_SUPPORT=y ++ ++# ++# Display hardware drivers ++# ++ ++# ++# Console display driver support ++# ++# CONFIG_VGA_CONSOLE is not set ++CONFIG_DUMMY_CONSOLE=y ++CONFIG_FRAMEBUFFER_CONSOLE=y ++# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set ++CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y ++CONFIG_FONTS=y ++# CONFIG_FONT_8x8 is not set ++# CONFIG_FONT_8x16 is not set ++# CONFIG_FONT_6x11 is not set ++# CONFIG_FONT_7x14 is not set ++# CONFIG_FONT_PEARL_8x8 is not set ++# CONFIG_FONT_ACORN_8x8 is not set ++CONFIG_FONT_MINI_4x6=y ++# CONFIG_FONT_SUN8x16 is not set ++# CONFIG_FONT_SUN12x22 is not set ++# CONFIG_FONT_10x18 is not set ++CONFIG_LOGO=y ++# CONFIG_LOGO_LINUX_MONO is not set ++# CONFIG_LOGO_LINUX_VGA16 is not set ++CONFIG_LOGO_LINUX_CLUT224=y ++CONFIG_SOUND=y ++CONFIG_SOUND_OSS_CORE=y ++CONFIG_SOUND_OSS_CORE_PRECLAIM=y ++CONFIG_SND=y ++CONFIG_SND_TIMER=y ++CONFIG_SND_PCM=y ++# CONFIG_SND_SEQUENCER is not set ++CONFIG_SND_OSSEMUL=y ++CONFIG_SND_MIXER_OSS=y ++CONFIG_SND_PCM_OSS=y ++CONFIG_SND_PCM_OSS_PLUGINS=y ++# CONFIG_SND_DYNAMIC_MINORS is not set ++CONFIG_SND_SUPPORT_OLD_API=y ++CONFIG_SND_VERBOSE_PROCFS=y ++# CONFIG_SND_VERBOSE_PRINTK is not set ++# CONFIG_SND_DEBUG is not set ++# CONFIG_SND_RAWMIDI_SEQ is not set ++# CONFIG_SND_OPL3_LIB_SEQ is not set ++# CONFIG_SND_OPL4_LIB_SEQ is not set ++# CONFIG_SND_SBAWE_SEQ is not set ++# CONFIG_SND_EMU10K1_SEQ is not set ++# CONFIG_SND_DRIVERS is not set ++CONFIG_SND_ARM=y ++# CONFIG_SND_TMPA910_WM8976 is not set ++CONFIG_SND_TMPA910_PCM1773=y ++CONFIG_SND_SPI=y ++# CONFIG_SND_SOC is not set ++# CONFIG_SOUND_PRIME is not set ++CONFIG_HID_SUPPORT=y ++CONFIG_HID=y ++# CONFIG_HIDRAW is not set ++# CONFIG_HID_PID is not set ++ ++# ++# Special HID drivers ++# ++CONFIG_USB_SUPPORT=y ++CONFIG_USB_ARCH_HAS_HCD=y ++# CONFIG_USB_ARCH_HAS_OHCI is not set ++# CONFIG_USB_ARCH_HAS_EHCI is not set ++# CONFIG_USB is not set ++# CONFIG_USB_MUSB_HDRC is not set ++# CONFIG_USB_GADGET_MUSB_HDRC is not set ++ ++# ++# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ++# ++CONFIG_USB_GADGET=y ++CONFIG_USB_GADGET_DEBUG_FILES=y ++CONFIG_USB_GADGET_VBUS_DRAW=2 ++CONFIG_USB_GADGET_SELECTED=y ++# CONFIG_USB_GADGET_AT91 is not set ++# CONFIG_USB_GADGET_ATMEL_USBA is not set ++# CONFIG_USB_GADGET_FSL_USB2 is not set ++# CONFIG_USB_GADGET_LH7A40X is not set ++CONFIG_USB_GADGET_TMPA910=y ++CONFIG_USB_TMPA910=y ++# CONFIG_USB_GADGET_OMAP is not set ++# CONFIG_USB_GADGET_PXA25X is not set ++# CONFIG_USB_GADGET_R8A66597 is not set ++# CONFIG_USB_GADGET_PXA27X is not set ++# CONFIG_USB_GADGET_S3C_HSOTG is not set ++# CONFIG_USB_GADGET_IMX is not set ++# CONFIG_USB_GADGET_S3C2410 is not set ++# CONFIG_USB_GADGET_M66592 is not set ++# CONFIG_USB_GADGET_AMD5536UDC is not set ++# CONFIG_USB_GADGET_FSL_QE is not set ++# CONFIG_USB_GADGET_CI13XXX is not set ++# CONFIG_USB_GADGET_NET2280 is not set ++# CONFIG_USB_GADGET_GOKU is not set ++# CONFIG_USB_GADGET_LANGWELL is not set ++# CONFIG_USB_GADGET_DUMMY_HCD is not set ++# CONFIG_USB_GADGET_DUALSPEED is not set ++# CONFIG_USB_ZERO is not set ++# CONFIG_USB_AUDIO is not set ++CONFIG_USB_ETH=m ++CONFIG_USB_ETH_RNDIS=y ++# CONFIG_USB_ETH_EEM is not set ++CONFIG_USB_GADGETFS=m ++CONFIG_USB_FILE_STORAGE=m ++# CONFIG_USB_FILE_STORAGE_TEST is not set ++CONFIG_USB_G_SERIAL=m ++# CONFIG_USB_MIDI_GADGET is not set ++CONFIG_USB_G_PRINTER=m ++CONFIG_USB_CDC_COMPOSITE=m ++ ++# ++# OTG and related infrastructure ++# ++# CONFIG_USB_GPIO_VBUS is not set ++# CONFIG_NOP_USB_XCEIV 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 is not set ++# CONFIG_EXT2_FS_XIP is not set ++CONFIG_EXT3_FS=y ++# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set ++# CONFIG_EXT3_FS_XATTR is not set ++# CONFIG_EXT4_FS is not set ++CONFIG_JBD=y ++CONFIG_FS_MBCACHE=y ++# CONFIG_REISERFS_FS is not set ++# CONFIG_JFS_FS is not set ++CONFIG_FS_POSIX_ACL=y ++# CONFIG_XFS_FS is not set ++# CONFIG_GFS2_FS is not set ++# CONFIG_OCFS2_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 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=y ++# CONFIG_MSDOS_FS is not set ++CONFIG_VFAT_FS=y ++CONFIG_FAT_DEFAULT_CODEPAGE=437 ++CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" ++# 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=y ++CONFIG_JFFS2_FS_DEBUG=0 ++CONFIG_JFFS2_FS_WRITEBUFFER=y ++# CONFIG_JFFS2_FS_WBUF_VERIFY is not set ++CONFIG_JFFS2_SUMMARY=y ++# CONFIG_JFFS2_FS_XATTR is not set ++# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set ++CONFIG_JFFS2_ZLIB=y ++# CONFIG_JFFS2_LZO is not set ++CONFIG_JFFS2_RTIME=y ++# CONFIG_JFFS2_RUBIN 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 ++CONFIG_NETWORK_FILESYSTEMS=y ++CONFIG_NFS_FS=y ++CONFIG_NFS_V3=y ++CONFIG_NFS_V3_ACL=y ++CONFIG_NFS_V4=y ++# CONFIG_NFS_V4_1 is not set ++CONFIG_ROOT_NFS=y ++# CONFIG_NFSD is not set ++CONFIG_LOCKD=y ++CONFIG_LOCKD_V4=y ++CONFIG_NFS_ACL_SUPPORT=y ++CONFIG_NFS_COMMON=y ++CONFIG_SUNRPC=y ++CONFIG_SUNRPC_GSS=y ++CONFIG_RPCSEC_GSS_KRB5=y ++# CONFIG_RPCSEC_GSS_SPKM3 is not set ++# CONFIG_SMB_FS is not set ++CONFIG_CIFS=m ++# CONFIG_CIFS_STATS is not set ++CONFIG_CIFS_WEAK_PW_HASH=y ++CONFIG_CIFS_XATTR=y ++CONFIG_CIFS_POSIX=y ++# CONFIG_CIFS_DEBUG2 is not set ++# CONFIG_CIFS_EXPERIMENTAL is not set ++# CONFIG_NCP_FS is not set ++# CONFIG_CODA_FS is not set ++# CONFIG_AFS_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="iso8859-1" ++CONFIG_NLS_CODEPAGE_437=y ++# CONFIG_NLS_CODEPAGE_737 is not set ++# CONFIG_NLS_CODEPAGE_775 is not set ++CONFIG_NLS_CODEPAGE_850=y ++# 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 is not set ++CONFIG_NLS_ISO8859_1=y ++# 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=y ++# CONFIG_DLM is not set ++ ++# ++# Kernel hacking ++# ++# CONFIG_PRINTK_TIME is not set ++CONFIG_ENABLE_WARN_DEPRECATED=y ++# 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 is not set ++# 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_LATENCYTOP is not set ++# CONFIG_SYSCTL_SYSCALL_CHECK is not set ++CONFIG_HAVE_FUNCTION_TRACER=y ++CONFIG_TRACING_SUPPORT=y ++# CONFIG_FTRACE 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 ++ ++# ++# 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=y ++ ++# ++# Crypto core or helper ++# ++CONFIG_CRYPTO_ALGAPI=y ++CONFIG_CRYPTO_ALGAPI2=y ++CONFIG_CRYPTO_AEAD2=y ++CONFIG_CRYPTO_BLKCIPHER=y ++CONFIG_CRYPTO_BLKCIPHER2=y ++CONFIG_CRYPTO_HASH=y ++CONFIG_CRYPTO_HASH2=y ++CONFIG_CRYPTO_RNG2=y ++CONFIG_CRYPTO_PCOMP=y ++CONFIG_CRYPTO_MANAGER=y ++CONFIG_CRYPTO_MANAGER2=y ++# CONFIG_CRYPTO_GF128MUL is not set ++# CONFIG_CRYPTO_NULL is not set ++CONFIG_CRYPTO_WORKQUEUE=y ++# CONFIG_CRYPTO_CRYPTD is not set ++# CONFIG_CRYPTO_AUTHENC is not set ++# CONFIG_CRYPTO_TEST is not set ++ ++# ++# Authenticated Encryption with Associated Data ++# ++# CONFIG_CRYPTO_CCM is not set ++# CONFIG_CRYPTO_GCM is not set ++# CONFIG_CRYPTO_SEQIV is not set ++ ++# ++# Block modes ++# ++CONFIG_CRYPTO_CBC=y ++# CONFIG_CRYPTO_CTR is not set ++# CONFIG_CRYPTO_CTS is not set ++# CONFIG_CRYPTO_ECB is not set ++# CONFIG_CRYPTO_LRW is not set ++# CONFIG_CRYPTO_PCBC is not set ++# CONFIG_CRYPTO_XTS is not set ++ ++# ++# Hash modes ++# ++# CONFIG_CRYPTO_HMAC is not set ++# CONFIG_CRYPTO_XCBC is not set ++# CONFIG_CRYPTO_VMAC is not set ++ ++# ++# Digest ++# ++# CONFIG_CRYPTO_CRC32C is not set ++# CONFIG_CRYPTO_GHASH is not set ++# CONFIG_CRYPTO_MD4 is not set ++CONFIG_CRYPTO_MD5=y ++# CONFIG_CRYPTO_MICHAEL_MIC is not set ++# CONFIG_CRYPTO_RMD128 is not set ++# CONFIG_CRYPTO_RMD160 is not set ++# CONFIG_CRYPTO_RMD256 is not set ++# CONFIG_CRYPTO_RMD320 is not set ++# CONFIG_CRYPTO_SHA1 is not set ++# CONFIG_CRYPTO_SHA256 is not set ++# CONFIG_CRYPTO_SHA512 is not set ++# CONFIG_CRYPTO_TGR192 is not set ++# CONFIG_CRYPTO_WP512 is not set ++ ++# ++# Ciphers ++# ++# CONFIG_CRYPTO_AES is not set ++# CONFIG_CRYPTO_ANUBIS is not set ++# CONFIG_CRYPTO_ARC4 is not set ++# CONFIG_CRYPTO_BLOWFISH is not set ++# CONFIG_CRYPTO_CAMELLIA is not set ++# CONFIG_CRYPTO_CAST5 is not set ++# CONFIG_CRYPTO_CAST6 is not set ++CONFIG_CRYPTO_DES=y ++# CONFIG_CRYPTO_FCRYPT is not set ++# CONFIG_CRYPTO_KHAZAD is not set ++# CONFIG_CRYPTO_SALSA20 is not set ++# CONFIG_CRYPTO_SEED is not set ++# CONFIG_CRYPTO_SERPENT is not set ++# CONFIG_CRYPTO_TEA is not set ++# CONFIG_CRYPTO_TWOFISH is not set ++ ++# ++# Compression ++# ++# CONFIG_CRYPTO_DEFLATE is not set ++# CONFIG_CRYPTO_ZLIB is not set ++# CONFIG_CRYPTO_LZO is not set ++ ++# ++# Random Number Generation ++# ++# CONFIG_CRYPTO_ANSI_CPRNG is not set ++CONFIG_CRYPTO_HW=y ++# CONFIG_BINARY_PRINTF is not set ++ ++# ++# Library routines ++# ++CONFIG_BITREVERSE=y ++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=y ++CONFIG_CRC32=y ++CONFIG_CRC7=y ++# CONFIG_LIBCRC32C is not set ++CONFIG_ZLIB_INFLATE=y ++CONFIG_ZLIB_DEFLATE=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 ++CONFIG_NLATTR=y +diff --git a/arch/arm/configs/topasa900_defconfig b/arch/arm/configs/topasa900_defconfig +new file mode 100644 +index 0000000..a642018 +--- /dev/null ++++ b/arch/arm/configs/topasa900_defconfig +@@ -0,0 +1,1366 @@ ++# ++# Automatically generated make config: don't edit ++# Linux kernel version: 2.6.32 ++# Thu Jan 14 16:58:28 2010 ++# ++CONFIG_ARM=y ++CONFIG_SYS_SUPPORTS_APM_EMULATION=y ++CONFIG_GENERIC_GPIO=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 is not set ++CONFIG_SWAP=y ++CONFIG_SYSVIPC=y ++CONFIG_SYSVIPC_SYSCTL=y ++CONFIG_POSIX_MQUEUE=y ++CONFIG_POSIX_MQUEUE_SYSCTL=y ++# CONFIG_BSD_PROCESS_ACCT is not set ++# CONFIG_TASKSTATS is not set ++# CONFIG_AUDIT 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=14 ++# 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_NET_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 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 ++ ++# ++# Kernel Performance Events And Counters ++# ++CONFIG_VM_EVENT_COUNTERS=y ++CONFIG_COMPAT_BRK=y ++CONFIG_SLAB=y ++# CONFIG_SLUB is not set ++# 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 ++ ++# ++# GCOV-based kernel profiling ++# ++CONFIG_SLOW_WORK=y ++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 is not set ++# CONFIG_MODULE_SRCVERSION_ALL is not set ++CONFIG_BLOCK=y ++# CONFIG_LBDAF is not set ++# CONFIG_BLK_DEV_BSG is not set ++# 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=y ++# CONFIG_DEFAULT_DEADLINE is not set ++# CONFIG_DEFAULT_CFQ is not set ++# CONFIG_DEFAULT_NOOP is not set ++CONFIG_DEFAULT_IOSCHED="anticipatory" ++# 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_IMX is not set ++CONFIG_ARCH_TMPA910=y ++# 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_CPU_TMPA910 is not set ++CONFIG_CPU_TMPA900=y ++CONFIG_MACH_TOPASA900=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 ++ ++# ++# Bus support ++# ++# CONFIG_PCI_SYSCALL is not set ++# CONFIG_ARCH_SUPPORTS_MSI is not set ++# CONFIG_PCCARD is not set ++ ++# ++# Kernel Features ++# ++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 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="mem=63M mtdparts=physmap-flash.0:384k(bootloader)ro,5120k(kernel),-(root) root=/dev/mtdblock2 rdinit=/init" ++# CONFIG_XIP_KERNEL is not set ++# CONFIG_KEXEC is not set ++ ++# ++# CPU Power Management ++# ++CONFIG_CPU_IDLE=y ++CONFIG_CPU_IDLE_GOV_LADDER=y ++ ++# ++# Floating point emulation ++# ++ ++# ++# At least one emulation must be selected ++# ++CONFIG_VFP=y ++ ++# ++# 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=y ++ ++# ++# Networking options ++# ++CONFIG_PACKET=y ++CONFIG_PACKET_MMAP=y ++CONFIG_UNIX=y ++CONFIG_XFRM=y ++# CONFIG_XFRM_USER is not set ++# CONFIG_XFRM_SUB_POLICY is not set ++# CONFIG_XFRM_MIGRATE is not set ++# CONFIG_XFRM_STATISTICS is not set ++# CONFIG_NET_KEY is not set ++CONFIG_INET=y ++CONFIG_IP_MULTICAST=y ++# CONFIG_IP_ADVANCED_ROUTER is not set ++CONFIG_IP_FIB_HASH=y ++CONFIG_IP_PNP=y ++CONFIG_IP_PNP_DHCP=y ++CONFIG_IP_PNP_BOOTP=y ++CONFIG_IP_PNP_RARP=y ++CONFIG_NET_IPIP=y ++# CONFIG_NET_IPGRE is not set ++# CONFIG_IP_MROUTE is not set ++# CONFIG_ARPD is not set ++CONFIG_SYN_COOKIES=y ++# CONFIG_INET_AH is not set ++# CONFIG_INET_ESP is not set ++# CONFIG_INET_IPCOMP is not set ++# CONFIG_INET_XFRM_TUNNEL is not set ++CONFIG_INET_TUNNEL=y ++CONFIG_INET_XFRM_MODE_TRANSPORT=y ++CONFIG_INET_XFRM_MODE_TUNNEL=y ++CONFIG_INET_XFRM_MODE_BEET=y ++# CONFIG_INET_LRO is not set ++CONFIG_INET_DIAG=y ++CONFIG_INET_TCP_DIAG=y ++# CONFIG_TCP_CONG_ADVANCED is not set ++CONFIG_TCP_CONG_CUBIC=y ++CONFIG_DEFAULT_TCP_CONG="cubic" ++# CONFIG_TCP_MD5SIG is not set ++# CONFIG_IPV6 is not set ++# CONFIG_NETWORK_SECMARK is not set ++# CONFIG_NETFILTER is not set ++# CONFIG_IP_DCCP is not set ++# CONFIG_IP_SCTP is not set ++# CONFIG_RDS is not set ++# CONFIG_TIPC is not set ++# CONFIG_ATM is not set ++# CONFIG_BRIDGE is not set ++# CONFIG_NET_DSA is not set ++# CONFIG_VLAN_8021Q is not set ++# CONFIG_DECNET is not set ++# CONFIG_LLC2 is not set ++# CONFIG_IPX is not set ++# CONFIG_ATALK is not set ++# CONFIG_X25 is not set ++# CONFIG_LAPB is not set ++# CONFIG_ECONET is not set ++# CONFIG_WAN_ROUTER is not set ++# CONFIG_PHONET is not set ++# CONFIG_IEEE802154 is not set ++# CONFIG_NET_SCHED is not set ++# CONFIG_DCB is not set ++ ++# ++# Network testing ++# ++# CONFIG_NET_PKTGEN is not set ++# CONFIG_HAMRADIO is not set ++# CONFIG_CAN is not set ++# CONFIG_IRDA is not set ++# CONFIG_BT is not set ++# CONFIG_AF_RXRPC is not set ++# CONFIG_WIRELESS is not set ++# CONFIG_WIMAX is not set ++# CONFIG_RFKILL is not set ++# CONFIG_NET_9P 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_DEBUG_DRIVER is not set ++# CONFIG_DEBUG_DEVRES is not set ++# CONFIG_SYS_HYPERVISOR is not set ++# CONFIG_CONNECTOR 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=y ++CONFIG_MTD_GEN_PROBE=y ++CONFIG_MTD_CFI_ADV_OPTIONS=y ++CONFIG_MTD_CFI_NOSWAP=y ++# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set ++# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set ++CONFIG_MTD_CFI_GEOMETRY=y ++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_OTP is not set ++CONFIG_MTD_CFI_INTELEXT=y ++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=y ++CONFIG_MTD_PHYSMAP_START=0x20000000 ++CONFIG_MTD_PHYSMAP_LEN=0x02000000 ++CONFIG_MTD_PHYSMAP_BANKWIDTH=2 ++# CONFIG_MTD_ARM_INTEGRATOR is not set ++# CONFIG_MTD_IMPA7 is not set ++# CONFIG_MTD_PLATRAM is not set ++ ++# ++# Self-contained MTD device drivers ++# ++# CONFIG_MTD_DATAFLASH is not set ++# CONFIG_MTD_M25P80 is not set ++# CONFIG_MTD_SST25L is not set ++# 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=y ++# CONFIG_MTD_NAND_VERIFY_WRITE is not set ++# CONFIG_MTD_NAND_ECC_SMC is not set ++# CONFIG_MTD_NAND_MUSEUM_IDS is not set ++# CONFIG_MTD_NAND_GPIO is not set ++CONFIG_MTD_NAND_IDS=y ++# CONFIG_MTD_NAND_DISKONCHIP is not set ++# CONFIG_MTD_NAND_NANDSIM is not set ++# CONFIG_MTD_NAND_PLATFORM is not set ++CONFIG_MTD_NAND_TMPA910=y ++# 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 ++# CONFIG_BLK_DEV_NBD is not set ++# CONFIG_BLK_DEV_RAM is not set ++# CONFIG_CDROM_PKTCDVD is not set ++# CONFIG_ATA_OVER_ETH is not set ++# CONFIG_MG_DISK is not set ++# CONFIG_MISC_DEVICES is not set ++CONFIG_HAVE_IDE=y ++# CONFIG_IDE is not set ++ ++# ++# SCSI device support ++# ++# 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=y ++# CONFIG_BLK_DEV_SR_VENDOR is not set ++CONFIG_CHR_DEV_SG=y ++# 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_ISCSI_ATTRS is not set ++# CONFIG_SCSI_SAS_LIBSAS is not set ++# CONFIG_SCSI_SRP_ATTRS is not set ++CONFIG_SCSI_LOWLEVEL=y ++# CONFIG_ISCSI_TCP is not set ++# 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 is not set ++# CONFIG_MD is not set ++CONFIG_NETDEVICES=y ++# CONFIG_DUMMY is not set ++# CONFIG_BONDING is not set ++# CONFIG_MACVLAN is not set ++# CONFIG_EQUALIZER is not set ++# CONFIG_TUN is not set ++# CONFIG_VETH is not set ++# CONFIG_PHYLIB is not set ++CONFIG_NET_ETHERNET=y ++CONFIG_MII=y ++# CONFIG_AX88796 is not set ++# CONFIG_SMC91X is not set ++CONFIG_DM9000=y ++CONFIG_DM9000_DEBUGLEVEL=0 ++# CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL is not set ++# CONFIG_ENC28J60 is not set ++# CONFIG_ETHOC is not set ++# CONFIG_SMC911X is not set ++# CONFIG_SMSC911X is not set ++# CONFIG_DNET is not set ++# CONFIG_IBM_NEW_EMAC_ZMII is not set ++# CONFIG_IBM_NEW_EMAC_RGMII is not set ++# CONFIG_IBM_NEW_EMAC_TAH is not set ++# CONFIG_IBM_NEW_EMAC_EMAC4 is not set ++# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set ++# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set ++# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set ++# CONFIG_B44 is not set ++# CONFIG_KS8842 is not set ++# CONFIG_KS8851 is not set ++# CONFIG_KS8851_MLL is not set ++# CONFIG_NETDEV_1000 is not set ++# CONFIG_NETDEV_10000 is not set ++CONFIG_WLAN=y ++# CONFIG_WLAN_PRE80211 is not set ++# CONFIG_WLAN_80211 is not set ++ ++# ++# Enable WiMAX (Networking options) to see the WiMAX drivers ++# ++# CONFIG_WAN is not set ++# CONFIG_PPP is not set ++# CONFIG_SLIP is not set ++# CONFIG_NETCONSOLE is not set ++# CONFIG_NETPOLL is not set ++# CONFIG_NET_POLL_CONTROLLER is not set ++# CONFIG_ISDN 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 ++ ++# ++# 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=y ++# CONFIG_INPUT_EVBUG is not set ++ ++# ++# Input Device Drivers ++# ++CONFIG_INPUT_KEYBOARD=y ++# CONFIG_KEYBOARD_ADP5588 is not set ++# CONFIG_KEYBOARD_ATKBD is not set ++# CONFIG_QT2160 is not set ++# CONFIG_KEYBOARD_LKKBD is not set ++CONFIG_KEYBOARD_GPIO=y ++# CONFIG_KEYBOARD_MATRIX is not set ++# CONFIG_KEYBOARD_MAX7359 is not set ++# CONFIG_KEYBOARD_NEWTON is not set ++# CONFIG_KEYBOARD_OPENCORES is not set ++# CONFIG_KEYBOARD_STOWAWAY is not set ++# CONFIG_KEYBOARD_SUNKBD is not set ++# CONFIG_KEYBOARD_XTKBD is not set ++CONFIG_INPUT_MOUSE=y ++# CONFIG_MOUSE_PS2 is not set ++# CONFIG_MOUSE_SERIAL is not set ++# CONFIG_MOUSE_APPLETOUCH is not set ++# CONFIG_MOUSE_BCM5974 is not set ++# CONFIG_MOUSE_VSXXXAA is not set ++# CONFIG_MOUSE_GPIO is not set ++# CONFIG_MOUSE_SYNAPTICS_I2C is not set ++# CONFIG_INPUT_JOYSTICK is not set ++# CONFIG_INPUT_TABLET is not set ++CONFIG_INPUT_TOUCHSCREEN=y ++# CONFIG_TOUCHSCREEN_ADS7846 is not set ++# CONFIG_TOUCHSCREEN_AD7877 is not set ++# CONFIG_TOUCHSCREEN_AD7879_I2C is not set ++# CONFIG_TOUCHSCREEN_AD7879_SPI is not set ++# CONFIG_TOUCHSCREEN_AD7879 is not set ++# CONFIG_TOUCHSCREEN_EETI is not set ++# CONFIG_TOUCHSCREEN_FUJITSU is not set ++# CONFIG_TOUCHSCREEN_GUNZE is not set ++# CONFIG_TOUCHSCREEN_ELO is not set ++# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set ++# CONFIG_TOUCHSCREEN_MCS5000 is not set ++# CONFIG_TOUCHSCREEN_MTOUCH is not set ++# CONFIG_TOUCHSCREEN_INEXIO is not set ++# CONFIG_TOUCHSCREEN_MK712 is not set ++# CONFIG_TOUCHSCREEN_PENMOUNT is not set ++CONFIG_TOUCHSCREEN_TMPA910=y ++# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set ++# CONFIG_TOUCHSCREEN_TOUCHWIN is not set ++# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set ++# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set ++# CONFIG_TOUCHSCREEN_TSC2007 is not set ++# CONFIG_INPUT_MISC is not set ++ ++# ++# Hardware I/O ports ++# ++CONFIG_SERIO=y ++CONFIG_SERIO_SERPORT=y ++# 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=y ++CONFIG_DEVKMEM=y ++# CONFIG_SERIAL_NONSTANDARD is not set ++ ++# ++# Serial drivers ++# ++# CONFIG_SERIAL_8250 is not set ++ ++# ++# Non-8250 serial port support ++# ++# CONFIG_SERIAL_MAX3100 is not set ++CONFIG_SERIAL_TMPA910=y ++CONFIG_SERIAL_TMPA910_CONSOLE=y ++CONFIG_SERIAL_TMPA910_CONSOLE_PREFERED=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=y ++# CONFIG_HW_RANDOM_TIMERIOMEM is not set ++# CONFIG_R3964 is not set ++# CONFIG_RAW_DRIVER is not set ++# CONFIG_TCG_TPM is not set ++CONFIG_I2C=y ++CONFIG_I2C_BOARDINFO=y ++CONFIG_I2C_COMPAT=y ++CONFIG_I2C_CHARDEV=y ++CONFIG_I2C_HELPER_AUTO=y ++ ++# ++# I2C Hardware Bus support ++# ++CONFIG_I2C_TMPA910=y ++ ++# ++# I2C system bus drivers (mostly embedded / system-on-chip) ++# ++# CONFIG_I2C_GPIO is not set ++# CONFIG_I2C_OCORES is not set ++# CONFIG_I2C_SIMTEC is not set ++ ++# ++# External I2C/SMBus adapter drivers ++# ++# CONFIG_I2C_PARPORT_LIGHT is not set ++# CONFIG_I2C_TAOS_EVM is not set ++ ++# ++# Other I2C/SMBus bus drivers ++# ++# CONFIG_I2C_PCA_PLATFORM is not set ++# CONFIG_I2C_STUB is not set ++ ++# ++# Miscellaneous I2C Chip support ++# ++# CONFIG_DS1682 is not set ++# 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=y ++# CONFIG_SPI_DEBUG is not set ++CONFIG_SPI_MASTER=y ++ ++# ++# SPI Master Controller Drivers ++# ++# CONFIG_SPI_BITBANG is not set ++# CONFIG_SPI_GPIO is not set ++CONFIG_SPI_TMPA910=y ++ ++# ++# SPI Protocol Masters ++# ++CONFIG_SPI_SPIDEV=y ++# CONFIG_SPI_TLE62X0 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: ++# ++ ++# ++# I2C GPIO expanders: ++# ++# CONFIG_GPIO_MAX732X is not set ++# CONFIG_GPIO_PCA953X is not set ++# CONFIG_GPIO_PCF857X is not set ++ ++# ++# PCI GPIO expanders: ++# ++ ++# ++# SPI GPIO expanders: ++# ++# CONFIG_GPIO_MAX7301 is not set ++# CONFIG_GPIO_MCP23S08 is not set ++# CONFIG_GPIO_MC33880 is not set ++ ++# ++# 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_TPS65010 is not set ++# CONFIG_TWL4030_CORE is not set ++# CONFIG_MFD_TMIO is not set ++# CONFIG_MFD_TC6393XB is not set ++# CONFIG_PMIC_DA903X is not set ++# CONFIG_MFD_WM8400 is not set ++# CONFIG_MFD_WM831X is not set ++# CONFIG_MFD_WM8350_I2C is not set ++# CONFIG_MFD_PCF50633 is not set ++# CONFIG_MFD_MC13783 is not set ++# CONFIG_AB3100_CORE is not set ++# CONFIG_EZX_PCAP 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=y ++# CONFIG_FIRMWARE_EDID is not set ++# CONFIG_FB_DDC is not set ++# CONFIG_FB_BOOT_VESA_SUPPORT is not set ++CONFIG_FB_CFB_FILLRECT=y ++CONFIG_FB_CFB_COPYAREA=y ++CONFIG_FB_CFB_IMAGEBLIT=y ++# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set ++# CONFIG_FB_SYS_FILLRECT is not set ++# CONFIG_FB_SYS_COPYAREA is not set ++# CONFIG_FB_SYS_IMAGEBLIT is not set ++# CONFIG_FB_FOREIGN_ENDIAN is not set ++# CONFIG_FB_SYS_FOPS is not set ++# CONFIG_FB_SVGALIB is not set ++# CONFIG_FB_MACMODES is not set ++# CONFIG_FB_BACKLIGHT is not set ++# CONFIG_FB_MODE_HELPERS is not set ++# CONFIG_FB_TILEBLITTING is not set ++ ++# ++# Frame buffer hardware drivers ++# ++CONFIG_FB_TMPA910=y ++# CONFIG_FB_S1D13XXX is not set ++# CONFIG_FB_VIRTUAL is not set ++# CONFIG_FB_METRONOME is not set ++# CONFIG_FB_MB862XX is not set ++# CONFIG_FB_BROADSHEET is not set ++CONFIG_BACKLIGHT_LCD_SUPPORT=y ++CONFIG_LCD_CLASS_DEVICE=y ++# CONFIG_LCD_LMS283GF05 is not set ++# CONFIG_LCD_LTV350QV is not set ++# CONFIG_LCD_ILI9320 is not set ++# CONFIG_LCD_TDO24M is not set ++# CONFIG_LCD_VGG2432A4 is not set ++# CONFIG_LCD_PLATFORM is not set ++CONFIG_BACKLIGHT_CLASS_DEVICE=y ++CONFIG_BACKLIGHT_GENERIC=y ++ ++# ++# Display device support ++# ++CONFIG_DISPLAY_SUPPORT=y ++ ++# ++# Display hardware drivers ++# ++ ++# ++# Console display driver support ++# ++# CONFIG_VGA_CONSOLE is not set ++CONFIG_DUMMY_CONSOLE=y ++CONFIG_FRAMEBUFFER_CONSOLE=y ++# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set ++CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y ++CONFIG_FONTS=y ++# CONFIG_FONT_8x8 is not set ++# CONFIG_FONT_8x16 is not set ++# CONFIG_FONT_6x11 is not set ++# CONFIG_FONT_7x14 is not set ++# CONFIG_FONT_PEARL_8x8 is not set ++# CONFIG_FONT_ACORN_8x8 is not set ++CONFIG_FONT_MINI_4x6=y ++# CONFIG_FONT_SUN8x16 is not set ++# CONFIG_FONT_SUN12x22 is not set ++# CONFIG_FONT_10x18 is not set ++CONFIG_LOGO=y ++# CONFIG_LOGO_LINUX_MONO is not set ++# CONFIG_LOGO_LINUX_VGA16 is not set ++CONFIG_LOGO_LINUX_CLUT224=y ++CONFIG_SOUND=y ++CONFIG_SOUND_OSS_CORE=y ++CONFIG_SOUND_OSS_CORE_PRECLAIM=y ++CONFIG_SND=y ++CONFIG_SND_TIMER=y ++CONFIG_SND_PCM=y ++# CONFIG_SND_SEQUENCER is not set ++CONFIG_SND_OSSEMUL=y ++CONFIG_SND_MIXER_OSS=y ++CONFIG_SND_PCM_OSS=y ++CONFIG_SND_PCM_OSS_PLUGINS=y ++# CONFIG_SND_DYNAMIC_MINORS is not set ++CONFIG_SND_SUPPORT_OLD_API=y ++CONFIG_SND_VERBOSE_PROCFS=y ++# CONFIG_SND_VERBOSE_PRINTK is not set ++# CONFIG_SND_DEBUG is not set ++# CONFIG_SND_RAWMIDI_SEQ is not set ++# CONFIG_SND_OPL3_LIB_SEQ is not set ++# CONFIG_SND_OPL4_LIB_SEQ is not set ++# CONFIG_SND_SBAWE_SEQ is not set ++# CONFIG_SND_EMU10K1_SEQ is not set ++CONFIG_SND_DRIVERS=y ++# CONFIG_SND_DUMMY is not set ++# CONFIG_SND_MTPAV is not set ++# CONFIG_SND_SERIAL_U16550 is not set ++# CONFIG_SND_MPU401 is not set ++CONFIG_SND_ARM=y ++CONFIG_SND_TMPA910_WM8976=y ++# CONFIG_SND_TMPA910_PCM1773 is not set ++CONFIG_SND_SPI=y ++# CONFIG_SND_SOC is not set ++# CONFIG_SOUND_PRIME is not set ++CONFIG_HID_SUPPORT=y ++CONFIG_HID=y ++# CONFIG_HIDRAW is not set ++# CONFIG_HID_PID is not set ++ ++# ++# Special HID drivers ++# ++CONFIG_USB_SUPPORT=y ++CONFIG_USB_ARCH_HAS_HCD=y ++CONFIG_USB_ARCH_HAS_OHCI=y ++# CONFIG_USB_ARCH_HAS_EHCI is not set ++# CONFIG_USB is not set ++ ++# ++# Enable Host or Gadget support to see Inventra options ++# ++ ++# ++# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ++# ++# CONFIG_USB_GADGET is not set ++ ++# ++# OTG and related infrastructure ++# ++# 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 is not set ++# CONFIG_EXT2_FS_XIP is not set ++CONFIG_EXT3_FS=y ++# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set ++# CONFIG_EXT3_FS_XATTR is not set ++# CONFIG_EXT4_FS is not set ++CONFIG_JBD=y ++CONFIG_FS_MBCACHE=y ++# CONFIG_REISERFS_FS is not set ++# CONFIG_JFS_FS is not set ++CONFIG_FS_POSIX_ACL=y ++# CONFIG_XFS_FS is not set ++# CONFIG_OCFS2_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 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=y ++# CONFIG_MSDOS_FS is not set ++CONFIG_VFAT_FS=y ++CONFIG_FAT_DEFAULT_CODEPAGE=437 ++CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" ++# 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=y ++CONFIG_JFFS2_FS_DEBUG=0 ++CONFIG_JFFS2_FS_WRITEBUFFER=y ++# CONFIG_JFFS2_FS_WBUF_VERIFY is not set ++CONFIG_JFFS2_SUMMARY=y ++# CONFIG_JFFS2_FS_XATTR is not set ++# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set ++CONFIG_JFFS2_ZLIB=y ++# CONFIG_JFFS2_LZO is not set ++CONFIG_JFFS2_RTIME=y ++# CONFIG_JFFS2_RUBIN 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 ++CONFIG_NETWORK_FILESYSTEMS=y ++CONFIG_NFS_FS=y ++CONFIG_NFS_V3=y ++CONFIG_NFS_V3_ACL=y ++CONFIG_NFS_V4=y ++# CONFIG_NFS_V4_1 is not set ++CONFIG_ROOT_NFS=y ++# CONFIG_NFSD is not set ++CONFIG_LOCKD=y ++CONFIG_LOCKD_V4=y ++CONFIG_NFS_ACL_SUPPORT=y ++CONFIG_NFS_COMMON=y ++CONFIG_SUNRPC=y ++CONFIG_SUNRPC_GSS=y ++CONFIG_RPCSEC_GSS_KRB5=y ++# CONFIG_RPCSEC_GSS_SPKM3 is not set ++# CONFIG_SMB_FS is not set ++CONFIG_CIFS=m ++# CONFIG_CIFS_STATS is not set ++CONFIG_CIFS_WEAK_PW_HASH=y ++CONFIG_CIFS_XATTR=y ++CONFIG_CIFS_POSIX=y ++# CONFIG_CIFS_DEBUG2 is not set ++# CONFIG_CIFS_EXPERIMENTAL is not set ++# CONFIG_NCP_FS is not set ++# CONFIG_CODA_FS is not set ++# CONFIG_AFS_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="iso8859-1" ++CONFIG_NLS_CODEPAGE_437=y ++# CONFIG_NLS_CODEPAGE_737 is not set ++# CONFIG_NLS_CODEPAGE_775 is not set ++CONFIG_NLS_CODEPAGE_850=y ++# 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 is not set ++CONFIG_NLS_ISO8859_1=y ++# 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=y ++# CONFIG_DLM is not set ++ ++# ++# Kernel hacking ++# ++# CONFIG_PRINTK_TIME is not set ++CONFIG_ENABLE_WARN_DEPRECATED=y ++# 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 is not set ++# 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_DEBUG_SLAB 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 is not set ++# 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 is not set ++# 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 is not set ++# 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 is not set ++CONFIG_SAMPLES=y ++# CONFIG_SAMPLE_KOBJECT is not set ++CONFIG_HAVE_ARCH_KGDB=y ++# CONFIG_KGDB is not set ++# CONFIG_ARM_UNWIND 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=y ++# CONFIG_DEBUG_ICEDCC 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=y ++ ++# ++# Crypto core or helper ++# ++CONFIG_CRYPTO_ALGAPI=y ++CONFIG_CRYPTO_ALGAPI2=y ++CONFIG_CRYPTO_AEAD2=y ++CONFIG_CRYPTO_BLKCIPHER=y ++CONFIG_CRYPTO_BLKCIPHER2=y ++CONFIG_CRYPTO_HASH=y ++CONFIG_CRYPTO_HASH2=y ++CONFIG_CRYPTO_RNG2=y ++CONFIG_CRYPTO_PCOMP=y ++CONFIG_CRYPTO_MANAGER=y ++CONFIG_CRYPTO_MANAGER2=y ++# CONFIG_CRYPTO_GF128MUL is not set ++# CONFIG_CRYPTO_NULL is not set ++CONFIG_CRYPTO_WORKQUEUE=y ++# CONFIG_CRYPTO_CRYPTD is not set ++# CONFIG_CRYPTO_AUTHENC is not set ++# CONFIG_CRYPTO_TEST is not set ++ ++# ++# Authenticated Encryption with Associated Data ++# ++# CONFIG_CRYPTO_CCM is not set ++# CONFIG_CRYPTO_GCM is not set ++# CONFIG_CRYPTO_SEQIV is not set ++ ++# ++# Block modes ++# ++CONFIG_CRYPTO_CBC=y ++# CONFIG_CRYPTO_CTR is not set ++# CONFIG_CRYPTO_CTS is not set ++# CONFIG_CRYPTO_ECB is not set ++# CONFIG_CRYPTO_LRW is not set ++# CONFIG_CRYPTO_PCBC is not set ++# CONFIG_CRYPTO_XTS is not set ++ ++# ++# Hash modes ++# ++# CONFIG_CRYPTO_HMAC is not set ++# CONFIG_CRYPTO_XCBC is not set ++# CONFIG_CRYPTO_VMAC is not set ++ ++# ++# Digest ++# ++# CONFIG_CRYPTO_CRC32C is not set ++# CONFIG_CRYPTO_GHASH is not set ++# CONFIG_CRYPTO_MD4 is not set ++CONFIG_CRYPTO_MD5=y ++# CONFIG_CRYPTO_MICHAEL_MIC is not set ++# CONFIG_CRYPTO_RMD128 is not set ++# CONFIG_CRYPTO_RMD160 is not set ++# CONFIG_CRYPTO_RMD256 is not set ++# CONFIG_CRYPTO_RMD320 is not set ++# CONFIG_CRYPTO_SHA1 is not set ++# CONFIG_CRYPTO_SHA256 is not set ++# CONFIG_CRYPTO_SHA512 is not set ++# CONFIG_CRYPTO_TGR192 is not set ++# CONFIG_CRYPTO_WP512 is not set ++ ++# ++# Ciphers ++# ++# CONFIG_CRYPTO_AES is not set ++# CONFIG_CRYPTO_ANUBIS is not set ++# CONFIG_CRYPTO_ARC4 is not set ++# CONFIG_CRYPTO_BLOWFISH is not set ++# CONFIG_CRYPTO_CAMELLIA is not set ++# CONFIG_CRYPTO_CAST5 is not set ++# CONFIG_CRYPTO_CAST6 is not set ++CONFIG_CRYPTO_DES=y ++# CONFIG_CRYPTO_FCRYPT is not set ++# CONFIG_CRYPTO_KHAZAD is not set ++# CONFIG_CRYPTO_SALSA20 is not set ++# CONFIG_CRYPTO_SEED is not set ++# CONFIG_CRYPTO_SERPENT is not set ++# CONFIG_CRYPTO_TEA is not set ++# CONFIG_CRYPTO_TWOFISH is not set ++ ++# ++# Compression ++# ++# CONFIG_CRYPTO_DEFLATE is not set ++# CONFIG_CRYPTO_ZLIB is not set ++# CONFIG_CRYPTO_LZO is not set ++ ++# ++# Random Number Generation ++# ++# CONFIG_CRYPTO_ANSI_CPRNG is not set ++CONFIG_CRYPTO_HW=y ++# CONFIG_BINARY_PRINTF is not set ++ ++# ++# Library routines ++# ++CONFIG_BITREVERSE=y ++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=y ++CONFIG_CRC32=y ++CONFIG_CRC7=y ++# CONFIG_LIBCRC32C is not set ++CONFIG_ZLIB_INFLATE=y ++CONFIG_ZLIB_DEFLATE=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 ++CONFIG_NLATTR=y +diff --git a/arch/arm/include/asm/mman.h b/arch/arm/include/asm/mman.h +index 41f99c5..8eebf89 100644 +--- a/arch/arm/include/asm/mman.h ++++ b/arch/arm/include/asm/mman.h +@@ -1,4 +1 @@ + #include +- +-#define arch_mmap_check(addr, len, flags) \ +- (((flags) & MAP_FIXED && (addr) < FIRST_USER_ADDRESS) ? -EINVAL : 0) +diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S +index 4f07168..fafce1b 100644 +--- a/arch/arm/kernel/calls.S ++++ b/arch/arm/kernel/calls.S +@@ -172,7 +172,7 @@ + /* 160 */ CALL(sys_sched_get_priority_min) + CALL(sys_sched_rr_get_interval) + CALL(sys_nanosleep) +- CALL(sys_mremap) ++ CALL(sys_arm_mremap) + CALL(sys_setresuid16) + /* 165 */ CALL(sys_getresuid16) + CALL(sys_ni_syscall) /* vm86 */ +diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S +index 2c1db77..f0fe95b 100644 +--- a/arch/arm/kernel/entry-common.S ++++ b/arch/arm/kernel/entry-common.S +@@ -416,12 +416,12 @@ sys_mmap2: + tst r5, #PGOFF_MASK + moveq r5, r5, lsr #PAGE_SHIFT - 12 + streq r5, [sp, #4] +- beq sys_mmap_pgoff ++ beq do_mmap2 + mov r0, #-EINVAL + mov pc, lr + #else + str r5, [sp, #4] +- b sys_mmap_pgoff ++ b do_mmap2 + #endif + ENDPROC(sys_mmap2) + +diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S +index 38ccbe1..edfcbe2 100644 +--- a/arch/arm/kernel/head.S ++++ b/arch/arm/kernel/head.S +@@ -74,6 +74,7 @@ + * crap here - that's what the boot loader (or in extreme, well justified + * circumstances, zImage) is for. + */ ++ + .section ".text.head", "ax" + ENTRY(stext) + setmode PSR_F_BIT | PSR_I_BIT | SVC_MODE, r9 @ ensure svc mode +@@ -102,6 +103,7 @@ ENTRY(stext) + THUMB( add r12, r10, #PROCINFO_INITFUNC ) + THUMB( mov pc, r12 ) + ENDPROC(stext) ++PB_ADDR: .word (0xf08013FC) + + #if defined(CONFIG_SMP) + ENTRY(secondary_startup) +diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c +index 0d96d01..cc8d459 100644 +--- a/arch/arm/kernel/process.c ++++ b/arch/arm/kernel/process.c +@@ -100,7 +100,7 @@ void arm_machine_restart(char mode, const char *cmd) + /* + * Now call the architecture specific reboot code. + */ +- arch_reset(mode, cmd); ++ arch_reset(mode); + + /* + * Whoops - the architecture was unable to reboot. +diff --git a/arch/arm/kernel/sys_arm.c b/arch/arm/kernel/sys_arm.c +index ae4027b..78ecaac 100644 +--- a/arch/arm/kernel/sys_arm.c ++++ b/arch/arm/kernel/sys_arm.c +@@ -28,6 +28,41 @@ + #include + #include + ++extern unsigned long do_mremap(unsigned long addr, unsigned long old_len, ++ unsigned long new_len, unsigned long flags, ++ unsigned long new_addr); ++ ++/* common code for old and new mmaps */ ++inline long do_mmap2( ++ unsigned long addr, unsigned long len, ++ unsigned long prot, unsigned long flags, ++ unsigned long fd, unsigned long pgoff) ++{ ++ int error = -EINVAL; ++ struct file * file = NULL; ++ ++ flags &= ~(MAP_EXECUTABLE | MAP_DENYWRITE); ++ ++ if (flags & MAP_FIXED && addr < FIRST_USER_ADDRESS) ++ goto out; ++ ++ error = -EBADF; ++ if (!(flags & MAP_ANONYMOUS)) { ++ file = fget(fd); ++ if (!file) ++ goto out; ++ } ++ ++ down_write(¤t->mm->mmap_sem); ++ error = do_mmap_pgoff(file, addr, len, prot, flags, pgoff); ++ up_write(¤t->mm->mmap_sem); ++ ++ if (file) ++ fput(file); ++out: ++ return error; ++} ++ + struct mmap_arg_struct { + unsigned long addr; + unsigned long len; +@@ -49,11 +84,29 @@ asmlinkage int old_mmap(struct mmap_arg_struct __user *arg) + if (a.offset & ~PAGE_MASK) + goto out; + +- error = sys_mmap_pgoff(a.addr, a.len, a.prot, a.flags, a.fd, a.offset >> PAGE_SHIFT); ++ error = do_mmap2(a.addr, a.len, a.prot, a.flags, a.fd, a.offset >> PAGE_SHIFT); + out: + return error; + } + ++asmlinkage unsigned long ++sys_arm_mremap(unsigned long addr, unsigned long old_len, ++ unsigned long new_len, unsigned long flags, ++ unsigned long new_addr) ++{ ++ unsigned long ret = -EINVAL; ++ ++ if (flags & MREMAP_FIXED && new_addr < FIRST_USER_ADDRESS) ++ goto out; ++ ++ down_write(¤t->mm->mmap_sem); ++ ret = do_mremap(addr, old_len, new_len, flags, new_addr); ++ up_write(¤t->mm->mmap_sem); ++ ++out: ++ return ret; ++} ++ + /* + * Perform the select(nd, in, out, ex, tv) and mmap() system + * calls. +diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c +index 36e4fb4..0976049 100644 +--- a/arch/arm/mach-davinci/dm646x.c ++++ b/arch/arm/mach-davinci/dm646x.c +@@ -789,14 +789,7 @@ static struct davinci_id dm646x_ids[] = { + .part_no = 0xb770, + .manufacturer = 0x017, + .cpu_id = DAVINCI_CPU_ID_DM6467, +- .name = "dm6467_rev1.x", +- }, +- { +- .variant = 0x1, +- .part_no = 0xb770, +- .manufacturer = 0x017, +- .cpu_id = DAVINCI_CPU_ID_DM6467, +- .name = "dm6467_rev3.x", ++ .name = "dm6467", + }, + }; + +diff --git a/arch/arm/mach-pxa/em-x270.c b/arch/arm/mach-pxa/em-x270.c +index 86a8732..aec7f42 100644 +--- a/arch/arm/mach-pxa/em-x270.c ++++ b/arch/arm/mach-pxa/em-x270.c +@@ -497,15 +497,16 @@ static int em_x270_usb_hub_init(void) + goto err_free_vbus_gpio; + + /* USB Hub power-on and reset */ +- gpio_direction_output(usb_hub_reset, 1); +- gpio_direction_output(GPIO9_USB_VBUS_EN, 0); ++ gpio_direction_output(usb_hub_reset, 0); + regulator_enable(em_x270_usb_ldo); +- gpio_set_value(usb_hub_reset, 0); + gpio_set_value(usb_hub_reset, 1); ++ gpio_set_value(usb_hub_reset, 0); + regulator_disable(em_x270_usb_ldo); + regulator_enable(em_x270_usb_ldo); +- gpio_set_value(usb_hub_reset, 0); +- gpio_set_value(GPIO9_USB_VBUS_EN, 1); ++ gpio_set_value(usb_hub_reset, 1); ++ ++ /* enable VBUS */ ++ gpio_direction_output(GPIO9_USB_VBUS_EN, 1); + + return 0; + +diff --git a/arch/arm/mach-tmpa910/Kconfig b/arch/arm/mach-tmpa910/Kconfig +new file mode 100644 +index 0000000..6aafab1 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/Kconfig +@@ -0,0 +1,34 @@ ++if ARCH_TMPA910 ++ ++choice ++ ++ prompt "Select TX09 Variant" ++ ++config CPU_TMPA910 ++ depends on ARCH_TMPA910 ++ bool "TMPA910 SoC" ++ ++config CPU_TMPA900 ++ depends on ARCH_TMPA910 ++ bool "TMPA900 SoC" ++ ++endchoice ++ ++ ++config MACH_TOPAS910 ++ bool "Toshiba Topas910 TMPA910 development board" ++ depends on CPU_TMPA910 ++ ++config DISPLAY_GLYN_640_480 ++ bool "Use Glyn VGA display instead of the regular QVGA." ++ depends on ARCH_TMPA910 ++ ++config MACH_TOPASA900 ++ bool "Toshiba TopasA900 TMPA900 development board" ++ depends on CPU_TMPA900 ++ ++config MACH_TONGA ++ bool "Glyn ARM9 / Tonga board" ++ depends on CPU_TMPA900 ++ ++endif +diff --git a/arch/arm/mach-tmpa910/Makefile b/arch/arm/mach-tmpa910/Makefile +new file mode 100644 +index 0000000..2a4fe7a +--- /dev/null ++++ b/arch/arm/mach-tmpa910/Makefile +@@ -0,0 +1,13 @@ ++# ++# Makefile for the linux kernel. ++# ++# Note! Dependencies are done automagically by 'make dep', which also ++# removes any old dependencies. DON'T put your own dependencies here ++# unless it's something special (ie not a .c file). ++ ++# Object file lists. ++ ++obj-y += irq.o time.o gpio.o led-topas910.o dma.o ++obj-$(CONFIG_MACH_TOPAS910) += topas910.o ++obj-$(CONFIG_MACH_TOPASA900) += topasa900.o ++obj-$(CONFIG_MACH_TONGA) += tonga.o +diff --git a/arch/arm/mach-tmpa910/Makefile.boot b/arch/arm/mach-tmpa910/Makefile.boot +new file mode 100644 +index 0000000..0e62bb5 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/Makefile.boot +@@ -0,0 +1,2 @@ ++zreladdr-y := 0x40008000 ++params_phys-y := 0x40000100 +diff --git a/arch/arm/mach-tmpa910/dma.c b/arch/arm/mach-tmpa910/dma.c +new file mode 100644 +index 0000000..ccf7ee3 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/dma.c +@@ -0,0 +1,245 @@ ++/* ++ * linux/arch/arm/mach-tmpa/dma.c ++ * ++ * tmpa910 DMA registration and IRQ dispatching ++ * based on arch/arm/mach-imx/dma.c ++ * Copyright (C) Yin, Fengwei (fengwei.yin@gmail.com) ++ * ++ * 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. ++ * ++ */ ++ ++#undef DEBUG ++ ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++ ++struct tmpa910_dma_channel tmpa910_dma_channels[TMPA910_DMA_CHANNELS]; ++ ++/** ++ * tmpa910_dma_enable - function to start TMPA910 DMA channel operation ++ */ ++void tmpa910_dma_enable(int dma_ch) ++{ ++ struct tmpa910_dma_channel *dma = &tmpa910_dma_channels[dma_ch]; ++ unsigned long flags; ++ ++ pr_debug("tmpa910 dma%d: tmpa910_dma_enable\n", dma_ch); ++ ++ if (!dma->name) { ++ printk(KERN_CRIT "%s: called for not allocated channel %d\n", ++ __FUNCTION__, dma_ch); ++ return; ++ } ++ ++ local_irq_save(flags); ++ DMA_CONFIG(dma_ch) = DMA_CONFIG(dma_ch) | DMA_CONFIG_EN; ++ local_irq_restore(flags); ++} ++ ++/** ++ * tmpa910_dma_disable - disable TMPA910 DMA channel operatin ++ */ ++void tmpa910_dma_disable(int dma_ch) ++{ ++ unsigned long flags; ++ ++ local_irq_save(flags); ++ DMA_CONFIG(dma_ch) = DMA_CONFIG(dma_ch) & ~DMA_CONFIG_EN; ++ local_irq_restore(flags); ++} ++ ++long tmpa910_dma_get_size(int dma_ch) ++{ ++ long size = DMA_CONTROL(dma_ch) & 0x0FFF; ++ long width; ++ width = (size >> 18) & 0x0007; ++ switch(width) ++ { ++ case 0: ++ size *= 1; ++ break; ++ case 1: ++ size *= 2; ++ break; ++ case 2: ++ size *= 4; ++ break; ++ } ++ return size; ++} ++ ++/** ++ * tmpa910_dma_request - request/allocate specified channel number ++ */ ++int tmpa910_dma_request(const char *name, ++ int prio, ++ void (*irq_handler)(int, void *), ++ void (*err_handler)(int, void *), ++ void *data) ++{ ++ unsigned long flags; ++ int i, found = 0; ++ ++ /* basic sanity checks */ ++ if (!name) ++ return -EINVAL; ++ ++ local_irq_save(flags); ++ ++ for (i = prio; i > 0; i--) { ++ if (tmpa910_dma_channels[i].name == NULL) { ++ found = 1; ++ break; ++ } ++ } ++ ++ if (!found) { ++ for (i = prio; i < TMPA910_DMA_CHANNELS; i ++) { ++ if (tmpa910_dma_channels[i].name == NULL) { ++ found = 1; ++ break; ++ } ++ } ++ } ++ ++ if (!found) { ++ local_irq_restore(flags); ++ return -ENODEV; ++ } ++ ++ if (tmpa910_dma_channels[i].name != NULL) { ++ local_irq_restore(flags); ++ return -ENODEV; ++ } ++ tmpa910_dma_channels[i].name = name; ++ tmpa910_dma_channels[i].err_handler = err_handler; ++ tmpa910_dma_channels[i].irq_handler = irq_handler; ++ tmpa910_dma_channels[i].data = data; ++ ++ local_irq_restore(flags); ++ return i; ++} ++ ++/** ++ * tmpa910_dma_free - release previously acquired channel ++ */ ++void tmpa910_dma_free(int dma_ch) ++{ ++ unsigned long flags; ++ struct tmpa910_dma_channel *dma = &tmpa910_dma_channels[dma_ch]; ++ ++ if (!dma->name) { ++ printk(KERN_CRIT ++ "%s: trying to free channel %d which is already freed\n", ++ __FUNCTION__, dma_ch); ++ return; ++ } ++ ++ local_irq_save(flags); ++ /* Disable interrupts */ ++ DMA_CONFIG(dma_ch) &= ~DMA_CONFIG_EN; ++ dma->name = NULL; ++ dma->err_handler = NULL; ++ dma->irq_handler = NULL; ++ local_irq_restore(flags); ++} ++ ++static irqreturn_t dma_err_handler(int irq, void *dev_id) ++{ ++ struct tmpa910_dma_channel *channel; ++ unsigned int err_status = DMA_ERR_STATUS; ++ int i; ++ ++ DMA_ERR_CLEAR = err_status; ++ ++ for (i = 0; i < TMPA910_DMA_CHANNELS; i++) { ++ if(!(err_status & (1 << i))) ++ continue; ++ ++ channel = &tmpa910_dma_channels[i]; ++ if (channel->name && channel->err_handler) { ++ channel->err_handler(i, channel->data); ++ continue; ++ } else { ++ printk(KERN_WARNING "spurous DMA IRQ: %d\n", i); ++ tmpa910_dma_disable(i); ++ } ++ } ++ return IRQ_HANDLED; ++} ++ ++static irqreturn_t dma_irq_handler(int irq, void *dev_id) ++{ ++ struct tmpa910_dma_channel *channel; ++ unsigned int tc_status = DMA_TC_STATUS; ++ int i; ++ ++ DMA_TC_CLEAR = tc_status; ++ ++ for (i = 0; i < TMPA910_DMA_CHANNELS; i++) { ++ if(!(tc_status & (1 << i))) ++ continue; ++ ++ channel = &tmpa910_dma_channels[i]; ++ if (channel->name && channel->irq_handler) { ++ channel->irq_handler(i, channel->data); ++ continue; ++ } else { ++ printk(KERN_WARNING "spurous DMA IRQ: %d\n", i); ++ tmpa910_dma_disable(i); ++ } ++ } ++ return IRQ_HANDLED; ++} ++ ++static int __init tmpa910_dma_init(void) ++{ ++ int ret; ++ int i; ++ ++ /* Initialize DMA module */ ++ DMA_CONFIGURE = 0x0001; /* DMA1/2: little endian, Active DMA */ ++ DMA_ERR_CLEAR = 0xff; /* Clear DMA error interrupt */ ++ DMA_TC_CLEAR = 0xff; /* Clear DMA TC interrupt */ ++ ++ ++ ret = request_irq(DMA_END_INT, dma_irq_handler, 0, "DMA", NULL); ++ if (ret) { ++ printk(KERN_CRIT "Wow! Can't register IRQ for DMA\n"); ++ return ret; ++ } ++ ++ ret = request_irq(DMA_ERR_INT, dma_err_handler, 0, "DMA", NULL); ++ if (ret) { ++ printk(KERN_CRIT "Wow! Can't register ERRIRQ for DMA\n"); ++ free_irq(DMA_END_INT, NULL); ++ return ret; ++ } ++ ++ for (i = 0; i < TMPA910_DMA_CHANNELS; i++) { ++ tmpa910_dma_channels[i].name = NULL; ++ tmpa910_dma_channels[i].dma_num = i; ++ } ++ ++ return ret; ++} ++ ++arch_initcall(tmpa910_dma_init); ++ ++EXPORT_SYMBOL(tmpa910_dma_enable); ++EXPORT_SYMBOL(tmpa910_dma_disable); ++EXPORT_SYMBOL(tmpa910_dma_get_size); ++EXPORT_SYMBOL(tmpa910_dma_request); ++EXPORT_SYMBOL(tmpa910_dma_free); +diff --git a/arch/arm/mach-tmpa910/gpio.c b/arch/arm/mach-tmpa910/gpio.c +new file mode 100644 +index 0000000..7885d31 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/gpio.c +@@ -0,0 +1,533 @@ ++/* ++ * linux/arch/arm/mach-tmpa910/gpio.c ++ * ++ * Generic TMPA910 / TMPA910CR / TMPA910CRAXBG GPIO handling ++ * ++ * Copyright (c) 2009 Florian Boor ++ * ++ * Based on mach-ep93xx/gpio.c ++ * Copyright (c) 2008 Ryan Mallon ++ * ++ * 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. ++ * ++ * GPIO functions implementation ++ * ++ * The GPIO ports are are organized in 16 ports of 8bit each, even if the ++ * are all 32bit. Not all ports allow all functions / directions. ++ * The same applies to interrupts. ++ * ++ * TODO: Allow sharing beween GPIO and non-GPIO IRQs ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++ ++ ++struct tmpa910_gpio_chip { ++ struct gpio_chip chip; ++ ++ unsigned int data_reg; /* Associated data register for GPIO bank */ ++ unsigned int data_dir_reg; /* Register for pin direction setting */ ++ ++ unsigned int input_mask; /* Bits that are allowed to be input */ ++ unsigned int output_mask; /* Bits that are allowed to be output */ ++ unsigned int irq_mask; /* Bits that can trigger an interrupt */ ++}; ++ ++#define to_tmpa910_gpio_chip(c) container_of(c, struct tmpa910_gpio_chip, chip) ++ ++ ++static int tmpa910_gpio_direction_input(struct gpio_chip *chip, unsigned offset) ++{ ++ struct tmpa910_gpio_chip *tmpa910_chip = to_tmpa910_gpio_chip(chip); ++ unsigned long flags; ++ u8 v; ++ ++ if (!(tmpa910_chip->input_mask & (1 << offset))) ++ return -EINVAL; ++ ++ local_irq_save(flags); ++ v = __raw_readb(tmpa910_chip->data_dir_reg); ++ v &= ~(1 << offset); ++ __raw_writeb(v, tmpa910_chip->data_dir_reg); ++ local_irq_restore(flags); ++ ++ return 0; ++} ++ ++static int tmpa910_gpio_direction_output(struct gpio_chip *chip, ++ unsigned offset, int val) ++{ ++ struct tmpa910_gpio_chip *tmpa910_chip = to_tmpa910_gpio_chip(chip); ++ unsigned long flags; ++ u8 v; ++ ++ if (!(tmpa910_chip->output_mask & (1 << offset))) ++ return -EINVAL; ++ ++ local_irq_save(flags); ++ ++ /* Set the value */ ++ v = __raw_readb(tmpa910_chip->data_reg); ++ if (val) ++ v |= (1 << offset); ++ else ++ v &= ~(1 << offset); ++ __raw_writeb(v, tmpa910_chip->data_reg); ++ ++ /* check if it can generate an interrupt, disable int in this case. */ ++ if (tmpa910_chip->irq_mask & (1 << offset)) { ++ v = __raw_readb(tmpa910_chip->data_reg + 0x414); ++ v &= ~(1 << offset); ++ __raw_writeb(v, tmpa910_chip->data_reg + 0x414); ++ } ++ ++ /* Set the direction */ ++ v = __raw_readb(tmpa910_chip->data_dir_reg); ++ v |= (1 << offset); ++ __raw_writeb(v, tmpa910_chip->data_dir_reg); ++ ++ local_irq_restore(flags); ++ ++ return 0; ++} ++ ++static int tmpa910_gpio_get(struct gpio_chip *chip, unsigned offset) ++{ ++ struct tmpa910_gpio_chip *tmpa910_chip = to_tmpa910_gpio_chip(chip); ++ ++ return !!(__raw_readb(tmpa910_chip->data_reg) & (1 << offset)); ++} ++ ++static void tmpa910_gpio_set(struct gpio_chip *chip, unsigned offset, int val) ++{ ++ struct tmpa910_gpio_chip *tmpa910_chip = to_tmpa910_gpio_chip(chip); ++ unsigned long flags; ++ u8 v; ++ ++ /* TODO: We could use the clever address based writing function here. */ ++ local_irq_save(flags); ++ v = __raw_readb(tmpa910_chip->data_reg); ++ if (val) ++ v |= (1 << offset); ++ else ++ v &= ~(1 << offset); ++ __raw_writeb(v, tmpa910_chip->data_reg); ++ local_irq_restore(flags); ++} ++ ++static void tmpa910_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) ++{ ++ struct tmpa910_gpio_chip *tmpa910_chip = to_tmpa910_gpio_chip(chip); ++ u8 data_reg, data_dir_reg; ++ int i; ++ ++ data_reg = __raw_readb(tmpa910_chip->data_reg); ++ data_dir_reg = __raw_readb(tmpa910_chip->data_dir_reg); ++ ++ for (i = 0; i < chip->ngpio; i++) ++ seq_printf(s, "GPIO %s%d: %s %s\n", chip->label, i, ++ (data_reg & (1 << i)) ? "set" : "clear", ++ (data_dir_reg & (1 << i)) ? "out" : "in"); ++} ++ ++ ++/* ++ * GPIO Interrupts ++ */ ++ ++struct tmpa910_gpio_irq { ++ unsigned int gpio; ++ unsigned int port; ++ unsigned int bit; ++}; ++ ++ ++/* Nothing is obvious here. We need to know quite a lot. */ ++static struct tmpa910_gpio_irq irq_gpio_desc[TMPA910_NUM_GPIO_IRQS] = { ++ { 0, PORTA, 0 }, ++ { 1, PORTA, 1 }, ++ { 2, PORTA, 2 }, ++ { 3, PORTA, 3 }, ++ { 4, PORTA, 4 }, ++ { 5, PORTA, 5 }, ++ { 6, PORTA, 6 }, ++ { 7, PORTA, 7 }, ++ { 21, PORTC, 5 }, ++ { 23, PORTC, 7 }, ++ { 30, PORTD, 6 }, ++ { 31, PORTD, 7 }, ++ { 47, PORTF, 7 }, ++ { 108, PORTN, 4 }, ++ { 109, PORTN, 5 }, ++ { 110, PORTN, 6 }, ++ { 111, PORTN, 7 }, ++ { 112, PORTP, 0 }, ++ { 113, PORTP, 1 }, ++ { 114, PORTP, 2 }, ++ { 115, PORTP, 3 }, ++ { 116, PORTP, 4 }, ++ { 117, PORTP, 5 }, ++ { 118, PORTP, 6 }, ++ { 119, PORTP, 7 }, ++ { 122, PORTR, 2 }, ++}; ++ ++#define GPIO_NUM_FOR_GPIO_IRQ(_x) (irq_gpio_desc[_x].gpio) ++ ++inline int __tmpa910_gpio_to_irq(unsigned gpio) { ++ int i; ++ ++ for (i = 0; i < TMPA910_NUM_GPIO_IRQS; i++) ++ if (irq_gpio_desc[i].gpio == gpio) ++ return (i + TMPA910_NUM_IRQS); ++ ++ BUG(); /* not found */ ++ return -1; ++} ++ ++inline int __tmpa910_irq_to_gpio(unsigned irq) { ++ return GPIO_NUM_FOR_GPIO_IRQ(irq - TMPA910_NUM_IRQS); ++} ++ ++/* ++ * Interrupt handlers ++ * The matching GPIO is easy to find: Port base GPIO number + bit offset. ++ */ ++static void tmpa910_gpioa_irq_handler(unsigned int irq, struct irq_desc *desc) ++{ ++ unsigned char status; ++ int i; ++ ++ desc->chip->ack(irq); ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTA)); ++ while (status) { ++ for (i = 0; i < 8; i++) { ++ if (status & (1 << i)) { ++ int gpio_irq = gpio_to_irq(0 + i); ++ generic_handle_irq(gpio_irq); ++ } ++ } ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTA)); ++ } ++ desc->chip->unmask(irq); ++} ++ ++static void tmpa910_gpioc_irq_handler(unsigned int irq, struct irq_desc *desc) ++{ ++ unsigned char status; ++ ++ desc->chip->ack(irq); ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTC)); ++ if (status & (1 << 5)) { ++ int gpio_irq = gpio_to_irq(16 + 5); ++ generic_handle_irq(gpio_irq); ++ } ++ if (status & (1 << 7)) { ++ int gpio_irq = gpio_to_irq(16 + 7); ++ generic_handle_irq(gpio_irq); ++ } ++ desc->chip->unmask(irq); ++} ++ ++static void tmpa910_gpiod_irq_handler(unsigned int irq, struct irq_desc *desc) ++{ ++ unsigned char status; ++ int i; ++ ++ desc->chip->ack(irq); ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTD)); ++ for (i = 6; i < 8; i++) { ++ if (status & (1 << i)) { ++ int gpio_irq = gpio_to_irq(24 + i); ++ generic_handle_irq(gpio_irq); ++ } ++ } ++ desc->chip->unmask(irq); ++} ++ ++ ++static void tmpa910_gpiof_irq_handler(unsigned int irq, struct irq_desc *desc) ++{ ++ unsigned char status; ++ ++ desc->chip->ack(irq); ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTF)); ++ if (status & (1 << 7)) { ++ int gpio_irq = gpio_to_irq(40 + 7); ++ generic_handle_irq(gpio_irq); ++ } ++ desc->chip->unmask(irq); ++} ++ ++ ++static void tmpa910_gpion_irq_handler(unsigned int irq, struct irq_desc *desc) ++{ ++ unsigned char status; ++ int i; ++ ++ desc->chip->ack(irq); ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTN)); ++ for (i = 4; i < 8; i++) { ++ if (status & (1 << i)) { ++ int gpio_irq = gpio_to_irq(104 + i); ++ generic_handle_irq(gpio_irq); ++ } ++ } ++ desc->chip->unmask(irq); ++} ++ ++static void tmpa910_gpiop_irq_handler(unsigned int irq, struct irq_desc *desc) ++{ ++ unsigned char status; ++ int i; ++ ++ desc->chip->ack(irq); ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTP)); ++ for (i = 0; i < 8; i++) { ++ if (status & (1 << i)) { ++ int gpio_irq = gpio_to_irq(112 + i); ++ generic_handle_irq(gpio_irq); ++ } ++ } ++ desc->chip->unmask(irq); ++} ++ ++static void tmpa910_gpior_irq_handler(unsigned int irq, struct irq_desc *desc) ++{ ++ unsigned char status; ++ ++ desc->chip->mask(irq); ++ desc->chip->ack(irq); ++ status = __raw_readb(TMPA910_GPIO_REG_MIS(PORTR)); ++ if (status & (1 << 2)) { ++ int gpio_irq = gpio_to_irq(120 + 2); ++ generic_handle_irq(gpio_irq); ++ } ++ desc->chip->unmask(irq); ++} ++ ++ ++static void tmpa910_gpio_irq_ack(unsigned int irq) ++{ ++ unsigned int gpio_irq = irq - TMPA910_NUM_IRQS; ++ struct tmpa910_gpio_irq girq; ++ ++ BUG_ON((irq < TMPA910_NUM_IRQS) || (gpio_irq >= TMPA910_NUM_GPIO_IRQS)); ++ ++ girq = irq_gpio_desc[gpio_irq]; ++ ++ __raw_writeb(1 << girq.bit, TMPA910_GPIO_REG_IC(girq.port)); ++} ++ ++static void tmpa910_gpio_irq_mask(unsigned int irq) ++{ ++ unsigned int gpio_irq = irq - TMPA910_NUM_IRQS; ++ struct tmpa910_gpio_irq girq; ++ unsigned char reg; ++ ++ BUG_ON((irq < TMPA910_NUM_IRQS) || (gpio_irq >= TMPA910_NUM_GPIO_IRQS)); ++ ++ girq = irq_gpio_desc[gpio_irq]; ++ reg = __raw_readb(TMPA910_GPIO_REG_IE(girq.port)); ++ reg &= ~(1 << girq.bit); ++ __raw_writeb(reg, TMPA910_GPIO_REG_IE(girq.port)); ++} ++ ++static void tmpa910_gpio_irq_unmask(unsigned int irq) ++{ ++ unsigned int gpio_irq = irq - TMPA910_NUM_IRQS; ++ struct tmpa910_gpio_irq girq; ++ unsigned char reg; ++ ++ BUG_ON((irq < TMPA910_NUM_IRQS) || (gpio_irq >= TMPA910_NUM_GPIO_IRQS)); ++ ++ girq = irq_gpio_desc[gpio_irq]; ++ reg = __raw_readb(TMPA910_GPIO_REG_IE(girq.port)); ++ reg |= (1 << girq.bit); ++ __raw_writeb(reg, TMPA910_GPIO_REG_IE(girq.port)); ++} ++ ++ ++static int tmpa910_gpio_irq_type(unsigned int irq, unsigned int type) ++{ ++ struct irq_desc *desc = irq_desc + irq; ++ const int gpio = irq_to_gpio(irq); ++ struct tmpa910_gpio_irq girq; ++ unsigned int gpio_irq = irq - TMPA910_NUM_IRQS; ++ unsigned char reg_level_sel; ++ unsigned char reg_dir_sel; ++ unsigned char reg_edge_both; ++ unsigned char reg_raise_high; ++ unsigned char reg_enable; ++ unsigned char port_mask; ++ unsigned long flags; ++ ++ BUG_ON((irq < TMPA910_NUM_IRQS) || (gpio_irq >= TMPA910_NUM_GPIO_IRQS)); ++ ++ girq = irq_gpio_desc[gpio_irq]; ++ reg_level_sel = __raw_readb(TMPA910_GPIO_REG_IS(girq.port)); ++ reg_edge_both = __raw_readb(TMPA910_GPIO_REG_IBE(girq.port)); ++ reg_raise_high = __raw_readb(TMPA910_GPIO_REG_IEV(girq.port)); ++ ++ port_mask = (1 << girq.bit); ++ ++ /* we following the prodcedure mentioned in section 3.9.3 of the data sheet */ ++ ++ local_irq_save(flags); ++ reg_dir_sel = __raw_readb(TMPA910_GPIO_REG_DIR(girq.port)); ++ reg_dir_sel &= ~(1 << girq.bit); ++ __raw_writeb(reg_dir_sel, TMPA910_GPIO_REG_DIR(girq.port)); ++ local_irq_restore(flags); ++ ++ tmpa910_gpio_irq_mask(irq); /* disable interrupt */ ++ ++ switch (type) { ++ case IRQ_TYPE_EDGE_RISING: ++ reg_level_sel &= ~port_mask; ++ reg_edge_both &= ~port_mask; ++ reg_raise_high |= port_mask; ++ desc->handle_irq = handle_edge_irq; ++ break; ++ case IRQ_TYPE_EDGE_FALLING: ++ reg_level_sel &= ~port_mask; ++ reg_edge_both &= ~port_mask; ++ reg_raise_high &= ~port_mask; ++ desc->handle_irq = handle_edge_irq; ++ break; ++ case IRQ_TYPE_LEVEL_HIGH: ++ reg_level_sel |= ~port_mask; ++ reg_edge_both &= ~port_mask; ++ reg_raise_high |= port_mask; ++ desc->handle_irq = handle_level_irq; ++ break; ++ case IRQ_TYPE_LEVEL_LOW: ++ reg_level_sel |= ~port_mask; ++ reg_edge_both &= ~port_mask; ++ reg_raise_high &= ~port_mask; ++ desc->handle_irq = handle_level_irq; ++ break; ++ case IRQ_TYPE_EDGE_BOTH: ++ reg_level_sel &= ~port_mask; ++ reg_edge_both |= port_mask; ++ desc->handle_irq = handle_edge_irq; ++ break; ++ default: ++ pr_err("tmpa910: failed to set irq type %d for gpio %d\n", ++ type, gpio); ++ return -EINVAL; ++ } ++ ++ /* apply settings */ ++ __raw_writeb(reg_level_sel, TMPA910_GPIO_REG_IS(girq.port)); ++ __raw_writeb(reg_edge_both, TMPA910_GPIO_REG_IBE(girq.port)); ++ __raw_writeb(reg_raise_high, TMPA910_GPIO_REG_IEV(girq.port)); ++ ++ tmpa910_gpio_irq_ack(irq); /* clear interrupt state */ ++ ++ desc->status &= ~IRQ_TYPE_SENSE_MASK; ++ desc->status |= type & IRQ_TYPE_SENSE_MASK; ++ ++ reg_enable = __raw_readb(TMPA910_GPIO_REG_IE(girq.port)); ++ reg_enable |= port_mask; ++ __raw_writeb(reg_enable, TMPA910_GPIO_REG_IE(girq.port)); ++ ++ return 0; ++} ++ ++static struct irq_chip tmpa910_gpio_irq_chip = { ++ .name = "GPIO", ++ .ack = tmpa910_gpio_irq_ack, ++ .mask = tmpa910_gpio_irq_mask, ++ .unmask = tmpa910_gpio_irq_unmask, ++ .set_type = tmpa910_gpio_irq_type, ++}; ++ ++ ++#define TMPA910_GPIO_BANK(name, port_base, base_gpio, im, om, irqm) \ ++ { \ ++ .chip = { \ ++ .label = name, \ ++ .direction_input = tmpa910_gpio_direction_input, \ ++ .direction_output = tmpa910_gpio_direction_output, \ ++ .get = tmpa910_gpio_get, \ ++ .set = tmpa910_gpio_set, \ ++ .dbg_show = tmpa910_gpio_dbg_show, \ ++ .base = base_gpio, \ ++ .ngpio = 8, \ ++ }, \ ++ .data_reg = TMPA910_GPIO_REG(port_base, PORT_OFS_DATA), \ ++ .data_dir_reg = TMPA910_GPIO_REG(port_base, PORT_OFS_DIR),\ ++ .input_mask = im, \ ++ .output_mask = om,\ ++ .irq_mask = irqm, \ ++ } ++ ++static struct tmpa910_gpio_chip tmpa910_gpio_banks[] = { ++ TMPA910_GPIO_BANK("A", PORTA, 0, 0xFF, 0x00, 0xFF), /* 8 interrupts */ ++ TMPA910_GPIO_BANK("B", PORTB, 8, 0x00, 0xFF, 0x00), ++ TMPA910_GPIO_BANK("C", PORTC, 16, 0xE0, 0xFF, 0xA0), /* 2 interrupts */ ++ TMPA910_GPIO_BANK("D", PORTD, 24, 0xFF, 0x00, 0xC0), /* 2 interrupts */ ++#ifndef CONFIG_CPU_TMPA900 ++ TMPA910_GPIO_BANK("E", PORTE, 32, 0xFF, 0x00, 0x00), ++#endif ++ TMPA910_GPIO_BANK("F", PORTF, 40, 0xCF, 0xC0, 0x80), /* 1 interrupt */ ++ TMPA910_GPIO_BANK("G", PORTG, 48, 0xFF, 0xFF, 0x00), ++#ifndef CONFIG_CPU_TMPA900 ++ TMPA910_GPIO_BANK("H", PORTH, 56, 0xFF, 0xFF, 0x00), ++#endif ++ TMPA910_GPIO_BANK("J", PORTJ, 72, 0x00, 0xFF, 0x00), ++ TMPA910_GPIO_BANK("K", PORTK, 80, 0x00, 0xFF, 0x00), ++ TMPA910_GPIO_BANK("L", PORTL, 88, 0x1F, 0x1F, 0x00), ++ TMPA910_GPIO_BANK("M", PORTM, 96, 0x0F, 0x0F, 0x00), ++ TMPA910_GPIO_BANK("N", PORTN, 104, 0xFF, 0xFF, 0xF0), /* 4 interrupts */ ++ TMPA910_GPIO_BANK("P", PORTP, 112, 0xFF, 0xFF, 0xFF), /* 8 interrupts */ ++ TMPA910_GPIO_BANK("R", PORTR, 120, 0x04, 0x07, 0x04), /* 1 interrupt */ ++ TMPA910_GPIO_BANK("T", PORTT, 128, 0xFF, 0xFF, 0x00), ++}; ++ ++static int __init tmpa910_gpio_init(void) ++{ ++ int i; ++ int gpio_irq; ++ ++ /* Register GPIO banks */ ++ for (i = 0; i < ARRAY_SIZE(tmpa910_gpio_banks); i++) ++ BUG_ON(gpiochip_add(&tmpa910_gpio_banks[i].chip) < 0); ++ ++ /* Now the interrupts */ ++ for (i = 0; i < TMPA910_NUM_GPIO_IRQS; i++) { ++ gpio_irq = gpio_to_irq(0) + i; ++ set_irq_chip(gpio_irq, &tmpa910_gpio_irq_chip); ++ set_irq_handler(gpio_irq, handle_level_irq); ++ set_irq_flags(gpio_irq, IRQF_VALID); ++ } ++ ++ /* Finally install the interrrupt handlers we need for the GPIOs */ ++ set_irq_chained_handler(INTR_VECT_GPIOA, tmpa910_gpioa_irq_handler); ++ set_irq_chained_handler(INTR_VECT_GPIOC, tmpa910_gpioc_irq_handler); ++#if !defined(CONFIG_TOUCHSCREEN_TMPA910) && !defined(CONFIG_TOUCHSCREEN_TMPA910_MODULE) ++ set_irq_chained_handler(INTR_VECT_GPIOD, tmpa910_gpiod_irq_handler); ++#endif ++ set_irq_chained_handler(INTR_VECT_GPIOF, tmpa910_gpiof_irq_handler); ++ set_irq_chained_handler(INTR_VECT_GPION, tmpa910_gpion_irq_handler); ++#if !defined(CONFIG_USB_ISP1362_HCD) && !defined(CONFIG_USB_ISP1362_HCD_MODULE) ++ set_irq_chained_handler(INTR_VECT_GPIOP, tmpa910_gpiop_irq_handler); ++#endif ++ set_irq_chained_handler(INTR_VECT_GPIOR, tmpa910_gpior_irq_handler); ++ ++ return 0; ++} ++ ++arch_initcall(tmpa910_gpio_init); +diff --git a/arch/arm/mach-tmpa910/include/mach/adc.h b/arch/arm/mach-tmpa910/include/mach/adc.h +new file mode 100644 +index 0000000..b1ea893 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/adc.h +@@ -0,0 +1,62 @@ ++/* ++ * Header file for TMPA910 TS Controller ++ * ++ * Data structure and register user interface ++ * ++ * Copyright (C) 2008 bplam 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 ++ */ ++#ifndef __TMPA910_ADC_H__ ++#define __TMPA910_ADC_H__ ++ ++ ++struct tmpa910_adc ++{ ++ uint32_t adreg0l; // 0x0000 a/d conversion result lower-order register 0 ++ uint32_t adreg0h; // 0x0004 a/d conversion result higher-order register 0 ++ uint32_t adreg1l; // 0x0008 a/d conversion result lower-order register 1 ++ uint32_t adreg1h; // 0x000c a/d conversion result higher-order register 1 ++ uint32_t adreg2l; // 0x0010 a/d conversion result lower-order register 2 ++ uint32_t adreg2h; // 0x0014 a/d conversion result higher-order register 2 ++ uint32_t adreg3l; // 0x0018 a/d conversion result lower-order register 3 ++ uint32_t adreg3h; // 0x001c a/d conversion result higher-order register 3 ++ uint32_t adreg4l; // 0x0020 a/d conversion result lower-order register 4 ++ uint32_t adreg4h; // 0x0024 a/d conversion result higher-order register 4 ++ uint32_t adreg5l; // 0x0028 a/d conversion result lower-order register 5 ++ uint32_t adreg5h; // 0x002c a/d conversion result higher-order register 5 ++ uint32_t rsd1; // 0x0030 reserved ++ uint32_t rsd2; // 0x0034 reserved ++ uint32_t rsd3; // 0x0038 reserved ++ uint32_t rsd4; // 0x003c reserved ++ uint32_t adregspl; // 0x0040 top-priority a/d conversion result lower-order register ++ uint32_t adregsph; // 0x0044 top-priority a/d conversion result higher-order register ++ uint32_t adcomregl; // 0x0048 a/d conversion result comparison lower-order register ++ uint32_t adcomregh; // 0x004c a/d conversion result comparison lower-order register ++ uint32_t admod0; // 0x0050 a/d mode control register 0 ++ uint32_t admod1; // 0x0054 a/d mode control register 1 ++ uint32_t admod2; // 0x0058 a/d mode control register 2 ++ uint32_t admod3; // 0x005c a/d mode control register 3 ++ uint32_t admod4; // 0x0060 a/d mode control register 4 ++ uint32_t rsd5; // 0x0064 reserved ++ uint32_t rsd6; // 0x0068 reserved ++ uint32_t rsd7; // 0x006c reserved ++ uint32_t adclk; // 0x0070 a/d conversion clock setting register ++ uint32_t adie; // 0x0074 a/d interrupt enable register ++ uint32_t adis; // 0x0078 a/d interrupt status register ++ uint32_t adic; // 0x007c a/d interrupt clear register ++}; ++ ++#endif /* __TMPA910_ADC_H__ */ +diff --git a/arch/arm/mach-tmpa910/include/mach/debug-macro.S b/arch/arm/mach-tmpa910/include/mach/debug-macro.S +new file mode 100644 +index 0000000..d8772bc +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/debug-macro.S +@@ -0,0 +1,56 @@ ++/* linux/include/asm-arm/arch-tmpa910/debug-macro.S ++ * ++ * Debugging macro include header ++ * ++ * Copyright (C) 1994-1999 Russell King ++ * ++ * 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. ++ * ++*/ ++ ++#include "hardware.h" ++#define UART0DR 0x00 ++#define UART0FR 0x18 ++#define FR_TXFE 0x40 ++#define FR_BUSY 0x08 ++ ++ .macro addruart,rx ++ mrc p15, 0, \rx, c1, c0 ++ tst \rx, #1 @ MMU enabled? ++ moveq \rx, #0xf2000000 @ physical ++ movne \rx, #io_p2v(0xf2000000) @ virtual ++ .endm ++ ++ .macro senduart,rd,rx ++ strb \rd, [\rx, #UART0DR] ++ .endm ++ ++ .macro busyuart,rd,rx ++1002: ldrb \rd, [\rx, #UART0FR] ++ and \rd, \rd, #FR_TXFE ++ teq \rd, #FR_TXFE ++ bne 1002b ++ .endm ++ ++ .macro waituart,rd,rx ++1001: ldrb \rd, [\rx, #UART0FR] ++ and \rd, \rd, #FR_BUSY ++ teq \rd, #0 ++ bne 1001b ++ .endm ++ ++/* ++ .macro addruart,rx ++ .endm ++ ++ .macro senduart,rd,rx ++ .endm ++ ++ .macro waituart,rd,rx ++ .endm ++ ++ .macro busyuart,rd,rx ++ .endm ++*/ +diff --git a/arch/arm/mach-tmpa910/include/mach/dma.h b/arch/arm/mach-tmpa910/include/mach/dma.h +new file mode 100644 +index 0000000..aff2bd8 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/dma.h +@@ -0,0 +1,65 @@ ++/* ++ * linux/include/asm-arm/arch-tmpa910/dma.h ++ * 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. ++ */ ++#ifndef __ASM_ARCH_TMPA910_DMA_H ++#define __ASM_ARCH_TMPA910_DMA_H ++ ++#define TMPA910_DMA_CHANNELS 8 ++ ++enum { ++ DMA_UART0_TX = 0, ++ DMA_UART0_RX = 1, ++ DMA_NANDC0 = 4, ++ DMA_CMSI = 5, ++ I2S0 = 10, ++ I2S1 = 11, ++ LCDDA = 14, ++}; ++ ++/* ++ * Descriptor structure for TMPA910 DMA engine ++ */ ++typedef struct tmpa910_dma_desc { ++ volatile u32 src_addr; /* DMA Channel source address */ ++ volatile u32 dest_addr; /* DMA Channel dest address */ ++ volatile u32 dma_lli; /* DMA linked list item */ ++ volatile u32 control; /* DMA channel control */ ++ volatile u32 config; /* DMA channel configuration */ ++} tmpa910_dma_desc; ++ ++typedef enum { ++ DMA_PRIO_HIGH = 1, ++ DMA_PRIO_MEDIUM = 4, ++ DMA_PRIO_LOW = 8, ++} tmpa910_dma_prio; ++ ++struct tmpa910_dma_channel { ++ const char *name; ++ void (*irq_handler)(int, void *); ++ void (*err_handler)(int, void *); ++ void *data; ++ int dma_num; ++}; ++ ++void tmpa910_dma_enable(int dma_ch); ++void tmpa910_dma_disable(int dma_ch); ++long tmpa910_dma_get_size(int dma_ch); ++ ++ ++/* ++ * DMA registration ++ */ ++ ++int tmpa910_dma_request (const char *name, ++ int prio, ++ void (*irq_handler)(int, void *), ++ void (*err_handler)(int, void *), ++ void *data); ++ ++void tmpa910_dma_free (int dma_ch); ++ ++#endif /* _ASM_ARCH_DMA_H */ ++ +diff --git a/arch/arm/mach-tmpa910/include/mach/entry-macro.S b/arch/arm/mach-tmpa910/include/mach/entry-macro.S +new file mode 100644 +index 0000000..fa6af71 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/entry-macro.S +@@ -0,0 +1,49 @@ ++/* ++ * include/asm-arm/arch-tmpa910/entry-macro.S ++ * ++ * Low-level IRQ helper macros for TMPA910 platforms ++ * ++ * 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. ++ */ ++#include ++ ++ ++ .macro get_irqnr_preamble, base, tmp ++ .endm ++ ++ .macro arch_ret_to_user, tmp1, tmp2 ++ .endm ++ ++ ++ .macro disable_fiq ++ .endm ++ ++ .macro get_irqnr_and_base, irqnr, irqstat, base, tmp ++ ldr \irqstat, =IO_ADDRESS(0xf4000000) @ int ctrl ++ ++ ldr \base, =0 @ invalid interrupt ++ ldr \tmp, [\irqstat, #0x000] @ 0xf00 <- vic addr ++ cmp \tmp, \base ++ beq 1002f ++ ++ ldr \irqnr, [\irqstat, #0xf00] @ 0xf00 <- vic addr ++ ++ # hack it here? ++ #str \irqnr, [\irqstat, #0xf00] @ 0xf00 <- vic addr ++ ++ ldr \irqstat, =1 @ dummy compare ++ ldr \base, =32 @ invalid interrupt ++ cmp \irqnr, \base ++ bne 1001f ++1002: ++ ldr \irqstat, =0 ++1001: ++ tst \irqstat, #1 @ to make the condition code = TRUE ++ .endm ++ ++ .macro irq_prio_table ++ .endm ++ ++ +diff --git a/arch/arm/mach-tmpa910/include/mach/gpio.h b/arch/arm/mach-tmpa910/include/mach/gpio.h +new file mode 100644 +index 0000000..871d56c +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/gpio.h +@@ -0,0 +1,27 @@ ++#ifndef __ASM_ARCH_GPIO_H ++#define __ASM_ARCH_GPIO_H ++/* ++ * arch/arm/mach-tmpa910/include/mach/gpio.h ++ */ ++ ++#define ARCH_NR_GPIOS 136 ++ ++#include ++#include ++ ++#define gpio_get_value __gpio_get_value ++#define gpio_set_value __gpio_set_value ++#define gpio_cansleep __gpio_cansleep ++ ++/* ++ * Map GPIO A0..A7 (0..7) to irq 64..71, ++ * B0..B7 (7..15) to irq 72..79, and ++ * F0..F7 (16..24) to irq 80..87. ++ */ ++ ++#define gpio_to_irq __tmpa910_gpio_to_irq ++#define irq_to_gpio __tmpa910_irq_to_gpio ++extern int __tmpa910_irq_to_gpio(unsigned irq); ++extern int __tmpa910_gpio_to_irq(unsigned gpio); ++ ++#endif +diff --git a/arch/arm/mach-tmpa910/include/mach/hardware.h b/arch/arm/mach-tmpa910/include/mach/hardware.h +new file mode 100644 +index 0000000..1e509cb +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/hardware.h +@@ -0,0 +1,57 @@ ++/* ++ * arch/arm/mach-tmpa910/include/mach/hardware.h ++ * ++ * Based on arch-mx2ads/hardware.h, which is: ++ * Copyright (C) 2004 Metrowerks Corp. ++ * ++ * 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 ++ */ ++#ifndef __ASM_ARCH_HARDWARE_H ++#define __ASM_ARCH_HARDWARE_H ++ ++#ifndef __ASSEMBLY__ ++#include ++#endif ++ ++ ++#define CLK32 32768 ++ ++ ++// The phys IO [0xf000 0000 -> 0xf400 0000] ++// Let's do a simple 1:1 mapping ++#define TMPA910_IO_VIRT_BASE 0xf0000000 ++#define TMPA910_IO_PHYS_BASE 0xf0000000 ++ ++#define TMPA910_IO_SIZE 0x04400000 ++ ++#ifndef __ASSEMBLY__ ++ ++#define _in32(__ofs) ( * ( (volatile unsigned long *) (__ofs) ) ) ++#define _out32(__ofs,__val) { (* ( (volatile unsigned long *) (__ofs)) ) = __val; } ++ ++#endif ++ ++#define __REG(x) (*((volatile u32 *)io_p2v(x))) ++#define __PREG(x) (io_v2p((u32)&(x))) ++ ++/* For assembler the C-type using macros are not useful */ ++#define IO_ADDRESS(x) ((x)) ++ ++ ++#define io_p2v(x) ( (x) ) ++#define io_v2p(x) ( (x) ) ++ ++ ++#endif +diff --git a/arch/arm/mach-tmpa910/include/mach/io.h b/arch/arm/mach-tmpa910/include/mach/io.h +new file mode 100644 +index 0000000..6dafefc +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/io.h +@@ -0,0 +1,30 @@ ++/* ++ * linux/include/asm-arm/arch-imxads/io.h ++ * ++ * Copyright (C) 1999 ARM Limited ++ * ++ * 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 ++ */ ++#ifndef __ASM_ARM_ARCH_IO_H ++#define __ASM_ARM_ARCH_IO_H ++ ++#include ++ ++#define IO_SPACE_LIMIT 0xffffffff ++ ++#define __io(a) ((void __iomem *)(a)) ++#define __mem_pci(a) (a) ++ ++#endif +diff --git a/arch/arm/mach-tmpa910/include/mach/irqs.h b/arch/arm/mach-tmpa910/include/mach/irqs.h +new file mode 100644 +index 0000000..93287f1 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/irqs.h +@@ -0,0 +1,136 @@ ++/* ++ * include/asm-arm/arch-topas910/irqs.h ++ * ++ * Copyright (C) 2004 Metrowerks Corp. ++ * ++ * based on arch-mx1ads/irqs.h, which is: ++ * Copyright (C) 1999 ARM Limited ++ * Copyright (C) 2000 Deep Blue Solutions Ltd. ++ * Copyright (C) 2006 Jochen Karrer ++ * Copyright (C) 2008 bplan 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 ++ */ ++ ++#ifndef __ARM_IRQS_H__ ++#define __ARM_IRQS_H__ ++ ++/* ------------------------------------------------------------ ++ * Interrupts ++ * ------------------------------------------------------------ ++ */ ++ ++#define NR_IRQS (MAXIRQNUM + 1 + TMPA910_NUM_GPIO_IRQS) ++#define NR_FIQS (MAXFIQNUM + 1) ++ ++/* ++ * Topas910 IRQ Vectors ++ * TODO: Move to a board specific file. ++ */ ++#define TOPAS910_INT_DM9000 INT_GPIO_INTH ++ ++ ++#define TMPA910_NUM_IRQS 32 ++ ++/* ++ * Chip internal -> not of the board ++ */ ++#define INTR_VECT_WDT 0 ++#define INTR_VECT_RTC 1 ++#define INTR_VECT_TIMER01 2 ++#define INTR_VECT_TIMER23 3 ++#define INTR_VECT_TIMER45 4 ++#define INTR_VECT_GPIOD 5 ++#define INTR_VECT_I2C_CH0 6 ++#define INTR_VECT_I2C_CH1 7 ++#define INTR_VECT_ADC 8 ++ ++#define INTR_VECT_UART_CH0 10 ++#define INTR_VECT_UART_CH1 11 ++#define INTR_VECT_SSP_CH0 12 ++#define INTR_VECT_SSP_CH1 13 ++#define INTR_VECT_NDFC 14 ++#define INTR_VECT_CMSIF 15 ++#define INTR_VECT_DMA_ERROR 16 ++#define INTR_VECT_DMA_END 17 ++#define INTR_VECT_LCDC 18 ++ ++#define INTR_VECT_LCDDA 20 ++#define INTR_VECT_USB 21 ++#define INTR_VECT_SDHC 22 ++#define INTR_VECT_I2S 23 ++ ++#define INTR_VECT_GPIOR 26 ++#define INTR_VECT_GPIOP 27 ++#define INTR_VECT_GPION 28 ++#define INTR_VECT_GPIOF 29 ++#define INTR_VECT_GPIOC 30 ++#define INTR_VECT_GPIOA 31 ++ ++#define MAXIRQNUM 31 ++#define MAXFIQNUM 31 ++ ++#define DMA_ERR_INT INTR_VECT_DMA_ERROR ++#define DMA_END_INT INTR_VECT_DMA_END ++#define I2S_INT INTR_VECT_I2S ++#define USB_INT INTR_VECT_USB ++ ++/* ++ * GPIO Interrupts ++ */ ++ ++#define TMPA910_NUM_GPIO_IRQS 26 ++ ++/* Port A */ ++#define INT_GPIO_KI0 32 ++#define INT_GPIO_KI1 33 ++#define INT_GPIO_KI2 34 ++#define INT_GPIO_KI3 35 ++#define INT_GPIO_KI4 36 ++#define INT_GPIO_KI5 37 ++#define INT_GPIO_KI6 38 ++#define INT_GPIO_KI7 39 ++ ++/* Port C */ ++#define INT_GPIO_INT8 40 ++#define INT_GPIO_INT9 41 ++ ++/* Port D */ ++#define INT_GPIO_INTA 42 ++#define INT_GPIO_INTB 43 ++ ++/* Port F */ ++#define INT_GPIO_INTC 44 ++ ++/* Port N */ ++#define INT_GPIO_INTD 45 ++#define INT_GPIO_INTE 46 ++#define INT_GPIO_INTF 47 ++#define INT_GPIO_INTG 48 ++ ++/* Port P */ ++#define INT_GPIO_INT0 49 ++#define INT_GPIO_INT1 50 ++#define INT_GPIO_INT2 51 ++#define INT_GPIO_INT3 52 ++#define INT_GPIO_INT4 53 ++#define INT_GPIO_INT5 54 ++#define INT_GPIO_INT6 55 ++#define INT_GPIO_INT7 56 ++ ++/* Port R */ ++#define INT_GPIO_INTH 57 ++ ++#endif +diff --git a/arch/arm/mach-tmpa910/include/mach/memory.h b/arch/arm/mach-tmpa910/include/mach/memory.h +new file mode 100644 +index 0000000..13105bd +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/memory.h +@@ -0,0 +1,44 @@ ++/* ++ * linux/include/asm-arm/arch-topas910/memory.h ++ * ++ * Copyright (C) 1999 ARM Limited ++ * Copyright (C) 2002 Shane Nay (shane@minirl.com) ++ * Copyright (C) 2006 Jochen Karrer (jk06@jkarrer.de) ++ * Copyright (C) 2008 bplan 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 ++ */ ++#ifndef __ASM_ARCH_MEMORY_H ++#define __ASM_ARCH_MEMORY_H ++ ++#define FB_SIZE UL(2048*1024) ++#define FB_OFFSET PHYS_OFFSET + MEM_SIZE ++ ++#define PHYS_OFFSET UL(0x40000000) ++#define MEM_SIZE ( UL(0x04000000) - FB_SIZE) ++/* ++ * Virtual view <-> DMA view memory address translations ++ * virt_to_bus: Used to translate the virtual address to an ++ * address suitable to be passed to set_dma_addr ++ * bus_to_virt: Used to convert an address for DMA operations ++ * to an address that the kernel can use. ++ */ ++#define __virt_to_bus__is_a_macro ++#define __virt_to_bus(x) (x - PAGE_OFFSET + PHYS_OFFSET) ++#define __bus_to_virt__is_a_macro ++#define __bus_to_virt(x) (x - PHYS_OFFSET + PAGE_OFFSET) ++ ++#endif ++ +diff --git a/arch/arm/mach-tmpa910/include/mach/system.h b/arch/arm/mach-tmpa910/include/mach/system.h +new file mode 100644 +index 0000000..f8d1024 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/system.h +@@ -0,0 +1,56 @@ ++/* ++ * arch/arm/mach-tmpa910/include/mach/system.h ++ * ++ * Copyright (C) 1999 ARM Limited ++ * Copyright (C) 2000 Deep Blue Solutions Ltd ++ * ++ * 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 ++ */ ++#ifndef __ASM_ARCH_SYSTEM_H ++#define __ASM_ARCH_SYSTEM_H ++ ++#include ++ ++static void ++arch_idle(void) ++{ ++ /* ++ * This should do all the clock switching ++ * and wait for interrupt tricks ++ */ ++ cpu_do_idle(); ++} ++ ++static inline void ++arch_reset(char mode) ++{ ++ uint8_t *wdt_base; ++ ++ printk("Issue reset\n"); ++ ++ wdt_base = (char *) (0xf0010000); ++ ++ if (wdt_base==NULL ) ++ { ++ wdt_base = (uint8_t *) 0xf0010000; ++ } ++ ++ outl( 0x1, (uint32_t *) (wdt_base + 0)); ++ outl( 0x3, (uint32_t *) (wdt_base + 8)); ++ ++ /* Bye ! */ ++} ++ ++#endif +diff --git a/arch/arm/mach-tmpa910/include/mach/timex.h b/arch/arm/mach-tmpa910/include/mach/timex.h +new file mode 100644 +index 0000000..d9fe3bb +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/timex.h +@@ -0,0 +1,26 @@ ++/* ++ * linux/include/asm-arm/imx/timex.h ++ * ++ * Copyright (C) 1999 ARM Limited ++ * ++ * 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 ++ */ ++ ++#ifndef __ASM_ARCH_TIMEX_H ++#define __ASM_ARCH_TIMEX_H ++#include ++#define CLOCK_TICK_RATE (CLK32) ++ ++#endif +diff --git a/arch/arm/mach-tmpa910/include/mach/tmpa910_regs.h b/arch/arm/mach-tmpa910/include/mach/tmpa910_regs.h +new file mode 100644 +index 0000000..8af57c7 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/tmpa910_regs.h +@@ -0,0 +1,502 @@ ++/* ++ * Copyright (C) 2008 bplan GmbH. All rights reserved. ++ * Copyright (C) 2009 Florian Boor ++ * ++ * 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 ++ * ++ * TMPA910 register header ++ */ ++ ++#ifndef __TMPA910_REGS__ ++#define __TMPA910_REGS__ ++ ++/* GPIO Ports */ ++ ++#define PORT_BASE 0xF0800000 ++#define PORTA 0x0000 ++#define PORTB 0x1000 ++#define PORTC 0x2000 ++#define PORTD 0x3000 ++#ifndef CONFIG_CPU_TMPA900 ++#define PORTE 0x4000 ++#endif ++#define PORTF 0x5000 ++#define PORTG 0x6000 ++#ifndef CONFIG_CPU_TMPA900 ++#define PORTH 0x7000 ++#endif ++#define PORTJ 0x8000 ++#define PORTK 0x9000 ++#define PORTL 0xA000 ++#define PORTM 0xB000 ++#define PORTN 0xC000 ++#define PORTP 0xD000 ++#define PORTR 0xE000 ++#define PORTT 0xF000 ++ ++/* TMPA900 */ ++#ifdef CONFIG_CPU_TMPA900 ++#define PORTU 0x4000 ++#define PORTV 0x7000 ++#endif ++ ++ ++#define PORT_OFS_DATA 0x03FC /* 0x000 - 0x3FC, data register masked from 0x00 to 0xFF << 2 */ ++#define PORT_OFS_DIR 0x0400 /* direction register */ ++#define PORT_OFS_FR1 0x0424 /* function register 1 */ ++#define PORT_OFS_FF2 0x0428 /* function register 2 */ ++#define PORT_OFS_IS 0x0804 /* interrupt sensitivity */ ++#define PORT_OFS_IBE 0x0808 /* interrupt both edge register */ ++#define PORT_OFS_IEV 0x080C /* interrupt event register */ ++#define PORT_OFS_IE 0x0810 /* interrupt enable register*/ ++#define PORT_OFS_RIS 0x0814 /* raw interrupt status register */ ++#define PORT_OFS_MIS 0x0818 /* masked interrupt status */ ++#define PORT_OFS_IC 0x081C /* interrupt clear register */ ++#define PORT_OFS_ODE 0x0C00 /* open drain output */ ++ ++#define TMPA910_GPIO_REG(x,y) (PORT_BASE | (x) | (y)) /* base addr + port offset + register offset */ ++ ++#define TMPA910_GPIO_REG_DATA(x) (PORT_BASE | PORT_OFS_DATA | (x)) ++#define TMPA910_GPIO_REG_DIR(x) (PORT_BASE | PORT_OFS_DIR | (x)) ++#define TMPA910_GPIO_REG_IS(x) (PORT_BASE | PORT_OFS_IS | (x)) ++#define TMPA910_GPIO_REG_IBE(x) (PORT_BASE | PORT_OFS_IBE | (x)) ++#define TMPA910_GPIO_REG_IEV(x) (PORT_BASE | PORT_OFS_IEV | (x)) ++#define TMPA910_GPIO_REG_IE(x) (PORT_BASE | PORT_OFS_IE | (x)) ++#define TMPA910_GPIO_REG_MIS(x) (PORT_BASE | PORT_OFS_MIS | (x)) ++#define TMPA910_GPIO_REG_IC(x) (PORT_BASE | PORT_OFS_IC | (x)) ++ ++#define TMPA910_CFG_PORT_GPIO(x) (__REG(PORT_BASE | (x) | PORT_OFS_FR1) = 0) ++#define TMPA910_PORT_FR1(x) __REG(PORT_BASE | (x) | PORT_OFS_FR1) ++#define TMPA910_PORT_T_FR1 TMPA910_PORT_FR1(PORTT) ++ ++ ++/******* redundent stuff */ ++#define PORTB_BASE (PORT_BASE + 0x1000) ++ ++#define PORTB_GPIODATA (PORTB_BASE + PORT_OFS_DATA) ++ ++ ++#define PORTF_BASE 0xF0805000 ++#define PORTF_GPIOFDIR (PORTF_BASE + 0x0400) ++#define PORTF_GPIOFFR (PORTF_BASE + 0x0424) ++#define PORTF_GPIOFODE (PORTF_BASE + 0x0c00) ++ ++ ++/********/ ++#define PORTD_BASE 0xF0803000 ++#define PORTD_GPIOFR1 (PORTD_BASE + 0x0424) ++#define PORTD_GPIOFR2 (PORTD_BASE + 0x0428) ++#define PORTD_GPIOIE (PORTD_BASE + 0x0810) ++#define PORTD_GPIOIC (PORTD_BASE + 0x081C) ++#define PORTD_GPIOMIS (PORTD_BASE + 0x0818) ++/********/ ++#define PORTE_BASE 0xF0804000 ++#define PORTE_GPIOEFR (PORTE_BASE + 0x0424) ++ ++/********/ ++#define PORTG_BASE 0xF0806000 ++#define PORTG_GPIOFR (PORTG_BASE + 0x0424) ++ ++ ++/* GPIO registers */ ++#define IO_1_GPIO_BASE (0xF0800000) ++#define IO_1_BASE (IO_1_GPIO_BASE) ++#define GPIO_A_BASE (IO_1_GPIO_BASE + PORTA) ++#define GPIO_B_BASE (IO_1_GPIO_BASE + PORTB) ++#define GPIO_C_BASE (IO_1_GPIO_BASE + PORTC) ++#define GPIO_D_BASE (IO_1_GPIO_BASE + PORTD) ++#ifndef CONFIG_CPU_TMPA900 ++#define GPIO_E_BASE (IO_1_GPIO_BASE + PORTE) ++#endif ++#define GPIO_F_BASE (IO_1_GPIO_BASE + PORTF) ++#define GPIO_G_BASE (IO_1_GPIO_BASE + PORTG) ++#ifndef CONFIG_CPU_TMPA900 ++#define GPIO_H_BASE (IO_1_GPIO_BASE + PORTH) ++#endif ++#define GPIO_J_BASE (IO_1_GPIO_BASE + PORTJ) ++#define GPIO_K_BASE (IO_1_GPIO_BASE + PORTK) ++#define GPIO_L_BASE (IO_1_GPIO_BASE + PORTL) ++#define GPIO_M_BASE (IO_1_GPIO_BASE + PORTM) ++#define GPIO_N_BASE (IO_1_GPIO_BASE + PORTN) ++#define GPIO_P_BASE (IO_1_GPIO_BASE + PORTP) ++#define GPIO_R_BASE (IO_1_GPIO_BASE + PORTR) ++#define GPIO_T_BASE (IO_1_GPIO_BASE + PORTT) ++ ++#ifdef CONFIG_CPU_TMPA900 ++#define GPIO_U_BASE (IO_1_GPIO_BASE + PORTU) ++#define GPIO_V_BASE (IO_1_GPIO_BASE + PORTV) ++#endif ++ ++#define GPIOADATA __REG(GPIO_A_BASE + 0x3FC) ++#define GPIOADIR __REG(GPIO_A_BASE + 0x400) ++#define GPIOAFR1 __REG(GPIO_A_BASE + 0x424) ++#define GPIOAFR2 __REG(GPIO_A_BASE + 0x428) ++#define GPIOAIS __REG(GPIO_A_BASE + 0x804) ++#define GPIOAIBE __REG(GPIO_A_BASE + 0x808) ++#define GPIOAIEV __REG(GPIO_A_BASE + 0x80C) ++#define GPIOAIE __REG(GPIO_A_BASE + 0x810) ++#define GPIOARIS __REG(GPIO_A_BASE + 0x814) ++#define GPIOAMIS __REG(GPIO_A_BASE + 0x818) ++#define GPIOAIC __REG(GPIO_A_BASE + 0x81C) ++ ++#define GPIOBDATA __REG(GPIO_B_BASE + 0x3FC) ++#define GPIOBDIR __REG(GPIO_B_BASE + 0x400) ++#define GPIOBFR1 __REG(GPIO_B_BASE + 0x424) ++#define GPIOBFR2 __REG(GPIO_B_BASE + 0x428) ++#define GPIOBODE __REG(GPIO_B_BASE + 0xC00) ++ ++#define GPIOCDATA __REG(GPIO_C_BASE + 0x3FC) ++#define GPIOCDIR __REG(GPIO_C_BASE + 0x400) ++#define GPIOCFR1 __REG(GPIO_C_BASE + 0x424) ++#define GPIOCFR2 __REG(GPIO_C_BASE + 0x428) ++#define GPIOCIS __REG(GPIO_C_BASE + 0x804) ++#define GPIOCIBE __REG(GPIO_C_BASE + 0x808) ++#define GPIOCIEV __REG(GPIO_C_BASE + 0x80C) ++#define GPIOCIE __REG(GPIO_C_BASE + 0x810) ++#define GPIOCRIS __REG(GPIO_C_BASE + 0x814) ++#define GPIOCMIS __REG(GPIO_C_BASE + 0x818) ++#define GPIOCIC __REG(GPIO_C_BASE + 0x81C) ++#define GPIOCODE __REG(GPIO_C_BASE + 0xC00) ++ ++#define GPIODDATA __REG(GPIO_D_BASE + 0x3FC) ++#define GPIODDIR __REG(GPIO_D_BASE + 0x400) ++#define GPIODFR1 __REG(GPIO_D_BASE + 0x424) ++#define GPIODFR2 __REG(GPIO_D_BASE + 0x428) ++#define GPIODIS __REG(GPIO_D_BASE + 0x804) ++#define GPIODIBE __REG(GPIO_D_BASE + 0x808) ++#define GPIODIEV __REG(GPIO_D_BASE + 0x80C) ++#define GPIODIE __REG(GPIO_D_BASE + 0x810) ++#define GPIODRIS __REG(GPIO_D_BASE + 0x814) ++#define GPIODMIS __REG(GPIO_D_BASE + 0x818) ++#define GPIODIC __REG(GPIO_D_BASE + 0x81C) ++ ++#ifndef CONFIG_CPU_TMPA900 ++#define GPIOEDATA __REG(GPIO_E_BASE + 0x3FC) ++#define GPIOEDIR __REG(GPIO_E_BASE + 0x400) ++#define GPIOEFR1 __REG(GPIO_E_BASE + 0x424) ++#define GPIOEFR2 __REG(GPIO_E_BASE + 0x428) ++#endif ++ ++#define GPIOFDATA __REG(GPIO_F_BASE + 0x000) ++#define GPIOFDIR __REG(GPIO_F_BASE + 0x400) ++#define GPIOFFR1 __REG(GPIO_F_BASE + 0x424) ++#define GPIOFFR2 __REG(GPIO_F_BASE + 0x428) ++#define GPIOFIS __REG(GPIO_F_BASE + 0x804) ++#define GPIOFIBE __REG(GPIO_F_BASE + 0x808) ++#define GPIOFIEV __REG(GPIO_F_BASE + 0x80C) ++#define GPIOFIE __REG(GPIO_F_BASE + 0x810) ++#define GPIOFRIS __REG(GPIO_F_BASE + 0x814) ++#define GPIOFMIS __REG(GPIO_F_BASE + 0x818) ++#define GPIOFIC __REG(GPIO_F_BASE + 0x81C) ++#define GPIOFODE __REG(GPIO_F_BASE + 0xC00) ++ ++#define GPIOGDATA __REG(GPIO_G_BASE + 0x3FC) ++#define GPIOGDIR __REG(GPIO_G_BASE + 0x400) ++#define GPIOGFR1 __REG(GPIO_G_BASE + 0x424) ++#define GPIOGFR2 __REG(GPIO_G_BASE + 0x428) ++ ++#ifndef CONFIG_CPU_TMPA900 ++#define GPIOHDATA __REG(GPIO_H_BASE + 0x3FC) ++#define GPIOHDIR __REG(GPIO_H_BASE + 0x400) ++#define GPIOHFR1 __REG(GPIO_H_BASE + 0x424) ++#define GPIOHFR2 __REG(GPIO_H_BASE + 0x428) ++#endif ++ ++#define GPIOJDATA __REG(GPIO_J_BASE + 0x3FC) ++#define GPIOJDIR __REG(GPIO_J_BASE + 0x400) ++#define GPIOJFR1 __REG(GPIO_J_BASE + 0x424) ++#define GPIOJFR2 __REG(GPIO_J_BASE + 0x428) ++ ++#define GPIOKDATA __REG(GPIO_K_BASE + 0x3FC) ++#define GPIOKDIR __REG(GPIO_K_BASE + 0x400) ++#define GPIOKFR1 __REG(GPIO_K_BASE + 0x424) ++#define GPIOKFR2 __REG(GPIO_K_BASE + 0x428) ++ ++#define GPIOLDATA __REG(GPIO_L_BASE + 0x3FC) ++#define GPIOLDIR __REG(GPIO_L_BASE + 0x400) ++#define GPIOLFR1 __REG(GPIO_L_BASE + 0x424) ++#define GPIOLFR2 __REG(GPIO_L_BASE + 0x428) ++ ++#define GPIOMDATA __REG(GPIO_M_BASE + 0x3FC) ++#define GPIOMDIR __REG(GPIO_M_BASE + 0x400) ++#define GPIOMFR1 __REG(GPIO_M_BASE + 0x424) ++#define GPIOMFR2 __REG(GPIO_M_BASE + 0x428) ++ ++#define GPIONDATA __REG(GPIO_N_BASE + 0x3FC) ++#define GPIONDIR __REG(GPIO_N_BASE + 0x400) ++#define GPIONFR1 __REG(GPIO_N_BASE + 0x424) ++#define GPIONFR2 __REG(GPIO_N_BASE + 0x428) ++#define GPIONIS __REG(GPIO_N_BASE + 0x804) ++#define GPIONIBE __REG(GPIO_N_BASE + 0x808) ++#define GPIONIEV __REG(GPIO_N_BASE + 0x80C) ++#define GPIONIE __REG(GPIO_N_BASE + 0x810) ++#define GPIONRIS __REG(GPIO_N_BASE + 0x814) ++#define GPIONMIS __REG(GPIO_N_BASE + 0x818) ++#define GPIONIC __REG(GPIO_N_BASE + 0x81C) ++ ++#define GPIOPDATA __REG(GPIO_P_BASE + 0x3FC) ++#define GPIOPDIR __REG(GPIO_P_BASE + 0x400) ++#define GPIOPFR1 __REG(GPIO_P_BASE + 0x424) ++#define GPIOPFR2 __REG(GPIO_P_BASE + 0x428) ++#define GPIOPIS __REG(GPIO_P_BASE + 0x804) ++#define GPIOPIBE __REG(GPIO_P_BASE + 0x808) ++#define GPIOPIEV __REG(GPIO_P_BASE + 0x80C) ++#define GPIOPIE __REG(GPIO_P_BASE + 0x810) ++#define GPIOPRIS __REG(GPIO_P_BASE + 0x814) ++#define GPIOPMIS __REG(GPIO_P_BASE + 0x818) ++#define GPIOPIC __REG(GPIO_P_BASE + 0x81C) ++ ++#define GPIORDATA __REG(GPIO_R_BASE + 0x3FC) ++#define GPIORDIR __REG(GPIO_R_BASE + 0x400) ++#define GPIORFR1 __REG(GPIO_R_BASE + 0x424) ++#define GPIORFR2 __REG(GPIO_R_BASE + 0x428) ++#define GPIORIS __REG(GPIO_R_BASE + 0x804) ++#define GPIORIBE __REG(GPIO_R_BASE + 0x808) ++#define GPIORIEV __REG(GPIO_R_BASE + 0x80C) ++#define GPIORIE __REG(GPIO_R_BASE + 0x810) ++#define GPIORRIS __REG(GPIO_R_BASE + 0x814) ++#define GPIORMIS __REG(GPIO_R_BASE + 0x818) ++#define GPIORIC __REG(GPIO_R_BASE + 0x81C) ++ ++#define GPIOTDATA __REG(GPIO_T_BASE + 0x3FC) ++#define GPIOTDIR __REG(GPIO_T_BASE + 0x400) ++#define GPIOTFR1 __REG(GPIO_T_BASE + 0x424) ++#define GPIOTFR2 __REG(GPIO_T_BASE + 0x428) ++ ++/* Port U and V TMPA900 only */ ++#ifdef CONFIG_CPU_TMPA900 ++#define GPIOUFR1 __REG(GPIO_U_BASE + 0x424) ++#define GPIOUFR2 __REG(GPIO_U_BASE + 0x428) ++ ++#define GPIOVFR1 __REG(GPIO_V_BASE + 0x424) ++#define GPIOVFR2 __REG(GPIO_V_BASE + 0x428) ++#endif ++ ++/* Timer */ ++#define TMPA910_TIMER0 0xf0040000 ++ ++/* LCD Controller */ ++#define LCDC_BASE 0xf4200000 ++ ++ ++/* I2C Ports */ ++#define I2C0_BASE 0xF0070000 ++ ++ ++/* Camera sensor controller */ ++#define CMOSCAM_BASE 0xF2020000 ++ ++/* DMA */ ++#define DMAC_BASE 0xF4100000 ++#define DMACIntTCStatus __REG(DMAC_BASE | 0x004) ++#define DMACIntTCClear __REG(DMAC_BASE | 0x008) ++#define DMACConfiguration __REG(DMAC_BASE | 0x030) ++#define DMACC5SrcAddr __REG(DMAC_BASE | 0x1a0) ++#define DMACC5DestAddr __REG(DMAC_BASE | 0x1a4) ++#define DMACC5Control __REG(DMAC_BASE | 0x1ac) ++#define DMACC5Configuration __REG(DMAC_BASE | 0x1b0) ++ ++/* Memory controller MPMC0 */ ++#define SMC_MPMC0_BASE 0xf4301000 ++#define SMC_MEMC_STATUS_3 __REG(SMC_MPMC0_BASE + 0x000) ++#define SMC_MEMIF_CFG_3 __REG(SMC_MPMC0_BASE + 0x004) ++#define SMC_DIRECT_CMD_3 __REG(SMC_MPMC0_BASE + 0x010) ++#define SMC_SET_CYCLES_3 __REG(SMC_MPMC0_BASE + 0x014) ++#define SMC_SET_OPMODE_3 __REG(SMC_MPMC0_BASE + 0x018) ++#define SMC_SRAM_CYCLES_0_3 __REG(SMC_MPMC0_BASE + 0x100) ++#define SMC_SRAM_CYCLES_1_3 __REG(SMC_MPMC0_BASE + 0x120) ++#define SMC_SRAM_CYCLES_2_3 __REG(SMC_MPMC0_BASE + 0x140) ++#define SMC_SRAM_CYCLES_3_3 __REG(SMC_MPMC0_BASE + 0x160) ++#define SMC_OPMODE0_0_3 __REG(SMC_MPMC0_BASE + 0x104) ++#define SMC_OPMODE0_1_3 __REG(SMC_MPMC0_BASE + 0x124) ++#define SMC_OPMODE0_2_3 __REG(SMC_MPMC0_BASE + 0x144) ++#define SMC_OPMODE0_3_3 __REG(SMC_MPMC0_BASE + 0x164) ++ ++/* Memory controller MPMC1 */ ++#define SMC_MPMC1_BASE 0xf4311000 ++#define SMC_MEMC_STATUS_5 __REG(SMC_MPMC1_BASE + 0x000) ++#define SMC_MEMIF_CFG_5 __REG(SMC_MPMC1_BASE + 0x004) ++#define SMC_DIRECT_CMD_5 __REG(SMC_MPMC1_BASE + 0x010) ++#define SMC_SET_CYCLES_5 __REG(SMC_MPMC1_BASE + 0x014) ++#define SMC_SET_OPMODE_5 __REG(SMC_MPMC1_BASE + 0x018) ++#define SMC_SRAM_CYCLES_0_5 __REG(SMC_MPMC1_BASE + 0x100) ++#define SMC_SRAM_CYCLES_1_5 __REG(SMC_MPMC1_BASE + 0x120) ++#define SMC_SRAM_CYCLES_2_5 __REG(SMC_MPMC1_BASE + 0x140) ++#define SMC_SRAM_CYCLES_3_5 __REG(SMC_MPMC1_BASE + 0x160) ++#define SMC_OPMODE0_0_5 __REG(SMC_MPMC1_BASE + 0x104) ++#define SMC_OPMODE0_1_5 __REG(SMC_MPMC1_BASE + 0x124) ++#define SMC_OPMODE0_2_5 __REG(SMC_MPMC1_BASE + 0x144) ++#define SMC_OPMODE0_3_5 __REG(SMC_MPMC1_BASE + 0x164) ++ ++/* I2S Interface */ ++#define I2S_BASE 0xF2040000 ++#define I2STCON __REG(I2S_BASE + 0x000) ++#define I2STSLVON __REG(I2S_BASE + 0x004) ++#define I2STFCLR __REG(I2S_BASE + 0x008) ++#define I2STMS __REG(I2S_BASE + 0x00C) ++#define I2STMCON __REG(I2S_BASE + 0x010) ++#define I2STMSTP __REG(I2S_BASE + 0x014) ++#define I2STDMA1 __REG(I2S_BASE + 0x018) ++#define I2SRCON __REG(I2S_BASE + 0x020) ++#define I2SRSLVON __REG(I2S_BASE + 0x024) ++#define I2SFRFCLR __REG(I2S_BASE + 0x028) ++#define I2SRMS __REG(I2S_BASE + 0x02C) ++#define I2SRMCON __REG(I2S_BASE + 0x030) ++#define I2SRMSTP __REG(I2S_BASE + 0x034) ++#define I2SRDMA1 __REG(I2S_BASE + 0x038) ++#define I2SCOMMON __REG(I2S_BASE + 0x044) ++#define I2STST __REG(I2S_BASE + 0x048) ++#define I2SRST __REG(I2S_BASE + 0x04C) ++#define I2SINT __REG(I2S_BASE + 0x050) ++#define I2SINTMSK __REG(I2S_BASE + 0x054) ++#define I2STDAT __REG(I2S_BASE + 0x1000) ++#define I2SRDAT __REG(I2S_BASE + 0x2000) ++#define I2STDAT_ADR (I2S_BASE + 0x1000) ++#define I2SRDAT_ADR (I2S_BASE + 0x2000) ++ ++ ++/* System Control / PLL */ ++#define PLL_BASE_ADDRESS 0xF0050000 ++#define SYSCR0 __REG__(PLL_BASE_ADDRESS + 0x000) ++#define SYSCR1 __REG__(PLL_BASE_ADDRESS + 0x004) ++#define SYSCR2 __REG__(PLL_BASE_ADDRESS + 0x008) ++#define SYSCR3 __REG__(PLL_BASE_ADDRESS + 0x00C) ++#define SYSCR4 __REG__(PLL_BASE_ADDRESS + 0x010) ++#define SYSCR5 __REG__(PLL_BASE_ADDRESS + 0x014) ++#define SYSCR6 __REG__(PLL_BASE_ADDRESS + 0x018) ++#define SYSCR7 __REG__(PLL_BASE_ADDRESS + 0x01C) ++#define CLKCR5 __REG__(PLL_BASE_ADDRESS + 0x054) ++ ++/* NAND Flash Controller */ ++#define NANDF_BASE 0xF2010000 ++ ++#define NDFMCR0 __REG(NANDF_BASE | 0x0000) /* NAND-Flash Control Register 0 */ ++#define NDFMCR1 __REG(NANDF_BASE | 0x0004) /* NAND-Flash Control Register 1 */ ++#define NDFMCR2 __REG(NANDF_BASE | 0x0008) /* NAND-Flash Control Register 2 */ ++#define NDFINTC __REG(NANDF_BASE | 0x000C) /* NAND-Flash Interrupt Control Register */ ++#define NDFDTR __REG(NANDF_BASE | 0x0010) /* NAND-Flash Data Register */ ++#define NDECCRD0 __REG(NANDF_BASE | 0x0020) /* NAND-Flash ECC Read Register 0 */ ++#define NDECCRD1 __REG(NANDF_BASE | 0x0024) /* NAND-Flash ECC Read Register 1 */ ++#define NDECCRD2 __REG(NANDF_BASE | 0x0028) /* NAND-Flash ECC Read Register 2 */ ++#define NDRSCA0 __REG(NANDF_BASE | 0x0030) /* NAND-Flash Reed-Solomon Calculation Result Address Register 0 */ ++#define NDRSCD0 __REG(NANDF_BASE | 0x0034) /* NAND-Flash Reed-Solomon Calculation Result Data Register 0 */ ++#define NDRSCA1 __REG(NANDF_BASE | 0x0038) /* NAND-Flash Reed-Solomon Calculation Result Address Register 1 */ ++#define NDRSCD1 __REG(NANDF_BASE | 0x003C) /* NAND-Flash Reed-Solomon Calculation Result Data Register 1 */ ++#define NDRSCA2 __REG(NANDF_BASE | 0x0040) /* NAND-Flash Reed-Solomon Calculation Result Address Register 2 */ ++#define NDRSCD2 __REG(NANDF_BASE | 0x0044) /* NAND-Flash Reed-Solomon Calculation Result Data Register 2 */ ++#define NDRSCA3 __REG(NANDF_BASE | 0x0048) /* NAND-Flash Reed-Solomon Calculation Result Address Register 3 */ ++#define NDRSCD3 __REG(NANDF_BASE | 0x004C) /* NAND-Flash Reed-Solomon Calculation Result Data Register 3 */ ++ ++#define NDFDTR_PHY NANDF_BASE + 0x10 ++ ++ ++#define NDFMCR0_ECCRST (0x1 << 0) ++#define NDFMCR0_BUSY (0x1 << 1) ++#define NDFMCR0_ECCE (0x1 << 2) ++#define NDFMCR0_CE1 (0x1 << 3) ++#define NDFMCR0_CE0 (0x1 << 4) ++#define NDFMCR0_CLE (0x1 << 5) ++#define NDFMCR0_ALE (0x1 << 6) ++#define NDFMCR0_WE (0x1 << 7) ++#define NDFMCR0_RSEDN (0x1 << 10) ++ ++#define NDFMCR1_ECCS (0x1 << 1) ++#define NDFMCR1_SELAL (0x1 << 9) ++#define NDFMCR1_ALS (0x1 << 8) ++ ++#define NAND_DMAC_STATUS (0x1 << 5) ++#define NAND_DMAC_CLEAR (0x1 << 5) ++ ++ ++ ++/* LCDDA (LCD Data Process Accelerator) */ ++#define LCDDA_BASE 0xF2050000 ++#define LCDDA_LDACR0 __REG(LCDDA_BASE + 0x00) ++#define LCDDA_LDACR1 __REG(LCDDA_BASE + 0x34) ++ ++ ++/* Interrupt Controller */ ++#define INTR_BASE 0xF4000000 ++ ++/* Touchscreen Controller */ ++#define TS_BASE 0xf00601f0 ++#define TOUCHSCREEN_BASE 0xF00601F0 ++ ++/* ADC */ ++#define ADC_BASE 0xf0080000 ++ ++/* SDRAM */ ++#define SRAM_BASE 0xF8002000 ++#define SRAM_SIZE 0x0000C000 ++ ++/* DMA registers */ ++#define DMA_BASE (0xF4100000) ++#define DMA_INT_STATUS __REG(DMA_BASE) ++#define DMA_TC_STATUS __REG(DMA_BASE + 0x0004) ++#define DMA_TC_CLEAR __REG(DMA_BASE + 0x0008) ++#define DMA_ERR_STATUS __REG(DMA_BASE + 0x000c) ++#define DMA_ERR_CLEAR __REG(DMA_BASE + 0x0010) ++#define DMA_RAW_TC_STATUS __REG(DMA_BASE + 0x0014) ++#define DMA_RAW_ERR_STATUS __REG(DMA_BASE + 0x0018) ++#define DMA_ENABLED_CHN __REG(DMA_BASE + 0x001c) ++#define DMA_CONFIGURE __REG(DMA_BASE + 0x0030) ++ ++#define DMA_SRC_ADDR(x) __REG(DMA_BASE + 0x100 + ((x) << 5)) ++#define DMA_DEST_ADDR(x) __REG(DMA_BASE + 0x100 + ((x) << 5) + 0x04) ++#define DMA_LLI(x) __REG(DMA_BASE + 0x100 + ((x) << 5) + 0x08) ++#define DMA_CONTROL(x) __REG(DMA_BASE + 0x100 + ((x) << 5) + 0x0c) ++#define DMA_CONFIG(x) __REG(DMA_BASE + 0x100 + ((x) << 5) + 0x10) ++ ++#define DMA_CONFIG_EN (1 << 0) ++ ++ ++/* I2C_1 : 0xf0071000 */ ++#define I2C1_BASE (0xF0071000) ++#define I2C1CR1 __REG(I2C1_BASE + 0x00) ++#define I2C1DBR __REG(I2C1_BASE + 0x04) ++#define I2C1AR __REG(I2C1_BASE + 0x08) ++#define I2C1CR2 __REG(I2C1_BASE + 0x0c) ++#define I2C1SR __REG(I2C1_BASE + 0x0c) ++#define I2C1PRS __REG(I2C1_BASE + 0x10) ++#define I2C1IE __REG(I2C1_BASE + 0x14) ++#define I2C1IR __REG(I2C1_BASE + 0x18) ++ ++/* I2S : 0xf2040000 */ ++#define I2S_BASE 0xF2040000 ++#define I2STCON __REG(I2S_BASE + 0x000) ++#define I2STSLVON __REG(I2S_BASE + 0x004) ++#define I2STFCLR __REG(I2S_BASE + 0x008) ++#define I2STMS __REG(I2S_BASE + 0x00C) ++#define I2STMCON __REG(I2S_BASE + 0x010) ++#define I2STMSTP __REG(I2S_BASE + 0x014) ++#define I2STDMA1 __REG(I2S_BASE + 0x018) ++#define I2SRCON __REG(I2S_BASE + 0x020) ++#define I2SRSLVON __REG(I2S_BASE + 0x024) ++#define I2SFRFCLR __REG(I2S_BASE + 0x028) ++#define I2SRMS __REG(I2S_BASE + 0x02C) ++#define I2SRMCON __REG(I2S_BASE + 0x030) ++#define I2SRMSTP __REG(I2S_BASE + 0x034) ++#define I2SRDMA1 __REG(I2S_BASE + 0x038) ++#define I2SCOMMON __REG(I2S_BASE + 0x044) ++#define I2STST __REG(I2S_BASE + 0x048) ++#define I2SRST __REG(I2S_BASE + 0x04C) ++#define I2SINT __REG(I2S_BASE + 0x050) ++#define I2SINTMSK __REG(I2S_BASE + 0x054) ++#define I2STDAT __REG(I2S_BASE + 0x1000) ++#define I2SRDAT __REG(I2S_BASE + 0x2000) ++#define I2STDAT_ADR (I2S_BASE + 0x1000) ++#define I2SRDAT_ADR (I2S_BASE + 0x2000) ++ ++#endif /* __TMPA910_REGS__ */ +diff --git a/arch/arm/mach-tmpa910/include/mach/ts.h b/arch/arm/mach-tmpa910/include/mach/ts.h +new file mode 100644 +index 0000000..e5d5676 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/ts.h +@@ -0,0 +1,61 @@ ++/* ++ * Header file for TMPA910 TS Controller ++ * ++ * Data structure and register user interface ++ * ++ * Copyright (C) 2008 bplam 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 ++ */ ++#ifndef __TMPA910_TS_H__ ++#define __TMPA910_TS_H__ ++ ++ ++/******/ ++/******/ ++struct tmpa910_ts_platforminfo { ++ int fuzz; ++#define TMPA910_TS_DEFAULT_FUZZ 4 ++ ++ int rate; ++#define TMPA910_TS_DEFAULT_RATE 25 ++ ++ int skip_count; ++#define TMPA910_TS_DEFAULT_SKIP_COUNT 1 ++}; ++ ++/******/ ++/******/ ++/* ++ * Controller register ++*/ ++ ++#define TMPA910_TS_CR0_TSI7 (1<<7) // TSI7 R/W 0y0 pull-down resistor(refer to Explanation) ++#define TMPA910_TS_CR0_INGE (1<<6) // INGE R/W 0y0 Input gate control of Port PD6, PD7 ++#define TMPA910_TS_CR0_PTST (1<<5) // PTST R 0y0 Detection condition ++#define TMPA910_TS_CR0_TWIEN (1<<4) // TWIEN R/W 0y0 INTA interrupt control ++#define TMPA910_TS_CR0_PYEN (1<<3) // PYEN R/W 0y0 SPY ++#define TMPA910_TS_CR0_PXEN (1<<2) // PXEN R/W 0y0 SPX ++#define TMPA910_TS_CR0_MYEN (1<<1) // MYEN R/W 0y0 SMY ++#define TMPA910_TS_CR0_MXEN (1<<0) // MXEN[0] MXEN R/W 0y0 SMX ++ ++ ++struct tmpa910_ts ++{ ++ uint32_t tsicr0; // 0x01f0 tsi control register0 ++ uint32_t tsicr1; // 0x01f4 tsi control register1 ++}; ++ ++#endif /* __TMPA910_TS_H__ */ +diff --git a/arch/arm/mach-tmpa910/include/mach/uncompress.h b/arch/arm/mach-tmpa910/include/mach/uncompress.h +new file mode 100644 +index 0000000..e204732 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/uncompress.h +@@ -0,0 +1,72 @@ ++/* ++ * linux/include/asm-arm/arch-tmpa910/uncompress.h ++ * ++ * Copyright (C) 2004 Metrowerks Corp. ++ * ++ * Based on linux/include/asm-arm/arch-mx1ads/uncompress.h, which is: ++ * Copyright (C) 1999 ARM Limited ++ * Copyright (C) Shane Nay (shane@minirl.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ++ */ ++ ++ ++static void flush(void) ++{ ++ ++} ++ ++#define _in32(__ofs) ( * ( (volatile unsigned long *) (__ofs) ) ) ++#define _out32(__ofs,__val) { (* ( (volatile unsigned long *) (__ofs)) ) = __val; } ++ ++ ++#define _UART0DR 0x000 ++#define _UART0RSR 0x004 ++#define _UART0ECR 0x004 ++#define _UART0FR 0x018 ++#define _UART0ILPR 0x020 ++#define _UART0IBRD 0x024 ++#define _UART0FBRD 0x028 ++#define _UART0LCR_H 0x02C ++#define _UART0CR 0x030 ++#define _UART0IFLS 0x034 ++#define _UART0IMSC 0x038 ++#define _UART0RIS 0x03C ++#define _UART0MIS 0x040 ++#define _UART0ICR 0x044 ++#define _UART0DMACR 0x048 ++ ++#define __reg(x) (*((volatile u32 *)(x))) ++#define UART0FR __reg(0xf2000000+_UART0FR) ++#define UART0DR __reg(0xf2000000+_UART0DR) ++ ++#define UART_FR_TXFE (1 << 7) ++ ++static void putc(int c) ++{ ++ while ((UART0FR & UART_FR_TXFE) == 0); ++ UART0DR = (unsigned long)(c & 0xff); ++} ++ ++static void puthex(unsigned long x) ++{ ++// _out32(0xf08013FC, x); ++} ++ ++/* ++ * nothing to setup and wdog currently not used ++ */ ++#define arch_decomp_setup() ++#define arch_decomp_wdog() +diff --git a/arch/arm/mach-tmpa910/include/mach/vmalloc.h b/arch/arm/mach-tmpa910/include/mach/vmalloc.h +new file mode 100644 +index 0000000..de81a90 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/include/mach/vmalloc.h +@@ -0,0 +1,22 @@ ++/* ++ * linux/include/asm-arm/arch-topas910/vmalloc.h ++ * ++ * Copyright (C) 2000 Russell King. ++ * ++ * 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 ++ */ ++//#define VMALLOC_OFFSET (8*1024*1024) ++//#define VMALLOC_START (((unsigned long)high_memory + VMALLOC_OFFSET) & ~(VMALLOC_OFFSET-1)) ++#define VMALLOC_END (PAGE_OFFSET + 0x20000000) +diff --git a/arch/arm/mach-tmpa910/irq.c b/arch/arm/mach-tmpa910/irq.c +new file mode 100644 +index 0000000..b88348a +--- /dev/null ++++ b/arch/arm/mach-tmpa910/irq.c +@@ -0,0 +1,127 @@ ++/* ++ * arch/arm/mach-tmpa910/irq.c ++ * ++ * Copyright (C) 2008 bplan GmbH ++ * Copyright (C) 2009 Florian Boor ++ * ++ * Based on mach-mx1ads/irq.c, which is: ++ * Copyright (C) 1999 ARM Limited ++ * Copyright (C) 2002 Shane Nay (shane@minirl.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ++ * ++ * TMPA910 main interrupt handling ++ */ ++#include ++#include ++#include ++#include ++ ++#include ++#include ++ ++#include ++#include ++#include ++ ++ ++struct hw_ictl ++{ ++ uint32_t vicirqstatus; // 0x0000 ++ uint32_t vicfiqstatus; // 0x0004 ++ uint32_t vicrawintr; // 0x0008 ++ uint32_t vicintselect; // 0x000c ++ uint32_t vicintenable; // 0x0010 ++ uint32_t vicintenclear; // 0x0014 ++ uint32_t vicsoftint; // 0x0018 ++ uint32_t vicsoftintclear; // 0x001c ++ uint32_t vicprotection; // 0x0020 ++ uint32_t vicswprioritymask; // 0x0024 ++ uint32_t rsd[54]; // 0x0028 - 0x00fC ++ uint32_t vicvectaddr[32]; // 0x0100 - 0x017c ++ uint32_t rsd2[32]; // 0x0180 - 0x01fc ++ uint32_t vicvectpriority[32]; // 0x0200 - 0x027c ++ uint32_t rsd3[32 + 0xc00/4]; // 0x0280 - 0x0dfc ++ uint32_t vicaddress; // 0x0f00 ++}; ++ ++ ++static void tmpa910_ena_irq(unsigned int irq) { ++ ++ volatile struct hw_ictl *hw_ictl = (volatile struct hw_ictl *) INTR_BASE; ++ ++ hw_ictl->vicintenable = 1 << irq; ++} ++ ++ ++static void tmpa910_dis_irq(unsigned int irq) { ++ ++ volatile struct hw_ictl *hw_ictl = (volatile struct hw_ictl *) INTR_BASE; ++ ++ hw_ictl->vicintenclear = 1 << irq; ++} ++ ++ ++static void tmpa910_ack_irq(unsigned int irq) { ++ ++ volatile struct hw_ictl *hw_ictl = (volatile struct hw_ictl *) INTR_BASE; ++ ++ hw_ictl->vicintenclear = 1 << irq; ++ hw_ictl->vicaddress = 0x12345678; ++} ++ ++ ++static void tmpa910_end_irq(unsigned int irq) { ++ ++ volatile struct hw_ictl *hw_ictl = (volatile struct hw_ictl *) INTR_BASE; ++ ++ if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS))) { ++ hw_ictl->vicintenable = 1 << irq; ++ } ++} ++ ++ ++static struct irq_chip tmpa910_chip = { ++ .typename = "tmpa910", ++ ++ .ack = tmpa910_ack_irq, ++ .end = tmpa910_end_irq, ++ ++ .mask = tmpa910_dis_irq, ++ .unmask = tmpa910_ena_irq, ++}; ++ ++ ++void __init tmpa910_init_irq(void) ++{ ++ volatile struct hw_ictl *hw_ictl = (volatile struct hw_ictl *) INTR_BASE; ++ int i; ++ ++ /* Every interrupt to the IRQ execpetion */ ++ hw_ictl->vicintselect = 0; ++ ++ /* make sure every pri unmasked */ ++ hw_ictl->vicswprioritymask = 0xffffffff; ++ ++ /* this help to obtain the interrupt vector in the service call */ ++ for(i=0; i < 32; i++) ++ hw_ictl->vicvectaddr[i] = i; ++ ++ for (i = 0; i < TMPA910_NUM_IRQS; i++) { ++ set_irq_chip(i, &tmpa910_chip); ++ set_irq_handler(i, handle_level_irq); ++ set_irq_flags(i, IRQF_VALID ); ++ } ++} ++ +diff --git a/arch/arm/mach-tmpa910/led-topas910.c b/arch/arm/mach-tmpa910/led-topas910.c +new file mode 100644 +index 0000000..239e8df +--- /dev/null ++++ b/arch/arm/mach-tmpa910/led-topas910.c +@@ -0,0 +1,194 @@ ++/* ++ * arch/arm/mach-tmpa910/led-topas910.c ++ * ++ * Copyright (C) 2009 Florian Boor ++ * ++ * 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 ++ * ++ * Toshiba Topas 910, LED driver, mainly for GPIO testing ++ * ++ */ ++ ++#include ++#include ++#include ++ ++#include ++#include ++ ++#include ++ ++#include ++#include ++#include ++ ++#include "topas910.h" ++ ++#define GPIO_LED_SEG_A 8 ++#define GPIO_LED_SEG_B 9 ++#define GPIO_LED_SEG_C 10 ++#define GPIO_LED_SEG_D 11 ++#define GPIO_LED_SEG_E 12 ++#define GPIO_LED_SEG_F 13 ++#define GPIO_LED_SEG_G 14 ++#define GPIO_LED_SEG_DP 15 ++ ++/* Pattern for digits from 0 to 9, "L.", clear, all on */ ++static const unsigned char pattern[] = {0x3F, 0x06/*1*/, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0xB8, 0x00, 0xFF}; ++static unsigned int num_pattern = ARRAY_SIZE(pattern); ++static int saved_state; ++ ++ ++static void segments_set(int value) ++{ ++ int i; ++ ++ if (value >= num_pattern) ++ return; ++ ++ if (value < 0) ++ return; ++ ++ for (i=0; i<8; i++) ++ gpio_set_value(GPIO_LED_SEG_A + i, (pattern[value] & (1 << i)) ? 0 : 1); ++} ++ ++static int segments_get(void) ++{ ++ int i, p = 0; ++ ++ for (i=0; i<8; i++) ++ p |= (gpio_get_value(GPIO_LED_SEG_A + i) ? 0 : (1 << i)); ++ ++ for (i=0; idev, &dev_attr_led_segment); ++ ++ return 0; ++} ++ ++static int __devexit topas_led_remove(struct platform_device *pdev) ++{ ++ gpio_free(GPIO_LED_SEG_A); ++ gpio_free(GPIO_LED_SEG_B); ++ gpio_free(GPIO_LED_SEG_C); ++ gpio_free(GPIO_LED_SEG_D); ++ gpio_free(GPIO_LED_SEG_E); ++ gpio_free(GPIO_LED_SEG_F); ++ gpio_free(GPIO_LED_SEG_G); ++ gpio_free(GPIO_LED_SEG_DP); ++ ++ return 0; ++} ++ ++#ifdef CONFIG_PM ++ ++static int topas_led_suspend(struct platform_device *pdev, pm_message_t state) ++{ ++ saved_state = segments_get(); ++ segments_set(11); /* all led off */ ++ ++ return 0; ++} ++ ++static int topas_led_resume(struct platform_device *pdev) ++{ ++ segments_set(saved_state); ++ ++ return 0; ++} ++#else ++ ++#define topas_led_suspend NULL ++#define topas_led_resume NULL ++ ++#endif ++ ++static struct platform_driver topas_led_driver = { ++ .probe = topas_led_probe, ++ .remove = __devexit_p(topas_led_remove), ++ .suspend = topas_led_suspend, ++ .resume = topas_led_resume, ++ .driver = { ++ .name = "led-topas", ++ .owner = THIS_MODULE, ++ }, ++}; ++ ++static int __init topas_led_init(void) ++{ ++ return platform_driver_register(&topas_led_driver); ++} ++ ++static void __exit topas_led_exit(void) ++{ ++ platform_driver_unregister(&topas_led_driver); ++} ++ ++module_init(topas_led_init); ++module_exit(topas_led_exit); ++ ++MODULE_LICENSE("GPL"); ++MODULE_AUTHOR("Florian Boor "); ++MODULE_DESCRIPTION("LED driver for TOPAS 910"); +diff --git a/arch/arm/mach-tmpa910/time.c b/arch/arm/mach-tmpa910/time.c +new file mode 100644 +index 0000000..e0b1927 +--- /dev/null ++++ b/arch/arm/mach-tmpa910/time.c +@@ -0,0 +1,285 @@ ++/* ++ * arch/arm/mach-tmpa910/time.c ++ * ++ * Copyright (C) 2000-2001 Deep Blue Solutions ++ * Copyright (C) 2002 Shane Nay (shane@minirl.com) ++ * Copyright (C) 2006 Jochen Karrer (jk06@jkarrer.de) ++ * Copyright (C) 2008 bplan GmbH ++ * ++ * 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. ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++ ++#include ++ ++#include ++#include ++#include ++#include ++#include ++ ++#include ++ ++/*********/ ++ ++struct hw_timer { ++ uint32_t TimerLoad; // 0x0000 ++ uint32_t TimerValue; // 0x0004 ++ uint32_t TimerControl; // 0x0008 ++ uint32_t TimerIntClr; // 0x000C ++ uint32_t TimerRIS; // 0x0010 ++ uint32_t TimerMIS; // 0x0014 ++ uint32_t TimerBGLoad; // 0x0018 ++ uint32_t TimerMode; // 0x001C ++ uint32_t Rsvd[32]; // 0x0020 -> 0x9C ++ uint32_t TimerCompare1; // 0x00A0 Timer0 Compare value ++ uint32_t TimerCmpIntClr1; // 0x00C0 Timer0 Compare Interrupt clear ++ uint32_t TimerCmpEn; // 0x00E0 Timer0 Compare Enable ++ uint32_t TimerCmpRIS; // 0x00E4 Timer0 Compare raw interrupt status ++ uint32_t TimerCmpMIS; // 0x00E8 Timer0 Compare masked int status ++ uint32_t TimerBGCmp; // 0x00EC Background compare value for Timer0 ++}; ++ ++#define TIMxEN (1<<7) ++#define TIMxMOD (1<<6) ++#define TIMxINTE (1<<5) ++#define TIMxSIZE_16B (1<<1) ++#define TIMxOSCTL_NORESTART (1<<0) ++ ++#define TIMxPRS_1 (0x0<<2) ++#define TIMxPRS_16 (0x1<<2) ++#define TIMxPRS_256 (0x2<<2) ++ ++/* ++ * TimerControl ++ * [7] TIM0EN R/W 0y0 Timer 0 enable bit ++ * 0: Disable ++ * 1: Enable ++ * [6] TIM0MOD R/W 0y0 Timer 0 mode setting ++ * 0: Free-running mode ++ * 1: Periodic timer mode ++ * [5] TIM0INTE R/W 0y0 Timer 0 interrupt control ++ * 0: Disable inerrupts ++ * 1: Enable interrupts ++ * - - ++ * [4] Undefined Read undefined. Write as zero. ++ * [3:2] TIM0PRS R/W 0y00 Timer 0 prescaler setting ++ * 00: No division ++ * 01: Divide by 16 ++ * 10: Divide by 256 ++ * 11: Setting prohibited ++ * [1] TIM0SIZE R/W 0y0 8-bit/16-bit counter select for Timer 0 ++ * 0: 8-bit counter ++ * 1: 16-bit counter ++ * [0] TIM0OSCTL R/W 0y0 One-shot/wrapping mode select for Timer 0 ++ * 0: Wrapping mode ++ * 1: One-shot mode ++*/ ++ ++#define GPT_COUNT 6 ++ ++/* system timer reference clock, in Hz */ ++#define REFCLK (32768) ++ ++/* timer counter value, to get an interrupt every HZ */ ++#define TIMER_RELOAD (REFCLK/HZ) ++ ++/* conversion from timer counter values to microseconds */ ++#define TICKS2USECS(x) ((x) * 1000000 / REFCLK) ++ ++ ++/*********/ ++/*********/ ++static irqreturn_t topas910_timer_interrupt(int irq, void *dev_id) ++{ ++ volatile struct hw_timer *hw_timer = ++ (volatile struct hw_timer *)TMPA910_TIMER0; ++ ++ struct clock_event_device *c = dev_id; ++ ++ //NPRINTK("-> irq=%d, c =%p, TimerMIS=0x%x, TimerRIS=0x%x, TimerControl=0x%x\n", ++ // irq, c, hw_timer->TimerMIS, hw_timer->TimerRIS, hw_timer->TimerControl); ++ ++ c->event_handler(c); ++ ++ /* clear the interrupt */ ++ if (hw_timer->TimerMIS) ++ hw_timer->TimerIntClr = -1; ++ ++ return IRQ_HANDLED; ++} ++ ++/*********/ ++/*********/ ++static void ++tmpa910_set_mode(enum clock_event_mode mode, struct clock_event_device *dev) ++{ ++ unsigned long irqflags; ++ uint32_t TimerControl; ++ volatile struct hw_timer *hw_timer = ++ (volatile struct hw_timer *)TMPA910_TIMER0; ++ ++ TimerControl = 0; ++ ++ raw_local_irq_save(irqflags); ++ ++ ++ switch (mode) { ++ ++ case CLOCK_EVT_MODE_UNUSED: ++ case CLOCK_EVT_MODE_SHUTDOWN: ++ /* initializing, released, or preparing for suspend */ ++ break; ++ ++ case CLOCK_EVT_MODE_RESUME: ++ break; ++ ++ case CLOCK_EVT_MODE_ONESHOT: ++ TimerControl |=TIMxOSCTL_NORESTART; ++ ++ case CLOCK_EVT_MODE_PERIODIC: ++ ++ ++ hw_timer->TimerLoad = TIMER_RELOAD; ++ hw_timer->TimerValue = 0; ++ ++ // Default to 16 bits timers ++ TimerControl |= TIMxEN | TIMxSIZE_16B; ++ ++ TimerControl |= TIMxMOD; ++ TimerControl |= TIMxINTE; ++ ++ break; ++ } ++ ++ hw_timer->TimerControl = TimerControl; ++ ++ raw_local_irq_restore(irqflags); ++ ++} ++ ++/*********/ ++static int ++tmpa910_set_next_event(unsigned long delta, struct clock_event_device *dev) ++{ ++ volatile struct hw_timer *hw_timer = ++ (volatile struct hw_timer *)TMPA910_TIMER0; ++ unsigned long flags; ++ ++ uint32_t TimerControl; ++ ++ //NPRINTK("-> delta=%ld. dev=%p\n", delta, dev); ++ ++ raw_local_irq_save(flags); ++ ++ hw_timer->TimerLoad = delta; ++ hw_timer->TimerValue = 0; ++ ++ // Default to 16 bits timers ++ TimerControl = TIMxEN | TIMxSIZE_16B; ++ ++ TimerControl |= TIMxMOD; ++ TimerControl |= TIMxINTE; ++ ++ hw_timer->TimerControl = TimerControl; ++ ++ raw_local_irq_restore(flags); ++ ++ //NPRINTK("-> hTimerControl=%pm val=0x%x\n", hw_timer->TimerControl, hw_timer->TimerValue); ++ ++ return (signed)0; ++} ++ ++/*********/ ++/*********/ ++static cycle_t tmpa910_readcycle(void) ++{ ++ volatile struct hw_timer *hw_timer = ++ (volatile struct hw_timer *)TMPA910_TIMER0; ++ ++ unsigned long ticks = 10; ++ ++ ticks = hw_timer->TimerValue; ++ ++ //NPRINTK("ticks=%ld\n", ticks); ++ ++ return (cycle_t) ticks; ++} ++ ++/*********/ ++/*********/ ++static struct clock_event_device clockevent_tmpa910 = { ++ .name = "tmpa910_timer", ++ .features = 0, ++ .shift = 32, ++ .set_mode = tmpa910_set_mode, ++ .set_next_event = tmpa910_set_next_event, ++ .rating = 200, ++}; ++ ++static struct irqaction topas910_timer_irq = { ++ .name = "TMPA910/TOPAS910 Timer Tick", ++ .flags = IRQF_DISABLED | IRQF_TIMER, ++ .handler = topas910_timer_interrupt, ++ .dev_id = &clockevent_tmpa910, ++}; ++ ++static struct clocksource cksrc_tmpa910 = { ++ .name = "tmpa910", ++ .rating = 450, ++ .read = tmpa910_readcycle, ++}; ++ ++static int tmpa910_clockevent_init(int clock_tick_rate) ++{ ++ ++ cksrc_tmpa910.mask = CLOCKSOURCE_MASK(32); ++ cksrc_tmpa910.shift = 20; ++ cksrc_tmpa910.mult = ++ clocksource_hz2mult(clock_tick_rate, cksrc_tmpa910.shift); ++ ++ clockevent_tmpa910.mult = ++ div_sc(clock_tick_rate, NSEC_PER_SEC, clockevent_tmpa910.shift); ++ clockevent_tmpa910.max_delta_ns = ++ clockevent_delta2ns(0xfffffffe, &clockevent_tmpa910); ++ clockevent_tmpa910.min_delta_ns = ++ clockevent_delta2ns(0xf, &clockevent_tmpa910); ++ ++ clockevent_tmpa910.features = CLOCK_EVT_FEAT_PERIODIC; ++ ++ clockevent_tmpa910.cpumask = cpumask_of(0); ++ ++ clocksource_register(&cksrc_tmpa910); ++ clockevents_register_device(&clockevent_tmpa910); ++ ++ return 0; ++} ++ ++static void topas910_timer_init(void) ++{ ++ volatile struct hw_timer *hw_timer = ++ (volatile struct hw_timer *)TMPA910_TIMER0; ++ ++ hw_timer->TimerControl = 0; ++ ++ setup_irq(INTR_VECT_TIMER01, &topas910_timer_irq); ++ ++ tmpa910_clockevent_init(REFCLK); ++} ++ ++struct sys_timer topas910_timer = { ++ .init = topas910_timer_init, ++}; ++ +diff --git a/arch/arm/mach-tmpa910/tonga.c b/arch/arm/mach-tmpa910/tonga.c +new file mode 100644 +index 0000000..ebfd70e +--- /dev/null ++++ b/arch/arm/mach-tmpa910/tonga.c +@@ -0,0 +1,590 @@ ++/* ++ * arch/arm/mach-tmpa910/tonga.c ++ * ++ * Copyright (C) 2010 Florian Boor ++ * Based on tonga.c ++ * ++ * 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 ++ * ++ * Glyn ARM9 / Tonga machine definition, multi purpose Toshiba TMPA900 based SoM ++ * ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++ ++#include