summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Grzeschik <m.grzeschik@pengutronix.de>2013-11-20 12:47:46 +0100
committerMichael Grzeschik <m.grzeschik@pengutronix.de>2013-11-21 15:36:10 +0100
commit6bdf3cbaa9d64496c2deced70ba9b845e79f20b1 (patch)
treee959f21051161492b274d4f779b43471bb089092
parent09c0238f1dc3f411ee3e81d1731eea314918db49 (diff)
downloadplatform-pengutronix-beaglebone-6bdf3cbaa9d64496c2deced70ba9b845e79f20b1.tar.gz
platform-pengutronix-beaglebone-6bdf3cbaa9d64496c2deced70ba9b845e79f20b1.tar.xz
kernel: add 3.12 patches
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
-rw-r--r--kernelconfig-3.124115
-rw-r--r--kernelconfig-3.8.13 (renamed from kernelconfig)0
-rw-r--r--patches/linux-3.12/0001-w1-gpio-Detect-of_gpio_error-for-first-gpio.patch39
-rw-r--r--patches/linux-3.12/0002-w1-gpio-Use-devm_-functions.patch82
-rw-r--r--patches/linux-3.12/0051-regulator-tps65910-Add-backup-battery-regulator.patch132
-rw-r--r--patches/linux-3.12/0052-ARM-dts-regulator-tps65910-node.patch24
-rw-r--r--patches/linux-3.12/0101-usb-musb-gadget-stay-IDLE-without-gadget-driver.patch56
-rw-r--r--patches/linux-3.12/0102-usb-musb-Bugfix-of_node-assignment.patch56
-rw-r--r--patches/linux-3.12/0103-usb-musb-dsps-debugfs-files.patch112
-rw-r--r--patches/linux-3.12/0104-usb-musb-dsps-use-devm_kzalloc.patch38
-rw-r--r--patches/linux-3.12/0105-usb-musb-dsps-OTG-detection.patch160
-rw-r--r--patches/linux-3.12/0106-ARM-dts-am33xx-change-usb-ctrl-module-label.patch43
-rw-r--r--patches/linux-3.12/0151-omap-hsmmc-Correct-usage-of-of_find_node_by_name.patch30
-rw-r--r--patches/linux-3.12/0201-ARM-dts-N900-Add-device-tree.patch126
-rw-r--r--patches/linux-3.12/0202-ARM-dts-omap3-igep-add-pinmux-node-for-GPIO-LED-conf.patch36
-rw-r--r--patches/linux-3.12/0203-ARM-dts-omap3-igep0020-add-mux-conf-for-GPIO-LEDs.patch44
-rw-r--r--patches/linux-3.12/0204-ARM-dts-omap3-igep0030-add-mux-conf-for-GPIO-LED.patch42
-rw-r--r--patches/linux-3.12/0205-ARM-dts-AM33XX-Add-PMU-support.patch31
-rw-r--r--patches/linux-3.12/0206-ARM-dts-AM33xx-Correct-gpio-interrupt-cells-property.patch57
-rw-r--r--patches/linux-3.12/0207-ARM-dts-omap5-uevm-Split-SMPS10-in-two-nodes.patch38
-rw-r--r--patches/linux-3.12/0208-ARM-dts-Remove-0x-s-from-OMAP2420-H4-DTS-file.patch34
-rw-r--r--patches/linux-3.12/0209-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0020-DTS-file.patch39
-rw-r--r--patches/linux-3.12/0210-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0030-DTS-file.patch39
-rw-r--r--patches/linux-3.12/0211-ARM-dts-Remove-0x-s-from-OMAP3-DTS-file.patch24
-rw-r--r--patches/linux-3.12/0212-ARM-dts-Remove-0x-s-from-OMAP3430-SDP-DTS-file.patch82
-rw-r--r--patches/linux-3.12/0213-ARM-dts-Remove-0x-s-from-OMAP4-DTS-file.patch24
-rw-r--r--patches/linux-3.12/0214-ARM-dts-Remove-0x-s-from-OMAP5-DTS-file.patch33
-rw-r--r--patches/linux-3.12/0215-ARM-dts-twl6030-Move-common-configuration-for-OMAP4-.patch164
-rw-r--r--patches/linux-3.12/0216-ARM-dts-DRA7-Add-the-dts-files-for-dra7-SoC-and-dra7.patch822
-rw-r--r--patches/linux-3.12/0217-ARM-dts-AM4372-cpu-s-node-per-latest-binding.patch30
-rw-r--r--patches/linux-3.12/0218-ARM-dts-AM4372-add-few-nodes.patch402
-rw-r--r--patches/linux-3.12/0219-ARM-dts-Add-devicetree-for-gta04-board.patch201
-rw-r--r--patches/linux-3.12/0220-ARM-dts-omap3-beagle-Make-USB-host-pin-naming-consis.patch48
-rw-r--r--patches/linux-3.12/0221-ARM-dts-OMAP5-add-palmas-usb-node.patch61
-rw-r--r--patches/linux-3.12/0222-ARM-dts-AM33XX-Add-EDMA-support.patch42
-rw-r--r--patches/linux-3.12/0223-ARM-dts-AM33XX-Add-SPI-DMA-support.patch41
-rw-r--r--patches/linux-3.12/0224-ARM-dts-AM33XX-Add-MMC-support-and-documentation.patch180
-rw-r--r--patches/linux-3.12/0225-ARM-dts-am335x-bone-add-CD-for-mmc1.patch56
-rw-r--r--patches/linux-3.12/0226-ARM-dts-am335x-boneblack-add-eMMC-DT-entry.patch78
-rw-r--r--patches/linux-3.12/0227-ARM-dts-am335x-bone-common-switch-mmc1-to-4-bit-mode.patch26
-rw-r--r--patches/linux-3.12/0228-ARM-dts-am335x-bone-common-add-cpu0-and-mmc1-trigger.patch43
-rw-r--r--patches/linux-3.12/0229-ARM-dts-AM33XX-use-pinmux-node-defined-in-included-f.patch804
-rw-r--r--patches/linux-3.12/0230-ARM-dts-AM33XX-don-t-redefine-OCP-bus-and-device-nod.patch703
-rw-r--r--patches/linux-3.12/0231-ARM-dts-omap3-devkit8000-fix-a-typo-in-GMPC-node.patch26
-rw-r--r--patches/linux-3.12/0232-ARM-dts-DRA7-Add-TPS659038-PMIC-nodes.patch146
-rw-r--r--patches/linux-3.12/0233-ARM-dts-AM33XX-add-ethernet-alias-s-for-am33xx.patch30
-rw-r--r--patches/linux-3.12/0234-ARM-dts-omap3-beagle-Use-reset-gpios-for-hsusb2_rese.patch44
-rw-r--r--patches/linux-3.12/0235-ARM-dts-omap4-panda-Use-reset-gpios-for-hsusb1_reset.patch49
-rw-r--r--patches/linux-3.12/0236-ARM-dts-omap5-uevm-Use-reset-gpios-for-hsusb2-3_rese.patch63
-rw-r--r--patches/linux-3.12/0237-ARM-dts-omap3-beagle-xm-Add-USB-Host-support.patch111
-rw-r--r--patches/linux-3.12/0238-ARM-dts-omap3-beagle-Add-USB-OTG-PHY-details.patch28
-rw-r--r--patches/linux-3.12/0239-ARM-dts-am335x-boneblack-move-fixed-regulator-to-boa.patch54
-rw-r--r--patches/linux-3.12/0240-ARM-dts-AM33XX-Add-support-for-IGEP-COM-AQUILA.patch295
-rw-r--r--patches/linux-3.12/0241-ARM-dts-AM33XX-Add-support-for-IGEP-AQUILA-EXPANSION.patch61
-rw-r--r--patches/linux-3.12/0242-ARM-dts-am335x-bone-common-correct-mux-mode-for-cmd-.patch27
-rw-r--r--patches/linux-3.12/0243-ARM-dts-am335x-evm-sdk-switch-mmc1-to-4-bit-mode.patch33
-rw-r--r--patches/linux-3.12/0244-ARM-dts-OMAP4-Add-AES-node.patch32
-rw-r--r--patches/linux-3.12/0245-ARM-dts-OMAP4-Add-DES3DES-node.patch32
-rw-r--r--patches/linux-3.12/0246-ARM-dts-AM33XX-Add-SHAM-data-and-documentation.patch113
-rw-r--r--patches/linux-3.12/0247-ARM-dts-AM33XX-Add-AES-data-and-documentation.patch116
-rw-r--r--patches/linux-3.12/0248-ARM-dts-AM33XX-Fix-AES-interrupt-number.patch27
-rw-r--r--patches/linux-3.12/0249-ARM-dts-AM437X-Add-AES-node.patch30
-rw-r--r--patches/linux-3.12/0250-ARM-dts-AM437X-Add-DES-node.patch30
-rw-r--r--patches/linux-3.12/0251-ARM-dts-AM33XX-Add-LCDC-info-into-am335x-evm.patch135
-rw-r--r--patches/linux-3.12/0252-ARM-dts-AM33XX-beagle-black-add-pinmux-and-hdmi-node.patch72
-rw-r--r--patches/linux-3.12/0253-ARM-dts-omap3-igep-Add-USB-OTG-support.patch33
-rw-r--r--patches/linux-3.12/0254-ARM-dts-omap3-igep0020-Add-HS-USB-Host-support.patch79
-rw-r--r--patches/linux-3.12/0255-ARM-dts-omap3-igep0020-use-standard-constant-for-IRQ.patch27
-rw-r--r--patches/linux-3.12/0256-ARM-dts-omap5-uevm-mark-TWL6037-as-system-power-cont.patch25
-rw-r--r--patches/linux-3.12/0257-ARM-dts-dra7-evm-Add-mmc1-node-for-micro-sd-support.patch30
-rw-r--r--patches/linux-3.12/0258-ARM-dts-dra7-evm-Add-mmc2-node-for-eMMC-support.patch42
-rw-r--r--patches/linux-3.12/0259-ARM-dts-OMAP5-Remove-clock-frequency-field-for-cpu-t.patch29
-rw-r--r--patches/linux-3.12/0260-ARM-dts-omap3-Adapt-USB-OTG-to-generic-PHY-framework.patch46
-rw-r--r--patches/linux-3.12/0261-ARM-dts-omap-Add-reset-idle-on-init-bindings-for-OMA.patch109
-rw-r--r--patches/linux-3.12/0262-ARM-dts-am335x-evmsk-Do-not-reset-gpio0.patch28
-rw-r--r--patches/linux-3.12/0263-ARM-dts-omap4-panda-es-Do-not-reset-gpio1.patch30
-rw-r--r--patches/linux-3.12/0264-ARM-dts-omap5-uevm-remove-always_on-boot_on-from-smp.patch29
-rw-r--r--patches/linux-3.12/0265-ARM-dts-OMAP5-Add-dr_mode-for-dwc3.patch25
-rw-r--r--patches/linux-3.12/0266-ARM-dts-AM4372-Add-L2-EDMA-mailbox-MMC-and-SHAM-node.patch337
-rw-r--r--patches/linux-3.12/0267-ARM-dts-AM4372-Update-Support-for-EPOS-EVM.patch236
-rw-r--r--patches/linux-3.12/0268-ARM-dts-AM33XX-Add-mcasp0-and-mcasp1-device-tree-ent.patch48
-rw-r--r--patches/linux-3.12/0269-ARM-dts-AM33XX-mcasp-Add-location-for-data-port-regi.patch44
-rw-r--r--patches/linux-3.12/0270-ARM-dts-am335x-evm-Add-audio-support-for-am335x-evm..patch96
-rw-r--r--patches/linux-3.12/0271-ARM-dts-am335x-evmsk-Audio-support.patch95
-rw-r--r--patches/linux-3.12/0272-ARM-dts-omap3-beagle-Adapt-USB-OTG-to-generic-PHY-fr.patch33
-rw-r--r--patches/linux-3.12/0273-ARM-dts-AM4372-Add-McASP-nodes.patch49
-rw-r--r--patches/linux-3.12/0274-ARM-dts-igep0033-Add-mmc1-node-for-SDCARD-support.patch43
-rw-r--r--patches/linux-3.12/0275-ARM-dts-OMAP3-Add-i2c-aliases.patch83
-rw-r--r--patches/linux-3.12/0276-ARM-dts-AM33xx-Add-i2c-aliases.patch41
-rw-r--r--patches/linux-3.12/0277-ARM-dts-Add-support-for-Newflow-NanoBone-board.patch506
-rw-r--r--patches/linux-3.12/0278-ARM-dts-omap5-uevm-fix-mcspi-node-pin-descriptions.patch52
-rw-r--r--patches/linux-3.12/0279-ARM-dts-omap5-uevm-add-smps123-supply-for-CPU.patch40
-rw-r--r--patches/linux-3.12/0280-ARM-dts-dra7-evm-add-smps123-supply-for-CPU.patch40
-rw-r--r--patches/linux-3.12/0281-ARM-dts-OMAP5-Add-CPU-OPP-table.patch43
-rw-r--r--patches/linux-3.12/0282-ARM-dts-DRA7-Add-CPU-OPP-table.patch40
-rw-r--r--patches/linux-3.12/0283-ARM-dts-omap3-n900-Add-pinctrl-for-i2c-devices.patch77
-rw-r--r--patches/linux-3.12/0284-ARM-dts-omap3-n900-Fix-i2c-bus-speed.patch33
-rw-r--r--patches/linux-3.12/0285-ARM-dts-omap3-n900-Add-UART-support.patch55
-rw-r--r--patches/linux-3.12/0286-ARM-dts-omap3-n900-Add-support-for-SD-cards.patch47
-rw-r--r--patches/linux-3.12/0287-ARM-dts-omap3-n900-GPIO-key-definitions.patch73
-rw-r--r--patches/linux-3.12/0288-ARM-dts-omap3-n900-Add-vibrator-device.patch30
-rw-r--r--patches/linux-3.12/0289-ARM-dts-omap3-n900-Add-LP5523-support.patch28
-rw-r--r--patches/linux-3.12/0290-ARM-dts-TWL4030-Add-missing-regulators.patch82
-rw-r--r--patches/linux-3.12/0291-ARM-dts-omap3-n900-Specify-regulator-info.patch108
-rw-r--r--patches/linux-3.12/0292-ARM-dts-omap3-n900-Add-NAND-support.patch95
-rw-r--r--patches/linux-3.12/0293-ARM-dts-omap3-n900-Mux-RX51_LCD_RESET_GPIO-in-DTS.patch40
-rw-r--r--patches/linux-3.12/0294-ARM-dts-omap3-n900-Add-TLV320AIC3X-support.patch49
-rw-r--r--patches/linux-3.12/0295-ARM-dts-omap3-n900-Add-LP5523-support.patch84
-rw-r--r--patches/linux-3.12/0296-ARM-dts-TWL4030-Add-power-button-support.patch26
-rw-r--r--patches/linux-3.12/0297-ARM-dts-omap5-uevm-Correct-twl6040-reset-GPIO-pinmux.patch29
-rw-r--r--patches/linux-3.12/0298-ARM-dts-omap5-uevm-Remove-pinmux-for-dmic-pins.patch44
-rw-r--r--patches/linux-3.12/0301-Release-3.12-customers-ptx-bbb-20131120-1.patch22
-rw-r--r--patches/linux-3.12/series131
-rw-r--r--platformconfig10
114 files changed, 14207 insertions, 5 deletions
diff --git a/kernelconfig-3.12 b/kernelconfig-3.12
new file mode 100644
index 0000000..aaa0f96
--- /dev/null
+++ b/kernelconfig-3.12
@@ -0,0 +1,4115 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/arm 3.12.0-20131119-1 Kernel Configuration
+#
+CONFIG_ARM=y
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_HAVE_PROC_CPU=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_ARCH_HAS_CPUFREQ=y
+CONFIG_ARCH_HAS_BANDGAP=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_VECTORS_BASE=0xffff0000
+CONFIG_ARM_PATCH_PHYS_VIRT=y
+CONFIG_GENERIC_BUG=y
+CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_EXTABLE_SORT=y
+
+#
+# General setup
+#
+CONFIG_BROKEN_ON_SMP=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_CROSS_COMPILE=""
+# CONFIG_COMPILE_TEST is not set
+CONFIG_LOCALVERSION=""
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_HAVE_KERNEL_GZIP=y
+CONFIG_HAVE_KERNEL_LZMA=y
+CONFIG_HAVE_KERNEL_XZ=y
+CONFIG_HAVE_KERNEL_LZO=y
+CONFIG_HAVE_KERNEL_LZ4=y
+# CONFIG_KERNEL_GZIP is not set
+# CONFIG_KERNEL_LZMA is not set
+# CONFIG_KERNEL_XZ is not set
+CONFIG_KERNEL_LZO=y
+# CONFIG_KERNEL_LZ4 is not set
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+# CONFIG_FHANDLE is not set
+# CONFIG_AUDIT is not set
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_GENERIC_IRQ_CHIP=y
+CONFIG_IRQ_DOMAIN=y
+# CONFIG_IRQ_DOMAIN_DEBUG is not set
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+CONFIG_KTIME_SCALAR=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
+
+#
+# CPU/Task time and stats accounting
+#
+CONFIG_TICK_CPU_ACCOUNTING=y
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_BSD_PROCESS_ACCT_V3=y
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TINY_RCU=y
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_RCU_STALL_COMMON is not set
+# CONFIG_TREE_RCU_TRACE is not set
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+CONFIG_LOG_BUF_SHIFT=17
+CONFIG_GENERIC_SCHED_CLOCK=y
+CONFIG_CGROUPS=y
+# CONFIG_CGROUP_DEBUG is not set
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_RESOURCE_COUNTERS=y
+CONFIG_MEMCG=y
+# CONFIG_MEMCG_SWAP is not set
+# CONFIG_MEMCG_KMEM is not set
+# CONFIG_CGROUP_PERF is not set
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+# CONFIG_CFS_BANDWIDTH is not set
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_BLK_CGROUP=y
+# CONFIG_DEBUG_BLK_CGROUP is not set
+# CONFIG_CHECKPOINT_RESTORE is not set
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+CONFIG_UIDGID_STRICT_TYPE_CHECKS=y
+CONFIG_SCHED_AUTOGROUP=y
+CONFIG_MM_OWNER=y
+# CONFIG_SYSFS_DEPRECATED is not set
+# CONFIG_RELAY is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+# CONFIG_RD_BZIP2 is not set
+# CONFIG_RD_LZMA is not set
+# CONFIG_RD_XZ is not set
+# CONFIG_RD_LZO is not set
+# CONFIG_RD_LZ4 is not set
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+CONFIG_HAVE_UID16=y
+CONFIG_EXPERT=y
+CONFIG_UID16=y
+# CONFIG_SYSCTL_SYSCALL is not set
+CONFIG_KALLSYMS=y
+CONFIG_KALLSYMS_ALL=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+# CONFIG_EMBEDDED is not set
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_PERF_USE_VMALLOC=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_COMPAT_BRK=y
+CONFIG_SLAB=y
+# CONFIG_SLUB is not set
+# CONFIG_SLOB is not set
+CONFIG_PROFILING=y
+CONFIG_OPROFILE=m
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
+# CONFIG_JUMP_LABEL is not set
+# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GENERIC_IDLE_POLL_SETUP=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_DMA_API_DEBUG=y
+CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_HAVE_CONTEXT_TRACKING=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_MODULES_USE_ELF_REL=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_OLD_SIGSUSPEND3=y
+CONFIG_OLD_SIGACTION=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_GCOV_KERNEL is not set
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+CONFIG_MODULE_FORCE_LOAD=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+CONFIG_MODVERSIONS=y
+CONFIG_MODULE_SRCVERSION_ALL=y
+# CONFIG_MODULE_SIG is not set
+CONFIG_BLOCK=y
+CONFIG_LBDAF=y
+CONFIG_BLK_DEV_BSG=y
+CONFIG_BLK_DEV_BSGLIB=y
+CONFIG_BLK_DEV_INTEGRITY=y
+# CONFIG_BLK_DEV_THROTTLING is not set
+CONFIG_BLK_CMDLINE_PARSER=y
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_AIX_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=y
+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=y
+# CONFIG_SYSV68_PARTITION is not set
+CONFIG_CMDLINE_PARTITION=y
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+# CONFIG_CFQ_GROUP_IOSCHED is not set
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED="cfq"
+CONFIG_ASN1=m
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+CONFIG_FREEZER=y
+
+#
+# System Type
+#
+CONFIG_MMU=y
+CONFIG_ARCH_MULTIPLATFORM=y
+# 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_NETX is not set
+# CONFIG_ARCH_IOP13XX is not set
+# CONFIG_ARCH_IOP32X is not set
+# CONFIG_ARCH_IOP33X is not set
+# CONFIG_ARCH_IXP4XX is not set
+# CONFIG_ARCH_DOVE is not set
+# CONFIG_ARCH_KIRKWOOD 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_W90X900 is not set
+# CONFIG_ARCH_LPC32XX is not set
+# CONFIG_ARCH_PXA is not set
+# CONFIG_ARCH_MSM is not set
+# CONFIG_ARCH_SHMOBILE is not set
+# CONFIG_ARCH_RPC is not set
+# CONFIG_ARCH_SA1100 is not set
+# CONFIG_ARCH_S3C24XX is not set
+# CONFIG_ARCH_S3C64XX is not set
+# CONFIG_ARCH_S5P64X0 is not set
+# CONFIG_ARCH_S5PC100 is not set
+# CONFIG_ARCH_S5PV210 is not set
+# CONFIG_ARCH_EXYNOS is not set
+# CONFIG_ARCH_SHARK is not set
+# CONFIG_ARCH_DAVINCI is not set
+# CONFIG_ARCH_OMAP1 is not set
+
+#
+# Multiple platform selection
+#
+
+#
+# CPU Core family selection
+#
+CONFIG_ARCH_MULTI_V6=y
+CONFIG_ARCH_MULTI_V7=y
+CONFIG_ARCH_MULTI_V6_V7=y
+# CONFIG_ARCH_MULTI_CPU_AUTO is not set
+# CONFIG_ARCH_MVEBU is not set
+# CONFIG_ARCH_BCM is not set
+# CONFIG_ARCH_BCM2835 is not set
+# CONFIG_ARCH_CNS3XXX is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+# CONFIG_ARCH_HIGHBANK is not set
+# CONFIG_ARCH_KEYSTONE is not set
+# CONFIG_ARCH_MXC is not set
+
+#
+# TI OMAP Common Features
+#
+
+#
+# OMAP Feature Selections
+#
+CONFIG_OMAP_RESET_CLOCKS=y
+CONFIG_OMAP_MUX=y
+CONFIG_OMAP_MUX_DEBUG=y
+CONFIG_OMAP_MUX_WARNINGS=y
+CONFIG_OMAP_32K_TIMER=y
+CONFIG_OMAP_DM_TIMER=y
+CONFIG_OMAP_PM_NOOP=y
+CONFIG_MACH_OMAP_GENERIC=y
+CONFIG_ARCH_OMAP=y
+# CONFIG_ARCH_OMAP2 is not set
+# CONFIG_ARCH_OMAP3 is not set
+# CONFIG_ARCH_OMAP4 is not set
+# CONFIG_SOC_OMAP5 is not set
+CONFIG_SOC_AM33XX=y
+# CONFIG_SOC_AM43XX is not set
+CONFIG_ARCH_OMAP2PLUS=y
+
+#
+# TI OMAP2/3/4 Specific Features
+#
+CONFIG_ARCH_OMAP2PLUS_TYPICAL=y
+CONFIG_SOC_HAS_OMAP2_SDRC=y
+# CONFIG_SOC_DRA7XX is not set
+
+#
+# OMAP Board Type
+#
+# CONFIG_ARCH_PICOXCELL is not set
+# CONFIG_ARCH_ROCKCHIP is not set
+# CONFIG_ARCH_SOCFPGA is not set
+# CONFIG_PLAT_SPEAR is not set
+# CONFIG_ARCH_STI is not set
+# CONFIG_ARCH_SHMOBILE_MULTI is not set
+# CONFIG_ARCH_SUNXI is not set
+# CONFIG_ARCH_SIRF is not set
+# CONFIG_ARCH_TEGRA is not set
+# CONFIG_ARCH_U8500 is not set
+# CONFIG_ARCH_VEXPRESS is not set
+# CONFIG_ARCH_VIRT is not set
+# CONFIG_ARCH_WM8750 is not set
+# CONFIG_ARCH_WM8850 is not set
+# CONFIG_ARCH_ZYNQ is not set
+
+#
+# Processor Type
+#
+CONFIG_CPU_V6=y
+CONFIG_CPU_V7=y
+CONFIG_CPU_32v6=y
+CONFIG_CPU_32v6K=y
+CONFIG_CPU_32v7=y
+CONFIG_CPU_ABRT_EV6=y
+CONFIG_CPU_ABRT_EV7=y
+CONFIG_CPU_PABRT_V6=y
+CONFIG_CPU_PABRT_V7=y
+CONFIG_CPU_CACHE_V6=y
+CONFIG_CPU_CACHE_V7=y
+CONFIG_CPU_CACHE_VIPT=y
+CONFIG_CPU_COPY_V6=y
+CONFIG_CPU_TLB_V6=y
+CONFIG_CPU_TLB_V7=y
+CONFIG_CPU_HAS_ASID=y
+CONFIG_CPU_CP15=y
+CONFIG_CPU_CP15_MMU=y
+CONFIG_CPU_USE_DOMAINS=y
+
+#
+# Processor Features
+#
+# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
+CONFIG_ARM_THUMB=y
+CONFIG_ARM_THUMBEE=y
+CONFIG_ARM_VIRT_EXT=y
+# CONFIG_CPU_ICACHE_DISABLE is not set
+# CONFIG_CPU_DCACHE_DISABLE is not set
+# CONFIG_CPU_BPREDICT_DISABLE is not set
+CONFIG_KUSER_HELPERS=y
+# CONFIG_CACHE_L2X0 is not set
+CONFIG_ARM_L1_CACHE_SHIFT_6=y
+CONFIG_ARM_L1_CACHE_SHIFT=6
+CONFIG_ARM_DMA_MEM_BUFFERABLE=y
+CONFIG_ARM_NR_BANKS=8
+CONFIG_MULTI_IRQ_HANDLER=y
+# CONFIG_ARM_ERRATA_326103 is not set
+# CONFIG_ARM_ERRATA_411920 is not set
+# CONFIG_ARM_ERRATA_430973 is not set
+CONFIG_ARM_ERRATA_720789=y
+CONFIG_ARM_ERRATA_754322=y
+# CONFIG_ARM_ERRATA_364296 is not set
+CONFIG_ARM_ERRATA_775420=y
+# CONFIG_ARM_ERRATA_773022 is not set
+CONFIG_TI_PRIV_EDMA=y
+
+#
+# Bus support
+#
+# CONFIG_PCI_SYSCALL is not set
+# CONFIG_PCCARD is not set
+
+#
+# Kernel Features
+#
+# CONFIG_HAVE_ARM_ARCH_TIMER is not set
+CONFIG_VMSPLIT_3G=y
+# CONFIG_VMSPLIT_2G is not set
+# CONFIG_VMSPLIT_1G is not set
+CONFIG_PAGE_OFFSET=0xC0000000
+# CONFIG_ARM_PSCI is not set
+CONFIG_ARCH_NR_GPIO=0
+# CONFIG_PREEMPT_NONE is not set
+CONFIG_PREEMPT_VOLUNTARY=y
+# CONFIG_PREEMPT is not set
+CONFIG_HZ_FIXED=0
+CONFIG_HZ_100=y
+# CONFIG_HZ_200 is not set
+# CONFIG_HZ_250 is not set
+# CONFIG_HZ_300 is not set
+# CONFIG_HZ_500 is not set
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=100
+CONFIG_SCHED_HRTICK=y
+CONFIG_AEABI=y
+# CONFIG_OABI_COMPAT is not set
+CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y
+# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
+# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
+CONFIG_HAVE_ARCH_PFN_VALID=y
+CONFIG_HIGHMEM=y
+# CONFIG_HIGHPTE is not set
+CONFIG_HW_PERF_EVENTS=y
+CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
+CONFIG_FLATMEM=y
+CONFIG_FLAT_NODE_MEM_MAP=y
+CONFIG_HAVE_MEMBLOCK=y
+# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
+CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_SPLIT_PTLOCK_CPUS=999999
+# CONFIG_COMPACTION is not set
+# CONFIG_PHYS_ADDR_T_64BIT is not set
+CONFIG_ZONE_DMA_FLAG=0
+CONFIG_BOUNCE=y
+CONFIG_NEED_BOUNCE_POOL=y
+# CONFIG_KSM is not set
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_CROSS_MEMORY_ATTACH=y
+CONFIG_NEED_PER_CPU_KM=y
+# CONFIG_CLEANCACHE is not set
+# CONFIG_FRONTSWAP is not set
+# CONFIG_CMA is not set
+# CONFIG_ZBUD is not set
+CONFIG_FORCE_MAX_ZONEORDER=12
+CONFIG_ALIGNMENT_TRAP=y
+# CONFIG_UACCESS_WITH_MEMCPY is not set
+# CONFIG_SECCOMP is not set
+# CONFIG_CC_STACKPROTECTOR is not set
+
+#
+# Boot options
+#
+CONFIG_USE_OF=y
+CONFIG_ATAGS=y
+CONFIG_DEPRECATED_PARAM_STRUCT=y
+CONFIG_ZBOOT_ROM_TEXT=0x0
+CONFIG_ZBOOT_ROM_BSS=0x0
+# CONFIG_ARM_APPENDED_DTB is not set
+CONFIG_CMDLINE=""
+# CONFIG_KEXEC is not set
+# CONFIG_CRASH_DUMP is not set
+CONFIG_AUTO_ZRELADDR=y
+
+#
+# CPU Power Management
+#
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_TABLE=y
+CONFIG_CPU_FREQ_GOV_COMMON=y
+CONFIG_CPU_FREQ_STAT=y
+CONFIG_CPU_FREQ_STAT_DETAILS=y
+CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
+CONFIG_CPU_FREQ_GOV_USERSPACE=y
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
+
+#
+# ARM CPU frequency scaling drivers
+#
+# CONFIG_ARM_KIRKWOOD_CPUFREQ is not set
+# CONFIG_ARM_OMAP2PLUS_CPUFREQ is not set
+
+#
+# CPU Idle
+#
+CONFIG_CPU_IDLE=y
+# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
+CONFIG_CPU_IDLE_GOV_LADDER=y
+CONFIG_CPU_IDLE_GOV_MENU=y
+
+#
+# ARM CPU Idle Drivers
+#
+# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
+
+#
+# Floating point emulation
+#
+
+#
+# At least one emulation must be selected
+#
+CONFIG_VFP=y
+CONFIG_VFPv3=y
+CONFIG_NEON=y
+CONFIG_KERNEL_MODE_NEON=y
+
+#
+# Userspace binary formats
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
+CONFIG_BINFMT_SCRIPT=y
+# CONFIG_HAVE_AOUT is not set
+CONFIG_BINFMT_MISC=y
+# CONFIG_COREDUMP is not set
+
+#
+# Power management options
+#
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+CONFIG_PM_SLEEP=y
+# CONFIG_PM_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM_RUNTIME=y
+CONFIG_PM=y
+CONFIG_PM_DEBUG=y
+# CONFIG_PM_ADVANCED_DEBUG is not set
+# CONFIG_PM_TEST_SUSPEND is not set
+CONFIG_PM_SLEEP_DEBUG=y
+# CONFIG_APM_EMULATION is not set
+CONFIG_PM_CLK=y
+# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
+CONFIG_CPU_PM=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+CONFIG_ARM_CPU_SUSPEND=y
+CONFIG_NET=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+CONFIG_PACKET_DIAG=m
+CONFIG_UNIX=y
+CONFIG_UNIX_DIAG=m
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=y
+CONFIG_XFRM_USER=y
+# CONFIG_XFRM_SUB_POLICY is not set
+CONFIG_XFRM_MIGRATE=y
+# CONFIG_XFRM_STATISTICS is not set
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=y
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+# CONFIG_IP_MULTIPLE_TABLES is not set
+# CONFIG_IP_ROUTE_MULTIPATH is not set
+# CONFIG_IP_ROUTE_VERBOSE is not set
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+CONFIG_IP_PNP_RARP=y
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IP_TUNNEL=m
+CONFIG_NET_IPGRE=m
+# CONFIG_NET_IPGRE_BROADCAST is not set
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+CONFIG_SYN_COOKIES=y
+# CONFIG_NET_IPVTI is not set
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_XFRM_MODE_TRANSPORT=m
+CONFIG_INET_XFRM_MODE_TUNNEL=m
+CONFIG_INET_XFRM_MODE_BEET=m
+CONFIG_INET_LRO=m
+CONFIG_INET_DIAG=y
+CONFIG_INET_TCP_DIAG=y
+CONFIG_INET_UDP_DIAG=m
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+# CONFIG_TCP_MD5SIG is not set
+CONFIG_IPV6=m
+CONFIG_IPV6_PRIVACY=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_TRANSPORT=m
+CONFIG_INET6_XFRM_MODE_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_BEET=m
+CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
+CONFIG_IPV6_SIT=m
+# CONFIG_IPV6_SIT_6RD is not set
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+# CONFIG_NETLABEL is not set
+# CONFIG_NETWORK_SECMARK is not set
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
+CONFIG_NETFILTER=y
+# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=y
+
+#
+# Core Netfilter Configuration
+#
+# CONFIG_NETFILTER_NETLINK_ACCT is not set
+# CONFIG_NETFILTER_NETLINK_QUEUE is not set
+# CONFIG_NETFILTER_NETLINK_LOG is not set
+# CONFIG_NF_CONNTRACK is not set
+CONFIG_NETFILTER_XTABLES=m
+
+#
+# Xtables combined modules
+#
+# CONFIG_NETFILTER_XT_MARK is not set
+
+#
+# Xtables targets
+#
+# CONFIG_NETFILTER_XT_TARGET_CHECKSUM is not set
+# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
+# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
+CONFIG_NETFILTER_XT_TARGET_HL=m
+# CONFIG_NETFILTER_XT_TARGET_HMARK is not set
+# CONFIG_NETFILTER_XT_TARGET_IDLETIMER is not set
+# CONFIG_NETFILTER_XT_TARGET_LED is not set
+# CONFIG_NETFILTER_XT_TARGET_LOG is not set
+# CONFIG_NETFILTER_XT_TARGET_MARK is not set
+# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
+# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
+# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
+# CONFIG_NETFILTER_XT_TARGET_TEE is not set
+# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
+# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
+# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
+# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
+
+#
+# Xtables matches
+#
+# CONFIG_NETFILTER_XT_MATCH_ADDRTYPE is not set
+# CONFIG_NETFILTER_XT_MATCH_BPF is not set
+# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
+# CONFIG_NETFILTER_XT_MATCH_CPU is not set
+# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
+# CONFIG_NETFILTER_XT_MATCH_DEVGROUP is not set
+# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+# CONFIG_NETFILTER_XT_MATCH_ESP is not set
+# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
+CONFIG_NETFILTER_XT_MATCH_HL=m
+# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
+# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
+# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
+# CONFIG_NETFILTER_XT_MATCH_MAC is not set
+# CONFIG_NETFILTER_XT_MATCH_MARK is not set
+# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
+# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set
+# CONFIG_NETFILTER_XT_MATCH_OWNER is not set
+# CONFIG_NETFILTER_XT_MATCH_POLICY is not set
+# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
+# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
+# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
+# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set
+# CONFIG_NETFILTER_XT_MATCH_REALM is not set
+# CONFIG_NETFILTER_XT_MATCH_RECENT is not set
+# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
+# CONFIG_NETFILTER_XT_MATCH_SOCKET is not set
+# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
+# CONFIG_NETFILTER_XT_MATCH_STRING is not set
+# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
+# CONFIG_NETFILTER_XT_MATCH_TIME is not set
+# CONFIG_NETFILTER_XT_MATCH_U32 is not set
+CONFIG_IP_VS=m
+# CONFIG_IP_VS_IPV6 is not set
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+# CONFIG_IP_VS_PROTO_TCP is not set
+# CONFIG_IP_VS_PROTO_UDP is not set
+# CONFIG_IP_VS_PROTO_AH_ESP is not set
+# CONFIG_IP_VS_PROTO_ESP is not set
+# CONFIG_IP_VS_PROTO_AH is not set
+# CONFIG_IP_VS_PROTO_SCTP is not set
+
+#
+# IPVS scheduler
+#
+# CONFIG_IP_VS_RR is not set
+# CONFIG_IP_VS_WRR is not set
+# CONFIG_IP_VS_LC is not set
+# CONFIG_IP_VS_WLC is not set
+# CONFIG_IP_VS_LBLC is not set
+# CONFIG_IP_VS_LBLCR is not set
+# CONFIG_IP_VS_DH is not set
+# CONFIG_IP_VS_SH is not set
+# CONFIG_IP_VS_SED is not set
+# CONFIG_IP_VS_NQ is not set
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS application helper
+#
+
+#
+# IP: Netfilter Configuration
+#
+# CONFIG_NF_DEFRAG_IPV4 is not set
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_ULOG=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+CONFIG_IP_NF_SECURITY=m
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+
+#
+# IPv6: Netfilter Configuration
+#
+# CONFIG_NF_DEFRAG_IPV6 is not set
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+CONFIG_IP6_NF_SECURITY=m
+# CONFIG_BRIDGE_NF_EBTABLES 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_L2TP=m
+CONFIG_L2TP_DEBUGFS=m
+# CONFIG_L2TP_V3 is not set
+CONFIG_STP=m
+CONFIG_GARP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+# CONFIG_BRIDGE_VLAN_FILTERING is not set
+CONFIG_HAVE_NET_DSA=y
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+# CONFIG_VLAN_8021Q_MVRP is not set
+# CONFIG_DECNET is not set
+CONFIG_LLC=m
+# 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_PHONET=m
+CONFIG_IEEE802154=m
+CONFIG_IEEE802154_6LOWPAN=m
+CONFIG_MAC802154=m
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+# CONFIG_NET_SCH_CBQ is not set
+CONFIG_NET_SCH_HTB=y
+# CONFIG_NET_SCH_HFSC is not set
+# CONFIG_NET_SCH_PRIO is not set
+# CONFIG_NET_SCH_MULTIQ is not set
+# CONFIG_NET_SCH_RED is not set
+# CONFIG_NET_SCH_SFB is not set
+# CONFIG_NET_SCH_SFQ is not set
+# CONFIG_NET_SCH_TEQL is not set
+# CONFIG_NET_SCH_TBF is not set
+# CONFIG_NET_SCH_GRED is not set
+# CONFIG_NET_SCH_DSMARK is not set
+# CONFIG_NET_SCH_NETEM is not set
+# CONFIG_NET_SCH_DRR is not set
+# CONFIG_NET_SCH_MQPRIO is not set
+# CONFIG_NET_SCH_CHOKE is not set
+# CONFIG_NET_SCH_QFQ is not set
+CONFIG_NET_SCH_CODEL=y
+CONFIG_NET_SCH_FQ_CODEL=y
+# CONFIG_NET_SCH_FQ is not set
+# CONFIG_NET_SCH_PLUG is not set
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+# CONFIG_NET_CLS_BASIC is not set
+# CONFIG_NET_CLS_TCINDEX is not set
+# CONFIG_NET_CLS_ROUTE4 is not set
+# CONFIG_NET_CLS_FW is not set
+# CONFIG_NET_CLS_U32 is not set
+# CONFIG_NET_CLS_RSVP is not set
+# CONFIG_NET_CLS_RSVP6 is not set
+# CONFIG_NET_CLS_FLOW is not set
+CONFIG_NET_CLS_CGROUP=m
+# CONFIG_NET_EMATCH is not set
+# CONFIG_NET_CLS_ACT is not set
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=y
+CONFIG_BATMAN_ADV=m
+CONFIG_BATMAN_ADV_BLA=y
+# CONFIG_BATMAN_ADV_DAT is not set
+# CONFIG_BATMAN_ADV_NC is not set
+# CONFIG_BATMAN_ADV_DEBUG is not set
+CONFIG_OPENVSWITCH=m
+CONFIG_OPENVSWITCH_GRE=y
+# CONFIG_VSOCKETS is not set
+# CONFIG_NETLINK_MMAP is not set
+# CONFIG_NETLINK_DIAG is not set
+# CONFIG_NET_MPLS_GSO is not set
+CONFIG_NETPRIO_CGROUP=m
+CONFIG_NET_RX_BUSY_POLL=y
+CONFIG_BQL=y
+CONFIG_BPF_JIT=y
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+# CONFIG_HAMRADIO is not set
+CONFIG_CAN=m
+CONFIG_CAN_RAW=m
+CONFIG_CAN_BCM=m
+CONFIG_CAN_GW=m
+
+#
+# CAN Device Drivers
+#
+# CONFIG_CAN_VCAN is not set
+# CONFIG_CAN_SLCAN is not set
+CONFIG_CAN_DEV=m
+CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_LEDS is not set
+# CONFIG_CAN_AT91 is not set
+CONFIG_CAN_MCP251X=m
+# CONFIG_CAN_FLEXCAN is not set
+# CONFIG_CAN_GRCAN is not set
+# CONFIG_CAN_SJA1000 is not set
+CONFIG_CAN_C_CAN=m
+CONFIG_CAN_C_CAN_PLATFORM=m
+# CONFIG_CAN_CC770 is not set
+
+#
+# CAN USB interfaces
+#
+CONFIG_CAN_EMS_USB=m
+CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_KVASER_USB is not set
+CONFIG_CAN_PEAK_USB=m
+# CONFIG_CAN_8DEV_USB is not set
+# CONFIG_CAN_SOFTING is not set
+# CONFIG_CAN_DEBUG_DEVICES is not set
+CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
+CONFIG_IRLAN=m
+# CONFIG_IRNET is not set
+CONFIG_IRCOMM=m
+CONFIG_IRDA_ULTRA=y
+
+#
+# IrDA options
+#
+CONFIG_IRDA_CACHE_LAST_LSAP=y
+CONFIG_IRDA_FAST_RR=y
+# CONFIG_IRDA_DEBUG is not set
+
+#
+# Infrared-port device drivers
+#
+
+#
+# SIR device drivers
+#
+CONFIG_IRTTY_SIR=m
+
+#
+# Dongle support
+#
+CONFIG_DONGLE=y
+CONFIG_ESI_DONGLE=m
+CONFIG_ACTISYS_DONGLE=m
+CONFIG_TEKRAM_DONGLE=m
+CONFIG_TOIM3232_DONGLE=m
+CONFIG_LITELINK_DONGLE=m
+CONFIG_MA600_DONGLE=m
+CONFIG_GIRBIL_DONGLE=m
+CONFIG_MCP2120_DONGLE=m
+CONFIG_OLD_BELKIN_DONGLE=m
+CONFIG_ACT200L_DONGLE=m
+CONFIG_KINGSUN_DONGLE=m
+CONFIG_KSDAZZLE_DONGLE=m
+CONFIG_KS959_DONGLE=m
+
+#
+# FIR device drivers
+#
+CONFIG_USB_IRDA=m
+# CONFIG_SIGMATEL_FIR is not set
+CONFIG_MCS_FIR=m
+CONFIG_BT=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIBTSDIO=m
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+# CONFIG_BT_HCIVHCI is not set
+# CONFIG_BT_MRVL is not set
+CONFIG_BT_ATH3K=m
+# CONFIG_BT_WILINK is not set
+CONFIG_AF_RXRPC=m
+# CONFIG_AF_RXRPC_DEBUG is not set
+# CONFIG_RXKAD is not set
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WIRELESS_EXT=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_WEXT_SPY=y
+CONFIG_WEXT_PRIV=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_REG_DEBUG is not set
+# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
+CONFIG_CFG80211_DEFAULT_PS=y
+CONFIG_CFG80211_DEBUGFS=y
+CONFIG_CFG80211_INTERNAL_REGDB=y
+CONFIG_CFG80211_WEXT=y
+CONFIG_LIB80211=m
+CONFIG_LIB80211_CRYPT_WEP=m
+CONFIG_LIB80211_CRYPT_CCMP=m
+CONFIG_LIB80211_CRYPT_TKIP=m
+# CONFIG_LIB80211_DEBUG is not set
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_PID=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_MINSTREL_HT=y
+CONFIG_MAC80211_RC_DEFAULT_PID=y
+# CONFIG_MAC80211_RC_DEFAULT_MINSTREL is not set
+CONFIG_MAC80211_RC_DEFAULT="pid"
+CONFIG_MAC80211_MESH=y
+CONFIG_MAC80211_LEDS=y
+CONFIG_MAC80211_DEBUGFS=y
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_WIMAX=m
+CONFIG_WIMAX_DEBUG_LEVEL=8
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_RFKILL_REGULATOR=m
+CONFIG_RFKILL_GPIO=m
+CONFIG_NET_9P=m
+CONFIG_NET_9P_VIRTIO=m
+# CONFIG_NET_9P_DEBUG is not set
+# CONFIG_CAIF is not set
+CONFIG_CEPH_LIB=m
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
+CONFIG_NFC=m
+CONFIG_NFC_NCI=m
+# CONFIG_NFC_NCI_SPI is not set
+CONFIG_NFC_HCI=m
+CONFIG_NFC_SHDLC=y
+
+#
+# Near Field Communication (NFC) devices
+#
+CONFIG_NFC_PN533=m
+# CONFIG_NFC_WILINK is not set
+# CONFIG_NFC_SIM is not set
+# CONFIG_NFC_PN544 is not set
+# CONFIG_NFC_MICROREAD is not set
+CONFIG_HAVE_BPF_JIT=y
+
+#
+# Device Drivers
+#
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_STANDALONE=y
+# CONFIG_PREVENT_FIRMWARE_BUILD is not set
+CONFIG_FW_LOADER=y
+CONFIG_FIRMWARE_IN_KERNEL=y
+CONFIG_EXTRA_FIRMWARE=""
+CONFIG_FW_LOADER_USER_HELPER=y
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
+# CONFIG_SYS_HYPERVISOR is not set
+# CONFIG_GENERIC_CPU_DEVICES is not set
+CONFIG_SOC_BUS=y
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=y
+CONFIG_REGMAP_SPI=y
+CONFIG_REGMAP_MMIO=y
+CONFIG_DMA_SHARED_BUFFER=y
+
+#
+# Bus devices
+#
+CONFIG_OMAP_OCP2SCP=y
+CONFIG_OMAP_INTERCONNECT=y
+# CONFIG_ARM_CCI is not set
+CONFIG_CONNECTOR=y
+CONFIG_PROC_EVENTS=y
+CONFIG_MTD=y
+# CONFIG_MTD_TESTS is not set
+# CONFIG_MTD_REDBOOT_PARTS is not set
+CONFIG_MTD_CMDLINE_PARTS=y
+# CONFIG_MTD_AFS_PARTS is not set
+CONFIG_MTD_OF_PARTS=y
+# CONFIG_MTD_AR7_PARTS is not set
+
+#
+# User Modules And Translation Layers
+#
+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_SM_FTL is not set
+# CONFIG_MTD_OOPS is not set
+# CONFIG_MTD_SWAP is not set
+
+#
+# RAM/ROM/Flash chip drivers
+#
+CONFIG_MTD_CFI=y
+# CONFIG_MTD_JEDECPROBE is not set
+CONFIG_MTD_GEN_PROBE=y
+# CONFIG_MTD_CFI_ADV_OPTIONS is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+CONFIG_MTD_CFI_INTELEXT=y
+# CONFIG_MTD_CFI_AMDSTD is not set
+# 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_PHYSMAP_OF 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_DOCG3 is not set
+CONFIG_MTD_NAND_ECC=y
+# CONFIG_MTD_NAND_ECC_SMC is not set
+CONFIG_MTD_NAND=y
+# CONFIG_MTD_NAND_ECC_BCH is not set
+# CONFIG_MTD_SM_COMMON is not set
+# CONFIG_MTD_NAND_DENALI is not set
+# CONFIG_MTD_NAND_GPIO is not set
+CONFIG_MTD_NAND_OMAP2=y
+CONFIG_MTD_NAND_IDS=y
+# CONFIG_MTD_NAND_DISKONCHIP is not set
+# CONFIG_MTD_NAND_DOCG4 is not set
+# CONFIG_MTD_NAND_NANDSIM is not set
+# CONFIG_MTD_NAND_PLATFORM is not set
+CONFIG_MTD_ONENAND=y
+CONFIG_MTD_ONENAND_VERIFY_WRITE=y
+# CONFIG_MTD_ONENAND_GENERIC is not set
+# CONFIG_MTD_ONENAND_OTP is not set
+# CONFIG_MTD_ONENAND_2X_PROGRAM is not set
+
+#
+# LPDDR flash memory drivers
+#
+# CONFIG_MTD_LPDDR is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+CONFIG_MTD_UBI_FASTMAP=y
+# CONFIG_MTD_UBI_GLUEBI is not set
+CONFIG_DTC=y
+CONFIG_OF=y
+
+#
+# Device Tree and Open Firmware support
+#
+CONFIG_PROC_DEVICETREE=y
+# CONFIG_OF_SELFTEST is not set
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_NET=y
+CONFIG_OF_MDIO=y
+CONFIG_OF_MTD=y
+# 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_LOOP_MIN_COUNT=8
+# CONFIG_BLK_DEV_CRYPTOLOOP is not set
+# CONFIG_BLK_DEV_DRBD is not set
+# CONFIG_BLK_DEV_NBD is not set
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=16384
+# CONFIG_BLK_DEV_XIP is not set
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+# CONFIG_MG_DISK is not set
+# CONFIG_VIRTIO_BLK is not set
+# CONFIG_BLK_DEV_RBD is not set
+
+#
+# Misc devices
+#
+# CONFIG_SENSORS_LIS3LV02D is not set
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_ATMEL_PWM is not set
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_ICS932S401 is not set
+# CONFIG_ATMEL_SSC is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1780 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+# CONFIG_DS1682 is not set
+# CONFIG_TI_DAC7512 is not set
+# CONFIG_BMP085_I2C is not set
+# CONFIG_BMP085_SPI is not set
+# CONFIG_USB_SWITCH_FSA9480 is not set
+# CONFIG_LATTICE_ECP3_CONFIG is not set
+CONFIG_SRAM=y
+# CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+CONFIG_EEPROM_AT24=y
+# CONFIG_EEPROM_AT25 is not set
+# CONFIG_EEPROM_LEGACY is not set
+# CONFIG_EEPROM_MAX6875 is not set
+CONFIG_EEPROM_93CX6=y
+# CONFIG_EEPROM_93XX46 is not set
+
+#
+# Texas Instruments shared transport line discipline
+#
+CONFIG_TI_ST=m
+# CONFIG_SENSORS_LIS3_SPI is not set
+# CONFIG_SENSORS_LIS3_I2C is not set
+
+#
+# Altera FPGA firmware download module
+#
+# CONFIG_ALTERA_STAPL is not set
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=y
+# CONFIG_RAID_ATTRS is not set
+CONFIG_SCSI=y
+CONFIG_SCSI_DMA=y
+# CONFIG_SCSI_TGT is not set
+# CONFIG_SCSI_NETLINK is not set
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=y
+# CONFIG_CHR_DEV_ST is not set
+# CONFIG_CHR_DEV_OSST is not set
+# CONFIG_BLK_DEV_SR is not set
+# CONFIG_CHR_DEV_SG is not set
+# CONFIG_CHR_DEV_SCH is not set
+CONFIG_SCSI_MULTI_LUN=y
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+CONFIG_SCSI_SCAN_ASYNC=y
+
+#
+# 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_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_ISCSI_BOOT_SYSFS is not set
+# CONFIG_SCSI_UFSHCD is not set
+# CONFIG_LIBFC is not set
+# CONFIG_LIBFCOE is not set
+# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_VIRTIO=m
+# CONFIG_SCSI_DH is not set
+# CONFIG_SCSI_OSD_INITIATOR is not set
+# CONFIG_ATA is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BCACHE is not set
+# CONFIG_BLK_DEV_DM is not set
+# CONFIG_TARGET_CORE is not set
+CONFIG_NETDEVICES=y
+CONFIG_MII=y
+CONFIG_NET_CORE=y
+# CONFIG_BONDING is not set
+# CONFIG_DUMMY is not set
+# CONFIG_EQUALIZER is not set
+# CONFIG_NET_TEAM is not set
+# CONFIG_MACVLAN is not set
+# CONFIG_VXLAN is not set
+# CONFIG_NETCONSOLE is not set
+# CONFIG_NETPOLL is not set
+# CONFIG_NET_POLL_CONTROLLER is not set
+CONFIG_TUN=y
+# CONFIG_VETH is not set
+# CONFIG_VIRTIO_NET is not set
+# CONFIG_NLMON is not set
+
+#
+# CAIF transport drivers
+#
+
+#
+# Distributed Switch Architecture drivers
+#
+# CONFIG_NET_DSA_MV88E6XXX is not set
+# CONFIG_NET_DSA_MV88E6060 is not set
+# CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set
+# CONFIG_NET_DSA_MV88E6131 is not set
+# CONFIG_NET_DSA_MV88E6123_61_65 is not set
+CONFIG_ETHERNET=y
+CONFIG_NET_VENDOR_ARC=y
+# CONFIG_ARC_EMAC is not set
+CONFIG_NET_CADENCE=y
+# CONFIG_ARM_AT91_ETHER is not set
+# CONFIG_MACB is not set
+CONFIG_NET_VENDOR_BROADCOM=y
+# CONFIG_B44 is not set
+# CONFIG_NET_CALXEDA_XGMAC is not set
+CONFIG_NET_VENDOR_CIRRUS=y
+# CONFIG_CS89x0 is not set
+# CONFIG_DM9000 is not set
+# CONFIG_DNET is not set
+CONFIG_NET_VENDOR_FARADAY=y
+# CONFIG_FTMAC100 is not set
+# CONFIG_FTGMAC100 is not set
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_NET_VENDOR_I825XX=y
+CONFIG_NET_VENDOR_MARVELL=y
+# CONFIG_MVMDIO is not set
+CONFIG_NET_VENDOR_MICREL=y
+# CONFIG_KS8842 is not set
+CONFIG_KS8851=y
+CONFIG_KS8851_MLL=y
+CONFIG_NET_VENDOR_MICROCHIP=y
+# CONFIG_ENC28J60 is not set
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NET_VENDOR_8390=y
+# CONFIG_AX88796 is not set
+# CONFIG_ETHOC is not set
+# CONFIG_SH_ETH is not set
+CONFIG_NET_VENDOR_SEEQ=y
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_SMC91X=y
+# CONFIG_SMC911X is not set
+CONFIG_SMSC911X=y
+# CONFIG_SMSC911X_ARCH_HOOKS is not set
+CONFIG_NET_VENDOR_STMICRO=y
+# CONFIG_STMMAC_ETH is not set
+CONFIG_NET_VENDOR_TI=y
+CONFIG_TI_DAVINCI_MDIO=y
+CONFIG_TI_DAVINCI_CPDMA=y
+CONFIG_TI_CPSW=y
+# CONFIG_TI_CPTS is not set
+# CONFIG_NET_VENDOR_VIA is not set
+CONFIG_NET_VENDOR_WIZNET=y
+# CONFIG_WIZNET_W5100 is not set
+# CONFIG_WIZNET_W5300 is not set
+CONFIG_PHYLIB=y
+
+#
+# MII PHY device drivers
+#
+CONFIG_AT803X_PHY=y
+# CONFIG_AMD_PHY is not set
+# CONFIG_MARVELL_PHY is not set
+# CONFIG_DAVICOM_PHY is not set
+# CONFIG_QSEMI_PHY is not set
+# CONFIG_LXT_PHY is not set
+# CONFIG_CICADA_PHY is not set
+# CONFIG_VITESSE_PHY is not set
+CONFIG_SMSC_PHY=y
+# CONFIG_BROADCOM_PHY is not set
+# CONFIG_BCM87XX_PHY is not set
+# CONFIG_ICPLUS_PHY is not set
+# CONFIG_REALTEK_PHY is not set
+# CONFIG_NATIONAL_PHY is not set
+# CONFIG_STE10XP is not set
+# CONFIG_LSI_ET1011C_PHY is not set
+# CONFIG_MICREL_PHY is not set
+# CONFIG_FIXED_PHY is not set
+# CONFIG_MDIO_BITBANG is not set
+CONFIG_MDIO_BUS_MUX=m
+# CONFIG_MDIO_BUS_MUX_GPIO is not set
+CONFIG_MDIO_BUS_MUX_MMIOREG=m
+# CONFIG_MICREL_KS8995MA is not set
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOE=m
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+# CONFIG_PPP_SYNC_TTY is not set
+# CONFIG_SLIP is not set
+CONFIG_SLHC=m
+
+#
+# USB Network Adapters
+#
+# CONFIG_USB_CATC is not set
+# CONFIG_USB_KAWETH is not set
+# CONFIG_USB_PEGASUS is not set
+# CONFIG_USB_RTL8150 is not set
+# CONFIG_USB_RTL8152 is not set
+CONFIG_USB_USBNET=y
+CONFIG_USB_NET_AX8817X=y
+CONFIG_USB_NET_AX88179_178A=y
+CONFIG_USB_NET_CDCETHER=y
+# CONFIG_USB_NET_CDC_EEM is not set
+CONFIG_USB_NET_CDC_NCM=y
+# CONFIG_USB_NET_CDC_MBIM is not set
+# CONFIG_USB_NET_DM9601 is not set
+# CONFIG_USB_NET_SR9700 is not set
+# CONFIG_USB_NET_SMSC75XX is not set
+CONFIG_USB_NET_SMSC95XX=y
+# CONFIG_USB_NET_GL620A is not set
+CONFIG_USB_NET_NET1080=y
+# CONFIG_USB_NET_PLUSB is not set
+# CONFIG_USB_NET_MCS7830 is not set
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET=y
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=y
+# CONFIG_USB_NET_CX82310_ETH is not set
+# CONFIG_USB_NET_KALMIA is not set
+# CONFIG_USB_NET_QMI_WWAN is not set
+# CONFIG_USB_HSO is not set
+# CONFIG_USB_NET_INT51X1 is not set
+# CONFIG_USB_CDC_PHONET is not set
+# CONFIG_USB_IPHETH is not set
+# CONFIG_USB_SIERRA_NET is not set
+# CONFIG_USB_VL600 is not set
+CONFIG_WLAN=y
+# CONFIG_LIBERTAS_THINFIRM is not set
+CONFIG_AT76C50X_USB=m
+CONFIG_USB_ZD1201=m
+CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_RTL8187=m
+CONFIG_RTL8187_LEDS=y
+# CONFIG_MAC80211_HWSIM is not set
+CONFIG_ATH_COMMON=m
+CONFIG_ATH_CARDS=m
+# CONFIG_ATH_DEBUG is not set
+CONFIG_ATH9K_HW=m
+CONFIG_ATH9K_COMMON=m
+CONFIG_ATH9K_BTCOEX_SUPPORT=y
+CONFIG_ATH9K=m
+# CONFIG_ATH9K_AHB is not set
+# CONFIG_ATH9K_DEBUGFS is not set
+# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set
+CONFIG_ATH9K_RFKILL=y
+# CONFIG_ATH9K_HTC is not set
+CONFIG_CARL9170=m
+CONFIG_CARL9170_LEDS=y
+# CONFIG_CARL9170_DEBUGFS is not set
+CONFIG_CARL9170_WPC=y
+# CONFIG_CARL9170_HWRNG is not set
+CONFIG_ATH6KL=m
+# CONFIG_ATH6KL_SDIO is not set
+CONFIG_ATH6KL_USB=m
+# CONFIG_ATH6KL_DEBUG is not set
+CONFIG_AR5523=m
+# CONFIG_ATH10K is not set
+CONFIG_B43=m
+CONFIG_B43_SSB=y
+CONFIG_B43_SDIO=y
+CONFIG_B43_PIO=y
+CONFIG_B43_PHY_N=y
+CONFIG_B43_PHY_LP=y
+CONFIG_B43_LEDS=y
+CONFIG_B43_HWRNG=y
+# CONFIG_B43_DEBUG is not set
+# CONFIG_B43LEGACY is not set
+# CONFIG_BRCMFMAC is not set
+CONFIG_HOSTAP=m
+CONFIG_HOSTAP_FIRMWARE=y
+# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
+CONFIG_LIBERTAS=m
+CONFIG_LIBERTAS_USB=m
+CONFIG_LIBERTAS_SDIO=m
+CONFIG_LIBERTAS_SPI=m
+CONFIG_LIBERTAS_DEBUG=y
+# CONFIG_LIBERTAS_MESH is not set
+CONFIG_P54_COMMON=m
+CONFIG_P54_USB=m
+CONFIG_P54_SPI=m
+CONFIG_P54_SPI_DEFAULT_EEPROM=y
+CONFIG_P54_LEDS=y
+CONFIG_RT2X00=m
+CONFIG_RT2500USB=m
+CONFIG_RT73USB=m
+CONFIG_RT2800USB=m
+CONFIG_RT2800USB_RT33XX=y
+CONFIG_RT2800USB_RT35XX=y
+# CONFIG_RT2800USB_RT3573 is not set
+CONFIG_RT2800USB_RT53XX=y
+# CONFIG_RT2800USB_RT55XX is not set
+# CONFIG_RT2800USB_UNKNOWN is not set
+CONFIG_RT2800_LIB=m
+CONFIG_RT2X00_LIB_USB=m
+CONFIG_RT2X00_LIB=m
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_CRYPTO=y
+CONFIG_RT2X00_LIB_LEDS=y
+# CONFIG_RT2X00_LIB_DEBUGFS is not set
+# CONFIG_RT2X00_DEBUG is not set
+# CONFIG_RTL_CARDS is not set
+CONFIG_WL_TI=y
+CONFIG_WL1251=m
+CONFIG_WL1251_SPI=m
+CONFIG_WL1251_SDIO=m
+CONFIG_WL12XX=m
+CONFIG_WL18XX=m
+CONFIG_WLCORE=m
+CONFIG_WLCORE_SPI=m
+CONFIG_WLCORE_SDIO=m
+# CONFIG_WILINK_PLATFORM_DATA is not set
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+CONFIG_MWIFIEX=m
+# CONFIG_MWIFIEX_SDIO is not set
+CONFIG_MWIFIEX_USB=m
+# CONFIG_CW1200 is not set
+
+#
+# WiMAX Wireless Broadband devices
+#
+# CONFIG_WIMAX_I2400M_USB is not set
+# CONFIG_WAN is not set
+# CONFIG_IEEE802154_DRIVERS is not set
+# CONFIG_ISDN is not set
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+# CONFIG_INPUT_FF_MEMLESS is not set
+# CONFIG_INPUT_POLLDEV is not set
+# CONFIG_INPUT_SPARSEKMAP is not set
+CONFIG_INPUT_MATRIXKMAP=y
+
+#
+# Userland interfaces
+#
+CONFIG_INPUT_MOUSEDEV=y
+CONFIG_INPUT_MOUSEDEV_PSAUX=y
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+CONFIG_INPUT_JOYDEV=y
+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_ADP5589 is not set
+CONFIG_KEYBOARD_ATKBD=y
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+CONFIG_KEYBOARD_GPIO=y
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_LM8333 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+CONFIG_KEYBOARD_TWL4030=y
+# CONFIG_KEYBOARD_XTKBD is not set
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=y
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_CYPRESS=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+# CONFIG_MOUSE_PS2_ELANTECH is not set
+# CONFIG_MOUSE_PS2_SENTELIC is not set
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_APPLETOUCH is not set
+# CONFIG_MOUSE_BCM5974 is not set
+# CONFIG_MOUSE_CYAPA is not set
+# CONFIG_MOUSE_VSXXXAA is not set
+# CONFIG_MOUSE_GPIO is not set
+# CONFIG_MOUSE_SYNAPTICS_I2C is not set
+# CONFIG_MOUSE_SYNAPTICS_USB is not set
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_ADS7846=y
+# CONFIG_TOUCHSCREEN_AD7877 is not set
+# CONFIG_TOUCHSCREEN_AD7879 is not set
+CONFIG_TOUCHSCREEN_ATMEL_MXT=y
+# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_BU21013 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
+# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
+# CONFIG_TOUCHSCREEN_DYNAPRO is not set
+# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_EETI is not set
+# CONFIG_TOUCHSCREEN_EGALAX is not set
+# CONFIG_TOUCHSCREEN_FUJITSU is not set
+# CONFIG_TOUCHSCREEN_ILI210X is not set
+# CONFIG_TOUCHSCREEN_GUNZE is not set
+# CONFIG_TOUCHSCREEN_ELO is not set
+# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
+# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
+# CONFIG_TOUCHSCREEN_MAX11801 is not set
+# CONFIG_TOUCHSCREEN_MCS5000 is not set
+CONFIG_TOUCHSCREEN_MMS114=m
+# 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_EDT_FT5X06=m
+# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
+# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
+CONFIG_TOUCHSCREEN_TI_AM335X_TSC=y
+# CONFIG_TOUCHSCREEN_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
+# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
+# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
+CONFIG_TOUCHSCREEN_TSC2005=y
+CONFIG_TOUCHSCREEN_TSC2007=y
+# CONFIG_TOUCHSCREEN_W90X900 is not set
+# CONFIG_TOUCHSCREEN_ST1232 is not set
+# CONFIG_TOUCHSCREEN_TPS6507X is not set
+CONFIG_INPUT_MISC=y
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_MPU3050 is not set
+# CONFIG_INPUT_GP2A is not set
+# CONFIG_INPUT_GPIO_TILT_POLLED is not set
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_KXTJ9 is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+CONFIG_INPUT_TWL4030_PWRBUTTON=y
+# CONFIG_INPUT_TWL4030_VIBRA is not set
+CONFIG_INPUT_UINPUT=m
+# CONFIG_INPUT_PCF8574 is not set
+# CONFIG_INPUT_PWM_BEEPER is not set
+CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+CONFIG_INPUT_ADXL34X=m
+CONFIG_INPUT_ADXL34X_I2C=m
+CONFIG_INPUT_ADXL34X_SPI=m
+# CONFIG_INPUT_IMS_PCU is not set
+CONFIG_INPUT_CMA3000=m
+CONFIG_INPUT_CMA3000_I2C=m
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_SERPORT=y
+CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_RAW is not set
+# CONFIG_SERIO_ALTERA_PS2 is not set
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_OLPC_APSP is not set
+# CONFIG_GAMEPORT is not set
+
+#
+# Character devices
+#
+CONFIG_TTY=y
+# CONFIG_VT is not set
+CONFIG_UNIX98_PTYS=y
+# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
+# CONFIG_LEGACY_PTYS is not set
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+# CONFIG_TRACE_SINK is not set
+CONFIG_DEVKMEM=y
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
+# CONFIG_SERIAL_8250_CONSOLE is not set
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+# CONFIG_SERIAL_8250_DW is not set
+# CONFIG_SERIAL_8250_EM is not set
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+# CONFIG_SERIAL_OF_PLATFORM is not set
+CONFIG_SERIAL_OMAP=y
+CONFIG_SERIAL_OMAP_CONSOLE=y
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_TIMBERDALE is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_IFX6X60 is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_ST_ASC is not set
+CONFIG_TTY_PRINTK=y
+# CONFIG_HVC_DCC is not set
+# CONFIG_VIRTIO_CONSOLE is not set
+# CONFIG_IPMI_HANDLER is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+# CONFIG_HW_RANDOM_ATMEL is not set
+CONFIG_HW_RANDOM_OMAP=y
+# CONFIG_HW_RANDOM_VIRTIO is not set
+# CONFIG_HW_RANDOM_EXYNOS 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_MUX=y
+
+#
+# Multiplexer I2C Chip support
+#
+# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
+CONFIG_I2C_MUX_GPIO=y
+CONFIG_I2C_MUX_PCA9541=y
+CONFIG_I2C_MUX_PCA954x=y
+CONFIG_I2C_MUX_PINCTRL=m
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_ALGOBIT=y
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+# CONFIG_I2C_CBUS_GPIO is not set
+# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
+# CONFIG_I2C_GPIO is not set
+# CONFIG_I2C_OCORES is not set
+CONFIG_I2C_OMAP=y
+# CONFIG_I2C_PCA_PLATFORM is not set
+# CONFIG_I2C_PXA_PCI is not set
+# CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_XILINX is not set
+
+#
+# External I2C/SMBus adapter drivers
+#
+# CONFIG_I2C_DIOLAN_U2C is not set
+# CONFIG_I2C_PARPORT_LIGHT is not set
+# CONFIG_I2C_TAOS_EVM is not set
+# CONFIG_I2C_TINY_USB is not set
+
+#
+# Other I2C/SMBus bus drivers
+#
+# CONFIG_I2C_STUB 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_SPI=y
+# CONFIG_SPI_DEBUG is not set
+CONFIG_SPI_MASTER=y
+
+#
+# SPI Master Controller Drivers
+#
+# CONFIG_SPI_ALTERA is not set
+# CONFIG_SPI_BITBANG is not set
+# CONFIG_SPI_GPIO is not set
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_FSL_DSPI is not set
+# CONFIG_SPI_OC_TINY is not set
+CONFIG_SPI_OMAP24XX=y
+# CONFIG_SPI_TI_QSPI is not set
+# CONFIG_SPI_PXA2XX_PCI is not set
+CONFIG_SPI_SC18IS602=m
+CONFIG_SPI_XCOMM=m
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_DESIGNWARE is not set
+
+#
+# SPI Protocol Masters
+#
+CONFIG_SPI_SPIDEV=y
+# CONFIG_SPI_TLE62X0 is not set
+# CONFIG_HSI is not set
+
+#
+# PPS support
+#
+CONFIG_PPS=y
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+# CONFIG_PPS_CLIENT_KTIMER is not set
+CONFIG_PPS_CLIENT_LDISC=y
+CONFIG_PPS_CLIENT_GPIO=y
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+# CONFIG_PTP_1588_CLOCK is not set
+
+#
+# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
+#
+CONFIG_PINCTRL=y
+
+#
+# Pin controllers
+#
+CONFIG_PINMUX=y
+CONFIG_PINCONF=y
+CONFIG_GENERIC_PINCONF=y
+# CONFIG_DEBUG_PINCTRL is not set
+CONFIG_PINCTRL_SINGLE=y
+CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
+CONFIG_ARCH_REQUIRE_GPIOLIB=y
+CONFIG_GPIO_DEVRES=y
+CONFIG_GPIOLIB=y
+CONFIG_OF_GPIO=y
+CONFIG_DEBUG_GPIO=y
+CONFIG_GPIO_SYSFS=y
+
+#
+# Memory mapped GPIO drivers:
+#
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_EM is not set
+# CONFIG_GPIO_RCAR is not set
+# CONFIG_GPIO_TS5500 is not set
+# CONFIG_GPIO_GRGPIO is not set
+
+#
+# I2C GPIO expanders:
+#
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+CONFIG_GPIO_PCF857X=y
+# CONFIG_GPIO_SX150X is not set
+CONFIG_GPIO_TWL4030=y
+# CONFIG_GPIO_ADP5588 is not set
+# CONFIG_GPIO_ADNP 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
+# CONFIG_GPIO_74X164 is not set
+
+#
+# AC97 GPIO expanders:
+#
+
+#
+# LPC GPIO expanders:
+#
+
+#
+# MODULbus GPIO expanders:
+#
+
+#
+# USB GPIO expanders:
+#
+CONFIG_W1=y
+CONFIG_W1_CON=y
+
+#
+# 1-wire Bus Masters
+#
+CONFIG_W1_MASTER_DS2490=m
+CONFIG_W1_MASTER_DS2482=m
+CONFIG_W1_MASTER_DS1WM=m
+CONFIG_W1_MASTER_GPIO=y
+CONFIG_HDQ_MASTER_OMAP=m
+
+#
+# 1-wire Slaves
+#
+CONFIG_W1_SLAVE_THERM=y
+CONFIG_W1_SLAVE_SMEM=y
+CONFIG_W1_SLAVE_DS2408=m
+CONFIG_W1_SLAVE_DS2408_READBACK=y
+# CONFIG_W1_SLAVE_DS2413 is not set
+CONFIG_W1_SLAVE_DS2423=m
+CONFIG_W1_SLAVE_DS2431=m
+CONFIG_W1_SLAVE_DS2433=m
+CONFIG_W1_SLAVE_DS2433_CRC=y
+CONFIG_W1_SLAVE_DS2760=m
+CONFIG_W1_SLAVE_DS2780=m
+CONFIG_W1_SLAVE_DS2781=m
+CONFIG_W1_SLAVE_DS28E04=m
+CONFIG_W1_SLAVE_BQ27000=m
+# CONFIG_POWER_SUPPLY is not set
+# CONFIG_POWER_AVS is not set
+# CONFIG_HWMON is not set
+CONFIG_THERMAL=y
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
+CONFIG_THERMAL_GOV_STEP_WISE=y
+# CONFIG_THERMAL_GOV_USER_SPACE is not set
+CONFIG_CPU_THERMAL=y
+# CONFIG_THERMAL_EMULATION is not set
+
+#
+# Texas Instruments thermal drivers
+#
+CONFIG_TI_SOC_THERMAL=y
+CONFIG_TI_THERMAL=y
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=y
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+
+#
+# Watchdog Device Drivers
+#
+# CONFIG_SOFT_WATCHDOG is not set
+# CONFIG_DW_WATCHDOG is not set
+CONFIG_OMAP_WATCHDOG=y
+# CONFIG_TWL4030_WATCHDOG is not set
+# CONFIG_MAX63XX_WATCHDOG is not set
+# CONFIG_MEN_A21_WDT is not set
+
+#
+# USB-based Watchdog Cards
+#
+# CONFIG_USBPCWATCHDOG is not set
+CONFIG_SSB_POSSIBLE=y
+
+#
+# Sonics Silicon Backplane
+#
+CONFIG_SSB=m
+CONFIG_SSB_BLOCKIO=y
+CONFIG_SSB_SDIOHOST_POSSIBLE=y
+CONFIG_SSB_SDIOHOST=y
+# CONFIG_SSB_SILENT is not set
+# CONFIG_SSB_DEBUG is not set
+# CONFIG_SSB_DRIVER_GPIO is not set
+CONFIG_BCMA_POSSIBLE=y
+
+#
+# Broadcom specific AMBA
+#
+# CONFIG_BCMA is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=y
+# CONFIG_MFD_AS3711 is not set
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_CROS_EC is not set
+# CONFIG_MFD_ASIC3 is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_HTC_EGPIO is not set
+# CONFIG_HTC_PASIC3 is not set
+# CONFIG_HTC_I2CPLD is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+# CONFIG_EZX_PCAP is not set
+# CONFIG_MFD_VIPERBOARD is not set
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_SEC_CORE is not set
+# CONFIG_MFD_SI476X_CORE is not set
+# CONFIG_MFD_SM501 is not set
+# CONFIG_MFD_SMSC is not set
+# CONFIG_ABX500_CORE is not set
+# CONFIG_MFD_STMPE is not set
+# CONFIG_MFD_SYSCON is not set
+CONFIG_MFD_TI_AM335X_TSCADC=y
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_PALMAS is not set
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65090 is not set
+CONFIG_MFD_TPS65217=y
+# CONFIG_MFD_TPS6586X is not set
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_MFD_TPS80031 is not set
+CONFIG_TWL4030_CORE=y
+# CONFIG_TWL4030_MADC is not set
+CONFIG_TWL4030_POWER=y
+# CONFIG_MFD_TWL4030_AUDIO is not set
+# CONFIG_TWL6040_CORE is not set
+CONFIG_MFD_WL1273_CORE=m
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_TMIO is not set
+# CONFIG_MFD_T7L66XB is not set
+# CONFIG_MFD_TC6387XB is not set
+# CONFIG_MFD_TC6393XB is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+# CONFIG_VEXPRESS_CONFIG is not set
+CONFIG_REGULATOR=y
+# CONFIG_REGULATOR_DEBUG is not set
+CONFIG_REGULATOR_DUMMY=y
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_FAN53555 is not set
+CONFIG_REGULATOR_GPIO=y
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MAX8973 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_TI_ABB is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
+CONFIG_REGULATOR_TPS65217=y
+# CONFIG_REGULATOR_TPS6524X is not set
+# CONFIG_REGULATOR_TWL4030 is not set
+CONFIG_MEDIA_SUPPORT=y
+
+#
+# Multimedia core support
+#
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
+CONFIG_MEDIA_RADIO_SUPPORT=y
+CONFIG_MEDIA_RC_SUPPORT=y
+CONFIG_MEDIA_CONTROLLER=y
+CONFIG_VIDEO_DEV=y
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
+CONFIG_VIDEO_V4L2=y
+CONFIG_VIDEO_ADV_DEBUG=y
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+CONFIG_VIDEO_TUNER=m
+CONFIG_V4L2_MEM2MEM_DEV=m
+CONFIG_VIDEOBUF_GEN=y
+CONFIG_VIDEOBUF_VMALLOC=m
+CONFIG_VIDEOBUF_DVB=m
+CONFIG_VIDEOBUF2_CORE=y
+CONFIG_VIDEOBUF2_MEMOPS=m
+CONFIG_VIDEOBUF2_VMALLOC=m
+# CONFIG_VIDEO_V4L2_INT_DEVICE is not set
+CONFIG_DVB_CORE=y
+CONFIG_DVB_NET=y
+CONFIG_TTPCI_EEPROM=m
+CONFIG_DVB_MAX_ADAPTERS=8
+CONFIG_DVB_DYNAMIC_MINORS=y
+
+#
+# Media drivers
+#
+CONFIG_RC_CORE=y
+CONFIG_RC_MAP=m
+CONFIG_RC_DECODERS=y
+CONFIG_LIRC=m
+CONFIG_IR_LIRC_CODEC=m
+CONFIG_IR_NEC_DECODER=m
+CONFIG_IR_RC5_DECODER=m
+CONFIG_IR_RC6_DECODER=m
+CONFIG_IR_JVC_DECODER=m
+CONFIG_IR_SONY_DECODER=m
+CONFIG_IR_RC5_SZ_DECODER=m
+CONFIG_IR_SANYO_DECODER=m
+CONFIG_IR_MCE_KBD_DECODER=m
+CONFIG_RC_DEVICES=y
+CONFIG_RC_ATI_REMOTE=m
+CONFIG_IR_IMON=m
+CONFIG_IR_MCEUSB=m
+CONFIG_IR_REDRAT3=m
+CONFIG_IR_STREAMZAP=m
+CONFIG_IR_IGUANA=m
+CONFIG_IR_TTUSBIR=m
+CONFIG_RC_LOOPBACK=m
+CONFIG_IR_GPIO_CIR=m
+CONFIG_MEDIA_USB_SUPPORT=y
+
+#
+# Webcam devices
+#
+CONFIG_USB_VIDEO_CLASS=m
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
+CONFIG_USB_GSPCA=m
+CONFIG_USB_M5602=m
+CONFIG_USB_STV06XX=m
+CONFIG_USB_GL860=m
+CONFIG_USB_GSPCA_BENQ=m
+CONFIG_USB_GSPCA_CONEX=m
+CONFIG_USB_GSPCA_CPIA1=m
+CONFIG_USB_GSPCA_ETOMS=m
+CONFIG_USB_GSPCA_FINEPIX=m
+CONFIG_USB_GSPCA_JEILINJ=m
+CONFIG_USB_GSPCA_JL2005BCD=m
+CONFIG_USB_GSPCA_KINECT=m
+CONFIG_USB_GSPCA_KONICA=m
+CONFIG_USB_GSPCA_MARS=m
+CONFIG_USB_GSPCA_MR97310A=m
+CONFIG_USB_GSPCA_NW80X=m
+CONFIG_USB_GSPCA_OV519=m
+CONFIG_USB_GSPCA_OV534=m
+CONFIG_USB_GSPCA_OV534_9=m
+CONFIG_USB_GSPCA_PAC207=m
+CONFIG_USB_GSPCA_PAC7302=m
+CONFIG_USB_GSPCA_PAC7311=m
+CONFIG_USB_GSPCA_SE401=m
+CONFIG_USB_GSPCA_SN9C2028=m
+CONFIG_USB_GSPCA_SN9C20X=m
+CONFIG_USB_GSPCA_SONIXB=m
+CONFIG_USB_GSPCA_SONIXJ=m
+CONFIG_USB_GSPCA_SPCA500=m
+CONFIG_USB_GSPCA_SPCA501=m
+CONFIG_USB_GSPCA_SPCA505=m
+CONFIG_USB_GSPCA_SPCA506=m
+CONFIG_USB_GSPCA_SPCA508=m
+CONFIG_USB_GSPCA_SPCA561=m
+CONFIG_USB_GSPCA_SPCA1528=m
+CONFIG_USB_GSPCA_SQ905=m
+CONFIG_USB_GSPCA_SQ905C=m
+CONFIG_USB_GSPCA_SQ930X=m
+CONFIG_USB_GSPCA_STK014=m
+# CONFIG_USB_GSPCA_STK1135 is not set
+CONFIG_USB_GSPCA_STV0680=m
+CONFIG_USB_GSPCA_SUNPLUS=m
+CONFIG_USB_GSPCA_T613=m
+CONFIG_USB_GSPCA_TOPRO=m
+CONFIG_USB_GSPCA_TV8532=m
+CONFIG_USB_GSPCA_VC032X=m
+CONFIG_USB_GSPCA_VICAM=m
+CONFIG_USB_GSPCA_XIRLINK_CIT=m
+CONFIG_USB_GSPCA_ZC3XX=m
+CONFIG_USB_PWC=m
+# CONFIG_USB_PWC_DEBUG is not set
+CONFIG_USB_PWC_INPUT_EVDEV=y
+CONFIG_VIDEO_CPIA2=m
+CONFIG_USB_ZR364XX=m
+CONFIG_USB_STKWEBCAM=m
+CONFIG_USB_S2255=m
+CONFIG_USB_SN9C102=m
+# CONFIG_VIDEO_USBTV is not set
+
+#
+# Analog TV USB devices
+#
+CONFIG_VIDEO_PVRUSB2=m
+CONFIG_VIDEO_PVRUSB2_SYSFS=y
+CONFIG_VIDEO_PVRUSB2_DVB=y
+# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+CONFIG_VIDEO_HDPVR=m
+CONFIG_VIDEO_TLG2300=m
+CONFIG_VIDEO_USBVISION=m
+# CONFIG_VIDEO_STK1160_COMMON is not set
+
+#
+# Analog/digital TV USB devices
+#
+CONFIG_VIDEO_AU0828=m
+CONFIG_VIDEO_AU0828_V4L2=y
+CONFIG_VIDEO_CX231XX=m
+CONFIG_VIDEO_CX231XX_RC=y
+CONFIG_VIDEO_CX231XX_ALSA=m
+CONFIG_VIDEO_CX231XX_DVB=m
+CONFIG_VIDEO_TM6000=m
+CONFIG_VIDEO_TM6000_ALSA=m
+CONFIG_VIDEO_TM6000_DVB=m
+
+#
+# Digital TV USB devices
+#
+CONFIG_DVB_USB=m
+# CONFIG_DVB_USB_DEBUG is not set
+CONFIG_DVB_USB_A800=m
+CONFIG_DVB_USB_DIBUSB_MB=m
+CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
+CONFIG_DVB_USB_DIBUSB_MC=m
+CONFIG_DVB_USB_DIB0700=m
+CONFIG_DVB_USB_UMT_010=m
+CONFIG_DVB_USB_CXUSB=m
+CONFIG_DVB_USB_M920X=m
+CONFIG_DVB_USB_DIGITV=m
+CONFIG_DVB_USB_VP7045=m
+CONFIG_DVB_USB_VP702X=m
+CONFIG_DVB_USB_GP8PSK=m
+CONFIG_DVB_USB_NOVA_T_USB2=m
+CONFIG_DVB_USB_TTUSB2=m
+CONFIG_DVB_USB_DTT200U=m
+CONFIG_DVB_USB_OPERA1=m
+CONFIG_DVB_USB_AF9005=m
+CONFIG_DVB_USB_AF9005_REMOTE=m
+CONFIG_DVB_USB_PCTV452E=m
+CONFIG_DVB_USB_DW2102=m
+CONFIG_DVB_USB_CINERGY_T2=m
+CONFIG_DVB_USB_DTV5100=m
+CONFIG_DVB_USB_FRIIO=m
+CONFIG_DVB_USB_AZ6027=m
+CONFIG_DVB_USB_TECHNISAT_USB2=m
+CONFIG_DVB_USB_V2=m
+CONFIG_DVB_USB_AF9015=m
+CONFIG_DVB_USB_AF9035=m
+CONFIG_DVB_USB_ANYSEE=m
+CONFIG_DVB_USB_AU6610=m
+CONFIG_DVB_USB_AZ6007=m
+CONFIG_DVB_USB_CE6230=m
+CONFIG_DVB_USB_EC168=m
+CONFIG_DVB_USB_GL861=m
+CONFIG_DVB_USB_IT913X=m
+CONFIG_DVB_USB_LME2510=m
+CONFIG_DVB_USB_MXL111SF=m
+CONFIG_DVB_USB_RTL28XXU=m
+# CONFIG_SMS_USB_DRV is not set
+CONFIG_DVB_B2C2_FLEXCOP_USB=m
+# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set
+
+#
+# Webcam, TV (analog/digital) USB devices
+#
+CONFIG_VIDEO_EM28XX=m
+CONFIG_VIDEO_EM28XX_ALSA=m
+CONFIG_VIDEO_EM28XX_DVB=m
+CONFIG_VIDEO_EM28XX_RC=m
+CONFIG_V4L_PLATFORM_DRIVERS=y
+# CONFIG_VIDEO_TIMBERDALE is not set
+CONFIG_SOC_CAMERA=y
+CONFIG_SOC_CAMERA_PLATFORM=y
+# CONFIG_VIDEO_RCAR_VIN is not set
+# CONFIG_VIDEO_SH_MOBILE_CSI2 is not set
+# CONFIG_VIDEO_SH_MOBILE_CEU is not set
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
+# CONFIG_VIDEO_SH_VEU is not set
+# CONFIG_VIDEO_RENESAS_VSP1 is not set
+CONFIG_V4L_TEST_DRIVERS=y
+CONFIG_VIDEO_VIVI=m
+CONFIG_VIDEO_MEM2MEM_TESTDEV=m
+
+#
+# Supported MMC/SDIO adapters
+#
+# CONFIG_SMS_SDIO_DRV is not set
+CONFIG_RADIO_ADAPTERS=y
+CONFIG_RADIO_SI470X=y
+CONFIG_USB_SI470X=m
+CONFIG_I2C_SI470X=m
+CONFIG_USB_MR800=m
+CONFIG_USB_DSBR=m
+# CONFIG_RADIO_SHARK is not set
+CONFIG_RADIO_SHARK2=m
+CONFIG_I2C_SI4713=m
+CONFIG_RADIO_SI4713=m
+CONFIG_USB_KEENE=m
+# CONFIG_USB_MA901 is not set
+CONFIG_RADIO_TEA5764=m
+CONFIG_RADIO_SAA7706H=m
+CONFIG_RADIO_TEF6862=m
+CONFIG_RADIO_WL1273=m
+
+#
+# Texas Instruments WL128x FM driver (ST based)
+#
+CONFIG_RADIO_WL128X=m
+CONFIG_VIDEO_CX2341X=m
+CONFIG_VIDEO_TVEEPROM=m
+CONFIG_CYPRESS_FIRMWARE=m
+CONFIG_DVB_B2C2_FLEXCOP=m
+
+#
+# Media ancillary drivers (tuners, sensors, i2c, frontends)
+#
+CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
+CONFIG_MEDIA_ATTACH=y
+CONFIG_VIDEO_IR_I2C=y
+
+#
+# Audio decoders, processors and mixers
+#
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_CS53L32A=m
+CONFIG_VIDEO_WM8775=m
+
+#
+# RDS decoders
+#
+
+#
+# Video decoders
+#
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_TVP5150=m
+
+#
+# Video and audio decoders
+#
+CONFIG_VIDEO_CX25840=m
+
+#
+# Video encoders
+#
+
+#
+# Camera sensor devices
+#
+CONFIG_VIDEO_MT9V011=m
+
+#
+# Flash devices
+#
+
+#
+# Video improvement chips
+#
+
+#
+# Miscelaneous helper chips
+#
+
+#
+# Sensors used on soc_camera driver
+#
+
+#
+# soc_camera sensor drivers
+#
+# CONFIG_SOC_CAMERA_IMX074 is not set
+CONFIG_SOC_CAMERA_MT9M001=y
+CONFIG_SOC_CAMERA_MT9M111=y
+CONFIG_SOC_CAMERA_MT9T031=y
+CONFIG_SOC_CAMERA_MT9T112=y
+CONFIG_SOC_CAMERA_MT9V022=y
+# CONFIG_SOC_CAMERA_OV2640 is not set
+# CONFIG_SOC_CAMERA_OV5642 is not set
+# CONFIG_SOC_CAMERA_OV6650 is not set
+# CONFIG_SOC_CAMERA_OV772X is not set
+# CONFIG_SOC_CAMERA_OV9640 is not set
+# CONFIG_SOC_CAMERA_OV9740 is not set
+# CONFIG_SOC_CAMERA_RJ54N1 is not set
+# CONFIG_SOC_CAMERA_TW9910 is not set
+CONFIG_MEDIA_TUNER=y
+CONFIG_MEDIA_TUNER_SIMPLE=y
+CONFIG_MEDIA_TUNER_TDA8290=y
+CONFIG_MEDIA_TUNER_TDA827X=y
+CONFIG_MEDIA_TUNER_TDA18271=y
+CONFIG_MEDIA_TUNER_TDA9887=y
+CONFIG_MEDIA_TUNER_TEA5761=y
+CONFIG_MEDIA_TUNER_TEA5767=y
+CONFIG_MEDIA_TUNER_MT20XX=y
+CONFIG_MEDIA_TUNER_MT2060=m
+CONFIG_MEDIA_TUNER_MT2063=m
+CONFIG_MEDIA_TUNER_MT2266=m
+CONFIG_MEDIA_TUNER_QT1010=m
+CONFIG_MEDIA_TUNER_XC2028=y
+CONFIG_MEDIA_TUNER_XC5000=y
+CONFIG_MEDIA_TUNER_XC4000=y
+CONFIG_MEDIA_TUNER_MXL5005S=m
+CONFIG_MEDIA_TUNER_MXL5007T=m
+CONFIG_MEDIA_TUNER_MC44S803=y
+CONFIG_MEDIA_TUNER_MAX2165=m
+CONFIG_MEDIA_TUNER_TDA18218=m
+CONFIG_MEDIA_TUNER_FC0011=m
+CONFIG_MEDIA_TUNER_FC0012=m
+CONFIG_MEDIA_TUNER_FC0013=m
+CONFIG_MEDIA_TUNER_TDA18212=m
+CONFIG_MEDIA_TUNER_E4000=m
+CONFIG_MEDIA_TUNER_FC2580=m
+CONFIG_MEDIA_TUNER_TUA9001=m
+CONFIG_MEDIA_TUNER_IT913X=m
+CONFIG_MEDIA_TUNER_R820T=m
+
+#
+# Multistandard (satellite) frontends
+#
+CONFIG_DVB_STB0899=m
+CONFIG_DVB_STB6100=m
+CONFIG_DVB_STV090x=m
+CONFIG_DVB_STV6110x=m
+
+#
+# Multistandard (cable + terrestrial) frontends
+#
+CONFIG_DVB_DRXK=m
+CONFIG_DVB_TDA18271C2DD=m
+
+#
+# DVB-S (satellite) frontends
+#
+CONFIG_DVB_CX24123=m
+CONFIG_DVB_MT312=m
+CONFIG_DVB_ZL10039=m
+CONFIG_DVB_S5H1420=m
+CONFIG_DVB_STV0288=m
+CONFIG_DVB_STB6000=m
+CONFIG_DVB_STV0299=m
+CONFIG_DVB_STV6110=m
+CONFIG_DVB_STV0900=m
+CONFIG_DVB_TDA10086=m
+CONFIG_DVB_TUNER_ITD1000=m
+CONFIG_DVB_TUNER_CX24113=m
+CONFIG_DVB_TDA826X=m
+CONFIG_DVB_CX24116=m
+CONFIG_DVB_SI21XX=m
+CONFIG_DVB_TS2020=m
+CONFIG_DVB_DS3000=m
+CONFIG_DVB_TDA10071=m
+
+#
+# DVB-T (terrestrial) frontends
+#
+CONFIG_DVB_CX22702=m
+CONFIG_DVB_DRXD=m
+CONFIG_DVB_TDA1004X=m
+CONFIG_DVB_NXT6000=m
+CONFIG_DVB_MT352=m
+CONFIG_DVB_ZL10353=m
+CONFIG_DVB_DIB3000MB=m
+CONFIG_DVB_DIB3000MC=m
+CONFIG_DVB_DIB7000M=m
+CONFIG_DVB_DIB7000P=m
+CONFIG_DVB_TDA10048=m
+CONFIG_DVB_AF9013=m
+CONFIG_DVB_EC100=m
+CONFIG_DVB_CXD2820R=m
+CONFIG_DVB_RTL2830=m
+CONFIG_DVB_RTL2832=m
+
+#
+# DVB-C (cable) frontends
+#
+CONFIG_DVB_TDA10023=m
+CONFIG_DVB_STV0297=m
+
+#
+# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
+#
+CONFIG_DVB_NXT200X=m
+CONFIG_DVB_BCM3510=m
+CONFIG_DVB_LGDT330X=m
+CONFIG_DVB_LGDT3305=m
+CONFIG_DVB_LG2160=m
+CONFIG_DVB_S5H1409=m
+CONFIG_DVB_AU8522=m
+CONFIG_DVB_AU8522_DTV=m
+CONFIG_DVB_AU8522_V4L=m
+CONFIG_DVB_S5H1411=m
+
+#
+# ISDB-T (terrestrial) frontends
+#
+CONFIG_DVB_S921=m
+CONFIG_DVB_DIB8000=m
+CONFIG_DVB_MB86A20S=m
+
+#
+# Digital terrestrial only tuners/PLL
+#
+CONFIG_DVB_PLL=m
+CONFIG_DVB_TUNER_DIB0070=m
+CONFIG_DVB_TUNER_DIB0090=m
+
+#
+# SEC control devices for DVB-S
+#
+CONFIG_DVB_LNBP21=m
+CONFIG_DVB_LNBP22=m
+CONFIG_DVB_ISL6421=m
+CONFIG_DVB_ISL6423=m
+CONFIG_DVB_A8293=m
+CONFIG_DVB_LGS8GXX=m
+CONFIG_DVB_ATBM8830=m
+CONFIG_DVB_IX2505V=m
+CONFIG_DVB_IT913X_FE=m
+CONFIG_DVB_M88RS2000=m
+CONFIG_DVB_AF9033=m
+
+#
+# Tools to develop new frontends
+#
+# CONFIG_DVB_DUMMY_FE is not set
+
+#
+# Graphics support
+#
+CONFIG_DRM=y
+CONFIG_DRM_KMS_HELPER=y
+# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+CONFIG_DRM_GEM_CMA_HELPER=y
+CONFIG_DRM_KMS_CMA_HELPER=y
+
+#
+# I2C encoder or helper chips
+#
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+CONFIG_DRM_I2C_NXP_TDA998X=y
+# CONFIG_DRM_EXYNOS is not set
+# CONFIG_DRM_UDL is not set
+# CONFIG_DRM_RCAR_DU is not set
+# CONFIG_DRM_SHMOBILE is not set
+# CONFIG_DRM_OMAP is not set
+CONFIG_DRM_TILCDC=y
+# CONFIG_TEGRA_HOST1X is not set
+# CONFIG_VGASTATE is not set
+# CONFIG_VIDEO_OUTPUT_CONTROL is not set
+CONFIG_VIDEOMODE_HELPERS=y
+CONFIG_HDMI=y
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+# 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=y
+CONFIG_FB_SYS_FILLRECT=y
+CONFIG_FB_SYS_COPYAREA=y
+CONFIG_FB_SYS_IMAGEBLIT=y
+CONFIG_FB_FOREIGN_ENDIAN=y
+CONFIG_FB_BOTH_ENDIAN=y
+# CONFIG_FB_BIG_ENDIAN is not set
+# CONFIG_FB_LITTLE_ENDIAN is not set
+CONFIG_FB_SYS_FOPS=y
+CONFIG_FB_DEFERRED_IO=y
+# CONFIG_FB_SVGALIB is not set
+# CONFIG_FB_MACMODES is not set
+# CONFIG_FB_BACKLIGHT is not set
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+
+#
+# Frame buffer hardware drivers
+#
+# CONFIG_FB_UVESA is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_TMIO is not set
+# CONFIG_FB_SMSCUFX is not set
+# CONFIG_FB_UDL is not set
+# CONFIG_FB_GOLDFISH is not set
+CONFIG_FB_DA8XX=y
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_BROADSHEET is not set
+# CONFIG_FB_AUO_K190X is not set
+CONFIG_FB_SIMPLE=y
+CONFIG_OMAP2_DSS=m
+# CONFIG_OMAP2_DSS_DEBUG is not set
+# CONFIG_OMAP2_DSS_DEBUGFS is not set
+CONFIG_OMAP2_DSS_DPI=y
+CONFIG_OMAP2_DSS_VENC=y
+CONFIG_OMAP4_DSS_HDMI=y
+CONFIG_OMAP2_DSS_SDI=y
+CONFIG_OMAP2_DSS_DSI=y
+CONFIG_OMAP2_DSS_MIN_FCK_PER_PCK=0
+CONFIG_OMAP2_DSS_SLEEP_AFTER_VENC_RESET=y
+CONFIG_FB_OMAP2=m
+CONFIG_FB_OMAP2_DEBUG_SUPPORT=y
+CONFIG_FB_OMAP2_NUM_FBS=3
+
+#
+# OMAP Display Device Drivers (new device model)
+#
+# CONFIG_DISPLAY_ENCODER_TFP410 is not set
+# CONFIG_DISPLAY_ENCODER_TPD12S015 is not set
+# CONFIG_DISPLAY_CONNECTOR_DVI is not set
+# CONFIG_DISPLAY_CONNECTOR_HDMI is not set
+# CONFIG_DISPLAY_CONNECTOR_ANALOG_TV is not set
+# CONFIG_DISPLAY_PANEL_DPI is not set
+# CONFIG_DISPLAY_PANEL_DSI_CM is not set
+# CONFIG_DISPLAY_PANEL_SONY_ACX565AKM is not set
+# CONFIG_DISPLAY_PANEL_LGPHILIPS_LB035Q02 is not set
+# CONFIG_DISPLAY_PANEL_SHARP_LS037V7DW01 is not set
+# CONFIG_DISPLAY_PANEL_TPO_TD043MTEA1 is not set
+# CONFIG_DISPLAY_PANEL_NEC_NL8048HL11 is not set
+# CONFIG_EXYNOS_VIDEO is not set
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_LCD_CLASS_DEVICE=y
+# CONFIG_LCD_L4F00242T03 is not set
+# CONFIG_LCD_LMS283GF05 is not set
+# CONFIG_LCD_LTV350QV is not set
+# CONFIG_LCD_ILI922X is not set
+CONFIG_LCD_ILI9320=y
+# CONFIG_LCD_TDO24M is not set
+# CONFIG_LCD_VGG2432A4 is not set
+CONFIG_LCD_PLATFORM=y
+# CONFIG_LCD_S6E63M0 is not set
+# CONFIG_LCD_LD9040 is not set
+# CONFIG_LCD_AMS369FG06 is not set
+# CONFIG_LCD_LMS501KF03 is not set
+# CONFIG_LCD_HX8357 is not set
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+CONFIG_BACKLIGHT_GENERIC=m
+CONFIG_BACKLIGHT_PWM=y
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+CONFIG_BACKLIGHT_LM3630=m
+CONFIG_BACKLIGHT_LM3639=m
+# CONFIG_BACKLIGHT_LP855X is not set
+# CONFIG_BACKLIGHT_PANDORA is not set
+CONFIG_BACKLIGHT_TPS65217=y
+# CONFIG_BACKLIGHT_GPIO is not set
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+CONFIG_LOGO=y
+CONFIG_LOGO_LINUX_MONO=y
+CONFIG_LOGO_LINUX_VGA16=y
+CONFIG_LOGO_LINUX_CLUT224=y
+CONFIG_FB_SSD1307=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_HWDEP=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_COMPRESS_OFFLOAD=y
+CONFIG_SND_JACK=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_HRTIMER=y
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_MAX_CARDS=32
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_VERBOSE_PROCFS=y
+CONFIG_SND_VERBOSE_PRINTK=y
+CONFIG_SND_DEBUG=y
+# CONFIG_SND_DEBUG_VERBOSE is not set
+# CONFIG_SND_PCM_XRUN_DEBUG is not set
+CONFIG_SND_VMASTER=y
+# 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_ALOOP 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_SPI=y
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_CAIAQ=m
+# CONFIG_SND_USB_CAIAQ_INPUT is not set
+CONFIG_SND_USB_6FIRE=m
+# CONFIG_SND_USB_HIFACE is not set
+CONFIG_SND_SOC=y
+# CONFIG_SND_ATMEL_SOC is not set
+# CONFIG_SND_DESIGNWARE_I2S is not set
+CONFIG_SND_SOC_I2C_AND_SPI=y
+# CONFIG_SND_SIMPLE_CARD is not set
+# CONFIG_SOUND_PRIME is not set
+
+#
+# HID support
+#
+CONFIG_HID=y
+# CONFIG_HIDRAW is not set
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=y
+
+#
+# Special HID drivers
+#
+# CONFIG_HID_A4TECH is not set
+# CONFIG_HID_ACRUX is not set
+# CONFIG_HID_APPLE is not set
+# CONFIG_HID_APPLEIR is not set
+# CONFIG_HID_AUREAL is not set
+# CONFIG_HID_BELKIN is not set
+# CONFIG_HID_CHERRY is not set
+# CONFIG_HID_CHICONY is not set
+# CONFIG_HID_PRODIKEYS is not set
+# CONFIG_HID_CYPRESS is not set
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+# CONFIG_HID_EZKEY is not set
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_HUION is not set
+# CONFIG_HID_KEYTOUCH is not set
+# CONFIG_HID_KYE is not set
+# CONFIG_HID_UCLOGIC is not set
+# CONFIG_HID_WALTOP is not set
+# CONFIG_HID_GYRATION is not set
+# CONFIG_HID_ICADE is not set
+# CONFIG_HID_TWINHAN is not set
+# CONFIG_HID_KENSINGTON is not set
+# CONFIG_HID_LCPOWER is not set
+CONFIG_HID_LENOVO_TPKBD=m
+# CONFIG_HID_LOGITECH is not set
+# CONFIG_HID_MAGICMOUSE is not set
+# CONFIG_HID_MICROSOFT is not set
+# CONFIG_HID_MONTEREY is not set
+# CONFIG_HID_MULTITOUCH is not set
+# CONFIG_HID_NTRIG is not set
+# CONFIG_HID_ORTEK is not set
+# CONFIG_HID_PANTHERLORD is not set
+# CONFIG_HID_PETALYNX is not set
+# CONFIG_HID_PICOLCD is not set
+# CONFIG_HID_PRIMAX is not set
+# CONFIG_HID_ROCCAT is not set
+# CONFIG_HID_SAITEK is not set
+# CONFIG_HID_SAMSUNG is not set
+# CONFIG_HID_SONY is not set
+# CONFIG_HID_SPEEDLINK is not set
+# CONFIG_HID_STEELSERIES is not set
+# CONFIG_HID_SUNPLUS is not set
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+# CONFIG_HID_TIVO is not set
+# CONFIG_HID_TOPSEED is not set
+# CONFIG_HID_THINGM is not set
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_WACOM is not set
+# CONFIG_HID_WIIMOTE is not set
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+# CONFIG_HID_ZYDACRON is not set
+CONFIG_HID_SENSOR_HUB=m
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=y
+# CONFIG_HID_PID is not set
+# CONFIG_USB_HIDDEV is not set
+
+#
+# I2C HID support
+#
+# CONFIG_I2C_HID is not set
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=y
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=y
+CONFIG_USB_DEBUG=y
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEFAULT_PERSIST=y
+# CONFIG_USB_DYNAMIC_MINORS is not set
+# CONFIG_USB_OTG is not set
+# CONFIG_USB_OTG_WHITELIST is not set
+# CONFIG_USB_OTG_BLACKLIST_HUB is not set
+CONFIG_USB_MON=y
+# CONFIG_USB_WUSB_CBAF is not set
+
+#
+# USB Host Controller Drivers
+#
+# CONFIG_USB_C67X00_HCD is not set
+# CONFIG_USB_XHCI_HCD is not set
+# CONFIG_USB_EHCI_HCD is not set
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_ISP1760_HCD is not set
+# CONFIG_USB_ISP1362_HCD is not set
+# CONFIG_USB_FUSBH200_HCD is not set
+# CONFIG_USB_FOTG210_HCD is not set
+# CONFIG_USB_OHCI_HCD is not set
+# CONFIG_USB_U132_HCD is not set
+# CONFIG_USB_SL811_HCD is not set
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_SSB is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
+CONFIG_USB_MUSB_HDRC=y
+# CONFIG_USB_MUSB_HOST is not set
+# CONFIG_USB_MUSB_GADGET is not set
+CONFIG_USB_MUSB_DUAL_ROLE=y
+# CONFIG_USB_MUSB_TUSB6010 is not set
+# CONFIG_USB_MUSB_OMAP2PLUS is not set
+# CONFIG_USB_MUSB_AM35X is not set
+CONFIG_USB_MUSB_DSPS=y
+# CONFIG_USB_MUSB_UX500 is not set
+CONFIG_USB_MUSB_AM335X_CHILD=y
+CONFIG_USB_TI_CPPI41_DMA=y
+# CONFIG_MUSB_PIO_ONLY is not set
+# CONFIG_USB_RENESAS_USBHS is not set
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=y
+CONFIG_USB_PRINTER=m
+CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=y
+# CONFIG_USB_STORAGE_DEBUG is not set
+# CONFIG_USB_STORAGE_REALTEK is not set
+# CONFIG_USB_STORAGE_DATAFAB is not set
+# CONFIG_USB_STORAGE_FREECOM is not set
+# CONFIG_USB_STORAGE_ISD200 is not set
+# CONFIG_USB_STORAGE_USBAT is not set
+# CONFIG_USB_STORAGE_SDDR09 is not set
+# CONFIG_USB_STORAGE_SDDR55 is not set
+# CONFIG_USB_STORAGE_JUMPSHOT is not set
+# CONFIG_USB_STORAGE_ALAUDA is not set
+# CONFIG_USB_STORAGE_ONETOUCH is not set
+# CONFIG_USB_STORAGE_KARMA is not set
+# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
+# CONFIG_USB_STORAGE_ENE_UB6250 is not set
+
+#
+# USB Imaging devices
+#
+CONFIG_USB_MDC800=m
+CONFIG_USB_MICROTEK=m
+# CONFIG_USB_DWC3 is not set
+# CONFIG_USB_CHIPIDEA is not set
+
+#
+# USB port drivers
+#
+CONFIG_USB_SERIAL=m
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_SIMPLE=m
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
+CONFIG_USB_SERIAL_GARMIN=m
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+CONFIG_USB_SERIAL_KEYSPAN_PDA=m
+CONFIG_USB_SERIAL_KEYSPAN=m
+CONFIG_USB_SERIAL_KEYSPAN_MPR=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19=y
+CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
+CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
+CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
+CONFIG_USB_SERIAL_KLSI=m
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_METRO=m
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7840=m
+CONFIG_USB_SERIAL_NAVMAN=m
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QCAUX=m
+CONFIG_USB_SERIAL_QUALCOMM=m
+CONFIG_USB_SERIAL_SPCP8X5=m
+CONFIG_USB_SERIAL_SAFE=m
+# CONFIG_USB_SERIAL_SAFE_PADDED is not set
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_SYMBOL=m
+CONFIG_USB_SERIAL_TI=m
+CONFIG_USB_SERIAL_CYBERJACK=m
+CONFIG_USB_SERIAL_XIRCOM=m
+CONFIG_USB_SERIAL_WWAN=m
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_SERIAL_OMNINET=m
+CONFIG_USB_SERIAL_OPTICON=m
+# CONFIG_USB_SERIAL_XSENS_MT is not set
+# CONFIG_USB_SERIAL_WISHBONE is not set
+CONFIG_USB_SERIAL_ZTE=m
+CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
+CONFIG_USB_SERIAL_DEBUG=m
+
+#
+# USB Miscellaneous drivers
+#
+CONFIG_USB_EMI62=m
+CONFIG_USB_EMI26=m
+CONFIG_USB_ADUTUX=m
+CONFIG_USB_SEVSEG=m
+CONFIG_USB_RIO500=m
+CONFIG_USB_LEGOTOWER=m
+CONFIG_USB_LCD=m
+CONFIG_USB_LED=m
+CONFIG_USB_CYPRESS_CY7C63=m
+CONFIG_USB_CYTHERM=m
+CONFIG_USB_IDMOUSE=m
+CONFIG_USB_FTDI_ELAN=m
+# CONFIG_USB_APPLEDISPLAY is not set
+# CONFIG_USB_SISUSBVGA is not set
+CONFIG_USB_LD=m
+CONFIG_USB_TRANCEVIBRATOR=m
+CONFIG_USB_IOWARRIOR=m
+CONFIG_USB_TEST=m
+# CONFIG_USB_EHSET_TEST_FIXTURE is not set
+CONFIG_USB_ISIGHTFW=m
+CONFIG_USB_YUREX=m
+CONFIG_USB_EZUSB_FX2=m
+# CONFIG_USB_HSIC_USB3503 is not set
+
+#
+# USB Physical Layer drivers
+#
+CONFIG_USB_PHY=y
+CONFIG_NOP_USB_XCEIV=y
+CONFIG_OMAP_CONTROL_USB=y
+CONFIG_OMAP_USB2=y
+# CONFIG_OMAP_USB3 is not set
+CONFIG_AM335X_CONTROL_USB=y
+CONFIG_AM335X_PHY_USB=y
+# CONFIG_SAMSUNG_USB2PHY is not set
+# CONFIG_SAMSUNG_USB3PHY is not set
+CONFIG_USB_GPIO_VBUS=m
+CONFIG_USB_ISP1301=m
+# CONFIG_USB_RCAR_PHY is not set
+# CONFIG_USB_ULPI is not set
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DEBUG=y
+CONFIG_USB_GADGET_DEBUG_FILES=y
+CONFIG_USB_GADGET_DEBUG_FS=y
+CONFIG_USB_GADGET_VBUS_DRAW=2
+CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
+
+#
+# USB Peripheral Controller
+#
+# CONFIG_USB_FUSB300 is not set
+# CONFIG_USB_FOTG210_UDC is not set
+# CONFIG_USB_R8A66597 is not set
+# CONFIG_USB_PXA27X is not set
+# CONFIG_USB_MV_UDC is not set
+# CONFIG_USB_MV_U3D is not set
+# CONFIG_USB_M66592 is not set
+# CONFIG_USB_NET2272 is not set
+# CONFIG_USB_DUMMY_HCD is not set
+CONFIG_USB_LIBCOMPOSITE=m
+CONFIG_USB_F_ACM=m
+CONFIG_USB_F_SS_LB=m
+CONFIG_USB_U_SERIAL=m
+CONFIG_USB_U_ETHER=m
+CONFIG_USB_U_RNDIS=m
+CONFIG_USB_F_SERIAL=m
+CONFIG_USB_F_OBEX=m
+CONFIG_USB_F_NCM=m
+CONFIG_USB_F_ECM=m
+CONFIG_USB_F_PHONET=m
+CONFIG_USB_F_EEM=m
+CONFIG_USB_F_SUBSET=m
+CONFIG_USB_F_RNDIS=m
+CONFIG_USB_CONFIGFS=m
+CONFIG_USB_CONFIGFS_SERIAL=y
+CONFIG_USB_CONFIGFS_ACM=y
+CONFIG_USB_CONFIGFS_OBEX=y
+CONFIG_USB_CONFIGFS_NCM=y
+CONFIG_USB_CONFIGFS_ECM=y
+CONFIG_USB_CONFIGFS_ECM_SUBSET=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_EEM=y
+CONFIG_USB_CONFIGFS_PHONET=y
+CONFIG_USB_ZERO=m
+CONFIG_USB_AUDIO=m
+# CONFIG_GADGET_UAC1 is not set
+CONFIG_USB_ETH=m
+CONFIG_USB_ETH_RNDIS=y
+# CONFIG_USB_ETH_EEM is not set
+CONFIG_USB_G_NCM=m
+CONFIG_USB_GADGETFS=m
+CONFIG_USB_FUNCTIONFS=m
+CONFIG_USB_FUNCTIONFS_ETH=y
+CONFIG_USB_FUNCTIONFS_RNDIS=y
+# CONFIG_USB_FUNCTIONFS_GENERIC is not set
+CONFIG_USB_MASS_STORAGE=m
+CONFIG_USB_G_SERIAL=m
+CONFIG_USB_MIDI_GADGET=m
+CONFIG_USB_G_PRINTER=m
+CONFIG_USB_CDC_COMPOSITE=m
+CONFIG_USB_G_NOKIA=m
+CONFIG_USB_G_ACM_MS=m
+CONFIG_USB_G_MULTI=m
+CONFIG_USB_G_MULTI_RNDIS=y
+# CONFIG_USB_G_MULTI_CDC is not set
+CONFIG_USB_G_HID=m
+# CONFIG_USB_G_DBGP is not set
+CONFIG_USB_G_WEBCAM=m
+CONFIG_MMC=y
+# CONFIG_MMC_DEBUG is not set
+CONFIG_MMC_UNSAFE_RESUME=y
+# CONFIG_MMC_CLKGATE is not set
+
+#
+# MMC/SD/SDIO Card Drivers
+#
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK_MINORS=8
+CONFIG_MMC_BLOCK_BOUNCE=y
+CONFIG_SDIO_UART=y
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_SDHCI is not set
+# CONFIG_MMC_SDHCI_PXAV3 is not set
+# CONFIG_MMC_SDHCI_PXAV2 is not set
+CONFIG_MMC_OMAP=y
+CONFIG_MMC_OMAP_HS=y
+# CONFIG_MMC_DW is not set
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MEMSTICK is not set
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+
+#
+# LED drivers
+#
+# CONFIG_LEDS_LM3530 is not set
+CONFIG_LEDS_LM3642=m
+# CONFIG_LEDS_PCA9532 is not set
+CONFIG_LEDS_GPIO=y
+# CONFIG_LEDS_LP3944 is not set
+# CONFIG_LEDS_LP5521 is not set
+# CONFIG_LEDS_LP5523 is not set
+# CONFIG_LEDS_LP5562 is not set
+# CONFIG_LEDS_LP8501 is not set
+# CONFIG_LEDS_PCA955X is not set
+# CONFIG_LEDS_PCA963X is not set
+# CONFIG_LEDS_DAC124S085 is not set
+CONFIG_LEDS_PWM=y
+# CONFIG_LEDS_REGULATOR is not set
+# CONFIG_LEDS_BD2802 is not set
+# CONFIG_LEDS_LT3593 is not set
+# CONFIG_LEDS_TCA6507 is not set
+CONFIG_LEDS_LM355x=m
+# CONFIG_LEDS_OT200 is not set
+CONFIG_LEDS_BLINKM=m
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=y
+CONFIG_LEDS_TRIGGER_ONESHOT=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=y
+CONFIG_LEDS_TRIGGER_BACKLIGHT=y
+CONFIG_LEDS_TRIGGER_CPU=y
+CONFIG_LEDS_TRIGGER_GPIO=y
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+CONFIG_LEDS_TRIGGER_TRANSIENT=y
+# CONFIG_LEDS_TRIGGER_CAMERA is not set
+# CONFIG_ACCESSIBILITY is not set
+# CONFIG_EDAC is not set
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+
+#
+# I2C RTC drivers
+#
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+# CONFIG_RTC_DRV_TWL4030 is not set
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV3029C2 is not set
+
+#
+# SPI RTC drivers
+#
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_DS3234 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+
+#
+# Platform RTC drivers
+#
+# CONFIG_RTC_DRV_CMOS is not set
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_BQ4802 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_V3020 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+
+#
+# on-CPU RTC drivers
+#
+CONFIG_RTC_DRV_OMAP=y
+# CONFIG_RTC_DRV_SNVS is not set
+# CONFIG_RTC_DRV_MOXART is not set
+
+#
+# HID Sensor RTC drivers
+#
+# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+# CONFIG_DW_DMAC_CORE is not set
+# CONFIG_DW_DMAC is not set
+# CONFIG_TIMB_DMA is not set
+CONFIG_TI_EDMA=y
+# CONFIG_DMA_OMAP is not set
+CONFIG_TI_CPPI41=y
+CONFIG_DMA_ENGINE=y
+CONFIG_DMA_VIRTUAL_CHANNELS=y
+CONFIG_DMA_OF=y
+
+#
+# DMA Clients
+#
+# CONFIG_NET_DMA is not set
+# CONFIG_ASYNC_TX_DMA is not set
+# CONFIG_DMATEST is not set
+# CONFIG_AUXDISPLAY is not set
+CONFIG_UIO=y
+CONFIG_UIO_PDRV_GENIRQ=y
+# CONFIG_UIO_DMEM_GENIRQ is not set
+# CONFIG_VIRT_DRIVERS is not set
+CONFIG_VIRTIO=m
+
+#
+# Virtio drivers
+#
+# CONFIG_VIRTIO_BALLOON is not set
+# CONFIG_VIRTIO_MMIO is not set
+
+#
+# Microsoft Hyper-V guest support
+#
+# CONFIG_STAGING is not set
+CONFIG_CLKDEV_LOOKUP=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+
+#
+# Common Clock Framework
+#
+CONFIG_COMMON_CLK_DEBUG=y
+# CONFIG_COMMON_CLK_SI5351 is not set
+
+#
+# Hardware Spinlock drivers
+#
+CONFIG_CLKSRC_MMIO=y
+# CONFIG_MAILBOX is not set
+CONFIG_IOMMU_SUPPORT=y
+CONFIG_OF_IOMMU=y
+# CONFIG_OMAP_IOMMU is not set
+
+#
+# Remoteproc drivers
+#
+CONFIG_REMOTEPROC=m
+CONFIG_STE_MODEM_RPROC=m
+
+#
+# Rpmsg drivers
+#
+# CONFIG_PM_DEVFREQ is not set
+# CONFIG_EXTCON is not set
+# CONFIG_MEMORY is not set
+CONFIG_IIO=y
+CONFIG_IIO_BUFFER=y
+CONFIG_IIO_BUFFER_CB=y
+CONFIG_IIO_KFIFO_BUF=y
+CONFIG_IIO_TRIGGERED_BUFFER=y
+CONFIG_IIO_TRIGGER=y
+CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+
+#
+# Accelerometers
+#
+# CONFIG_BMA180 is not set
+CONFIG_HID_SENSOR_ACCEL_3D=m
+CONFIG_IIO_ST_ACCEL_3AXIS=m
+CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m
+CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m
+# CONFIG_KXSD9 is not set
+
+#
+# Analog to digital converters
+#
+CONFIG_AD_SIGMA_DELTA=m
+CONFIG_AD7266=m
+# CONFIG_AD7298 is not set
+CONFIG_AD7476=m
+CONFIG_AD7791=m
+# CONFIG_AD7793 is not set
+# CONFIG_AD7887 is not set
+# CONFIG_AD7923 is not set
+# CONFIG_EXYNOS_ADC is not set
+# CONFIG_MAX1363 is not set
+# CONFIG_MCP320X is not set
+# CONFIG_NAU7802 is not set
+# CONFIG_TI_ADC081C is not set
+CONFIG_TI_AM335X_ADC=y
+# CONFIG_TWL6030_GPADC is not set
+
+#
+# Amplifiers
+#
+# CONFIG_AD8366 is not set
+
+#
+# Hid Sensor IIO Common
+#
+CONFIG_HID_SENSOR_IIO_COMMON=m
+CONFIG_HID_SENSOR_IIO_TRIGGER=m
+# CONFIG_HID_SENSOR_ENUM_BASE_QUIRKS is not set
+CONFIG_IIO_ST_SENSORS_I2C=m
+CONFIG_IIO_ST_SENSORS_SPI=m
+CONFIG_IIO_ST_SENSORS_CORE=m
+
+#
+# Digital to analog converters
+#
+CONFIG_AD5064=m
+CONFIG_AD5360=m
+CONFIG_AD5380=m
+CONFIG_AD5421=m
+CONFIG_AD5446=m
+# CONFIG_AD5449 is not set
+CONFIG_AD5504=m
+CONFIG_AD5624R_SPI=m
+CONFIG_AD5686=m
+CONFIG_AD5755=m
+CONFIG_AD5764=m
+CONFIG_AD5791=m
+# CONFIG_AD7303 is not set
+CONFIG_MAX517=m
+CONFIG_MCP4725=m
+
+#
+# Frequency Synthesizers DDS/PLL
+#
+
+#
+# Clock Generator/Distribution
+#
+CONFIG_AD9523=m
+
+#
+# Phase-Locked Loop (PLL) frequency synthesizers
+#
+CONFIG_ADF4350=m
+
+#
+# Digital gyroscope sensors
+#
+CONFIG_ADIS16080=m
+CONFIG_ADIS16130=m
+# CONFIG_ADIS16136 is not set
+CONFIG_ADIS16260=m
+CONFIG_ADXRS450=m
+CONFIG_HID_SENSOR_GYRO_3D=m
+CONFIG_IIO_ST_GYRO_3AXIS=m
+CONFIG_IIO_ST_GYRO_I2C_3AXIS=m
+CONFIG_IIO_ST_GYRO_SPI_3AXIS=m
+# CONFIG_ITG3200 is not set
+
+#
+# Inertial measurement units
+#
+CONFIG_ADIS16400=m
+# CONFIG_ADIS16480 is not set
+CONFIG_IIO_ADIS_LIB=m
+CONFIG_IIO_ADIS_LIB_BUFFER=y
+CONFIG_INV_MPU6050_IIO=m
+
+#
+# Light sensors
+#
+CONFIG_ADJD_S311=m
+# CONFIG_APDS9300 is not set
+CONFIG_HID_SENSOR_ALS=m
+CONFIG_SENSORS_TSL2563=m
+CONFIG_VCNL4000=m
+
+#
+# Magnetometer sensors
+#
+# CONFIG_AK8975 is not set
+CONFIG_HID_SENSOR_MAGNETOMETER_3D=m
+CONFIG_IIO_ST_MAGN_3AXIS=m
+CONFIG_IIO_ST_MAGN_I2C_3AXIS=m
+CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
+
+#
+# Triggers - standalone
+#
+# CONFIG_IIO_INTERRUPT_TRIGGER is not set
+CONFIG_IIO_SYSFS_TRIGGER=m
+
+#
+# Pressure sensors
+#
+# CONFIG_IIO_ST_PRESS is not set
+
+#
+# Temperature sensors
+#
+# CONFIG_TMP006 is not set
+CONFIG_PWM=y
+CONFIG_PWM_SYSFS=y
+CONFIG_PWM_PCA9685=m
+CONFIG_PWM_TIECAP=y
+CONFIG_PWM_TIEHRPWM=y
+CONFIG_PWM_TIPWMSS=y
+# CONFIG_PWM_TWL is not set
+# CONFIG_PWM_TWL_LED is not set
+CONFIG_IRQCHIP=y
+# CONFIG_IPACK_BUS is not set
+# CONFIG_RESET_CONTROLLER is not set
+# CONFIG_FMC is not set
+
+#
+# File systems
+#
+CONFIG_DCACHE_WORD_ACCESS=y
+CONFIG_EXT2_FS=y
+# CONFIG_EXT2_FS_XATTR is not set
+# CONFIG_EXT2_FS_XIP is not set
+CONFIG_EXT3_FS=y
+CONFIG_EXT3_DEFAULTS_TO_ORDERED=y
+# CONFIG_EXT3_FS_XATTR is not set
+CONFIG_EXT4_FS=y
+# CONFIG_EXT4_FS_POSIX_ACL is not set
+# CONFIG_EXT4_FS_SECURITY is not set
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD=y
+# CONFIG_JBD_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+# CONFIG_REISERFS_PROC_INFO is not set
+# CONFIG_REISERFS_FS_XATTR is not set
+CONFIG_JFS_FS=m
+# CONFIG_JFS_POSIX_ACL is not set
+# CONFIG_JFS_SECURITY is not set
+# CONFIG_JFS_DEBUG is not set
+# CONFIG_JFS_STATISTICS is not set
+CONFIG_XFS_FS=m
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+# CONFIG_XFS_WARN is not set
+# CONFIG_XFS_DEBUG is not set
+CONFIG_GFS2_FS=m
+# CONFIG_OCFS2_FS is not set
+CONFIG_BTRFS_FS=m
+# CONFIG_BTRFS_FS_POSIX_ACL is not set
+# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+CONFIG_NILFS2_FS=m
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=m
+CONFIG_FILE_LOCKING=y
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
+CONFIG_QUOTA=y
+# CONFIG_QUOTA_NETLINK_INTERFACE is not set
+CONFIG_PRINT_QUOTA_WARNING=y
+# CONFIG_QUOTA_DEBUG is not set
+CONFIG_QUOTA_TREE=y
+# CONFIG_QFMT_V1 is not set
+CONFIG_QFMT_V2=y
+CONFIG_QUOTACTL=y
+CONFIG_AUTOFS4_FS=m
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_GENERIC_ACL=y
+
+#
+# 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=y
+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=y
+CONFIG_TMPFS_XATTR=y
+# CONFIG_HUGETLB_PAGE is not set
+CONFIG_CONFIGFS_FS=m
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_ECRYPT_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=y
+CONFIG_JFFS2_FS_POSIX_ACL=y
+CONFIG_JFFS2_FS_SECURITY=y
+CONFIG_JFFS2_COMPRESSION_OPTIONS=y
+CONFIG_JFFS2_ZLIB=y
+CONFIG_JFFS2_LZO=y
+CONFIG_JFFS2_RTIME=y
+CONFIG_JFFS2_RUBIN=y
+# CONFIG_JFFS2_CMODE_NONE is not set
+CONFIG_JFFS2_CMODE_PRIORITY=y
+# CONFIG_JFFS2_CMODE_SIZE is not set
+# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
+CONFIG_UBIFS_FS=y
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+# CONFIG_LOGFS is not set
+CONFIG_CRAMFS=y
+# 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_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_PSTORE is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+CONFIG_F2FS_FS=y
+CONFIG_F2FS_STAT_FS=y
+CONFIG_F2FS_FS_XATTR=y
+CONFIG_F2FS_FS_POSIX_ACL=y
+# CONFIG_F2FS_FS_SECURITY is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=y
+CONFIG_NFS_V2=y
+CONFIG_NFS_V3=y
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=y
+CONFIG_NFS_SWAP=y
+# CONFIG_NFS_V4_1 is not set
+CONFIG_ROOT_NFS=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=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_SUNRPC_SWAP=y
+# CONFIG_SUNRPC_DEBUG is not set
+# CONFIG_CEPH_FS is not set
+# CONFIG_CIFS is not set
+# CONFIG_NCP_FS is not set
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+# CONFIG_9P_FS 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 is not set
+# CONFIG_NLS_CODEPAGE_852 is not set
+# CONFIG_NLS_CODEPAGE_855 is not set
+# CONFIG_NLS_CODEPAGE_857 is not set
+# CONFIG_NLS_CODEPAGE_860 is not set
+# CONFIG_NLS_CODEPAGE_861 is not set
+# CONFIG_NLS_CODEPAGE_862 is not set
+# CONFIG_NLS_CODEPAGE_863 is not set
+# CONFIG_NLS_CODEPAGE_864 is not set
+# CONFIG_NLS_CODEPAGE_865 is not set
+# CONFIG_NLS_CODEPAGE_866 is not set
+# CONFIG_NLS_CODEPAGE_869 is not set
+# CONFIG_NLS_CODEPAGE_936 is not set
+# CONFIG_NLS_CODEPAGE_950 is not set
+# CONFIG_NLS_CODEPAGE_932 is not set
+# CONFIG_NLS_CODEPAGE_949 is not set
+# CONFIG_NLS_CODEPAGE_874 is not set
+# CONFIG_NLS_ISO8859_8 is not set
+# CONFIG_NLS_CODEPAGE_1250 is not set
+# CONFIG_NLS_CODEPAGE_1251 is not set
+# CONFIG_NLS_ASCII 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_MAC_ROMAN is not set
+# CONFIG_NLS_MAC_CELTIC is not set
+# CONFIG_NLS_MAC_CENTEURO is not set
+# CONFIG_NLS_MAC_CROATIAN is not set
+# CONFIG_NLS_MAC_CYRILLIC is not set
+# CONFIG_NLS_MAC_GAELIC is not set
+# CONFIG_NLS_MAC_GREEK is not set
+# CONFIG_NLS_MAC_ICELAND is not set
+# CONFIG_NLS_MAC_INUIT is not set
+# CONFIG_NLS_MAC_ROMANIAN is not set
+# CONFIG_NLS_MAC_TURKISH is not set
+# CONFIG_NLS_UTF8 is not set
+# CONFIG_DLM is not set
+
+#
+# Kernel hacking
+#
+
+#
+# printk and dmesg options
+#
+CONFIG_PRINTK_TIME=y
+CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
+# CONFIG_BOOT_PRINTK_DELAY is not set
+# CONFIG_DYNAMIC_DEBUG is not set
+
+#
+# Compile-time checks and compiler options
+#
+CONFIG_DEBUG_INFO=y
+CONFIG_DEBUG_INFO_REDUCED=y
+CONFIG_ENABLE_WARN_DEPRECATED=y
+CONFIG_ENABLE_MUST_CHECK=y
+CONFIG_FRAME_WARN=1024
+# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_READABLE_ASM is not set
+# CONFIG_UNUSED_SYMBOLS is not set
+CONFIG_DEBUG_FS=y
+# CONFIG_HEADERS_CHECK is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_DEBUG_KERNEL=y
+
+#
+# Memory Debugging
+#
+# CONFIG_DEBUG_PAGEALLOC is not set
+# CONFIG_DEBUG_OBJECTS is not set
+# CONFIG_DEBUG_SLAB is not set
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_DEBUG_KMEMLEAK is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_MEMORY_INIT is not set
+# CONFIG_DEBUG_HIGHMEM is not set
+# CONFIG_DEBUG_SHIRQ is not set
+
+#
+# Debug Lockups and Hangs
+#
+CONFIG_LOCKUP_DETECTOR=y
+CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
+CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=1
+CONFIG_DETECT_HUNG_TASK=y
+CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=60
+CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y
+CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=1
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_SCHED_DEBUG=y
+CONFIG_SCHEDSTATS=y
+CONFIG_TIMER_STATS=y
+
+#
+# Lock Debugging (spinlocks, mutexes, etc...)
+#
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_RT_MUTEX_TESTER is not set
+CONFIG_DEBUG_SPINLOCK=y
+CONFIG_DEBUG_MUTEXES=y
+# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+# CONFIG_DEBUG_KOBJECT is not set
+CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_DEBUG_WRITECOUNT is not set
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_NOTIFIERS is not set
+# CONFIG_DEBUG_CREDENTIALS is not set
+
+#
+# RCU Debugging
+#
+# CONFIG_SPARSE_RCU_POINTER is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+# CONFIG_RCU_TRACE is not set
+# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
+# CONFIG_NOTIFIER_ERROR_INJECTION is not set
+# CONFIG_FAULT_INJECTION is not set
+# CONFIG_LATENCYTOP is not set
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACE_CLOCK=y
+CONFIG_RING_BUFFER=y
+CONFIG_RING_BUFFER_ALLOW_SWAP=y
+CONFIG_TRACING_SUPPORT=y
+# CONFIG_FTRACE is not set
+
+#
+# Runtime Testing
+#
+# CONFIG_LKDTM is not set
+# CONFIG_TEST_LIST_SORT is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
+# CONFIG_RBTREE_TEST is not set
+# CONFIG_INTERVAL_TREE_TEST is not set
+# CONFIG_ATOMIC64_SELFTEST is not set
+# CONFIG_TEST_STRING_HELPERS is not set
+# CONFIG_TEST_KSTRTOX is not set
+# CONFIG_DMA_API_DEBUG is not set
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_ARCH_KGDB=y
+# CONFIG_KGDB is not set
+# CONFIG_STRICT_DEVMEM is not set
+CONFIG_ARM_UNWIND=y
+# CONFIG_DEBUG_USER is not set
+CONFIG_DEBUG_LL=y
+CONFIG_DEBUG_OMAP2UART1=y
+# CONFIG_DEBUG_OMAP2UART2 is not set
+# CONFIG_DEBUG_OMAP2UART3 is not set
+# CONFIG_DEBUG_OMAP3UART3 is not set
+# CONFIG_DEBUG_OMAP4UART3 is not set
+# CONFIG_DEBUG_OMAP3UART4 is not set
+# CONFIG_DEBUG_OMAP4UART4 is not set
+# CONFIG_DEBUG_TI81XXUART1 is not set
+# CONFIG_DEBUG_TI81XXUART2 is not set
+# CONFIG_DEBUG_TI81XXUART3 is not set
+# CONFIG_DEBUG_AM33XXUART1 is not set
+# CONFIG_DEBUG_ZOOM_UART is not set
+# CONFIG_DEBUG_ICEDCC is not set
+# CONFIG_DEBUG_SEMIHOSTING is not set
+# CONFIG_DEBUG_LL_UART_8250 is not set
+# CONFIG_DEBUG_LL_UART_PL01X is not set
+CONFIG_DEBUG_OMAP2PLUS_UART=y
+CONFIG_DEBUG_LL_INCLUDE="debug/omap2plus.S"
+# CONFIG_DEBUG_UART_PL01X is not set
+# CONFIG_DEBUG_UART_8250 is not set
+CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
+CONFIG_EARLY_PRINTK=y
+# CONFIG_PID_IN_CONTEXTIDR is not set
+
+#
+# Security options
+#
+CONFIG_KEYS=y
+# CONFIG_ENCRYPTED_KEYS is not set
+# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+# CONFIG_SECURITY_NETWORK is not set
+# CONFIG_SECURITY_PATH is not set
+# CONFIG_SECURITY_SMACK is not set
+# CONFIG_SECURITY_TOMOYO is not set
+# CONFIG_SECURITY_APPARMOR is not set
+# CONFIG_SECURITY_YAMA is not set
+# CONFIG_IMA is not set
+# CONFIG_EVM is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_DEFAULT_SECURITY=""
+CONFIG_XOR_BLOCKS=m
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_BLKCIPHER=m
+CONFIG_CRYPTO_BLKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_PCOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+# CONFIG_CRYPTO_USER is not set
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=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=m
+# 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=m
+# CONFIG_CRYPTO_CTR is not set
+# CONFIG_CRYPTO_CTS is not set
+CONFIG_CRYPTO_ECB=m
+# CONFIG_CRYPTO_LRW is not set
+# CONFIG_CRYPTO_PCBC is not set
+# CONFIG_CRYPTO_XTS is not set
+
+#
+# Hash modes
+#
+# CONFIG_CRYPTO_CMAC is not set
+CONFIG_CRYPTO_HMAC=y
+# CONFIG_CRYPTO_XCBC is not set
+# CONFIG_CRYPTO_VMAC is not set
+
+#
+# Digest
+#
+CONFIG_CRYPTO_CRC32C=y
+# CONFIG_CRYPTO_CRC32 is not set
+CONFIG_CRYPTO_CRCT10DIF=y
+# CONFIG_CRYPTO_GHASH is not set
+# CONFIG_CRYPTO_MD4 is not set
+CONFIG_CRYPTO_MD5=y
+CONFIG_CRYPTO_MICHAEL_MIC=y
+# 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=y
+# CONFIG_CRYPTO_SHA1_ARM is not set
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=y
+# CONFIG_CRYPTO_TGR192 is not set
+# CONFIG_CRYPTO_WP512 is not set
+
+#
+# Ciphers
+#
+CONFIG_CRYPTO_AES=y
+CONFIG_CRYPTO_AES_ARM=y
+# CONFIG_CRYPTO_ANUBIS is not set
+CONFIG_CRYPTO_ARC4=m
+# 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=m
+# 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=y
+# CONFIG_CRYPTO_ZLIB is not set
+CONFIG_CRYPTO_LZO=y
+# CONFIG_CRYPTO_LZ4 is not set
+# CONFIG_CRYPTO_LZ4HC is not set
+
+#
+# Random Number Generation
+#
+# CONFIG_CRYPTO_ANSI_CPRNG is not set
+# CONFIG_CRYPTO_USER_API_HASH is not set
+# CONFIG_CRYPTO_USER_API_SKCIPHER is not set
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_DEV_OMAP_SHAM=y
+CONFIG_CRYPTO_DEV_OMAP_AES=y
+CONFIG_ASYMMETRIC_KEY_TYPE=m
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m
+CONFIG_PUBLIC_KEY_ALGO_RSA=m
+CONFIG_X509_CERTIFICATE_PARSER=m
+# CONFIG_BINARY_PRINTF is not set
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+CONFIG_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_NET_UTILS=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_IO=y
+CONFIG_CRC_CCITT=y
+CONFIG_CRC16=y
+CONFIG_CRC_T10DIF=y
+CONFIG_CRC_ITU_T=y
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+CONFIG_CRC7=y
+CONFIG_LIBCRC32C=y
+# CONFIG_CRC8 is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+# CONFIG_XZ_DEC is not set
+# CONFIG_XZ_DEC_BCJ is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
+CONFIG_DQL=y
+CONFIG_NLATTR=y
+CONFIG_GENERIC_ATOMIC64=y
+CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
+CONFIG_AVERAGE=y
+CONFIG_CLZ_TAB=y
+# CONFIG_CORDIC is not set
+# CONFIG_DDR is not set
+CONFIG_MPILIB=m
+CONFIG_OID_REGISTRY=y
+CONFIG_FONT_SUPPORT=m
+CONFIG_FONT_8x16=y
+CONFIG_FONT_AUTOSELECT=y
+CONFIG_VIRTUALIZATION=y
diff --git a/kernelconfig b/kernelconfig-3.8.13
index 598a36d..598a36d 100644
--- a/kernelconfig
+++ b/kernelconfig-3.8.13
diff --git a/patches/linux-3.12/0001-w1-gpio-Detect-of_gpio_error-for-first-gpio.patch b/patches/linux-3.12/0001-w1-gpio-Detect-of_gpio_error-for-first-gpio.patch
new file mode 100644
index 0000000..8093f4f
--- /dev/null
+++ b/patches/linux-3.12/0001-w1-gpio-Detect-of_gpio_error-for-first-gpio.patch
@@ -0,0 +1,39 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Thu, 12 Sep 2013 10:46:32 +0200
+Subject: [PATCH] w1-gpio: Detect of_gpio_error for first gpio
+
+The first DT gpio is necessary for this driver, but errors returned for
+of_get_gpio are ignored.
+
+This patch adds a return value check for the first of_get_gpio.
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/w1/masters/w1-gpio.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c
+index f54ece2..ae53e88 100644
+--- a/drivers/w1/masters/w1-gpio.c
++++ b/drivers/w1/masters/w1-gpio.c
+@@ -58,6 +58,7 @@ static int w1_gpio_probe_dt(struct platform_device *pdev)
+ {
+ struct w1_gpio_platform_data *pdata = pdev->dev.platform_data;
+ struct device_node *np = pdev->dev.of_node;
++ int gpio;
+
+ pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);
+ if (!pdata)
+@@ -66,7 +67,11 @@ static int w1_gpio_probe_dt(struct platform_device *pdev)
+ if (of_get_property(np, "linux,open-drain", NULL))
+ pdata->is_open_drain = 1;
+
+- pdata->pin = of_get_gpio(np, 0);
++ gpio = of_get_gpio(np, 0);
++ if (gpio < 0)
++ return gpio;
++ pdata->pin = gpio;
++
+ pdata->ext_pullup_enable_pin = of_get_gpio(np, 1);
+ pdev->dev.platform_data = pdata;
+
diff --git a/patches/linux-3.12/0002-w1-gpio-Use-devm_-functions.patch b/patches/linux-3.12/0002-w1-gpio-Use-devm_-functions.patch
new file mode 100644
index 0000000..126b019
--- /dev/null
+++ b/patches/linux-3.12/0002-w1-gpio-Use-devm_-functions.patch
@@ -0,0 +1,82 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Thu, 12 Sep 2013 11:00:00 +0200
+Subject: [PATCH] w1-gpio: Use devm_* functions
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/w1/masters/w1-gpio.c | 28 +++++++++-------------------
+ 1 file changed, 9 insertions(+), 19 deletions(-)
+
+diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c
+index ae53e88..264ad1c 100644
+--- a/drivers/w1/masters/w1-gpio.c
++++ b/drivers/w1/masters/w1-gpio.c
+@@ -99,25 +99,27 @@ static int w1_gpio_probe(struct platform_device *pdev)
+ return -ENXIO;
+ }
+
+- master = kzalloc(sizeof(struct w1_bus_master), GFP_KERNEL);
++ master = devm_kzalloc(&pdev->dev, sizeof(struct w1_bus_master),
++ GFP_KERNEL);
+ if (!master) {
+ dev_err(&pdev->dev, "Out of memory\n");
+ return -ENOMEM;
+ }
+
+- err = gpio_request(pdata->pin, "w1");
++ err = devm_gpio_request(&pdev->dev, pdata->pin, "w1");
+ if (err) {
+ dev_err(&pdev->dev, "gpio_request (pin) failed\n");
+- goto free_master;
++ return err;
+ }
+
+ if (gpio_is_valid(pdata->ext_pullup_enable_pin)) {
+- err = gpio_request_one(pdata->ext_pullup_enable_pin,
+- GPIOF_INIT_LOW, "w1 pullup");
++ err = devm_gpio_request_one(&pdev->dev,
++ pdata->ext_pullup_enable_pin, GPIOF_INIT_LOW,
++ "w1 pullup");
+ if (err < 0) {
+ dev_err(&pdev->dev, "gpio_request_one "
+ "(ext_pullup_enable_pin) failed\n");
+- goto free_gpio;
++ return err;
+ }
+ }
+
+@@ -135,7 +137,7 @@ static int w1_gpio_probe(struct platform_device *pdev)
+ err = w1_add_master_device(master);
+ if (err) {
+ dev_err(&pdev->dev, "w1_add_master device failed\n");
+- goto free_gpio_ext_pu;
++ return err;
+ }
+
+ if (pdata->enable_external_pullup)
+@@ -147,16 +149,6 @@ static int w1_gpio_probe(struct platform_device *pdev)
+ platform_set_drvdata(pdev, master);
+
+ return 0;
+-
+- free_gpio_ext_pu:
+- if (gpio_is_valid(pdata->ext_pullup_enable_pin))
+- gpio_free(pdata->ext_pullup_enable_pin);
+- free_gpio:
+- gpio_free(pdata->pin);
+- free_master:
+- kfree(master);
+-
+- return err;
+ }
+
+ static int w1_gpio_remove(struct platform_device *pdev)
+@@ -171,8 +163,6 @@ static int w1_gpio_remove(struct platform_device *pdev)
+ gpio_set_value(pdata->ext_pullup_enable_pin, 0);
+
+ w1_remove_master_device(master);
+- gpio_free(pdata->pin);
+- kfree(master);
+
+ return 0;
+ }
diff --git a/patches/linux-3.12/0051-regulator-tps65910-Add-backup-battery-regulator.patch b/patches/linux-3.12/0051-regulator-tps65910-Add-backup-battery-regulator.patch
new file mode 100644
index 0000000..bb6ed95
--- /dev/null
+++ b/patches/linux-3.12/0051-regulator-tps65910-Add-backup-battery-regulator.patch
@@ -0,0 +1,132 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Thu, 17 Oct 2013 16:03:40 +0200
+Subject: [PATCH] regulator: tps65910: Add backup battery regulator
+
+Regulator support for the backup battery charging voltage.
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/regulator/tps65910-regulator.c | 32 ++++++++++++++++++++++++++++++--
+ include/linux/mfd/tps65910.h | 3 ++-
+ 2 files changed, 32 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/regulator/tps65910-regulator.c b/drivers/regulator/tps65910-regulator.c
+index 45c1644..f8616b7 100644
+--- a/drivers/regulator/tps65910-regulator.c
++++ b/drivers/regulator/tps65910-regulator.c
+@@ -88,6 +88,11 @@ static const unsigned int VMMC_VSEL_table[] = {
+ 1800000, 2800000, 3000000, 3300000,
+ };
+
++/* supported BBCH voltages in microvolts */
++static const unsigned int VBB_VSEL_table[] = {
++ 3000000, 2520000, 3150000, 5000000,
++};
++
+ struct tps_info {
+ const char *name;
+ const char *vin_name;
+@@ -183,6 +188,12 @@ static struct tps_info tps65910_regs[] = {
+ .voltage_table = VMMC_VSEL_table,
+ .enable_time_us = 100,
+ },
++ {
++ .name = "vbb",
++ .vin_name = "vcc7",
++ .n_voltages = ARRAY_SIZE(VBB_VSEL_table),
++ .voltage_table = VBB_VSEL_table,
++ },
+ };
+
+ static struct tps_info tps65911_regs[] = {
+@@ -339,6 +350,8 @@ static int tps65910_get_ctrl_register(int id)
+ return TPS65910_VAUX33;
+ case TPS65910_REG_VMMC:
+ return TPS65910_VMMC;
++ case TPS65910_REG_VBB:
++ return TPS65910_BBCH;
+ default:
+ return -EINVAL;
+ }
+@@ -528,6 +541,10 @@ static int tps65910_get_voltage_sel(struct regulator_dev *dev)
+ value &= LDO_SEL_MASK;
+ value >>= LDO_SEL_SHIFT;
+ break;
++ case TPS65910_REG_VBB:
++ value &= BBCH_BBSEL_MASK;
++ value >>= BBCH_BBSEL_SHIFT;
++ break;
+ default:
+ return -EINVAL;
+ }
+@@ -638,6 +655,9 @@ static int tps65910_set_voltage_sel(struct regulator_dev *dev,
+ case TPS65910_REG_VMMC:
+ return tps65910_reg_update_bits(pmic->mfd, reg, LDO_SEL_MASK,
+ selector << LDO_SEL_SHIFT);
++ case TPS65910_REG_VBB:
++ return tps65910_reg_update_bits(pmic->mfd, reg, BBCH_BBSEL_MASK,
++ selector << BBCH_BBSEL_SHIFT);
+ }
+
+ return -EINVAL;
+@@ -669,6 +689,9 @@ static int tps65911_set_voltage_sel(struct regulator_dev *dev,
+ case TPS65910_REG_VIO:
+ return tps65910_reg_update_bits(pmic->mfd, reg, LDO_SEL_MASK,
+ selector << LDO_SEL_SHIFT);
++ case TPS65910_REG_VBB:
++ return tps65910_reg_update_bits(pmic->mfd, reg, BBCH_BBSEL_MASK,
++ selector << BBCH_BBSEL_SHIFT);
+ }
+
+ return -EINVAL;
+@@ -771,7 +794,7 @@ static struct regulator_ops tps65910_ops = {
+ .get_voltage_sel = tps65910_get_voltage_sel,
+ .set_voltage_sel = tps65910_set_voltage_sel,
+ .list_voltage = regulator_list_voltage_table,
+- .map_voltage = regulator_map_voltage_ascend,
++ .map_voltage = regulator_map_voltage_iterate,
+ };
+
+ static struct regulator_ops tps65911_ops = {
+@@ -944,6 +967,7 @@ static struct of_regulator_match tps65910_matches[] = {
+ { .name = "vaux2", .driver_data = (void *) &tps65910_regs[10] },
+ { .name = "vaux33", .driver_data = (void *) &tps65910_regs[11] },
+ { .name = "vmmc", .driver_data = (void *) &tps65910_regs[12] },
++ { .name = "vbb", .driver_data = (void *) &tps65910_regs[13] },
+ };
+
+ static struct of_regulator_match tps65911_matches[] = {
+@@ -1167,7 +1191,11 @@ static int tps65910_probe(struct platform_device *pdev)
+ pmic->desc[i].type = REGULATOR_VOLTAGE;
+ pmic->desc[i].owner = THIS_MODULE;
+ pmic->desc[i].enable_reg = pmic->get_ctrl_reg(i);
+- pmic->desc[i].enable_mask = TPS65910_SUPPLY_STATE_ENABLED;
++ if (tps65910_chip_id(tps65910) == TPS65910 &&
++ i == TPS65910_REG_VBB)
++ pmic->desc[i].enable_mask = BBCH_BBCHEN_MASK;
++ else
++ pmic->desc[i].enable_mask = TPS65910_SUPPLY_STATE_ENABLED;
+
+ config.dev = tps65910->dev;
+ config.init_data = reg_data;
+diff --git a/include/linux/mfd/tps65910.h b/include/linux/mfd/tps65910.h
+index 20e433e..1adeee1 100644
+--- a/include/linux/mfd/tps65910.h
++++ b/include/linux/mfd/tps65910.h
+@@ -833,6 +833,7 @@
+ #define TPS65910_REG_VAUX2 10
+ #define TPS65910_REG_VAUX33 11
+ #define TPS65910_REG_VMMC 12
++#define TPS65910_REG_VBB 13
+
+ #define TPS65911_REG_VDDCTRL 4
+ #define TPS65911_REG_LDO1 5
+@@ -845,7 +846,7 @@
+ #define TPS65911_REG_LDO8 12
+
+ /* Max number of TPS65910/11 regulators */
+-#define TPS65910_NUM_REGS 13
++#define TPS65910_NUM_REGS 14
+
+ /* External sleep controls through EN1/EN2/EN3/SLEEP inputs */
+ #define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN1 0x1
diff --git a/patches/linux-3.12/0052-ARM-dts-regulator-tps65910-node.patch b/patches/linux-3.12/0052-ARM-dts-regulator-tps65910-node.patch
new file mode 100644
index 0000000..c8c990e
--- /dev/null
+++ b/patches/linux-3.12/0052-ARM-dts-regulator-tps65910-node.patch
@@ -0,0 +1,24 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Thu, 17 Oct 2013 16:07:26 +0200
+Subject: [PATCH] ARM: dts: regulator tps65910 node
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ arch/arm/boot/dts/tps65910.dtsi | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/arch/arm/boot/dts/tps65910.dtsi b/arch/arm/boot/dts/tps65910.dtsi
+index 92693a8..b0ac665 100644
+--- a/arch/arm/boot/dts/tps65910.dtsi
++++ b/arch/arm/boot/dts/tps65910.dtsi
+@@ -82,5 +82,10 @@
+ reg = <12>;
+ regulator-compatible = "vmmc";
+ };
++
++ vbb_reg: regulator@13 {
++ reg = <13>;
++ regulator-compatible = "vbb";
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0101-usb-musb-gadget-stay-IDLE-without-gadget-driver.patch b/patches/linux-3.12/0101-usb-musb-gadget-stay-IDLE-without-gadget-driver.patch
new file mode 100644
index 0000000..6c36895
--- /dev/null
+++ b/patches/linux-3.12/0101-usb-musb-gadget-stay-IDLE-without-gadget-driver.patch
@@ -0,0 +1,56 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Mon, 14 Oct 2013 11:21:03 +0200
+Subject: [PATCH] usb: musb: gadget, stay IDLE without gadget driver
+
+If there is no gadget driver musb should stay in B_IDLE state.
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/usb/musb/musb_core.c | 3 ---
+ drivers/usb/musb/musb_gadget.c | 14 ++++++++++++--
+ 2 files changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
+index cd70cc8..0c59481 100644
+--- a/drivers/usb/musb/musb_core.c
++++ b/drivers/usb/musb/musb_core.c
+@@ -831,12 +831,9 @@ b_host:
+ case OTG_STATE_B_WAIT_ACON:
+ dev_dbg(musb->controller, "HNP: RESET (%s), to b_peripheral\n",
+ usb_otg_state_string(musb->xceiv->state));
+- musb->xceiv->state = OTG_STATE_B_PERIPHERAL;
+ musb_g_reset(musb);
+ break;
+ case OTG_STATE_B_IDLE:
+- musb->xceiv->state = OTG_STATE_B_PERIPHERAL;
+- /* FALLTHROUGH */
+ case OTG_STATE_B_PERIPHERAL:
+ musb_g_reset(musb);
+ break;
+diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c
+index 3671898..4d3da1a 100644
+--- a/drivers/usb/musb/musb_gadget.c
++++ b/drivers/usb/musb/musb_gadget.c
+@@ -2116,10 +2116,20 @@ __acquires(musb->lock)
+ * or else after HNP, as A-Device
+ */
+ if (devctl & MUSB_DEVCTL_BDEVICE) {
+- musb->xceiv->state = OTG_STATE_B_PERIPHERAL;
++ if (!musb->gadget_driver) {
++ musb->is_active = 0;
++ musb->xceiv->state = OTG_STATE_B_IDLE;
++ } else {
++ musb->xceiv->state = OTG_STATE_B_PERIPHERAL;
++ }
+ musb->g.is_a_peripheral = 0;
+ } else {
+- musb->xceiv->state = OTG_STATE_A_PERIPHERAL;
++ if (!musb->gadget_driver) {
++ musb->is_active = 0;
++ musb->xceiv->state = OTG_STATE_A_IDLE;
++ } else {
++ musb->xceiv->state = OTG_STATE_A_PERIPHERAL;
++ }
+ musb->g.is_a_peripheral = 1;
+ }
+
diff --git a/patches/linux-3.12/0102-usb-musb-Bugfix-of_node-assignment.patch b/patches/linux-3.12/0102-usb-musb-Bugfix-of_node-assignment.patch
new file mode 100644
index 0000000..4450ba3
--- /dev/null
+++ b/patches/linux-3.12/0102-usb-musb-Bugfix-of_node-assignment.patch
@@ -0,0 +1,56 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Fri, 13 Sep 2013 12:19:16 +0200
+Subject: [PATCH] usb: musb: Bugfix of_node assignment
+
+It is not safe to assign the of_node to a device without driver. The
+device is matched against a list of drivers and the of_node could lead
+to a DT match with the parent driver.
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/usb/musb/musb_core.c | 12 +++++++++++-
+ drivers/usb/musb/musb_dsps.c | 1 -
+ 2 files changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
+index 0c59481..fbd4479 100644
+--- a/drivers/usb/musb/musb_core.c
++++ b/drivers/usb/musb/musb_core.c
+@@ -2004,6 +2004,7 @@ static int musb_probe(struct platform_device *pdev)
+ int irq = platform_get_irq_byname(pdev, "mc");
+ struct resource *iomem;
+ void __iomem *base;
++ int ret;
+
+ iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+ if (!iomem || irq <= 0)
+@@ -2013,7 +2014,16 @@ static int musb_probe(struct platform_device *pdev)
+ if (IS_ERR(base))
+ return PTR_ERR(base);
+
+- return musb_init_controller(dev, irq, base);
++ if (dev->parent)
++ dev->of_node = dev->parent->of_node;
++
++ ret = musb_init_controller(dev, irq, base);
++ if (ret) {
++ dev->of_node = NULL;
++ return ret;
++ }
++
++ return 0;
+ }
+
+ static int musb_remove(struct platform_device *pdev)
+diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
+index bd4138d..189e52c 100644
+--- a/drivers/usb/musb/musb_dsps.c
++++ b/drivers/usb/musb/musb_dsps.c
+@@ -483,7 +483,6 @@ static int dsps_create_musb_pdev(struct dsps_glue *glue,
+ musb->dev.parent = dev;
+ musb->dev.dma_mask = &musb_dmamask;
+ musb->dev.coherent_dma_mask = musb_dmamask;
+- musb->dev.of_node = of_node_get(dn);
+
+ glue->musb = musb;
+
diff --git a/patches/linux-3.12/0103-usb-musb-dsps-debugfs-files.patch b/patches/linux-3.12/0103-usb-musb-dsps-debugfs-files.patch
new file mode 100644
index 0000000..fe547c5
--- /dev/null
+++ b/patches/linux-3.12/0103-usb-musb-dsps-debugfs-files.patch
@@ -0,0 +1,112 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Wed, 11 Sep 2013 16:43:57 +0200
+Subject: [PATCH] usb: musb: dsps, debugfs files
+
+debugfs files to show the contents of important dsps registers.
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/usb/musb/musb_dsps.c | 55 ++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 55 insertions(+)
+
+diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
+index 189e52c..0680f0e 100644
+--- a/drivers/usb/musb/musb_dsps.c
++++ b/drivers/usb/musb/musb_dsps.c
+@@ -46,6 +46,8 @@
+ #include <linux/of_irq.h>
+ #include <linux/usb/of.h>
+
++#include <linux/debugfs.h>
++
+ #include "musb_core.h"
+
+ static const struct of_device_id musb_dsps_of_match[];
+@@ -119,6 +121,27 @@ struct dsps_glue {
+ const struct dsps_musb_wrapper *wrp; /* wrapper register offsets */
+ struct timer_list timer; /* otg_workaround timer */
+ unsigned long last_timer; /* last timer data for each instance */
++
++ struct debugfs_regset32 regset;
++ struct dentry *dbgfs_root;
++};
++
++static const struct debugfs_reg32 dsps_musb_regs[] = {
++ { "revision", 0x00 },
++ { "control", 0x14 },
++ { "status", 0x18 },
++ { "eoi", 0x24 },
++ { "intr0_stat", 0x30 },
++ { "intr1_stat", 0x34 },
++ { "intr0_set", 0x38 },
++ { "intr1_set", 0x3c },
++ { "txmode", 0x70 },
++ { "rxmode", 0x74 },
++ { "autoreq", 0xd0 },
++ { "srpfixtime", 0xd4 },
++ { "tdown", 0xd8 },
++ { "phy_utmi", 0xe0 },
++ { "mode", 0xe8 },
+ };
+
+ /**
+@@ -348,6 +371,30 @@ out:
+ return ret;
+ }
+
++static int dsps_musb_dbg_init(struct musb *musb, struct dsps_glue *glue)
++{
++ struct dentry *root;
++ struct dentry *file;
++ char buf[128];
++
++ sprintf(buf, "%s.dsps", dev_name(musb->controller));
++ root = debugfs_create_dir(buf, NULL);
++ if (!root)
++ return -ENOMEM;
++ glue->dbgfs_root = root;
++
++ glue->regset.regs = dsps_musb_regs;
++ glue->regset.nregs = ARRAY_SIZE(dsps_musb_regs);
++ glue->regset.base = musb->ctrl_base;
++
++ file = debugfs_create_regset32("regdump", S_IRUGO, root, &glue->regset);
++ if (!file) {
++ debugfs_remove_recursive(root);
++ return -ENOMEM;
++ }
++ return 0;
++}
++
+ static int dsps_musb_init(struct musb *musb)
+ {
+ struct device *dev = musb->controller;
+@@ -357,6 +404,7 @@ static int dsps_musb_init(struct musb *musb)
+ void __iomem *reg_base;
+ struct resource *r;
+ u32 rev, val;
++ int ret;
+
+ r = platform_get_resource_byname(parent, IORESOURCE_MEM, "control");
+ if (!r)
+@@ -390,6 +438,10 @@ static int dsps_musb_init(struct musb *musb)
+ val &= ~(1 << wrp->otg_disable);
+ dsps_writel(musb->ctrl_base, wrp->phy_utmi, val);
+
++ ret = dsps_musb_dbg_init(musb, glue);
++ if (ret)
++ return ret;
++
+ return 0;
+ }
+
+@@ -587,6 +639,9 @@ static int dsps_remove(struct platform_device *pdev)
+ pm_runtime_put(&pdev->dev);
+ pm_runtime_disable(&pdev->dev);
+ kfree(glue);
++
++ debugfs_remove_recursive(glue->dbgfs_root);
++
+ return 0;
+ }
+
diff --git a/patches/linux-3.12/0104-usb-musb-dsps-use-devm_kzalloc.patch b/patches/linux-3.12/0104-usb-musb-dsps-use-devm_kzalloc.patch
new file mode 100644
index 0000000..d8f3d56
--- /dev/null
+++ b/patches/linux-3.12/0104-usb-musb-dsps-use-devm_kzalloc.patch
@@ -0,0 +1,38 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Wed, 16 Oct 2013 11:47:14 +0200
+Subject: [PATCH] usb: musb: dsps, use devm_kzalloc
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/usb/musb/musb_dsps.c | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
+index 0680f0e..aae017c 100644
+--- a/drivers/usb/musb/musb_dsps.c
++++ b/drivers/usb/musb/musb_dsps.c
+@@ -597,7 +597,7 @@ static int dsps_probe(struct platform_device *pdev)
+ wrp = match->data;
+
+ /* allocate glue */
+- glue = kzalloc(sizeof(*glue), GFP_KERNEL);
++ glue = devm_kzalloc(&pdev->dev, sizeof(*glue), GFP_KERNEL);
+ if (!glue) {
+ dev_err(&pdev->dev, "unable to allocate glue memory\n");
+ return -ENOMEM;
+@@ -625,7 +625,6 @@ err3:
+ pm_runtime_put(&pdev->dev);
+ err2:
+ pm_runtime_disable(&pdev->dev);
+- kfree(glue);
+ return ret;
+ }
+
+@@ -638,7 +637,6 @@ static int dsps_remove(struct platform_device *pdev)
+ /* disable usbss clocks */
+ pm_runtime_put(&pdev->dev);
+ pm_runtime_disable(&pdev->dev);
+- kfree(glue);
+
+ debugfs_remove_recursive(glue->dbgfs_root);
+
diff --git a/patches/linux-3.12/0105-usb-musb-dsps-OTG-detection.patch b/patches/linux-3.12/0105-usb-musb-dsps-OTG-detection.patch
new file mode 100644
index 0000000..42991ae
--- /dev/null
+++ b/patches/linux-3.12/0105-usb-musb-dsps-OTG-detection.patch
@@ -0,0 +1,160 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Wed, 11 Sep 2013 16:49:06 +0200
+Subject: [PATCH] usb: musb: dsps, OTG detection
+
+The USB Controller does not support ID pin change interrupts. So we have
+to use a polling function to detect changes of A/B device state
+(otg_timer). This poll function has to check in several states if a
+other device type might be connected to the USB port. This check is
+triggered by manually starting/stopping a USB Session.
+
+So in A mode, we cancel the currently running session which also
+disables the possibility to detect new devices via interrupt. In B mode,
+we start a session to check for ID-Pin and possibly connected devices.
+
+Whenever a real USB session ends, we have to trigger the otg_timer poll
+function again.
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ drivers/usb/musb/musb_dsps.c | 82 ++++++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 76 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
+index aae017c..b415c37 100644
+--- a/drivers/usb/musb/musb_dsps.c
++++ b/drivers/usb/musb/musb_dsps.c
+@@ -144,6 +144,43 @@ static const struct debugfs_reg32 dsps_musb_regs[] = {
+ { "mode", 0xe8 },
+ };
+
++/*
++ * Compare driver and hardware mode and update driver state if necessary.
++ * Not all hardware changes actually reach the driver through interrupts.
++ */
++static void dsps_update_mode(struct musb *musb)
++{
++ u8 devctl;
++
++ devctl = dsps_readb(musb->mregs, MUSB_DEVCTL);
++
++ switch (musb->xceiv->state) {
++ case OTG_STATE_A_IDLE:
++ if (devctl & MUSB_DEVCTL_BDEVICE) {
++ dev_dbg(musb->controller, "detected controller state B, software state A\n");
++ musb->xceiv->state = OTG_STATE_B_IDLE;
++ }
++ break;
++ case OTG_STATE_B_IDLE:
++ if (!(devctl & MUSB_DEVCTL_BDEVICE)) {
++ dev_dbg(musb->controller, "detected controller state A, software state B\n");
++ musb->xceiv->state = OTG_STATE_A_IDLE;
++ }
++ break;
++ default:
++ if (!(devctl & MUSB_DEVCTL_SESSION)) {
++ dev_dbg(musb->controller, "detected controller out of session (%x), software state %s\n",
++ devctl,
++ usb_otg_state_string(musb->xceiv->state));
++ if (devctl & MUSB_DEVCTL_BDEVICE)
++ musb->xceiv->state = OTG_STATE_B_IDLE;
++ else
++ musb->xceiv->state = OTG_STATE_A_IDLE;
++ }
++ break;
++ }
++}
++
+ /**
+ * dsps_musb_enable - enable interrupts
+ */
+@@ -195,6 +232,8 @@ static void otg_timer(unsigned long _musb)
+ u8 devctl;
+ unsigned long flags;
+
++ dsps_update_mode(musb);
++
+ /*
+ * We poll because DSPS IP's won't expose several OTG-critical
+ * status change events (from the transceiver) otherwise.
+@@ -205,6 +244,16 @@ static void otg_timer(unsigned long _musb)
+
+ spin_lock_irqsave(&musb->lock, flags);
+ switch (musb->xceiv->state) {
++ case OTG_STATE_A_IDLE:
++ case OTG_STATE_A_WAIT_VRISE:
++ /*
++ * Poll the devctl register to know when the controller switches
++ * back to B state.
++ */
++ musb_writeb(mregs, MUSB_DEVCTL,
++ devctl & (~MUSB_DEVCTL_SESSION));
++ mod_timer(&glue->timer, jiffies + wrp->poll_seconds * HZ);
++ break;
+ case OTG_STATE_A_WAIT_BCON:
+ devctl &= ~MUSB_DEVCTL_SESSION;
+ dsps_writeb(musb->mregs, MUSB_DEVCTL, devctl);
+@@ -217,6 +266,8 @@ static void otg_timer(unsigned long _musb)
+ musb->xceiv->state = OTG_STATE_A_IDLE;
+ MUSB_HST_MODE(musb);
+ }
++ mod_timer(&glue->timer,
++ jiffies + wrp->poll_seconds * HZ);
+ break;
+ case OTG_STATE_A_WAIT_VFALL:
+ musb->xceiv->state = OTG_STATE_A_WAIT_VRISE;
+@@ -224,12 +275,24 @@ static void otg_timer(unsigned long _musb)
+ MUSB_INTR_VBUSERROR << wrp->usb_shift);
+ break;
+ case OTG_STATE_B_IDLE:
++ /*
++ * There's no ID-changed IRQ, so we have no good way to tell
++ * when to switch to the A-Default state machine (by setting
++ * the DEVCTL.Session bit).
++ *
++ * Workaround: whenever we're in B_IDLE, try setting the
++ * session flag every few seconds. If it works, ID was
++ * grounded and we're now in the A-Default state machine.
++ *
++ * NOTE: setting the session flag is _supposed_ to trigger
++ * SRP but clearly it doesn't.
++ */
++ musb_writeb(mregs, MUSB_DEVCTL, devctl | MUSB_DEVCTL_SESSION);
+ devctl = dsps_readb(mregs, MUSB_DEVCTL);
+- if (devctl & MUSB_DEVCTL_BDEVICE)
+- mod_timer(&glue->timer,
+- jiffies + wrp->poll_seconds * HZ);
+- else
++ if (!(devctl & MUSB_DEVCTL_BDEVICE))
+ musb->xceiv->state = OTG_STATE_A_IDLE;
++ mod_timer(&glue->timer,
++ jiffies + wrp->poll_seconds * HZ);
+ break;
+ default:
+ break;
+@@ -342,7 +405,6 @@ static irqreturn_t dsps_interrupt(int irq, void *hci)
+ MUSB_HST_MODE(musb);
+ musb->xceiv->otg->default_a = 1;
+ musb->xceiv->state = OTG_STATE_A_WAIT_VRISE;
+- del_timer(&glue->timer);
+ } else {
+ musb->is_active = 0;
+ MUSB_DEV_MODE(musb);
+@@ -363,8 +425,16 @@ static irqreturn_t dsps_interrupt(int irq, void *hci)
+ ret |= musb_interrupt(musb);
+
+ /* Poll for ID change */
+- if (musb->xceiv->state == OTG_STATE_B_IDLE)
++ switch (musb->xceiv->state) {
++ case OTG_STATE_A_IDLE:
++ case OTG_STATE_A_WAIT_BCON:
++ case OTG_STATE_A_WAIT_VRISE:
++ case OTG_STATE_B_IDLE:
+ mod_timer(&glue->timer, jiffies + wrp->poll_seconds * HZ);
++ break;
++ default:
++ break;
++ }
+ out:
+ spin_unlock_irqrestore(&musb->lock, flags);
+
diff --git a/patches/linux-3.12/0106-ARM-dts-am33xx-change-usb-ctrl-module-label.patch b/patches/linux-3.12/0106-ARM-dts-am33xx-change-usb-ctrl-module-label.patch
new file mode 100644
index 0000000..bbde15b
--- /dev/null
+++ b/patches/linux-3.12/0106-ARM-dts-am33xx-change-usb-ctrl-module-label.patch
@@ -0,0 +1,43 @@
+From: Markus Pargmann <mpa@pengutronix.de>
+Date: Thu, 12 Sep 2013 14:31:52 +0200
+Subject: [PATCH] ARM: dts: am33xx, change usb ctrl module label
+
+Control module is not usb specific. This patch changes the label to
+usb_ctrl_mod.
+
+Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index f9c5da9..14510ee 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -346,7 +346,7 @@
+ ti,hwmods = "usb_otg_hs";
+ status = "disabled";
+
+- ctrl_mod: control@44e10000 {
++ usb_ctrl_mod: control@44e10000 {
+ compatible = "ti,am335x-usb-ctrl-module";
+ reg = <0x44e10620 0x10
+ 0x44e10648 0x4>;
+@@ -359,7 +359,7 @@
+ reg = <0x47401300 0x100>;
+ reg-names = "phy";
+ status = "disabled";
+- ti,ctrl_mod = <&ctrl_mod>;
++ ti,ctrl_mod = <&usb_ctrl_mod>;
+ };
+
+ usb0: usb@47401000 {
+@@ -407,7 +407,7 @@
+ reg = <0x47401b00 0x100>;
+ reg-names = "phy";
+ status = "disabled";
+- ti,ctrl_mod = <&ctrl_mod>;
++ ti,ctrl_mod = <&usb_ctrl_mod>;
+ };
+
+ usb1: usb@47401800 {
diff --git a/patches/linux-3.12/0151-omap-hsmmc-Correct-usage-of-of_find_node_by_name.patch b/patches/linux-3.12/0151-omap-hsmmc-Correct-usage-of-of_find_node_by_name.patch
new file mode 100644
index 0000000..922a0d1
--- /dev/null
+++ b/patches/linux-3.12/0151-omap-hsmmc-Correct-usage-of-of_find_node_by_name.patch
@@ -0,0 +1,30 @@
+From: Pantelis Antoniou <panto@antoniou-consulting.com>
+Date: Fri, 26 Oct 2012 15:48:00 +0300
+Subject: [PATCH] omap-hsmmc: Correct usage of of_find_node_by_name
+
+of_find_node_by_name expect to have the parent node reference taken.
+---
+ drivers/mmc/host/omap_hsmmc.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
+index 6ac63df..f5b660c 100644
+--- a/drivers/mmc/host/omap_hsmmc.c
++++ b/drivers/mmc/host/omap_hsmmc.c
+@@ -1893,6 +1893,16 @@ static int omap_hsmmc_probe(struct platform_device *pdev)
+ * as we want. */
+ mmc->max_segs = 1024;
+
++ /* Eventually we should get our max_segs limitation for EDMA by
++ * querying the dmaengine API */
++ if (pdev->dev.of_node) {
++ struct device_node *parent = of_node_get(pdev->dev.of_node->parent);
++ struct device_node *node;
++ node = of_find_node_by_name(parent, "edma");
++ if (node)
++ mmc->max_segs = 16;
++ }
++
+ mmc->max_blk_size = 512; /* Block Length at max can be 1024 */
+ mmc->max_blk_count = 0xFFFF; /* No. of Blocks is 16 bits */
+ mmc->max_req_size = mmc->max_blk_size * mmc->max_blk_count;
diff --git a/patches/linux-3.12/0201-ARM-dts-N900-Add-device-tree.patch b/patches/linux-3.12/0201-ARM-dts-N900-Add-device-tree.patch
new file mode 100644
index 0000000..dfaac92
--- /dev/null
+++ b/patches/linux-3.12/0201-ARM-dts-N900-Add-device-tree.patch
@@ -0,0 +1,126 @@
+From: Pavel Machek <pavel@ucw.cz>
+Date: Tue, 13 Aug 2013 15:36:36 +0200
+Subject: [PATCH] ARM: dts: N900: Add device tree
+
+This adds device tree with necessary support to boot with functional
+video (on both emulator and real N900 device).
+
+Signed-off-by: Pavel Machek <pavel@ucw.cz>
+Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/Makefile | 1 +
+ arch/arm/boot/dts/omap3-n900.dts | 92 ++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 93 insertions(+)
+ create mode 100644 arch/arm/boot/dts/omap3-n900.dts
+
+diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
+index 802720e..a7cae53 100644
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -172,6 +172,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
+ omap3-devkit8000.dtb \
+ omap3-beagle-xm.dtb \
+ omap3-evm.dtb \
++ omap3-n900.dtb \
+ omap3-tobi.dtb \
+ omap3-igep0020.dtb \
+ omap3-igep0030.dtb \
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+new file mode 100644
+index 0000000..d64fa04
+--- /dev/null
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -0,0 +1,92 @@
++/*
++ * Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
++ * Copyright 2013 Aaro Koskinen <aaro.koskinen@iki.fi>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 (or later) as
++ * published by the Free Software Foundation.
++ */
++
++/dts-v1/;
++
++#include "omap34xx.dtsi"
++
++/ {
++ model = "Nokia N900";
++ compatible = "nokia,omap3-n900", "ti,omap3";
++
++ cpus {
++ cpu@0 {
++ cpu0-supply = <&vcc>;
++ };
++ };
++
++ memory {
++ device_type = "memory";
++ reg = <0x80000000 0x10000000>; /* 256 MB */
++ };
++
++};
++
++&i2c1 {
++ clock-frequency = <2200000>;
++
++ twl: twl@48 {
++ reg = <0x48>;
++ interrupts = <7>; /* SYS_NIRQ cascaded to intc */
++ interrupt-parent = <&intc>;
++ };
++};
++
++#include "twl4030.dtsi"
++
++&twl_gpio {
++ ti,pullups = <0x0>;
++ ti,pulldowns = <0x03ff3f>; /* BIT(0..5) | BIT(8..17) */
++};
++
++&i2c2 {
++ clock-frequency = <400000>;
++};
++
++&i2c3 {
++ clock-frequency = <100000>;
++};
++
++&mmc1 {
++ status = "disabled";
++};
++
++&mmc2 {
++ status = "disabled";
++};
++
++&mmc3 {
++ status = "disabled";
++};
++
++&mcspi1 {
++ /*
++ * For some reason, touchscreen is necessary for screen to work at
++ * all on real hw. It works well without it on emulator.
++ *
++ * Also... order in the device tree actually matters here.
++ */
++ tsc2005@0 {
++ compatible = "tsc2005";
++ spi-max-frequency = <6000000>;
++ reg = <0>;
++ };
++ mipid@2 {
++ compatible = "acx565akm";
++ spi-max-frequency = <6000000>;
++ reg = <2>;
++ };
++};
++
++&usb_otg_hs {
++ interface-type = <0>;
++ usb-phy = <&usb2_phy>;
++ mode = <2>;
++ power = <50>;
++};
diff --git a/patches/linux-3.12/0202-ARM-dts-omap3-igep-add-pinmux-node-for-GPIO-LED-conf.patch b/patches/linux-3.12/0202-ARM-dts-omap3-igep-add-pinmux-node-for-GPIO-LED-conf.patch
new file mode 100644
index 0000000..2baaee9
--- /dev/null
+++ b/patches/linux-3.12/0202-ARM-dts-omap3-igep-add-pinmux-node-for-GPIO-LED-conf.patch
@@ -0,0 +1,36 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Thu, 20 Jun 2013 16:42:30 +0200
+Subject: [PATCH] ARM: dts: omap3-igep: add pinmux node for GPIO LED
+ configuration
+
+IGEP boards have a number of LED connected to OMAP or TWL GPIO
+lines. The actual wiring is different on each board so each board
+DT has need to configure the mux correctly.
+
+Even though it works with the current DT, the kernel complains with:
+
+[2.305023] leds-gpio leds.18: pins are not configured from the driver
+
+Add an empty pinmux_leds_pins pinctrl child node so boards can
+override with the correct mux configuration and not depend on
+default values for the GPIO LEDs to work.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep.dtsi | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-igep.dtsi b/arch/arm/boot/dts/omap3-igep.dtsi
+index 2326d11..0f92224 100644
+--- a/arch/arm/boot/dts/omap3-igep.dtsi
++++ b/arch/arm/boot/dts/omap3-igep.dtsi
+@@ -77,6 +77,8 @@
+ 0x1a2 (PIN_INPUT | MUX_MODE4) /* mcspi1_cs2.gpio_176 */
+ >;
+ };
++
++ leds_pins: pinmux_leds_pins { };
+ };
+
+ &i2c1 {
diff --git a/patches/linux-3.12/0203-ARM-dts-omap3-igep0020-add-mux-conf-for-GPIO-LEDs.patch b/patches/linux-3.12/0203-ARM-dts-omap3-igep0020-add-mux-conf-for-GPIO-LEDs.patch
new file mode 100644
index 0000000..dfc6df0
--- /dev/null
+++ b/patches/linux-3.12/0203-ARM-dts-omap3-igep0020-add-mux-conf-for-GPIO-LEDs.patch
@@ -0,0 +1,44 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Thu, 20 Jun 2013 16:42:31 +0200
+Subject: [PATCH] ARM: dts: omap3-igep0020: add mux conf for GPIO LEDs
+
+The IGEPv2 has a number of GPIO LED connected to OMAP
+pins. Configure these pins as output GPIO.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Tested-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep0020.dts | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-igep0020.dts b/arch/arm/boot/dts/omap3-igep0020.dts
+index e8c4828..51c084e 100644
+--- a/arch/arm/boot/dts/omap3-igep0020.dts
++++ b/arch/arm/boot/dts/omap3-igep0020.dts
+@@ -16,7 +16,10 @@
+ compatible = "isee,omap3-igep0020", "ti,omap3";
+
+ leds {
++ pinctrl-names = "default";
++ pinctrl-0 = <&leds_pins>;
+ compatible = "gpio-leds";
++
+ boot {
+ label = "omap3:green:boot";
+ gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>;
+@@ -54,6 +57,14 @@
+ };
+ };
+
++&leds_pins {
++ pinctrl-single,pins = <
++ 0x5c4 (PIN_OUTPUT | MUX_MODE4) /* etk_d12.gpio_26 */
++ 0x5c6 (PIN_OUTPUT | MUX_MODE4) /* etk_d13.gpio_27 */
++ 0x5c8 (PIN_OUTPUT | MUX_MODE4) /* etk_d14.gpio_28 */
++ >;
++};
++
+ &i2c3 {
+ clock-frequency = <100000>;
+
diff --git a/patches/linux-3.12/0204-ARM-dts-omap3-igep0030-add-mux-conf-for-GPIO-LED.patch b/patches/linux-3.12/0204-ARM-dts-omap3-igep0030-add-mux-conf-for-GPIO-LED.patch
new file mode 100644
index 0000000..946e3d8
--- /dev/null
+++ b/patches/linux-3.12/0204-ARM-dts-omap3-igep0030-add-mux-conf-for-GPIO-LED.patch
@@ -0,0 +1,42 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Thu, 20 Jun 2013 16:42:32 +0200
+Subject: [PATCH] ARM: dts: omap3-igep0030: add mux conf for GPIO LED
+
+The IGEP COM MOdule has a GPIO LED connected to OMAP
+pins. Configure this pin as output GPIO.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Tested-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep0030.dts | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-igep0030.dts b/arch/arm/boot/dts/omap3-igep0030.dts
+index 644d053..eee3c63 100644
+--- a/arch/arm/boot/dts/omap3-igep0030.dts
++++ b/arch/arm/boot/dts/omap3-igep0030.dts
+@@ -16,7 +16,10 @@
+ compatible = "isee,omap3-igep0030", "ti,omap3";
+
+ leds {
++ pinctrl-names = "default";
++ pinctrl-0 = <&leds_pins>;
+ compatible = "gpio-leds";
++
+ boot {
+ label = "omap3:green:boot";
+ gpios = <&twl_gpio 13 GPIO_ACTIVE_LOW>;
+@@ -43,6 +46,12 @@
+ };
+ };
+
++&leds_pins {
++ pinctrl-single,pins = <
++ 0x5b0 (PIN_OUTPUT | MUX_MODE4) /* etk_d2.gpio_16 */
++ >;
++};
++
+ &gpmc {
+ ranges = <0 0 0x00000000 0x20000000>;
+
diff --git a/patches/linux-3.12/0205-ARM-dts-AM33XX-Add-PMU-support.patch b/patches/linux-3.12/0205-ARM-dts-AM33XX-Add-PMU-support.patch
new file mode 100644
index 0000000..886c2ba
--- /dev/null
+++ b/patches/linux-3.12/0205-ARM-dts-AM33XX-Add-PMU-support.patch
@@ -0,0 +1,31 @@
+From: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+Date: Sat, 3 Aug 2013 20:00:54 +0200
+Subject: [PATCH] ARM: dts: AM33XX: Add PMU support
+
+ARM Performance Monitor Units are available on the am33xx,
+add the support in the dtsi.
+
+Tested with perf and oprofile on a regular beaglebone.
+
+Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 14510ee..b820352 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -57,6 +57,11 @@
+ };
+ };
+
++ pmu {
++ compatible = "arm,cortex-a8-pmu";
++ interrupts = <3>;
++ };
++
+ /*
+ * The soc node represents the soc top level view. It is uses for IPs
+ * that are not memory mapped in the MPU view or for the MPU itself.
diff --git a/patches/linux-3.12/0206-ARM-dts-AM33xx-Correct-gpio-interrupt-cells-property.patch b/patches/linux-3.12/0206-ARM-dts-AM33xx-Correct-gpio-interrupt-cells-property.patch
new file mode 100644
index 0000000..0798c8e
--- /dev/null
+++ b/patches/linux-3.12/0206-ARM-dts-AM33xx-Correct-gpio-interrupt-cells-property.patch
@@ -0,0 +1,57 @@
+From: Lars Poeschel <poeschel@lemonage.de>
+Date: Wed, 7 Aug 2013 13:06:32 +0200
+Subject: [PATCH] ARM: dts: AM33xx: Correct gpio #interrupt-cells property
+
+Following commit ff5c9059 and therefore other omap platforms using
+the gpio-omap driver correct the #interrupt-cells property on am33xx
+too. The omap gpio binding documentaion also states that
+the #interrupt-cells property should be 2.
+
+Signed-off-by: Lars Poeschel <poeschel@lemonage.de>
+Reviewed-by: Javier Martinez Canillas <javier@dowhile0.org>
+Acked-by: Mark Rutland <mark.rutland@arm.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index b820352..2d571c8 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -111,7 +111,7 @@
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+- #interrupt-cells = <1>;
++ #interrupt-cells = <2>;
+ reg = <0x44e07000 0x1000>;
+ interrupts = <96>;
+ };
+@@ -122,7 +122,7 @@
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+- #interrupt-cells = <1>;
++ #interrupt-cells = <2>;
+ reg = <0x4804c000 0x1000>;
+ interrupts = <98>;
+ };
+@@ -133,7 +133,7 @@
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+- #interrupt-cells = <1>;
++ #interrupt-cells = <2>;
+ reg = <0x481ac000 0x1000>;
+ interrupts = <32>;
+ };
+@@ -144,7 +144,7 @@
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+- #interrupt-cells = <1>;
++ #interrupt-cells = <2>;
+ reg = <0x481ae000 0x1000>;
+ interrupts = <62>;
+ };
diff --git a/patches/linux-3.12/0207-ARM-dts-omap5-uevm-Split-SMPS10-in-two-nodes.patch b/patches/linux-3.12/0207-ARM-dts-omap5-uevm-Split-SMPS10-in-two-nodes.patch
new file mode 100644
index 0000000..b422e23
--- /dev/null
+++ b/patches/linux-3.12/0207-ARM-dts-omap5-uevm-Split-SMPS10-in-two-nodes.patch
@@ -0,0 +1,38 @@
+From: Kishon Vijay Abraham I <kishon@ti.com>
+Date: Mon, 12 Aug 2013 15:07:01 +0530
+Subject: [PATCH] ARM: dts: omap5-uevm: Split SMPS10 in two nodes
+
+SMPS10 has two outputs OUT1 and OUT2. Hence SMPS10 is modeled as
+two regulators. The DT node is split to reflect it.
+
+Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index 65d7b60..05b9b12 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -334,9 +334,18 @@
+ ti,smps-range = <0x80>;
+ };
+
+- smps10_reg: smps10 {
++ smps10_out2_reg: smps10_out2 {
+ /* VBUS_5V_OTG */
+- regulator-name = "smps10";
++ regulator-name = "smps10_out2";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ regulator-always-on;
++ regulator-boot-on;
++ };
++
++ smps10_out1_reg: smps10_out1 {
++ /* VBUS_5V_OTG */
++ regulator-name = "smps10_out1";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
diff --git a/patches/linux-3.12/0208-ARM-dts-Remove-0x-s-from-OMAP2420-H4-DTS-file.patch b/patches/linux-3.12/0208-ARM-dts-Remove-0x-s-from-OMAP2420-H4-DTS-file.patch
new file mode 100644
index 0000000..f81d5e0
--- /dev/null
+++ b/patches/linux-3.12/0208-ARM-dts-Remove-0x-s-from-OMAP2420-H4-DTS-file.patch
@@ -0,0 +1,34 @@
+From: Lee Jones <lee.jones@linaro.org>
+Date: Mon, 22 Jul 2013 11:52:31 +0100
+Subject: [PATCH] ARM: dts: Remove '0x's from OMAP2420 H4 DTS file
+
+Cc: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap2420-h4.dts | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap2420-h4.dts b/arch/arm/boot/dts/omap2420-h4.dts
+index 224c08f..34cdecb 100644
+--- a/arch/arm/boot/dts/omap2420-h4.dts
++++ b/arch/arm/boot/dts/omap2420-h4.dts
+@@ -50,15 +50,15 @@
+ label = "bootloader";
+ reg = <0 0x20000>;
+ };
+- partition@0x20000 {
++ partition@20000 {
+ label = "params";
+ reg = <0x20000 0x20000>;
+ };
+- partition@0x40000 {
++ partition@40000 {
+ label = "kernel";
+ reg = <0x40000 0x200000>;
+ };
+- partition@0x240000 {
++ partition@240000 {
+ label = "file-system";
+ reg = <0x240000 0x3dc0000>;
+ };
diff --git a/patches/linux-3.12/0209-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0020-DTS-file.patch b/patches/linux-3.12/0209-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0020-DTS-file.patch
new file mode 100644
index 0000000..5ed144d
--- /dev/null
+++ b/patches/linux-3.12/0209-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0020-DTS-file.patch
@@ -0,0 +1,39 @@
+From: Lee Jones <lee.jones@linaro.org>
+Date: Mon, 22 Jul 2013 11:52:32 +0100
+Subject: [PATCH] ARM: dts: Remove '0x's from OMAP3 IGEP0020 DTS file
+
+Cc: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep0020.dts | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap3-igep0020.dts b/arch/arm/boot/dts/omap3-igep0020.dts
+index 51c084e..eedf0d8 100644
+--- a/arch/arm/boot/dts/omap3-igep0020.dts
++++ b/arch/arm/boot/dts/omap3-igep0020.dts
+@@ -110,19 +110,19 @@
+ label = "SPL";
+ reg = <0 0x100000>;
+ };
+- partition@0x80000 {
++ partition@80000 {
+ label = "U-Boot";
+ reg = <0x100000 0x180000>;
+ };
+- partition@0x1c0000 {
++ partition@1c0000 {
+ label = "Environment";
+ reg = <0x280000 0x100000>;
+ };
+- partition@0x280000 {
++ partition@280000 {
+ label = "Kernel";
+ reg = <0x380000 0x300000>;
+ };
+- partition@0x780000 {
++ partition@780000 {
+ label = "Filesystem";
+ reg = <0x680000 0x1f980000>;
+ };
diff --git a/patches/linux-3.12/0210-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0030-DTS-file.patch b/patches/linux-3.12/0210-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0030-DTS-file.patch
new file mode 100644
index 0000000..c5655b3
--- /dev/null
+++ b/patches/linux-3.12/0210-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0030-DTS-file.patch
@@ -0,0 +1,39 @@
+From: Lee Jones <lee.jones@linaro.org>
+Date: Mon, 22 Jul 2013 11:52:33 +0100
+Subject: [PATCH] ARM: dts: Remove '0x's from OMAP3 IGEP0030 DTS file
+
+Cc: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep0030.dts | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap3-igep0030.dts b/arch/arm/boot/dts/omap3-igep0030.dts
+index eee3c63..525e6d9 100644
+--- a/arch/arm/boot/dts/omap3-igep0030.dts
++++ b/arch/arm/boot/dts/omap3-igep0030.dts
+@@ -83,19 +83,19 @@
+ label = "SPL";
+ reg = <0 0x100000>;
+ };
+- partition@0x80000 {
++ partition@80000 {
+ label = "U-Boot";
+ reg = <0x100000 0x180000>;
+ };
+- partition@0x1c0000 {
++ partition@1c0000 {
+ label = "Environment";
+ reg = <0x280000 0x100000>;
+ };
+- partition@0x280000 {
++ partition@280000 {
+ label = "Kernel";
+ reg = <0x380000 0x300000>;
+ };
+- partition@0x780000 {
++ partition@780000 {
+ label = "Filesystem";
+ reg = <0x680000 0x1f980000>;
+ };
diff --git a/patches/linux-3.12/0211-ARM-dts-Remove-0x-s-from-OMAP3-DTS-file.patch b/patches/linux-3.12/0211-ARM-dts-Remove-0x-s-from-OMAP3-DTS-file.patch
new file mode 100644
index 0000000..a27f7f9
--- /dev/null
+++ b/patches/linux-3.12/0211-ARM-dts-Remove-0x-s-from-OMAP3-DTS-file.patch
@@ -0,0 +1,24 @@
+From: Lee Jones <lee.jones@linaro.org>
+Date: Mon, 22 Jul 2013 11:52:34 +0100
+Subject: [PATCH] ARM: dts: Remove '0x's from OMAP3 DTS file
+
+Cc: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3.dtsi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap3.dtsi b/arch/arm/boot/dts/omap3.dtsi
+index b41bd57..b87d6d3 100644
+--- a/arch/arm/boot/dts/omap3.dtsi
++++ b/arch/arm/boot/dts/omap3.dtsi
+@@ -111,7 +111,7 @@
+ pinctrl-single,function-mask = <0xff1f>;
+ };
+
+- omap3_pmx_wkup: pinmux@0x48002a00 {
++ omap3_pmx_wkup: pinmux@48002a00 {
+ compatible = "ti,omap3-padconf", "pinctrl-single";
+ reg = <0x48002a00 0x5c>;
+ #address-cells = <1>;
diff --git a/patches/linux-3.12/0212-ARM-dts-Remove-0x-s-from-OMAP3430-SDP-DTS-file.patch b/patches/linux-3.12/0212-ARM-dts-Remove-0x-s-from-OMAP3430-SDP-DTS-file.patch
new file mode 100644
index 0000000..f94e301
--- /dev/null
+++ b/patches/linux-3.12/0212-ARM-dts-Remove-0x-s-from-OMAP3430-SDP-DTS-file.patch
@@ -0,0 +1,82 @@
+From: Lee Jones <lee.jones@linaro.org>
+Date: Mon, 22 Jul 2013 11:52:35 +0100
+Subject: [PATCH] ARM: dts: Remove '0x's from OMAP3430 SDP DTS file
+
+Cc: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3430-sdp.dts | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap3430-sdp.dts b/arch/arm/boot/dts/omap3430-sdp.dts
+index e2249bc..281914e 100644
+--- a/arch/arm/boot/dts/omap3430-sdp.dts
++++ b/arch/arm/boot/dts/omap3430-sdp.dts
+@@ -84,15 +84,15 @@
+ label = "bootloader-nor";
+ reg = <0 0x40000>;
+ };
+- partition@0x40000 {
++ partition@40000 {
+ label = "params-nor";
+ reg = <0x40000 0x40000>;
+ };
+- partition@0x80000 {
++ partition@80000 {
+ label = "kernel-nor";
+ reg = <0x80000 0x200000>;
+ };
+- partition@0x280000 {
++ partition@280000 {
+ label = "filesystem-nor";
+ reg = <0x240000 0x7d80000>;
+ };
+@@ -125,19 +125,19 @@
+ label = "xloader-nand";
+ reg = <0 0x80000>;
+ };
+- partition@0x80000 {
++ partition@80000 {
+ label = "bootloader-nand";
+ reg = <0x80000 0x140000>;
+ };
+- partition@0x1c0000 {
++ partition@1c0000 {
+ label = "params-nand";
+ reg = <0x1c0000 0xc0000>;
+ };
+- partition@0x280000 {
++ partition@280000 {
+ label = "kernel-nand";
+ reg = <0x280000 0x500000>;
+ };
+- partition@0x780000 {
++ partition@780000 {
+ label = "filesystem-nand";
+ reg = <0x780000 0x7880000>;
+ };
+@@ -170,19 +170,19 @@
+ label = "xloader-onenand";
+ reg = <0 0x80000>;
+ };
+- partition@0x80000 {
++ partition@80000 {
+ label = "bootloader-onenand";
+ reg = <0x80000 0x40000>;
+ };
+- partition@0xc0000 {
++ partition@c0000 {
+ label = "params-onenand";
+ reg = <0xc0000 0x20000>;
+ };
+- partition@0xe0000 {
++ partition@e0000 {
+ label = "kernel-onenand";
+ reg = <0xe0000 0x200000>;
+ };
+- partition@0x2e0000 {
++ partition@2e0000 {
+ label = "filesystem-onenand";
+ reg = <0x2e0000 0xfd20000>;
+ };
diff --git a/patches/linux-3.12/0213-ARM-dts-Remove-0x-s-from-OMAP4-DTS-file.patch b/patches/linux-3.12/0213-ARM-dts-Remove-0x-s-from-OMAP4-DTS-file.patch
new file mode 100644
index 0000000..9b16910
--- /dev/null
+++ b/patches/linux-3.12/0213-ARM-dts-Remove-0x-s-from-OMAP4-DTS-file.patch
@@ -0,0 +1,24 @@
+From: Lee Jones <lee.jones@linaro.org>
+Date: Mon, 22 Jul 2013 11:52:36 +0100
+Subject: [PATCH] ARM: dts: Remove '0x's from OMAP4 DTS file
+
+Cc: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap4.dtsi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
+index 22d9f2b..45708e1 100644
+--- a/arch/arm/boot/dts/omap4.dtsi
++++ b/arch/arm/boot/dts/omap4.dtsi
+@@ -56,7 +56,7 @@
+ cache-level = <2>;
+ };
+
+- local-timer@0x48240600 {
++ local-timer@48240600 {
+ compatible = "arm,cortex-a9-twd-timer";
+ reg = <0x48240600 0x20>;
+ interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>;
diff --git a/patches/linux-3.12/0214-ARM-dts-Remove-0x-s-from-OMAP5-DTS-file.patch b/patches/linux-3.12/0214-ARM-dts-Remove-0x-s-from-OMAP5-DTS-file.patch
new file mode 100644
index 0000000..42bd002
--- /dev/null
+++ b/patches/linux-3.12/0214-ARM-dts-Remove-0x-s-from-OMAP5-DTS-file.patch
@@ -0,0 +1,33 @@
+From: Lee Jones <lee.jones@linaro.org>
+Date: Mon, 22 Jul 2013 11:52:37 +0100
+Subject: [PATCH] ARM: dts: Remove '0x's from OMAP5 DTS file
+
+Cc: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Lee Jones <lee.jones@linaro.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5.dtsi | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index 7cdea1b..ecc06a9 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -604,7 +604,7 @@
+ ti,hwmods = "wd_timer2";
+ };
+
+- emif1: emif@0x4c000000 {
++ emif1: emif@4c000000 {
+ compatible = "ti,emif-4d5";
+ ti,hwmods = "emif1";
+ phy-type = <2>; /* DDR PHY type: Intelli PHY */
+@@ -615,7 +615,7 @@
+ hw-caps-temp-alert;
+ };
+
+- emif2: emif@0x4d000000 {
++ emif2: emif@4d000000 {
+ compatible = "ti,emif-4d5";
+ ti,hwmods = "emif2";
+ phy-type = <2>; /* DDR PHY type: Intelli PHY */
diff --git a/patches/linux-3.12/0215-ARM-dts-twl6030-Move-common-configuration-for-OMAP4-.patch b/patches/linux-3.12/0215-ARM-dts-twl6030-Move-common-configuration-for-OMAP4-.patch
new file mode 100644
index 0000000..5714e82
--- /dev/null
+++ b/patches/linux-3.12/0215-ARM-dts-twl6030-Move-common-configuration-for-OMAP4-.patch
@@ -0,0 +1,164 @@
+From: Ruslan Bilovol <ruslan.bilovol@ti.com>
+Date: Wed, 14 Aug 2013 11:35:47 +0300
+Subject: [PATCH] ARM: dts: twl6030: Move common configuration for OMAP4 boards
+ in a separate dtsi file
+
+The OMAP4 SoC family uses specially-designed PMIC (power management IC)
+companion chip for power management needs: TWL6030/TWL6032.
+Therefore there is a typical connection of PMIC to OMAP4 so we can
+move it into separate .dtsi file and do not duplicate over
+board-specific files.
+
+Tested on OMAP4 SDP board and Pandaboard ES2.
+
+Signed-off-by: Ruslan Bilovol <ruslan.bilovol@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap4-panda-common.dtsi | 21 +----------------
+ arch/arm/boot/dts/omap4-sdp.dts | 21 +----------------
+ arch/arm/boot/dts/twl6030_omap4.dtsi | 38 +++++++++++++++++++++++++++++++
+ 3 files changed, 40 insertions(+), 40 deletions(-)
+ create mode 100644 arch/arm/boot/dts/twl6030_omap4.dtsi
+
+diff --git a/arch/arm/boot/dts/omap4-panda-common.dtsi b/arch/arm/boot/dts/omap4-panda-common.dtsi
+index 814ab67..43b7661 100644
+--- a/arch/arm/boot/dts/omap4-panda-common.dtsi
++++ b/arch/arm/boot/dts/omap4-panda-common.dtsi
+@@ -122,23 +122,9 @@
+ };
+ };
+
+-&omap4_pmx_wkup {
+- pinctrl-names = "default";
+- pinctrl-0 = <
+- &twl6030_wkup_pins
+- >;
+-
+- twl6030_wkup_pins: pinmux_twl6030_wkup_pins {
+- pinctrl-single,pins = <
+- 0x14 (PIN_OUTPUT | MUX_MODE2) /* fref_clk0_out.sys_drm_msecure */
+- >;
+- };
+-};
+-
+ &omap4_pmx_core {
+ pinctrl-names = "default";
+ pinctrl-0 = <
+- &twl6030_pins
+ &twl6040_pins
+ &mcpdm_pins
+ &mcbsp1_pins
+@@ -147,12 +133,6 @@
+ &hsusbb1_pins
+ >;
+
+- twl6030_pins: pinmux_twl6030_pins {
+- pinctrl-single,pins = <
+- 0x15e (WAKEUP_EN | PIN_INPUT_PULLUP | MUX_MODE0) /* sys_nirq1.sys_nirq1 */
+- >;
+- };
+-
+ twl6040_pins: pinmux_twl6040_pins {
+ pinctrl-single,pins = <
+ 0xe0 (PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */
+@@ -305,6 +285,7 @@
+ };
+
+ #include "twl6030.dtsi"
++#include "twl6030_omap4.dtsi"
+
+ &i2c2 {
+ pinctrl-names = "default";
+diff --git a/arch/arm/boot/dts/omap4-sdp.dts b/arch/arm/boot/dts/omap4-sdp.dts
+index 4f78380..5fc3f43 100644
+--- a/arch/arm/boot/dts/omap4-sdp.dts
++++ b/arch/arm/boot/dts/omap4-sdp.dts
+@@ -155,23 +155,9 @@
+ };
+ };
+
+-&omap4_pmx_wkup {
+- pinctrl-names = "default";
+- pinctrl-0 = <
+- &twl6030_wkup_pins
+- >;
+-
+- twl6030_wkup_pins: pinmux_twl6030_wkup_pins {
+- pinctrl-single,pins = <
+- 0x14 (PIN_OUTPUT | MUX_MODE2) /* fref_clk0_out.sys_drm_msecure */
+- >;
+- };
+-};
+-
+ &omap4_pmx_core {
+ pinctrl-names = "default";
+ pinctrl-0 = <
+- &twl6030_pins
+ &twl6040_pins
+ &mcpdm_pins
+ &dmic_pins
+@@ -206,12 +192,6 @@
+ >;
+ };
+
+- twl6030_pins: pinmux_twl6030_pins {
+- pinctrl-single,pins = <
+- 0x15e (WAKEUP_EN | PIN_INPUT_PULLUP | MUX_MODE0) /* sys_nirq1.sys_nirq1 */
+- >;
+- };
+-
+ twl6040_pins: pinmux_twl6040_pins {
+ pinctrl-single,pins = <
+ 0xe0 (PIN_OUTPUT | MUX_MODE3) /* hdq_sio.gpio_127 */
+@@ -370,6 +350,7 @@
+ };
+
+ #include "twl6030.dtsi"
++#include "twl6030_omap4.dtsi"
+
+ &i2c2 {
+ pinctrl-names = "default";
+diff --git a/arch/arm/boot/dts/twl6030_omap4.dtsi b/arch/arm/boot/dts/twl6030_omap4.dtsi
+new file mode 100644
+index 0000000..a4fa570
+--- /dev/null
++++ b/arch/arm/boot/dts/twl6030_omap4.dtsi
+@@ -0,0 +1,38 @@
++/*
++ * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.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.
++ */
++
++&twl {
++ /*
++ * On most OMAP4 platforms, the twl6030 IRQ line is connected
++ * to the SYS_NIRQ1 line on OMAP and the twl6030 MSECURE line is
++ * connected to the fref_clk0_out.sys_drm_msecure line.
++ * Therefore, configure the defaults for the SYS_NIRQ1 and
++ * fref_clk0_out.sys_drm_msecure pins here.
++ */
++ pinctrl-names = "default";
++ pinctrl-0 = <
++ &twl6030_pins
++ &twl6030_wkup_pins
++ >;
++};
++
++&omap4_pmx_wkup {
++ twl6030_wkup_pins: pinmux_twl6030_wkup_pins {
++ pinctrl-single,pins = <
++ 0x14 (PIN_OUTPUT | MUX_MODE2) /* fref_clk0_out.sys_drm_msecure */
++ >;
++ };
++};
++
++&omap4_pmx_core {
++ twl6030_pins: pinmux_twl6030_pins {
++ pinctrl-single,pins = <
++ 0x15e (WAKEUP_EN | PIN_INPUT_PULLUP | MUX_MODE0) /* sys_nirq1.sys_nirq1 */
++ >;
++ };
++};
diff --git a/patches/linux-3.12/0216-ARM-dts-DRA7-Add-the-dts-files-for-dra7-SoC-and-dra7.patch b/patches/linux-3.12/0216-ARM-dts-DRA7-Add-the-dts-files-for-dra7-SoC-and-dra7.patch
new file mode 100644
index 0000000..9a86429
--- /dev/null
+++ b/patches/linux-3.12/0216-ARM-dts-DRA7-Add-the-dts-files-for-dra7-SoC-and-dra7.patch
@@ -0,0 +1,822 @@
+From: R Sricharan <r.sricharan@ti.com>
+Date: Wed, 14 Aug 2013 19:08:20 +0530
+Subject: [PATCH] ARM: dts: DRA7: Add the dts files for dra7 SoC and dra7-evm
+ board
+
+Add minimal device tree source needed for DRA7 based SoCs.
+Also add a board dts file for the dra7-evm (based on dra752)
+which contains 1.5G of memory with 1G interleaved and 512MB
+non-interleaved. Also added in the board file are pin configuration
+details for i2c, mcspi and uart devices on board.
+
+Signed-off-by: R Sricharan <r.sricharan@ti.com>
+Signed-off-by: Rajendra Nayak <rnayak@ti.com>
+Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/Makefile | 3 +-
+ arch/arm/boot/dts/dra7-evm.dts | 140 ++++++++++
+ arch/arm/boot/dts/dra7.dtsi | 575 ++++++++++++++++++++++++++++++++++++++
+ include/dt-bindings/pinctrl/dra.h | 50 ++++
+ 4 files changed, 767 insertions(+), 1 deletion(-)
+ create mode 100644 arch/arm/boot/dts/dra7-evm.dts
+ create mode 100644 arch/arm/boot/dts/dra7.dtsi
+ create mode 100644 include/dt-bindings/pinctrl/dra.h
+
+diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
+index a7cae53..b057b0e 100644
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -189,7 +189,8 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
+ am335x-boneblack.dtb \
+ am3517-evm.dtb \
+ am3517_mt_ventoux.dtb \
+- am43x-epos-evm.dtb
++ am43x-epos-evm.dtb \
++ dra7-evm.dtb
+ dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb
+ dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb
+ dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \
+diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
+new file mode 100644
+index 0000000..ca5dab2
+--- /dev/null
++++ b/arch/arm/boot/dts/dra7-evm.dts
+@@ -0,0 +1,140 @@
++/*
++ * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.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.
++ */
++/dts-v1/;
++
++#include "dra7.dtsi"
++
++/ {
++ model = "TI DRA7";
++ compatible = "ti,dra7-evm", "ti,dra752", "ti,dra7";
++
++ memory {
++ device_type = "memory";
++ reg = <0x80000000 0x60000000>; /* 1536 MB */
++ };
++};
++
++&dra7_pmx_core {
++ i2c1_pins: pinmux_i2c1_pins {
++ pinctrl-single,pins = <
++ 0x400 (PIN_INPUT | MUX_MODE0) /* i2c1_sda */
++ 0x404 (PIN_INPUT | MUX_MODE0) /* i2c1_scl */
++ >;
++ };
++
++ i2c2_pins: pinmux_i2c2_pins {
++ pinctrl-single,pins = <
++ 0x408 (PIN_INPUT | MUX_MODE0) /* i2c2_sda */
++ 0x40c (PIN_INPUT | MUX_MODE0) /* i2c2_scl */
++ >;
++ };
++
++ i2c3_pins: pinmux_i2c3_pins {
++ pinctrl-single,pins = <
++ 0x410 (PIN_INPUT | MUX_MODE0) /* i2c3_sda */
++ 0x414 (PIN_INPUT | MUX_MODE0) /* i2c3_scl */
++ >;
++ };
++
++ mcspi1_pins: pinmux_mcspi1_pins {
++ pinctrl-single,pins = <
++ 0x3a4 (PIN_INPUT | MUX_MODE0) /* spi2_clk */
++ 0x3a8 (PIN_INPUT | MUX_MODE0) /* spi2_d1 */
++ 0x3ac (PIN_INPUT | MUX_MODE0) /* spi2_d0 */
++ 0x3b0 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_cs0 */
++ 0x3b4 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_cs1 */
++ 0x3b8 (PIN_INPUT_SLEW | MUX_MODE6) /* spi2_cs2 */
++ 0x3bc (PIN_INPUT_SLEW | MUX_MODE6) /* spi2_cs3 */
++ >;
++ };
++
++ mcspi2_pins: pinmux_mcspi2_pins {
++ pinctrl-single,pins = <
++ 0x3c0 (PIN_INPUT | MUX_MODE0) /* spi2_sclk */
++ 0x3c4 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_d1 */
++ 0x3c8 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_d1 */
++ 0x3cc (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_cs0 */
++ >;
++ };
++
++ uart1_pins: pinmux_uart1_pins {
++ pinctrl-single,pins = <
++ 0x3e0 (PIN_INPUT_SLEW | MUX_MODE0) /* uart1_rxd */
++ 0x3e4 (PIN_INPUT_SLEW | MUX_MODE0) /* uart1_txd */
++ 0x3e8 (PIN_INPUT | MUX_MODE3) /* uart1_ctsn */
++ 0x3ec (PIN_INPUT | MUX_MODE3) /* uart1_rtsn */
++ >;
++ };
++
++ uart2_pins: pinmux_uart2_pins {
++ pinctrl-single,pins = <
++ 0x3f0 (PIN_INPUT | MUX_MODE0) /* uart2_rxd */
++ 0x3f4 (PIN_INPUT | MUX_MODE0) /* uart2_txd */
++ 0x3f8 (PIN_INPUT | MUX_MODE0) /* uart2_ctsn */
++ 0x3fc (PIN_INPUT | MUX_MODE0) /* uart2_rtsn */
++ >;
++ };
++
++ uart3_pins: pinmux_uart3_pins {
++ pinctrl-single,pins = <
++ 0x248 (PIN_INPUT_SLEW | MUX_MODE0) /* uart3_rxd */
++ 0x24c (PIN_INPUT_SLEW | MUX_MODE0) /* uart3_txd */
++ >;
++ };
++};
++
++&i2c1 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c1_pins>;
++ clock-frequency = <400000>;
++};
++
++&i2c2 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c2_pins>;
++ clock-frequency = <400000>;
++};
++
++&i2c3 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c3_pins>;
++ clock-frequency = <3400000>;
++};
++
++&mcspi1 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&mcspi1_pins>;
++};
++
++&mcspi2 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&mcspi2_pins>;
++};
++
++&uart1 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart1_pins>;
++};
++
++&uart2 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart2_pins>;
++};
++
++&uart3 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart3_pins>;
++};
+diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
+new file mode 100644
+index 0000000..c01ef76
+--- /dev/null
++++ b/arch/arm/boot/dts/dra7.dtsi
+@@ -0,0 +1,575 @@
++/*
++ * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.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.
++ * Based on "omap4.dtsi"
++ */
++
++#include <dt-bindings/interrupt-controller/arm-gic.h>
++#include <dt-bindings/pinctrl/dra.h>
++
++#include "skeleton.dtsi"
++
++/ {
++ #address-cells = <1>;
++ #size-cells = <1>;
++
++ compatible = "ti,dra7xx";
++ interrupt-parent = <&gic>;
++
++ aliases {
++ serial0 = &uart1;
++ serial1 = &uart2;
++ serial2 = &uart3;
++ serial3 = &uart4;
++ serial4 = &uart5;
++ serial5 = &uart6;
++ };
++
++ cpus {
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ cpu@0 {
++ device_type = "cpu";
++ compatible = "arm,cortex-a15";
++ reg = <0>;
++ };
++ cpu@1 {
++ device_type = "cpu";
++ compatible = "arm,cortex-a15";
++ reg = <1>;
++ };
++ };
++
++ timer {
++ compatible = "arm,armv7-timer";
++ interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
++ <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
++ <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
++ <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
++ };
++
++ gic: interrupt-controller@48211000 {
++ compatible = "arm,cortex-a15-gic";
++ interrupt-controller;
++ #interrupt-cells = <3>;
++ reg = <0x48211000 0x1000>,
++ <0x48212000 0x1000>,
++ <0x48214000 0x2000>,
++ <0x48216000 0x2000>;
++ interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
++ };
++
++ /*
++ * The soc node represents the soc top level view. It is uses for IPs
++ * that are not memory mapped in the MPU view or for the MPU itself.
++ */
++ soc {
++ compatible = "ti,omap-infra";
++ mpu {
++ compatible = "ti,omap5-mpu";
++ ti,hwmods = "mpu";
++ };
++ };
++
++ /*
++ * XXX: Use a flat representation of the SOC interconnect.
++ * The real OMAP interconnect network is quite complex.
++ * Since that will not bring real advantage to represent that in DT for
++ * the moment, just use a fake OCP bus entry to represent the whole bus
++ * hierarchy.
++ */
++ ocp {
++ compatible = "ti,omap4-l3-noc", "simple-bus";
++ #address-cells = <1>;
++ #size-cells = <1>;
++ ranges;
++ ti,hwmods = "l3_main_1", "l3_main_2";
++ reg = <0x44000000 0x2000>,
++ <0x44800000 0x3000>;
++ interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
++ <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
++
++ counter32k: counter@4ae04000 {
++ compatible = "ti,omap-counter32k";
++ reg = <0x4ae04000 0x40>;
++ ti,hwmods = "counter_32k";
++ };
++
++ dra7_pmx_core: pinmux@4a003400 {
++ compatible = "pinctrl-single";
++ reg = <0x4a003400 0x0464>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ pinctrl-single,register-width = <32>;
++ pinctrl-single,function-mask = <0x3fffffff>;
++ };
++
++ sdma: dma-controller@4a056000 {
++ compatible = "ti,omap4430-sdma";
++ reg = <0x4a056000 0x1000>;
++ interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
++ <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
++ <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
++ <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
++ #dma-cells = <1>;
++ #dma-channels = <32>;
++ #dma-requests = <127>;
++ };
++
++ gpio1: gpio@4ae10000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x4ae10000 0x200>;
++ interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio1";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ gpio2: gpio@48055000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x48055000 0x200>;
++ interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio2";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ gpio3: gpio@48057000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x48057000 0x200>;
++ interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio3";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ gpio4: gpio@48059000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x48059000 0x200>;
++ interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio4";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ gpio5: gpio@4805b000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x4805b000 0x200>;
++ interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio5";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ gpio6: gpio@4805d000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x4805d000 0x200>;
++ interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio6";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ gpio7: gpio@48051000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x48051000 0x200>;
++ interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio7";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ gpio8: gpio@48053000 {
++ compatible = "ti,omap4-gpio";
++ reg = <0x48053000 0x200>;
++ interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "gpio8";
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ uart1: serial@4806a000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x4806a000 0x100>;
++ interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart1";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart2: serial@4806c000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x4806c000 0x100>;
++ interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart2";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart3: serial@48020000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x48020000 0x100>;
++ interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart3";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart4: serial@4806e000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x4806e000 0x100>;
++ interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart4";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart5: serial@48066000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x48066000 0x100>;
++ interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart5";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart6: serial@48068000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x48068000 0x100>;
++ interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart6";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart7: serial@48420000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x48420000 0x100>;
++ ti,hwmods = "uart7";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart8: serial@48422000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x48422000 0x100>;
++ ti,hwmods = "uart8";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart9: serial@48424000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x48424000 0x100>;
++ ti,hwmods = "uart9";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ uart10: serial@4ae2b000 {
++ compatible = "ti,omap4-uart";
++ reg = <0x4ae2b000 0x100>;
++ ti,hwmods = "uart10";
++ clock-frequency = <48000000>;
++ status = "disabled";
++ };
++
++ timer1: timer@4ae18000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x4ae18000 0x80>;
++ interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer1";
++ ti,timer-alwon;
++ };
++
++ timer2: timer@48032000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48032000 0x80>;
++ interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer2";
++ };
++
++ timer3: timer@48034000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48034000 0x80>;
++ interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer3";
++ };
++
++ timer4: timer@48036000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48036000 0x80>;
++ interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer4";
++ };
++
++ timer5: timer@48820000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48820000 0x80>;
++ interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer5";
++ ti,timer-dsp;
++ };
++
++ timer6: timer@48822000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48822000 0x80>;
++ interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer6";
++ ti,timer-dsp;
++ ti,timer-pwm;
++ };
++
++ timer7: timer@48824000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48824000 0x80>;
++ interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer7";
++ ti,timer-dsp;
++ };
++
++ timer8: timer@48826000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48826000 0x80>;
++ interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer8";
++ ti,timer-dsp;
++ ti,timer-pwm;
++ };
++
++ timer9: timer@4803e000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x4803e000 0x80>;
++ interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer9";
++ };
++
++ timer10: timer@48086000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48086000 0x80>;
++ interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer10";
++ };
++
++ timer11: timer@48088000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48088000 0x80>;
++ interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer11";
++ ti,timer-pwm;
++ };
++
++ timer13: timer@48828000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x48828000 0x80>;
++ ti,hwmods = "timer13";
++ status = "disabled";
++ };
++
++ timer14: timer@4882a000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x4882a000 0x80>;
++ ti,hwmods = "timer14";
++ status = "disabled";
++ };
++
++ timer15: timer@4882c000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x4882c000 0x80>;
++ ti,hwmods = "timer15";
++ status = "disabled";
++ };
++
++ timer16: timer@4882e000 {
++ compatible = "ti,omap5430-timer";
++ reg = <0x4882e000 0x80>;
++ ti,hwmods = "timer16";
++ status = "disabled";
++ };
++
++ wdt2: wdt@4ae14000 {
++ compatible = "ti,omap4-wdt";
++ reg = <0x4ae14000 0x80>;
++ interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "wd_timer2";
++ };
++
++ i2c1: i2c@48070000 {
++ compatible = "ti,omap4-i2c";
++ reg = <0x48070000 0x100>;
++ interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "i2c1";
++ status = "disabled";
++ };
++
++ i2c2: i2c@48072000 {
++ compatible = "ti,omap4-i2c";
++ reg = <0x48072000 0x100>;
++ interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "i2c2";
++ status = "disabled";
++ };
++
++ i2c3: i2c@48060000 {
++ compatible = "ti,omap4-i2c";
++ reg = <0x48060000 0x100>;
++ interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "i2c3";
++ status = "disabled";
++ };
++
++ i2c4: i2c@4807a000 {
++ compatible = "ti,omap4-i2c";
++ reg = <0x4807a000 0x100>;
++ interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "i2c4";
++ status = "disabled";
++ };
++
++ i2c5: i2c@4807c000 {
++ compatible = "ti,omap4-i2c";
++ reg = <0x4807c000 0x100>;
++ interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "i2c5";
++ status = "disabled";
++ };
++
++ mmc1: mmc@4809c000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x4809c000 0x400>;
++ interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "mmc1";
++ ti,dual-volt;
++ ti,needs-special-reset;
++ dmas = <&sdma 61>, <&sdma 62>;
++ dma-names = "tx", "rx";
++ status = "disabled";
++ };
++
++ mmc2: mmc@480b4000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x480b4000 0x400>;
++ interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "mmc2";
++ ti,needs-special-reset;
++ dmas = <&sdma 47>, <&sdma 48>;
++ dma-names = "tx", "rx";
++ status = "disabled";
++ };
++
++ mmc3: mmc@480ad000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x480ad000 0x400>;
++ interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "mmc3";
++ ti,needs-special-reset;
++ dmas = <&sdma 77>, <&sdma 78>;
++ dma-names = "tx", "rx";
++ status = "disabled";
++ };
++
++ mmc4: mmc@480d1000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x480d1000 0x400>;
++ interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "mmc4";
++ ti,needs-special-reset;
++ dmas = <&sdma 57>, <&sdma 58>;
++ dma-names = "tx", "rx";
++ status = "disabled";
++ };
++
++ mcspi1: spi@48098000 {
++ compatible = "ti,omap4-mcspi";
++ reg = <0x48098000 0x200>;
++ interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "mcspi1";
++ ti,spi-num-cs = <4>;
++ dmas = <&sdma 35>,
++ <&sdma 36>,
++ <&sdma 37>,
++ <&sdma 38>,
++ <&sdma 39>,
++ <&sdma 40>,
++ <&sdma 41>,
++ <&sdma 42>;
++ dma-names = "tx0", "rx0", "tx1", "rx1",
++ "tx2", "rx2", "tx3", "rx3";
++ status = "disabled";
++ };
++
++ mcspi2: spi@4809a000 {
++ compatible = "ti,omap4-mcspi";
++ reg = <0x4809a000 0x200>;
++ interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "mcspi2";
++ ti,spi-num-cs = <2>;
++ dmas = <&sdma 43>,
++ <&sdma 44>,
++ <&sdma 45>,
++ <&sdma 46>;
++ dma-names = "tx0", "rx0", "tx1", "rx1";
++ status = "disabled";
++ };
++
++ mcspi3: spi@480b8000 {
++ compatible = "ti,omap4-mcspi";
++ reg = <0x480b8000 0x200>;
++ interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "mcspi3";
++ ti,spi-num-cs = <2>;
++ dmas = <&sdma 15>, <&sdma 16>;
++ dma-names = "tx0", "rx0";
++ status = "disabled";
++ };
++
++ mcspi4: spi@480ba000 {
++ compatible = "ti,omap4-mcspi";
++ reg = <0x480ba000 0x200>;
++ interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "mcspi4";
++ ti,spi-num-cs = <1>;
++ dmas = <&sdma 70>, <&sdma 71>;
++ dma-names = "tx0", "rx0";
++ status = "disabled";
++ };
++ };
++};
+diff --git a/include/dt-bindings/pinctrl/dra.h b/include/dt-bindings/pinctrl/dra.h
+new file mode 100644
+index 0000000..002a285
+--- /dev/null
++++ b/include/dt-bindings/pinctrl/dra.h
+@@ -0,0 +1,50 @@
++/*
++ * This header provides constants for DRA pinctrl bindings.
++ *
++ * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
++ * Author: Rajendra Nayak <rnayak@ti.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.
++ */
++
++#ifndef _DT_BINDINGS_PINCTRL_DRA_H
++#define _DT_BINDINGS_PINCTRL_DRA_H
++
++/* DRA7 mux mode options for each pin. See TRM for options */
++#define MUX_MODE0 0x0
++#define MUX_MODE1 0x1
++#define MUX_MODE2 0x2
++#define MUX_MODE3 0x3
++#define MUX_MODE4 0x4
++#define MUX_MODE5 0x5
++#define MUX_MODE6 0x6
++#define MUX_MODE7 0x7
++#define MUX_MODE8 0x8
++#define MUX_MODE9 0x9
++#define MUX_MODE10 0xa
++#define MUX_MODE11 0xb
++#define MUX_MODE12 0xc
++#define MUX_MODE13 0xd
++#define MUX_MODE14 0xe
++#define MUX_MODE15 0xf
++
++#define PULL_ENA (1 << 16)
++#define PULL_UP (1 << 17)
++#define INPUT_EN (1 << 18)
++#define SLEWCONTROL (1 << 19)
++#define WAKEUP_EN (1 << 24)
++#define WAKEUP_EVENT (1 << 25)
++
++/* Active pin states */
++#define PIN_OUTPUT 0
++#define PIN_OUTPUT_PULLUP (PIN_OUTPUT | PULL_ENA | PULL_UP)
++#define PIN_OUTPUT_PULLDOWN (PIN_OUTPUT | PULL_ENA)
++#define PIN_INPUT INPUT_EN
++#define PIN_INPUT_SLEW (INPUT_EN | SLEWCONTROL)
++#define PIN_INPUT_PULLUP (PULL_ENA | INPUT_EN | PULL_UP)
++#define PIN_INPUT_PULLDOWN (PULL_ENA | INPUT_EN)
++
++#endif
++
diff --git a/patches/linux-3.12/0217-ARM-dts-AM4372-cpu-s-node-per-latest-binding.patch b/patches/linux-3.12/0217-ARM-dts-AM4372-cpu-s-node-per-latest-binding.patch
new file mode 100644
index 0000000..f2b66c8
--- /dev/null
+++ b/patches/linux-3.12/0217-ARM-dts-AM4372-cpu-s-node-per-latest-binding.patch
@@ -0,0 +1,30 @@
+From: Afzal Mohammed <afzal@ti.com>
+Date: Fri, 2 Aug 2013 19:16:13 +0530
+Subject: [PATCH] ARM: dts: AM4372: cpu(s) node per latest binding
+
+Update AM4372 cpu node to the latest cpus/cpu bindings for ARM.
+
+Signed-off-by: Afzal Mohammed <afzal@ti.com>
+Acked-by: Mark Rutland <mark.rutland@arm.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am4372.dtsi | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
+index ddc1df7..4635e7f 100644
+--- a/arch/arm/boot/dts/am4372.dtsi
++++ b/arch/arm/boot/dts/am4372.dtsi
+@@ -22,8 +22,12 @@
+ };
+
+ cpus {
++ #address-cells = <1>;
++ #size-cells = <0>;
+ cpu@0 {
+ compatible = "arm,cortex-a9";
++ device_type = "cpu";
++ reg = <0>;
+ };
+ };
+
diff --git a/patches/linux-3.12/0218-ARM-dts-AM4372-add-few-nodes.patch b/patches/linux-3.12/0218-ARM-dts-AM4372-add-few-nodes.patch
new file mode 100644
index 0000000..d767d29
--- /dev/null
+++ b/patches/linux-3.12/0218-ARM-dts-AM4372-add-few-nodes.patch
@@ -0,0 +1,402 @@
+From: Afzal Mohammed <afzal@ti.com>
+Date: Fri, 2 Aug 2013 19:16:35 +0530
+Subject: [PATCH] ARM: dts: AM4372: add few nodes
+
+Populate uarts, timers, rtc, wdt, gpio, i2c, spi, cpsw & pwm nodes.
+
+Reason for adding these nodes early - hwmod code required address
+space of peripherals corresponding to these nodes (as address space
+details are removed from hwmod database).
+
+uart0, timers - 1 & 2 and synctimer were already present, so here the
+remaining uarts & timers are added.
+
+All properties as per the existing binding has been added for uart,
+timer, rtc, wdt & gpio. Even though that was not the current scope
+of work, felt adding those would reduce or require no effort later
+to get these peripherals working.
+
+For i2c, spi, cpsw & pwm - only the properties that were sure to be
+correct has been added (main intention is to make hwmod happy and
+avoid any later modification to here added properties).
+
+While at it add "ti,hwmod" property to already existing nodes.
+
+Signed-off-by: Afzal Mohammed <afzal@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am4372.dtsi | 343 ++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 343 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
+index 4635e7f..0fe393a 100644
+--- a/arch/arm/boot/dts/am4372.dtsi
++++ b/arch/arm/boot/dts/am4372.dtsi
+@@ -49,6 +49,47 @@
+ compatible = "ti,am4372-uart","ti,omap2-uart";
+ reg = <0x44e09000 0x2000>;
+ interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart1";
++ };
++
++ uart1: serial@48022000 {
++ compatible = "ti,am4372-uart","ti,omap2-uart";
++ reg = <0x48022000 0x2000>;
++ interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart2";
++ status = "disabled";
++ };
++
++ uart2: serial@48024000 {
++ compatible = "ti,am4372-uart","ti,omap2-uart";
++ reg = <0x48024000 0x2000>;
++ interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart3";
++ status = "disabled";
++ };
++
++ uart3: serial@481a6000 {
++ compatible = "ti,am4372-uart","ti,omap2-uart";
++ reg = <0x481a6000 0x2000>;
++ interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart4";
++ status = "disabled";
++ };
++
++ uart4: serial@481a8000 {
++ compatible = "ti,am4372-uart","ti,omap2-uart";
++ reg = <0x481a8000 0x2000>;
++ interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart5";
++ status = "disabled";
++ };
++
++ uart5: serial@481aa000 {
++ compatible = "ti,am4372-uart","ti,omap2-uart";
++ reg = <0x481aa000 0x2000>;
++ interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "uart6";
++ status = "disabled";
+ };
+
+ timer1: timer@44e31000 {
+@@ -56,17 +97,319 @@
+ reg = <0x44e31000 0x400>;
+ interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
+ ti,timer-alwon;
++ ti,hwmods = "timer1";
+ };
+
+ timer2: timer@48040000 {
+ compatible = "ti,am4372-timer","ti,am335x-timer";
+ reg = <0x48040000 0x400>;
+ interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer2";
++ };
++
++ timer3: timer@48042000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x48042000 0x400>;
++ interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer3";
++ status = "disabled";
++ };
++
++ timer4: timer@48044000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x48044000 0x400>;
++ interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
++ ti,timer-pwm;
++ ti,hwmods = "timer4";
++ status = "disabled";
++ };
++
++ timer5: timer@48046000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x48046000 0x400>;
++ interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
++ ti,timer-pwm;
++ ti,hwmods = "timer5";
++ status = "disabled";
++ };
++
++ timer6: timer@48048000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x48048000 0x400>;
++ interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
++ ti,timer-pwm;
++ ti,hwmods = "timer6";
++ status = "disabled";
++ };
++
++ timer7: timer@4804a000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x4804a000 0x400>;
++ interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
++ ti,timer-pwm;
++ ti,hwmods = "timer7";
++ status = "disabled";
++ };
++
++ timer8: timer@481c1000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x481c1000 0x400>;
++ interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer8";
++ status = "disabled";
++ };
++
++ timer9: timer@4833d000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x4833d000 0x400>;
++ interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer9";
++ status = "disabled";
++ };
++
++ timer10: timer@4833f000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x4833f000 0x400>;
++ interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer10";
++ status = "disabled";
++ };
++
++ timer11: timer@48341000 {
++ compatible = "ti,am4372-timer","ti,am335x-timer";
++ reg = <0x48341000 0x400>;
++ interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "timer11";
++ status = "disabled";
+ };
+
+ counter32k: counter@44e86000 {
+ compatible = "ti,am4372-counter32k","ti,omap-counter32k";
+ reg = <0x44e86000 0x40>;
++ ti,hwmods = "counter_32k";
++ };
++
++ rtc@44e3e000 {
++ compatible = "ti,am4372-rtc","ti,da830-rtc";
++ reg = <0x44e3e000 0x1000>;
++ interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH
++ GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "rtc";
++ status = "disabled";
++ };
++
++ wdt@44e35000 {
++ compatible = "ti,am4372-wdt","ti,omap3-wdt";
++ reg = <0x44e35000 0x1000>;
++ interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "wd_timer2";
++ status = "disabled";
++ };
++
++ gpio0: gpio@44e07000 {
++ compatible = "ti,am4372-gpio","ti,omap4-gpio";
++ reg = <0x44e07000 0x1000>;
++ interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <2>;
++ ti,hwmods = "gpio1";
++ status = "disabled";
++ };
++
++ gpio1: gpio@4804c000 {
++ compatible = "ti,am4372-gpio","ti,omap4-gpio";
++ reg = <0x4804c000 0x1000>;
++ interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <2>;
++ ti,hwmods = "gpio2";
++ status = "disabled";
++ };
++
++ gpio2: gpio@481ac000 {
++ compatible = "ti,am4372-gpio","ti,omap4-gpio";
++ reg = <0x481ac000 0x1000>;
++ interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <2>;
++ ti,hwmods = "gpio3";
++ status = "disabled";
++ };
++
++ gpio3: gpio@481ae000 {
++ compatible = "ti,am4372-gpio","ti,omap4-gpio";
++ reg = <0x481ae000 0x1000>;
++ interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <2>;
++ ti,hwmods = "gpio4";
++ status = "disabled";
++ };
++
++ gpio4: gpio@48320000 {
++ compatible = "ti,am4372-gpio","ti,omap4-gpio";
++ reg = <0x48320000 0x1000>;
++ interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <2>;
++ ti,hwmods = "gpio5";
++ status = "disabled";
++ };
++
++ gpio5: gpio@48322000 {
++ compatible = "ti,am4372-gpio","ti,omap4-gpio";
++ reg = <0x48322000 0x1000>;
++ interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
++ gpio-controller;
++ #gpio-cells = <2>;
++ interrupt-controller;
++ #interrupt-cells = <2>;
++ ti,hwmods = "gpio6";
++ status = "disabled";
++ };
++
++ i2c0: i2c@44e0b000 {
++ compatible = "ti,am4372-i2c","ti,omap4-i2c";
++ reg = <0x44e0b000 0x1000>;
++ interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "i2c1";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ i2c1: i2c@4802a000 {
++ compatible = "ti,am4372-i2c","ti,omap4-i2c";
++ reg = <0x4802a000 0x1000>;
++ interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "i2c2";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ i2c2: i2c@4819c000 {
++ compatible = "ti,am4372-i2c","ti,omap4-i2c";
++ reg = <0x4819c000 0x1000>;
++ interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "i2c3";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ spi0: spi@48030000 {
++ compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
++ reg = <0x48030000 0x400>;
++ interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "spi0";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ spi1: spi@481a0000 {
++ compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
++ reg = <0x481a0000 0x400>;
++ interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "spi1";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ spi2: spi@481a2000 {
++ compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
++ reg = <0x481a2000 0x400>;
++ interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "spi2";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ spi3: spi@481a4000 {
++ compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
++ reg = <0x481a4000 0x400>;
++ interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "spi3";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ spi4: spi@48345000 {
++ compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
++ reg = <0x48345000 0x400>;
++ interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "spi4";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "disabled";
++ };
++
++ mac: ethernet@4a100000 {
++ compatible = "ti,am4372-cpsw","ti,cpsw";
++ reg = <0x4a100000 0x800
++ 0x4a101200 0x100>;
++ interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH
++ GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH
++ GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH
++ GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "cpgmac0";
++ status = "disabled";
++ };
++
++ epwmss0: epwmss@48300000 {
++ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
++ reg = <0x48300000 0x10>;
++ ti,hwmods = "epwmss0";
++ status = "disabled";
++ };
++
++ epwmss1: epwmss@48302000 {
++ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
++ reg = <0x48302000 0x10>;
++ ti,hwmods = "epwmss1";
++ status = "disabled";
++ };
++
++ epwmss2: epwmss@48304000 {
++ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
++ reg = <0x48304000 0x10>;
++ ti,hwmods = "epwmss2";
++ status = "disabled";
++ };
++
++ epwmss3: epwmss@48306000 {
++ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
++ reg = <0x48306000 0x10>;
++ ti,hwmods = "epwmss3";
++ status = "disabled";
++ };
++
++ epwmss4: epwmss@48308000 {
++ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
++ reg = <0x48308000 0x10>;
++ ti,hwmods = "epwmss4";
++ status = "disabled";
++ };
++
++ epwmss5: epwmss@4830a000 {
++ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
++ reg = <0x4830a000 0x10>;
++ ti,hwmods = "epwmss5";
++ status = "disabled";
+ };
+ };
+ };
diff --git a/patches/linux-3.12/0219-ARM-dts-Add-devicetree-for-gta04-board.patch b/patches/linux-3.12/0219-ARM-dts-Add-devicetree-for-gta04-board.patch
new file mode 100644
index 0000000..8744497
--- /dev/null
+++ b/patches/linux-3.12/0219-ARM-dts-Add-devicetree-for-gta04-board.patch
@@ -0,0 +1,201 @@
+From: Marek Belisko <marek@goldelico.com>
+Date: Thu, 15 Aug 2013 22:43:05 +0200
+Subject: [PATCH] ARM: dts: Add devicetree for gta04 board.
+
+This adds devicetree for gta04 (Openmoko next generation board) with necessary
+support for mmc, usb, leds and button.
+
+Signed-off-by: Marek Belisko <marek@goldelico.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/Makefile | 1 +
+ arch/arm/boot/dts/omap3-gta04.dts | 168 ++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 169 insertions(+)
+ create mode 100644 arch/arm/boot/dts/omap3-gta04.dts
+
+diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
+index b057b0e..1be0c95 100644
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -174,6 +174,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
+ omap3-evm.dtb \
+ omap3-n900.dtb \
+ omap3-tobi.dtb \
++ omap3-gta04.dtb \
+ omap3-igep0020.dtb \
+ omap3-igep0030.dtb \
+ omap4-panda.dtb \
+diff --git a/arch/arm/boot/dts/omap3-gta04.dts b/arch/arm/boot/dts/omap3-gta04.dts
+new file mode 100644
+index 0000000..a84684a
+--- /dev/null
++++ b/arch/arm/boot/dts/omap3-gta04.dts
+@@ -0,0 +1,168 @@
++/*
++ * Copyright (C) 2013 Marek Belisko <marek@goldelico.com>
++ *
++ * Based on omap3-beagle-xm.dts
++ *
++ * 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.
++ */
++/dts-v1/;
++
++#include "omap36xx.dtsi"
++
++/ {
++ model = "OMAP3 GTA04";
++ compatible = "ti,omap3-gta04", "ti,omap3";
++
++ cpus {
++ cpu@0 {
++ cpu0-supply = <&vcc>;
++ };
++ };
++
++ memory {
++ device_type = "memory";
++ reg = <0x80000000 0x20000000>; /* 512 MB */
++ };
++
++ gpio-keys {
++ compatible = "gpio-keys";
++
++ aux-button {
++ label = "aux";
++ linux,code = <169>;
++ gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
++ gpio-key,wakeup;
++ };
++ };
++};
++
++&omap3_pmx_core {
++ uart1_pins: pinmux_uart1_pins {
++ pinctrl-single,pins = <
++ 0x152 (PIN_INPUT | MUX_MODE0) /* uart1_rx.uart1_rx */
++ 0x14c (PIN_OUTPUT |MUX_MODE0) /* uart1_tx.uart1_tx */
++ >;
++ };
++
++ uart2_pins: pinmux_uart2_pins {
++ pinctrl-single,pins = <
++ 0x14a (PIN_INPUT | MUX_MODE0) /* uart2_rx.uart2_rx */
++ 0x148 (PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */
++ >;
++ };
++
++ uart3_pins: pinmux_uart3_pins {
++ pinctrl-single,pins = <
++ 0x16e (PIN_INPUT | MUX_MODE0) /* uart3_rx.uart3_rx */
++ 0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx.uart3_tx */
++ >;
++ };
++
++ mmc1_pins: pinmux_mmc1_pins {
++ pinctrl-single,pins = <
++ 0x114 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
++ 0x116 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
++ 0x118 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
++ 0x11a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
++ 0x11c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
++ 0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
++ >;
++ };
++};
++
++&i2c1 {
++ clock-frequency = <2600000>;
++
++ twl: twl@48 {
++ reg = <0x48>;
++ interrupts = <7>; /* SYS_NIRQ cascaded to intc */
++ interrupt-parent = <&intc>;
++ };
++};
++
++#include "twl4030.dtsi"
++#include "twl4030_omap3.dtsi"
++
++&i2c2 {
++ clock-frequency = <400000>;
++
++ /* pressure sensor */
++ bmp085@77 {
++ compatible = "bosch,bmp085";
++ reg = <0x77>;
++ };
++
++ /* leds */
++ tca6507@45 {
++ compatible = "ti,tca6507";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <0x45>;
++
++ gta04_led0: red_aux@0 {
++ label = "gta04:red:aux";
++ reg = <0x0>;
++ };
++
++ gta04_led1: green_aux@1 {
++ label = "gta04:green:aux";
++ reg = <0x1>;
++ };
++
++ gta04_led3: red_power@3 {
++ label = "gta04:red:power";
++ reg = <0x3>;
++ linux,default-trigger = "default-on";
++ };
++
++ gta04_led4: green_power@4 {
++ label = "gta04:green:power";
++ reg = <0x4>;
++ };
++ };
++};
++
++&i2c3 {
++ clock-frequency = <100000>;
++};
++
++&usb_otg_hs {
++ interface-type = <0>;
++ usb-phy = <&usb2_phy>;
++ mode = <3>;
++ power = <50>;
++};
++
++&mmc1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&mmc1_pins>;
++ vmmc-supply = <&vmmc1>;
++ vmmc_aux-supply = <&vsim>;
++ bus-width = <4>;
++};
++
++&mmc2 {
++ status = "disabled";
++};
++
++&mmc3 {
++ status = "disabled";
++};
++
++&uart1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart1_pins>;
++};
++
++&uart2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart2_pins>;
++};
++
++&uart3 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart3_pins>;
++};
++
diff --git a/patches/linux-3.12/0220-ARM-dts-omap3-beagle-Make-USB-host-pin-naming-consis.patch b/patches/linux-3.12/0220-ARM-dts-omap3-beagle-Make-USB-host-pin-naming-consis.patch
new file mode 100644
index 0000000..6d2c657
--- /dev/null
+++ b/patches/linux-3.12/0220-ARM-dts-omap3-beagle-Make-USB-host-pin-naming-consis.patch
@@ -0,0 +1,48 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Thu, 15 Aug 2013 13:18:28 +0300
+Subject: [PATCH] ARM: dts: omap3-beagle: Make USB host pin naming consistent
+
+Use a common naming scheme "mode0name.modename flags" for the
+USB host pins to be consistent.
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-beagle.dts | 24 ++++++++++++------------
+ 1 file changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts
+index dfd8310..2e29e81 100644
+--- a/arch/arm/boot/dts/omap3-beagle.dts
++++ b/arch/arm/boot/dts/omap3-beagle.dts
+@@ -101,18 +101,18 @@
+
+ hsusbb2_pins: pinmux_hsusbb2_pins {
+ pinctrl-single,pins = <
+- 0x5c0 (PIN_OUTPUT | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_clk */
+- 0x5c2 (PIN_OUTPUT | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_stp */
+- 0x5c4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dir */
+- 0x5c6 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_nxt */
+- 0x5c8 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat0 */
+- 0x5cA (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat1 */
+- 0x1a4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat2 */
+- 0x1a6 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat3 */
+- 0x1a8 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat4 */
+- 0x1aa (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat5 */
+- 0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat6 */
+- 0x1ae (PIN_INPUT_PULLDOWN | MUX_MODE3) /* usbb2_ulpitll_clk.usbb1_ulpiphy_dat7 */
++ 0x5c0 (PIN_OUTPUT | MUX_MODE3) /* etk_d10.hsusb2_clk */
++ 0x5c2 (PIN_OUTPUT | MUX_MODE3) /* etk_d11.hsusb2_stp */
++ 0x5c4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d12.hsusb2_dir */
++ 0x5c6 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d13.hsusb2_nxt */
++ 0x5c8 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d14.hsusb2_data0 */
++ 0x5cA (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d15.hsusb2_data1 */
++ 0x1a4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi1_cs3.hsusb2_data2 */
++ 0x1a6 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_clk.hsusb2_data7 */
++ 0x1a8 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_simo.hsusb2_data4 */
++ 0x1aa (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_somi.hsusb2_data5 */
++ 0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs0.hsusb2_data6 */
++ 0x1ae (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs1.hsusb2_data3 */
+ >;
+ };
+
diff --git a/patches/linux-3.12/0221-ARM-dts-OMAP5-add-palmas-usb-node.patch b/patches/linux-3.12/0221-ARM-dts-OMAP5-add-palmas-usb-node.patch
new file mode 100644
index 0000000..3f4e9bb
--- /dev/null
+++ b/patches/linux-3.12/0221-ARM-dts-OMAP5-add-palmas-usb-node.patch
@@ -0,0 +1,61 @@
+From: Felipe Balbi <balbi@ti.com>
+Date: Wed, 21 Aug 2013 20:01:32 +0530
+Subject: [PATCH] ARM: dts: OMAP5: add palmas-usb node
+
+Without this node, there will be no palmas driver to notify
+dwc3 that a cable has been connected and, without that, dwc3
+will never initialize.
+
+Signed-off-by: Felipe Balbi <balbi@ti.com>
+[kishon@ti.com: added dt properties for enabling vbus/id interrupts
+and fixed vbus-supply value after SMPS10 is modeled as 2 regulators]
+Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 12 ++++++++++++
+ arch/arm/boot/dts/omap5.dtsi | 2 +-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index 05b9b12..da25a14 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -272,6 +272,13 @@
+ interrupt-controller;
+ #interrupt-cells = <2>;
+
++ extcon_usb3: palmas_usb {
++ compatible = "ti,palmas-usb-vid";
++ ti,enable-vbus-detection;
++ ti,enable-id-detection;
++ ti,wakeup;
++ };
++
+ palmas_pmic {
+ compatible = "ti,palmas-pmic";
+ interrupt-parent = <&palmas>;
+@@ -479,6 +486,11 @@
+ phys = <0 &hsusb2_phy &hsusb3_phy>;
+ };
+
++&usb3 {
++ extcon = <&extcon_usb3>;
++ vbus-supply = <&smps10_out1_reg>;
++};
++
+ &mcspi1 {
+
+ };
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index ecc06a9..6192c45 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -634,7 +634,7 @@
+ ti,type = <2>;
+ };
+
+- omap_dwc3@4a020000 {
++ usb3: omap_dwc3@4a020000 {
+ compatible = "ti,dwc3";
+ ti,hwmods = "usb_otg_ss";
+ reg = <0x4a020000 0x10000>;
diff --git a/patches/linux-3.12/0222-ARM-dts-AM33XX-Add-EDMA-support.patch b/patches/linux-3.12/0222-ARM-dts-AM33XX-Add-EDMA-support.patch
new file mode 100644
index 0000000..ee0193c
--- /dev/null
+++ b/patches/linux-3.12/0222-ARM-dts-AM33XX-Add-EDMA-support.patch
@@ -0,0 +1,42 @@
+From: Matt Porter <mdp@ti.com>
+Date: Tue, 10 Sep 2013 14:24:37 -0500
+Subject: [PATCH] ARM: dts: AM33XX: Add EDMA support
+
+Adds AM33XX EDMA support to the am33xx.dtsi as documented in
+Documentation/devicetree/bindings/dma/ti-edma.txt
+
+[Joel Fernandes <joelf@ti.com>]
+Drop DT entries that are non-hardware-description as discussed in [1]
+
+[1] https://patchwork.kernel.org/patch/2226761/
+
+Signed-off-by: Matt Porter <mporter@ti.com>
+Signed-off-by: Joel A Fernandes <joelagnel@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 2d571c8..799f133 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -105,6 +105,18 @@
+ reg = <0x48200000 0x1000>;
+ };
+
++ edma: edma@49000000 {
++ compatible = "ti,edma3";
++ ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2";
++ reg = <0x49000000 0x10000>,
++ <0x44e10f90 0x10>;
++ interrupts = <12 13 14>;
++ #dma-cells = <1>;
++ dma-channels = <64>;
++ ti,edma-regions = <4>;
++ ti,edma-slots = <256>;
++ };
++
+ gpio0: gpio@44e07000 {
+ compatible = "ti,omap4-gpio";
+ ti,hwmods = "gpio1";
diff --git a/patches/linux-3.12/0223-ARM-dts-AM33XX-Add-SPI-DMA-support.patch b/patches/linux-3.12/0223-ARM-dts-AM33XX-Add-SPI-DMA-support.patch
new file mode 100644
index 0000000..6ce05b1
--- /dev/null
+++ b/patches/linux-3.12/0223-ARM-dts-AM33XX-Add-SPI-DMA-support.patch
@@ -0,0 +1,41 @@
+From: Matt Porter <mporter@ti.com>
+Date: Tue, 10 Sep 2013 14:24:38 -0500
+Subject: [PATCH] ARM: dts: AM33XX: Add SPI DMA support
+
+Adds DMA resources to the AM33XX SPI nodes.
+
+Signed-off-by: Matt Porter <mporter@ti.com>
+Signed-off-by: Joel A Fernandes <joelagnel@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 799f133..a49da7f 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -340,6 +340,11 @@
+ interrupts = <65>;
+ ti,spi-num-cs = <2>;
+ ti,hwmods = "spi0";
++ dmas = <&edma 16
++ &edma 17
++ &edma 18
++ &edma 19>;
++ dma-names = "tx0", "rx0", "tx1", "rx1";
+ status = "disabled";
+ };
+
+@@ -351,6 +356,11 @@
+ interrupts = <125>;
+ ti,spi-num-cs = <2>;
+ ti,hwmods = "spi1";
++ dmas = <&edma 42
++ &edma 43
++ &edma 44
++ &edma 45>;
++ dma-names = "tx0", "rx0", "tx1", "rx1";
+ status = "disabled";
+ };
+
diff --git a/patches/linux-3.12/0224-ARM-dts-AM33XX-Add-MMC-support-and-documentation.patch b/patches/linux-3.12/0224-ARM-dts-AM33XX-Add-MMC-support-and-documentation.patch
new file mode 100644
index 0000000..06f2fa0
--- /dev/null
+++ b/patches/linux-3.12/0224-ARM-dts-AM33XX-Add-MMC-support-and-documentation.patch
@@ -0,0 +1,180 @@
+From: Matt Porter <mporter@ti.com>
+Date: Tue, 10 Sep 2013 14:24:39 -0500
+Subject: [PATCH] ARM: dts: AM33XX: Add MMC support and documentation
+
+Adds AM33XX MMC support for am335x-bone, am335x-evm and am335x-evmsk boards.
+
+Also added is the DMA binding definitions based on the generic DMA request
+binding.
+
+Additional changes made to DTS:
+* Interrupt, reg and compatible properties added
+* ti,needs-special-hs-handling added
+
+Signed-off-by: Matt Porter <mporter@ti.com>
+Acked-by: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ .../devicetree/bindings/mmc/ti-omap-hsmmc.txt | 26 ++++++++++++++-
+ arch/arm/boot/dts/am335x-bone.dts | 11 +++++++
+ arch/arm/boot/dts/am335x-evm.dts | 7 ++++
+ arch/arm/boot/dts/am335x-evmsk.dts | 7 ++++
+ arch/arm/boot/dts/am33xx.dtsi | 38 ++++++++++++++++++++++
+ 5 files changed, 88 insertions(+), 1 deletion(-)
+
+diff --git a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
+index ed271fc..8c8908a 100644
+--- a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
++++ b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
+@@ -20,8 +20,29 @@ ti,dual-volt: boolean, supports dual voltage cards
+ ti,non-removable: non-removable slot (like eMMC)
+ ti,needs-special-reset: Requires a special softreset sequence
+ ti,needs-special-hs-handling: HSMMC IP needs special setting for handling High Speed
++dmas: List of DMA specifiers with the controller specific format
++as described in the generic DMA client binding. A tx and rx
++specifier is required.
++dma-names: List of DMA request names. These strings correspond
++1:1 with the DMA specifiers listed in dmas. The string naming is
++to be "rx" and "tx" for RX and TX DMA requests, respectively.
++
++Examples:
++
++[hwmod populated DMA resources]
++
++ mmc1: mmc@0x4809c000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x4809c000 0x400>;
++ ti,hwmods = "mmc1";
++ ti,dual-volt;
++ bus-width = <4>;
++ vmmc-supply = <&vmmc>; /* phandle to regulator node */
++ ti,non-removable;
++ };
++
++[generic DMA request binding]
+
+-Example:
+ mmc1: mmc@0x4809c000 {
+ compatible = "ti,omap4-hsmmc";
+ reg = <0x4809c000 0x400>;
+@@ -30,4 +51,7 @@ Example:
+ bus-width = <4>;
+ vmmc-supply = <&vmmc>; /* phandle to regulator node */
+ ti,non-removable;
++ dmas = <&edma 24
++ &edma 25>;
++ dma-names = "tx", "rx";
+ };
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index 7993c48..d5f43fe 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -9,3 +9,14 @@
+
+ #include "am33xx.dtsi"
+ #include "am335x-bone-common.dtsi"
++
++&ldo3_reg {
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-always-on;
++};
++
++&mmc1 {
++ status = "okay";
++ vmmc-supply = <&ldo3_reg>;
++};
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index e8ec875..bc4a69d 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -477,6 +477,8 @@
+ };
+
+ vmmc_reg: regulator@12 {
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ };
+@@ -517,3 +519,8 @@
+ ti,adc-channels = <4 5 6 7>;
+ };
+ };
++
++&mmc1 {
++ status = "okay";
++ vmmc-supply = <&vmmc_reg>;
++};
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index 4f339fa..55fd194 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -393,6 +393,8 @@
+ };
+
+ vmmc_reg: regulator@12 {
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ };
+@@ -419,3 +421,8 @@
+ phy_id = <&davinci_mdio>, <1>;
+ phy-mode = "rgmii-txid";
+ };
++
++&mmc1 {
++ status = "okay";
++ vmmc-supply = <&vmmc_reg>;
++};
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index a49da7f..179b0bc 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -245,6 +245,44 @@
+ status = "disabled";
+ };
+
++ mmc1: mmc@48060000 {
++ compatible = "ti,omap4-hsmmc";
++ ti,hwmods = "mmc1";
++ ti,dual-volt;
++ ti,needs-special-reset;
++ ti,needs-special-hs-handling;
++ dmas = <&edma 24
++ &edma 25>;
++ dma-names = "tx", "rx";
++ interrupts = <64>;
++ interrupt-parent = <&intc>;
++ reg = <0x48060000 0x1000>;
++ status = "disabled";
++ };
++
++ mmc2: mmc@481d8000 {
++ compatible = "ti,omap4-hsmmc";
++ ti,hwmods = "mmc2";
++ ti,needs-special-reset;
++ dmas = <&edma 2
++ &edma 3>;
++ dma-names = "tx", "rx";
++ interrupts = <28>;
++ interrupt-parent = <&intc>;
++ reg = <0x481d8000 0x1000>;
++ status = "disabled";
++ };
++
++ mmc3: mmc@47810000 {
++ compatible = "ti,omap4-hsmmc";
++ ti,hwmods = "mmc3";
++ ti,needs-special-reset;
++ interrupts = <29>;
++ interrupt-parent = <&intc>;
++ reg = <0x47810000 0x1000>;
++ status = "disabled";
++ };
++
+ wdt2: wdt@44e35000 {
+ compatible = "ti,omap3-wdt";
+ ti,hwmods = "wd_timer2";
diff --git a/patches/linux-3.12/0225-ARM-dts-am335x-bone-add-CD-for-mmc1.patch b/patches/linux-3.12/0225-ARM-dts-am335x-bone-add-CD-for-mmc1.patch
new file mode 100644
index 0000000..d3567d3
--- /dev/null
+++ b/patches/linux-3.12/0225-ARM-dts-am335x-bone-add-CD-for-mmc1.patch
@@ -0,0 +1,56 @@
+From: Alexander Holler <holler@ahsoftware.de>
+Date: Thu, 12 Sep 2013 20:35:32 +0200
+Subject: [PATCH] ARM: dts: am335x-bone: add CD for mmc1
+
+This enables the use of MMC cards even when no card was inserted at boot.
+
+Signed-off-by: Alexander Holler <holler@ahsoftware.de>
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+Tested-by: Kevin Hilman <khilman@linaro.org>
+Reviewed-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 14 ++++++++++++++
+ arch/arm/boot/dts/am335x-bone.dts | 1 -
+ 2 files changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index 2f66ded..0d95d54 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -107,6 +107,12 @@
+ 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+ >;
+ };
++
++ mmc1_pins: pinmux_mmc1_pins {
++ pinctrl-single,pins = <
++ 0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
++ >;
++ };
+ };
+
+ ocp {
+@@ -260,3 +266,11 @@
+ pinctrl-0 = <&davinci_mdio_default>;
+ pinctrl-1 = <&davinci_mdio_sleep>;
+ };
++
++&mmc1 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&mmc1_pins>;
++ cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
++ cd-inverted;
++};
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index d5f43fe..0d63348 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -17,6 +17,5 @@
+ };
+
+ &mmc1 {
+- status = "okay";
+ vmmc-supply = <&ldo3_reg>;
+ };
diff --git a/patches/linux-3.12/0226-ARM-dts-am335x-boneblack-add-eMMC-DT-entry.patch b/patches/linux-3.12/0226-ARM-dts-am335x-boneblack-add-eMMC-DT-entry.patch
new file mode 100644
index 0000000..beeb6cf
--- /dev/null
+++ b/patches/linux-3.12/0226-ARM-dts-am335x-boneblack-add-eMMC-DT-entry.patch
@@ -0,0 +1,78 @@
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Thu, 12 Sep 2013 20:35:33 +0200
+Subject: [PATCH] ARM: dts: am335x-boneblack: add eMMC DT entry
+
+The pinmux is specified in am335x-bone-common.dtsi to be
+reused by the eMMC cape.
+
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+Tested-by: Kevin Hilman <khilman@linaro.org>
+Reviewed-by: Nishanth Menon <nm@ti.com>
+[bcousson@baylibre.com: Fix traling spaces and useless comments]
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 22 ++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack.dts | 13 +++++++++++++
+ 2 files changed, 35 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index 0d95d54..c560cb7 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -113,6 +113,21 @@
+ 0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
+ >;
+ };
++
++ emmc_pins: pinmux_emmc_pins {
++ pinctrl-single,pins = <
++ 0x80 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
++ 0x84 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_csn2.mmc1_cmd */
++ 0x00 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
++ 0x04 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
++ 0x08 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
++ 0x0c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
++ 0x10 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
++ 0x14 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
++ 0x18 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
++ 0x1c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
++ >;
++ };
+ };
+
+ ocp {
+@@ -242,6 +257,13 @@
+ regulator-always-on;
+ };
+ };
++
++ vmmcsd_fixed: fixedregulator@0 {
++ compatible = "regulator-fixed";
++ regulator-name = "vmmcsd_fixed";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ };
+ };
+
+ &cpsw_emac0 {
+diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
+index 197cadf..16b3bea 100644
+--- a/arch/arm/boot/dts/am335x-boneblack.dts
++++ b/arch/arm/boot/dts/am335x-boneblack.dts
+@@ -15,3 +15,16 @@
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
++
++&mmc1 {
++ vmmc-supply = <&vmmcsd_fixed>;
++};
++
++&mmc2 {
++ vmmc-supply = <&vmmcsd_fixed>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&emmc_pins>;
++ bus-width = <8>;
++ status = "okay";
++ ti,vcc-aux-disable-is-sleep;
++};
diff --git a/patches/linux-3.12/0227-ARM-dts-am335x-bone-common-switch-mmc1-to-4-bit-mode.patch b/patches/linux-3.12/0227-ARM-dts-am335x-bone-common-switch-mmc1-to-4-bit-mode.patch
new file mode 100644
index 0000000..427b95c
--- /dev/null
+++ b/patches/linux-3.12/0227-ARM-dts-am335x-bone-common-switch-mmc1-to-4-bit-mode.patch
@@ -0,0 +1,26 @@
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Thu, 12 Sep 2013 20:35:34 +0200
+Subject: [PATCH] ARM: dts: am335x-bone-common: switch mmc1 to 4-bit mode
+
+The micro-SD slot hooks up all four data pins so lets' use them.
+
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+Tested-by: Kevin Hilman <khilman@linaro.org>
+Reviewed-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index c560cb7..fbb11dd 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -291,6 +291,7 @@
+
+ &mmc1 {
+ status = "okay";
++ bus-width = <0x4>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&mmc1_pins>;
+ cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
diff --git a/patches/linux-3.12/0228-ARM-dts-am335x-bone-common-add-cpu0-and-mmc1-trigger.patch b/patches/linux-3.12/0228-ARM-dts-am335x-bone-common-add-cpu0-and-mmc1-trigger.patch
new file mode 100644
index 0000000..7c49f10
--- /dev/null
+++ b/patches/linux-3.12/0228-ARM-dts-am335x-bone-common-add-cpu0-and-mmc1-trigger.patch
@@ -0,0 +1,43 @@
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Thu, 12 Sep 2013 20:35:35 +0200
+Subject: [PATCH] ARM: dts: am335x-bone-common: add cpu0 and mmc1 triggers
+
+This matches the vendor 3.8.x configuration that is shipping
+with the boards.
+
+The LED layout is now:
+ USR0: heartbeat
+ USR1: mmc0 (micro-SD slot)
+ USR2: cpu0
+ USR3: mmc1 (eMMC)
+
+The cpu0 triggers was put in between the mmc triggers to make
+is easier to see where the disk activity is.
+
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+Tested-by: Kevin Hilman <khilman@linaro.org>
+Reviewed-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index fbb11dd..56361ce 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -204,12 +204,14 @@
+ led@4 {
+ label = "beaglebone:green:usr2";
+ gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
++ linux,default-trigger = "cpu0";
+ default-state = "off";
+ };
+
+ led@5 {
+ label = "beaglebone:green:usr3";
+ gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>;
++ linux,default-trigger = "mmc1";
+ default-state = "off";
+ };
+ };
diff --git a/patches/linux-3.12/0229-ARM-dts-AM33XX-use-pinmux-node-defined-in-included-f.patch b/patches/linux-3.12/0229-ARM-dts-AM33XX-use-pinmux-node-defined-in-included-f.patch
new file mode 100644
index 0000000..09b183e
--- /dev/null
+++ b/patches/linux-3.12/0229-ARM-dts-AM33XX-use-pinmux-node-defined-in-included-f.patch
@@ -0,0 +1,804 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Fri, 20 Sep 2013 17:00:00 +0200
+Subject: [PATCH] ARM: dts: AM33XX: use pinmux node defined in included file
+
+am33xx boards DTS include the am33xx.dtsi Device Tree
+source file that already define a pinmux device node for
+the AM33XX SoC Pin Multiplex.
+
+Redefining this for each board makes the Device Tree files
+harder to modify and maintain so let's just use what is
+already defined in the included .dtsi file.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 218 ++++++++++++-------------
+ arch/arm/boot/dts/am335x-evm.dts | 254 ++++++++++++++---------------
+ arch/arm/boot/dts/am335x-evmsk.dts | 258 +++++++++++++++---------------
+ 3 files changed, 365 insertions(+), 365 deletions(-)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index 56361ce..29799ac 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -21,115 +21,6 @@
+ reg = <0x80000000 0x10000000>; /* 256 MB */
+ };
+
+- am33xx_pinmux: pinmux@44e10800 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&clkout2_pin>;
+-
+- user_leds_s0: user_leds_s0 {
+- pinctrl-single,pins = <
+- 0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a5.gpio1_21 */
+- 0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_a6.gpio1_22 */
+- 0x5c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a7.gpio1_23 */
+- 0x60 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_a8.gpio1_24 */
+- >;
+- };
+-
+- i2c0_pins: pinmux_i2c0_pins {
+- pinctrl-single,pins = <
+- 0x188 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
+- 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
+- >;
+- };
+-
+- uart0_pins: pinmux_uart0_pins {
+- pinctrl-single,pins = <
+- 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
+- 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
+- >;
+- };
+-
+- clkout2_pin: pinmux_clkout2_pin {
+- pinctrl-single,pins = <
+- 0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
+- >;
+- };
+-
+- cpsw_default: cpsw_default {
+- pinctrl-single,pins = <
+- /* Slave 1 */
+- 0x110 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxerr.mii1_rxerr */
+- 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txen.mii1_txen */
+- 0x118 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxdv.mii1_rxdv */
+- 0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd3.mii1_txd3 */
+- 0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd2.mii1_txd2 */
+- 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd1.mii1_txd1 */
+- 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd0.mii1_txd0 */
+- 0x12c (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_txclk.mii1_txclk */
+- 0x130 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxclk.mii1_rxclk */
+- 0x134 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd3.mii1_rxd3 */
+- 0x138 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd2.mii1_rxd2 */
+- 0x13c (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd1.mii1_rxd1 */
+- 0x140 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd0.mii1_rxd0 */
+- >;
+- };
+-
+- cpsw_sleep: cpsw_sleep {
+- pinctrl-single,pins = <
+- /* Slave 1 reset value */
+- 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- >;
+- };
+-
+- davinci_mdio_default: davinci_mdio_default {
+- pinctrl-single,pins = <
+- /* MDIO */
+- 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
+- 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
+- >;
+- };
+-
+- davinci_mdio_sleep: davinci_mdio_sleep {
+- pinctrl-single,pins = <
+- /* MDIO reset value */
+- 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- >;
+- };
+-
+- mmc1_pins: pinmux_mmc1_pins {
+- pinctrl-single,pins = <
+- 0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
+- >;
+- };
+-
+- emmc_pins: pinmux_emmc_pins {
+- pinctrl-single,pins = <
+- 0x80 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
+- 0x84 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_csn2.mmc1_cmd */
+- 0x00 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
+- 0x04 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
+- 0x08 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
+- 0x0c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
+- 0x10 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
+- 0x14 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
+- 0x18 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
+- 0x1c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
+- >;
+- };
+- };
+-
+ ocp {
+ uart0: serial@44e09000 {
+ pinctrl-names = "default";
+@@ -217,6 +108,115 @@
+ };
+ };
+
++&am33xx_pinmux {
++ pinctrl-names = "default";
++ pinctrl-0 = <&clkout2_pin>;
++
++ user_leds_s0: user_leds_s0 {
++ pinctrl-single,pins = <
++ 0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a5.gpio1_21 */
++ 0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_a6.gpio1_22 */
++ 0x5c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a7.gpio1_23 */
++ 0x60 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_a8.gpio1_24 */
++ >;
++ };
++
++ i2c0_pins: pinmux_i2c0_pins {
++ pinctrl-single,pins = <
++ 0x188 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
++ 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
++ >;
++ };
++
++ uart0_pins: pinmux_uart0_pins {
++ pinctrl-single,pins = <
++ 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
++ 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
++ >;
++ };
++
++ clkout2_pin: pinmux_clkout2_pin {
++ pinctrl-single,pins = <
++ 0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
++ >;
++ };
++
++ cpsw_default: cpsw_default {
++ pinctrl-single,pins = <
++ /* Slave 1 */
++ 0x110 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxerr.mii1_rxerr */
++ 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txen.mii1_txen */
++ 0x118 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxdv.mii1_rxdv */
++ 0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd3.mii1_txd3 */
++ 0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd2.mii1_txd2 */
++ 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd1.mii1_txd1 */
++ 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd0.mii1_txd0 */
++ 0x12c (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_txclk.mii1_txclk */
++ 0x130 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxclk.mii1_rxclk */
++ 0x134 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd3.mii1_rxd3 */
++ 0x138 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd2.mii1_rxd2 */
++ 0x13c (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd1.mii1_rxd1 */
++ 0x140 (PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd0.mii1_rxd0 */
++ >;
++ };
++
++ cpsw_sleep: cpsw_sleep {
++ pinctrl-single,pins = <
++ /* Slave 1 reset value */
++ 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++
++ davinci_mdio_default: davinci_mdio_default {
++ pinctrl-single,pins = <
++ /* MDIO */
++ 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
++ 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
++ >;
++ };
++
++ davinci_mdio_sleep: davinci_mdio_sleep {
++ pinctrl-single,pins = <
++ /* MDIO reset value */
++ 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++
++ mmc1_pins: pinmux_mmc1_pins {
++ pinctrl-single,pins = <
++ 0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
++ >;
++ };
++
++ emmc_pins: pinmux_emmc_pins {
++ pinctrl-single,pins = <
++ 0x80 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
++ 0x84 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_csn2.mmc1_cmd */
++ 0x00 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
++ 0x04 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
++ 0x08 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
++ 0x0c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
++ 0x10 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
++ 0x14 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
++ 0x18 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
++ 0x1c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
++ >;
++ };
++};
++
+ /include/ "tps65217.dtsi"
+
+ &tps {
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index bc4a69d..1525cd6 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -24,133 +24,6 @@
+ reg = <0x80000000 0x10000000>; /* 256 MB */
+ };
+
+- am33xx_pinmux: pinmux@44e10800 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&matrix_keypad_s0 &volume_keys_s0 &clkout2_pin>;
+-
+- matrix_keypad_s0: matrix_keypad_s0 {
+- pinctrl-single,pins = <
+- 0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a5.gpio1_21 */
+- 0x58 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a6.gpio1_22 */
+- 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_a9.gpio1_25 */
+- 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_a10.gpio1_26 */
+- 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_a11.gpio1_27 */
+- >;
+- };
+-
+- volume_keys_s0: volume_keys_s0 {
+- pinctrl-single,pins = <
+- 0x150 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* spi0_sclk.gpio0_2 */
+- 0x154 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* spi0_d0.gpio0_3 */
+- >;
+- };
+-
+- i2c0_pins: pinmux_i2c0_pins {
+- pinctrl-single,pins = <
+- 0x188 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
+- 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
+- >;
+- };
+-
+- i2c1_pins: pinmux_i2c1_pins {
+- pinctrl-single,pins = <
+- 0x158 (PIN_INPUT_PULLUP | MUX_MODE2) /* spi0_d1.i2c1_sda */
+- 0x15c (PIN_INPUT_PULLUP | MUX_MODE2) /* spi0_cs0.i2c1_scl */
+- >;
+- };
+-
+- uart0_pins: pinmux_uart0_pins {
+- pinctrl-single,pins = <
+- 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
+- 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
+- >;
+- };
+-
+- clkout2_pin: pinmux_clkout2_pin {
+- pinctrl-single,pins = <
+- 0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
+- >;
+- };
+-
+- nandflash_pins_s0: nandflash_pins_s0 {
+- pinctrl-single,pins = <
+- 0x0 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */
+- 0x4 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */
+- 0x8 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */
+- 0xc (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */
+- 0x10 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */
+- 0x14 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */
+- 0x18 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */
+- 0x1c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */
+- 0x70 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */
+- 0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_30 */
+- 0x7c (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */
+- 0x90 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */
+- 0x94 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */
+- 0x98 (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */
+- 0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */
+- >;
+- };
+-
+- ecap0_pins: backlight_pins {
+- pinctrl-single,pins = <
+- 0x164 0x0 /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */
+- >;
+- };
+-
+- cpsw_default: cpsw_default {
+- pinctrl-single,pins = <
+- /* Slave 1 */
+- 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txen.rgmii1_tctl */
+- 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxdv.rgmii1_rctl */
+- 0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd3.rgmii1_td3 */
+- 0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd2.rgmii1_td2 */
+- 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd1.rgmii1_td1 */
+- 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd0.rgmii1_td0 */
+- 0x12c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txclk.rgmii1_tclk */
+- 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxclk.rgmii1_rclk */
+- 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd3.rgmii1_rd3 */
+- 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd2.rgmii1_rd2 */
+- 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd1.rgmii1_rd1 */
+- 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd0.rgmii1_rd0 */
+- >;
+- };
+-
+- cpsw_sleep: cpsw_sleep {
+- pinctrl-single,pins = <
+- /* Slave 1 reset value */
+- 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- >;
+- };
+-
+- davinci_mdio_default: davinci_mdio_default {
+- pinctrl-single,pins = <
+- /* MDIO */
+- 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
+- 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
+- >;
+- };
+-
+- davinci_mdio_sleep: davinci_mdio_sleep {
+- pinctrl-single,pins = <
+- /* MDIO reset value */
+- 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- >;
+- };
+- };
+-
+ ocp {
+ uart0: serial@44e09000 {
+ pinctrl-names = "default";
+@@ -405,6 +278,133 @@
+ };
+ };
+
++&am33xx_pinmux {
++ pinctrl-names = "default";
++ pinctrl-0 = <&matrix_keypad_s0 &volume_keys_s0 &clkout2_pin>;
++
++ matrix_keypad_s0: matrix_keypad_s0 {
++ pinctrl-single,pins = <
++ 0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a5.gpio1_21 */
++ 0x58 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a6.gpio1_22 */
++ 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_a9.gpio1_25 */
++ 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_a10.gpio1_26 */
++ 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_a11.gpio1_27 */
++ >;
++ };
++
++ volume_keys_s0: volume_keys_s0 {
++ pinctrl-single,pins = <
++ 0x150 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* spi0_sclk.gpio0_2 */
++ 0x154 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* spi0_d0.gpio0_3 */
++ >;
++ };
++
++ i2c0_pins: pinmux_i2c0_pins {
++ pinctrl-single,pins = <
++ 0x188 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
++ 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
++ >;
++ };
++
++ i2c1_pins: pinmux_i2c1_pins {
++ pinctrl-single,pins = <
++ 0x158 (PIN_INPUT_PULLUP | MUX_MODE2) /* spi0_d1.i2c1_sda */
++ 0x15c (PIN_INPUT_PULLUP | MUX_MODE2) /* spi0_cs0.i2c1_scl */
++ >;
++ };
++
++ uart0_pins: pinmux_uart0_pins {
++ pinctrl-single,pins = <
++ 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
++ 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
++ >;
++ };
++
++ clkout2_pin: pinmux_clkout2_pin {
++ pinctrl-single,pins = <
++ 0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
++ >;
++ };
++
++ nandflash_pins_s0: nandflash_pins_s0 {
++ pinctrl-single,pins = <
++ 0x0 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */
++ 0x4 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */
++ 0x8 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */
++ 0xc (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */
++ 0x10 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */
++ 0x14 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */
++ 0x18 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */
++ 0x1c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */
++ 0x70 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */
++ 0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_30 */
++ 0x7c (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */
++ 0x90 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */
++ 0x94 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */
++ 0x98 (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */
++ 0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */
++ >;
++ };
++
++ ecap0_pins: backlight_pins {
++ pinctrl-single,pins = <
++ 0x164 0x0 /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */
++ >;
++ };
++
++ cpsw_default: cpsw_default {
++ pinctrl-single,pins = <
++ /* Slave 1 */
++ 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txen.rgmii1_tctl */
++ 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxdv.rgmii1_rctl */
++ 0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd3.rgmii1_td3 */
++ 0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd2.rgmii1_td2 */
++ 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd1.rgmii1_td1 */
++ 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd0.rgmii1_td0 */
++ 0x12c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txclk.rgmii1_tclk */
++ 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxclk.rgmii1_rclk */
++ 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd3.rgmii1_rd3 */
++ 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd2.rgmii1_rd2 */
++ 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd1.rgmii1_rd1 */
++ 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd0.rgmii1_rd0 */
++ >;
++ };
++
++ cpsw_sleep: cpsw_sleep {
++ pinctrl-single,pins = <
++ /* Slave 1 reset value */
++ 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++
++ davinci_mdio_default: davinci_mdio_default {
++ pinctrl-single,pins = <
++ /* MDIO */
++ 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
++ 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
++ >;
++ };
++
++ davinci_mdio_sleep: davinci_mdio_sleep {
++ pinctrl-single,pins = <
++ /* MDIO reset value */
++ 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++};
++
+ #include "tps65910.dtsi"
+
+ &tps {
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index 55fd194..f0066fe 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -31,135 +31,6 @@
+ reg = <0x80000000 0x10000000>; /* 256 MB */
+ };
+
+- am33xx_pinmux: pinmux@44e10800 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&gpio_keys_s0 &clkout2_pin>;
+-
+- user_leds_s0: user_leds_s0 {
+- pinctrl-single,pins = <
+- 0x10 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad4.gpio1_4 */
+- 0x14 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad5.gpio1_5 */
+- 0x18 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad6.gpio1_6 */
+- 0x1c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad7.gpio1_7 */
+- >;
+- };
+-
+- gpio_keys_s0: gpio_keys_s0 {
+- pinctrl-single,pins = <
+- 0x94 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_oen_ren.gpio2_3 */
+- 0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_advn_ale.gpio2_2 */
+- 0x70 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_wait0.gpio0_30 */
+- 0x9c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ben0_cle.gpio2_5 */
+- >;
+- };
+-
+- i2c0_pins: pinmux_i2c0_pins {
+- pinctrl-single,pins = <
+- 0x188 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
+- 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
+- >;
+- };
+-
+- uart0_pins: pinmux_uart0_pins {
+- pinctrl-single,pins = <
+- 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
+- 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
+- >;
+- };
+-
+- clkout2_pin: pinmux_clkout2_pin {
+- pinctrl-single,pins = <
+- 0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
+- >;
+- };
+-
+- ecap2_pins: backlight_pins {
+- pinctrl-single,pins = <
+- 0x19c 0x4 /* mcasp0_ahclkr.ecap2_in_pwm2_out MODE4 */
+- >;
+- };
+-
+- cpsw_default: cpsw_default {
+- pinctrl-single,pins = <
+- /* Slave 1 */
+- 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txen.rgmii1_tctl */
+- 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxdv.rgmii1_rctl */
+- 0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd3.rgmii1_td3 */
+- 0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd2.rgmii1_td2 */
+- 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd1.rgmii1_td1 */
+- 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd0.rgmii1_td0 */
+- 0x12c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txclk.rgmii1_tclk */
+- 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxclk.rgmii1_rclk */
+- 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd3.rgmii1_rd3 */
+- 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd2.rgmii1_rd2 */
+- 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd1.rgmii1_rd1 */
+- 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd0.rgmii1_rd0 */
+-
+- /* Slave 2 */
+- 0x40 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a0.rgmii2_tctl */
+- 0x44 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a1.rgmii2_rctl */
+- 0x48 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a2.rgmii2_td3 */
+- 0x4c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a3.rgmii2_td2 */
+- 0x50 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a4.rgmii2_td1 */
+- 0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a5.rgmii2_td0 */
+- 0x58 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a6.rgmii2_tclk */
+- 0x5c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a7.rgmii2_rclk */
+- 0x60 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a8.rgmii2_rd3 */
+- 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a9.rgmii2_rd2 */
+- 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a10.rgmii2_rd1 */
+- 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a11.rgmii2_rd0 */
+- >;
+- };
+-
+- cpsw_sleep: cpsw_sleep {
+- pinctrl-single,pins = <
+- /* Slave 1 reset value */
+- 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+-
+- /* Slave 2 reset value*/
+- 0x40 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x44 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x48 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x4c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x50 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x54 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x58 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x5c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x60 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- >;
+- };
+-
+- davinci_mdio_default: davinci_mdio_default {
+- pinctrl-single,pins = <
+- /* MDIO */
+- 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
+- 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
+- >;
+- };
+-
+- davinci_mdio_sleep: davinci_mdio_sleep {
+- pinctrl-single,pins = <
+- /* MDIO reset value */
+- 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+- >;
+- };
+- };
+-
+ ocp {
+ uart0: serial@44e09000 {
+ pinctrl-names = "default";
+@@ -321,6 +192,135 @@
+ };
+ };
+
++&am33xx_pinmux {
++ pinctrl-names = "default";
++ pinctrl-0 = <&gpio_keys_s0 &clkout2_pin>;
++
++ user_leds_s0: user_leds_s0 {
++ pinctrl-single,pins = <
++ 0x10 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad4.gpio1_4 */
++ 0x14 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad5.gpio1_5 */
++ 0x18 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad6.gpio1_6 */
++ 0x1c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad7.gpio1_7 */
++ >;
++ };
++
++ gpio_keys_s0: gpio_keys_s0 {
++ pinctrl-single,pins = <
++ 0x94 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_oen_ren.gpio2_3 */
++ 0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_advn_ale.gpio2_2 */
++ 0x70 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_wait0.gpio0_30 */
++ 0x9c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ben0_cle.gpio2_5 */
++ >;
++ };
++
++ i2c0_pins: pinmux_i2c0_pins {
++ pinctrl-single,pins = <
++ 0x188 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
++ 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
++ >;
++ };
++
++ uart0_pins: pinmux_uart0_pins {
++ pinctrl-single,pins = <
++ 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
++ 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
++ >;
++ };
++
++ clkout2_pin: pinmux_clkout2_pin {
++ pinctrl-single,pins = <
++ 0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
++ >;
++ };
++
++ ecap2_pins: backlight_pins {
++ pinctrl-single,pins = <
++ 0x19c 0x4 /* mcasp0_ahclkr.ecap2_in_pwm2_out MODE4 */
++ >;
++ };
++
++ cpsw_default: cpsw_default {
++ pinctrl-single,pins = <
++ /* Slave 1 */
++ 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txen.rgmii1_tctl */
++ 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxdv.rgmii1_rctl */
++ 0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd3.rgmii1_td3 */
++ 0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd2.rgmii1_td2 */
++ 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd1.rgmii1_td1 */
++ 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd0.rgmii1_td0 */
++ 0x12c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txclk.rgmii1_tclk */
++ 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxclk.rgmii1_rclk */
++ 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd3.rgmii1_rd3 */
++ 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd2.rgmii1_rd2 */
++ 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd1.rgmii1_rd1 */
++ 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd0.rgmii1_rd0 */
++
++ /* Slave 2 */
++ 0x40 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a0.rgmii2_tctl */
++ 0x44 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a1.rgmii2_rctl */
++ 0x48 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a2.rgmii2_td3 */
++ 0x4c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a3.rgmii2_td2 */
++ 0x50 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a4.rgmii2_td1 */
++ 0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a5.rgmii2_td0 */
++ 0x58 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a6.rgmii2_tclk */
++ 0x5c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a7.rgmii2_rclk */
++ 0x60 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a8.rgmii2_rd3 */
++ 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a9.rgmii2_rd2 */
++ 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a10.rgmii2_rd1 */
++ 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a11.rgmii2_rd0 */
++ >;
++ };
++
++ cpsw_sleep: cpsw_sleep {
++ pinctrl-single,pins = <
++ /* Slave 1 reset value */
++ 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++
++ /* Slave 2 reset value*/
++ 0x40 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x44 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x48 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x4c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x50 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x54 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x58 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x5c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x60 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++
++ davinci_mdio_default: davinci_mdio_default {
++ pinctrl-single,pins = <
++ /* MDIO */
++ 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
++ 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
++ >;
++ };
++
++ davinci_mdio_sleep: davinci_mdio_sleep {
++ pinctrl-single,pins = <
++ /* MDIO reset value */
++ 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++};
++
+ #include "tps65910.dtsi"
+
+ &tps {
diff --git a/patches/linux-3.12/0230-ARM-dts-AM33XX-don-t-redefine-OCP-bus-and-device-nod.patch b/patches/linux-3.12/0230-ARM-dts-AM33XX-don-t-redefine-OCP-bus-and-device-nod.patch
new file mode 100644
index 0000000..8561bf0
--- /dev/null
+++ b/patches/linux-3.12/0230-ARM-dts-AM33XX-don-t-redefine-OCP-bus-and-device-nod.patch
@@ -0,0 +1,703 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Fri, 20 Sep 2013 17:42:19 +0200
+Subject: [PATCH] ARM: dts: AM33XX: don't redefine OCP bus and device nodes
+
+The On Chip Peripherals (OCP) device node is a simplified
+representation of the AM33XX SoC interconnect. An OCP dev
+node is already defined in the am33xx.dtsi Device Tree
+source file included by am33xx based boards so there is
+no need to redefine this on each board DT file.
+
+Also, the OCP and IP modules directly connected to it are SoC
+internal details that is better to keep outside of board files.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 100 ++++----
+ arch/arm/boot/dts/am335x-evm.dts | 380 +++++++++++++++---------------
+ arch/arm/boot/dts/am335x-evmsk.dts | 148 ++++++------
+ 3 files changed, 311 insertions(+), 317 deletions(-)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index 29799ac..ff5c3ca 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -21,57 +21,6 @@
+ reg = <0x80000000 0x10000000>; /* 256 MB */
+ };
+
+- ocp {
+- uart0: serial@44e09000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&uart0_pins>;
+-
+- status = "okay";
+- };
+-
+- musb: usb@47400000 {
+- status = "okay";
+-
+- control@44e10000 {
+- status = "okay";
+- };
+-
+- usb-phy@47401300 {
+- status = "okay";
+- };
+-
+- usb-phy@47401b00 {
+- status = "okay";
+- };
+-
+- usb@47401000 {
+- status = "okay";
+- };
+-
+- usb@47401800 {
+- status = "okay";
+- dr_mode = "host";
+- };
+-
+- dma-controller@07402000 {
+- status = "okay";
+- };
+- };
+-
+- i2c0: i2c@44e0b000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&i2c0_pins>;
+-
+- status = "okay";
+- clock-frequency = <400000>;
+-
+- tps: tps@24 {
+- reg = <0x24>;
+- };
+-
+- };
+- };
+-
+ leds {
+ pinctrl-names = "default";
+ pinctrl-0 = <&user_leds_s0>;
+@@ -217,6 +166,55 @@
+ };
+ };
+
++&uart0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart0_pins>;
++
++ status = "okay";
++};
++
++&usb {
++ status = "okay";
++
++ control@44e10000 {
++ status = "okay";
++ };
++
++ usb-phy@47401300 {
++ status = "okay";
++ };
++
++ usb-phy@47401b00 {
++ status = "okay";
++ };
++
++ usb@47401000 {
++ status = "okay";
++ };
++
++ usb@47401800 {
++ status = "okay";
++ dr_mode = "host";
++ };
++
++ dma-controller@07402000 {
++ status = "okay";
++ };
++};
++
++&i2c0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins>;
++
++ status = "okay";
++ clock-frequency = <400000>;
++
++ tps: tps@24 {
++ reg = <0x24>;
++ };
++
++};
++
+ /include/ "tps65217.dtsi"
+
+ &tps {
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index 1525cd6..23b0a3e 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -24,197 +24,6 @@
+ reg = <0x80000000 0x10000000>; /* 256 MB */
+ };
+
+- ocp {
+- uart0: serial@44e09000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&uart0_pins>;
+-
+- status = "okay";
+- };
+-
+- i2c0: i2c@44e0b000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&i2c0_pins>;
+-
+- status = "okay";
+- clock-frequency = <400000>;
+-
+- tps: tps@2d {
+- reg = <0x2d>;
+- };
+- };
+-
+- musb: usb@47400000 {
+- status = "okay";
+-
+- control@44e10000 {
+- status = "okay";
+- };
+-
+- usb-phy@47401300 {
+- status = "okay";
+- };
+-
+- usb-phy@47401b00 {
+- status = "okay";
+- };
+-
+- usb@47401000 {
+- status = "okay";
+- };
+-
+- usb@47401800 {
+- status = "okay";
+- dr_mode = "host";
+- };
+-
+- dma-controller@07402000 {
+- status = "okay";
+- };
+- };
+-
+- i2c1: i2c@4802a000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&i2c1_pins>;
+-
+- status = "okay";
+- clock-frequency = <100000>;
+-
+- lis331dlh: lis331dlh@18 {
+- compatible = "st,lis331dlh", "st,lis3lv02d";
+- reg = <0x18>;
+- Vdd-supply = <&lis3_reg>;
+- Vdd_IO-supply = <&lis3_reg>;
+-
+- st,click-single-x;
+- st,click-single-y;
+- st,click-single-z;
+- st,click-thresh-x = <10>;
+- st,click-thresh-y = <10>;
+- st,click-thresh-z = <10>;
+- st,irq1-click;
+- st,irq2-click;
+- st,wakeup-x-lo;
+- st,wakeup-x-hi;
+- st,wakeup-y-lo;
+- st,wakeup-y-hi;
+- st,wakeup-z-lo;
+- st,wakeup-z-hi;
+- st,min-limit-x = <120>;
+- st,min-limit-y = <120>;
+- st,min-limit-z = <140>;
+- st,max-limit-x = <550>;
+- st,max-limit-y = <550>;
+- st,max-limit-z = <750>;
+- };
+-
+- tsl2550: tsl2550@39 {
+- compatible = "taos,tsl2550";
+- reg = <0x39>;
+- };
+-
+- tmp275: tmp275@48 {
+- compatible = "ti,tmp275";
+- reg = <0x48>;
+- };
+- };
+-
+- elm: elm@48080000 {
+- status = "okay";
+- };
+-
+- epwmss0: epwmss@48300000 {
+- status = "okay";
+-
+- ecap0: ecap@48300100 {
+- status = "okay";
+- pinctrl-names = "default";
+- pinctrl-0 = <&ecap0_pins>;
+- };
+- };
+-
+- gpmc: gpmc@50000000 {
+- status = "okay";
+- pinctrl-names = "default";
+- pinctrl-0 = <&nandflash_pins_s0>;
+- ranges = <0 0 0x08000000 0x10000000>; /* CS0: NAND */
+- nand@0,0 {
+- reg = <0 0 0>; /* CS0, offset 0 */
+- nand-bus-width = <8>;
+- ti,nand-ecc-opt = "bch8";
+- gpmc,device-nand = "true";
+- gpmc,device-width = <1>;
+- gpmc,sync-clk-ps = <0>;
+- gpmc,cs-on-ns = <0>;
+- gpmc,cs-rd-off-ns = <44>;
+- gpmc,cs-wr-off-ns = <44>;
+- gpmc,adv-on-ns = <6>;
+- gpmc,adv-rd-off-ns = <34>;
+- gpmc,adv-wr-off-ns = <44>;
+- gpmc,we-on-ns = <0>;
+- gpmc,we-off-ns = <40>;
+- gpmc,oe-on-ns = <0>;
+- gpmc,oe-off-ns = <54>;
+- gpmc,access-ns = <64>;
+- gpmc,rd-cycle-ns = <82>;
+- gpmc,wr-cycle-ns = <82>;
+- gpmc,wait-on-read = "true";
+- gpmc,wait-on-write = "true";
+- gpmc,bus-turnaround-ns = <0>;
+- gpmc,cycle2cycle-delay-ns = <0>;
+- gpmc,clk-activation-ns = <0>;
+- gpmc,wait-monitoring-ns = <0>;
+- gpmc,wr-access-ns = <40>;
+- gpmc,wr-data-mux-bus-ns = <0>;
+-
+- #address-cells = <1>;
+- #size-cells = <1>;
+- elm_id = <&elm>;
+-
+- /* MTD partition table */
+- partition@0 {
+- label = "SPL1";
+- reg = <0x00000000 0x000020000>;
+- };
+-
+- partition@1 {
+- label = "SPL2";
+- reg = <0x00020000 0x00020000>;
+- };
+-
+- partition@2 {
+- label = "SPL3";
+- reg = <0x00040000 0x00020000>;
+- };
+-
+- partition@3 {
+- label = "SPL4";
+- reg = <0x00060000 0x00020000>;
+- };
+-
+- partition@4 {
+- label = "U-boot";
+- reg = <0x00080000 0x001e0000>;
+- };
+-
+- partition@5 {
+- label = "environment";
+- reg = <0x00260000 0x00020000>;
+- };
+-
+- partition@6 {
+- label = "Kernel";
+- reg = <0x00280000 0x00500000>;
+- };
+-
+- partition@7 {
+- label = "File-System";
+- reg = <0x00780000 0x0F880000>;
+- };
+- };
+- };
+- };
+-
+ vbat: fixedregulator@0 {
+ compatible = "regulator-fixed";
+ regulator-name = "vbat";
+@@ -405,6 +214,195 @@
+ };
+ };
+
++&uart0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart0_pins>;
++
++ status = "okay";
++};
++
++&i2c0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins>;
++
++ status = "okay";
++ clock-frequency = <400000>;
++
++ tps: tps@2d {
++ reg = <0x2d>;
++ };
++};
++
++&usb {
++ status = "okay";
++
++ control@44e10000 {
++ status = "okay";
++ };
++
++ usb-phy@47401300 {
++ status = "okay";
++ };
++
++ usb-phy@47401b00 {
++ status = "okay";
++ };
++
++ usb@47401000 {
++ status = "okay";
++ };
++
++ usb@47401800 {
++ status = "okay";
++ dr_mode = "host";
++ };
++
++ dma-controller@07402000 {
++ status = "okay";
++ };
++};
++
++&i2c1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c1_pins>;
++
++ status = "okay";
++ clock-frequency = <100000>;
++
++ lis331dlh: lis331dlh@18 {
++ compatible = "st,lis331dlh", "st,lis3lv02d";
++ reg = <0x18>;
++ Vdd-supply = <&lis3_reg>;
++ Vdd_IO-supply = <&lis3_reg>;
++
++ st,click-single-x;
++ st,click-single-y;
++ st,click-single-z;
++ st,click-thresh-x = <10>;
++ st,click-thresh-y = <10>;
++ st,click-thresh-z = <10>;
++ st,irq1-click;
++ st,irq2-click;
++ st,wakeup-x-lo;
++ st,wakeup-x-hi;
++ st,wakeup-y-lo;
++ st,wakeup-y-hi;
++ st,wakeup-z-lo;
++ st,wakeup-z-hi;
++ st,min-limit-x = <120>;
++ st,min-limit-y = <120>;
++ st,min-limit-z = <140>;
++ st,max-limit-x = <550>;
++ st,max-limit-y = <550>;
++ st,max-limit-z = <750>;
++ };
++
++ tsl2550: tsl2550@39 {
++ compatible = "taos,tsl2550";
++ reg = <0x39>;
++ };
++
++ tmp275: tmp275@48 {
++ compatible = "ti,tmp275";
++ reg = <0x48>;
++ };
++};
++
++&elm {
++ status = "okay";
++};
++
++&epwmss0 {
++ status = "okay";
++
++ ecap0: ecap@48300100 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&ecap0_pins>;
++ };
++};
++
++&gpmc {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&nandflash_pins_s0>;
++ ranges = <0 0 0x08000000 0x10000000>; /* CS0: NAND */
++ nand@0,0 {
++ reg = <0 0 0>; /* CS0, offset 0 */
++ nand-bus-width = <8>;
++ ti,nand-ecc-opt = "bch8";
++ gpmc,device-nand = "true";
++ gpmc,device-width = <1>;
++ gpmc,sync-clk-ps = <0>;
++ gpmc,cs-on-ns = <0>;
++ gpmc,cs-rd-off-ns = <44>;
++ gpmc,cs-wr-off-ns = <44>;
++ gpmc,adv-on-ns = <6>;
++ gpmc,adv-rd-off-ns = <34>;
++ gpmc,adv-wr-off-ns = <44>;
++ gpmc,we-on-ns = <0>;
++ gpmc,we-off-ns = <40>;
++ gpmc,oe-on-ns = <0>;
++ gpmc,oe-off-ns = <54>;
++ gpmc,access-ns = <64>;
++ gpmc,rd-cycle-ns = <82>;
++ gpmc,wr-cycle-ns = <82>;
++ gpmc,wait-on-read = "true";
++ gpmc,wait-on-write = "true";
++ gpmc,bus-turnaround-ns = <0>;
++ gpmc,cycle2cycle-delay-ns = <0>;
++ gpmc,clk-activation-ns = <0>;
++ gpmc,wait-monitoring-ns = <0>;
++ gpmc,wr-access-ns = <40>;
++ gpmc,wr-data-mux-bus-ns = <0>;
++
++ #address-cells = <1>;
++ #size-cells = <1>;
++ elm_id = <&elm>;
++
++ /* MTD partition table */
++ partition@0 {
++ label = "SPL1";
++ reg = <0x00000000 0x000020000>;
++ };
++
++ partition@1 {
++ label = "SPL2";
++ reg = <0x00020000 0x00020000>;
++ };
++
++ partition@2 {
++ label = "SPL3";
++ reg = <0x00040000 0x00020000>;
++ };
++
++ partition@3 {
++ label = "SPL4";
++ reg = <0x00060000 0x00020000>;
++ };
++
++ partition@4 {
++ label = "U-boot";
++ reg = <0x00080000 0x001e0000>;
++ };
++
++ partition@5 {
++ label = "environment";
++ reg = <0x00260000 0x00020000>;
++ };
++
++ partition@6 {
++ label = "Kernel";
++ reg = <0x00280000 0x00500000>;
++ };
++
++ partition@7 {
++ label = "File-System";
++ reg = <0x00780000 0x0F880000>;
++ };
++ };
++};
++
+ #include "tps65910.dtsi"
+
+ &tps {
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index f0066fe..bc93895 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -31,81 +31,6 @@
+ reg = <0x80000000 0x10000000>; /* 256 MB */
+ };
+
+- ocp {
+- uart0: serial@44e09000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&uart0_pins>;
+-
+- status = "okay";
+- };
+-
+- i2c0: i2c@44e0b000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&i2c0_pins>;
+-
+- status = "okay";
+- clock-frequency = <400000>;
+-
+- tps: tps@2d {
+- reg = <0x2d>;
+- };
+-
+- lis331dlh: lis331dlh@18 {
+- compatible = "st,lis331dlh", "st,lis3lv02d";
+- reg = <0x18>;
+- Vdd-supply = <&lis3_reg>;
+- Vdd_IO-supply = <&lis3_reg>;
+-
+- st,click-single-x;
+- st,click-single-y;
+- st,click-single-z;
+- st,click-thresh-x = <10>;
+- st,click-thresh-y = <10>;
+- st,click-thresh-z = <10>;
+- st,irq1-click;
+- st,irq2-click;
+- st,wakeup-x-lo;
+- st,wakeup-x-hi;
+- st,wakeup-y-lo;
+- st,wakeup-y-hi;
+- st,wakeup-z-lo;
+- st,wakeup-z-hi;
+- st,min-limit-x = <120>;
+- st,min-limit-y = <120>;
+- st,min-limit-z = <140>;
+- st,max-limit-x = <550>;
+- st,max-limit-y = <550>;
+- st,max-limit-z = <750>;
+- };
+- };
+-
+- musb: usb@47400000 {
+- status = "okay";
+-
+- control@44e10000 {
+- status = "okay";
+- };
+-
+- usb-phy@47401300 {
+- status = "okay";
+- };
+-
+- usb@47401000 {
+- status = "okay";
+- };
+- };
+-
+- epwmss2: epwmss@48304000 {
+- status = "okay";
+-
+- ecap2: ecap@48304100 {
+- status = "okay";
+- pinctrl-names = "default";
+- pinctrl-0 = <&ecap2_pins>;
+- };
+- };
+- };
+-
+ vbat: fixedregulator@0 {
+ compatible = "regulator-fixed";
+ regulator-name = "vbat";
+@@ -321,6 +246,79 @@
+ };
+ };
+
++&uart0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart0_pins>;
++
++ status = "okay";
++};
++
++&i2c0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins>;
++
++ status = "okay";
++ clock-frequency = <400000>;
++
++ tps: tps@2d {
++ reg = <0x2d>;
++ };
++
++ lis331dlh: lis331dlh@18 {
++ compatible = "st,lis331dlh", "st,lis3lv02d";
++ reg = <0x18>;
++ Vdd-supply = <&lis3_reg>;
++ Vdd_IO-supply = <&lis3_reg>;
++
++ st,click-single-x;
++ st,click-single-y;
++ st,click-single-z;
++ st,click-thresh-x = <10>;
++ st,click-thresh-y = <10>;
++ st,click-thresh-z = <10>;
++ st,irq1-click;
++ st,irq2-click;
++ st,wakeup-x-lo;
++ st,wakeup-x-hi;
++ st,wakeup-y-lo;
++ st,wakeup-y-hi;
++ st,wakeup-z-lo;
++ st,wakeup-z-hi;
++ st,min-limit-x = <120>;
++ st,min-limit-y = <120>;
++ st,min-limit-z = <140>;
++ st,max-limit-x = <550>;
++ st,max-limit-y = <550>;
++ st,max-limit-z = <750>;
++ };
++};
++
++&usb {
++ status = "okay";
++
++ control@44e10000 {
++ status = "okay";
++ };
++
++ usb-phy@47401300 {
++ status = "okay";
++ };
++
++ usb@47401000 {
++ status = "okay";
++ };
++};
++
++&epwmss2 {
++ status = "okay";
++
++ ecap2: ecap@48304100 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&ecap2_pins>;
++ };
++};
++
+ #include "tps65910.dtsi"
+
+ &tps {
diff --git a/patches/linux-3.12/0231-ARM-dts-omap3-devkit8000-fix-a-typo-in-GMPC-node.patch b/patches/linux-3.12/0231-ARM-dts-omap3-devkit8000-fix-a-typo-in-GMPC-node.patch
new file mode 100644
index 0000000..522c3de
--- /dev/null
+++ b/patches/linux-3.12/0231-ARM-dts-omap3-devkit8000-fix-a-typo-in-GMPC-node.patch
@@ -0,0 +1,26 @@
+From: Aaro Koskinen <aaro.koskinen@iki.fi>
+Date: Sat, 21 Sep 2013 02:40:14 +0300
+Subject: [PATCH] ARM: dts: omap3-devkit8000: fix a typo in GMPC node
+
+"gpmc,sync-clki-ps" is not defined/documented, it should be
+"gpmc,sync-clk-ps" instead.
+
+Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-devkit8000.dts | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap3-devkit8000.dts b/arch/arm/boot/dts/omap3-devkit8000.dts
+index 7ef2827..4665421 100644
+--- a/arch/arm/boot/dts/omap3-devkit8000.dts
++++ b/arch/arm/boot/dts/omap3-devkit8000.dts
+@@ -125,7 +125,7 @@
+ nand-bus-width = <16>;
+
+ gpmc,device-nand;
+- gpmc,sync-clki-ps = <0>;
++ gpmc,sync-clk-ps = <0>;
+ gpmc,cs-on-ns = <0>;
+ gpmc,cs-rd-off-ns = <44>;
+ gpmc,cs-wr-off-ns = <44>;
diff --git a/patches/linux-3.12/0232-ARM-dts-DRA7-Add-TPS659038-PMIC-nodes.patch b/patches/linux-3.12/0232-ARM-dts-DRA7-Add-TPS659038-PMIC-nodes.patch
new file mode 100644
index 0000000..1c51029
--- /dev/null
+++ b/patches/linux-3.12/0232-ARM-dts-DRA7-Add-TPS659038-PMIC-nodes.patch
@@ -0,0 +1,146 @@
+From: Keerthy <j-keerthy@ti.com>
+Date: Mon, 26 Aug 2013 11:06:51 +0530
+Subject: [PATCH] ARM: dts: DRA7: Add TPS659038 PMIC nodes
+
+Add DT nodes for TPS659038 PMIC on DRA7 boards.
+
+It is based on top of:
+http://comments.gmane.org/gmane.linux.ports.arm.omap/102459.
+
+Documentation:
+- Documentation/devicetree/bindings/mfd/palmas.txt
+- Documentation/devicetree/bindings/regulator/palmas-pmic.txt
+
+Boot Tested on DRA7 d1 Board.
+
+Signed-off-by: Keerthy <j-keerthy@ti.com>
+Acked-by: Nishanth Menon <nm@ti.com>
+[bcousson@baylibre.com: Fix indentation and changelog]
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/dra7-evm.dts | 112 +++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 112 insertions(+)
+
+diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
+index ca5dab2..fbbe406 100644
+--- a/arch/arm/boot/dts/dra7-evm.dts
++++ b/arch/arm/boot/dts/dra7-evm.dts
+@@ -93,6 +93,118 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_pins>;
+ clock-frequency = <400000>;
++
++ tps659038: tps659038@58 {
++ compatible = "ti,tps659038";
++ reg = <0x58>;
++
++ tps659038_pmic {
++ compatible = "ti,tps659038-pmic";
++
++ regulators {
++ smps123_reg: smps123 {
++ /* VDD_MPU */
++ regulator-name = "smps123";
++ regulator-min-microvolt = < 850000>;
++ regulator-max-microvolt = <1250000>;
++ regulator-always-on;
++ regulator-boot-on;
++ };
++
++ smps45_reg: smps45 {
++ /* VDD_DSPEVE */
++ regulator-name = "smps45";
++ regulator-min-microvolt = < 850000>;
++ regulator-max-microvolt = <1150000>;
++ regulator-boot-on;
++ };
++
++ smps6_reg: smps6 {
++ /* VDD_GPU - over VDD_SMPS6 */
++ regulator-name = "smps6";
++ regulator-min-microvolt = <850000>;
++ regulator-max-microvolt = <12500000>;
++ regulator-boot-on;
++ };
++
++ smps7_reg: smps7 {
++ /* CORE_VDD */
++ regulator-name = "smps7";
++ regulator-min-microvolt = <850000>;
++ regulator-max-microvolt = <1030000>;
++ regulator-always-on;
++ regulator-boot-on;
++ };
++
++ smps8_reg: smps8 {
++ /* VDD_IVAHD */
++ regulator-name = "smps8";
++ regulator-min-microvolt = < 850000>;
++ regulator-max-microvolt = <1250000>;
++ regulator-boot-on;
++ };
++
++ smps9_reg: smps9 {
++ /* VDDS1V8 */
++ regulator-name = "smps9";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-always-on;
++ regulator-boot-on;
++ };
++
++ ldo1_reg: ldo1 {
++ /* LDO1_OUT --> SDIO */
++ regulator-name = "ldo1";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-boot-on;
++ };
++
++ ldo2_reg: ldo2 {
++ /* VDD_RTCIO */
++ /* LDO2 -> VDDSHV5, LDO2 also goes to CAN_PHY_3V3 */
++ regulator-name = "ldo2";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-boot-on;
++ };
++
++ ldo3_reg: ldo3 {
++ /* VDDA_1V8_PHY */
++ regulator-name = "ldo3";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-boot-on;
++ };
++
++ ldo9_reg: ldo9 {
++ /* VDD_RTC */
++ regulator-name = "ldo9";
++ regulator-min-microvolt = <1050000>;
++ regulator-max-microvolt = <1050000>;
++ regulator-boot-on;
++ };
++
++ ldoln_reg: ldoln {
++ /* VDDA_1V8_PLL */
++ regulator-name = "ldoln";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-always-on;
++ regulator-boot-on;
++ };
++
++ ldousb_reg: ldousb {
++ /* VDDA_3V_USB: VDDA_USBHS33 */
++ regulator-name = "ldousb";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-boot-on;
++ };
++ };
++ };
++ };
+ };
+
+ &i2c2 {
diff --git a/patches/linux-3.12/0233-ARM-dts-AM33XX-add-ethernet-alias-s-for-am33xx.patch b/patches/linux-3.12/0233-ARM-dts-AM33XX-add-ethernet-alias-s-for-am33xx.patch
new file mode 100644
index 0000000..892dd4f
--- /dev/null
+++ b/patches/linux-3.12/0233-ARM-dts-AM33XX-add-ethernet-alias-s-for-am33xx.patch
@@ -0,0 +1,30 @@
+From: Dan Murphy <dmurphy@ti.com>
+Date: Wed, 2 Oct 2013 12:58:33 -0500
+Subject: [PATCH] ARM: dts: AM33XX: add ethernet alias's for am33xx
+
+Set the alias for ethernet0 and ethernet1 so that uBoot
+can set the MAC address appropriately.
+
+Currently u-boot cannot find the alias and there for does
+not set the MAC address.
+
+Signed-off-by: Dan Murphy <dmurphy@ti.com>
+Tested-by: Mugunthan V N <mugunthanvnm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 179b0bc..5704c25 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -30,6 +30,8 @@
+ usb1 = &usb1;
+ phy0 = &usb0_phy;
+ phy1 = &usb1_phy;
++ ethernet0 = &cpsw_emac0;
++ ethernet1 = &cpsw_emac1;
+ };
+
+ cpus {
diff --git a/patches/linux-3.12/0234-ARM-dts-omap3-beagle-Use-reset-gpios-for-hsusb2_rese.patch b/patches/linux-3.12/0234-ARM-dts-omap3-beagle-Use-reset-gpios-for-hsusb2_rese.patch
new file mode 100644
index 0000000..f7865a8
--- /dev/null
+++ b/patches/linux-3.12/0234-ARM-dts-omap3-beagle-Use-reset-gpios-for-hsusb2_rese.patch
@@ -0,0 +1,44 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Tue, 24 Sep 2013 11:53:51 +0300
+Subject: [PATCH] ARM: dts: omap3-beagle: Use reset-gpios for hsusb2_reset
+
+We no longer need to model the RESET line as a regulator since
+the USB phy-nop driver accepts "reset-gpios" property.
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-beagle.dts | 13 +------------
+ 1 file changed, 1 insertion(+), 12 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts
+index 2e29e81..1237822 100644
+--- a/arch/arm/boot/dts/omap3-beagle.dts
++++ b/arch/arm/boot/dts/omap3-beagle.dts
+@@ -44,17 +44,6 @@
+ };
+ };
+
+- /* HS USB Port 2 RESET */
+- hsusb2_reset: hsusb2_reset_reg {
+- compatible = "regulator-fixed";
+- regulator-name = "hsusb2_reset";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- gpio = <&gpio5 19 0>; /* gpio_147 */
+- startup-delay-us = <70000>;
+- enable-active-high;
+- };
+-
+ /* HS USB Port 2 Power */
+ hsusb2_power: hsusb2_power_reg {
+ compatible = "regulator-fixed";
+@@ -68,7 +57,7 @@
+ /* HS USB Host PHY on PORT 2 */
+ hsusb2_phy: hsusb2_phy {
+ compatible = "usb-nop-xceiv";
+- reset-supply = <&hsusb2_reset>;
++ reset-gpios = <&gpio5 19 GPIO_ACTIVE_LOW>; /* gpio_147 */
+ vcc-supply = <&hsusb2_power>;
+ };
+
diff --git a/patches/linux-3.12/0235-ARM-dts-omap4-panda-Use-reset-gpios-for-hsusb1_reset.patch b/patches/linux-3.12/0235-ARM-dts-omap4-panda-Use-reset-gpios-for-hsusb1_reset.patch
new file mode 100644
index 0000000..8d180ac
--- /dev/null
+++ b/patches/linux-3.12/0235-ARM-dts-omap4-panda-Use-reset-gpios-for-hsusb1_reset.patch
@@ -0,0 +1,49 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Tue, 24 Sep 2013 11:53:52 +0300
+Subject: [PATCH] ARM: dts: omap4-panda: Use reset-gpios for hsusb1_reset
+
+We no longer need to model the RESET line as a regulator since
+the USB phy-nop driver accepts "reset-gpios" property.
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap4-panda-common.dtsi | 18 +-----------------
+ 1 file changed, 1 insertion(+), 17 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap4-panda-common.dtsi b/arch/arm/boot/dts/omap4-panda-common.dtsi
+index 43b7661..3e6801c 100644
+--- a/arch/arm/boot/dts/omap4-panda-common.dtsi
++++ b/arch/arm/boot/dts/omap4-panda-common.dtsi
+@@ -60,22 +60,6 @@
+ "AFMR", "Line In";
+ };
+
+- /*
+- * Temp hack: Need to be replaced with the proper gpio-controlled
+- * reset driver as soon it will be merged.
+- * http://thread.gmane.org/gmane.linux.drivers.devicetree/36830
+- */
+- /* HS USB Port 1 RESET */
+- hsusb1_reset: hsusb1_reset_reg {
+- compatible = "regulator-fixed";
+- regulator-name = "hsusb1_reset";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- gpio = <&gpio2 30 0>; /* gpio_62 */
+- startup-delay-us = <70000>;
+- enable-active-high;
+- };
+-
+ /* HS USB Port 1 Power */
+ hsusb1_power: hsusb1_power_reg {
+ compatible = "regulator-fixed";
+@@ -97,7 +81,7 @@
+ /* HS USB Host PHY on PORT 1 */
+ hsusb1_phy: hsusb1_phy {
+ compatible = "usb-nop-xceiv";
+- reset-supply = <&hsusb1_reset>;
++ reset-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>; /* gpio_62 */
+ vcc-supply = <&hsusb1_power>;
+ /**
+ * FIXME:
diff --git a/patches/linux-3.12/0236-ARM-dts-omap5-uevm-Use-reset-gpios-for-hsusb2-3_rese.patch b/patches/linux-3.12/0236-ARM-dts-omap5-uevm-Use-reset-gpios-for-hsusb2-3_rese.patch
new file mode 100644
index 0000000..f75008a
--- /dev/null
+++ b/patches/linux-3.12/0236-ARM-dts-omap5-uevm-Use-reset-gpios-for-hsusb2-3_rese.patch
@@ -0,0 +1,63 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Tue, 24 Sep 2013 11:53:53 +0300
+Subject: [PATCH] ARM: dts: omap5-uevm: Use reset-gpios for hsusb2/3_reset
+
+We no longer need to model the RESET line as a regulator since
+the USB phy-nop driver accepts "reset-gpios" property.
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 26 ++------------------------
+ 1 file changed, 2 insertions(+), 24 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index da25a14..748f6bf 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -27,21 +27,10 @@
+ regulator-max-microvolt = <3000000>;
+ };
+
+- /* HS USB Port 2 RESET */
+- hsusb2_reset: hsusb2_reset_reg {
+- compatible = "regulator-fixed";
+- regulator-name = "hsusb2_reset";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- gpio = <&gpio3 16 GPIO_ACTIVE_HIGH>; /* gpio3_80 HUB_NRESET */
+- startup-delay-us = <70000>;
+- enable-active-high;
+- };
+-
+ /* HS USB Host PHY on PORT 2 */
+ hsusb2_phy: hsusb2_phy {
+ compatible = "usb-nop-xceiv";
+- reset-supply = <&hsusb2_reset>;
++ reset-gpios = <&gpio3 16 GPIO_ACTIVE_LOW>; /* gpio3_80 HUB_NRESET */
+ /**
+ * FIXME
+ * Put the right clock phandle here when available
+@@ -51,21 +40,10 @@
+ clock-frequency = <19200000>;
+ };
+
+- /* HS USB Port 3 RESET */
+- hsusb3_reset: hsusb3_reset_reg {
+- compatible = "regulator-fixed";
+- regulator-name = "hsusb3_reset";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- gpio = <&gpio3 15 GPIO_ACTIVE_HIGH>; /* gpio3_79 ETH_NRESET */
+- startup-delay-us = <70000>;
+- enable-active-high;
+- };
+-
+ /* HS USB Host PHY on PORT 3 */
+ hsusb3_phy: hsusb3_phy {
+ compatible = "usb-nop-xceiv";
+- reset-supply = <&hsusb3_reset>;
++ reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; /* gpio3_79 ETH_NRESET */
+ };
+
+ leds {
diff --git a/patches/linux-3.12/0237-ARM-dts-omap3-beagle-xm-Add-USB-Host-support.patch b/patches/linux-3.12/0237-ARM-dts-omap3-beagle-xm-Add-USB-Host-support.patch
new file mode 100644
index 0000000..1de1d4c
--- /dev/null
+++ b/patches/linux-3.12/0237-ARM-dts-omap3-beagle-xm-Add-USB-Host-support.patch
@@ -0,0 +1,111 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Tue, 24 Sep 2013 11:53:55 +0300
+Subject: [PATCH] ARM: dts: omap3-beagle-xm: Add USB Host support
+
+Provide RESET GPIO and Power regulator for the USB PHY,
+the USB Host port mode and the PHY device for the controller.
+Also provide pin multiplexer information for USB host pins.
+
+We also relocate omap3_pmx_core pin definations so that they
+are close to omap3_pmx_wkup pin definations.
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-beagle-xm.dts | 65 ++++++++++++++++++++++++++++++-----
+ 1 file changed, 56 insertions(+), 9 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap3-beagle-xm.dts b/arch/arm/boot/dts/omap3-beagle-xm.dts
+index 2816bf6..2e88095 100644
+--- a/arch/arm/boot/dts/omap3-beagle-xm.dts
++++ b/arch/arm/boot/dts/omap3-beagle-xm.dts
+@@ -69,6 +69,23 @@
+ };
+
+ };
++
++ /* HS USB Port 2 Power */
++ hsusb2_power: hsusb2_power_reg {
++ compatible = "regulator-fixed";
++ regulator-name = "hsusb2_vbus";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ gpio = <&twl_gpio 18 0>; /* GPIO LEDA */
++ startup-delay-us = <70000>;
++ };
++
++ /* HS USB Host PHY on PORT 2 */
++ hsusb2_phy: hsusb2_phy {
++ compatible = "usb-nop-xceiv";
++ reset-gpios = <&gpio5 19 GPIO_ACTIVE_LOW>; /* gpio_147 */
++ vcc-supply = <&hsusb2_power>;
++ };
+ };
+
+ &omap3_pmx_wkup {
+@@ -79,6 +96,37 @@
+ };
+ };
+
++&omap3_pmx_core {
++ pinctrl-names = "default";
++ pinctrl-0 = <
++ &hsusbb2_pins
++ >;
++
++ uart3_pins: pinmux_uart3_pins {
++ pinctrl-single,pins = <
++ 0x16e (PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */
++ 0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx OUTPUT | MODE0 */
++ >;
++ };
++
++ hsusbb2_pins: pinmux_hsusbb2_pins {
++ pinctrl-single,pins = <
++ 0x5c0 (PIN_OUTPUT | MUX_MODE3) /* etk_d10.hsusb2_clk */
++ 0x5c2 (PIN_OUTPUT | MUX_MODE3) /* etk_d11.hsusb2_stp */
++ 0x5c4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d12.hsusb2_dir */
++ 0x5c6 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d13.hsusb2_nxt */
++ 0x5c8 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d14.hsusb2_data0 */
++ 0x5cA (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d15.hsusb2_data1 */
++ 0x1a4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi1_cs3.hsusb2_data2 */
++ 0x1a6 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_clk.hsusb2_data7 */
++ 0x1a8 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_simo.hsusb2_data4 */
++ 0x1aa (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_somi.hsusb2_data5 */
++ 0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs0.hsusb2_data6 */
++ 0x1ae (PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcspi2_cs1.hsusb2_data3 */
++ >;
++ };
++};
++
+ &i2c1 {
+ clock-frequency = <2600000>;
+
+@@ -148,15 +196,6 @@
+ power = <50>;
+ };
+
+-&omap3_pmx_core {
+- uart3_pins: pinmux_uart3_pins {
+- pinctrl-single,pins = <
+- 0x16e (PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */
+- 0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx OUTPUT | MODE0 */
+- >;
+- };
+-};
+-
+ &uart3 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart3_pins>;
+@@ -166,3 +205,11 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio1_pins>;
+ };
++
++&usbhshost {
++ port2-mode = "ehci-phy";
++};
++
++&usbhsehci {
++ phys = <0 &hsusb2_phy>;
++};
diff --git a/patches/linux-3.12/0238-ARM-dts-omap3-beagle-Add-USB-OTG-PHY-details.patch b/patches/linux-3.12/0238-ARM-dts-omap3-beagle-Add-USB-OTG-PHY-details.patch
new file mode 100644
index 0000000..b20a6a5
--- /dev/null
+++ b/patches/linux-3.12/0238-ARM-dts-omap3-beagle-Add-USB-OTG-PHY-details.patch
@@ -0,0 +1,28 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Tue, 24 Sep 2013 11:53:56 +0300
+Subject: [PATCH] ARM: dts: omap3-beagle: Add USB OTG PHY details
+
+Add information about the USB OTG PHY. Without this
+the OTG port on beagle will not work.
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-beagle.dts | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts
+index 1237822..7669c16 100644
+--- a/arch/arm/boot/dts/omap3-beagle.dts
++++ b/arch/arm/boot/dts/omap3-beagle.dts
+@@ -169,3 +169,10 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio1_pins>;
+ };
++
++&usb_otg_hs {
++ interface-type = <0>;
++ usb-phy = <&usb2_phy>;
++ mode = <3>;
++ power = <50>;
++};
diff --git a/patches/linux-3.12/0239-ARM-dts-am335x-boneblack-move-fixed-regulator-to-boa.patch b/patches/linux-3.12/0239-ARM-dts-am335x-boneblack-move-fixed-regulator-to-boa.patch
new file mode 100644
index 0000000..b8f1c4a
--- /dev/null
+++ b/patches/linux-3.12/0239-ARM-dts-am335x-boneblack-move-fixed-regulator-to-boa.patch
@@ -0,0 +1,54 @@
+From: Nishanth Menon <nm@ti.com>
+Date: Mon, 30 Sep 2013 09:40:16 -0500
+Subject: [PATCH] ARM: dts: am335x-boneblack: move fixed regulator to board
+ level
+
+3.3V fixed regulator does not belong to TPS node - as a result
+the fixed regulator is never probed and MMC is continually deferred
+due to lack of regulator.
+
+Move the fixed regulator to be at root of platform.
+
+Cc: Joel Fernandes <joelf@ti.com>
+Cc: Sekhar Nori <nsekhar@ti.com>
+Cc: Koen Kooi <koen@dominion.thruhere.net>
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Tested-by: Felipe Balbi <balbi@ti.com>
+Tested-by: Balaji T K <balajitk@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index ff5c3ca..b3e6fcf 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -55,6 +55,13 @@
+ default-state = "off";
+ };
+ };
++
++ vmmcsd_fixed: fixedregulator@0 {
++ compatible = "regulator-fixed";
++ regulator-name = "vmmcsd_fixed";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ };
+ };
+
+ &am33xx_pinmux {
+@@ -257,13 +264,6 @@
+ regulator-always-on;
+ };
+ };
+-
+- vmmcsd_fixed: fixedregulator@0 {
+- compatible = "regulator-fixed";
+- regulator-name = "vmmcsd_fixed";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- };
+ };
+
+ &cpsw_emac0 {
diff --git a/patches/linux-3.12/0240-ARM-dts-AM33XX-Add-support-for-IGEP-COM-AQUILA.patch b/patches/linux-3.12/0240-ARM-dts-AM33XX-Add-support-for-IGEP-COM-AQUILA.patch
new file mode 100644
index 0000000..9a717bb
--- /dev/null
+++ b/patches/linux-3.12/0240-ARM-dts-AM33XX-Add-support-for-IGEP-COM-AQUILA.patch
@@ -0,0 +1,295 @@
+From: Enric Balletbo i Serra <eballetbo@gmail.com>
+Date: Tue, 10 Sep 2013 16:55:48 +0200
+Subject: [PATCH] ARM: dts: AM33XX: Add support for IGEP COM AQUILA
+
+The IGEP COM AQUILA is industrial processors SODIMM module with
+following highlights:
+
+ o AM3352/AM3354/AM3358/AM3359 Texas Instruments processor
+ o Cortex-A8 ARM CPU
+ o 3.3 volts Inputs / Outputs use industrial
+ o 256 MB DDR3 SDRAM / 128 Megabytes FLASH
+ o MicroSD card reader on-board
+ o Ethernet controller on-board
+ o JTAG debug connector available
+ o Designed for industrial range purposes
+
+Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
+Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-igep0033.dtsi | 265 +++++++++++++++++++++++++++++++++
+ 1 file changed, 265 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-igep0033.dtsi
+
+diff --git a/arch/arm/boot/dts/am335x-igep0033.dtsi b/arch/arm/boot/dts/am335x-igep0033.dtsi
+new file mode 100644
+index 0000000..06eba07
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-igep0033.dtsi
+@@ -0,0 +1,265 @@
++/*
++ * am335x-igep0033.dtsi - Device Tree file for IGEP COM AQUILA AM335x
++ *
++ * Copyright (C) 2013 ISEE 2007 SL - http://www.isee.biz
++ *
++ * 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.
++ */
++
++/dts-v1/;
++
++#include "am33xx.dtsi"
++
++/ {
++ cpus {
++ cpu@0 {
++ cpu0-supply = <&vdd1_reg>;
++ };
++ };
++
++ memory {
++ device_type = "memory";
++ reg = <0x80000000 0x10000000>; /* 256 MB */
++ };
++
++ leds {
++ pinctrl-names = "default";
++ pinctrl-0 = <&leds_pins>;
++
++ compatible = "gpio-leds";
++
++ led@0 {
++ label = "com:green:user";
++ gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
++ default-state = "on";
++ };
++ };
++
++ vbat: fixedregulator@0 {
++ compatible = "regulator-fixed";
++ regulator-name = "vbat";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ regulator-boot-on;
++ };
++};
++
++&am33xx_pinmux {
++ i2c0_pins: pinmux_i2c0_pins {
++ pinctrl-single,pins = <
++ 0x188 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
++ 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
++ >;
++ };
++
++ nandflash_pins: pinmux_nandflash_pins {
++ pinctrl-single,pins = <
++ 0x0 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */
++ 0x4 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */
++ 0x8 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */
++ 0xc (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */
++ 0x10 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */
++ 0x14 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */
++ 0x18 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */
++ 0x1c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */
++ 0x70 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */
++ 0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_30 */
++ 0x7c (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */
++ 0x90 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */
++ 0x94 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */
++ 0x98 (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */
++ 0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */
++ >;
++ };
++
++ uart0_pins: pinmux_uart0_pins {
++ pinctrl-single,pins = <
++ 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
++ 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
++ >;
++ };
++
++ leds_pins: pinmux_leds_pins {
++ pinctrl-single,pins = <
++ 0x5c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a7.gpio1_23 */
++ >;
++ };
++};
++
++&cpsw_emac0 {
++ phy_id = <&davinci_mdio>, <0>;
++};
++
++&cpsw_emac1 {
++ phy_id = <&davinci_mdio>, <1>;
++};
++
++&elm {
++ status = "okay";
++};
++
++&gpmc {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&nandflash_pins>;
++
++ ranges = <0 0 0x08000000 0x10000000>; /* CS0: NAND */
++
++ nand@0,0 {
++ reg = <0 0 0>; /* CS0, offset 0 */
++ nand-bus-width = <8>;
++ ti,nand-ecc-opt = "bch8";
++ gpmc,device-nand = "true";
++ gpmc,device-width = <1>;
++ gpmc,sync-clk-ps = <0>;
++ gpmc,cs-on-ns = <0>;
++ gpmc,cs-rd-off-ns = <44>;
++ gpmc,cs-wr-off-ns = <44>;
++ gpmc,adv-on-ns = <6>;
++ gpmc,adv-rd-off-ns = <34>;
++ gpmc,adv-wr-off-ns = <44>;
++ gpmc,we-on-ns = <0>;
++ gpmc,we-off-ns = <40>;
++ gpmc,oe-on-ns = <0>;
++ gpmc,oe-off-ns = <54>;
++ gpmc,access-ns = <64>;
++ gpmc,rd-cycle-ns = <82>;
++ gpmc,wr-cycle-ns = <82>;
++ gpmc,wait-on-read = "true";
++ gpmc,wait-on-write = "true";
++ gpmc,bus-turnaround-ns = <0>;
++ gpmc,cycle2cycle-delay-ns = <0>;
++ gpmc,clk-activation-ns = <0>;
++ gpmc,wait-monitoring-ns = <0>;
++ gpmc,wr-access-ns = <40>;
++ gpmc,wr-data-mux-bus-ns = <0>;
++
++ #address-cells = <1>;
++ #size-cells = <1>;
++ elm_id = <&elm>;
++
++ /* MTD partition table */
++ partition@0 {
++ label = "SPL";
++ reg = <0x00000000 0x000080000>;
++ };
++
++ partition@1 {
++ label = "U-boot";
++ reg = <0x00080000 0x001e0000>;
++ };
++
++ partition@2 {
++ label = "U-Boot Env";
++ reg = <0x00260000 0x00020000>;
++ };
++
++ partition@3 {
++ label = "Kernel";
++ reg = <0x00280000 0x00500000>;
++ };
++
++ partition@4 {
++ label = "File System";
++ reg = <0x00780000 0x007880000>;
++ };
++ };
++};
++
++&i2c0 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins>;
++
++ clock-frequency = <400000>;
++
++ tps: tps@2d {
++ reg = <0x2d>;
++ };
++};
++
++&uart0 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart0_pins>;
++};
++
++#include "tps65910.dtsi"
++
++&tps {
++ vcc1-supply = <&vbat>;
++ vcc2-supply = <&vbat>;
++ vcc3-supply = <&vbat>;
++ vcc4-supply = <&vbat>;
++ vcc5-supply = <&vbat>;
++ vcc6-supply = <&vbat>;
++ vcc7-supply = <&vbat>;
++ vccio-supply = <&vbat>;
++
++ regulators {
++ vrtc_reg: regulator@0 {
++ regulator-always-on;
++ };
++
++ vio_reg: regulator@1 {
++ regulator-always-on;
++ };
++
++ vdd1_reg: regulator@2 {
++ /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
++ regulator-name = "vdd_mpu";
++ regulator-min-microvolt = <912500>;
++ regulator-max-microvolt = <1312500>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ vdd2_reg: regulator@3 {
++ /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
++ regulator-name = "vdd_core";
++ regulator-min-microvolt = <912500>;
++ regulator-max-microvolt = <1150000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ vdd3_reg: regulator@4 {
++ regulator-always-on;
++ };
++
++ vdig1_reg: regulator@5 {
++ regulator-always-on;
++ };
++
++ vdig2_reg: regulator@6 {
++ regulator-always-on;
++ };
++
++ vpll_reg: regulator@7 {
++ regulator-always-on;
++ };
++
++ vdac_reg: regulator@8 {
++ regulator-always-on;
++ };
++
++ vaux1_reg: regulator@9 {
++ regulator-always-on;
++ };
++
++ vaux2_reg: regulator@10 {
++ regulator-always-on;
++ };
++
++ vaux33_reg: regulator@11 {
++ regulator-always-on;
++ };
++
++ vmmc_reg: regulator@12 {
++ regulator-always-on;
++ };
++ };
++};
++
diff --git a/patches/linux-3.12/0241-ARM-dts-AM33XX-Add-support-for-IGEP-AQUILA-EXPANSION.patch b/patches/linux-3.12/0241-ARM-dts-AM33XX-Add-support-for-IGEP-AQUILA-EXPANSION.patch
new file mode 100644
index 0000000..b8a2802
--- /dev/null
+++ b/patches/linux-3.12/0241-ARM-dts-AM33XX-Add-support-for-IGEP-AQUILA-EXPANSION.patch
@@ -0,0 +1,61 @@
+From: Enric Balletbo i Serra <eballetbo@gmail.com>
+Date: Tue, 10 Sep 2013 16:55:49 +0200
+Subject: [PATCH] ARM: dts: AM33XX: Add support for IGEP AQUILA EXPANSION
+ board.
+
+The IGEP AQUILA EXPANSION board is a development platform
+for the IGEP COM AQUILA AM335x boards.
+
+The board adds the following connectivity:
+
+ o USB OTG
+ o USB HOST
+ o HDMI
+ o Ethernet
+ o Serial Debug (3.3V)
+ o 2x46 pin headers
+ o EEPROM
+
+Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
+Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/Makefile | 1 +
+ arch/arm/boot/dts/am335x-base0033.dts | 16 ++++++++++++++++
+ 2 files changed, 17 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-base0033.dts
+
+diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
+index 1be0c95..9df7d2c 100644
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -188,6 +188,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
+ am335x-evmsk.dtb \
+ am335x-bone.dtb \
+ am335x-boneblack.dtb \
++ am335x-base0033.dtb \
+ am3517-evm.dtb \
+ am3517_mt_ventoux.dtb \
+ am43x-epos-evm.dtb \
+diff --git a/arch/arm/boot/dts/am335x-base0033.dts b/arch/arm/boot/dts/am335x-base0033.dts
+new file mode 100644
+index 0000000..b4f95c2
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-base0033.dts
+@@ -0,0 +1,16 @@
++/*
++ * am335x-base0033.dts - Device Tree file for IGEP AQUILA EXPANSION
++ *
++ * Copyright (C) 2013 ISEE 2007 SL - http://www.isee.biz
++ *
++ * 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 "am335x-igep0033.dtsi"
++
++/ {
++ model = "IGEP COM AM335x on AQUILA Expansion";
++ compatible = "isee,am335x-base0033", "isee,am335x-igep0033", "ti,am33xx";
++};
diff --git a/patches/linux-3.12/0242-ARM-dts-am335x-bone-common-correct-mux-mode-for-cmd-.patch b/patches/linux-3.12/0242-ARM-dts-am335x-bone-common-correct-mux-mode-for-cmd-.patch
new file mode 100644
index 0000000..c0423c8
--- /dev/null
+++ b/patches/linux-3.12/0242-ARM-dts-am335x-bone-common-correct-mux-mode-for-cmd-.patch
@@ -0,0 +1,27 @@
+From: Balaji T K <balajitk@ti.com>
+Date: Fri, 27 Sep 2013 17:05:09 +0530
+Subject: [PATCH] ARM: dts: am335x-bone-common: correct mux mode for cmd line
+
+Set pinmux_emmc_pins mux mode for cmd line to MODE2 in order
+to detect eMMC on BBB and BBW + eMMC cape.
+
+Signed-off-by: Balaji T K <balajitk@ti.com>
+Tested-by: Felipe Balbi <balbi@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-bone-common.dtsi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
+index b3e6fcf..e3f27ec 100644
+--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+@@ -160,7 +160,7 @@
+ emmc_pins: pinmux_emmc_pins {
+ pinctrl-single,pins = <
+ 0x80 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
+- 0x84 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_csn2.mmc1_cmd */
++ 0x84 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
+ 0x00 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
+ 0x04 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
+ 0x08 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
diff --git a/patches/linux-3.12/0243-ARM-dts-am335x-evm-sdk-switch-mmc1-to-4-bit-mode.patch b/patches/linux-3.12/0243-ARM-dts-am335x-evm-sdk-switch-mmc1-to-4-bit-mode.patch
new file mode 100644
index 0000000..8b6bd98
--- /dev/null
+++ b/patches/linux-3.12/0243-ARM-dts-am335x-evm-sdk-switch-mmc1-to-4-bit-mode.patch
@@ -0,0 +1,33 @@
+From: Balaji T K <balajitk@ti.com>
+Date: Fri, 27 Sep 2013 17:05:10 +0530
+Subject: [PATCH] ARM: dts: am335x-evm[sdk]: switch mmc1 to 4-bit mode
+
+Set bus-width to make SD card operate in 4 bit mode.
+
+Signed-off-by: Balaji T K <balajitk@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-evm.dts | 1 +
+ arch/arm/boot/dts/am335x-evmsk.dts | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index 23b0a3e..028ca09 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -521,4 +521,5 @@
+ &mmc1 {
+ status = "okay";
+ vmmc-supply = <&vmmc_reg>;
++ bus-width = <4>;
+ };
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index bc93895..563a2b1 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -423,4 +423,5 @@
+ &mmc1 {
+ status = "okay";
+ vmmc-supply = <&vmmc_reg>;
++ bus-width = <4>;
+ };
diff --git a/patches/linux-3.12/0244-ARM-dts-OMAP4-Add-AES-node.patch b/patches/linux-3.12/0244-ARM-dts-OMAP4-Add-AES-node.patch
new file mode 100644
index 0000000..9025051
--- /dev/null
+++ b/patches/linux-3.12/0244-ARM-dts-OMAP4-Add-AES-node.patch
@@ -0,0 +1,32 @@
+From: Joel Fernandes <joelf@ti.com>
+Date: Thu, 11 Jul 2013 18:20:05 -0500
+Subject: [PATCH] ARM: dts: OMAP4: Add AES node
+
+OMAP4 has an AES module that uses the omap-aes crypto driver.
+Add DT entries for the same.
+
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap4.dtsi | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
+index 45708e1..16a44d6 100644
+--- a/arch/arm/boot/dts/omap4.dtsi
++++ b/arch/arm/boot/dts/omap4.dtsi
+@@ -663,5 +663,14 @@
+ ram-bits = <12>;
+ ti,has-mailbox;
+ };
++
++ aes: aes@4b501000 {
++ compatible = "ti,omap4-aes";
++ ti,hwmods = "aes";
++ reg = <0x4b501000 0xa0>;
++ interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
++ dmas = <&sdma 111>, <&sdma 110>;
++ dma-names = "tx", "rx";
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0245-ARM-dts-OMAP4-Add-DES3DES-node.patch b/patches/linux-3.12/0245-ARM-dts-OMAP4-Add-DES3DES-node.patch
new file mode 100644
index 0000000..298bcfc
--- /dev/null
+++ b/patches/linux-3.12/0245-ARM-dts-OMAP4-Add-DES3DES-node.patch
@@ -0,0 +1,32 @@
+From: Joel Fernandes <joelf@ti.com>
+Date: Tue, 24 Sep 2013 15:23:33 -0500
+Subject: [PATCH] ARM: dts: OMAP4: Add DES3DES node
+
+OMAP4 has an DES3DES module that uses the omap-des crypto driver.
+Add DT entries for the same.
+
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap4.dtsi | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
+index 16a44d6..6be1f56 100644
+--- a/arch/arm/boot/dts/omap4.dtsi
++++ b/arch/arm/boot/dts/omap4.dtsi
+@@ -672,5 +672,14 @@
+ dmas = <&sdma 111>, <&sdma 110>;
+ dma-names = "tx", "rx";
+ };
++
++ des: des@480a5000 {
++ compatible = "ti,omap4-des";
++ ti,hwmods = "des";
++ reg = <0x480a5000 0xa0>;
++ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
++ dmas = <&sdma 117>, <&sdma 116>;
++ dma-names = "tx", "rx";
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0246-ARM-dts-AM33XX-Add-SHAM-data-and-documentation.patch b/patches/linux-3.12/0246-ARM-dts-AM33XX-Add-SHAM-data-and-documentation.patch
new file mode 100644
index 0000000..35f2ab5
--- /dev/null
+++ b/patches/linux-3.12/0246-ARM-dts-AM33XX-Add-SHAM-data-and-documentation.patch
@@ -0,0 +1,113 @@
+From: "Mark A. Greer" <mgreer@animalcreek.com>
+Date: Fri, 23 Aug 2013 14:12:35 -0700
+Subject: [PATCH] ARM: dts: AM33XX: Add SHAM data and documentation
+
+Add the generic AM33XX SHAM module's device tree data and
+enable it for the am335x-evm, am335x-evmsk, and am335x-bone
+platforms. Also add Documentation file describing the data
+for the SHAM module.
+
+Cc: Paul Walmsley <paul@pwsan.com>
+Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+[joelf@ti.com: Dropped interrupt-parent property, documentation fixups]
+Acked-by: Mark Rutland <mark.rutland@arm.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ .../devicetree/bindings/crypto/omap-sham.txt | 28 ++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone.dts | 4 ++++
+ arch/arm/boot/dts/am335x-evm.dts | 4 ++++
+ arch/arm/boot/dts/am335x-evmsk.dts | 4 ++++
+ arch/arm/boot/dts/am33xx.dtsi | 9 +++++++
+ 5 files changed, 49 insertions(+)
+ create mode 100644 Documentation/devicetree/bindings/crypto/omap-sham.txt
+
+diff --git a/Documentation/devicetree/bindings/crypto/omap-sham.txt b/Documentation/devicetree/bindings/crypto/omap-sham.txt
+new file mode 100644
+index 0000000..f839acd
+--- /dev/null
++++ b/Documentation/devicetree/bindings/crypto/omap-sham.txt
+@@ -0,0 +1,28 @@
++OMAP SoC SHA crypto Module
++
++Required properties:
++
++- compatible : Should contain entries for this and backward compatible
++ SHAM versions:
++ - "ti,omap2-sham" for OMAP2 & OMAP3.
++ - "ti,omap4-sham" for OMAP4 and AM33XX.
++ Note that these two versions are incompatible.
++- ti,hwmods: Name of the hwmod associated with the SHAM module
++- reg : Offset and length of the register set for the module
++- interrupts : the interrupt-specifier for the SHAM module.
++
++Optional properties:
++- dmas: DMA specifiers for the rx dma. See the DMA client binding,
++ Documentation/devicetree/bindings/dma/dma.txt
++- dma-names: DMA request name. Should be "rx" if a dma is present.
++
++Example:
++ /* AM335x */
++ sham: sham@53100000 {
++ compatible = "ti,omap4-sham";
++ ti,hwmods = "sham";
++ reg = <0x53100000 0x200>;
++ interrupts = <109>;
++ dmas = <&edma 36>;
++ dma-names = "rx";
++ };
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index 0d63348..8a9802e 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -19,3 +19,7 @@
+ &mmc1 {
+ vmmc-supply = <&ldo3_reg>;
+ };
++
++&sham {
++ status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index 028ca09..09786ef 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -523,3 +523,7 @@
+ vmmc-supply = <&vmmc_reg>;
+ bus-width = <4>;
+ };
++
++&sham {
++ status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index 563a2b1..08d5cd9 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -425,3 +425,7 @@
+ vmmc-supply = <&vmmc_reg>;
+ bus-width = <4>;
+ };
++
++&sham {
++ status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 5704c25..18b4742 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -712,5 +712,14 @@
+ #size-cells = <1>;
+ status = "disabled";
+ };
++
++ sham: sham@53100000 {
++ compatible = "ti,omap4-sham";
++ ti,hwmods = "sham";
++ reg = <0x53100000 0x200>;
++ interrupts = <109>;
++ dmas = <&edma 36>;
++ dma-names = "rx";
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0247-ARM-dts-AM33XX-Add-AES-data-and-documentation.patch b/patches/linux-3.12/0247-ARM-dts-AM33XX-Add-AES-data-and-documentation.patch
new file mode 100644
index 0000000..0ba534e
--- /dev/null
+++ b/patches/linux-3.12/0247-ARM-dts-AM33XX-Add-AES-data-and-documentation.patch
@@ -0,0 +1,116 @@
+From: "Mark A. Greer" <mgreer@animalcreek.com>
+Date: Fri, 23 Aug 2013 14:12:36 -0700
+Subject: [PATCH] ARM: dts: AM33XX: Add AES data and documentation
+
+Add the generic AM33XX AES module's device tree data and
+enable it for the am335x-evm, am335x-evmsk, and am335x-bone
+platforms. Also add Documentation file describing the data
+for the AES module.
+
+Cc: Paul Walmsley <paul@pwsan.com>
+Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+[joelf@ti.com: Dropped interrupt-parent property, documentation fixups]
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ .../devicetree/bindings/crypto/omap-aes.txt | 31 ++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone.dts | 4 +++
+ arch/arm/boot/dts/am335x-evm.dts | 4 +++
+ arch/arm/boot/dts/am335x-evmsk.dts | 4 +++
+ arch/arm/boot/dts/am33xx.dtsi | 10 +++++++
+ 5 files changed, 53 insertions(+)
+ create mode 100644 Documentation/devicetree/bindings/crypto/omap-aes.txt
+
+diff --git a/Documentation/devicetree/bindings/crypto/omap-aes.txt b/Documentation/devicetree/bindings/crypto/omap-aes.txt
+new file mode 100644
+index 0000000..fd97176
+--- /dev/null
++++ b/Documentation/devicetree/bindings/crypto/omap-aes.txt
+@@ -0,0 +1,31 @@
++OMAP SoC AES crypto Module
++
++Required properties:
++
++- compatible : Should contain entries for this and backward compatible
++ AES versions:
++ - "ti,omap2-aes" for OMAP2.
++ - "ti,omap3-aes" for OMAP3.
++ - "ti,omap4-aes" for OMAP4 and AM33XX.
++ Note that the OMAP2 and 3 versions are compatible (OMAP3 supports
++ more algorithms) but they are incompatible with OMAP4.
++- ti,hwmods: Name of the hwmod associated with the AES module
++- reg : Offset and length of the register set for the module
++- interrupts : the interrupt-specifier for the AES module.
++
++Optional properties:
++- dmas: DMA specifiers for tx and rx dma. See the DMA client binding,
++ Documentation/devicetree/bindings/dma/dma.txt
++- dma-names: DMA request names should include "tx" and "rx" if present.
++
++Example:
++ /* AM335x */
++ aes: aes@53500000 {
++ compatible = "ti,omap4-aes";
++ ti,hwmods = "aes";
++ reg = <0x53500000 0xa0>;
++ interrupts = <102>;
++ dmas = <&edma 6>,
++ <&edma 5>;
++ dma-names = "tx", "rx";
++ };
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index 8a9802e..94ee427 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -23,3 +23,7 @@
+ &sham {
+ status = "okay";
+ };
++
++&aes {
++ status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index 09786ef..ff834ad 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -527,3 +527,7 @@
+ &sham {
+ status = "okay";
+ };
++
++&aes {
++ status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index 08d5cd9..5f12b28 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -429,3 +429,7 @@
+ &sham {
+ status = "okay";
+ };
++
++&aes {
++ status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 18b4742..4f633ed 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -721,5 +721,15 @@
+ dmas = <&edma 36>;
+ dma-names = "rx";
+ };
++
++ aes: aes@53500000 {
++ compatible = "ti,omap4-aes";
++ ti,hwmods = "aes";
++ reg = <0x53500000 0xa0>;
++ interrupts = <102>;
++ dmas = <&edma 6>,
++ <&edma 5>;
++ dma-names = "tx", "rx";
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0248-ARM-dts-AM33XX-Fix-AES-interrupt-number.patch b/patches/linux-3.12/0248-ARM-dts-AM33XX-Fix-AES-interrupt-number.patch
new file mode 100644
index 0000000..39de9f9
--- /dev/null
+++ b/patches/linux-3.12/0248-ARM-dts-AM33XX-Fix-AES-interrupt-number.patch
@@ -0,0 +1,27 @@
+From: Joel Fernandes <joelf@ti.com>
+Date: Wed, 17 Jul 2013 19:07:52 -0500
+Subject: [PATCH] ARM: dts: AM33XX: Fix AES interrupt number
+
+AES interrupts were previously not used, but after recent changes
+to omap-aes driver, its being used.
+Correct the interrupt number to have working PIO mode.
+
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 4f633ed..b1f7e76 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -726,7 +726,7 @@
+ compatible = "ti,omap4-aes";
+ ti,hwmods = "aes";
+ reg = <0x53500000 0xa0>;
+- interrupts = <102>;
++ interrupts = <103>;
+ dmas = <&edma 6>,
+ <&edma 5>;
+ dma-names = "tx", "rx";
diff --git a/patches/linux-3.12/0249-ARM-dts-AM437X-Add-AES-node.patch b/patches/linux-3.12/0249-ARM-dts-AM437X-Add-AES-node.patch
new file mode 100644
index 0000000..7c302c1
--- /dev/null
+++ b/patches/linux-3.12/0249-ARM-dts-AM437X-Add-AES-node.patch
@@ -0,0 +1,30 @@
+From: Joel Fernandes <joelf@ti.com>
+Date: Tue, 24 Sep 2013 14:35:09 -0500
+Subject: [PATCH] ARM: dts: AM437X: Add AES node
+
+AM437x SoC has AES module similar to the one on OMAP4.
+Add DT node for the same.
+
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am4372.dtsi | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
+index 0fe393a..7e9ff75 100644
+--- a/arch/arm/boot/dts/am4372.dtsi
++++ b/arch/arm/boot/dts/am4372.dtsi
+@@ -411,5 +411,12 @@
+ ti,hwmods = "epwmss5";
+ status = "disabled";
+ };
++
++ aes: aes@53501000 {
++ compatible = "ti,omap4-aes";
++ ti,hwmods = "aes";
++ reg = <0x53501000 0xa0>;
++ interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0250-ARM-dts-AM437X-Add-DES-node.patch b/patches/linux-3.12/0250-ARM-dts-AM437X-Add-DES-node.patch
new file mode 100644
index 0000000..15438b7
--- /dev/null
+++ b/patches/linux-3.12/0250-ARM-dts-AM437X-Add-DES-node.patch
@@ -0,0 +1,30 @@
+From: Joel Fernandes <joelf@ti.com>
+Date: Tue, 24 Sep 2013 14:37:33 -0500
+Subject: [PATCH] ARM: dts: AM437X: Add DES node
+
+AM437x SoC has a DES3DES module similar to the one on OMAP4.
+Add DT node for the same.
+
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am4372.dtsi | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
+index 7e9ff75..a403172 100644
+--- a/arch/arm/boot/dts/am4372.dtsi
++++ b/arch/arm/boot/dts/am4372.dtsi
+@@ -418,5 +418,12 @@
+ reg = <0x53501000 0xa0>;
+ interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
+ };
++
++ des: des@53701000 {
++ compatible = "ti,omap4-des";
++ ti,hwmods = "des";
++ reg = <0x53701000 0xa0>;
++ interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0251-ARM-dts-AM33XX-Add-LCDC-info-into-am335x-evm.patch b/patches/linux-3.12/0251-ARM-dts-AM33XX-Add-LCDC-info-into-am335x-evm.patch
new file mode 100644
index 0000000..d8cec90
--- /dev/null
+++ b/patches/linux-3.12/0251-ARM-dts-AM33XX-Add-LCDC-info-into-am335x-evm.patch
@@ -0,0 +1,135 @@
+From: Benoit Parrot <bparrot@ti.com>
+Date: Thu, 8 Aug 2013 18:28:14 -0500
+Subject: [PATCH] ARM: dts: AM33XX: Add LCDC info into am335x-evm
+
+Add LCDC device node in DT for am33xx
+Add LCDC and Panel info in DT for am335x-evm
+
+Changes:
+- remove redundant/unnecessary SoC specific setting in the board dts
+- resolved conflicts on for_3.13/dts
+
+Signed-off-by: Benoit Parrot <bparrot@ti.com>
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-evm.dts | 71 ++++++++++++++++++++++++++++++++++++++++
+ arch/arm/boot/dts/am33xx.dtsi | 9 +++++
+ 2 files changed, 80 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index ff834ad..eabacf9 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -85,6 +85,40 @@
+ brightness-levels = <0 51 53 56 62 75 101 152 255>;
+ default-brightness-level = <8>;
+ };
++
++ panel {
++ compatible = "ti,tilcdc,panel";
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&lcd_pins_s0>;
++ panel-info {
++ ac-bias = <255>;
++ ac-bias-intrpt = <0>;
++ dma-burst-sz = <16>;
++ bpp = <32>;
++ fdd = <0x80>;
++ sync-edge = <0>;
++ sync-ctrl = <1>;
++ raster-order = <0>;
++ fifo-th = <0>;
++ };
++
++ display-timings {
++ 800x480p62 {
++ clock-frequency = <30000000>;
++ hactive = <800>;
++ vactive = <480>;
++ hfront-porch = <39>;
++ hback-porch = <39>;
++ hsync-len = <47>;
++ vback-porch = <29>;
++ vfront-porch = <13>;
++ vsync-len = <2>;
++ hsync-active = <1>;
++ vsync-active = <1>;
++ };
++ };
++ };
+ };
+
+ &am33xx_pinmux {
+@@ -212,6 +246,39 @@
+ 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+ >;
+ };
++
++ lcd_pins_s0: lcd_pins_s0 {
++ pinctrl-single,pins = <
++ 0x20 0x01 /* gpmc_ad8.lcd_data16, OUTPUT | MODE1 */
++ 0x24 0x01 /* gpmc_ad9.lcd_data17, OUTPUT | MODE1 */
++ 0x28 0x01 /* gpmc_ad10.lcd_data18, OUTPUT | MODE1 */
++ 0x2c 0x01 /* gpmc_ad11.lcd_data19, OUTPUT | MODE1 */
++ 0x30 0x01 /* gpmc_ad12.lcd_data20, OUTPUT | MODE1 */
++ 0x34 0x01 /* gpmc_ad13.lcd_data21, OUTPUT | MODE1 */
++ 0x38 0x01 /* gpmc_ad14.lcd_data22, OUTPUT | MODE1 */
++ 0x3c 0x01 /* gpmc_ad15.lcd_data23, OUTPUT | MODE1 */
++ 0xa0 0x00 /* lcd_data0.lcd_data0, OUTPUT | MODE0 */
++ 0xa4 0x00 /* lcd_data1.lcd_data1, OUTPUT | MODE0 */
++ 0xa8 0x00 /* lcd_data2.lcd_data2, OUTPUT | MODE0 */
++ 0xac 0x00 /* lcd_data3.lcd_data3, OUTPUT | MODE0 */
++ 0xb0 0x00 /* lcd_data4.lcd_data4, OUTPUT | MODE0 */
++ 0xb4 0x00 /* lcd_data5.lcd_data5, OUTPUT | MODE0 */
++ 0xb8 0x00 /* lcd_data6.lcd_data6, OUTPUT | MODE0 */
++ 0xbc 0x00 /* lcd_data7.lcd_data7, OUTPUT | MODE0 */
++ 0xc0 0x00 /* lcd_data8.lcd_data8, OUTPUT | MODE0 */
++ 0xc4 0x00 /* lcd_data9.lcd_data9, OUTPUT | MODE0 */
++ 0xc8 0x00 /* lcd_data10.lcd_data10, OUTPUT | MODE0 */
++ 0xcc 0x00 /* lcd_data11.lcd_data11, OUTPUT | MODE0 */
++ 0xd0 0x00 /* lcd_data12.lcd_data12, OUTPUT | MODE0 */
++ 0xd4 0x00 /* lcd_data13.lcd_data13, OUTPUT | MODE0 */
++ 0xd8 0x00 /* lcd_data14.lcd_data14, OUTPUT | MODE0 */
++ 0xdc 0x00 /* lcd_data15.lcd_data15, OUTPUT | MODE0 */
++ 0xe0 0x00 /* lcd_vsync.lcd_vsync, OUTPUT | MODE0 */
++ 0xe4 0x00 /* lcd_hsync.lcd_hsync, OUTPUT | MODE0 */
++ 0xe8 0x00 /* lcd_pclk.lcd_pclk, OUTPUT | MODE0 */
++ 0xec 0x00 /* lcd_ac_bias_en.lcd_ac_bias_en, OUTPUT | MODE0 */
++ >;
++ };
+ };
+
+ &uart0 {
+@@ -308,6 +375,10 @@
+ };
+ };
+
++&lcdc {
++ status = "okay";
++};
++
+ &elm {
+ status = "okay";
+ };
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index b1f7e76..b7d3abb 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -684,6 +684,15 @@
+ status = "disabled";
+ };
+
++ lcdc: lcdc@4830e000 {
++ compatible = "ti,am33xx-tilcdc";
++ reg = <0x4830e000 0x1000>;
++ interrupt-parent = <&intc>;
++ interrupts = <36>;
++ ti,hwmods = "lcdc";
++ status = "disabled";
++ };
++
+ tscadc: tscadc@44e0d000 {
+ compatible = "ti,am3359-tscadc";
+ reg = <0x44e0d000 0x1000>;
diff --git a/patches/linux-3.12/0252-ARM-dts-AM33XX-beagle-black-add-pinmux-and-hdmi-node.patch b/patches/linux-3.12/0252-ARM-dts-AM33XX-beagle-black-add-pinmux-and-hdmi-node.patch
new file mode 100644
index 0000000..3e969b1
--- /dev/null
+++ b/patches/linux-3.12/0252-ARM-dts-AM33XX-beagle-black-add-pinmux-and-hdmi-node.patch
@@ -0,0 +1,72 @@
+From: Darren Etheridge <detheridge@ti.com>
+Date: Fri, 20 Sep 2013 15:01:42 -0500
+Subject: [PATCH] ARM: dts: AM33XX beagle black: add pinmux and hdmi node to
+ enable display
+
+Enable the hdmi output and the LCD Controller on BeagleBone
+Black. Also configure the correct pinmux for output of
+video data from the SoC to the HDMI encoder.
+
+Signed-off-by: Darren Etheridge <detheridge@ti.com>
+Signed-off-by: Joel Fernandes <joelf@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-boneblack.dts | 48 ++++++++++++++++++++++++++++++++++
+ 1 file changed, 48 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
+index 16b3bea..6b71ad9 100644
+--- a/arch/arm/boot/dts/am335x-boneblack.dts
++++ b/arch/arm/boot/dts/am335x-boneblack.dts
+@@ -28,3 +28,51 @@
+ status = "okay";
+ ti,vcc-aux-disable-is-sleep;
+ };
++
++&am33xx_pinmux {
++ nxp_hdmi_bonelt_pins: nxp_hdmi_bonelt_pins {
++ pinctrl-single,pins = <
++ 0x1b0 0x03 /* xdma_event_intr0, OMAP_MUX_MODE3 | AM33XX_PIN_OUTPUT */
++ 0xa0 0x08 /* lcd_data0.lcd_data0, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xa4 0x08 /* lcd_data1.lcd_data1, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xa8 0x08 /* lcd_data2.lcd_data2, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xac 0x08 /* lcd_data3.lcd_data3, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xb0 0x08 /* lcd_data4.lcd_data4, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xb4 0x08 /* lcd_data5.lcd_data5, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xb8 0x08 /* lcd_data6.lcd_data6, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xbc 0x08 /* lcd_data7.lcd_data7, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xc0 0x08 /* lcd_data8.lcd_data8, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xc4 0x08 /* lcd_data9.lcd_data9, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xc8 0x08 /* lcd_data10.lcd_data10, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xcc 0x08 /* lcd_data11.lcd_data11, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xd0 0x08 /* lcd_data12.lcd_data12, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xd4 0x08 /* lcd_data13.lcd_data13, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xd8 0x08 /* lcd_data14.lcd_data14, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xdc 0x08 /* lcd_data15.lcd_data15, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
++ 0xe0 0x00 /* lcd_vsync.lcd_vsync, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++ 0xe4 0x00 /* lcd_hsync.lcd_hsync, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++ 0xe8 0x00 /* lcd_pclk.lcd_pclk, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++ 0xec 0x00 /* lcd_ac_bias_en.lcd_ac_bias_en, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++ >;
++ };
++ nxp_hdmi_bonelt_off_pins: nxp_hdmi_bonelt_off_pins {
++ pinctrl-single,pins = <
++ 0x1b0 0x03 /* xdma_event_intr0, OMAP_MUX_MODE3 | AM33XX_PIN_OUTPUT */
++ >;
++ };
++};
++
++&lcdc {
++ status = "okay";
++};
++
++/ {
++ hdmi {
++ compatible = "ti,tilcdc,slave";
++ i2c = <&i2c0>;
++ pinctrl-names = "default", "off";
++ pinctrl-0 = <&nxp_hdmi_bonelt_pins>;
++ pinctrl-1 = <&nxp_hdmi_bonelt_off_pins>;
++ status = "okay";
++ };
++};
diff --git a/patches/linux-3.12/0253-ARM-dts-omap3-igep-Add-USB-OTG-support.patch b/patches/linux-3.12/0253-ARM-dts-omap3-igep-Add-USB-OTG-support.patch
new file mode 100644
index 0000000..0060d7c
--- /dev/null
+++ b/patches/linux-3.12/0253-ARM-dts-omap3-igep-Add-USB-OTG-support.patch
@@ -0,0 +1,33 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Mon, 7 Oct 2013 17:12:23 +0200
+Subject: [PATCH] ARM: dts: omap3-igep: Add USB OTG support
+
+Commit ad871c10b ("ARM: dts: OMAP: Add usb_otg and glue data to O
+added USB OTG support for most OMAP boards but some OMAP3 boards
+such as IGEP boards were not updated. This patch adds an USB OTG
+device node to these board.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Tested-by: Enric Balletbo i Serra <eballetbo@gmail.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep.dtsi | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-igep.dtsi b/arch/arm/boot/dts/omap3-igep.dtsi
+index 0f92224..ba1e58b 100644
+--- a/arch/arm/boot/dts/omap3-igep.dtsi
++++ b/arch/arm/boot/dts/omap3-igep.dtsi
+@@ -143,3 +143,12 @@
+ &twl_gpio {
+ ti,use-leds;
+ };
++
++&usb_otg_hs {
++ interface-type = <0>;
++ usb-phy = <&usb2_phy>;
++ phys = <&usb2_phy>;
++ phy-names = "usb2-phy";
++ mode = <3>;
++ power = <50>;
++};
diff --git a/patches/linux-3.12/0254-ARM-dts-omap3-igep0020-Add-HS-USB-Host-support.patch b/patches/linux-3.12/0254-ARM-dts-omap3-igep0020-Add-HS-USB-Host-support.patch
new file mode 100644
index 0000000..88b2093
--- /dev/null
+++ b/patches/linux-3.12/0254-ARM-dts-omap3-igep0020-Add-HS-USB-Host-support.patch
@@ -0,0 +1,79 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Mon, 7 Oct 2013 17:12:24 +0200
+Subject: [PATCH] ARM: dts: omap3-igep0020: Add HS USB Host support
+
+Add device nodes for the HS USB Host port 1, USB PHY and its
+required regulator and also pin mux setup for HS USB1 pins.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Tested-by: Enric Balletbo i Serra <eballetbo@gmail.com>
+Acked-by: Roger Quadros <rogerq@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep0020.dts | 49 ++++++++++++++++++++++++++++++++++++
+ 1 file changed, 49 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-igep0020.dts b/arch/arm/boot/dts/omap3-igep0020.dts
+index eedf0d8..35346f2 100644
+--- a/arch/arm/boot/dts/omap3-igep0020.dts
++++ b/arch/arm/boot/dts/omap3-igep0020.dts
+@@ -55,6 +55,47 @@
+ regulator-name = "vdd33a";
+ regulator-always-on;
+ };
++
++ /* HS USB Port 1 Power */
++ hsusb1_power: hsusb1_power_reg {
++ compatible = "regulator-fixed";
++ regulator-name = "hsusb1_vbus";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ gpio = <&twl_gpio 18 GPIO_ACTIVE_LOW>; /* GPIO LEDA */
++ startup-delay-us = <70000>;
++ };
++
++ /* HS USB Host PHY on PORT 1 */
++ hsusb1_phy: hsusb1_phy {
++ compatible = "usb-nop-xceiv";
++ reset-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>; /* gpio_24 */
++ vcc-supply = <&hsusb1_power>;
++ };
++};
++
++&omap3_pmx_core {
++ pinctrl-names = "default";
++ pinctrl-0 = <
++ &hsusbb1_pins
++ >;
++
++ hsusbb1_pins: pinmux_hsusbb1_pins {
++ pinctrl-single,pins = <
++ 0x5aa (PIN_OUTPUT | MUX_MODE3) /* etk_ctl.hsusb1_clk */
++ 0x5a8 (PIN_OUTPUT | MUX_MODE3) /* etk_clk.hsusb1_stp */
++ 0x5bc (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d8.hsusb1_dir */
++ 0x5be (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d9.hsusb1_nxt */
++ 0x5ac (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d0.hsusb1_data0 */
++ 0x5ae (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d1.hsusb1_data1 */
++ 0x5b0 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d2.hsusb1_data2 */
++ 0x5b2 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d3.hsusb1_data7 */
++ 0x5b4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d4.hsusb1_data4 */
++ 0x5b6 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d5.hsusb1_data5 */
++ 0x5b8 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d6.hsusb1_data6 */
++ 0x5ba (PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d7.hsusb1_data3 */
++ >;
++ };
+ };
+
+ &leds_pins {
+@@ -166,3 +207,11 @@
+ smsc,save-mac-address;
+ };
+ };
++
++&usbhshost {
++ port1-mode = "ehci-phy";
++};
++
++&usbhsehci {
++ phys = <&hsusb1_phy>;
++};
diff --git a/patches/linux-3.12/0255-ARM-dts-omap3-igep0020-use-standard-constant-for-IRQ.patch b/patches/linux-3.12/0255-ARM-dts-omap3-igep0020-use-standard-constant-for-IRQ.patch
new file mode 100644
index 0000000..976013f
--- /dev/null
+++ b/patches/linux-3.12/0255-ARM-dts-omap3-igep0020-use-standard-constant-for-IRQ.patch
@@ -0,0 +1,27 @@
+From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Date: Mon, 7 Oct 2013 17:12:25 +0200
+Subject: [PATCH] ARM: dts: omap3-igep0020: use standard constant for IRQ flags
+
+Commit 840ef8b7 ("ARM: dt: add header to define IRQ flags") added
+constants for IRQ edge/level triggered types so use it instead of
+a magic number to enhance the DT readability.
+
+Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-igep0020.dts | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap3-igep0020.dts b/arch/arm/boot/dts/omap3-igep0020.dts
+index 35346f2..750ce84 100644
+--- a/arch/arm/boot/dts/omap3-igep0020.dts
++++ b/arch/arm/boot/dts/omap3-igep0020.dts
+@@ -199,7 +199,7 @@
+ gpmc,cycle2cycle-diffcsen;
+
+ interrupt-parent = <&gpio6>;
+- interrupts = <16 8>;
++ interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
+ vmmc-supply = <&vddvario>;
+ vmmc_aux-supply = <&vdd33a>;
+ reg-io-width = <4>;
diff --git a/patches/linux-3.12/0256-ARM-dts-omap5-uevm-mark-TWL6037-as-system-power-cont.patch b/patches/linux-3.12/0256-ARM-dts-omap5-uevm-mark-TWL6037-as-system-power-cont.patch
new file mode 100644
index 0000000..eac8fff
--- /dev/null
+++ b/patches/linux-3.12/0256-ARM-dts-omap5-uevm-mark-TWL6037-as-system-power-cont.patch
@@ -0,0 +1,25 @@
+From: Nishanth Menon <nm@ti.com>
+Date: Thu, 19 Sep 2013 14:11:36 -0500
+Subject: [PATCH] ARM: dts: omap5-uevm: mark TWL6037 as system-power-controller
+
+This allows the palmas pm_power_off to kick in on power off command
+and switch off the board.
+
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index 748f6bf..d784b3a 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -249,6 +249,7 @@
+ reg = <0x48>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
++ ti,system-power-controller;
+
+ extcon_usb3: palmas_usb {
+ compatible = "ti,palmas-usb-vid";
diff --git a/patches/linux-3.12/0257-ARM-dts-dra7-evm-Add-mmc1-node-for-micro-sd-support.patch b/patches/linux-3.12/0257-ARM-dts-dra7-evm-Add-mmc1-node-for-micro-sd-support.patch
new file mode 100644
index 0000000..29c760e
--- /dev/null
+++ b/patches/linux-3.12/0257-ARM-dts-dra7-evm-Add-mmc1-node-for-micro-sd-support.patch
@@ -0,0 +1,30 @@
+From: Balaji T K <balajitk@ti.com>
+Date: Mon, 7 Oct 2013 21:55:03 +0530
+Subject: [PATCH] ARM: dts: dra7-evm: Add mmc1 node for micro-sd support
+
+Add mmc1 dt node to dra7-evm board.
+Input for ldo1 regulator is controlled by gpio 5 of pcf8575 chip (0x21)
+on i2c1 bus. When dt support for gpio-pcf857x is available, input supply
+will be modelled as cascaded regulator.
+
+Signed-off-by: Balaji T K <balajitk@ti.com>
+Acked-by: Sekhar Nori <nsekhar@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/dra7-evm.dts | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
+index fbbe406..65cd15a 100644
+--- a/arch/arm/boot/dts/dra7-evm.dts
++++ b/arch/arm/boot/dts/dra7-evm.dts
+@@ -250,3 +250,9 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart3_pins>;
+ };
++
++&mmc1 {
++ status = "okay";
++ vmmc-supply = <&ldo1_reg>;
++ bus-width = <4>;
++};
diff --git a/patches/linux-3.12/0258-ARM-dts-dra7-evm-Add-mmc2-node-for-eMMC-support.patch b/patches/linux-3.12/0258-ARM-dts-dra7-evm-Add-mmc2-node-for-eMMC-support.patch
new file mode 100644
index 0000000..a3082c9
--- /dev/null
+++ b/patches/linux-3.12/0258-ARM-dts-dra7-evm-Add-mmc2-node-for-eMMC-support.patch
@@ -0,0 +1,42 @@
+From: Balaji T K <balajitk@ti.com>
+Date: Mon, 7 Oct 2013 21:55:04 +0530
+Subject: [PATCH] ARM: dts: dra7-evm: Add mmc2 node for eMMC support
+
+Add mmc2 dt node to dra7-evm board
+and model eMMC vcc as fixed regulator.
+
+Signed-off-by: Balaji T K <balajitk@ti.com>
+Acked-by: Sekhar Nori <nsekhar@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/dra7-evm.dts | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
+index 65cd15a..3abf5f4 100644
+--- a/arch/arm/boot/dts/dra7-evm.dts
++++ b/arch/arm/boot/dts/dra7-evm.dts
+@@ -17,6 +17,13 @@
+ device_type = "memory";
+ reg = <0x80000000 0x60000000>; /* 1536 MB */
+ };
++
++ mmc2_3v3: fixedregulator-mmc2 {
++ compatible = "regulator-fixed";
++ regulator-name = "mmc2_3v3";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ };
+ };
+
+ &dra7_pmx_core {
+@@ -256,3 +263,9 @@
+ vmmc-supply = <&ldo1_reg>;
+ bus-width = <4>;
+ };
++
++&mmc2 {
++ status = "okay";
++ vmmc-supply = <&mmc2_3v3>;
++ bus-width = <8>;
++};
diff --git a/patches/linux-3.12/0259-ARM-dts-OMAP5-Remove-clock-frequency-field-for-cpu-t.patch b/patches/linux-3.12/0259-ARM-dts-OMAP5-Remove-clock-frequency-field-for-cpu-t.patch
new file mode 100644
index 0000000..2ca53e9
--- /dev/null
+++ b/patches/linux-3.12/0259-ARM-dts-OMAP5-Remove-clock-frequency-field-for-cpu-t.patch
@@ -0,0 +1,29 @@
+From: Sricharan R <r.sricharan@ti.com>
+Date: Thu, 10 Oct 2013 13:20:13 +0530
+Subject: [PATCH] ARM: dts: OMAP5: Remove clock-frequency field for cpu timers
+
+The arm arch timers frequency are now programmed in the CNTFREQ
+per-cpu register by the timer code using the secure API [1].
+So remove the redundant entry from the dts.
+
+[1] http://marc.info/?l=linux-omap&m=138139106312786&w=2
+
+Signed-off-by: Sricharan R <r.sricharan@ti.com>
+Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5.dtsi | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index 6192c45..6a558ce 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -52,7 +52,6 @@
+ <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
+ <GIC_PPI 11 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>,
+ <GIC_PPI 10 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_LOW)>;
+- clock-frequency = <6144000>;
+ };
+
+ gic: interrupt-controller@48211000 {
diff --git a/patches/linux-3.12/0260-ARM-dts-omap3-Adapt-USB-OTG-to-generic-PHY-framework.patch b/patches/linux-3.12/0260-ARM-dts-omap3-Adapt-USB-OTG-to-generic-PHY-framework.patch
new file mode 100644
index 0000000..cc6231e
--- /dev/null
+++ b/patches/linux-3.12/0260-ARM-dts-omap3-Adapt-USB-OTG-to-generic-PHY-framework.patch
@@ -0,0 +1,46 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Mon, 7 Oct 2013 16:28:13 +0300
+Subject: [PATCH] ARM: dts: omap3: Adapt USB OTG to generic PHY framework
+
+The generic PHY framewrok expects different properties than the
+old USB PHY framework. Supply those properties.
+
+Fixes USB OTG port on GAT04 and N900 after the Generic PHY framework was
+merged in greg/usb-next. [1]
+
+[1] - https://lkml.org/lkml/2013/9/27/581
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Acked-by: Felipe Balbi <balbi@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-gta04.dts | 2 ++
+ arch/arm/boot/dts/omap3-n900.dts | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-gta04.dts b/arch/arm/boot/dts/omap3-gta04.dts
+index a84684a..b9b55c9 100644
+--- a/arch/arm/boot/dts/omap3-gta04.dts
++++ b/arch/arm/boot/dts/omap3-gta04.dts
+@@ -131,6 +131,8 @@
+ &usb_otg_hs {
+ interface-type = <0>;
+ usb-phy = <&usb2_phy>;
++ phys = <&usb2_phy>;
++ phy-names = "usb2-phy";
+ mode = <3>;
+ power = <50>;
+ };
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index d64fa04..e13b697 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -87,6 +87,8 @@
+ &usb_otg_hs {
+ interface-type = <0>;
+ usb-phy = <&usb2_phy>;
++ phys = <&usb2_phy>;
++ phy-names = "usb2-phy";
+ mode = <2>;
+ power = <50>;
+ };
diff --git a/patches/linux-3.12/0261-ARM-dts-omap-Add-reset-idle-on-init-bindings-for-OMA.patch b/patches/linux-3.12/0261-ARM-dts-omap-Add-reset-idle-on-init-bindings-for-OMA.patch
new file mode 100644
index 0000000..7e10fa9
--- /dev/null
+++ b/patches/linux-3.12/0261-ARM-dts-omap-Add-reset-idle-on-init-bindings-for-OMA.patch
@@ -0,0 +1,109 @@
+From: Rajendra Nayak <rnayak@ti.com>
+Date: Tue, 15 Oct 2013 12:37:50 +0530
+Subject: [PATCH] ARM: dts: omap: Add reset/idle on init bindings for OMAP
+
+On OMAP we have co-processor IPs, memory controllers,
+GPIOs which control regulators and power switches to
+PMIC, and SoC internal Bus IPs, some or most of which
+should either not be reset or idled or both at init.
+(In some cases there are erratas which prevent an IP
+from being reset)
+Have a way to pass this information from DT.
+
+Update the am33xx/omap4 and omap5 dtsi files with the
+new bindings for modules which either should not be
+idled. reset or both. A later patch would cleanup the
+same information that exists today as part of the hwmod
+data files.
+
+Signed-off-by: Rajendra Nayak <rnayak@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ Documentation/devicetree/bindings/arm/omap/omap.txt | 3 ++-
+ arch/arm/boot/dts/am33xx.dtsi | 2 ++
+ arch/arm/boot/dts/omap4.dtsi | 3 +++
+ arch/arm/boot/dts/omap5.dtsi | 2 ++
+ 4 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt
+index 91b7049..808c154 100644
+--- a/Documentation/devicetree/bindings/arm/omap/omap.txt
++++ b/Documentation/devicetree/bindings/arm/omap/omap.txt
+@@ -21,7 +21,8 @@ Required properties:
+ Optional properties:
+ - ti,no_idle_on_suspend: When present, it prevents the PM to idle the module
+ during suspend.
+-
++- ti,no-reset-on-init: When present, the module should not be reset at init
++- ti,no-idle-on-init: When present, the module should not be idled at init
+
+ Example:
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index b7d3abb..7947bfb 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -674,6 +674,7 @@
+ reg = <0x44d00000 0x4000 /* M3 UMEM */
+ 0x44d80000 0x2000>; /* M3 DMEM */
+ ti,hwmods = "wkup_m3";
++ ti,no-reset-on-init;
+ };
+
+ elm: elm@48080000 {
+@@ -713,6 +714,7 @@
+ gpmc: gpmc@50000000 {
+ compatible = "ti,am3352-gpmc";
+ ti,hwmods = "gpmc";
++ ti,no-idle-on-init;
+ reg = <0x50000000 0x2000>;
+ interrupts = <100>;
+ gpmc,num-cs = <7>;
+diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
+index 6be1f56..6ca45b0 100644
+--- a/arch/arm/boot/dts/omap4.dtsi
++++ b/arch/arm/boot/dts/omap4.dtsi
+@@ -214,6 +214,7 @@
+ gpmc,num-cs = <8>;
+ gpmc,num-waitpins = <4>;
+ ti,hwmods = "gpmc";
++ ti,no-idle-on-init;
+ };
+
+ uart1: serial@4806a000 {
+@@ -492,6 +493,7 @@
+ reg = <0x4c000000 0x100>;
+ interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
+ ti,hwmods = "emif1";
++ ti,no-idle-on-init;
+ phy-type = <1>;
+ hw-caps-read-idle-ctrl;
+ hw-caps-ll-interface;
+@@ -503,6 +505,7 @@
+ reg = <0x4d000000 0x100>;
+ interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
+ ti,hwmods = "emif2";
++ ti,no-idle-on-init;
+ phy-type = <1>;
+ hw-caps-read-idle-ctrl;
+ hw-caps-ll-interface;
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index 6a558ce..f518ec6 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -606,6 +606,7 @@
+ emif1: emif@4c000000 {
+ compatible = "ti,emif-4d5";
+ ti,hwmods = "emif1";
++ ti,no-idle-on-init;
+ phy-type = <2>; /* DDR PHY type: Intelli PHY */
+ reg = <0x4c000000 0x400>;
+ interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
+@@ -617,6 +618,7 @@
+ emif2: emif@4d000000 {
+ compatible = "ti,emif-4d5";
+ ti,hwmods = "emif2";
++ ti,no-idle-on-init;
+ phy-type = <2>; /* DDR PHY type: Intelli PHY */
+ reg = <0x4d000000 0x400>;
+ interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
diff --git a/patches/linux-3.12/0262-ARM-dts-am335x-evmsk-Do-not-reset-gpio0.patch b/patches/linux-3.12/0262-ARM-dts-am335x-evmsk-Do-not-reset-gpio0.patch
new file mode 100644
index 0000000..25dd15b
--- /dev/null
+++ b/patches/linux-3.12/0262-ARM-dts-am335x-evmsk-Do-not-reset-gpio0.patch
@@ -0,0 +1,28 @@
+From: Rajendra Nayak <rnayak@ti.com>
+Date: Wed, 9 Oct 2013 15:42:01 +0530
+Subject: [PATCH] ARM: dts: am335x-evmsk: Do not reset gpio0
+
+Do not reset GPIO0 at boot-up because GPIO0 is used
+on AM335x EVM-SK to control VTT regulators on DDR3.
+
+Without this EVM-SK boards fail to boot-up because
+of DDR3 corruption.
+
+Signed-off-by: Rajendra Nayak <rnayak@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-evmsk.dts | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index 5f12b28..1a7e0d9 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -433,3 +433,7 @@
+ &aes {
+ status = "okay";
+ };
++
++&gpio0 {
++ ti,no-reset-on-init;
++};
diff --git a/patches/linux-3.12/0263-ARM-dts-omap4-panda-es-Do-not-reset-gpio1.patch b/patches/linux-3.12/0263-ARM-dts-omap4-panda-es-Do-not-reset-gpio1.patch
new file mode 100644
index 0000000..f716df7
--- /dev/null
+++ b/patches/linux-3.12/0263-ARM-dts-omap4-panda-es-Do-not-reset-gpio1.patch
@@ -0,0 +1,30 @@
+From: Nishanth Menon <nm@ti.com>
+Date: Thu, 10 Oct 2013 11:44:41 -0500
+Subject: [PATCH] ARM: dts: omap4-panda-es: Do not reset gpio1
+
+Do not reset GPIO1 at boot-up because GPIO 7 in GPIO1 block is used on
+OMAP4460 PandaBoard-ES to select voltage register in TPS62361 which
+supplies VDD_MPU.
+
+Without this, OMAP4460 PandaBoard-ES boards fail to boot-up because
+MPU voltage switches over to VSET0 voltage value (boot voltage) which
+is not sufficient to operate the device at OPP100.
+
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap4-panda-es.dts | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap4-panda-es.dts b/arch/arm/boot/dts/omap4-panda-es.dts
+index 56c4354..816d1c9 100644
+--- a/arch/arm/boot/dts/omap4-panda-es.dts
++++ b/arch/arm/boot/dts/omap4-panda-es.dts
+@@ -62,3 +62,7 @@
+ gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
+ };
+ };
++
++&gpio1 {
++ ti,no-reset-on-init;
++};
diff --git a/patches/linux-3.12/0264-ARM-dts-omap5-uevm-remove-always_on-boot_on-from-smp.patch b/patches/linux-3.12/0264-ARM-dts-omap5-uevm-remove-always_on-boot_on-from-smp.patch
new file mode 100644
index 0000000..74d6b34
--- /dev/null
+++ b/patches/linux-3.12/0264-ARM-dts-omap5-uevm-remove-always_on-boot_on-from-smp.patch
@@ -0,0 +1,29 @@
+From: Kishon Vijay Abraham I <kishon@ti.com>
+Date: Thu, 10 Oct 2013 16:19:53 +0530
+Subject: [PATCH] ARM: dts: omap5-uevm: remove always_on, boot_on from
+ smps10_out1
+
+smps10 should be enabled only in the case of host mode. So stop
+doing always_on, boot_on from smps10_out1. The driver will enable
+it in host mode.
+
+Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
+Acked-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index d784b3a..e06a04a 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -334,8 +334,6 @@
+ regulator-name = "smps10_out1";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+- regulator-always-on;
+- regulator-boot-on;
+ };
+
+ ldo1_reg: ldo1 {
diff --git a/patches/linux-3.12/0265-ARM-dts-OMAP5-Add-dr_mode-for-dwc3.patch b/patches/linux-3.12/0265-ARM-dts-OMAP5-Add-dr_mode-for-dwc3.patch
new file mode 100644
index 0000000..8c097eb
--- /dev/null
+++ b/patches/linux-3.12/0265-ARM-dts-OMAP5-Add-dr_mode-for-dwc3.patch
@@ -0,0 +1,25 @@
+From: George Cherian <george.cherian@ti.com>
+Date: Thu, 10 Oct 2013 16:19:54 +0530
+Subject: [PATCH] ARM: dts: OMAP5: Add dr_mode for dwc3
+
+Added dr_mode property in dwc3 and set its default mode to device.
+
+Signed-off-by: George Cherian <george.cherian@ti.com>
+Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5.dtsi | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index f518ec6..53686e4 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -649,6 +649,7 @@
+ reg = <0x4a030000 0x10000>;
+ interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
+ usb-phy = <&usb2_phy>, <&usb3_phy>;
++ dr_mode = "peripheral";
+ tx-fifo-resize;
+ };
+ };
diff --git a/patches/linux-3.12/0266-ARM-dts-AM4372-Add-L2-EDMA-mailbox-MMC-and-SHAM-node.patch b/patches/linux-3.12/0266-ARM-dts-AM4372-Add-L2-EDMA-mailbox-MMC-and-SHAM-node.patch
new file mode 100644
index 0000000..b58eeb1
--- /dev/null
+++ b/patches/linux-3.12/0266-ARM-dts-AM4372-Add-L2-EDMA-mailbox-MMC-and-SHAM-node.patch
@@ -0,0 +1,337 @@
+From: Lokesh Vutla <lokeshvutla@ti.com>
+Date: Fri, 11 Oct 2013 00:44:53 +0530
+Subject: [PATCH] ARM: dts: AM4372: Add L2, EDMA, mailbox, MMC and SHAM nodes
+
+Populate nodes for l2-cache-controller, EDMA, mailbox,
+mmc, sham.
+
+Update as well DT properties for epwmss, aes, des.
+
+Signed-off-by: Suman Anna <s-anna@ti.com>
+Signed-off-by: Balaji T K <balajitk@ti.com>
+Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
+Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am4372.dtsi | 210 +++++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 209 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
+index a403172..c328d5c 100644
+--- a/arch/arm/boot/dts/am4372.dtsi
++++ b/arch/arm/boot/dts/am4372.dtsi
+@@ -19,6 +19,8 @@
+
+ aliases {
+ serial0 = &uart0;
++ ethernet0 = &cpsw_emac0;
++ ethernet1 = &cpsw_emac1;
+ };
+
+ cpus {
+@@ -39,11 +41,42 @@
+ <0x48240100 0x0100>;
+ };
+
++ l2-cache-controller@48242000 {
++ compatible = "arm,pl310-cache";
++ reg = <0x48242000 0x1000>;
++ cache-unified;
++ cache-level = <2>;
++ };
++
++ am43xx_pinmux: pinmux@44e10800 {
++ compatible = "pinctrl-single";
++ reg = <0x44e10800 0x31c>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ pinctrl-single,register-width = <32>;
++ pinctrl-single,function-mask = <0xffffffff>;
++ };
++
+ ocp {
+ compatible = "simple-bus";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
++ ti,hwmods = "l3_main";
++
++ edma: edma@49000000 {
++ compatible = "ti,edma3";
++ ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2";
++ reg = <0x49000000 0x10000>,
++ <0x44e10f90 0x10>;
++ interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
++ <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
++ <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
++ #dma-cells = <1>;
++ dma-channels = <64>;
++ ti,edma-regions = <4>;
++ ti,edma-slots = <256>;
++ };
+
+ uart0: serial@44e09000 {
+ compatible = "ti,am4372-uart","ti,omap2-uart";
+@@ -92,6 +125,18 @@
+ status = "disabled";
+ };
+
++ mailbox: mailbox@480C8000 {
++ compatible = "ti,omap4-mailbox";
++ reg = <0x480C8000 0x200>;
++ interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
++ ti,hwmods = "mailbox";
++ ti,mbox-num-users = <4>;
++ ti,mbox-num-fifos = <8>;
++ ti,mbox-names = "wkup_m3";
++ ti,mbox-data = <0 0 0 0>;
++ status = "disabled";
++ };
++
+ timer1: timer@44e31000 {
+ compatible = "ti,am4372-timer-1ms","ti,am335x-timer-1ms";
+ reg = <0x44e31000 0x400>;
+@@ -203,7 +248,6 @@
+ reg = <0x44e35000 0x1000>;
+ interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
+ ti,hwmods = "wd_timer2";
+- status = "disabled";
+ };
+
+ gpio0: gpio@44e07000 {
+@@ -318,6 +362,40 @@
+ status = "disabled";
+ };
+
++ mmc1: mmc@48060000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x48060000 0x1000>;
++ ti,hwmods = "mmc1";
++ ti,dual-volt;
++ ti,needs-special-reset;
++ dmas = <&edma 24
++ &edma 25>;
++ dma-names = "tx", "rx";
++ interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
++ status = "disabled";
++ };
++
++ mmc2: mmc@481d8000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x481d8000 0x1000>;
++ ti,hwmods = "mmc2";
++ ti,needs-special-reset;
++ dmas = <&edma 2
++ &edma 3>;
++ dma-names = "tx", "rx";
++ interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
++ status = "disabled";
++ };
++
++ mmc3: mmc@47810000 {
++ compatible = "ti,omap4-hsmmc";
++ reg = <0x47810000 0x1000>;
++ ti,hwmods = "mmc3";
++ ti,needs-special-reset;
++ interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
++ status = "disabled";
++ };
++
+ spi1: spi@481a0000 {
+ compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
+ reg = <0x481a0000 0x400>;
+@@ -366,50 +444,173 @@
+ GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH
+ GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH
+ GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
++ #address-cells = <1>;
++ #size-cells = <1>;
+ ti,hwmods = "cpgmac0";
+ status = "disabled";
++ cpdma_channels = <8>;
++ ale_entries = <1024>;
++ bd_ram_size = <0x2000>;
++ no_bd_ram = <0>;
++ rx_descs = <64>;
++ mac_control = <0x20>;
++ slaves = <2>;
++ active_slave = <0>;
++ cpts_clock_mult = <0x80000000>;
++ cpts_clock_shift = <29>;
++ ranges;
++
++ davinci_mdio: mdio@4a101000 {
++ compatible = "ti,am4372-mdio","ti,davinci_mdio";
++ reg = <0x4a101000 0x100>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ ti,hwmods = "davinci_mdio";
++ bus_freq = <1000000>;
++ status = "disabled";
++ };
++
++ cpsw_emac0: slave@4a100200 {
++ /* Filled in by U-Boot */
++ mac-address = [ 00 00 00 00 00 00 ];
++ };
++
++ cpsw_emac1: slave@4a100300 {
++ /* Filled in by U-Boot */
++ mac-address = [ 00 00 00 00 00 00 ];
++ };
+ };
+
+ epwmss0: epwmss@48300000 {
+ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
+ reg = <0x48300000 0x10>;
++ #address-cells = <1>;
++ #size-cells = <1>;
++ ranges;
+ ti,hwmods = "epwmss0";
+ status = "disabled";
++
++ ecap0: ecap@48300100 {
++ compatible = "ti,am4372-ecap","ti,am33xx-ecap";
++ reg = <0x48300100 0x80>;
++ ti,hwmods = "ecap0";
++ status = "disabled";
++ };
++
++ ehrpwm0: ehrpwm@48300200 {
++ compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
++ reg = <0x48300200 0x80>;
++ ti,hwmods = "ehrpwm0";
++ status = "disabled";
++ };
+ };
+
+ epwmss1: epwmss@48302000 {
+ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
+ reg = <0x48302000 0x10>;
++ #address-cells = <1>;
++ #size-cells = <1>;
++ ranges;
+ ti,hwmods = "epwmss1";
+ status = "disabled";
++
++ ecap1: ecap@48302100 {
++ compatible = "ti,am4372-ecap","ti,am33xx-ecap";
++ reg = <0x48302100 0x80>;
++ ti,hwmods = "ecap1";
++ status = "disabled";
++ };
++
++ ehrpwm1: ehrpwm@48302200 {
++ compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
++ reg = <0x48302200 0x80>;
++ ti,hwmods = "ehrpwm1";
++ status = "disabled";
++ };
+ };
+
+ epwmss2: epwmss@48304000 {
+ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
+ reg = <0x48304000 0x10>;
++ #address-cells = <1>;
++ #size-cells = <1>;
++ ranges;
+ ti,hwmods = "epwmss2";
+ status = "disabled";
++
++ ecap2: ecap@48304100 {
++ compatible = "ti,am4372-ecap","ti,am33xx-ecap";
++ reg = <0x48304100 0x80>;
++ ti,hwmods = "ecap2";
++ status = "disabled";
++ };
++
++ ehrpwm2: ehrpwm@48304200 {
++ compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
++ reg = <0x48304200 0x80>;
++ ti,hwmods = "ehrpwm2";
++ status = "disabled";
++ };
+ };
+
+ epwmss3: epwmss@48306000 {
+ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
+ reg = <0x48306000 0x10>;
++ #address-cells = <1>;
++ #size-cells = <1>;
++ ranges;
+ ti,hwmods = "epwmss3";
+ status = "disabled";
++
++ ehrpwm3: ehrpwm@48306200 {
++ compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
++ reg = <0x48306200 0x80>;
++ ti,hwmods = "ehrpwm3";
++ status = "disabled";
++ };
+ };
+
+ epwmss4: epwmss@48308000 {
+ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
+ reg = <0x48308000 0x10>;
++ #address-cells = <1>;
++ #size-cells = <1>;
++ ranges;
+ ti,hwmods = "epwmss4";
+ status = "disabled";
++
++ ehrpwm4: ehrpwm@48308200 {
++ compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
++ reg = <0x48308200 0x80>;
++ ti,hwmods = "ehrpwm4";
++ status = "disabled";
++ };
+ };
+
+ epwmss5: epwmss@4830a000 {
+ compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
+ reg = <0x4830a000 0x10>;
++ #address-cells = <1>;
++ #size-cells = <1>;
++ ranges;
+ ti,hwmods = "epwmss5";
+ status = "disabled";
++
++ ehrpwm5: ehrpwm@4830a200 {
++ compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
++ reg = <0x4830a200 0x80>;
++ ti,hwmods = "ehrpwm5";
++ status = "disabled";
++ };
++ };
++
++ sham: sham@53100000 {
++ compatible = "ti,omap5-sham";
++ ti,hwmods = "sham";
++ reg = <0x53100000 0x300>;
++ dmas = <&edma 36>;
++ dma-names = "rx";
++ interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ aes: aes@53501000 {
+@@ -417,6 +618,9 @@
+ ti,hwmods = "aes";
+ reg = <0x53501000 0xa0>;
+ interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
++ dmas = <&edma 6
++ &edma 5>;
++ dma-names = "tx", "rx";
+ };
+
+ des: des@53701000 {
+@@ -424,6 +628,10 @@
+ ti,hwmods = "des";
+ reg = <0x53701000 0xa0>;
+ interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
++ dmas = <&edma 34
++ &edma 33>;
++ dma-names = "tx", "rx";
+ };
++
+ };
+ };
diff --git a/patches/linux-3.12/0267-ARM-dts-AM4372-Update-Support-for-EPOS-EVM.patch b/patches/linux-3.12/0267-ARM-dts-AM4372-Update-Support-for-EPOS-EVM.patch
new file mode 100644
index 0000000..59b5745
--- /dev/null
+++ b/patches/linux-3.12/0267-ARM-dts-AM4372-Update-Support-for-EPOS-EVM.patch
@@ -0,0 +1,236 @@
+From: Mugunthan V N <mugunthanvnm@ti.com>
+Date: Fri, 11 Oct 2013 00:44:54 +0530
+Subject: [PATCH] ARM: dts: AM4372: Update Support for EPOS EVM
+
+-> Adding pinmux for cpsw, i2c0.
+-> Enabling the modules that are present in AM4372 EPOS EVM
+These modules are tested on AM4372 EPOS EVM.
+
+Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
+Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
+Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am43x-epos-evm.dts | 168 +++++++++++++++++++++++++++++++++++
+ include/dt-bindings/pinctrl/am43xx.h | 31 +++++++
+ 2 files changed, 199 insertions(+)
+ create mode 100644 include/dt-bindings/pinctrl/am43xx.h
+
+diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
+index 74174d4..fbf9c4c 100644
+--- a/arch/arm/boot/dts/am43x-epos-evm.dts
++++ b/arch/arm/boot/dts/am43x-epos-evm.dts
+@@ -11,8 +11,176 @@
+ /dts-v1/;
+
+ #include "am4372.dtsi"
++#include <dt-bindings/pinctrl/am43xx.h>
++#include <dt-bindings/gpio/gpio.h>
+
+ / {
+ model = "TI AM43x EPOS EVM";
+ compatible = "ti,am43x-epos-evm","ti,am4372","ti,am43";
++
++ vmmcsd_fixed: fixedregulator-sd {
++ compatible = "regulator-fixed";
++ regulator-name = "vmmcsd_fixed";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ enable-active-high;
++ };
++
++ am43xx_pinmux: pinmux@44e10800 {
++ cpsw_default: cpsw_default {
++ pinctrl-single,pins = <
++ /* Slave 1 */
++ 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_crs.rmii1_crs */
++ 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxerr.rmii1_rxerr */
++ 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txen.rmii1_txen */
++ 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxdv.rmii1_rxdv */
++ 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txd1.rmii1_txd1 */
++ 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txd0.rmii1_txd0 */
++ 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd1.rmii1_rxd1 */
++ 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd0.rmii1_rxd0 */
++ 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii1_refclk.rmii1_refclk */
++ >;
++ };
++
++ cpsw_sleep: cpsw_sleep {
++ pinctrl-single,pins = <
++ /* Slave 1 reset value */
++ 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++
++ davinci_mdio_default: davinci_mdio_default {
++ pinctrl-single,pins = <
++ /* MDIO */
++ 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
++ 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
++ >;
++ };
++
++ davinci_mdio_sleep: davinci_mdio_sleep {
++ pinctrl-single,pins = <
++ /* MDIO reset value */
++ 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
++ >;
++ };
++
++ i2c0_pins: pinmux_i2c0_pins {
++ pinctrl-single,pins = <
++ 0x188 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_sda.i2c0_sda */
++ 0x18c (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_scl.i2c0_scl */
++ >;
++ };
++ };
++
++ matrix_keypad: matrix_keypad@0 {
++ compatible = "gpio-matrix-keypad";
++ debounce-delay-ms = <5>;
++ col-scan-delay-us = <2>;
++
++ row-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH /* Bank0, pin12 */
++ &gpio0 13 GPIO_ACTIVE_HIGH /* Bank0, pin13 */
++ &gpio0 14 GPIO_ACTIVE_HIGH /* Bank0, pin14 */
++ &gpio0 15 GPIO_ACTIVE_HIGH>; /* Bank0, pin15 */
++
++ col-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH /* Bank3, pin9 */
++ &gpio3 10 GPIO_ACTIVE_HIGH /* Bank3, pin10 */
++ &gpio2 18 GPIO_ACTIVE_HIGH /* Bank2, pin18 */
++ &gpio2 19 GPIO_ACTIVE_HIGH>; /* Bank2, pin19 */
++
++ linux,keymap = <0x00000201 /* P1 */
++ 0x01000204 /* P4 */
++ 0x02000207 /* P7 */
++ 0x0300020a /* NUMERIC_STAR */
++ 0x00010202 /* P2 */
++ 0x01010205 /* P5 */
++ 0x02010208 /* P8 */
++ 0x03010200 /* P0 */
++ 0x00020203 /* P3 */
++ 0x01020206 /* P6 */
++ 0x02020209 /* P9 */
++ 0x0302020b /* NUMERIC_POUND */
++ 0x00030067 /* UP */
++ 0x0103006a /* RIGHT */
++ 0x0203006c /* DOWN */
++ 0x03030069>; /* LEFT */
++ };
++};
++
++&mmc1 {
++ status = "okay";
++ vmmc-supply = <&vmmcsd_fixed>;
++ bus-width = <4>;
++};
++
++&mac {
++ pinctrl-names = "default", "sleep";
++ pinctrl-0 = <&cpsw_default>;
++ pinctrl-1 = <&cpsw_sleep>;
++ status = "okay";
++};
++
++&davinci_mdio {
++ pinctrl-names = "default", "sleep";
++ pinctrl-0 = <&davinci_mdio_default>;
++ pinctrl-1 = <&davinci_mdio_sleep>;
++ status = "okay";
++};
++
++&cpsw_emac0 {
++ phy_id = <&davinci_mdio>, <16>;
++ phy-mode = "rmii";
++};
++
++&cpsw_emac1 {
++ phy_id = <&davinci_mdio>, <1>;
++ phy-mode = "rmii";
++};
++
++&i2c0 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins>;
++
++ at24@50 {
++ compatible = "at24,24c256";
++ pagesize = <64>;
++ reg = <0x50>;
++ };
++
++ pixcir_ts@5c {
++ compatible = "pixcir,pixcir_ts";
++ reg = <0x5c>;
++ interrupt-parent = <&gpio1>;
++ interrupts = <17 0>;
++
++ attb-gpio = <&gpio1 17 GPIO_ACTIVE_HIGH>;
++
++ x-size = <1024>;
++ y-size = <768>;
++ };
++};
++
++&gpio0 {
++ status = "okay";
++};
++
++&gpio1 {
++ status = "okay";
++};
++
++&gpio2 {
++ status = "okay";
++};
++
++&gpio3 {
++ status = "okay";
+ };
+diff --git a/include/dt-bindings/pinctrl/am43xx.h b/include/dt-bindings/pinctrl/am43xx.h
+new file mode 100644
+index 0000000..eb6c366a
+--- /dev/null
++++ b/include/dt-bindings/pinctrl/am43xx.h
+@@ -0,0 +1,31 @@
++/*
++ * This header provides constants specific to AM43XX pinctrl bindings.
++ */
++
++#ifndef _DT_BINDINGS_PINCTRL_AM43XX_H
++#define _DT_BINDINGS_PINCTRL_AM43XX_H
++
++#define MUX_MODE0 0
++#define MUX_MODE1 1
++#define MUX_MODE2 2
++#define MUX_MODE3 3
++#define MUX_MODE4 4
++#define MUX_MODE5 5
++#define MUX_MODE6 6
++#define MUX_MODE7 7
++
++#define PULL_DISABLE (1 << 16)
++#define PULL_UP (1 << 17)
++#define INPUT_EN (1 << 18)
++#define SLEWCTRL_FAST (1 << 19)
++#define DS0_PULL_UP_DOWN_EN (1 << 27)
++
++#define PIN_OUTPUT (PULL_DISABLE)
++#define PIN_OUTPUT_PULLUP (PULL_UP)
++#define PIN_OUTPUT_PULLDOWN 0
++#define PIN_INPUT (INPUT_EN | PULL_DISABLE)
++#define PIN_INPUT_PULLUP (INPUT_EN | PULL_UP)
++#define PIN_INPUT_PULLDOWN (INPUT_EN)
++
++#endif
++
diff --git a/patches/linux-3.12/0268-ARM-dts-AM33XX-Add-mcasp0-and-mcasp1-device-tree-ent.patch b/patches/linux-3.12/0268-ARM-dts-AM33XX-Add-mcasp0-and-mcasp1-device-tree-ent.patch
new file mode 100644
index 0000000..beed124
--- /dev/null
+++ b/patches/linux-3.12/0268-ARM-dts-AM33XX-Add-mcasp0-and-mcasp1-device-tree-ent.patch
@@ -0,0 +1,48 @@
+From: Pantelis Antoniou <panto@antoniou-consulting.com>
+Date: Sun, 20 Oct 2013 20:04:08 +0300
+Subject: [PATCH] ARM: dts: AM33XX: Add mcasp0 and mcasp1 device tree entries
+
+Add missing mcasp entries in the am33xx.dtsi include file.
+
+Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
+Signed-off-by: Darren Etheridge <detheridge@ti.com>
+Signed-off-by: Jyri Sarha <jsarha@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 24 ++++++++++++++++++++++++
+ 1 file changed, 24 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index 7947bfb..b3a665e 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -742,5 +742,29 @@
+ <&edma 5>;
+ dma-names = "tx", "rx";
+ };
++
++ mcasp0: mcasp@48038000 {
++ compatible = "ti,am33xx-mcasp-audio";
++ ti,hwmods = "mcasp0";
++ reg = <0x48038000 0x2000>;
++ interrupts = <80>, <81>;
++ interrupts-names = "tx", "rx";
++ status = "disabled";
++ dmas = <&edma 8>,
++ <&edma 9>;
++ dma-names = "tx", "rx";
++ };
++
++ mcasp1: mcasp@4803C000 {
++ compatible = "ti,am33xx-mcasp-audio";
++ ti,hwmods = "mcasp1";
++ reg = <0x4803C000 0x2000>;
++ interrupts = <82>, <83>;
++ interrupts-names = "tx", "rx";
++ status = "disabled";
++ dmas = <&edma 10>,
++ <&edma 11>;
++ dma-names = "tx", "rx";
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0269-ARM-dts-AM33XX-mcasp-Add-location-for-data-port-regi.patch b/patches/linux-3.12/0269-ARM-dts-AM33XX-mcasp-Add-location-for-data-port-regi.patch
new file mode 100644
index 0000000..396a8f3
--- /dev/null
+++ b/patches/linux-3.12/0269-ARM-dts-AM33XX-mcasp-Add-location-for-data-port-regi.patch
@@ -0,0 +1,44 @@
+From: Jyri Sarha <jsarha@ti.com>
+Date: Sun, 20 Oct 2013 20:04:09 +0300
+Subject: [PATCH] ARM: dts: AM33XX: mcasp: Add location for data port registers
+ to reg-property
+
+This patch adds a second tuple to reg property. The new property tuple
+describes the memory location for data port registers mapped trough
+L3 bus on am33xx. The both property tuples are named accordingly in
+the reg-names property.
+
+Signed-off-by: Hebbar, Gururaja <gururaja.hebbar@ti.com>
+Signed-off-by: Darren Etheridge <detheridge@ti.com>
+Signed-off-by: Jyri Sarha <jsarha@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index b3a665e..c131638 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -746,7 +746,9 @@
+ mcasp0: mcasp@48038000 {
+ compatible = "ti,am33xx-mcasp-audio";
+ ti,hwmods = "mcasp0";
+- reg = <0x48038000 0x2000>;
++ reg = <0x48038000 0x2000>,
++ <0x46000000 0x400000>;
++ reg-names = "mpu", "dat";
+ interrupts = <80>, <81>;
+ interrupts-names = "tx", "rx";
+ status = "disabled";
+@@ -758,7 +760,9 @@
+ mcasp1: mcasp@4803C000 {
+ compatible = "ti,am33xx-mcasp-audio";
+ ti,hwmods = "mcasp1";
+- reg = <0x4803C000 0x2000>;
++ reg = <0x4803C000 0x2000>,
++ <0x46400000 0x400000>;
++ reg-names = "mpu", "dat";
+ interrupts = <82>, <83>;
+ interrupts-names = "tx", "rx";
+ status = "disabled";
diff --git a/patches/linux-3.12/0270-ARM-dts-am335x-evm-Add-audio-support-for-am335x-evm..patch b/patches/linux-3.12/0270-ARM-dts-am335x-evm-Add-audio-support-for-am335x-evm..patch
new file mode 100644
index 0000000..fdb9cbd
--- /dev/null
+++ b/patches/linux-3.12/0270-ARM-dts-am335x-evm-Add-audio-support-for-am335x-evm..patch
@@ -0,0 +1,96 @@
+From: Darren Etheridge <detheridge@ti.com>
+Date: Sun, 20 Oct 2013 20:04:10 +0300
+Subject: [PATCH] ARM: dts: am335x-evm: Add audio support for am335x-evm.dts
+
+Adds sound, tlv320aic3106, mcasp1, and am335x_evm_audio_pin nodes.
+
+Signed-off-by: Darren Etheridge <detheridge@ti.com>
+Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Signed-off-by: Jyri Sarha <jsarha@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-evm.dts | 50 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 50 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
+index eabacf9..9874294 100644
+--- a/arch/arm/boot/dts/am335x-evm.dts
++++ b/arch/arm/boot/dts/am335x-evm.dts
+@@ -119,6 +119,19 @@
+ };
+ };
+ };
++
++ sound {
++ compatible = "ti,da830-evm-audio";
++ ti,model = "AM335x-EVM";
++ ti,audio-codec = <&tlv320aic3106>;
++ ti,mcasp-controller = <&mcasp1>;
++ ti,codec-clock-rate = <12000000>;
++ ti,audio-routing =
++ "Headphone Jack", "HPLOUT",
++ "Headphone Jack", "HPROUT",
++ "LINE1L", "Line In",
++ "LINE1R", "Line In";
++ };
+ };
+
+ &am33xx_pinmux {
+@@ -279,6 +292,15 @@
+ 0xec 0x00 /* lcd_ac_bias_en.lcd_ac_bias_en, OUTPUT | MODE0 */
+ >;
+ };
++
++ am335x_evm_audio_pins: am335x_evm_audio_pins {
++ pinctrl-single,pins = <
++ 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_rx_dv.mcasp1_aclkx */
++ 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_txd3.mcasp1_fsx */
++ 0x108 (PIN_OUTPUT_PULLDOWN | MUX_MODE4) /* mii1_col.mcasp1_axr2 */
++ 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* rmii1_ref_clk.mcasp1_axr3 */
++ >;
++ };
+ };
+
+ &uart0 {
+@@ -373,6 +395,18 @@
+ compatible = "ti,tmp275";
+ reg = <0x48>;
+ };
++
++ tlv320aic3106: tlv320aic3106@1b {
++ compatible = "ti,tlv320aic3106";
++ reg = <0x1b>;
++ status = "okay";
++
++ /* Regulators */
++ AVDD-supply = <&vaux2_reg>;
++ IOVDD-supply = <&vaux2_reg>;
++ DRVDD-supply = <&vaux2_reg>;
++ DVDD-supply = <&vbat>;
++ };
+ };
+
+ &lcdc {
+@@ -476,6 +510,22 @@
+
+ #include "tps65910.dtsi"
+
++&mcasp1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&am335x_evm_audio_pins>;
++
++ status = "okay";
++
++ op-mode = <0>; /* MCASP_IIS_MODE */
++ tdm-slots = <2>;
++ /* 4 serializers */
++ serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
++ 0 0 1 2
++ >;
++ tx-num-evt = <1>;
++ rx-num-evt = <1>;
++};
++
+ &tps {
+ vcc1-supply = <&vbat>;
+ vcc2-supply = <&vbat>;
diff --git a/patches/linux-3.12/0271-ARM-dts-am335x-evmsk-Audio-support.patch b/patches/linux-3.12/0271-ARM-dts-am335x-evmsk-Audio-support.patch
new file mode 100644
index 0000000..4ffc979
--- /dev/null
+++ b/patches/linux-3.12/0271-ARM-dts-am335x-evmsk-Audio-support.patch
@@ -0,0 +1,95 @@
+From: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Date: Sun, 20 Oct 2013 20:04:11 +0300
+Subject: [PATCH] ARM: dts: am335x-evmsk: Audio support
+
+AM335x EVM-SK have only support for audio playback (stereo jack on the
+board) via tlv320aic3106 codec connected to McASP1.
+Enable the support for audio playback on the board:
+- McASP1 configuration
+- tlv320aic3106 configuration
+- Machine driver.
+
+Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Signed-off-by: Jyri Sarha <jsarha@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-evmsk.dts | 48 ++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 48 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
+index 1a7e0d9..03febf8 100644
+--- a/arch/arm/boot/dts/am335x-evmsk.dts
++++ b/arch/arm/boot/dts/am335x-evmsk.dts
+@@ -115,6 +115,17 @@
+ brightness-levels = <0 58 61 66 75 90 125 170 255>;
+ default-brightness-level = <8>;
+ };
++
++ sound {
++ compatible = "ti,da830-evm-audio";
++ ti,model = "AM335x-EVMSK";
++ ti,audio-codec = <&tlv320aic3106>;
++ ti,mcasp-controller = <&mcasp1>;
++ ti,codec-clock-rate = <24576000>;
++ ti,audio-routing =
++ "Headphone Jack", "HPLOUT",
++ "Headphone Jack", "HPROUT";
++ };
+ };
+
+ &am33xx_pinmux {
+@@ -244,6 +255,15 @@
+ 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+ >;
+ };
++
++ mcasp1_pins: mcasp1_pins {
++ pinctrl-single,pins = <
++ 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
++ 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_rxerr.mcasp1_fsx */
++ 0x108 (PIN_OUTPUT_PULLDOWN | MUX_MODE4) /* mii1_col.mcasp1_axr2 */
++ 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* rmii1_ref_clk.mcasp1_axr3 */
++ >;
++ };
+ };
+
+ &uart0 {
+@@ -291,6 +311,18 @@
+ st,max-limit-y = <550>;
+ st,max-limit-z = <750>;
+ };
++
++ tlv320aic3106: tlv320aic3106@1b {
++ compatible = "ti,tlv320aic3106";
++ reg = <0x1b>;
++ status = "okay";
++
++ /* Regulators */
++ AVDD-supply = <&vaux2_reg>;
++ IOVDD-supply = <&vaux2_reg>;
++ DRVDD-supply = <&vaux2_reg>;
++ DVDD-supply = <&vbat>;
++ };
+ };
+
+ &usb {
+@@ -437,3 +469,19 @@
+ &gpio0 {
+ ti,no-reset-on-init;
+ };
++
++&mcasp1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&mcasp1_pins>;
++
++ status = "okay";
++
++ op-mode = <0>; /* MCASP_IIS_MODE */
++ tdm-slots = <2>;
++ /* 4 serializers */
++ serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
++ 0 0 1 2
++ >;
++ tx-num-evt = <1>;
++ rx-num-evt = <1>;
++};
diff --git a/patches/linux-3.12/0272-ARM-dts-omap3-beagle-Adapt-USB-OTG-to-generic-PHY-fr.patch b/patches/linux-3.12/0272-ARM-dts-omap3-beagle-Adapt-USB-OTG-to-generic-PHY-fr.patch
new file mode 100644
index 0000000..bc09821
--- /dev/null
+++ b/patches/linux-3.12/0272-ARM-dts-omap3-beagle-Adapt-USB-OTG-to-generic-PHY-fr.patch
@@ -0,0 +1,33 @@
+From: Roger Quadros <rogerq@ti.com>
+Date: Mon, 7 Oct 2013 13:46:50 +0300
+Subject: [PATCH] ARM: dts: omap3-beagle: Adapt USB OTG to generic PHY
+ framework
+
+The generic PHY framewrok expects different properties than the
+old USB PHY framework. Supply those properties.
+
+Fixes USB OTG port on beagle after the Generic PHY framework was
+merged in greg/usb-next. [1]
+
+[1] - https://lkml.org/lkml/2013/9/27/581
+
+Signed-off-by: Roger Quadros <rogerq@ti.com>
+Acked-by: Felipe Balbi <balbi@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-beagle.dts | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts
+index 7669c16..fa532aa 100644
+--- a/arch/arm/boot/dts/omap3-beagle.dts
++++ b/arch/arm/boot/dts/omap3-beagle.dts
+@@ -173,6 +173,8 @@
+ &usb_otg_hs {
+ interface-type = <0>;
+ usb-phy = <&usb2_phy>;
++ phys = <&usb2_phy>;
++ phy-names = "usb2-phy";
+ mode = <3>;
+ power = <50>;
+ };
diff --git a/patches/linux-3.12/0273-ARM-dts-AM4372-Add-McASP-nodes.patch b/patches/linux-3.12/0273-ARM-dts-AM4372-Add-McASP-nodes.patch
new file mode 100644
index 0000000..0a6032a
--- /dev/null
+++ b/patches/linux-3.12/0273-ARM-dts-AM4372-Add-McASP-nodes.patch
@@ -0,0 +1,49 @@
+From: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Date: Mon, 21 Oct 2013 12:45:58 +0300
+Subject: [PATCH] ARM: dts: AM4372: Add McASP nodes
+
+Add nodes for McASP0 and McASP1 for AM43xx.
+
+Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am4372.dtsi | 27 +++++++++++++++++++++++++++
+ 1 file changed, 27 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
+index c328d5c..defaad1 100644
+--- a/arch/arm/boot/dts/am4372.dtsi
++++ b/arch/arm/boot/dts/am4372.dtsi
+@@ -633,5 +633,32 @@
+ dma-names = "tx", "rx";
+ };
+
++ mcasp0: mcasp@48038000 {
++ compatible = "ti,am33xx-mcasp-audio";
++ ti,hwmods = "mcasp0";
++ reg = <0x48038000 0x2000>,
++ <0x46000000 0x400000>;
++ reg-names = "mpu", "dat";
++ interrupts = <80>, <81>;
++ interrupts-names = "tx", "rx";
++ status = "disabled";
++ dmas = <&edma 8>,
++ <&edma 9>;
++ dma-names = "tx", "rx";
++ };
++
++ mcasp1: mcasp@4803C000 {
++ compatible = "ti,am33xx-mcasp-audio";
++ ti,hwmods = "mcasp1";
++ reg = <0x4803C000 0x2000>,
++ <0x46400000 0x400000>;
++ reg-names = "mpu", "dat";
++ interrupts = <82>, <83>;
++ interrupts-names = "tx", "rx";
++ status = "disabled";
++ dmas = <&edma 10>,
++ <&edma 11>;
++ dma-names = "tx", "rx";
++ };
+ };
+ };
diff --git a/patches/linux-3.12/0274-ARM-dts-igep0033-Add-mmc1-node-for-SDCARD-support.patch b/patches/linux-3.12/0274-ARM-dts-igep0033-Add-mmc1-node-for-SDCARD-support.patch
new file mode 100644
index 0000000..47a6b49
--- /dev/null
+++ b/patches/linux-3.12/0274-ARM-dts-igep0033-Add-mmc1-node-for-SDCARD-support.patch
@@ -0,0 +1,43 @@
+From: Enric Balletbo i Serra <eballetbo@gmail.com>
+Date: Sat, 19 Oct 2013 22:55:19 +0200
+Subject: [PATCH] ARM: dts: igep0033: Add mmc1 node for SDCARD support.
+
+Add mmc1 dt node to IGEP COM AQUILA board.
+
+Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am335x-igep0033.dtsi | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-igep0033.dtsi b/arch/arm/boot/dts/am335x-igep0033.dtsi
+index 06eba07..6196244 100644
+--- a/arch/arm/boot/dts/am335x-igep0033.dtsi
++++ b/arch/arm/boot/dts/am335x-igep0033.dtsi
+@@ -44,6 +44,13 @@
+ regulator-max-microvolt = <5000000>;
+ regulator-boot-on;
+ };
++
++ vmmc: fixedregulator@0 {
++ compatible = "regulator-fixed";
++ regulator-name = "vmmc";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ };
+ };
+
+ &am33xx_pinmux {
+@@ -180,6 +187,12 @@
+ };
+ };
+
++&mmc1 {
++ status = "okay";
++ vmmc-supply = <&vmmc>;
++ bus-width = <4>;
++};
++
+ &uart0 {
+ status = "okay";
+ pinctrl-names = "default";
diff --git a/patches/linux-3.12/0275-ARM-dts-OMAP3-Add-i2c-aliases.patch b/patches/linux-3.12/0275-ARM-dts-OMAP3-Add-i2c-aliases.patch
new file mode 100644
index 0000000..687676b
--- /dev/null
+++ b/patches/linux-3.12/0275-ARM-dts-OMAP3-Add-i2c-aliases.patch
@@ -0,0 +1,83 @@
+From: Nishanth Menon <nm@ti.com>
+Date: Wed, 16 Oct 2013 15:21:03 -0500
+Subject: [PATCH] ARM: dts: OMAP3+: Add i2c aliases
+
+Currently, on OMAP5, i2c1 and i2c5 defer probe due to pinctrl
+dependencies. This changes the i2c ID each bus is registered with in
+i2c-dev interface. As a result of this, many userspace tools break and
+there is no consistent manner to fix the same if the i2c dev interface
+have no consistent numbering.
+
+Since this could happen for other OMAP derivatives, provide i2c alias
+for all OMAP3+ SoCs to allow ordering the i2c devices correctly.
+
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/dra7.dtsi | 5 +++++
+ arch/arm/boot/dts/omap3.dtsi | 3 +++
+ arch/arm/boot/dts/omap4.dtsi | 4 ++++
+ arch/arm/boot/dts/omap5.dtsi | 5 +++++
+ 4 files changed, 17 insertions(+)
+
+diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
+index c01ef76..98ff655 100644
+--- a/arch/arm/boot/dts/dra7.dtsi
++++ b/arch/arm/boot/dts/dra7.dtsi
+@@ -20,6 +20,11 @@
+ interrupt-parent = <&gic>;
+
+ aliases {
++ i2c0 = &i2c1;
++ i2c1 = &i2c2;
++ i2c2 = &i2c3;
++ i2c3 = &i2c4;
++ i2c4 = &i2c5;
+ serial0 = &uart1;
+ serial1 = &uart2;
+ serial2 = &uart3;
+diff --git a/arch/arm/boot/dts/omap3.dtsi b/arch/arm/boot/dts/omap3.dtsi
+index b87d6d3..4fd4229 100644
+--- a/arch/arm/boot/dts/omap3.dtsi
++++ b/arch/arm/boot/dts/omap3.dtsi
+@@ -19,6 +19,9 @@
+ interrupt-parent = <&intc>;
+
+ aliases {
++ i2c0 = &i2c1;
++ i2c1 = &i2c2;
++ i2c2 = &i2c3;
+ serial0 = &uart1;
+ serial1 = &uart2;
+ serial2 = &uart3;
+diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
+index 6ca45b0..0d8fdba 100644
+--- a/arch/arm/boot/dts/omap4.dtsi
++++ b/arch/arm/boot/dts/omap4.dtsi
+@@ -17,6 +17,10 @@
+ interrupt-parent = <&gic>;
+
+ aliases {
++ i2c0 = &i2c1;
++ i2c1 = &i2c2;
++ i2c2 = &i2c3;
++ i2c3 = &i2c4;
+ serial0 = &uart1;
+ serial1 = &uart2;
+ serial2 = &uart3;
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index 53686e4..2cb72ba 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -21,6 +21,11 @@
+ interrupt-parent = <&gic>;
+
+ aliases {
++ i2c0 = &i2c1;
++ i2c1 = &i2c2;
++ i2c2 = &i2c3;
++ i2c3 = &i2c4;
++ i2c4 = &i2c5;
+ serial0 = &uart1;
+ serial1 = &uart2;
+ serial2 = &uart3;
diff --git a/patches/linux-3.12/0276-ARM-dts-AM33xx-Add-i2c-aliases.patch b/patches/linux-3.12/0276-ARM-dts-AM33xx-Add-i2c-aliases.patch
new file mode 100644
index 0000000..02f8860
--- /dev/null
+++ b/patches/linux-3.12/0276-ARM-dts-AM33xx-Add-i2c-aliases.patch
@@ -0,0 +1,41 @@
+From: Nishanth Menon <nm@ti.com>
+Date: Wed, 16 Oct 2013 15:21:04 -0500
+Subject: [PATCH] ARM: dts: AM33xx+: Add i2c aliases
+
+Provide alias to allow ordering the i2c devices correctly.
+
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/am33xx.dtsi | 3 +++
+ arch/arm/boot/dts/am4372.dtsi | 3 +++
+ 2 files changed, 6 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
+index c131638..0ca13ad 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -18,6 +18,9 @@
+ interrupt-parent = <&intc>;
+
+ aliases {
++ i2c0 = &i2c0;
++ i2c1 = &i2c1;
++ i2c2 = &i2c2;
+ serial0 = &uart0;
+ serial1 = &uart1;
+ serial2 = &uart2;
+diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
+index defaad1..974d103 100644
+--- a/arch/arm/boot/dts/am4372.dtsi
++++ b/arch/arm/boot/dts/am4372.dtsi
+@@ -18,6 +18,9 @@
+
+
+ aliases {
++ i2c0 = &i2c0;
++ i2c1 = &i2c1;
++ i2c2 = &i2c2;
+ serial0 = &uart0;
+ ethernet0 = &cpsw_emac0;
+ ethernet1 = &cpsw_emac1;
diff --git a/patches/linux-3.12/0277-ARM-dts-Add-support-for-Newflow-NanoBone-board.patch b/patches/linux-3.12/0277-ARM-dts-Add-support-for-Newflow-NanoBone-board.patch
new file mode 100644
index 0000000..2541afd
--- /dev/null
+++ b/patches/linux-3.12/0277-ARM-dts-Add-support-for-Newflow-NanoBone-board.patch
@@ -0,0 +1,506 @@
+From: Mark Jackson <mpfj-list@newflow.co.uk>
+Date: Fri, 4 Oct 2013 09:15:01 +0100
+Subject: [PATCH] ARM: dts: Add support for Newflow NanoBone board
+
+NanoBone Specification:
+-----------------------
+CPU:
+ TI AM335x
+
+Memory:
+ 256MB DDR3
+ 128MB NOR flash
+ 128KB FRAM
+
+Ethernet:
+ 2 x 10/100 connected to SMSC LAN8710 PHY
+
+USB:
+ 1 x USB2.0 Type A
+
+I2C:
+ 2Kbit EEPROM (Microchip 24AA02)
+ RTC (Maxim DS1338)
+ GPIO Expander (Microchip MCP23017)
+
+Expansion connector:
+ 6 x UART
+ 1 x MMC/SD
+ 1 x USB2.0
+
+Signed-off-by: Mark Jackson <mpfj@newflow.co.uk>
+Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ MAINTAINERS | 6 +
+ arch/arm/boot/dts/Makefile | 1 +
+ arch/arm/boot/dts/am335x-nano.dts | 431 ++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 438 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-nano.dts
+
+diff --git a/MAINTAINERS b/MAINTAINERS
+index ffcaf97..856030d 100644
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -6109,6 +6109,12 @@ L: linux-omap@vger.kernel.org
+ S: Maintained
+ F: drivers/gpio/gpio-omap.c
+
++OMAP/NEWFLOW NANOBONE MACHINE SUPPORT
++M: Mark Jackson <mpfj@newflow.co.uk>
++L: linux-omap@vger.kernel.org
++S: Maintained
++F: arch/arm/boot/dts/am335x-nano.dts
++
+ OMFS FILESYSTEM
+ M: Bob Copeland <me@bobcopeland.com>
+ L: linux-karma-devel@lists.sourceforge.net
+diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
+index 9df7d2c..37c6ec9 100644
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -188,6 +188,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
+ am335x-evmsk.dtb \
+ am335x-bone.dtb \
+ am335x-boneblack.dtb \
++ am335x-nano.dtb \
+ am335x-base0033.dtb \
+ am3517-evm.dtb \
+ am3517_mt_ventoux.dtb \
+diff --git a/arch/arm/boot/dts/am335x-nano.dts b/arch/arm/boot/dts/am335x-nano.dts
+new file mode 100644
+index 0000000..9907b49
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-nano.dts
+@@ -0,0 +1,431 @@
++/*
++ * Copyright (C) 2013 Newflow Ltd - http://www.newflow.co.uk/
++ *
++ * 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.
++ */
++/dts-v1/;
++
++#include "am33xx.dtsi"
++
++/ {
++ model = "Newflow AM335x NanoBone";
++ compatible = "ti,am33xx";
++
++ cpus {
++ cpu@0 {
++ cpu0-supply = <&dcdc2_reg>;
++ };
++ };
++
++ memory {
++ device_type = "memory";
++ reg = <0x80000000 0x10000000>; /* 256 MB */
++ };
++
++ leds {
++ compatible = "gpio-leds";
++
++ led@0 {
++ label = "nanobone:green:usr1";
++ gpios = <&gpio1 5 0>;
++ default-state = "off";
++ };
++ };
++};
++
++&am33xx_pinmux {
++ pinctrl-names = "default";
++ pinctrl-0 = <&misc_pins>;
++
++ misc_pins: misc_pins {
++ pinctrl-single,pins = <
++ 0x15c (PIN_OUTPUT | MUX_MODE7) /* spi0_cs0.gpio0_5 */
++ >;
++ };
++
++ gpmc_pins: gpmc_pins {
++ pinctrl-single,pins = <
++ 0x0 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */
++ 0x4 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */
++ 0x8 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */
++ 0xc (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */
++ 0x10 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */
++ 0x14 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */
++ 0x18 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */
++ 0x1c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */
++ 0x20 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad8.gpmc_ad8 */
++ 0x24 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad9.gpmc_ad9 */
++ 0x28 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad10.gpmc_ad10 */
++ 0x2c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad11.gpmc_ad11 */
++ 0x30 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad12.gpmc_ad12 */
++ 0x34 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad13.gpmc_ad13 */
++ 0x38 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad14.gpmc_ad14 */
++ 0x3c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad15.gpmc_ad15 */
++
++ 0x70 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */
++ 0x7c (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */
++ 0x80 (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn1.gpmc_csn1 */
++ 0x84 (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn2.gpmc_csn2 */
++ 0x88 (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn3.gpmc_csn3 */
++
++ 0x90 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */
++ 0x94 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */
++ 0x98 (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */
++ 0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_ben0_cle.gpmc_ben0_cle */
++
++ 0xa4 (PIN_OUTPUT | MUX_MODE1) /* lcd_data1.gpmc_a1 */
++ 0xa8 (PIN_OUTPUT | MUX_MODE1) /* lcd_data2.gpmc_a2 */
++ 0xac (PIN_OUTPUT | MUX_MODE1) /* lcd_data3.gpmc_a3 */
++ 0xb0 (PIN_OUTPUT | MUX_MODE1) /* lcd_data4.gpmc_a4 */
++ 0xb4 (PIN_OUTPUT | MUX_MODE1) /* lcd_data5.gpmc_a5 */
++ 0xb8 (PIN_OUTPUT | MUX_MODE1) /* lcd_data6.gpmc_a6 */
++ 0xbc (PIN_OUTPUT | MUX_MODE1) /* lcd_data7.gpmc_a7 */
++
++ 0xe0 (PIN_OUTPUT | MUX_MODE1) /* lcd_vsync.gpmc_a8 */
++ 0xe4 (PIN_OUTPUT | MUX_MODE1) /* lcd_hsync.gpmc_a9 */
++ 0xe8 (PIN_OUTPUT | MUX_MODE1) /* lcd_pclk.gpmc_a10 */
++ >;
++ };
++
++ i2c0_pins: i2c0_pins {
++ pinctrl-single,pins = <
++ 0x188 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* i2c0_sda.i2c0_sda */
++ 0x18c (PIN_INPUT_PULLDOWN | MUX_MODE0) /* i2c0_scl.i2c0_scl */
++ >;
++ };
++
++ uart0_pins: uart0_pins {
++ pinctrl-single,pins = <
++ 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
++ 0x174 (PIN_OUTPUT | MUX_MODE0) /* uart0_txd.uart0_txd */
++ >;
++ };
++
++ uart1_pins: uart1_pins {
++ pinctrl-single,pins = <
++ 0x178 (PIN_OUTPUT | MUX_MODE7) /* uart1_ctsn.uart1_ctsn */
++ 0x17c (PIN_OUTPUT | MUX_MODE7) /* uart1_rtsn.uart1_rtsn */
++ 0x180 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rxd.uart1_rxd */
++ 0x184 (PIN_OUTPUT | MUX_MODE0) /* uart1_txd.uart1_txd */
++ >;
++ };
++
++ uart2_pins: uart2_pins {
++ pinctrl-single,pins = <
++ 0xc0 (PIN_INPUT_PULLUP | MUX_MODE7) /* lcd_data8.gpio2[14] */
++ 0xc4 (PIN_OUTPUT | MUX_MODE7) /* lcd_data9.gpio2[15] */
++ 0x150 (PIN_INPUT | MUX_MODE1) /* spi0_sclk.uart2_rxd */
++ 0x154 (PIN_OUTPUT | MUX_MODE1) /* spi0_d0.uart2_txd */
++ >;
++ };
++
++ uart3_pins: uart3_pins {
++ pinctrl-single,pins = <
++ 0xc8 (PIN_INPUT_PULLUP | MUX_MODE6) /* lcd_data10.uart3_ctsn */
++ 0xcc (PIN_OUTPUT | MUX_MODE6) /* lcd_data11.uart3_rtsn */
++ 0x160 (PIN_INPUT | MUX_MODE1) /* spi0_cs1.uart3_rxd */
++ 0x164 (PIN_OUTPUT | MUX_MODE1) /* ecap0_in_pwm0_out.uart3_txd */
++ >;
++ };
++
++ uart4_pins: uart4_pins {
++ pinctrl-single,pins = <
++ 0xd0 (PIN_INPUT_PULLUP | MUX_MODE6) /* lcd_data12.uart4_ctsn */
++ 0xd4 (PIN_OUTPUT | MUX_MODE6) /* lcd_data13.uart4_rtsn */
++ 0x168 (PIN_INPUT | MUX_MODE1) /* uart0_ctsn.uart4_rxd */
++ 0x16c (PIN_OUTPUT | MUX_MODE1) /* uart0_rtsn.uart4_txd */
++ >;
++ };
++
++ uart5_pins: uart5_pins {
++ pinctrl-single,pins = <
++ 0xd8 (PIN_INPUT | MUX_MODE4) /* lcd_data14.uart5_rxd */
++ 0x144 (PIN_OUTPUT | MUX_MODE3) /* rmiii1_refclk.uart5_txd */
++ >;
++ };
++
++ mmc1_pins: mmc1_pins {
++ pinctrl-single,pins = <
++ 0xf0 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat0.mmc0_dat0 */
++ 0xf4 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat1.mmc0_dat1 */
++ 0xf8 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat2.mmc0_dat2 */
++ 0xfc (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat3.mmc0_dat3 */
++ 0x100 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_clk.mmc0_clk */
++ 0x104 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_cmd.mmc0_cmd */
++ 0x1e8 (PIN_INPUT_PULLUP | MUX_MODE7) /* emu1.gpio3[8] */
++ 0x1a0 (PIN_INPUT_PULLUP | MUX_MODE7) /* mcasp0_aclkr.gpio3[18] */
++ >;
++ };
++};
++
++&uart0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart0_pins>;
++ status = "okay";
++};
++
++&uart1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart1_pins>;
++ status = "okay";
++ rts-gpio = <&gpio0 13 GPIO_ACTIVE_HIGH>;
++ rs485-rts-active-high;
++ rs485-rx-during-tx;
++ rs485-rts-delay = <1 1>;
++ linux,rs485-enabled-at-boot-time;
++};
++
++&uart2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart2_pins>;
++ status = "okay";
++ rts-gpio = <&gpio2 15 GPIO_ACTIVE_HIGH>;
++ rs485-rts-active-high;
++ rs485-rts-delay = <1 1>;
++ linux,rs485-enabled-at-boot-time;
++};
++
++&uart3 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart3_pins>;
++ status = "okay";
++};
++
++&uart4 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart4_pins>;
++ status = "okay";
++};
++
++&uart5 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart5_pins>;
++ status = "okay";
++};
++
++&i2c0 {
++ status = "okay";
++ pinctrl-names = "default";
++ clock-frequency = <400000>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins>;
++
++ gpio@20 {
++ compatible = "mcp,mcp23017";
++ reg = <0x20>;
++ };
++
++ tps: tps@24 {
++ reg = <0x24>;
++ };
++
++ eeprom@53 {
++ compatible = "mcp,24c02";
++ reg = <0x53>;
++ pagesize = <8>;
++ };
++
++ rtc@68 {
++ compatible = "dallas,ds1307";
++ reg = <0x68>;
++ };
++};
++
++&elm {
++ status = "okay";
++};
++
++&gpmc {
++ compatible = "ti,am3352-gpmc";
++ ti,hwmods = "gpmc";
++ status = "okay";
++ gpmc,num-waitpins = <2>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&gpmc_pins>;
++
++ #address-cells = <2>;
++ #size-cells = <1>;
++ ranges = <0 0 0x08000000 0x08000000>; /* CS0: NOR 128M */
++
++ nor@0,0 {
++ reg = <0 0x00000000 0x08000000>;
++ compatible = "cfi-flash";
++ linux,mtd-name = "spansion,s29gl010p11t";
++ bank-width = <2>;
++
++ gpmc,mux-add-data = <2>;
++
++ gpmc,sync-clk-ps = <0>;
++ gpmc,cs-on-ns = <0>;
++ gpmc,cs-rd-off-ns = <160>;
++ gpmc,cs-wr-off-ns = <160>;
++ gpmc,adv-on-ns = <10>;
++ gpmc,adv-rd-off-ns = <30>;
++ gpmc,adv-wr-off-ns = <30>;
++ gpmc,oe-on-ns = <40>;
++ gpmc,oe-off-ns = <160>;
++ gpmc,we-on-ns = <40>;
++ gpmc,we-off-ns = <160>;
++ gpmc,rd-cycle-ns = <160>;
++ gpmc,wr-cycle-ns = <160>;
++ gpmc,access-ns = <150>;
++ gpmc,page-burst-access-ns = <10>;
++ gpmc,cycle2cycle-samecsen;
++ gpmc,cycle2cycle-delay-ns = <20>;
++ gpmc,wr-data-mux-bus-ns = <70>;
++ gpmc,wr-access-ns = <80>;
++
++ #address-cells = <1>;
++ #size-cells = <1>;
++
++ /*
++ MTD partition table
++ ===================
++ +------------+-->0x00000000-> U-Boot start
++ | |
++ | |-->0x000BFFFF-> U-Boot end
++ | |-->0x000C0000-> ENV1 start
++ | |
++ | |-->0x000DFFFF-> ENV1 end
++ | |-->0x000E0000-> ENV2 start
++ | |
++ | |-->0x000FFFFF-> ENV2 end
++ | |-->0x00100000-> Kernel start
++ | |
++ | |-->0x004FFFFF-> Kernel end
++ | |-->0x00500000-> File system start
++ | |
++ | |-->0x014FFFFF-> File system end
++ | |-->0x01500000-> User data start
++ | |
++ | |-->0x03FFFFFF-> User data end
++ | |-->0x04000000-> Data storage start
++ | |
++ +------------+-->0x08000000-> NOR end (Free end)
++ */
++ partition@0 {
++ label = "boot";
++ reg = <0x00000000 0x000c0000>; /* 768KB */
++ };
++
++ partition@1 {
++ label = "env1";
++ reg = <0x000c0000 0x00020000>; /* 128KB */
++ };
++
++ partition@2 {
++ label = "env2";
++ reg = <0x000e0000 0x00020000>; /* 128KB */
++ };
++
++ partition@3 {
++ label = "kernel";
++ reg = <0x00100000 0x00400000>; /* 4MB */
++ };
++
++ partition@4 {
++ label = "rootfs";
++ reg = <0x00500000 0x01000000>; /* 16MB */
++ };
++
++ partition@5 {
++ label = "user";
++ reg = <0x01500000 0x02b00000>; /* 43MB */
++ };
++
++ partition@6 {
++ label = "data";
++ reg = <0x04000000 0x04000000>; /* 64MB */
++ };
++ };
++};
++
++&mac {
++ dual_emac = <1>;
++};
++
++&cpsw_emac0 {
++ phy_id = <&davinci_mdio>, <0>;
++ dual_emac_res_vlan = <1>;
++};
++
++&cpsw_emac1 {
++ phy_id = <&davinci_mdio>, <1>;
++ dual_emac_res_vlan = <2>;
++};
++
++&mmc1 {
++ status = "okay";
++ vmmc-supply = <&ldo4_reg>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&mmc1_pins>;
++ bus-width = <4>;
++ cd-gpios = <&gpio3 8 0>;
++ wp-gpios = <&gpio3 18 0>;
++};
++
++#include "tps65217.dtsi"
++
++&tps {
++ regulators {
++ dcdc1_reg: regulator@0 {
++ /* +1.5V voltage with ±4% tolerance */
++ regulator-min-microvolt = <1450000>;
++ regulator-max-microvolt = <1550000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ dcdc2_reg: regulator@1 {
++ /* VDD_MPU voltage limits 0.95V - 1.1V with ±4% tolerance */
++ regulator-name = "vdd_mpu";
++ regulator-min-microvolt = <915000>;
++ regulator-max-microvolt = <1140000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ dcdc3_reg: regulator@2 {
++ /* VDD_CORE voltage limits 0.95V - 1.1V with ±4% tolerance */
++ regulator-name = "vdd_core";
++ regulator-min-microvolt = <915000>;
++ regulator-max-microvolt = <1140000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ ldo1_reg: regulator@3 {
++ /* +1.8V voltage with ±4% tolerance */
++ regulator-min-microvolt = <1750000>;
++ regulator-max-microvolt = <1870000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ ldo2_reg: regulator@4 {
++ /* +3.3V voltage with ±4% tolerance */
++ regulator-min-microvolt = <3175000>;
++ regulator-max-microvolt = <3430000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ ldo3_reg: regulator@5 {
++ /* +1.8V voltage with ±4% tolerance */
++ regulator-min-microvolt = <1750000>;
++ regulator-max-microvolt = <1870000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++
++ ldo4_reg: regulator@6 {
++ /* +3.3V voltage with ±4% tolerance */
++ regulator-min-microvolt = <3175000>;
++ regulator-max-microvolt = <3430000>;
++ regulator-boot-on;
++ regulator-always-on;
++ };
++ };
++};
diff --git a/patches/linux-3.12/0278-ARM-dts-omap5-uevm-fix-mcspi-node-pin-descriptions.patch b/patches/linux-3.12/0278-ARM-dts-omap5-uevm-fix-mcspi-node-pin-descriptions.patch
new file mode 100644
index 0000000..94fadd8
--- /dev/null
+++ b/patches/linux-3.12/0278-ARM-dts-omap5-uevm-fix-mcspi-node-pin-descriptions.patch
@@ -0,0 +1,52 @@
+From: Eric Witcher <ewitcher@mindspring.com>
+Date: Fri, 18 Oct 2013 02:42:34 -0400
+Subject: [PATCH] ARM: dts: omap5-uevm: fix mcspi node pin descriptions
+
+Correct mcspi pin descriptions to match corresponding node name and
+add chip select number to be consistent with OMAP5 TRM.
+
+Signed-off-by: Eric Witcher <ewitcher@mindspring.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 18 +++++++++---------
+ 1 file changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index e06a04a..8d80305 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -131,25 +131,25 @@
+ 0xbc (PIN_INPUT | MUX_MODE0) /* mcspi2_clk */
+ 0xbe (PIN_INPUT | MUX_MODE0) /* mcspi2_simo */
+ 0xc0 (PIN_INPUT_PULLUP | MUX_MODE0) /* mcspi2_somi */
+- 0xc2 (PIN_OUTPUT | MUX_MODE0) /* mcspi2_cs */
++ 0xc2 (PIN_OUTPUT | MUX_MODE0) /* mcspi2_cs0 */
+ >;
+ };
+
+ mcspi3_pins: pinmux_mcspi3_pins {
+ pinctrl-single,pins = <
+- 0x78 (PIN_INPUT | MUX_MODE1) /* mcspi2_somi */
+- 0x7a (PIN_INPUT | MUX_MODE1) /* mcspi2_cs */
+- 0x7c (PIN_INPUT | MUX_MODE1) /* mcspi2_simo */
+- 0x7e (PIN_INPUT | MUX_MODE1) /* mcspi2_clk */
++ 0x78 (PIN_INPUT | MUX_MODE1) /* mcspi3_somi */
++ 0x7a (PIN_INPUT | MUX_MODE1) /* mcspi3_cs0 */
++ 0x7c (PIN_INPUT | MUX_MODE1) /* mcspi3_simo */
++ 0x7e (PIN_INPUT | MUX_MODE1) /* mcspi3_clk */
+ >;
+ };
+
+ mcspi4_pins: pinmux_mcspi4_pins {
+ pinctrl-single,pins = <
+- 0x164 (PIN_INPUT | MUX_MODE1) /* mcspi2_clk */
+- 0x168 (PIN_INPUT | MUX_MODE1) /* mcspi2_simo */
+- 0x16a (PIN_INPUT | MUX_MODE1) /* mcspi2_somi */
+- 0x16c (PIN_INPUT | MUX_MODE1) /* mcspi2_cs */
++ 0x164 (PIN_INPUT | MUX_MODE1) /* mcspi4_clk */
++ 0x168 (PIN_INPUT | MUX_MODE1) /* mcspi4_simo */
++ 0x16a (PIN_INPUT | MUX_MODE1) /* mcspi4_somi */
++ 0x16c (PIN_INPUT | MUX_MODE1) /* mcspi4_cs0 */
+ >;
+ };
+
diff --git a/patches/linux-3.12/0279-ARM-dts-omap5-uevm-add-smps123-supply-for-CPU.patch b/patches/linux-3.12/0279-ARM-dts-omap5-uevm-add-smps123-supply-for-CPU.patch
new file mode 100644
index 0000000..ea8e863
--- /dev/null
+++ b/patches/linux-3.12/0279-ARM-dts-omap5-uevm-add-smps123-supply-for-CPU.patch
@@ -0,0 +1,40 @@
+From: Nishanth Menon <nm@ti.com>
+Date: Wed, 16 Oct 2013 10:39:04 -0500
+Subject: [PATCH] ARM: dts: omap5-uevm: add smps123 supply for CPU
+
+regulator smps123 supply from Palmas PMIC powers CPU0 on OMAP5uEVM.
+
+Based on a patch by J Keerthy <j-keerthy@ti.com>
+
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 4 ++++
+ arch/arm/boot/dts/omap5.dtsi | 2 +-
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index 8d80305..22d9b51 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -501,3 +501,7 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart5_pins>;
+ };
++
++&cpu0 {
++ cpu0-supply = <&smps123_reg>;
++};
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index 2cb72ba..b315873 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -38,7 +38,7 @@
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+- cpu@0 {
++ cpu0: cpu@0 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a15";
+ reg = <0x0>;
diff --git a/patches/linux-3.12/0280-ARM-dts-dra7-evm-add-smps123-supply-for-CPU.patch b/patches/linux-3.12/0280-ARM-dts-dra7-evm-add-smps123-supply-for-CPU.patch
new file mode 100644
index 0000000..9e4e55c
--- /dev/null
+++ b/patches/linux-3.12/0280-ARM-dts-dra7-evm-add-smps123-supply-for-CPU.patch
@@ -0,0 +1,40 @@
+From: J Keerthy <j-keerthy@ti.com>
+Date: Wed, 16 Oct 2013 10:39:05 -0500
+Subject: [PATCH] ARM: dts: dra7-evm: add smps123 supply for CPU
+
+regulator smps123 supply from Palmas PMIC powers CPU0 on DRA7 EVM.
+
+[nm@ti.com: rebase to latest]
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: J Keerthy <j-keerthy@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/dra7-evm.dts | 4 ++++
+ arch/arm/boot/dts/dra7.dtsi | 2 +-
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
+index 3abf5f4..5babba0 100644
+--- a/arch/arm/boot/dts/dra7-evm.dts
++++ b/arch/arm/boot/dts/dra7-evm.dts
+@@ -269,3 +269,7 @@
+ vmmc-supply = <&mmc2_3v3>;
+ bus-width = <8>;
+ };
++
++&cpu0 {
++ cpu0-supply = <&smps123_reg>;
++};
+diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
+index 98ff655..c4fb401 100644
+--- a/arch/arm/boot/dts/dra7.dtsi
++++ b/arch/arm/boot/dts/dra7.dtsi
+@@ -37,7 +37,7 @@
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+- cpu@0 {
++ cpu0: cpu@0 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a15";
+ reg = <0>;
diff --git a/patches/linux-3.12/0281-ARM-dts-OMAP5-Add-CPU-OPP-table.patch b/patches/linux-3.12/0281-ARM-dts-OMAP5-Add-CPU-OPP-table.patch
new file mode 100644
index 0000000..997be5e
--- /dev/null
+++ b/patches/linux-3.12/0281-ARM-dts-OMAP5-Add-CPU-OPP-table.patch
@@ -0,0 +1,43 @@
+From: J Keerthy <j-keerthy@ti.com>
+Date: Wed, 16 Oct 2013 10:39:06 -0500
+Subject: [PATCH] ARM: dts: OMAP5: Add CPU OPP table
+
+Add DT OPP table for OMAP54xx family of devices. This data is
+decoded by OF with of_init_opp_table() helper function.
+
+The data is based on OMAP543x ES2.0 DM Operating Condition Addendum
+Version 0.6(April 2013)
+
+NOTE: The voltage and frequency values work well only on NOM samples
+and are supposed to work properly only with ABB/AVS for ALL OPPs.
+
+TODO: Add SPEED BIN OPP after ABB and AVS support so the cpufreq works
+on all samples seamlessly. Clock node is pending alignment for clock
+dts conversion
+
+[nm@ti.com: sync to latest and fixes]
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: J Keerthy <j-keerthy@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5.dtsi | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
+index b315873..154d92f 100644
+--- a/arch/arm/boot/dts/omap5.dtsi
++++ b/arch/arm/boot/dts/omap5.dtsi
+@@ -42,6 +42,13 @@
+ device_type = "cpu";
+ compatible = "arm,cortex-a15";
+ reg = <0x0>;
++
++ operating-points = <
++ /* kHz uV */
++ 500000 880000
++ 1000000 1060000
++ 1500000 1250000
++ >;
+ };
+ cpu@1 {
+ device_type = "cpu";
diff --git a/patches/linux-3.12/0282-ARM-dts-DRA7-Add-CPU-OPP-table.patch b/patches/linux-3.12/0282-ARM-dts-DRA7-Add-CPU-OPP-table.patch
new file mode 100644
index 0000000..04a31e7
--- /dev/null
+++ b/patches/linux-3.12/0282-ARM-dts-DRA7-Add-CPU-OPP-table.patch
@@ -0,0 +1,40 @@
+From: J Keerthy <j-keerthy@ti.com>
+Date: Wed, 16 Oct 2013 10:39:07 -0500
+Subject: [PATCH] ARM: dts: DRA7: Add CPU OPP table
+
+Add DT OPP table for DRA7xx family of devices. This data is decoded by
+OF with of_init_opp_table() helper function.
+
+The data is based on DRA75x, DRA74x Data Manual revision F (Sept 2013).
+
+TODO: add OPP_HIGH after AVS-Class0 is functional
+NOTE: The voltage and frequency values work well only on NOM samples
+and it is mandatory to use ABB/AVS Class 0 support for all OPPs.
+
+Clock nodes are pending clock node alignment.
+
+[nm@ti.com: cleanups and rebase to latest]
+Signed-off-by: Nishanth Menon <nm@ti.com>
+Signed-off-by: J Keerthy <j-keerthy@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/dra7.dtsi | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
+index c4fb401..d0df4c4 100644
+--- a/arch/arm/boot/dts/dra7.dtsi
++++ b/arch/arm/boot/dts/dra7.dtsi
+@@ -41,6 +41,12 @@
+ device_type = "cpu";
+ compatible = "arm,cortex-a15";
+ reg = <0>;
++
++ operating-points = <
++ /* kHz uV */
++ 1000000 1060000
++ 1176000 1160000
++ >;
+ };
+ cpu@1 {
+ device_type = "cpu";
diff --git a/patches/linux-3.12/0283-ARM-dts-omap3-n900-Add-pinctrl-for-i2c-devices.patch b/patches/linux-3.12/0283-ARM-dts-omap3-n900-Add-pinctrl-for-i2c-devices.patch
new file mode 100644
index 0000000..bc555dc
--- /dev/null
+++ b/patches/linux-3.12/0283-ARM-dts-omap3-n900-Add-pinctrl-for-i2c-devices.patch
@@ -0,0 +1,77 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:30 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add pinctrl for i2c devices
+
+Add pin muxing support for the Nokia N900 i2c controllers.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 35 +++++++++++++++++++++++++++++++++++
+ 1 file changed, 35 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index e13b697..ad4edd9 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -28,7 +28,35 @@
+
+ };
+
++&omap3_pmx_core {
++ pinctrl-names = "default";
++
++ i2c1_pins: pinmux_i2c1_pins {
++ pinctrl-single,pins = <
++ 0x18a (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
++ 0x18c (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
++ >;
++ };
++
++ i2c2_pins: pinmux_i2c2_pins {
++ pinctrl-single,pins = <
++ 0x18e (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
++ 0x190 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
++ >;
++ };
++
++ i2c3_pins: pinmux_i2c3_pins {
++ pinctrl-single,pins = <
++ 0x192 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
++ 0x194 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
++ >;
++ };
++};
++
+ &i2c1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c1_pins>;
++
+ clock-frequency = <2200000>;
+
+ twl: twl@48 {
+@@ -39,6 +67,7 @@
+ };
+
+ #include "twl4030.dtsi"
++#include "twl4030_omap3.dtsi"
+
+ &twl_gpio {
+ ti,pullups = <0x0>;
+@@ -46,10 +75,16 @@
+ };
+
+ &i2c2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c2_pins>;
++
+ clock-frequency = <400000>;
+ };
+
+ &i2c3 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c3_pins>;
++
+ clock-frequency = <100000>;
+ };
+
diff --git a/patches/linux-3.12/0284-ARM-dts-omap3-n900-Fix-i2c-bus-speed.patch b/patches/linux-3.12/0284-ARM-dts-omap3-n900-Fix-i2c-bus-speed.patch
new file mode 100644
index 0000000..e8a26a3
--- /dev/null
+++ b/patches/linux-3.12/0284-ARM-dts-omap3-n900-Fix-i2c-bus-speed.patch
@@ -0,0 +1,33 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:31 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Fix i2c bus speed
+
+Fix the bus speed of i2c bus 2 and 3.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index ad4edd9..7dd6fb6 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -78,14 +78,14 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c2_pins>;
+
+- clock-frequency = <400000>;
++ clock-frequency = <100000>;
+ };
+
+ &i2c3 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c3_pins>;
+
+- clock-frequency = <100000>;
++ clock-frequency = <400000>;
+ };
+
+ &mmc1 {
diff --git a/patches/linux-3.12/0285-ARM-dts-omap3-n900-Add-UART-support.patch b/patches/linux-3.12/0285-ARM-dts-omap3-n900-Add-UART-support.patch
new file mode 100644
index 0000000..fede0d9
--- /dev/null
+++ b/patches/linux-3.12/0285-ARM-dts-omap3-n900-Add-UART-support.patch
@@ -0,0 +1,55 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:32 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add UART support
+
+Add UART support to Nokia N900.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 28 ++++++++++++++++++++++++++++
+ 1 file changed, 28 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 7dd6fb6..9226268 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -31,6 +31,20 @@
+ &omap3_pmx_core {
+ pinctrl-names = "default";
+
++ uart2_pins: pinmux_uart2_pins {
++ pinctrl-single,pins = <
++ 0x14a (PIN_INPUT | MUX_MODE0) /* uart2_rx */
++ 0x148 (PIN_OUTPUT | MUX_MODE0) /* uart2_tx */
++ >;
++ };
++
++ uart3_pins: pinmux_uart3_pins {
++ pinctrl-single,pins = <
++ 0x16e (PIN_INPUT | MUX_MODE0) /* uart3_rx */
++ 0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx */
++ >;
++ };
++
+ i2c1_pins: pinmux_i2c1_pins {
+ pinctrl-single,pins = <
+ 0x18a (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
+@@ -127,3 +141,17 @@
+ mode = <2>;
+ power = <50>;
+ };
++
++&uart1 {
++ status = "disabled";
++};
++
++&uart2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart2_pins>;
++};
++
++&uart3 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart3_pins>;
++};
diff --git a/patches/linux-3.12/0286-ARM-dts-omap3-n900-Add-support-for-SD-cards.patch b/patches/linux-3.12/0286-ARM-dts-omap3-n900-Add-support-for-SD-cards.patch
new file mode 100644
index 0000000..446d35e
--- /dev/null
+++ b/patches/linux-3.12/0286-ARM-dts-omap3-n900-Add-support-for-SD-cards.patch
@@ -0,0 +1,47 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:33 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add support for SD cards
+
+Add support for external SD card slot.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 17 ++++++++++++++++-
+ 1 file changed, 16 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 9226268..01a437e 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -65,6 +65,17 @@
+ 0x194 (PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
+ >;
+ };
++
++ mmc1_pins: pinmux_mmc1_pins {
++ pinctrl-single,pins = <
++ 0x114 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk */
++ 0x116 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd */
++ 0x118 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat0 */
++ 0x11a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1 */
++ 0x11c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2 */
++ 0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3 */
++ >;
++ };
+ };
+
+ &i2c1 {
+@@ -103,7 +114,11 @@
+ };
+
+ &mmc1 {
+- status = "disabled";
++ pinctrl-names = "default";
++ pinctrl-0 = <&mmc1_pins>;
++ vmmc-supply = <&vmmc1>;
++ bus-width = <4>;
++ cd-gpios = <&gpio6 0 GPIO_ACTIVE_HIGH>; /* 160 */
+ };
+
+ &mmc2 {
diff --git a/patches/linux-3.12/0287-ARM-dts-omap3-n900-GPIO-key-definitions.patch b/patches/linux-3.12/0287-ARM-dts-omap3-n900-GPIO-key-definitions.patch
new file mode 100644
index 0000000..ecad6fc
--- /dev/null
+++ b/patches/linux-3.12/0287-ARM-dts-omap3-n900-GPIO-key-definitions.patch
@@ -0,0 +1,73 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:34 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: GPIO key definitions
+
+Add device tree node for the GPIO keys provided by the
+N900 board. This is a simple conversion of the existing
+board code.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 48 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 48 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 01a437e..5082cb6 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -26,6 +26,54 @@
+ reg = <0x80000000 0x10000000>; /* 256 MB */
+ };
+
++ gpio_keys {
++ compatible = "gpio-keys";
++
++ camera_lens_cover {
++ label = "Camera Lens Cover";
++ gpios = <&gpio4 14 GPIO_ACTIVE_LOW>; /* 110 */
++ linux,input-type = <5>; /* EV_SW */
++ linux,code = <0x09>; /* SW_CAMERA_LENS_COVER */
++ gpio-key,wakeup;
++ };
++
++ camera_focus {
++ label = "Camera Focus";
++ gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; /* 68 */
++ linux,code = <0x210>; /* KEY_CAMERA_FOCUS */
++ gpio-key,wakeup;
++ };
++
++ camera_capture {
++ label = "Camera Capture";
++ gpios = <&gpio3 5 GPIO_ACTIVE_LOW>; /* 69 */
++ linux,code = <0xd4>; /* KEY_CAMERA */
++ gpio-key,wakeup;
++ };
++
++ lock_button {
++ label = "Lock Button";
++ gpios = <&gpio4 17 GPIO_ACTIVE_LOW>; /* 113 */
++ linux,code = <0x98>; /* KEY_SCREENLOCK */
++ gpio-key,wakeup;
++ };
++
++ keypad_slide {
++ label = "Keypad Slide";
++ gpios = <&gpio3 7 GPIO_ACTIVE_LOW>; /* 71 */
++ linux,input-type = <5>; /* EV_SW */
++ linux,code = <0x0a>; /* SW_KEYPAD_SLIDE */
++ gpio-key,wakeup;
++ };
++
++ proximity_sensor {
++ label = "Proximity Sensor";
++ gpios = <&gpio3 25 GPIO_ACTIVE_HIGH>; /* 89 */
++ linux,input-type = <5>; /* EV_SW */
++ linux,code = <0x0b>; /* SW_FRONT_PROXIMITY */
++ };
++ };
++
+ };
+
+ &omap3_pmx_core {
diff --git a/patches/linux-3.12/0288-ARM-dts-omap3-n900-Add-vibrator-device.patch b/patches/linux-3.12/0288-ARM-dts-omap3-n900-Add-vibrator-device.patch
new file mode 100644
index 0000000..90a3e78
--- /dev/null
+++ b/patches/linux-3.12/0288-ARM-dts-omap3-n900-Add-vibrator-device.patch
@@ -0,0 +1,30 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:35 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add vibrator device
+
+Add support for Nokia N900's vibrator.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 5082cb6..a02f64f 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -142,6 +142,13 @@
+ #include "twl4030.dtsi"
+ #include "twl4030_omap3.dtsi"
+
++&twl {
++ twl_audio: audio {
++ compatible = "ti,twl4030-audio";
++ ti,enable-vibra = <1>;
++ };
++};
++
+ &twl_gpio {
+ ti,pullups = <0x0>;
+ ti,pulldowns = <0x03ff3f>; /* BIT(0..5) | BIT(8..17) */
diff --git a/patches/linux-3.12/0289-ARM-dts-omap3-n900-Add-LP5523-support.patch b/patches/linux-3.12/0289-ARM-dts-omap3-n900-Add-LP5523-support.patch
new file mode 100644
index 0000000..e38fcbe
--- /dev/null
+++ b/patches/linux-3.12/0289-ARM-dts-omap3-n900-Add-LP5523-support.patch
@@ -0,0 +1,28 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:36 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add LP5523 support
+
+Add support for LP5523 device.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index a02f64f..c7e0d2d 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -159,6 +159,11 @@
+ pinctrl-0 = <&i2c2_pins>;
+
+ clock-frequency = <100000>;
++
++ bq27200: bq27200@55 {
++ compatible = "ti,bq27200";
++ reg = <0x55>;
++ };
+ };
+
+ &i2c3 {
diff --git a/patches/linux-3.12/0290-ARM-dts-TWL4030-Add-missing-regulators.patch b/patches/linux-3.12/0290-ARM-dts-TWL4030-Add-missing-regulators.patch
new file mode 100644
index 0000000..7203426
--- /dev/null
+++ b/patches/linux-3.12/0290-ARM-dts-TWL4030-Add-missing-regulators.patch
@@ -0,0 +1,82 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:37 +0200
+Subject: [PATCH] ARM: dts: TWL4030: Add missing regulators
+
+The twl4030.dtsi is missing some regulators. This patch adds
+the missing ones and orders the regulators alphabetically.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/twl4030.dtsi | 44 ++++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 40 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/twl4030.dtsi b/arch/arm/boot/dts/twl4030.dtsi
+index ae6a17a..cb5afcd 100644
+--- a/arch/arm/boot/dts/twl4030.dtsi
++++ b/arch/arm/boot/dts/twl4030.dtsi
+@@ -23,6 +23,22 @@
+ compatible = "ti,twl4030-wdt";
+ };
+
++ vaux1: regulator-vaux1 {
++ compatible = "ti,twl4030-vaux1";
++ };
++
++ vaux2: regulator-vaux2 {
++ compatible = "ti,twl4030-vaux2";
++ };
++
++ vaux3: regulator-vaux3 {
++ compatible = "ti,twl4030-vaux3";
++ };
++
++ vaux4: regulator-vaux4 {
++ compatible = "ti,twl4030-vaux4";
++ };
++
+ vcc: regulator-vdd1 {
+ compatible = "ti,twl4030-vdd1";
+ regulator-min-microvolt = <600000>;
+@@ -35,10 +51,20 @@
+ regulator-max-microvolt = <1800000>;
+ };
+
+- vpll2: regulator-vpll2 {
+- compatible = "ti,twl4030-vpll2";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
++ vio: regulator-vio {
++ compatible = "ti,twl4030-vio";
++ };
++
++ vintana1: regulator-vintana1 {
++ compatible = "ti,twl4030-vintana1";
++ };
++
++ vintana2: regulator-vintana2 {
++ compatible = "ti,twl4030-vintana2";
++ };
++
++ vintdig: regulator-vintdig {
++ compatible = "ti,twl4030-vintdig";
+ };
+
+ vmmc1: regulator-vmmc1 {
+@@ -65,6 +91,16 @@
+ compatible = "ti,twl4030-vusb3v1";
+ };
+
++ vpll1: regulator-vpll1 {
++ compatible = "ti,twl4030-vpll1";
++ };
++
++ vpll2: regulator-vpll2 {
++ compatible = "ti,twl4030-vpll2";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ };
++
+ vsim: regulator-vsim {
+ compatible = "ti,twl4030-vsim";
+ regulator-min-microvolt = <1800000>;
diff --git a/patches/linux-3.12/0291-ARM-dts-omap3-n900-Specify-regulator-info.patch b/patches/linux-3.12/0291-ARM-dts-omap3-n900-Specify-regulator-info.patch
new file mode 100644
index 0000000..e635f1a
--- /dev/null
+++ b/patches/linux-3.12/0291-ARM-dts-omap3-n900-Specify-regulator-info.patch
@@ -0,0 +1,108 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:38 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Specify regulator info
+
+Add regulator names and voltage information to
+the Nokia N900 DTS file.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 84 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 84 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index c7e0d2d..0a45af3 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -142,6 +142,90 @@
+ #include "twl4030.dtsi"
+ #include "twl4030_omap3.dtsi"
+
++&vaux1 {
++ regulator-name = "V28";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++ regulator-always-on; /* due battery cover sensor */
++};
++
++&vaux2 {
++ regulator-name = "VCSI";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++};
++
++&vaux3 {
++ regulator-name = "VMMC2_30";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <3000000>;
++};
++
++&vaux4 {
++ regulator-name = "VCAM_ANA_28";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++};
++
++&vmmc1 {
++ regulator-name = "VMMC1";
++ regulator-min-microvolt = <1850000>;
++ regulator-max-microvolt = <3150000>;
++};
++
++&vmmc2 {
++ regulator-name = "V28_A";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <3000000>;
++ regulator-always-on; /* due VIO leak to AIC34 VDDs */
++};
++
++&vpll1 {
++ regulator-name = "VPLL";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-always-on;
++};
++
++&vpll2 {
++ regulator-name = "VSDI_CSI";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-always-on;
++};
++
++&vsim {
++ regulator-name = "VMMC2_IO_18";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++};
++
++&vio {
++ regulator-name = "VIO";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++
++};
++
++&vintana1 {
++ regulator-name = "VINTANA1";
++ /* fixed to 1500000 */
++ regulator-always-on;
++};
++
++&vintana2 {
++ regulator-name = "VINTANA2";
++ regulator-min-microvolt = <2750000>;
++ regulator-max-microvolt = <2750000>;
++ regulator-always-on;
++};
++
++&vintdig {
++ regulator-name = "VINTDIG";
++ /* fixed to 1500000 */
++ regulator-always-on;
++};
++
+ &twl {
+ twl_audio: audio {
+ compatible = "ti,twl4030-audio";
diff --git a/patches/linux-3.12/0292-ARM-dts-omap3-n900-Add-NAND-support.patch b/patches/linux-3.12/0292-ARM-dts-omap3-n900-Add-NAND-support.patch
new file mode 100644
index 0000000..e0bcb4b
--- /dev/null
+++ b/patches/linux-3.12/0292-ARM-dts-omap3-n900-Add-NAND-support.patch
@@ -0,0 +1,95 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:39 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add NAND support
+
+This patch adds supports for Nokia N900 NAND memory.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 72 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 72 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 0a45af3..999a80c 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -273,6 +273,78 @@
+ status = "disabled";
+ };
+
++&gpmc {
++ ranges = <0 0 0x04000000 0x10000000>; /* 256MB */
++
++ /* gpio-irq for dma: 65 */
++
++ onenand@0,0 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ reg = <0 0 0x10000000>;
++
++ gpmc,sync-read;
++ gpmc,sync-write;
++ gpmc,burst-length = <16>;
++ gpmc,burst-read;
++ gpmc,burst-wrap;
++ gpmc,burst-write;
++ gpmc,device-width = <2>; /* GPMC_DEVWIDTH_16BIT */
++ gpmc,mux-add-data = <2>; /* GPMC_MUX_AD */
++ gpmc,cs-on-ns = <0>;
++ gpmc,cs-rd-off-ns = <87>;
++ gpmc,cs-wr-off-ns = <87>;
++ gpmc,adv-on-ns = <0>;
++ gpmc,adv-rd-off-ns = <10>;
++ gpmc,adv-wr-off-ns = <10>;
++ gpmc,oe-on-ns = <15>;
++ gpmc,oe-off-ns = <87>;
++ gpmc,we-on-ns = <0>;
++ gpmc,we-off-ns = <87>;
++ gpmc,rd-cycle-ns = <112>;
++ gpmc,wr-cycle-ns = <112>;
++ gpmc,access-ns = <81>;
++ gpmc,page-burst-access-ns = <15>;
++ gpmc,bus-turnaround-ns = <0>;
++ gpmc,cycle2cycle-delay-ns = <0>;
++ gpmc,wait-monitoring-ns = <0>;
++ gpmc,clk-activation-ns = <5>;
++ gpmc,wr-data-mux-bus-ns = <30>;
++ gpmc,wr-access-ns = <81>;
++ gpmc,sync-clk-ps = <15000>;
++
++ /*
++ * MTD partition table corresponding to Nokia's
++ * Maemo 5 (Fremantle) release.
++ */
++ partition@0 {
++ label = "bootloader";
++ reg = <0x00000000 0x00020000>;
++ read-only;
++ };
++ partition@1 {
++ label = "config";
++ reg = <0x00020000 0x00060000>;
++ };
++ partition@2 {
++ label = "log";
++ reg = <0x00080000 0x00040000>;
++ };
++ partition@3 {
++ label = "kernel";
++ reg = <0x000c0000 0x00200000>;
++ };
++ partition@4 {
++ label = "initfs";
++ reg = <0x002c0000 0x00200000>;
++ };
++ partition@5 {
++ label = "rootfs";
++ reg = <0x004c0000 0x0fb40000>;
++ };
++ };
++};
++
+ &mcspi1 {
+ /*
+ * For some reason, touchscreen is necessary for screen to work at
diff --git a/patches/linux-3.12/0293-ARM-dts-omap3-n900-Mux-RX51_LCD_RESET_GPIO-in-DTS.patch b/patches/linux-3.12/0293-ARM-dts-omap3-n900-Mux-RX51_LCD_RESET_GPIO-in-DTS.patch
new file mode 100644
index 0000000..44e68ec
--- /dev/null
+++ b/patches/linux-3.12/0293-ARM-dts-omap3-n900-Mux-RX51_LCD_RESET_GPIO-in-DTS.patch
@@ -0,0 +1,40 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:40 +0200
+Subject: [PATCH] ARM: dts: omap3-n900:: Mux RX51_LCD_RESET_GPIO in DTS
+
+Add RX51_LCD_RESET_GPIO pin mux information to
+display.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 999a80c..5afbd28 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -124,6 +124,12 @@
+ 0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3 */
+ >;
+ };
++
++ display_pins: pinmux_display_pins {
++ pinctrl-single,pins = <
++ 0x0d4 (PIN_OUTPUT | MUX_MODE4) /* RX51_LCD_RESET_GPIO */
++ >;
++ };
+ };
+
+ &i2c1 {
+@@ -361,6 +367,9 @@
+ compatible = "acx565akm";
+ spi-max-frequency = <6000000>;
+ reg = <2>;
++
++ pinctrl-names = "default";
++ pinctrl-0 = <&display_pins>;
+ };
+ };
+
diff --git a/patches/linux-3.12/0294-ARM-dts-omap3-n900-Add-TLV320AIC3X-support.patch b/patches/linux-3.12/0294-ARM-dts-omap3-n900-Add-TLV320AIC3X-support.patch
new file mode 100644
index 0000000..6a589e5
--- /dev/null
+++ b/patches/linux-3.12/0294-ARM-dts-omap3-n900-Add-TLV320AIC3X-support.patch
@@ -0,0 +1,49 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:41 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add TLV320AIC3X support
+
+This patch adds support for Nokia N900 TLV320AIC3X chips.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 26 ++++++++++++++++++++++++++
+ 1 file changed, 26 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 5afbd28..98797e5 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -250,6 +250,32 @@
+
+ clock-frequency = <100000>;
+
++ tlv320aic3x: tlv320aic3x@18 {
++ compatible = "ti,tlv320aic3x";
++ reg = <0x18>;
++ gpio-reset = <&gpio2 28 GPIO_ACTIVE_HIGH>; /* 60 */
++ ai3x-gpio-func = <
++ 0 /* AIC3X_GPIO1_FUNC_DISABLED */
++ 5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
++ >;
++
++ AVDD-supply = <&vmmc2>;
++ DRVDD-supply = <&vmmc2>;
++ IOVDD-supply = <&vio>;
++ DVDD-supply = <&vio>;
++ };
++
++ tlv320aic3x_aux: tlv320aic3x@19 {
++ compatible = "ti,tlv320aic3x";
++ reg = <0x19>;
++ gpio-reset = <&gpio2 28 GPIO_ACTIVE_HIGH>; /* 60 */
++
++ AVDD-supply = <&vmmc2>;
++ DRVDD-supply = <&vmmc2>;
++ IOVDD-supply = <&vio>;
++ DVDD-supply = <&vio>;
++ };
++
+ bq27200: bq27200@55 {
+ compatible = "ti,bq27200";
+ reg = <0x55>;
diff --git a/patches/linux-3.12/0295-ARM-dts-omap3-n900-Add-LP5523-support.patch b/patches/linux-3.12/0295-ARM-dts-omap3-n900-Add-LP5523-support.patch
new file mode 100644
index 0000000..647fecb
--- /dev/null
+++ b/patches/linux-3.12/0295-ARM-dts-omap3-n900-Add-LP5523-support.patch
@@ -0,0 +1,84 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:42 +0200
+Subject: [PATCH] ARM: dts: omap3-n900: Add LP5523 support
+
+Add support for LP5523 device.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap3-n900.dts | 61 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 61 insertions(+)
+
+diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
+index 98797e5..c4f20bf 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
++++ b/arch/arm/boot/dts/omap3-n900.dts
+@@ -276,6 +276,67 @@
+ DVDD-supply = <&vio>;
+ };
+
++ lp5523: lp5523@32 {
++ compatible = "national,lp5523";
++ reg = <0x32>;
++ clock-mode = /bits/ 8 <0>; /* LP55XX_CLOCK_AUTO */
++ enable-gpio = <&gpio2 9 GPIO_ACTIVE_HIGH>; /* 41 */
++
++ chan0 {
++ chan-name = "lp5523:kb1";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan1 {
++ chan-name = "lp5523:kb2";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan2 {
++ chan-name = "lp5523:kb3";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan3 {
++ chan-name = "lp5523:kb4";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan4 {
++ chan-name = "lp5523:b";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan5 {
++ chan-name = "lp5523:g";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan6 {
++ chan-name = "lp5523:r";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan7 {
++ chan-name = "lp5523:kb5";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++
++ chan8 {
++ chan-name = "lp5523:kb6";
++ led-cur = /bits/ 8 <50>;
++ max-cur = /bits/ 8 <100>;
++ };
++ };
++
+ bq27200: bq27200@55 {
+ compatible = "ti,bq27200";
+ reg = <0x55>;
diff --git a/patches/linux-3.12/0296-ARM-dts-TWL4030-Add-power-button-support.patch b/patches/linux-3.12/0296-ARM-dts-TWL4030-Add-power-button-support.patch
new file mode 100644
index 0000000..c8946b6
--- /dev/null
+++ b/patches/linux-3.12/0296-ARM-dts-TWL4030-Add-power-button-support.patch
@@ -0,0 +1,26 @@
+From: Sebastian Reichel <sre@debian.org>
+Date: Wed, 23 Oct 2013 00:49:43 +0200
+Subject: [PATCH] ARM: dts: TWL4030: Add power button support
+
+Enable support for the power button.
+
+Signed-off-by: Sebastian Reichel <sre@debian.org>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/twl4030.dtsi | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/arch/arm/boot/dts/twl4030.dtsi b/arch/arm/boot/dts/twl4030.dtsi
+index cb5afcd..af7fa40 100644
+--- a/arch/arm/boot/dts/twl4030.dtsi
++++ b/arch/arm/boot/dts/twl4030.dtsi
+@@ -133,4 +133,9 @@
+ compatible = "ti,twl4030-pwmled";
+ #pwm-cells = <2>;
+ };
++
++ twl_pwrbutton: pwrbutton {
++ compatible = "ti,twl4030-pwrbutton";
++ interrupts = <8>;
++ };
+ };
diff --git a/patches/linux-3.12/0297-ARM-dts-omap5-uevm-Correct-twl6040-reset-GPIO-pinmux.patch b/patches/linux-3.12/0297-ARM-dts-omap5-uevm-Correct-twl6040-reset-GPIO-pinmux.patch
new file mode 100644
index 0000000..879da4f
--- /dev/null
+++ b/patches/linux-3.12/0297-ARM-dts-omap5-uevm-Correct-twl6040-reset-GPIO-pinmux.patch
@@ -0,0 +1,29 @@
+From: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Date: Wed, 23 Oct 2013 12:32:19 +0300
+Subject: [PATCH] ARM: dts: omap5-uevm: Correct twl6040 reset GPIO pinmux
+
+When the omap5-evm.dts file has been renamed to omap5-uevm.dts and the sEVM
+support got deprecated in favor of uEVM (or Panda5) the content was not
+validated.
+On uEVM the twl6040 reset GPIO is from gpio5_141 and not via gpio5_145, which
+was the case in sEVM.
+
+Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index 22d9b51..4d79c7b 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -71,7 +71,7 @@
+
+ twl6040_pins: pinmux_twl6040_pins {
+ pinctrl-single,pins = <
+- 0x18a (PIN_OUTPUT | MUX_MODE6) /* perslimbus2_clock.gpio5_145 */
++ 0x17e (PIN_OUTPUT | MUX_MODE6) /* mcspi1_somi.gpio5_141 */
+ >;
+ };
+
diff --git a/patches/linux-3.12/0298-ARM-dts-omap5-uevm-Remove-pinmux-for-dmic-pins.patch b/patches/linux-3.12/0298-ARM-dts-omap5-uevm-Remove-pinmux-for-dmic-pins.patch
new file mode 100644
index 0000000..ac143f3
--- /dev/null
+++ b/patches/linux-3.12/0298-ARM-dts-omap5-uevm-Remove-pinmux-for-dmic-pins.patch
@@ -0,0 +1,44 @@
+From: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Date: Wed, 23 Oct 2013 12:32:20 +0300
+Subject: [PATCH] ARM: dts: omap5-uevm: Remove pinmux for dmic pins
+
+When the omap5-evm.dts file has been renamed to omap5-uevm.dts and the sEVM
+support got deprecated in favor of uEVM (or Panda5) the content was not
+validated.
+Panda5 does not have support for digital microphones so remove the pinmux
+section for it.
+
+Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
+---
+ arch/arm/boot/dts/omap5-uevm.dts | 10 ----------
+ 1 file changed, 10 deletions(-)
+
+diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
+index 4d79c7b..002fa70 100644
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -62,7 +62,6 @@
+ pinctrl-0 = <
+ &twl6040_pins
+ &mcpdm_pins
+- &dmic_pins
+ &mcbsp1_pins
+ &mcbsp2_pins
+ &usbhost_pins
+@@ -85,15 +84,6 @@
+ >;
+ };
+
+- dmic_pins: pinmux_dmic_pins {
+- pinctrl-single,pins = <
+- 0x144 (PIN_INPUT | MUX_MODE0) /* abedmic_din1.abedmic_din1 */
+- 0x146 (PIN_INPUT | MUX_MODE0) /* abedmic_din2.abedmic_din2 */
+- 0x148 (PIN_INPUT | MUX_MODE0) /* abedmic_din3.abedmic_din3 */
+- 0x14a (PIN_OUTPUT | MUX_MODE0) /* abedmic_clk1.abedmic_clk1 */
+- >;
+- };
+-
+ mcbsp1_pins: pinmux_mcbsp1_pins {
+ pinctrl-single,pins = <
+ 0x14c (PIN_INPUT | MUX_MODE1) /* abedmic_clk2.abemcbsp1_fsx */
diff --git a/patches/linux-3.12/0301-Release-3.12-customers-ptx-bbb-20131120-1.patch b/patches/linux-3.12/0301-Release-3.12-customers-ptx-bbb-20131120-1.patch
new file mode 100644
index 0000000..e1b2e8c
--- /dev/null
+++ b/patches/linux-3.12/0301-Release-3.12-customers-ptx-bbb-20131120-1.patch
@@ -0,0 +1,22 @@
+From: Michael Grzeschik <m.grzeschik@pengutronix.de>
+Date: Wed, 20 Nov 2013 12:14:45 +0100
+Subject: [PATCH] Release 3.12/customers/ptx/bbb/20131120-1
+
+Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 67077ad..3d9beb5 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,7 +1,7 @@
+ VERSION = 3
+ PATCHLEVEL = 12
+ SUBLEVEL = 0
+-EXTRAVERSION =
++EXTRAVERSION =-20131120-1
+ NAME = One Giant Leap for Frogkind
+
+ # *DOCUMENTATION*
diff --git a/patches/linux-3.12/series b/patches/linux-3.12/series
new file mode 100644
index 0000000..5df408c
--- /dev/null
+++ b/patches/linux-3.12/series
@@ -0,0 +1,131 @@
+# umpf-base: v3.12
+# umpf-name: 3.12/customers/ptx/bbb
+# umpf-version: 3.12/customers/ptx/bbb/20131120-1
+# umpf-topic: v3.12/topic/w1-gpio-fixes
+# umpf-hashinfo: 0ad843b12fa8dabff7e9947f22139340e9769d1e
+# umpf-topic-range: 5e01dc7b26d9f24f39abace5da98ccbd6a5ceb52..0ad843b12fa8dabff7e9947f22139340e9769d1e
+0001-w1-gpio-Detect-of_gpio_error-for-first-gpio.patch
+0002-w1-gpio-Use-devm_-functions.patch
+# umpf-topic: v3.12/topic/tps-regulator
+# umpf-hashinfo: 3e0d99ae5dfb1542ce75067ae870c00cba9c7b67
+# umpf-topic-range: 0ad843b12fa8dabff7e9947f22139340e9769d1e..8a567145f64f5def122d4a80273ebd9f2ca5eb00
+0051-regulator-tps65910-Add-backup-battery-regulator.patch
+0052-ARM-dts-regulator-tps65910-node.patch
+# umpf-topic: v3.12/topic/musb_dsps
+# umpf-hashinfo: f057882b7daf959011ec143bcd5b0fbdee73a57b
+# umpf-topic-range: 8a567145f64f5def122d4a80273ebd9f2ca5eb00..6259f13b26e49b6f0c468a4b33db2d5a8bda1e26
+0101-usb-musb-gadget-stay-IDLE-without-gadget-driver.patch
+0102-usb-musb-Bugfix-of_node-assignment.patch
+0103-usb-musb-dsps-debugfs-files.patch
+0104-usb-musb-dsps-use-devm_kzalloc.patch
+0105-usb-musb-dsps-OTG-detection.patch
+0106-ARM-dts-am33xx-change-usb-ctrl-module-label.patch
+# umpf-topic: v3.12/topic/am335x-mmc
+# umpf-hashinfo: f3c88c3fb805b1c6d548be16afcabb377c410c14
+# umpf-topic-range: 6259f13b26e49b6f0c468a4b33db2d5a8bda1e26..6ef5aad03a56787c08f0c0c0bb5bab93b8be36be
+0151-omap-hsmmc-Correct-usage-of-of_find_node_by_name.patch
+# umpf-topic: v3.12/topic/omap-dts-for-3.13
+# umpf-hashinfo: b306e7b819edd0515e18f5ca7e0d1cb4b0e4e58a
+# umpf-topic-range: 6ef5aad03a56787c08f0c0c0bb5bab93b8be36be..53ada0ea98ca5da6cbdb57f38421332780c864ad
+0201-ARM-dts-N900-Add-device-tree.patch
+0202-ARM-dts-omap3-igep-add-pinmux-node-for-GPIO-LED-conf.patch
+0203-ARM-dts-omap3-igep0020-add-mux-conf-for-GPIO-LEDs.patch
+0204-ARM-dts-omap3-igep0030-add-mux-conf-for-GPIO-LED.patch
+0205-ARM-dts-AM33XX-Add-PMU-support.patch
+0206-ARM-dts-AM33xx-Correct-gpio-interrupt-cells-property.patch
+0207-ARM-dts-omap5-uevm-Split-SMPS10-in-two-nodes.patch
+0208-ARM-dts-Remove-0x-s-from-OMAP2420-H4-DTS-file.patch
+0209-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0020-DTS-file.patch
+0210-ARM-dts-Remove-0x-s-from-OMAP3-IGEP0030-DTS-file.patch
+0211-ARM-dts-Remove-0x-s-from-OMAP3-DTS-file.patch
+0212-ARM-dts-Remove-0x-s-from-OMAP3430-SDP-DTS-file.patch
+0213-ARM-dts-Remove-0x-s-from-OMAP4-DTS-file.patch
+0214-ARM-dts-Remove-0x-s-from-OMAP5-DTS-file.patch
+0215-ARM-dts-twl6030-Move-common-configuration-for-OMAP4-.patch
+0216-ARM-dts-DRA7-Add-the-dts-files-for-dra7-SoC-and-dra7.patch
+0217-ARM-dts-AM4372-cpu-s-node-per-latest-binding.patch
+0218-ARM-dts-AM4372-add-few-nodes.patch
+0219-ARM-dts-Add-devicetree-for-gta04-board.patch
+0220-ARM-dts-omap3-beagle-Make-USB-host-pin-naming-consis.patch
+0221-ARM-dts-OMAP5-add-palmas-usb-node.patch
+0222-ARM-dts-AM33XX-Add-EDMA-support.patch
+0223-ARM-dts-AM33XX-Add-SPI-DMA-support.patch
+0224-ARM-dts-AM33XX-Add-MMC-support-and-documentation.patch
+0225-ARM-dts-am335x-bone-add-CD-for-mmc1.patch
+0226-ARM-dts-am335x-boneblack-add-eMMC-DT-entry.patch
+0227-ARM-dts-am335x-bone-common-switch-mmc1-to-4-bit-mode.patch
+0228-ARM-dts-am335x-bone-common-add-cpu0-and-mmc1-trigger.patch
+0229-ARM-dts-AM33XX-use-pinmux-node-defined-in-included-f.patch
+0230-ARM-dts-AM33XX-don-t-redefine-OCP-bus-and-device-nod.patch
+0231-ARM-dts-omap3-devkit8000-fix-a-typo-in-GMPC-node.patch
+0232-ARM-dts-DRA7-Add-TPS659038-PMIC-nodes.patch
+0233-ARM-dts-AM33XX-add-ethernet-alias-s-for-am33xx.patch
+0234-ARM-dts-omap3-beagle-Use-reset-gpios-for-hsusb2_rese.patch
+0235-ARM-dts-omap4-panda-Use-reset-gpios-for-hsusb1_reset.patch
+0236-ARM-dts-omap5-uevm-Use-reset-gpios-for-hsusb2-3_rese.patch
+0237-ARM-dts-omap3-beagle-xm-Add-USB-Host-support.patch
+0238-ARM-dts-omap3-beagle-Add-USB-OTG-PHY-details.patch
+0239-ARM-dts-am335x-boneblack-move-fixed-regulator-to-boa.patch
+0240-ARM-dts-AM33XX-Add-support-for-IGEP-COM-AQUILA.patch
+0241-ARM-dts-AM33XX-Add-support-for-IGEP-AQUILA-EXPANSION.patch
+0242-ARM-dts-am335x-bone-common-correct-mux-mode-for-cmd-.patch
+0243-ARM-dts-am335x-evm-sdk-switch-mmc1-to-4-bit-mode.patch
+0244-ARM-dts-OMAP4-Add-AES-node.patch
+0245-ARM-dts-OMAP4-Add-DES3DES-node.patch
+0246-ARM-dts-AM33XX-Add-SHAM-data-and-documentation.patch
+0247-ARM-dts-AM33XX-Add-AES-data-and-documentation.patch
+0248-ARM-dts-AM33XX-Fix-AES-interrupt-number.patch
+0249-ARM-dts-AM437X-Add-AES-node.patch
+0250-ARM-dts-AM437X-Add-DES-node.patch
+0251-ARM-dts-AM33XX-Add-LCDC-info-into-am335x-evm.patch
+0252-ARM-dts-AM33XX-beagle-black-add-pinmux-and-hdmi-node.patch
+0253-ARM-dts-omap3-igep-Add-USB-OTG-support.patch
+0254-ARM-dts-omap3-igep0020-Add-HS-USB-Host-support.patch
+0255-ARM-dts-omap3-igep0020-use-standard-constant-for-IRQ.patch
+0256-ARM-dts-omap5-uevm-mark-TWL6037-as-system-power-cont.patch
+0257-ARM-dts-dra7-evm-Add-mmc1-node-for-micro-sd-support.patch
+0258-ARM-dts-dra7-evm-Add-mmc2-node-for-eMMC-support.patch
+0259-ARM-dts-OMAP5-Remove-clock-frequency-field-for-cpu-t.patch
+0260-ARM-dts-omap3-Adapt-USB-OTG-to-generic-PHY-framework.patch
+0261-ARM-dts-omap-Add-reset-idle-on-init-bindings-for-OMA.patch
+0262-ARM-dts-am335x-evmsk-Do-not-reset-gpio0.patch
+0263-ARM-dts-omap4-panda-es-Do-not-reset-gpio1.patch
+0264-ARM-dts-omap5-uevm-remove-always_on-boot_on-from-smp.patch
+0265-ARM-dts-OMAP5-Add-dr_mode-for-dwc3.patch
+0266-ARM-dts-AM4372-Add-L2-EDMA-mailbox-MMC-and-SHAM-node.patch
+0267-ARM-dts-AM4372-Update-Support-for-EPOS-EVM.patch
+0268-ARM-dts-AM33XX-Add-mcasp0-and-mcasp1-device-tree-ent.patch
+0269-ARM-dts-AM33XX-mcasp-Add-location-for-data-port-regi.patch
+0270-ARM-dts-am335x-evm-Add-audio-support-for-am335x-evm..patch
+0271-ARM-dts-am335x-evmsk-Audio-support.patch
+0272-ARM-dts-omap3-beagle-Adapt-USB-OTG-to-generic-PHY-fr.patch
+0273-ARM-dts-AM4372-Add-McASP-nodes.patch
+0274-ARM-dts-igep0033-Add-mmc1-node-for-SDCARD-support.patch
+0275-ARM-dts-OMAP3-Add-i2c-aliases.patch
+0276-ARM-dts-AM33xx-Add-i2c-aliases.patch
+0277-ARM-dts-Add-support-for-Newflow-NanoBone-board.patch
+0278-ARM-dts-omap5-uevm-fix-mcspi-node-pin-descriptions.patch
+0279-ARM-dts-omap5-uevm-add-smps123-supply-for-CPU.patch
+0280-ARM-dts-dra7-evm-add-smps123-supply-for-CPU.patch
+0281-ARM-dts-OMAP5-Add-CPU-OPP-table.patch
+0282-ARM-dts-DRA7-Add-CPU-OPP-table.patch
+0283-ARM-dts-omap3-n900-Add-pinctrl-for-i2c-devices.patch
+0284-ARM-dts-omap3-n900-Fix-i2c-bus-speed.patch
+0285-ARM-dts-omap3-n900-Add-UART-support.patch
+0286-ARM-dts-omap3-n900-Add-support-for-SD-cards.patch
+0287-ARM-dts-omap3-n900-GPIO-key-definitions.patch
+0288-ARM-dts-omap3-n900-Add-vibrator-device.patch
+0289-ARM-dts-omap3-n900-Add-LP5523-support.patch
+0290-ARM-dts-TWL4030-Add-missing-regulators.patch
+0291-ARM-dts-omap3-n900-Specify-regulator-info.patch
+0292-ARM-dts-omap3-n900-Add-NAND-support.patch
+0293-ARM-dts-omap3-n900-Mux-RX51_LCD_RESET_GPIO-in-DTS.patch
+0294-ARM-dts-omap3-n900-Add-TLV320AIC3X-support.patch
+0295-ARM-dts-omap3-n900-Add-LP5523-support.patch
+0296-ARM-dts-TWL4030-Add-power-button-support.patch
+0297-ARM-dts-omap5-uevm-Correct-twl6040-reset-GPIO-pinmux.patch
+0298-ARM-dts-omap5-uevm-Remove-pinmux-for-dmic-pins.patch
+# umpf-release: 3.12/customers/ptx/bbb/20131120-1
+# umpf-topic-range: 53ada0ea98ca5da6cbdb57f38421332780c864ad..e68af31756fc1739f159d98756b7dd13a6214b13
+0301-Release-3.12-customers-ptx-bbb-20131120-1.patch
+# umpf-end
diff --git a/platformconfig b/platformconfig
index 5368907..e39244b 100644
--- a/platformconfig
+++ b/platformconfig
@@ -101,14 +101,14 @@ PTXCONF_KERNEL_VERSION="3.8.13"
PTXCONF_KERNEL_MD5="2af19d06cd47ec459519159cdd10542d"
PTXCONF_KERNEL_ARCH_STRING="arm"
# PTXCONF_KERNEL_IMAGE_BZ is not set
-# PTXCONF_KERNEL_IMAGE_Z is not set
+PTXCONF_KERNEL_IMAGE_Z=y
# PTXCONF_KERNEL_IMAGE_XIP is not set
-PTXCONF_KERNEL_IMAGE_U=y
+# PTXCONF_KERNEL_IMAGE_U is not set
# PTXCONF_KERNEL_IMAGE_VM is not set
# PTXCONF_KERNEL_IMAGE_VMLINUX is not set
# PTXCONF_KERNEL_IMAGE_RAW is not set
# PTXCONF_KERNEL_IMAGE_SIMPLE is not set
-PTXCONF_KERNEL_IMAGE="uImage"
+PTXCONF_KERNEL_IMAGE="zImage"
PTXCONF_KERNEL_XZ=y
PTXCONF_KERNEL_LZOP=y
@@ -116,7 +116,7 @@ PTXCONF_KERNEL_LZOP=y
# patching & configuration
#
PTXCONF_KERNEL_SERIES="series"
-PTXCONF_KERNEL_CONFIG="kernelconfig"
+PTXCONF_KERNEL_CONFIG="kernelconfig-${PTXCONF_KERNEL_VERSION}"
#
# Development features
@@ -240,7 +240,7 @@ PTXCONF_HOST_LZOP=y
PTXCONF_HOST_MTOOLS=y
# PTXCONF_HOST_OPENSSL is not set
# PTXCONF_HOST_SQUASHFS_TOOLS is not set
-PTXCONF_HOST_U_BOOT_TOOLS=y
+# PTXCONF_HOST_U_BOOT_TOOLS is not set
# PTXCONF_HOST_UTIL_LINUX_NG is not set
# PTXCONF_HOST_XL_TOOLS is not set
PTXCONF_HOST_XZ=y