From 778dce198c2a6c3b6b8b5d35247ef0017ee7289b Mon Sep 17 00:00:00 2001
From: Robert Nelson <robertcnelson@gmail.com>
Date: Sun, 21 Sep 2014 20:42:59 -0500
Subject: [PATCH] 3.17-rc6-bone4 release

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
---
 patch.sh                                      |  203 ++-
 ...=> 0001-cape-Argus-UPS-cape-support.patch} |   61 +-
 .../capes/0001-cape-basic-proto-cape.patch    |   37 -
 ...am335x-boneblack-add-cpu0-opp-points.patch |   19 +-
 .../beaglebone/dts/0005-add-base-files.patch  |  140 ++
 .../0001-auto-generated-cape-uarts.patch      |  680 ++-------
 .../0002-auto-generated-cape-audio.patch      |  319 ++--
 .../0003-auto-generated-cape-lcd.patch        |  680 ++-------
 .../0004-auto-generated-cape-argus.patch      |  176 +--
 ...0005-auto-generated-cape-rtc-01-00a1.patch |  176 +--
 ...0006-auto-generated-cape-crypto-00a0.patch |  176 +--
 .../0007-auto-generated-cape-4dcape.patch     |  636 ++++----
 .../0008-auto-generated-cape-bbb-exp-c.patch  |  165 +-
 .../0009-auto-generated-cape-bb-view-43.patch |  142 ++
 ...auto-generated-cape-basic-proto-cape.patch |   36 -
 ...enerated-capes-add-dtbs-to-makefile.patch} |   27 +-
 .../0001-BeagleBone-pinmux-helper.patch       |  203 +++
 ...Add-runtime-configuration-capability.patch |  175 +++
 ...inmux-helper-Switch-to-using-kmalloc.patch |   68 +
 .../0004-gpio-Introduce-GPIO-OF-helper.patch  |  474 ++++++
 ...hangeable-property-to-gpio-of-helper.patch |   26 +
 .../0006-am33xx.dtsi-add-ocp-label.patch      |   26 +
 ...lebone-added-expansion-header-to-dtb.patch | 1351 +++++++++++++++++
 ...er-Add-support-for-mode-device-tree-.patch |  117 ++
 ...helper-add-P8_37_pinmux-P8_38_pinmux.patch |   82 +
 ...-bone-common-split-out-am33xx_pinmux.patch |   75 +-
 ...5x-boneblack-split-out-am33xx_pinmux.patch |   16 +-
 ...0003-am335x-boneblack-split-out-emmc.patch |    6 +-
 ...x-boneblack-split-out-nxp-hdmi-audio.patch |  152 ++
 ... 0005-am335x-bone-nxp-hdmi-no-audio.patch} |   19 +-
 ...ommon-pinmux-uart1-uart2-uart4-uart5.patch |  176 ---
 ...k-disable-pins-for-hdmi-audio-clkout.patch |   81 +
 ...m335x-bone-common-pinmux-spi0-spidev.patch |   97 --
 ...-i2c1-i2c2.patch => 0007-pinmux-i2c.patch} |   18 +-
 .../beaglebone/pinmux/0008-pinmux-uart.patch  |  248 +++
 ...pi1-spidev.patch => 0009-pinmux-spi.patch} |  144 +-
 ...tch => 0010-node-4-wire-touchscreen.patch} |    6 +-
 ...28-gpio.patch => 0011-node-led-gpio.patch} |  108 +-
 ...8.patch => 0012-node-backlight-gpio.patch} |   29 +-
 ...am335x-bone-common-pinmux-lcd-panels.patch |  230 ---
 ...x-keymaps.patch => 0013-node-keymap.patch} |  291 +++-
 .../beaglebone/pinmux/0014-node-panel.patch   |  461 ++++++
 ...-revb.patch => 0015-cape-audio-revb.patch} |   91 +-
 .../pinmux/0016-cape-audio-reva.patch         |  162 ++
 ...00a0.patch => 0017-cape-crypto-00a0.patch} |   38 +-
 ...8-am335x-bone-cape-chipsee-bbb-exp-c.patch |  403 -----
 ...00a1.patch => 0018-cape-rtc-01-00a1.patch} |   63 +-
 ...am335x-bone-common-pinmux-hdmi-audio.patch |  124 --
 ...43-t-4dcape-.patch => 0019-cape-lcd.patch} |  361 ++++-
 .../pinmux/0020-cape-basic-proto.patch        |   61 +
 patches/defconfig                             |    5 +-
 patches/ref_omap2plus_defconfig               |    5 +-
 version.sh                                    |    4 +-
 53 files changed, 6090 insertions(+), 3579 deletions(-)
 rename patches/beaglebone/capes/{0002-cape-Argus-UPS-cape-support.patch => 0001-cape-Argus-UPS-cape-support.patch} (94%)
 delete mode 100644 patches/beaglebone/capes/0001-cape-basic-proto-cape.patch
 create mode 100644 patches/beaglebone/dts/0005-add-base-files.patch
 create mode 100644 patches/beaglebone/generated/0009-auto-generated-cape-bb-view-43.patch
 delete mode 100644 patches/beaglebone/generated/last/0001-auto-generated-cape-basic-proto-cape.patch
 rename patches/beaglebone/generated/last/{0002-auto-generated-capes-add-dtbs-to-makefile.patch => 0001-auto-generated-capes-add-dtbs-to-makefile.patch} (64%)
 create mode 100644 patches/beaglebone/pinmux-helper/0001-BeagleBone-pinmux-helper.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0002-pinmux-helper-Add-runtime-configuration-capability.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0003-pinmux-helper-Switch-to-using-kmalloc.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0004-gpio-Introduce-GPIO-OF-helper.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0005-Add-dir-changeable-property-to-gpio-of-helper.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0006-am33xx.dtsi-add-ocp-label.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0007-beaglebone-added-expansion-header-to-dtb.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0008-bone-pinmux-helper-Add-support-for-mode-device-tree-.patch
 create mode 100644 patches/beaglebone/pinmux-helper/0009-pinmux-helper-add-P8_37_pinmux-P8_38_pinmux.patch
 create mode 100644 patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-audio.patch
 rename patches/beaglebone/pinmux/{0004-am335x-boneblack-split-out-nxp-hdmi-no-audio.patch => 0005-am335x-bone-nxp-hdmi-no-audio.patch} (81%)
 delete mode 100644 patches/beaglebone/pinmux/0006-am335x-bone-common-pinmux-uart1-uart2-uart4-uart5.patch
 create mode 100644 patches/beaglebone/pinmux/0006-pinmux-bone-black-disable-pins-for-hdmi-audio-clkout.patch
 delete mode 100644 patches/beaglebone/pinmux/0007-am335x-bone-common-pinmux-spi0-spidev.patch
 rename patches/beaglebone/pinmux/{0005-am335x-bone-common-pinmux-i2c1-i2c2.patch => 0007-pinmux-i2c.patch} (84%)
 create mode 100644 patches/beaglebone/pinmux/0008-pinmux-uart.patch
 rename patches/beaglebone/pinmux/{0017-am335x-bone-common-pinmux-spi1-spidev.patch => 0009-pinmux-spi.patch} (60%)
 rename patches/beaglebone/pinmux/{0009-am335x-bone-ti-tscadc-4-wire.patch => 0010-node-4-wire-touchscreen.patch} (87%)
 rename patches/beaglebone/pinmux/{0010-am335x-bone-common-pinmux-led-gpio1_18-gpio1_28-gpio.patch => 0011-node-led-gpio.patch} (60%)
 rename patches/beaglebone/pinmux/{0011-am335x-bone-common-pinmux-gpio-backlight-gpio1_18.patch => 0012-node-backlight-gpio.patch} (72%)
 delete mode 100644 patches/beaglebone/pinmux/0013-am335x-bone-common-pinmux-lcd-panels.patch
 rename patches/beaglebone/pinmux/{0012-am335x-bone-common-pinmux-keymaps.patch => 0013-node-keymap.patch} (50%)
 create mode 100644 patches/beaglebone/pinmux/0014-node-panel.patch
 rename patches/beaglebone/pinmux/{0008-am335x-bone-common-pinmux-mcasp-audio-cape-revb.patch => 0015-cape-audio-revb.patch} (65%)
 create mode 100644 patches/beaglebone/pinmux/0016-cape-audio-reva.patch
 rename patches/beaglebone/pinmux/{0016-am335x-bone-cape-crypto-00a0.patch => 0017-cape-crypto-00a0.patch} (77%)
 delete mode 100644 patches/beaglebone/pinmux/0018-am335x-bone-cape-chipsee-bbb-exp-c.patch
 rename patches/beaglebone/pinmux/{0015-am335x-bone-cape-rtc-01-00a1.patch => 0018-cape-rtc-01-00a1.patch} (69%)
 delete mode 100644 patches/beaglebone/pinmux/0019-am335x-bone-common-pinmux-hdmi-audio.patch
 rename patches/beaglebone/pinmux/{0014-am335x-bone-capes-lcd3-lcd4-lcd7-4dcape-43-t-4dcape-.patch => 0019-cape-lcd.patch} (52%)
 create mode 100644 patches/beaglebone/pinmux/0020-cape-basic-proto.patch

diff --git a/patch.sh b/patch.sh
index 29ad491a0..d981d5693 100644
--- a/patch.sh
+++ b/patch.sh
@@ -73,7 +73,7 @@ dtb_makefile_append () {
 
 dtsi_append () {
 	wfile="arch/arm/boot/dts/${base_dts}-${cape}.dts"
-	cp arch/arm/boot/dts/${base_dts}.dts ${wfile}
+	cp arch/arm/boot/dts/${base_dts}-base.dts ${wfile}
 	echo "" >> ${wfile}
 	echo "#include \"am335x-bone-${cape}.dtsi\"" >> ${wfile}
 	git add ${wfile}
@@ -81,7 +81,7 @@ dtsi_append () {
 
 dtsi_append_custom () {
 	wfile="arch/arm/boot/dts/${dtb_name}.dts"
-	cp arch/arm/boot/dts/${base_dts}.dts ${wfile}
+	cp arch/arm/boot/dts/${base_dts}-base.dts ${wfile}
 	echo "" >> ${wfile}
 	echo "#include \"am335x-bone-${cape}.dtsi\"" >> ${wfile}
 	git add ${wfile}
@@ -94,7 +94,7 @@ dtsi_append_hdmi_no_audio () {
 }
 
 dtsi_drop_nxp_hdmi_audio () {
-	sed -i -e 's:#include "am335x-boneblack-nxp-hdmi-audio.dtsi":/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */:g' ${wfile}
+	sed -i -e 's:#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi":/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */:g' ${wfile}
 	git add ${wfile}
 }
 
@@ -109,20 +109,46 @@ dts_drop_clkout2_pin () {
 }
 
 beaglebone () {
+	echo "dir: beaglebone/hdmi_audio"
+	#[PATCH v2 0/8] Beaglebone-Black HDMI audio
+	${git} "${DIR}/patches/beaglebone/hdmi_audio/0001-clk-ti-add-gpio-controlled-clock.patch"
+	${git} "${DIR}/patches/beaglebone/hdmi_audio/0002-drm-tilcdc-Add-I2S-HDMI-audio-config-for-tda998x.patch"
+	${git} "${DIR}/patches/beaglebone/hdmi_audio/0003-ASoC-davinci-evm-HDMI-audio-support-for-TDA998x-trou.patch"
+	${git} "${DIR}/patches/beaglebone/hdmi_audio/0004-ASoC-davinci-HDMI-audio-build-for-AM33XX-and-TDA998x.patch"
+	${git} "${DIR}/patches/beaglebone/hdmi_audio/0005-ARM-dts-am33xx-Add-external-clock-provider.patch"
+
+	echo "dir: beaglebone/pinmux-helper"
+	#regenerate="enable"
+	if [ "x${regenerate}" = "xenable" ] ; then
+		start_cleanup
+	fi
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0001-BeagleBone-pinmux-helper.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0002-pinmux-helper-Add-runtime-configuration-capability.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0003-pinmux-helper-Switch-to-using-kmalloc.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0004-gpio-Introduce-GPIO-OF-helper.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0005-Add-dir-changeable-property-to-gpio-of-helper.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0006-am33xx.dtsi-add-ocp-label.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0007-beaglebone-added-expansion-header-to-dtb.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0008-bone-pinmux-helper-Add-support-for-mode-device-tree-.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux-helper/0009-pinmux-helper-add-P8_37_pinmux-P8_38_pinmux.patch"
+
+	if [ "x${regenerate}" = "xenable" ] ; then
+		number=9
+		cleanup
+	fi
+
 	echo "dir: beaglebone/pinmux"
 	#regenerate="enable"
 	if [ "x${regenerate}" = "xenable" ] ; then
 		start_cleanup
 	fi
-	# cp arch/arm/boot/dts/am335x-bone-common.dtsi arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-	# gedit arch/arm/boot/dts/am335x-bone-common.dtsi arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi &
+	# gedit arch/arm/boot/dts/am335x-bone-common.dtsi arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 	# gedit arch/arm/boot/dts/am335x-boneblack.dts arch/arm/boot/dts/am335x-bone.dts &
-	# git add arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 	# git commit -a -m 'am335x-bone-common: split out am33xx_pinmux' -s
 
 	${git} "${DIR}/patches/beaglebone/pinmux/0001-am335x-bone-common-split-out-am33xx_pinmux.patch"
 
-	# meld arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi arch/arm/boot/dts/am335x-boneblack.dts
+	# gedit arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi arch/arm/boot/dts/am335x-boneblack.dts
 	# git commit -a -m 'am335x-boneblack: split out am33xx_pinmux' -s
 
 	${git} "${DIR}/patches/beaglebone/pinmux/0002-am335x-boneblack-split-out-am33xx_pinmux.patch"
@@ -134,34 +160,38 @@ beaglebone () {
 
 	${git} "${DIR}/patches/beaglebone/pinmux/0003-am335x-boneblack-split-out-emmc.patch"
 
-	# cp arch/arm/boot/dts/am335x-boneblack.dts arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
-	# gedit arch/arm/boot/dts/am335x-boneblack.dts arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi &
-	# git add arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
-	# git commit -a -m 'am335x-boneblack: split out nxp hdmi no audio' -s
-
-	${git} "${DIR}/patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-no-audio.patch"
+	# cp arch/arm/boot/dts/am335x-boneblack.dts arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
+	# gedit arch/arm/boot/dts/am335x-boneblack.dts arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi &
+	# git add arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
+	# git commit -a -m 'am335x-boneblack: split out nxp hdmi audio' -s
 
+	#${git} "${DIR}/patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-audio.patch"
 
-	${git} "${DIR}/patches/beaglebone/pinmux/0005-am335x-bone-common-pinmux-i2c1-i2c2.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0006-am335x-bone-common-pinmux-uart1-uart2-uart4-uart5.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0007-am335x-bone-common-pinmux-spi0-spidev.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0008-am335x-bone-common-pinmux-mcasp-audio-cape-revb.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0009-am335x-bone-ti-tscadc-4-wire.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0010-am335x-bone-common-pinmux-led-gpio1_18-gpio1_28-gpio.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0011-am335x-bone-common-pinmux-gpio-backlight-gpio1_18.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0012-am335x-bone-common-pinmux-keymaps.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0013-am335x-bone-common-pinmux-lcd-panels.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0014-am335x-bone-capes-lcd3-lcd4-lcd7-4dcape-43-t-4dcape-.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0015-am335x-bone-cape-rtc-01-00a1.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0016-am335x-bone-cape-crypto-00a0.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0017-am335x-bone-common-pinmux-spi1-spidev.patch"
-	${git} "${DIR}/patches/beaglebone/pinmux/0018-am335x-bone-cape-chipsee-bbb-exp-c.patch"
-
-	#last: (hdmi audio needs to be backported..)
-	${git} "${DIR}/patches/beaglebone/pinmux/0019-am335x-bone-common-pinmux-hdmi-audio.patch"
+	# cp arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
+	# gedit arch/arm/boot/dts/am335x-boneblack.dts  arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi &
+	# git add arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
+	# git commit -a -m 'am335x-bone: nxp hdmi no audio' -s
+
+	${git} "${DIR}/patches/beaglebone/pinmux/0005-am335x-bone-nxp-hdmi-no-audio.patch"
+
+	${git} "${DIR}/patches/beaglebone/pinmux/0006-pinmux-bone-black-disable-pins-for-hdmi-audio-clkout.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0007-pinmux-i2c.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0008-pinmux-uart.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0009-pinmux-spi.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0010-node-4-wire-touchscreen.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0011-node-led-gpio.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0012-node-backlight-gpio.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0013-node-keymap.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0014-node-panel.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0015-cape-audio-revb.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0016-cape-audio-reva.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0017-cape-crypto-00a0.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0018-cape-rtc-01-00a1.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0019-cape-lcd.patch"
+	${git} "${DIR}/patches/beaglebone/pinmux/0020-cape-basic-proto.patch"
 
 	if [ "x${regenerate}" = "xenable" ] ; then
-		number=19
+		number=20
 		cleanup
 	fi
 
@@ -171,9 +201,12 @@ beaglebone () {
 	${git} "${DIR}/patches/beaglebone/dts/0003-ARM-dts-am335x-bone-Fix-model-name-and-update-compat.patch"
 	${git} "${DIR}/patches/beaglebone/dts/0004-ARM-dts-am335x-boneblack-dcdc1-set-to-1.35v-for-ddr3.patch"
 
+	#echo "patch -p1 < \"${DIR}/patches/beaglebone/dts/0005-add-base-files.patch\""
+	#exit
+	${git} "${DIR}/patches/beaglebone/dts/0005-add-base-files.patch"
+
 	echo "dir: beaglebone/capes"
-	${git} "${DIR}/patches/beaglebone/capes/0001-cape-basic-proto-cape.patch"
-	${git} "${DIR}/patches/beaglebone/capes/0002-cape-Argus-UPS-cape-support.patch"
+	${git} "${DIR}/patches/beaglebone/capes/0001-cape-Argus-UPS-cape-support.patch"
 
 	#regenerate="enable"
 	echo "dir: beaglebone/generated"
@@ -213,13 +246,24 @@ beaglebone () {
 
 	if [ "x${regenerate}" = "xenable" ] ; then
 		base_dts="am335x-bone"
-		cape="audio"
+		cape="audio-reva"
 		dtsi_append
 
 		base_dts="am335x-boneblack"
-		cape="audio"
-		dtsi_append_hdmi_no_audio
-		dtsi_drop_nxp_hdmi_audio
+		cape="audio-reva"
+		dtsi_append
+#		dtsi_append_hdmi_no_audio
+#		dtsi_drop_nxp_hdmi_audio
+
+		base_dts="am335x-bone"
+		cape="audio-revb"
+		dtsi_append
+
+		base_dts="am335x-boneblack"
+		cape="audio-revb"
+		dtsi_append
+#		dtsi_append_hdmi_no_audio
+#		dtsi_drop_nxp_hdmi_audio
 
 		git commit -a -m 'auto generated: cape: audio' -s
 		git format-patch -2 -o ../patches/beaglebone/generated/
@@ -319,6 +363,19 @@ beaglebone () {
 	fi
 
 	if [ "x${regenerate}" = "xenable" ] ; then
+		base_dts="am335x-bone"
+		cape="4dcape-43"
+		dtsi_append
+
+		cape="4dcape-43t"
+		dtsi_append
+
+		cape="4dcape-70"
+		dtsi_append
+
+		cape="4dcape-70t"
+		dtsi_append
+
 		base_dts="am335x-boneblack"
 		cape="4dcape-43"
 		dtsi_append
@@ -346,6 +403,10 @@ beaglebone () {
 	fi
 
 	if [ "x${regenerate}" = "xenable" ] ; then
+		base_dts="am335x-bone"
+		cape="bbb-exp-c"
+		dtsi_append
+
 		base_dts="am335x-boneblack"
 		cape="bbb-exp-c"
 		dtsi_append
@@ -357,29 +418,32 @@ beaglebone () {
 		${git} "${DIR}/patches/beaglebone/generated/0008-auto-generated-cape-bbb-exp-c.patch"
 	fi
 
-	####
-	#last beaglebone/beaglebone black default
-	echo "dir: beaglebone/generated/last"
 	if [ "x${regenerate}" = "xenable" ] ; then
-		wfile="arch/arm/boot/dts/am335x-bone.dts"
-		echo "" >> ${wfile}
-		echo "/* http://elinux.org/CircuitCo:Basic_Proto_Cape */" >> ${wfile}
-		echo "/* #include \"am335x-bone-basic-proto-cape.dtsi\" */" >> ${wfile}
+		base_dts="am335x-bone"
+		cape="bb-view-43"
+		dtsi_append
 
-		wfile="arch/arm/boot/dts/am335x-boneblack.dts"
-		echo "" >> ${wfile}
-		echo "/* http://elinux.org/CircuitCo:Basic_Proto_Cape */" >> ${wfile}
-		echo "/* #include \"am335x-bone-basic-proto-cape.dtsi\" */" >> ${wfile}
+		base_dts="am335x-boneblack"
+		cape="bb-view-43"
+		dtsi_append
+		dtsi_drop_nxp_hdmi_audio
 
-		git commit -a -m 'auto generated: cape: basic-proto-cape' -s
-		git format-patch -1 -o ../patches/beaglebone/generated/last/
+		git commit -a -m 'auto generated: cape: bb-view-43' -s
+		git format-patch -9 -o ../patches/beaglebone/generated/
 	else
-		${git} "${DIR}/patches/beaglebone/generated/last/0001-auto-generated-cape-basic-proto-cape.patch"
+		${git} "${DIR}/patches/beaglebone/generated/0009-auto-generated-cape-bb-view-43.patch"
 	fi
 
+	####
 	#dtb makefile
 	if [ "x${regenerate}" = "xenable" ] ; then
-		device="am335x-bone-audio.dtb"
+		device="am335x-bone-audio-reva.dtb"
+		dtb_makefile_append
+
+		device="am335x-bone-audio-revb.dtb"
+		dtb_makefile_append
+
+		device="am335x-bone-bb-view-43.dtb"
 		dtb_makefile_append
 
 		device="am335x-bone-cape-bone-argus.dtb"
@@ -388,6 +452,21 @@ beaglebone () {
 		device="am335x-bone-crypto-00a0.dtb"
 		dtb_makefile_append
 
+		device="am335x-bone-4dcape-43.dtb"
+		dtb_makefile_append
+
+		device="am335x-bone-4dcape-43t.dtb"
+		dtb_makefile_append
+
+		device="am335x-bone-4dcape-70.dtb"
+		dtb_makefile_append
+
+		device="am335x-bone-4dcape-70t.dtb"
+		dtb_makefile_append
+
+		device="am335x-bone-bbb-exp-c.dtb"
+		dtb_makefile_append
+
 		device="am335x-bone-lcd3-01-00a2.dtb"
 		dtb_makefile_append
 
@@ -415,7 +494,13 @@ beaglebone () {
 		device="am335x-bone-ttyO5.dtb"
 		dtb_makefile_append
 
-		device="am335x-boneblack-audio.dtb"
+		device="am335x-boneblack-audio-reva.dtb"
+		dtb_makefile_append
+
+		device="am335x-boneblack-audio-revb.dtb"
+		dtb_makefile_append
+
+		device="am335x-boneblack-bb-view-43.dtb"
 		dtb_makefile_append
 
 		device="am335x-boneblack-cape-bone-argus.dtb"
@@ -467,10 +552,10 @@ beaglebone () {
 		dtb_makefile_append
 
 		git commit -a -m 'auto generated: capes: add dtbs to makefile' -s
-		git format-patch -2 -o ../patches/beaglebone/generated/last/
+		git format-patch -1 -o ../patches/beaglebone/generated/last/
 		exit
 	else
-		${git} "${DIR}/patches/beaglebone/generated/last/0002-auto-generated-capes-add-dtbs-to-makefile.patch"
+		${git} "${DIR}/patches/beaglebone/generated/last/0001-auto-generated-capes-add-dtbs-to-makefile.patch"
 	fi
 
 	echo "dir: beaglebone/power"
@@ -492,14 +577,6 @@ beaglebone () {
 	${git} "${DIR}/patches/beaglebone/mac/0005-net-cpsw-Add-am33xx-MACID-readout.patch"
 	${git} "${DIR}/patches/beaglebone/mac/0006-am33xx-define-syscon-control-module-device-node.patch"
 	${git} "${DIR}/patches/beaglebone/mac/0007-arm-dts-am33xx-Add-syscon-phandle-to-cpsw-node.patch"
-
-	echo "dir: beaglebone/hdmi_audio"
-	#[PATCH v2 0/8] Beaglebone-Black HDMI audio
-	${git} "${DIR}/patches/beaglebone/hdmi_audio/0001-clk-ti-add-gpio-controlled-clock.patch"
-	${git} "${DIR}/patches/beaglebone/hdmi_audio/0002-drm-tilcdc-Add-I2S-HDMI-audio-config-for-tda998x.patch"
-	${git} "${DIR}/patches/beaglebone/hdmi_audio/0003-ASoC-davinci-evm-HDMI-audio-support-for-TDA998x-trou.patch"
-	${git} "${DIR}/patches/beaglebone/hdmi_audio/0004-ASoC-davinci-HDMI-audio-build-for-AM33XX-and-TDA998x.patch"
-	${git} "${DIR}/patches/beaglebone/hdmi_audio/0005-ARM-dts-am33xx-Add-external-clock-provider.patch"
 }
 
 sgx () {
diff --git a/patches/beaglebone/capes/0002-cape-Argus-UPS-cape-support.patch b/patches/beaglebone/capes/0001-cape-Argus-UPS-cape-support.patch
similarity index 94%
rename from patches/beaglebone/capes/0002-cape-Argus-UPS-cape-support.patch
rename to patches/beaglebone/capes/0001-cape-Argus-UPS-cape-support.patch
index 7a1074347..dc8656ca6 100644
--- a/patches/beaglebone/capes/0002-cape-Argus-UPS-cape-support.patch
+++ b/patches/beaglebone/capes/0001-cape-Argus-UPS-cape-support.patch
@@ -1,20 +1,20 @@
-From 56b62dbef09941c57d1ca6b7bf73143b8a98726e Mon Sep 17 00:00:00 2001
+From d395c24246164cb4bb335ee86a427a7e99eadf51 Mon Sep 17 00:00:00 2001
 From: Dave Lambert <dave@lambsys.com>
 Date: Mon, 16 Jun 2014 14:19:17 -0500
-Subject: [PATCH 2/2] cape: Argus UPS cape support
+Subject: [PATCH 1/2] cape: Argus UPS cape support
 
 Rewritten using includes, v3.16.1
 
 Signed-off-by: Dave Lambert <dave@lambsys.com>
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-argus.dtsi       |  46 +++
+ arch/arm/boot/dts/am335x-bone-argus.dtsi       |  85 +++++
  drivers/misc/Kconfig                           |   1 +
  drivers/misc/Makefile                          |   1 +
  drivers/misc/cape_bone_argus/Kconfig           |   7 +
  drivers/misc/cape_bone_argus/Makefile          |   5 +
  drivers/misc/cape_bone_argus/cape_bone_argus.c | 415 +++++++++++++++++++++++++
- 6 files changed, 475 insertions(+)
+ 6 files changed, 514 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-argus.dtsi
  create mode 100644 drivers/misc/cape_bone_argus/Kconfig
  create mode 100644 drivers/misc/cape_bone_argus/Makefile
@@ -22,10 +22,10 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 
 diff --git a/arch/arm/boot/dts/am335x-bone-argus.dtsi b/arch/arm/boot/dts/am335x-bone-argus.dtsi
 new file mode 100644
-index 0000000..c6f9ea5
+index 0000000..5f653c3
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-argus.dtsi
-@@ -0,0 +1,46 @@
+@@ -0,0 +1,85 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -34,6 +34,45 @@ index 0000000..c6f9ea5
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P8_7_pinmux {
++		/* gpio2[2] */
++		status = "disabled";
++	};
++	P8_8_pinmux {
++		/* gpio2[3] */
++		status = "disabled";
++	};
++	P8_9_pinmux {
++		/* gpio2[5] */
++		status = "disabled";
++	};
++	P8_10_pinmux {
++		/* gpio2[4] */
++		status = "disabled";
++	};
++	P9_11_pinmux {
++		/* gpio0[30] */
++		status = "disabled";
++	};
++	P9_17_pinmux {
++		/* gpio0[5] */
++		status = "disabled";
++	};
++	P9_18_pinmux {
++		/* gpio0[4] */
++		status = "disabled";
++	};
++	P9_41_pinmux {
++		/* gpio0[20] */
++		status = "disabled";
++	};
++	P9_42_pinmux {
++		/* gpio0[7] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	argus-ups {
 +		compatible = "argus-ups";
@@ -73,7 +112,7 @@ index 0000000..c6f9ea5
 +	};
 +};
 diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
-index b841180..e92fc96 100644
+index 92b178f..87e25a5 100644
 --- a/drivers/misc/Kconfig
 +++ b/drivers/misc/Kconfig
 @@ -525,6 +525,7 @@ source "drivers/misc/altera-stapl/Kconfig"
@@ -82,10 +121,10 @@ index b841180..e92fc96 100644
  source "drivers/misc/mic/Kconfig"
 +source "drivers/misc/cape_bone_argus/Kconfig"
  source "drivers/misc/genwqe/Kconfig"
+ source "drivers/misc/cape/Kconfig"
  source "drivers/misc/echo/Kconfig"
- endmenu
 diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
-index 5497d02..5754ffa 100644
+index b88cde1..37eaee7 100644
 --- a/drivers/misc/Makefile
 +++ b/drivers/misc/Makefile
 @@ -52,6 +52,7 @@ obj-$(CONFIG_VMWARE_VMCI)	+= vmw_vmci/
@@ -94,8 +133,8 @@ index 5497d02..5754ffa 100644
  obj-y				+= mic/
 +obj-y				+= cape_bone_argus/
  obj-$(CONFIG_GENWQE)		+= genwqe/
+ obj-y				+= cape/
  obj-$(CONFIG_ECHO)		+= echo/
- obj-$(CONFIG_VEXPRESS_SYSCFG)	+= vexpress-syscfg.o
 diff --git a/drivers/misc/cape_bone_argus/Kconfig b/drivers/misc/cape_bone_argus/Kconfig
 new file mode 100644
 index 0000000..1b39661
@@ -542,5 +581,5 @@ index 0000000..c434218
 +MODULE_ALIAS("platform:argus-ups");
 +MODULE_DEVICE_TABLE(of, argus_ups_of_ids);
 -- 
-2.1.0.rc1
+2.1.0
 
diff --git a/patches/beaglebone/capes/0001-cape-basic-proto-cape.patch b/patches/beaglebone/capes/0001-cape-basic-proto-cape.patch
deleted file mode 100644
index fe82ed34a..000000000
--- a/patches/beaglebone/capes/0001-cape-basic-proto-cape.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From b284fed19f78e2f3cf4b2a5226e09d5ab368de8a Mon Sep 17 00:00:00 2001
-From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 12 Aug 2014 10:13:36 -0500
-Subject: [PATCH 1/2] cape: basic proto cape
-
-Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
----
- arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi | 17 +++++++++++++++++
- 1 file changed, 17 insertions(+)
- create mode 100644 arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi
-
-diff --git a/arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi b/arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi
-new file mode 100644
-index 0000000..a4e4b4e
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi
-@@ -0,0 +1,17 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+#include "am335x-bone-spi0-spidev.dtsi"
-+#include "am335x-bone-ttyO1.dtsi"
-+
-+&tscadc {
-+	status = "okay";
-+	adc {
-+		ti,adc-channels = <4 5 6>;
-+	};
-+};
--- 
-2.1.0.rc1
-
diff --git a/patches/beaglebone/dts/0001-am335x-boneblack-add-cpu0-opp-points.patch b/patches/beaglebone/dts/0001-am335x-boneblack-add-cpu0-opp-points.patch
index 114ecc51a..bb7987564 100644
--- a/patches/beaglebone/dts/0001-am335x-boneblack-add-cpu0-opp-points.patch
+++ b/patches/beaglebone/dts/0001-am335x-boneblack-add-cpu0-opp-points.patch
@@ -7,8 +7,8 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
  arch/arm/boot/dts/am335x-boneblack-1ghz.dtsi   | 27 ++++++++++++++++++++++++++
  arch/arm/boot/dts/am335x-boneblack-800mhz.dtsi | 26 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack.dts         |  6 +++++-
- 3 files changed, 58 insertions(+), 1 deletion(-)
+ arch/arm/boot/dts/am335x-boneblack.dts         |  4 ++++
+ 3 files changed, 57 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-1ghz.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-800mhz.dtsi
 
@@ -78,12 +78,12 @@ index 0000000..6d57fd1
 +	};
 +};
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index a4e2294..128b088 100644
+index 34ca4b2..05d1b3d 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
 +++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -28,6 +28,10 @@
- 
- #include "am335x-boneblack-emmc.dtsi"
+@@ -41,6 +41,10 @@
+ /* HDMI: without audio */
+ #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
  
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
@@ -92,13 +92,6 @@ index a4e2294..128b088 100644
  /* spi0: */
  /* P9.17 spi0_cs0 */
  /* P9.18 spi0_d1 */
-@@ -99,4 +103,4 @@
- /* http://elinux.org/Cryptotronix:CryptoCape */
- /* uart4: P9.11, P9.13 */
- /* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
--/* #include "am335x-bone-crypto-00a0.dtsi" */
-\ No newline at end of file
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/dts/0005-add-base-files.patch b/patches/beaglebone/dts/0005-add-base-files.patch
new file mode 100644
index 000000000..035324e2d
--- /dev/null
+++ b/patches/beaglebone/dts/0005-add-base-files.patch
@@ -0,0 +1,140 @@
+From 967a5758296702185483683fee3a8c4a74c8f76b Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Thu, 18 Sep 2014 16:14:48 -0500
+Subject: [PATCH 5/5] add base files
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-base.dts      | 51 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-base.dts | 60 +++++++++++++++++++++++++++++
+ 2 files changed, 111 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-base.dts
+ create mode 100644 arch/arm/boot/dts/am335x-boneblack-base.dts
+
+diff --git a/arch/arm/boot/dts/am335x-bone-base.dts b/arch/arm/boot/dts/am335x-bone-base.dts
+new file mode 100644
+index 0000000..76247ec
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-base.dts
+@@ -0,0 +1,51 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-boneblack-base.dts b/arch/arm/boot/dts/am335x-boneblack-base.dts
+new file mode 100644
+index 0000000..a4e7cb0
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-boneblack-base.dts
+@@ -0,0 +1,60 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone Black";
++	compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
++};
++
++&dcdc1_reg {
++	/* VDD_DDR3 voltage 1.35V */
++	regulator-name = "vdd_ddr3";
++	regulator-min-microvolt = <1350000>;
++	regulator-max-microvolt = <1350000>;
++	regulator-boot-on;
++	regulator-always-on;
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <1800000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&vmmcsd_fixed>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
++
++/* Max Core Speed */
++#include "am335x-boneblack-1ghz.dtsi"
++/* #include "am335x-boneblack-800mhz.dtsi" */
+\ No newline at end of file
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/generated/0001-auto-generated-cape-uarts.patch b/patches/beaglebone/generated/0001-auto-generated-cape-uarts.patch
index ad6c5acb8..de6fed97a 100644
--- a/patches/beaglebone/generated/0001-auto-generated-cape-uarts.patch
+++ b/patches/beaglebone/generated/0001-auto-generated-cape-uarts.patch
@@ -1,19 +1,19 @@
-From cac6d0a26284988b716386ea0fcc1c967ea0af24 Mon Sep 17 00:00:00 2001
+From 488342678c79b112e2eac7a7e273d14cd6a16fa9 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:12 -0500
-Subject: [PATCH 1/8] auto generated: cape: uarts
+Date: Fri, 19 Sep 2014 15:27:09 -0500
+Subject: [PATCH 1/9] auto generated: cape: uarts
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-ttyO1.dts      |  97 +++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-ttyO2.dts      |  97 +++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-ttyO4.dts      |  97 +++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-ttyO5.dts      |  97 +++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-ttyO1.dts | 125 +++++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-ttyO2.dts | 125 +++++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-ttyO4.dts | 125 +++++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-ttyO5.dts | 125 +++++++++++++++++++++++++++
- 8 files changed, 888 insertions(+)
+ arch/arm/boot/dts/am335x-bone-ttyO1.dts      | 53 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-ttyO2.dts      | 53 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-ttyO4.dts      | 53 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-ttyO5.dts      | 53 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-ttyO1.dts | 61 ++++++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-ttyO2.dts | 61 ++++++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-ttyO4.dts | 61 ++++++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-ttyO5.dts | 61 ++++++++++++++++++++++++++++
+ 8 files changed, 456 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO1.dts
  create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO2.dts
  create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO4.dts
@@ -25,10 +25,10 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 
 diff --git a/arch/arm/boot/dts/am335x-bone-ttyO1.dts b/arch/arm/boot/dts/am335x-bone-ttyO1.dts
 new file mode 100644
-index 0000000..239c307
+index 0000000..15a8f63
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-ttyO1.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -53,6 +53,17 @@ index 0000000..239c307
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -70,68 +81,13 @@ index 0000000..239c307
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO1.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-bone-ttyO2.dts b/arch/arm/boot/dts/am335x-bone-ttyO2.dts
 new file mode 100644
-index 0000000..03e234c
+index 0000000..eabcead
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-ttyO2.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -156,6 +112,17 @@ index 0000000..03e234c
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -173,68 +140,13 @@ index 0000000..03e234c
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO2.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-bone-ttyO4.dts b/arch/arm/boot/dts/am335x-bone-ttyO4.dts
 new file mode 100644
-index 0000000..55fba40
+index 0000000..2413af4
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-ttyO4.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -259,6 +171,17 @@ index 0000000..55fba40
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -276,68 +199,13 @@ index 0000000..55fba40
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO4.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-bone-ttyO5.dts b/arch/arm/boot/dts/am335x-bone-ttyO5.dts
 new file mode 100644
-index 0000000..bb806af
+index 0000000..de84138
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-ttyO5.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -362,6 +230,17 @@ index 0000000..bb806af
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -379,68 +258,13 @@ index 0000000..bb806af
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO5.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-ttyO1.dts b/arch/arm/boot/dts/am335x-boneblack-ttyO1.dts
 new file mode 100644
-index 0000000..9b7e812
+index 0000000..a46c9d6
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-ttyO1.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -474,6 +298,17 @@ index 0000000..9b7e812
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -484,94 +319,19 @@ index 0000000..9b7e812
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO1.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-ttyO2.dts b/arch/arm/boot/dts/am335x-boneblack-ttyO2.dts
 new file mode 100644
-index 0000000..847eb5f
+index 0000000..b167e7d
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-ttyO2.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -605,6 +365,17 @@ index 0000000..847eb5f
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -615,94 +386,19 @@ index 0000000..847eb5f
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO2.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-ttyO4.dts b/arch/arm/boot/dts/am335x-boneblack-ttyO4.dts
 new file mode 100644
-index 0000000..511710b
+index 0000000..67291d4
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-ttyO4.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -736,6 +432,17 @@ index 0000000..511710b
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -746,94 +453,19 @@ index 0000000..511710b
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO4.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-ttyO5.dts b/arch/arm/boot/dts/am335x-boneblack-ttyO5.dts
 new file mode 100644
-index 0000000..a021d39
+index 0000000..550fbae
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-ttyO5.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -867,6 +499,17 @@ index 0000000..a021d39
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -877,87 +520,12 @@ index 0000000..a021d39
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-ttyO5.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/generated/0002-auto-generated-cape-audio.patch b/patches/beaglebone/generated/0002-auto-generated-cape-audio.patch
index d7ac7fa72..ddc468669 100644
--- a/patches/beaglebone/generated/0002-auto-generated-cape-audio.patch
+++ b/patches/beaglebone/generated/0002-auto-generated-cape-audio.patch
@@ -1,22 +1,26 @@
-From b9a210a6de57e6024c2d92d79a13394666bbe1c8 Mon Sep 17 00:00:00 2001
+From 737c1c91c3b66bb50dad293f48ae878ab7aaac7e Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:12 -0500
-Subject: [PATCH 2/8] auto generated: cape: audio
+Date: Fri, 19 Sep 2014 15:27:09 -0500
+Subject: [PATCH 2/9] auto generated: cape: audio
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-audio.dts      |  97 +++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-audio.dts | 126 +++++++++++++++++++++++++++
- 2 files changed, 223 insertions(+)
- create mode 100644 arch/arm/boot/dts/am335x-bone-audio.dts
- create mode 100644 arch/arm/boot/dts/am335x-boneblack-audio.dts
+ arch/arm/boot/dts/am335x-bone-audio-reva.dts      | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-audio-revb.dts      | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-audio-reva.dts | 61 +++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-audio-revb.dts | 61 +++++++++++++++++++++++
+ 4 files changed, 228 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-audio-reva.dts
+ create mode 100644 arch/arm/boot/dts/am335x-bone-audio-revb.dts
+ create mode 100644 arch/arm/boot/dts/am335x-boneblack-audio-reva.dts
+ create mode 100644 arch/arm/boot/dts/am335x-boneblack-audio-revb.dts
 
-diff --git a/arch/arm/boot/dts/am335x-bone-audio.dts b/arch/arm/boot/dts/am335x-bone-audio.dts
+diff --git a/arch/arm/boot/dts/am335x-bone-audio-reva.dts b/arch/arm/boot/dts/am335x-bone-audio-reva.dts
 new file mode 100644
-index 0000000..2b60f43
+index 0000000..537ab3b
 --- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-audio.dts
-@@ -0,0 +1,97 @@
++++ b/arch/arm/boot/dts/am335x-bone-audio-reva.dts
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -41,6 +45,76 @@ index 0000000..2b60f43
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
++
++#include "am335x-bone-audio-reva.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-bone-audio-revb.dts b/arch/arm/boot/dts/am335x-bone-audio-revb.dts
+new file mode 100644
+index 0000000..6935cb6
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-audio-revb.dts
+@@ -0,0 +1,53 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -58,68 +132,13 @@ index 0000000..2b60f43
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
-+#include "am335x-bone-audio.dtsi"
-diff --git a/arch/arm/boot/dts/am335x-boneblack-audio.dts b/arch/arm/boot/dts/am335x-boneblack-audio.dts
++#include "am335x-bone-audio-revb.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-boneblack-audio-reva.dts b/arch/arm/boot/dts/am335x-boneblack-audio-reva.dts
 new file mode 100644
-index 0000000..6183697
+index 0000000..25f0f54
 --- /dev/null
-+++ b/arch/arm/boot/dts/am335x-boneblack-audio.dts
-@@ -0,0 +1,126 @@
++++ b/arch/arm/boot/dts/am335x-boneblack-audio-reva.dts
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -153,6 +172,17 @@ index 0000000..6183697
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -163,89 +193,80 @@ index 0000000..6183697
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
++#include "am335x-bone-audio-reva.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-boneblack-audio-revb.dts b/arch/arm/boot/dts/am335x-boneblack-audio-revb.dts
+new file mode 100644
+index 0000000..c447af3
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-boneblack-audio-revb.dts
+@@ -0,0 +1,61 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone Black";
++	compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
++};
++
++&dcdc1_reg {
++	/* VDD_DDR3 voltage 1.35V */
++	regulator-name = "vdd_ddr3";
++	regulator-min-microvolt = <1350000>;
++	regulator-max-microvolt = <1350000>;
++	regulator-boot-on;
++	regulator-always-on;
++};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
-+#include "am335x-bone-audio.dtsi"
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <1800000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&vmmcsd_fixed>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
 +#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
++
++/* Max Core Speed */
++#include "am335x-boneblack-1ghz.dtsi"
++/* #include "am335x-boneblack-800mhz.dtsi" */
++#include "am335x-bone-audio-revb.dtsi"
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/generated/0003-auto-generated-cape-lcd.patch b/patches/beaglebone/generated/0003-auto-generated-cape-lcd.patch
index d0d7aa2f8..0b74d5425 100644
--- a/patches/beaglebone/generated/0003-auto-generated-cape-lcd.patch
+++ b/patches/beaglebone/generated/0003-auto-generated-cape-lcd.patch
@@ -1,19 +1,19 @@
-From 952799eff2b0ff1b4de6e9e1b3678f40a0fee2ca Mon Sep 17 00:00:00 2001
+From 1a71de8a3cf0e384ab65b5ef4fb509e76072b1e7 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:13 -0500
-Subject: [PATCH 3/8] auto generated: cape: lcd
+Date: Fri, 19 Sep 2014 15:27:10 -0500
+Subject: [PATCH 3/9] auto generated: cape: lcd
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dts     |  97 ++++++++++++++++
- arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dts     |  97 ++++++++++++++++
- arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dts     |  97 ++++++++++++++++
- arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dts     |  97 ++++++++++++++++
- .../arm/boot/dts/am335x-boneblack-lcd3-01-00a2.dts | 125 +++++++++++++++++++++
- .../arm/boot/dts/am335x-boneblack-lcd4-01-00a1.dts | 125 +++++++++++++++++++++
- .../arm/boot/dts/am335x-boneblack-lcd7-01-00a2.dts | 125 +++++++++++++++++++++
- .../arm/boot/dts/am335x-boneblack-lcd7-01-00a3.dts | 125 +++++++++++++++++++++
- 8 files changed, 888 insertions(+)
+ arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dts     | 53 +++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dts     | 53 +++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dts     | 53 +++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dts     | 53 +++++++++++++++++++
+ .../arm/boot/dts/am335x-boneblack-lcd3-01-00a2.dts | 61 ++++++++++++++++++++++
+ .../arm/boot/dts/am335x-boneblack-lcd4-01-00a1.dts | 61 ++++++++++++++++++++++
+ .../arm/boot/dts/am335x-boneblack-lcd7-01-00a2.dts | 61 ++++++++++++++++++++++
+ .../arm/boot/dts/am335x-boneblack-lcd7-01-00a3.dts | 61 ++++++++++++++++++++++
+ 8 files changed, 456 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dts
  create mode 100644 arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dts
  create mode 100644 arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dts
@@ -25,10 +25,10 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dts b/arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dts
 new file mode 100644
-index 0000000..1cd390e
+index 0000000..d43cdf2
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -53,6 +53,17 @@ index 0000000..1cd390e
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -70,68 +81,13 @@ index 0000000..1cd390e
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd3-01-00a2.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dts b/arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dts
 new file mode 100644
-index 0000000..6e45c8c
+index 0000000..3c8922f
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -156,6 +112,17 @@ index 0000000..6e45c8c
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -173,68 +140,13 @@ index 0000000..6e45c8c
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd4-01-00a1.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dts b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dts
 new file mode 100644
-index 0000000..df73a3c
+index 0000000..35bab99
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -259,6 +171,17 @@ index 0000000..df73a3c
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -276,68 +199,13 @@ index 0000000..df73a3c
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd7-01-00a2.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dts b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dts
 new file mode 100644
-index 0000000..270e804
+index 0000000..9e62dd1
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -362,6 +230,17 @@ index 0000000..270e804
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -379,68 +258,13 @@ index 0000000..270e804
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd7-01-00a3.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-lcd3-01-00a2.dts b/arch/arm/boot/dts/am335x-boneblack-lcd3-01-00a2.dts
 new file mode 100644
-index 0000000..d994181
+index 0000000..e0dac7c
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-lcd3-01-00a2.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -474,6 +298,17 @@ index 0000000..d994181
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -484,94 +319,19 @@ index 0000000..d994181
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd3-01-00a2.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-lcd4-01-00a1.dts b/arch/arm/boot/dts/am335x-boneblack-lcd4-01-00a1.dts
 new file mode 100644
-index 0000000..f7c35ae
+index 0000000..9948886
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-lcd4-01-00a1.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -605,6 +365,17 @@ index 0000000..f7c35ae
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -615,94 +386,19 @@ index 0000000..f7c35ae
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd4-01-00a1.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-lcd7-01-00a2.dts b/arch/arm/boot/dts/am335x-boneblack-lcd7-01-00a2.dts
 new file mode 100644
-index 0000000..9f40474
+index 0000000..d45a046
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-lcd7-01-00a2.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -736,6 +432,17 @@ index 0000000..9f40474
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -746,94 +453,19 @@ index 0000000..9f40474
 +};
 +
 +/* #include "am335x-boneblack-emmc.dtsi" */
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd7-01-00a2.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-lcd7-01-00a3.dts b/arch/arm/boot/dts/am335x-boneblack-lcd7-01-00a3.dts
 new file mode 100644
-index 0000000..601f1c4
+index 0000000..1e1bc53
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-lcd7-01-00a3.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -867,6 +499,17 @@ index 0000000..601f1c4
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -877,87 +520,12 @@ index 0000000..601f1c4
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-lcd7-01-00a3.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/generated/0004-auto-generated-cape-argus.patch b/patches/beaglebone/generated/0004-auto-generated-cape-argus.patch
index c044d7b8c..e0f6da9d6 100644
--- a/patches/beaglebone/generated/0004-auto-generated-cape-argus.patch
+++ b/patches/beaglebone/generated/0004-auto-generated-cape-argus.patch
@@ -1,22 +1,22 @@
-From 5b4c0cf848d8ea1c70773e63b08734285f59e0ed Mon Sep 17 00:00:00 2001
+From 58eca5578adf9a44d49e4d3a1f443eabe01e6de9 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:14 -0500
-Subject: [PATCH 4/8] auto generated: cape: argus
+Date: Fri, 19 Sep 2014 15:27:10 -0500
+Subject: [PATCH 4/9] auto generated: cape: argus
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-cape-bone-argus.dts  |  97 ++++++++++++++++
- .../boot/dts/am335x-boneblack-cape-bone-argus.dts  | 125 +++++++++++++++++++++
- 2 files changed, 222 insertions(+)
+ arch/arm/boot/dts/am335x-bone-cape-bone-argus.dts  | 53 +++++++++++++++++++
+ .../boot/dts/am335x-boneblack-cape-bone-argus.dts  | 61 ++++++++++++++++++++++
+ 2 files changed, 114 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-cape-bone-argus.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-cape-bone-argus.dts
 
 diff --git a/arch/arm/boot/dts/am335x-bone-cape-bone-argus.dts b/arch/arm/boot/dts/am335x-bone-cape-bone-argus.dts
 new file mode 100644
-index 0000000..31a35e0
+index 0000000..6faa721
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-cape-bone-argus.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -41,6 +41,17 @@ index 0000000..31a35e0
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -58,68 +69,13 @@ index 0000000..31a35e0
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-argus.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-cape-bone-argus.dts b/arch/arm/boot/dts/am335x-boneblack-cape-bone-argus.dts
 new file mode 100644
-index 0000000..1f9f250
+index 0000000..7ac611f
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-cape-bone-argus.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -153,6 +109,17 @@ index 0000000..1f9f250
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -163,87 +130,12 @@ index 0000000..1f9f250
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-argus.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/generated/0005-auto-generated-cape-rtc-01-00a1.patch b/patches/beaglebone/generated/0005-auto-generated-cape-rtc-01-00a1.patch
index 092c3ccc7..f94c4ce6c 100644
--- a/patches/beaglebone/generated/0005-auto-generated-cape-rtc-01-00a1.patch
+++ b/patches/beaglebone/generated/0005-auto-generated-cape-rtc-01-00a1.patch
@@ -1,22 +1,22 @@
-From a57267de33cf8e84d824a2b6a73d941e3ee9ee46 Mon Sep 17 00:00:00 2001
+From 0addfedf0153eebce85473b89ff4125b649e100a Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:14 -0500
-Subject: [PATCH 5/8] auto generated: cape: rtc-01-00a1
+Date: Fri, 19 Sep 2014 15:27:10 -0500
+Subject: [PATCH 5/9] auto generated: cape: rtc-01-00a1
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dts      |  97 ++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-rtc-01-00a1.dts | 125 +++++++++++++++++++++
- 2 files changed, 222 insertions(+)
+ arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dts      | 53 +++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-rtc-01-00a1.dts | 61 ++++++++++++++++++++++
+ 2 files changed, 114 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-rtc-01-00a1.dts
 
 diff --git a/arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dts b/arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dts
 new file mode 100644
-index 0000000..051ef26
+index 0000000..31e6ded
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -41,6 +41,17 @@ index 0000000..051ef26
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -58,68 +69,13 @@ index 0000000..051ef26
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-rtc-01-00a1.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-rtc-01-00a1.dts b/arch/arm/boot/dts/am335x-boneblack-rtc-01-00a1.dts
 new file mode 100644
-index 0000000..56abab5
+index 0000000..e403e02
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-rtc-01-00a1.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -153,6 +109,17 @@ index 0000000..56abab5
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -163,87 +130,12 @@ index 0000000..56abab5
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-rtc-01-00a1.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/generated/0006-auto-generated-cape-crypto-00a0.patch b/patches/beaglebone/generated/0006-auto-generated-cape-crypto-00a0.patch
index 202f82197..fd56627b7 100644
--- a/patches/beaglebone/generated/0006-auto-generated-cape-crypto-00a0.patch
+++ b/patches/beaglebone/generated/0006-auto-generated-cape-crypto-00a0.patch
@@ -1,22 +1,22 @@
-From 5c0f1c9a2b3131716ef3883342ed17ed0342cd48 Mon Sep 17 00:00:00 2001
+From 300ec0b88d836a8fbe0c68ee0aa7bb9b25c31820 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:14 -0500
-Subject: [PATCH 6/8] auto generated: cape: crypto-00a0
+Date: Fri, 19 Sep 2014 15:27:10 -0500
+Subject: [PATCH 6/9] auto generated: cape: crypto-00a0
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-crypto-00a0.dts      |  97 ++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-crypto-00a0.dts | 125 +++++++++++++++++++++
- 2 files changed, 222 insertions(+)
+ arch/arm/boot/dts/am335x-bone-crypto-00a0.dts      | 53 +++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-crypto-00a0.dts | 61 ++++++++++++++++++++++
+ 2 files changed, 114 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-crypto-00a0.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-crypto-00a0.dts
 
 diff --git a/arch/arm/boot/dts/am335x-bone-crypto-00a0.dts b/arch/arm/boot/dts/am335x-bone-crypto-00a0.dts
 new file mode 100644
-index 0000000..f103dfe
+index 0000000..9ba9a55
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-crypto-00a0.dts
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,53 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -41,6 +41,17 @@ index 0000000..f103dfe
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&ldo3_reg>;
 +};
@@ -58,68 +69,13 @@ index 0000000..f103dfe
 +	status = "okay";
 +};
 +
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-crypto-00a0.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-crypto-00a0.dts b/arch/arm/boot/dts/am335x-boneblack-crypto-00a0.dts
 new file mode 100644
-index 0000000..e318b24
+index 0000000..7773b31
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-crypto-00a0.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -153,6 +109,17 @@ index 0000000..e318b24
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -163,87 +130,12 @@ index 0000000..e318b24
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-crypto-00a0.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/generated/0007-auto-generated-cape-4dcape.patch b/patches/beaglebone/generated/0007-auto-generated-cape-4dcape.patch
index 1d61b25f7..2721b5857 100644
--- a/patches/beaglebone/generated/0007-auto-generated-cape-4dcape.patch
+++ b/patches/beaglebone/generated/0007-auto-generated-cape-4dcape.patch
@@ -1,26 +1,270 @@
-From 996651ea189596e4c840fccb501e08a869c0db42 Mon Sep 17 00:00:00 2001
+From 63a52787007a3a13bf66206f6dd02c9855bbf8a9 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:15 -0500
-Subject: [PATCH 7/8] auto generated: cape: 4dcape
+Date: Fri, 19 Sep 2014 15:27:11 -0500
+Subject: [PATCH 7/9] auto generated: cape: 4dcape
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-boneblack-4dcape-43.dts  | 125 ++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-4dcape-43t.dts | 125 ++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-4dcape-70.dts  | 125 ++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack-4dcape-70t.dts | 125 ++++++++++++++++++++++
- 4 files changed, 500 insertions(+)
+ arch/arm/boot/dts/am335x-bone-4dcape-43.dts       | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-4dcape-43t.dts      | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-4dcape-70.dts       | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-4dcape-70t.dts      | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-4dcape-43.dts  | 61 +++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-4dcape-43t.dts | 61 +++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-4dcape-70.dts  | 61 +++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-4dcape-70t.dts | 61 +++++++++++++++++++++++
+ 8 files changed, 456 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-43.dts
+ create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-43t.dts
+ create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-70.dts
+ create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-70t.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-4dcape-43.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-4dcape-43t.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-4dcape-70.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-4dcape-70t.dts
 
+diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-43.dts b/arch/arm/boot/dts/am335x-bone-4dcape-43.dts
+new file mode 100644
+index 0000000..a640af6
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-4dcape-43.dts
+@@ -0,0 +1,53 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
++
++#include "am335x-bone-4dcape-43.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-43t.dts b/arch/arm/boot/dts/am335x-bone-4dcape-43t.dts
+new file mode 100644
+index 0000000..76b520e
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-4dcape-43t.dts
+@@ -0,0 +1,53 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
++
++#include "am335x-bone-4dcape-43t.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-70.dts b/arch/arm/boot/dts/am335x-bone-4dcape-70.dts
+new file mode 100644
+index 0000000..952d812
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-4dcape-70.dts
+@@ -0,0 +1,53 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
++
++#include "am335x-bone-4dcape-70.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-70t.dts b/arch/arm/boot/dts/am335x-bone-4dcape-70t.dts
+new file mode 100644
+index 0000000..70c2611
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-4dcape-70t.dts
+@@ -0,0 +1,53 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
++
++#include "am335x-bone-4dcape-70t.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-4dcape-43.dts b/arch/arm/boot/dts/am335x-boneblack-4dcape-43.dts
 new file mode 100644
-index 0000000..af95ab5
+index 0000000..ec161c0
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-4dcape-43.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -54,6 +298,17 @@ index 0000000..af95ab5
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -64,94 +319,19 @@ index 0000000..af95ab5
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-4dcape-43.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-4dcape-43t.dts b/arch/arm/boot/dts/am335x-boneblack-4dcape-43t.dts
 new file mode 100644
-index 0000000..e172ae0
+index 0000000..e8ee1fa
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-4dcape-43t.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -185,6 +365,17 @@ index 0000000..e172ae0
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -195,94 +386,19 @@ index 0000000..e172ae0
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-4dcape-43t.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-4dcape-70.dts b/arch/arm/boot/dts/am335x-boneblack-4dcape-70.dts
 new file mode 100644
-index 0000000..cad25e9
+index 0000000..f5dc385
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-4dcape-70.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -316,6 +432,17 @@ index 0000000..cad25e9
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -326,94 +453,19 @@ index 0000000..cad25e9
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-4dcape-70.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-4dcape-70t.dts b/arch/arm/boot/dts/am335x-boneblack-4dcape-70t.dts
 new file mode 100644
-index 0000000..a46d28f
+index 0000000..c4f026e
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-4dcape-70t.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -447,6 +499,17 @@ index 0000000..a46d28f
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -457,87 +520,12 @@ index 0000000..a46d28f
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-4dcape-70t.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/generated/0008-auto-generated-cape-bbb-exp-c.patch b/patches/beaglebone/generated/0008-auto-generated-cape-bbb-exp-c.patch
index 3441db904..f391d2395 100644
--- a/patches/beaglebone/generated/0008-auto-generated-cape-bbb-exp-c.patch
+++ b/patches/beaglebone/generated/0008-auto-generated-cape-bbb-exp-c.patch
@@ -1,20 +1,81 @@
-From d2d8d27ab31475920ca3540a34c42b0ddaf9b2a5 Mon Sep 17 00:00:00 2001
+From 95970bdf21e38eb5a0beb5bae2479b46daeca8a3 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:15 -0500
-Subject: [PATCH 8/8] auto generated: cape: bbb-exp-c
+Date: Fri, 19 Sep 2014 15:27:11 -0500
+Subject: [PATCH 8/9] auto generated: cape: bbb-exp-c
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-boneblack-bbb-exp-c.dts | 125 +++++++++++++++++++++++
- 1 file changed, 125 insertions(+)
+ arch/arm/boot/dts/am335x-bone-bbb-exp-c.dts      | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-bbb-exp-c.dts | 61 ++++++++++++++++++++++++
+ 2 files changed, 114 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-bbb-exp-c.dts
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-bbb-exp-c.dts
 
+diff --git a/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dts b/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dts
+new file mode 100644
+index 0000000..8dbca30
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dts
+@@ -0,0 +1,53 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
++
++#include "am335x-bone-bbb-exp-c.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-boneblack-bbb-exp-c.dts b/arch/arm/boot/dts/am335x-boneblack-bbb-exp-c.dts
 new file mode 100644
-index 0000000..401d6d6
+index 0000000..db8ddea
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-boneblack-bbb-exp-c.dts
-@@ -0,0 +1,125 @@
+@@ -0,0 +1,61 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -48,6 +109,17 @@ index 0000000..401d6d6
 +	regulator-always-on;
 +};
 +
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
 +&mmc1 {
 +	vmmc-supply = <&vmmcsd_fixed>;
 +};
@@ -58,87 +130,12 @@ index 0000000..401d6d6
 +};
 +
 +#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
 +
 +/* Max Core Speed */
 +#include "am335x-boneblack-1ghz.dtsi"
 +/* #include "am335x-boneblack-800mhz.dtsi" */
-+
-+/* spi0: */
-+/* P9.17 spi0_cs0 */
-+/* P9.18 spi0_d1 */
-+/* P9.21 spi0_d0 */
-+/* P9.22 spi0_sclk */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
-+/* spi1: */
-+/* P9.31 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.28 spi1_cs0 */
-+/* #include "am335x-bone-spi1-spidev.dtsi" */
-+
-+/* spi1a: */
-+/* P9.42 spi1_sclk */
-+/* P9.29 spi1_d0 */
-+/* P9.30 spi1_d1 */
-+/* P9.20 spi1_cs0 */
-+/* #include "am335x-bone-spi1a-spidev.dtsi" */
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
-+/* Display */
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+/* #include "am335x-boneblack-nxp-hdmi-audio.dtsi" */
-+
-+/* Capes */
-+/* http://elinux.org/4D_4.3_LCD_CAPE */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-43.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-43t.dtsi" */
-+
-+/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
-+/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
-+/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
-+/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
-+/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD4 */
-+/* #include "am335x-bone-lcd4-01-00a1.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
-+/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
-+/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:RTC_Cape */
-+/* i2c1: P9.17, P9.18 */
-+/* gpio: P8.26 (mfp: wakeup) */
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-+
-+/* http://elinux.org/Cryptotronix:CryptoCape */
-+/* uart4: P9.11, P9.13 */
-+/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
-+/* #include "am335x-bone-crypto-00a0.dtsi" */
-+
 +#include "am335x-bone-bbb-exp-c.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/generated/0009-auto-generated-cape-bb-view-43.patch b/patches/beaglebone/generated/0009-auto-generated-cape-bb-view-43.patch
new file mode 100644
index 000000000..3b70870b1
--- /dev/null
+++ b/patches/beaglebone/generated/0009-auto-generated-cape-bb-view-43.patch
@@ -0,0 +1,142 @@
+From 943731bb46d04867732cab5bbc7096067e79fc8b Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Fri, 19 Sep 2014 15:27:11 -0500
+Subject: [PATCH 9/9] auto generated: cape: bb-view-43
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-bb-view-43.dts      | 53 ++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack-bb-view-43.dts | 61 +++++++++++++++++++++++
+ 2 files changed, 114 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-bb-view-43.dts
+ create mode 100644 arch/arm/boot/dts/am335x-boneblack-bb-view-43.dts
+
+diff --git a/arch/arm/boot/dts/am335x-bone-bb-view-43.dts b/arch/arm/boot/dts/am335x-bone-bb-view-43.dts
+new file mode 100644
+index 0000000..8ffb8c4
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-bb-view-43.dts
+@@ -0,0 +1,53 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone";
++	compatible = "ti,am335x-bone", "ti,am33xx";
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <3300000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&ldo3_reg>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++&sham {
++	status = "okay";
++};
++
++&aes {
++	status = "okay";
++};
++
++#include "am335x-bone-bb-view-43.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-boneblack-bb-view-43.dts b/arch/arm/boot/dts/am335x-boneblack-bb-view-43.dts
+new file mode 100644
+index 0000000..b5c3df5
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-boneblack-bb-view-43.dts
+@@ -0,0 +1,61 @@
++/*
++ * Copyright (C) 2012 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 "am33xx.dtsi"
++#include "am335x-bone-common.dtsi"
++#include "am335x-bone-common-pinmux.dtsi"
++
++/ {
++	model = "TI AM335x BeagleBone Black";
++	compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
++};
++
++&dcdc1_reg {
++	/* VDD_DDR3 voltage 1.35V */
++	regulator-name = "vdd_ddr3";
++	regulator-min-microvolt = <1350000>;
++	regulator-max-microvolt = <1350000>;
++	regulator-boot-on;
++	regulator-always-on;
++};
++
++&ldo3_reg {
++	regulator-min-microvolt = <1800000>;
++	regulator-max-microvolt = <1800000>;
++	regulator-always-on;
++};
++
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
++&mmc1 {
++	vmmc-supply = <&vmmcsd_fixed>;
++};
++
++&am33xx_pinmux {
++	pinctrl-names = "default";
++	pinctrl-0 = <&clkout2_pin>;
++};
++
++#include "am335x-boneblack-emmc.dtsi"
++/* HDMI: without audio */
++/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
++
++/* Max Core Speed */
++#include "am335x-boneblack-1ghz.dtsi"
++/* #include "am335x-boneblack-800mhz.dtsi" */
++#include "am335x-bone-bb-view-43.dtsi"
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/generated/last/0001-auto-generated-cape-basic-proto-cape.patch b/patches/beaglebone/generated/last/0001-auto-generated-cape-basic-proto-cape.patch
deleted file mode 100644
index 0621022b1..000000000
--- a/patches/beaglebone/generated/last/0001-auto-generated-cape-basic-proto-cape.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 49b3ec4c3a094906b4d0ecec6cca349da5e375ec Mon Sep 17 00:00:00 2001
-From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:15 -0500
-Subject: [PATCH 1/2] auto generated: cape: basic-proto-cape
-
-Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
----
- arch/arm/boot/dts/am335x-bone.dts      | 3 +++
- arch/arm/boot/dts/am335x-boneblack.dts | 3 +++
- 2 files changed, 6 insertions(+)
-
-diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index 9a162e6..e00d052 100644
---- a/arch/arm/boot/dts/am335x-bone.dts
-+++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -93,3 +93,6 @@
- /* uart4: P9.11, P9.13 */
- /* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
- /* #include "am335x-bone-crypto-00a0.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Basic_Proto_Cape */
-+/* #include "am335x-bone-basic-proto-cape.dtsi" */
-diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index a31614a..450f974 100644
---- a/arch/arm/boot/dts/am335x-boneblack.dts
-+++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -121,3 +121,6 @@
- /* uart4: P9.11, P9.13 */
- /* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
- /* #include "am335x-bone-crypto-00a0.dtsi" */
-+
-+/* http://elinux.org/CircuitCo:Basic_Proto_Cape */
-+/* #include "am335x-bone-basic-proto-cape.dtsi" */
--- 
-2.1.0
-
diff --git a/patches/beaglebone/generated/last/0002-auto-generated-capes-add-dtbs-to-makefile.patch b/patches/beaglebone/generated/last/0001-auto-generated-capes-add-dtbs-to-makefile.patch
similarity index 64%
rename from patches/beaglebone/generated/last/0002-auto-generated-capes-add-dtbs-to-makefile.patch
rename to patches/beaglebone/generated/last/0001-auto-generated-capes-add-dtbs-to-makefile.patch
index 516a0802c..60a006391 100644
--- a/patches/beaglebone/generated/last/0002-auto-generated-capes-add-dtbs-to-makefile.patch
+++ b/patches/beaglebone/generated/last/0001-auto-generated-capes-add-dtbs-to-makefile.patch
@@ -1,18 +1,18 @@
-From 1480a69939950cb500ed1ad5ab21050fef5882d2 Mon Sep 17 00:00:00 2001
+From da61388bf4e44ead5ca0efc18bc4277032ac9960 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 11 Sep 2014 16:19:16 -0500
-Subject: [PATCH 2/2] auto generated: capes: add dtbs to makefile
+Date: Fri, 19 Sep 2014 15:27:11 -0500
+Subject: [PATCH] auto generated: capes: add dtbs to makefile
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/Makefile | 29 +++++++++++++++++++++++++++++
- 1 file changed, 29 insertions(+)
+ arch/arm/boot/dts/Makefile | 38 ++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 38 insertions(+)
 
 diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
-index 11dc511..a99a527 100644
+index 11dc511..7af3f1c 100644
 --- a/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
-@@ -314,6 +314,35 @@ dtb-$(CONFIG_ARCH_OMAP3) += am3517-craneboard.dtb \
+@@ -314,6 +314,44 @@ dtb-$(CONFIG_ARCH_OMAP3) += am3517-craneboard.dtb \
  dtb-$(CONFIG_SOC_AM33XX) += am335x-base0033.dtb \
  	am335x-bone.dtb \
  	am335x-boneblack.dtb \
@@ -32,7 +32,9 @@ index 11dc511..a99a527 100644
 +	am335x-boneblack-4dcape-43.dtb \
 +	am335x-boneblack-crypto-00a0.dtb \
 +	am335x-boneblack-cape-bone-argus.dtb \
-+	am335x-boneblack-audio.dtb \
++	am335x-boneblack-bb-view-43.dtb \
++	am335x-boneblack-audio-revb.dtb \
++	am335x-boneblack-audio-reva.dtb \
 +	am335x-bone-ttyO5.dtb \
 +	am335x-bone-ttyO4.dtb \
 +	am335x-bone-ttyO2.dtb \
@@ -42,9 +44,16 @@ index 11dc511..a99a527 100644
 +	am335x-bone-lcd7-01-00a2.dtb \
 +	am335x-bone-lcd4-01-00a1.dtb \
 +	am335x-bone-lcd3-01-00a2.dtb \
++	am335x-bone-bbb-exp-c.dtb \
++	am335x-bone-4dcape-70t.dtb \
++	am335x-bone-4dcape-70.dtb \
++	am335x-bone-4dcape-43t.dtb \
++	am335x-bone-4dcape-43.dtb \
 +	am335x-bone-crypto-00a0.dtb \
 +	am335x-bone-cape-bone-argus.dtb \
-+	am335x-bone-audio.dtb \
++	am335x-bone-bb-view-43.dtb \
++	am335x-bone-audio-revb.dtb \
++	am335x-bone-audio-reva.dtb \
  	am335x-evm.dtb \
  	am335x-evmsk.dtb \
  	am335x-nano.dtb \
diff --git a/patches/beaglebone/pinmux-helper/0001-BeagleBone-pinmux-helper.patch b/patches/beaglebone/pinmux-helper/0001-BeagleBone-pinmux-helper.patch
new file mode 100644
index 000000000..f59404f97
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0001-BeagleBone-pinmux-helper.patch
@@ -0,0 +1,203 @@
+From 6e6f7e23af92fddb97ec1432d2ffe5a05279a15a Mon Sep 17 00:00:00 2001
+From: Pantelis Antoniou <panto@antoniou-consulting.com>
+Date: Fri, 28 Dec 2012 20:56:48 +0200
+Subject: [PATCH 1/7] BeagleBone pinmux helper
+
+This patch was derived from 2 commits, but I removed the non-pinmux-helper portions
+and added the helper to the bb.org_defconfig:
+
+capemgr: Capemgr makefiles and Kconfig fragments.
+
+Introduce a cape loader using DT overlays and dynamic
+DT objects.
+
+Makefile and Kconfig fragments.
+
+Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
+
+Conflicts:
+	arch/arm/mach-omap2/Kconfig
+	drivers/misc/Kconfig
+	drivers/misc/Makefile
+
+And:
+
+Pinmux helper driver.
+
+    That's just a hack to get a pinmux helper driver working.
+
+    Define in the DT
+
+    	helper {
+    		compatible = "bone-pinmux-helper";
+    		pinctrl-names = "default";
+    		pinctrl-0 = <&helper_pins>;
+    		status = "okay";
+    	};
+---
+ drivers/misc/Kconfig                              |  1 +
+ drivers/misc/Makefile                             |  1 +
+ drivers/misc/cape/Kconfig                         |  5 ++
+ drivers/misc/cape/Makefile                        |  5 ++
+ drivers/misc/cape/beaglebone/Kconfig              | 10 ++++
+ drivers/misc/cape/beaglebone/Makefile             |  5 ++
+ drivers/misc/cape/beaglebone/bone-pinmux-helper.c | 72 +++++++++++++++++++++++
+ 7 files changed, 99 insertions(+)
+ create mode 100644 drivers/misc/cape/Kconfig
+ create mode 100644 drivers/misc/cape/Makefile
+ create mode 100644 drivers/misc/cape/beaglebone/Kconfig
+ create mode 100644 drivers/misc/cape/beaglebone/Makefile
+ create mode 100644 drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+
+diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
+index b841180..92b178f 100644
+--- a/drivers/misc/Kconfig
++++ b/drivers/misc/Kconfig
+@@ -526,5 +526,6 @@ source "drivers/misc/mei/Kconfig"
+ source "drivers/misc/vmw_vmci/Kconfig"
+ source "drivers/misc/mic/Kconfig"
+ source "drivers/misc/genwqe/Kconfig"
++source "drivers/misc/cape/Kconfig"
+ source "drivers/misc/echo/Kconfig"
+ endmenu
+diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
+index 5497d02..b88cde1 100644
+--- a/drivers/misc/Makefile
++++ b/drivers/misc/Makefile
+@@ -53,5 +53,6 @@ obj-$(CONFIG_LATTICE_ECP3_CONFIG)	+= lattice-ecp3-config.o
+ obj-$(CONFIG_SRAM)		+= sram.o
+ obj-y				+= mic/
+ obj-$(CONFIG_GENWQE)		+= genwqe/
++obj-y				+= cape/
+ obj-$(CONFIG_ECHO)		+= echo/
+ obj-$(CONFIG_VEXPRESS_SYSCFG)	+= vexpress-syscfg.o
+diff --git a/drivers/misc/cape/Kconfig b/drivers/misc/cape/Kconfig
+new file mode 100644
+index 0000000..a2ef85e
+--- /dev/null
++++ b/drivers/misc/cape/Kconfig
+@@ -0,0 +1,5 @@
++#
++# Capes
++#
++
++source "drivers/misc/cape/beaglebone/Kconfig"
+diff --git a/drivers/misc/cape/Makefile b/drivers/misc/cape/Makefile
+new file mode 100644
+index 0000000..7c4eb96
+--- /dev/null
++++ b/drivers/misc/cape/Makefile
+@@ -0,0 +1,5 @@
++#
++# Makefile for cape like devices
++#
++
++obj-y				+= beaglebone/
+diff --git a/drivers/misc/cape/beaglebone/Kconfig b/drivers/misc/cape/beaglebone/Kconfig
+new file mode 100644
+index 0000000..eeb6782
+--- /dev/null
++++ b/drivers/misc/cape/beaglebone/Kconfig
+@@ -0,0 +1,10 @@
++#
++# Beaglebone capes
++#
++
++config BEAGLEBONE_PINMUX_HELPER
++	tristate "Beaglebone Pinmux Helper"
++	depends on ARCH_OMAP2PLUS && OF
++	default n
++	help
++	  Say Y here to include support for the pinmux helper
+diff --git a/drivers/misc/cape/beaglebone/Makefile b/drivers/misc/cape/beaglebone/Makefile
+new file mode 100644
+index 0000000..7f4617a
+--- /dev/null
++++ b/drivers/misc/cape/beaglebone/Makefile
+@@ -0,0 +1,5 @@
++#
++# Makefile for beaglebone capes
++#
++
++obj-$(CONFIG_BEAGLEBONE_PINMUX_HELPER)	+= bone-pinmux-helper.o
+diff --git a/drivers/misc/cape/beaglebone/bone-pinmux-helper.c b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+new file mode 100644
+index 0000000..ba3922d
+--- /dev/null
++++ b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+@@ -0,0 +1,72 @@
++/*
++ * Pinmux helper driver
++ *
++ * Copyright (C) 2013 Pantelis Antoniou <panto@antoniou-consulting.com>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
++ */
++
++#include <linux/module.h>
++#include <linux/kernel.h>
++#include <linux/errno.h>
++#include <linux/init.h>
++#include <linux/err.h>
++#include <linux/of.h>
++#include <linux/of_device.h>
++#include <linux/of_gpio.h>
++#include <linux/pinctrl/pinctrl.h>
++#include <linux/pinctrl/pinmux.h>
++#include <linux/pinctrl/consumer.h>
++
++static const struct of_device_id bone_pinmux_helper_of_match[] = {
++	{
++		.compatible = "bone-pinmux-helper",
++	},
++	{ },
++};
++MODULE_DEVICE_TABLE(of, bone_pinmux_helper_of_match);
++
++static int bone_pinmux_helper_probe(struct platform_device *pdev)
++{
++	struct pinctrl *pinctrl;
++
++	pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
++
++	/* don't bother with anything */
++	return PTR_RET(pinctrl);
++}
++
++static int bone_pinmux_helper_remove(struct platform_device *pdev)
++{
++	/* nothing more is needed */
++	return 0;
++}
++
++struct platform_driver bone_pinmux_helper_driver = {
++	.probe		= bone_pinmux_helper_probe,
++	.remove		= bone_pinmux_helper_remove,
++	.driver = {
++		.name		= "bone-pinmux-helper",
++		.owner		= THIS_MODULE,
++		.of_match_table	= bone_pinmux_helper_of_match,
++	},
++};
++
++module_platform_driver(bone_pinmux_helper_driver);
++
++MODULE_AUTHOR("Pantelis Antoniou");
++MODULE_DESCRIPTION("Beaglebone pinmux helper driver");
++MODULE_LICENSE("GPL");
++MODULE_ALIAS("platform:bone-pinmux-helper");
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0002-pinmux-helper-Add-runtime-configuration-capability.patch b/patches/beaglebone/pinmux-helper/0002-pinmux-helper-Add-runtime-configuration-capability.patch
new file mode 100644
index 000000000..37c9a5c56
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0002-pinmux-helper-Add-runtime-configuration-capability.patch
@@ -0,0 +1,175 @@
+From e5dd73cbbb3a2d4e83db4f2c7db9791820f4b399 Mon Sep 17 00:00:00 2001
+From: Pantelis Antoniou <panto@antoniou-consulting.com>
+Date: Wed, 6 Mar 2013 19:37:53 +0200
+Subject: [PATCH 2/7] pinmux-helper: Add runtime configuration capability
+
+Pinctrl already supports multiple states. Just make them visible.
+---
+ drivers/misc/cape/beaglebone/bone-pinmux-helper.c | 143 +++++++++++++++++++++-
+ 1 file changed, 138 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/misc/cape/beaglebone/bone-pinmux-helper.c b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+index ba3922d..84058e1 100644
+--- a/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
++++ b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+@@ -38,19 +38,152 @@ static const struct of_device_id bone_pinmux_helper_of_match[] = {
+ };
+ MODULE_DEVICE_TABLE(of, bone_pinmux_helper_of_match);
+ 
++struct pinmux_helper_data {
++	struct pinctrl *pinctrl;
++	char *selected_state_name;
++};
++
++static ssize_t pinmux_helper_show_state(struct device *dev,
++		struct device_attribute *attr, char *buf)
++{
++	struct platform_device *pdev = to_platform_device(dev);
++	struct pinmux_helper_data *data = platform_get_drvdata(pdev);
++	const char *name;
++	int len;
++
++	name = data->selected_state_name;
++	if (name == NULL || strlen(name) == 0)
++		name = "none";
++	return sprintf(buf, "%s\n", name);
++}
++
++static ssize_t pinmux_helper_store_state(struct device *dev,
++		struct device_attribute *attr, const char *buf, size_t count)
++{
++	struct platform_device *pdev = to_platform_device(dev);
++	struct pinmux_helper_data *data = platform_get_drvdata(pdev);
++	struct pinctrl_state *state;
++	char *state_name;
++	char *s;
++	int err;
++
++	/* duplicate (as a null terminated string) */
++	state_name = devm_kzalloc(dev, count + 1, GFP_KERNEL);
++	if (state_name == NULL)
++		return -ENOMEM;
++	memcpy(state_name, buf, count);
++	state_name[count] = '\0';
++
++	/* and chop off newline */
++	s = strchr(state_name, '\n');
++	if (s != NULL)
++		*s = '\0';
++
++	/* try to select default state at first (if it exists) */
++	state = pinctrl_lookup_state(data->pinctrl, state_name);
++	if (!IS_ERR(state)) {
++		err = pinctrl_select_state(data->pinctrl, state);
++		if (err != 0)
++			dev_err(dev, "Failed to select state %s\n",
++					state_name);
++	} else {
++		dev_err(dev, "Failed to find state %s\n", state_name);
++		err = PTR_RET(state);
++	}
++
++	if (err == 0) {
++		devm_kfree(dev, data->selected_state_name);
++		data->selected_state_name = state_name;
++	}
++
++	return err ? err : count;
++}
++
++static DEVICE_ATTR(state, S_IWUSR | S_IRUGO,
++		   pinmux_helper_show_state, pinmux_helper_store_state);
++
++static struct attribute *pinmux_helper_attributes[] = {
++	&dev_attr_state.attr,
++	NULL
++};
++
++static const struct attribute_group pinmux_helper_attr_group = {
++	.attrs = pinmux_helper_attributes,
++};
++
+ static int bone_pinmux_helper_probe(struct platform_device *pdev)
+ {
+-	struct pinctrl *pinctrl;
++	struct device *dev = &pdev->dev;
++	struct pinmux_helper_data *data;
++	struct pinctrl_state *state;
++	char *state_name;
++	int err;
++
++	data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL);
++	if (data == NULL) {
++		dev_err(dev, "Failed to allocate data\n");
++		err = -ENOMEM;
++		goto err_no_mem;
++	}
++	state_name = devm_kzalloc(dev, strlen(PINCTRL_STATE_DEFAULT) + 1,
++			GFP_KERNEL);
++	if (state_name == NULL) {
++		dev_err(dev, "Failed to allocate state name\n");
++		err = -ENOMEM;
++		goto err_no_mem;
++	}
++	data->selected_state_name = state_name;
++	strcpy(data->selected_state_name, PINCTRL_STATE_DEFAULT);
+ 
+-	pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
++	platform_set_drvdata(pdev, data);
+ 
+-	/* don't bother with anything */
+-	return PTR_RET(pinctrl);
++	data->pinctrl = devm_pinctrl_get(dev);
++	if (IS_ERR(data->pinctrl)) {
++		dev_err(dev, "Failed to get pinctrl\n");
++		err = PTR_RET(data->pinctrl);
++		goto err_no_pinctrl;
++	}
++
++	/* try to select default state at first (if it exists) */
++	state = pinctrl_lookup_state(data->pinctrl,
++			data->selected_state_name);
++	if (!IS_ERR(state)) {
++		err = pinctrl_select_state(data->pinctrl, state);
++		if (err != 0) {
++			dev_err(dev, "Failed to select default state\n");
++			goto err_no_state;
++		}
++	} else {
++		data->selected_state_name = '\0';
++	}
++
++	/* Register sysfs hooks */
++	err = sysfs_create_group(&dev->kobj, &pinmux_helper_attr_group);
++	if (err) {
++		dev_err(dev, "Failed to create sysfs group\n");
++		goto err_no_sysfs;
++	}
++
++	return 0;
++
++err_no_sysfs:
++err_no_state:
++	devm_pinctrl_put(data->pinctrl);
++err_no_pinctrl:
++	devm_kfree(dev, data);
++err_no_mem:
++	return err;
+ }
+ 
+ static int bone_pinmux_helper_remove(struct platform_device *pdev)
+ {
+-	/* nothing more is needed */
++	struct pinmux_helper_data *data = platform_get_drvdata(pdev);
++	struct device *dev = &pdev->dev;
++
++	sysfs_remove_group(&dev->kobj, &pinmux_helper_attr_group);
++	devm_pinctrl_put(data->pinctrl);
++	devm_kfree(dev, data);
++
+ 	return 0;
+ }
+ 
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0003-pinmux-helper-Switch-to-using-kmalloc.patch b/patches/beaglebone/pinmux-helper/0003-pinmux-helper-Switch-to-using-kmalloc.patch
new file mode 100644
index 000000000..87099eca1
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0003-pinmux-helper-Switch-to-using-kmalloc.patch
@@ -0,0 +1,68 @@
+From ce404e01774223d785e2c37ac3fe90c6b36c2012 Mon Sep 17 00:00:00 2001
+From: Pantelis Antoniou <panto@antoniou-consulting.com>
+Date: Thu, 7 Mar 2013 09:54:38 +0200
+Subject: [PATCH 3/7] pinmux-helper: Switch to using kmalloc
+
+devm_kfree warned out... why? no idea.
+---
+ drivers/misc/cape/beaglebone/bone-pinmux-helper.c | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/misc/cape/beaglebone/bone-pinmux-helper.c b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+index 84058e1..5074365 100644
+--- a/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
++++ b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+@@ -26,6 +26,7 @@
+ #include <linux/of.h>
+ #include <linux/of_device.h>
+ #include <linux/of_gpio.h>
++#include <linux/slab.h>
+ #include <linux/pinctrl/pinctrl.h>
+ #include <linux/pinctrl/pinmux.h>
+ #include <linux/pinctrl/consumer.h>
+@@ -49,7 +50,6 @@ static ssize_t pinmux_helper_show_state(struct device *dev,
+ 	struct platform_device *pdev = to_platform_device(dev);
+ 	struct pinmux_helper_data *data = platform_get_drvdata(pdev);
+ 	const char *name;
+-	int len;
+ 
+ 	name = data->selected_state_name;
+ 	if (name == NULL || strlen(name) == 0)
+@@ -68,7 +68,7 @@ static ssize_t pinmux_helper_store_state(struct device *dev,
+ 	int err;
+ 
+ 	/* duplicate (as a null terminated string) */
+-	state_name = devm_kzalloc(dev, count + 1, GFP_KERNEL);
++	state_name = kmalloc(count + 1, GFP_KERNEL);
+ 	if (state_name == NULL)
+ 		return -ENOMEM;
+ 	memcpy(state_name, buf, count);
+@@ -92,7 +92,7 @@ static ssize_t pinmux_helper_store_state(struct device *dev,
+ 	}
+ 
+ 	if (err == 0) {
+-		devm_kfree(dev, data->selected_state_name);
++		kfree(data->selected_state_name);
+ 		data->selected_state_name = state_name;
+ 	}
+ 
+@@ -125,7 +125,7 @@ static int bone_pinmux_helper_probe(struct platform_device *pdev)
+ 		err = -ENOMEM;
+ 		goto err_no_mem;
+ 	}
+-	state_name = devm_kzalloc(dev, strlen(PINCTRL_STATE_DEFAULT) + 1,
++	state_name = kmalloc(strlen(PINCTRL_STATE_DEFAULT) + 1,
+ 			GFP_KERNEL);
+ 	if (state_name == NULL) {
+ 		dev_err(dev, "Failed to allocate state name\n");
+@@ -181,6 +181,7 @@ static int bone_pinmux_helper_remove(struct platform_device *pdev)
+ 	struct device *dev = &pdev->dev;
+ 
+ 	sysfs_remove_group(&dev->kobj, &pinmux_helper_attr_group);
++	kfree(data->selected_state_name);
+ 	devm_pinctrl_put(data->pinctrl);
+ 	devm_kfree(dev, data);
+ 
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0004-gpio-Introduce-GPIO-OF-helper.patch b/patches/beaglebone/pinmux-helper/0004-gpio-Introduce-GPIO-OF-helper.patch
new file mode 100644
index 000000000..45aa18f69
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0004-gpio-Introduce-GPIO-OF-helper.patch
@@ -0,0 +1,474 @@
+From e698e6fd64530890d395042cefb060c20f15c39a Mon Sep 17 00:00:00 2001
+From: Pantelis Antoniou <panto@antoniou-consulting.com>
+Date: Tue, 4 Jun 2013 16:23:59 +0300
+Subject: [PATCH 4/7] gpio: Introduce GPIO OF helper
+
+A gpio OF helper driver that allows configuration to be done via
+DT.
+---
+ drivers/gpio/Kconfig          |  14 ++
+ drivers/gpio/Makefile         |   1 +
+ drivers/gpio/gpio-of-helper.c | 414 ++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 429 insertions(+)
+ create mode 100644 drivers/gpio/gpio-of-helper.c
+
+diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
+index 9de1515..52c48fa 100644
+--- a/drivers/gpio/Kconfig
++++ b/drivers/gpio/Kconfig
+@@ -85,6 +85,20 @@ config GPIO_SYSFS
+ 	  Kernel drivers may also request that a particular GPIO be
+ 	  exported to userspace; this can be useful when debugging.
+ 
++config GPIO_OF_HELPER
++	bool "GPIO OF helper device"
++	depends on OF_GPIO && EXPERIMENTAL
++	help
++	  Say Y here to add an GPIO OF helper driver
++
++	  Allows you specify a GPIO helper based on OF
++	  which allows simple export of GPIO functionality
++	  in user-space.
++
++	  Features include, value set/get, direction control,
++	  interrupt/value change poll support, event counting
++	  and others.
++
+ config GPIO_GENERIC
+ 	tristate
+ 
+diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile
+index 5d024e3..6708880 100644
+--- a/drivers/gpio/Makefile
++++ b/drivers/gpio/Makefile
+@@ -8,6 +8,7 @@ obj-$(CONFIG_GPIOLIB)		+= gpiolib-legacy.o
+ obj-$(CONFIG_OF_GPIO)		+= gpiolib-of.o
+ obj-$(CONFIG_GPIO_SYSFS)	+= gpiolib-sysfs.o
+ obj-$(CONFIG_GPIO_ACPI)		+= gpiolib-acpi.o
++obj-$(CONFIG_GPIO_OF_HELPER)	+= gpio-of-helper.o
+ 
+ # Device drivers. Generally keep list sorted alphabetically
+ obj-$(CONFIG_GPIO_GENERIC)	+= gpio-generic.o
+diff --git a/drivers/gpio/gpio-of-helper.c b/drivers/gpio/gpio-of-helper.c
+new file mode 100644
+index 0000000..16a607f
+--- /dev/null
++++ b/drivers/gpio/gpio-of-helper.c
+@@ -0,0 +1,414 @@
++/*
++ * GPIO OF based helper
++ *
++ * A simple DT based driver to provide access to GPIO functionality
++ * to user-space via sysfs.
++ *
++ * Copyright (C) 2013 Pantelis Antoniou <panto@antoniou-consulting.com>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
++ */
++
++#include <linux/module.h>
++#include <linux/kernel.h>
++#include <linux/string.h>
++#include <linux/timer.h>
++#include <linux/errno.h>
++#include <linux/init.h>
++#include <linux/delay.h>
++#include <linux/bitops.h>
++#include <linux/err.h>
++#include <linux/of.h>
++#include <linux/of_device.h>
++#include <linux/of_gpio.h>
++#include <linux/pinctrl/pinctrl.h>
++#include <linux/pinctrl/pinmux.h>
++#include <linux/pinctrl/consumer.h>
++#include <linux/atomic.h>
++#include <linux/clk.h>
++#include <linux/interrupt.h>
++#include <linux/math64.h>
++#include <linux/atomic.h>
++#include <linux/idr.h>
++
++/* fwd decl. */
++struct gpio_of_helper_info;
++
++enum gpio_type {
++	GPIO_TYPE_INPUT = 0,
++	GPIO_TYPE_OUTPUT = 1,
++};
++
++struct gpio_of_entry {
++	int id;
++	struct gpio_of_helper_info *info;
++	struct device_node *node;
++	enum gpio_type type;
++	int gpio;
++	enum of_gpio_flags gpio_flags;
++	int irq;
++	const char *name;
++	atomic64_t counter;
++	unsigned int count_flags;
++#define COUNT_RISING_EDGE	(1 << 0)
++#define COUNT_FALLING_EDGE	(1 << 1)
++};
++
++struct gpio_of_helper_info {
++	struct platform_device *pdev;
++	struct idr idr;
++};
++
++static const struct of_device_id gpio_of_helper_of_match[] = {
++	{
++		.compatible = "gpio-of-helper",
++	},
++	{ },
++};
++MODULE_DEVICE_TABLE(of, gpio_of_helper_of_match);
++
++static ssize_t gpio_of_helper_show_status(struct device *dev,
++				struct device_attribute *attr, char *buf)
++{
++	struct platform_device *pdev = to_platform_device(dev);
++	struct gpio_of_helper_info *info = platform_get_drvdata(pdev);
++	struct gpio_of_entry *entry;
++	char *p, *e;
++	int id, n;
++
++	p = buf;
++	e = p + PAGE_SIZE;
++	n = 0;
++	idr_for_each_entry(&info->idr, entry, id) {
++		switch (entry->type) {
++		case GPIO_TYPE_INPUT:
++			n = snprintf(p, e - p, "%2d %-24s %3d %-3s %llu\n",
++				entry->id, entry->name, entry->gpio, "IN",
++				(unsigned long long)
++					atomic64_read(&entry->counter));
++			break;
++		case GPIO_TYPE_OUTPUT:
++			n = snprintf(p, e - p, "%2d %-24s %3d %-3s\n",
++				entry->id, entry->name, entry->gpio, "OUT");
++			break;
++		}
++		p += n;
++	}
++
++	return p - buf;
++}
++
++static DEVICE_ATTR(status, S_IRUGO,
++		gpio_of_helper_show_status, NULL);
++
++static irqreturn_t gpio_of_helper_handler(int irq, void *ptr)
++{
++	struct gpio_of_entry *entry = ptr;
++
++	/* caution - low speed interfaces only! */
++	atomic64_inc(&entry->counter);
++
++	return IRQ_HANDLED;
++}
++
++static struct gpio_of_entry *
++gpio_of_entry_create(struct gpio_of_helper_info *info,
++		struct device_node *node)
++{
++	struct platform_device *pdev = info->pdev;
++	struct device *dev = &pdev->dev;
++	struct gpio_of_entry *entry;
++	int err, gpio, irq;
++	unsigned int req_flags, count_flags, irq_flags;
++	enum gpio_type type;
++	enum of_gpio_flags gpio_flags;
++	const char *name;
++
++	/* get the type of the node first */
++	if (of_property_read_bool(node, "input"))
++		type = GPIO_TYPE_INPUT;
++	else if (of_property_read_bool(node, "output"))
++		type = GPIO_TYPE_OUTPUT;
++	else {
++		dev_err(dev, "Not valid gpio node type\n");
++		err = -EINVAL;
++		goto err_bad_node;
++	}
++
++	/* get the name */
++	err = of_property_read_string(node, "gpio-name", &name);
++	if (err != 0) {
++		dev_err(dev, "Failed to get name property\n");
++		goto err_bad_node;
++	}
++
++	err = of_get_named_gpio_flags(node, "gpio", 0, &gpio_flags);
++	if (IS_ERR_VALUE(err)) {
++		dev_err(dev, "Failed to get gpio property of '%s'\n", name);
++		goto err_bad_node;
++	}
++	gpio = err;
++
++	req_flags = 0;
++	count_flags = 0;
++
++	/* set the request flags */
++	switch (type) {
++		case GPIO_TYPE_INPUT:
++			req_flags = GPIOF_DIR_IN | GPIOF_EXPORT;
++			if (of_property_read_bool(node, "count-falling-edge"))
++				count_flags |= COUNT_FALLING_EDGE;
++			if (of_property_read_bool(node, "count-rising-edge"))
++				count_flags |= COUNT_RISING_EDGE;
++			break;
++		case GPIO_TYPE_OUTPUT:
++			req_flags = GPIOF_DIR_OUT | GPIOF_EXPORT;
++			if (of_property_read_bool(node, "init-high"))
++				req_flags |= GPIOF_OUT_INIT_HIGH;
++			else if (of_property_read_bool(node, "init-low"))
++				req_flags |= GPIOF_OUT_INIT_LOW;
++			break;
++	}
++
++	/* request the gpio */
++	err = devm_gpio_request_one(dev, gpio, req_flags, name);
++	if (err != 0) {
++		dev_err(dev, "Failed to request gpio '%s'\n", name);
++		goto err_bad_node;
++	}
++
++	irq = -1;
++	irq_flags = 0;
++
++	/* counter mode requested - need an interrupt */
++	if (count_flags != 0) {
++		irq = gpio_to_irq(gpio);
++		if (IS_ERR_VALUE(irq)) {
++			dev_err(dev, "Failed to request gpio '%s'\n", name);
++			goto err_bad_node;
++		}
++
++		if (count_flags & COUNT_RISING_EDGE)
++			irq_flags |= IRQF_TRIGGER_RISING;
++		if (count_flags & COUNT_FALLING_EDGE)
++			irq_flags |= IRQF_TRIGGER_FALLING;
++	}
++
++	if (!idr_pre_get(&info->idr, GFP_KERNEL)) {
++		dev_err(dev, "Failed on idr_pre_get of '%s'\n", name);
++		err = -ENOMEM;
++		goto err_no_mem;
++	}
++
++	entry = devm_kzalloc(dev, sizeof(*entry), GFP_KERNEL);
++	if (entry == NULL) {
++		dev_err(dev, "Failed to allocate gpio entry of '%s'\n", name);
++		err = -ENOMEM;
++		goto err_no_mem;
++	}
++
++	entry->id = -1;
++	entry->info = info;
++	entry->node = of_node_get(node);	/* get node reference */
++	entry->type = type;
++	entry->gpio = gpio;
++	entry->gpio_flags = gpio_flags;
++	entry->irq = irq;
++	entry->name = name;
++
++	/* interrupt enable is last thing done */
++	if (irq >= 0) {
++		atomic64_set(&entry->counter, 0);
++		entry->count_flags = count_flags;
++		err = devm_request_irq(dev, irq, gpio_of_helper_handler,
++				irq_flags, name, entry);
++		if (err != 0) {
++			dev_err(dev, "Failed to request irq of '%s'\n", name);
++			goto err_no_irq;
++		}
++	}
++
++	/* all done; insert */
++	err = idr_get_new(&info->idr, entry, &entry->id);
++	if (IS_ERR_VALUE(err)) {
++		dev_err(dev, "Failed to idr_get_new  of '%s'\n", name);
++		goto err_fail_idr;
++	}
++
++	dev_info(dev, "Allocated GPIO id=%d\n", entry->id);
++
++	return entry;
++
++err_fail_idr:
++	/* nothing to do */
++err_no_irq:
++	/* release node ref */
++	of_node_put(node);
++	/* nothing else needs to be done, devres handles it */
++err_no_mem:
++err_bad_node:
++	return ERR_PTR(err);
++}
++
++static int gpio_of_entry_destroy(struct gpio_of_entry *entry)
++{
++	struct gpio_of_helper_info *info = entry->info;
++	struct platform_device *pdev = info->pdev;
++	struct device *dev = &pdev->dev;
++
++	dev_info(dev, "Destroying GPIO id=%d\n", entry->id);
++
++	/* remove from the IDR */
++	idr_remove(&info->idr, entry->id);
++
++	/* remove node ref */
++	of_node_put(entry->node);
++
++	/* free gpio */
++	devm_gpio_free(dev, entry->gpio);
++
++	/* gree irq */
++	if (entry->irq >= 0)
++		devm_free_irq(dev, entry->irq, entry);
++
++	/* and free */
++	devm_kfree(dev, entry);
++
++	return 0;
++}
++
++static int gpio_of_helper_probe(struct platform_device *pdev)
++{
++	struct device *dev = &pdev->dev;
++	struct gpio_of_helper_info *info;
++	struct gpio_of_entry *entry;
++	struct device_node *pnode = pdev->dev.of_node;
++	struct device_node *cnode;
++	struct pinctrl *pinctrl;
++	int err;
++
++	/* we only support OF */
++	if (pnode == NULL) {
++		dev_err(&pdev->dev, "No platform of_node!\n");
++		return -ENODEV;
++	}
++
++	pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
++	if (IS_ERR(pinctrl)) {
++		/* special handling for probe defer */
++		if (PTR_ERR(pinctrl) == -EPROBE_DEFER)
++			return -EPROBE_DEFER;
++
++		dev_warn(&pdev->dev,
++			"pins are not configured from the driver\n");
++	}
++
++	info = devm_kzalloc(&pdev->dev, sizeof(*info), GFP_KERNEL);
++	if (info == NULL) {
++		dev_err(&pdev->dev, "Failed to allocate info\n");
++		err = -ENOMEM;
++		goto err_no_mem;
++	}
++	platform_set_drvdata(pdev, info);
++	info->pdev = pdev;
++
++	idr_init(&info->idr);
++
++	err = device_create_file(dev, &dev_attr_status);
++	if (err != 0) {
++		dev_err(dev, "Failed to create status sysfs attribute\n");
++		goto err_no_sysfs;
++	}
++
++	for_each_child_of_node(pnode, cnode) {
++
++		entry = gpio_of_entry_create(info, cnode);
++		if (IS_ERR_OR_NULL(entry)) {
++			dev_err(dev, "Failed to create gpio entry\n");
++			err = PTR_ERR(entry);
++			goto err_fail_entry;
++		}
++	}
++
++	dev_info(&pdev->dev, "ready\n");
++
++	return 0;
++err_fail_entry:
++	device_remove_file(&pdev->dev, &dev_attr_status);
++err_no_sysfs:
++err_no_mem:
++	return err;
++}
++
++static int gpio_of_helper_remove(struct platform_device *pdev)
++{
++	struct gpio_of_helper_info *info = platform_get_drvdata(pdev);
++	struct gpio_of_entry *entry;
++	int id;
++
++	dev_info(&pdev->dev, "removing\n");
++
++	device_remove_file(&pdev->dev, &dev_attr_status);
++
++	id = 0;
++	idr_for_each_entry(&info->idr, entry, id) {
++		/* destroy each and every one */
++		gpio_of_entry_destroy(entry);
++	}
++
++	return 0;
++}
++
++#ifdef CONFIG_PM
++#ifdef CONFIG_PM_RUNTIME
++static int gpio_of_helper_runtime_suspend(struct device *dev)
++{
++	/* place holder */
++	return 0;
++}
++
++static int gpio_of_helper_runtime_resume(struct device *dev)
++{
++	/* place holder */
++	return 0;
++}
++#endif /* CONFIG_PM_RUNTIME */
++
++static struct dev_pm_ops gpio_of_helper_pm_ops = {
++	SET_RUNTIME_PM_OPS(gpio_of_helper_runtime_suspend,
++			   gpio_of_helper_runtime_resume, NULL)
++};
++#define GPIO_OF_HELPER_PM_OPS (&gpio_of_helper_pm_ops)
++#else
++#define GPIO_OF_HELPER_PM_OPS NULL
++#endif /* CONFIG_PM */
++
++struct platform_driver gpio_of_helper_driver = {
++	.probe		= gpio_of_helper_probe,
++	.remove		= gpio_of_helper_remove,
++	.driver = {
++		.name		= "gpio-of-helper",
++		.owner		= THIS_MODULE,
++		.pm		= GPIO_OF_HELPER_PM_OPS,
++		.of_match_table	= gpio_of_helper_of_match,
++	},
++};
++
++module_platform_driver(gpio_of_helper_driver);
++
++MODULE_AUTHOR("Pantelis Antoniou <panto@antoniou-consulting.com>");
++MODULE_DESCRIPTION("GPIO OF Helper driver");
++MODULE_LICENSE("GPL");
++MODULE_ALIAS("platform:gpio-of-helper");
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0005-Add-dir-changeable-property-to-gpio-of-helper.patch b/patches/beaglebone/pinmux-helper/0005-Add-dir-changeable-property-to-gpio-of-helper.patch
new file mode 100644
index 000000000..5afc9f4c6
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0005-Add-dir-changeable-property-to-gpio-of-helper.patch
@@ -0,0 +1,26 @@
+From da2d960b1ef739743aa3e7de95cc1b95f9d84d5c Mon Sep 17 00:00:00 2001
+From: Charles Steinkuehler <charles@steinkuehler.net>
+Date: Sun, 26 Jan 2014 16:17:09 +0100
+Subject: [PATCH 5/7] Add dir-changeable property to gpio-of-helper
+
+Signed-off-by: Charles Steinkuehler <charles@steinkuehler.net>
+---
+ drivers/gpio/gpio-of-helper.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/drivers/gpio/gpio-of-helper.c b/drivers/gpio/gpio-of-helper.c
+index 16a607f..1c289b2 100644
+--- a/drivers/gpio/gpio-of-helper.c
++++ b/drivers/gpio/gpio-of-helper.c
+@@ -181,6 +181,8 @@ gpio_of_entry_create(struct gpio_of_helper_info *info,
+ 				req_flags |= GPIOF_OUT_INIT_LOW;
+ 			break;
+ 	}
++	if (of_property_read_bool(node, "dir-changeable"))
++		req_flags |= GPIOF_EXPORT_CHANGEABLE;
+ 
+ 	/* request the gpio */
+ 	err = devm_gpio_request_one(dev, gpio, req_flags, name);
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0006-am33xx.dtsi-add-ocp-label.patch b/patches/beaglebone/pinmux-helper/0006-am33xx.dtsi-add-ocp-label.patch
new file mode 100644
index 000000000..0715b7353
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0006-am33xx.dtsi-add-ocp-label.patch
@@ -0,0 +1,26 @@
+From f9c8cddf38416d7e68f1a07c8a42ac463036b35d Mon Sep 17 00:00:00 2001
+From: Jason Kridner <jdk@ti.com>
+Date: Thu, 4 Sep 2014 18:45:39 +0000
+Subject: [PATCH 6/7] am33xx.dtsi: add ocp label
+
+Signed-off-by: Jason Kridner <jdk@ti.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 63eb048..2a7a09d 100644
+--- a/arch/arm/boot/dts/am33xx.dtsi
++++ b/arch/arm/boot/dts/am33xx.dtsi
+@@ -87,7 +87,7 @@
+ 	 * for the moment, just use a fake OCP bus entry to represent
+ 	 * the whole bus hierarchy.
+ 	 */
+-	ocp {
++	ocp: ocp {
+ 		compatible = "simple-bus";
+ 		#address-cells = <1>;
+ 		#size-cells = <1>;
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0007-beaglebone-added-expansion-header-to-dtb.patch b/patches/beaglebone/pinmux-helper/0007-beaglebone-added-expansion-header-to-dtb.patch
new file mode 100644
index 000000000..7193b01e0
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0007-beaglebone-added-expansion-header-to-dtb.patch
@@ -0,0 +1,1351 @@
+From b14dc8130c10db6a94abab77334bbe65f9bba92b Mon Sep 17 00:00:00 2001
+From: Jason Kridner <jdk@ti.com>
+Date: Thu, 4 Sep 2014 18:53:16 +0000
+Subject: [PATCH 7/7] beaglebone: added expansion header to dtb
+
+This adds gpio and pinmux helpers to the majority of available expansion header pins
+based on the cape-universal work from Charles Steinkuehler making them userspace
+configurable. This is not a substitute for Capemgr as it doesn't perform the
+configuration based on cape detection, nor does it enable dynamic configuration of
+all types of peripherals that could be on a cape. It does, however, enable many
+developers to rapidly experiment with a lesser degree of complexity.
+
+Derived from:
+https://github.com/cdsteinkuehler/beaglebone-universal-io/blob/52461b52ef3203e648399c16c7e160c848a04b5c$
+
+Signed-off-by: Jason Kridner <jdk@ti.com>
+Cc: Charles Steinkuehler <charles@steinkuehler.net>
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 1319 ++++++++++++++++++++++
+ 1 file changed, 1319 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+new file mode 100644
+index 0000000..8bddcd2
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+@@ -0,0 +1,1319 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&am33xx_pinmux {
++	/************************/
++	/* P8 Header            */
++	/************************/
++
++	/* P8_01                GND     */
++	/* P8_02                GND     */
++	/* P8_03 (ZCZ ball R9 ) emmc    */
++	/* P8_04 (ZCZ ball T9 ) emmc    */
++	/* P8_05 (ZCZ ball R8 ) emmc    */
++	/* P8_06 (ZCZ ball T8 ) emmc    */
++
++	/* P8_07 (ZCZ ball R7 ) */
++	P8_07_default_pin: pinmux_P8_07_default_pin {
++		pinctrl-single,pins = <0x090  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_07_gpio_pin: pinmux_P8_07_gpio_pin {
++		pinctrl-single,pins = <0x090  0x2F>; };     /* Mode 7, RxActive */
++	P8_07_gpio_pu_pin: pinmux_P8_07_gpio_pu_pin {
++		pinctrl-single,pins = <0x090  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_07_gpio_pd_pin: pinmux_P8_07_gpio_pd_pin {
++		pinctrl-single,pins = <0x090  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_07_timer_pin: pinmux_P8_07_timer_pin {
++		pinctrl-single,pins = <0x090  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++
++	/* P8_08 (ZCZ ball T7 ) */
++	P8_08_default_pin: pinmux_P8_08_default_pin {
++		pinctrl-single,pins = <0x094  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_08_gpio_pin: pinmux_P8_08_gpio_pin {
++		pinctrl-single,pins = <0x094  0x2F>; };     /* Mode 7, RxActive */
++	P8_08_gpio_pu_pin: pinmux_P8_08_gpio_pu_pin {
++		pinctrl-single,pins = <0x094  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_08_gpio_pd_pin: pinmux_P8_08_gpio_pd_pin {
++		pinctrl-single,pins = <0x094  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_08_timer_pin: pinmux_P8_08_timer_pin {
++		pinctrl-single,pins = <0x094  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++
++	/* P8_09 (ZCZ ball T6 ) */
++	P8_09_default_pin: pinmux_P8_09_default_pin {
++		pinctrl-single,pins = <0x09c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_09_gpio_pin: pinmux_P8_09_gpio_pin {
++		pinctrl-single,pins = <0x09c  0x2F>; };     /* Mode 7, RxActive */
++	P8_09_gpio_pu_pin: pinmux_P8_09_gpio_pu_pin {
++		pinctrl-single,pins = <0x09c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_09_gpio_pd_pin: pinmux_P8_09_gpio_pd_pin {
++		pinctrl-single,pins = <0x09c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_09_timer_pin: pinmux_P8_09_timer_pin {
++		pinctrl-single,pins = <0x09c  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++
++	/* P8_10 (ZCZ ball U6 ) */
++	P8_10_default_pin: pinmux_P8_10_default_pin {
++		pinctrl-single,pins = <0x098  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_10_gpio_pin: pinmux_P8_10_gpio_pin {
++		pinctrl-single,pins = <0x098  0x2F>; };     /* Mode 7, RxActive */
++	P8_10_gpio_pu_pin: pinmux_P8_10_gpio_pu_pin {
++		pinctrl-single,pins = <0x098  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_10_gpio_pd_pin: pinmux_P8_10_gpio_pd_pin {
++		pinctrl-single,pins = <0x098  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_10_timer_pin: pinmux_P8_10_timer_pin {
++		pinctrl-single,pins = <0x098  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++
++	/* P8_11 (ZCZ ball R12) */
++	P8_11_default_pin: pinmux_P8_11_default_pin {
++		pinctrl-single,pins = <0x034  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_11_gpio_pin: pinmux_P8_11_gpio_pin {
++		pinctrl-single,pins = <0x034  0x2F>; };     /* Mode 7, RxActive */
++	P8_11_gpio_pu_pin: pinmux_P8_11_gpio_pu_pin {
++		pinctrl-single,pins = <0x034  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_11_gpio_pd_pin: pinmux_P8_11_gpio_pd_pin {
++		pinctrl-single,pins = <0x034  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_11_pruout_pin: pinmux_P8_11_pruout_pin {
++		pinctrl-single,pins = <0x034  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++	P8_11_qep_pin: pinmux_P8_11_qep_pin {
++		pinctrl-single,pins = <0x034  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_12 (ZCZ ball T12) */
++	P8_12_default_pin: pinmux_P8_12_default_pin {
++		pinctrl-single,pins = <0x030  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_12_gpio_pin: pinmux_P8_12_gpio_pin {
++		pinctrl-single,pins = <0x030  0x2F>; };     /* Mode 7, RxActive */
++	P8_12_gpio_pu_pin: pinmux_P8_12_gpio_pu_pin {
++		pinctrl-single,pins = <0x030  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_12_gpio_pd_pin: pinmux_P8_12_gpio_pd_pin {
++		pinctrl-single,pins = <0x030  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_12_pruout_pin: pinmux_P8_12_pruout_pin {
++		pinctrl-single,pins = <0x030  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++	P8_12_qep_pin: pinmux_P8_12_qep_pin {
++		pinctrl-single,pins = <0x030  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_13 (ZCZ ball T10) */
++	P8_13_default_pin: pinmux_P8_13_default_pin {
++		pinctrl-single,pins = <0x024  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_13_gpio_pin: pinmux_P8_13_gpio_pin {
++		pinctrl-single,pins = <0x024  0x2F>; };     /* Mode 7, RxActive */
++	P8_13_gpio_pu_pin: pinmux_P8_13_gpio_pu_pin {
++		pinctrl-single,pins = <0x024  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_13_gpio_pd_pin: pinmux_P8_13_gpio_pd_pin {
++		pinctrl-single,pins = <0x024  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_13_pwm_pin: pinmux_P8_13_pwm_pin {
++		pinctrl-single,pins = <0x024  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_14 (ZCZ ball T11) */
++	P8_14_default_pin: pinmux_P8_14_default_pin {
++		pinctrl-single,pins = <0x028  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_14_gpio_pin: pinmux_P8_14_gpio_pin {
++		pinctrl-single,pins = <0x028  0x2F>; };     /* Mode 7, RxActive */
++	P8_14_gpio_pu_pin: pinmux_P8_14_gpio_pu_pin {
++		pinctrl-single,pins = <0x028  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_14_gpio_pd_pin: pinmux_P8_14_gpio_pd_pin {
++		pinctrl-single,pins = <0x028  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_14_pwm_pin: pinmux_P8_14_pwm_pin {
++		pinctrl-single,pins = <0x028  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_15 (ZCZ ball U13) */
++	P8_15_default_pin: pinmux_P8_15_default_pin {
++		pinctrl-single,pins = <0x03c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_15_gpio_pin: pinmux_P8_15_gpio_pin {
++		pinctrl-single,pins = <0x03c  0x2F>; };     /* Mode 7, RxActive */
++	P8_15_gpio_pu_pin: pinmux_P8_15_gpio_pu_pin {
++		pinctrl-single,pins = <0x03c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_15_gpio_pd_pin: pinmux_P8_15_gpio_pd_pin {
++		pinctrl-single,pins = <0x03c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_15_pruin_pin: pinmux_P8_15_pruin_pin {
++		pinctrl-single,pins = <0x03c  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++	P8_15_qep_pin: pinmux_P8_15_qep_pin {
++		pinctrl-single,pins = <0x03c  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_16 (ZCZ ball V13) */
++	P8_16_default_pin: pinmux_P8_16_default_pin {
++		pinctrl-single,pins = <0x038  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_16_gpio_pin: pinmux_P8_16_gpio_pin {
++		pinctrl-single,pins = <0x038  0x2F>; };     /* Mode 7, RxActive */
++	P8_16_gpio_pu_pin: pinmux_P8_16_gpio_pu_pin {
++		pinctrl-single,pins = <0x038  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_16_gpio_pd_pin: pinmux_P8_16_gpio_pd_pin {
++		pinctrl-single,pins = <0x038  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_16_pruin_pin: pinmux_P8_16_pruin_pin {
++		pinctrl-single,pins = <0x038  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++	P8_16_qep_pin: pinmux_P8_16_qep_pin {
++		pinctrl-single,pins = <0x038  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_17 (ZCZ ball U12) */
++	P8_17_default_pin: pinmux_P8_17_default_pin {
++		pinctrl-single,pins = <0x02c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_17_gpio_pin: pinmux_P8_17_gpio_pin {
++		pinctrl-single,pins = <0x02c  0x2F>; };     /* Mode 7, RxActive */
++	P8_17_gpio_pu_pin: pinmux_P8_17_gpio_pu_pin {
++		pinctrl-single,pins = <0x02c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_17_gpio_pd_pin: pinmux_P8_17_gpio_pd_pin {
++		pinctrl-single,pins = <0x02c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_17_pwm_pin: pinmux_P8_17_pwm_pin {
++		pinctrl-single,pins = <0x02c  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_18 (ZCZ ball V12) */
++	P8_18_default_pin: pinmux_P8_18_default_pin {
++		pinctrl-single,pins = <0x08c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_18_gpio_pin: pinmux_P8_18_gpio_pin {
++		pinctrl-single,pins = <0x08c  0x2F>; };     /* Mode 7, RxActive */
++	P8_18_gpio_pu_pin: pinmux_P8_18_gpio_pu_pin {
++		pinctrl-single,pins = <0x08c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_18_gpio_pd_pin: pinmux_P8_18_gpio_pd_pin {
++		pinctrl-single,pins = <0x08c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++
++	/* P8_19 (ZCZ ball U10) */
++	P8_19_default_pin: pinmux_P8_19_default_pin {
++		pinctrl-single,pins = <0x020  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_19_gpio_pin: pinmux_P8_19_gpio_pin {
++		pinctrl-single,pins = <0x020  0x2F>; };     /* Mode 7, RxActive */
++	P8_19_gpio_pu_pin: pinmux_P8_19_gpio_pu_pin {
++		pinctrl-single,pins = <0x020  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_19_gpio_pd_pin: pinmux_P8_19_gpio_pd_pin {
++		pinctrl-single,pins = <0x020  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_19_pwm_pin: pinmux_P8_19_pwm_pin {
++		pinctrl-single,pins = <0x020  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P8_20 (ZCZ ball V9 ) emmc    */
++	/* P8_21 (ZCZ ball U9 ) emmc    */
++	/* P8_22 (ZCZ ball V8 ) emmc    */
++	/* P8_23 (ZCZ ball U8 ) emmc    */
++	/* P8_24 (ZCZ ball V7 ) emmc    */
++	/* P8_25 (ZCZ ball U7 ) emmc    */
++
++	/* P8_26 (ZCZ ball V6 ) */
++	P8_26_default_pin: pinmux_P8_26_default_pin {
++		pinctrl-single,pins = <0x07c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_26_gpio_pin: pinmux_P8_26_gpio_pin {
++		pinctrl-single,pins = <0x07c  0x2F>; };     /* Mode 7, RxActive */
++	P8_26_gpio_pu_pin: pinmux_P8_26_gpio_pu_pin {
++		pinctrl-single,pins = <0x07c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_26_gpio_pd_pin: pinmux_P8_26_gpio_pd_pin {
++		pinctrl-single,pins = <0x07c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++
++	/* P8_27 (ZCZ ball U5 ) hdmi    */
++	/* P8_28 (ZCZ ball V5 ) hdmi    */
++	/* P8_29 (ZCZ ball R5 ) hdmi    */
++	/* P8_30 (ZCZ ball R6 ) hdmi    */
++	/* P8_31 (ZCZ ball V4 ) hdmi    */
++	/* P8_32 (ZCZ ball T5 ) hdmi    */
++	/* P8_33 (ZCZ ball V3 ) hdmi    */
++	/* P8_34 (ZCZ ball U4 ) hdmi    */
++	/* P8_35 (ZCZ ball V2 ) hdmi    */
++	/* P8_36 (ZCZ ball U3 ) hdmi    */
++	/* P8_37 (ZCZ ball U1 ) hdmi    */
++	/* P8_38 (ZCZ ball U2 ) hdmi    */
++	/* P8_39 (ZCZ ball T3 ) hdmi    */
++	/* P8_40 (ZCZ ball T4 ) hdmi    */
++	/* P8_41 (ZCZ ball T1 ) hdmi    */
++	/* P8_42 (ZCZ ball T2 ) hdmi    */
++	/* P8_43 (ZCZ ball R3 ) hdmi    */
++	/* P8_44 (ZCZ ball R4 ) hdmi    */
++	/* P8_45 (ZCZ ball R1 ) hdmi    */
++	/* P8_46 (ZCZ ball R2 ) hdmi    */
++
++	/************************/
++	/* P9 Header            */
++	/************************/
++
++	/* P9_01                GND     */
++	/* P9_02                GND     */
++	/* P9_03                3.3V    */
++	/* P9_04                3.3V    */
++	/* P9_05                VDD_5V  */
++	/* P9_06                VDD_5V  */
++	/* P9_07                SYS_5V  */
++	/* P9_08                SYS_5V  */
++	/* P9_09                PWR_BUT */
++	/* P9_10 (ZCZ ball A10) RESETn  */
++
++	/* P9_11 (ZCZ ball T17) */
++	P9_11_default_pin: pinmux_P9_11_default_pin {
++		pinctrl-single,pins = <0x070  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_11_gpio_pin: pinmux_P9_11_gpio_pin {
++		pinctrl-single,pins = <0x070  0x2F>; };     /* Mode 7, RxActive */
++	P9_11_gpio_pu_pin: pinmux_P9_11_gpio_pu_pin {
++		pinctrl-single,pins = <0x070  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_11_gpio_pd_pin: pinmux_P9_11_gpio_pd_pin {
++		pinctrl-single,pins = <0x070  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_11_uart_pin: pinmux_P9_11_uart_pin {
++		pinctrl-single,pins = <0x070  0x36>; };     /* Mode 6, Pull-Up, RxActive */
++
++	/* P9_12 (ZCZ ball U18) */
++	P9_12_default_pin: pinmux_P9_12_default_pin {
++		pinctrl-single,pins = <0x078  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_12_gpio_pin: pinmux_P9_12_gpio_pin {
++		pinctrl-single,pins = <0x078  0x2F>; };     /* Mode 7, RxActive */
++	P9_12_gpio_pu_pin: pinmux_P9_12_gpio_pu_pin {
++		pinctrl-single,pins = <0x078  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_12_gpio_pd_pin: pinmux_P9_12_gpio_pd_pin {
++		pinctrl-single,pins = <0x078  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++
++	/* P9_13 (ZCZ ball U17) */
++	P9_13_default_pin: pinmux_P9_13_default_pin {
++		pinctrl-single,pins = <0x074  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_13_gpio_pin: pinmux_P9_13_gpio_pin {
++		pinctrl-single,pins = <0x074  0x2F>; };     /* Mode 7, RxActive */
++	P9_13_gpio_pu_pin: pinmux_P9_13_gpio_pu_pin {
++		pinctrl-single,pins = <0x074  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_13_gpio_pd_pin: pinmux_P9_13_gpio_pd_pin {
++		pinctrl-single,pins = <0x074  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_13_uart_pin: pinmux_P9_13_uart_pin {
++		pinctrl-single,pins = <0x074  0x36>; };     /* Mode 6, Pull-Up, RxActive */
++
++	/* P9_14 (ZCZ ball U14) */
++	P9_14_default_pin: pinmux_P9_14_default_pin {
++		pinctrl-single,pins = <0x048  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_14_gpio_pin: pinmux_P9_14_gpio_pin {
++		pinctrl-single,pins = <0x048  0x2F>; };     /* Mode 7, RxActive */
++	P9_14_gpio_pu_pin: pinmux_P9_14_gpio_pu_pin {
++		pinctrl-single,pins = <0x048  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_14_gpio_pd_pin: pinmux_P9_14_gpio_pd_pin {
++		pinctrl-single,pins = <0x048  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_14_pwm_pin: pinmux_P9_14_pwm_pin {
++		pinctrl-single,pins = <0x048  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_15 (ZCZ ball R13) */
++	P9_15_default_pin: pinmux_P9_15_default_pin {
++		pinctrl-single,pins = <0x040  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_15_gpio_pin: pinmux_P9_15_gpio_pin {
++		pinctrl-single,pins = <0x040  0x2F>; };     /* Mode 7, RxActive */
++	P9_15_gpio_pu_pin: pinmux_P9_15_gpio_pu_pin {
++		pinctrl-single,pins = <0x040  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_15_gpio_pd_pin: pinmux_P9_15_gpio_pd_pin {
++		pinctrl-single,pins = <0x040  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_15_pwm_pin: pinmux_P9_15_pwm_pin {
++		pinctrl-single,pins = <0x040  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_16 (ZCZ ball T14) */
++	P9_16_default_pin: pinmux_P9_16_default_pin {
++		pinctrl-single,pins = <0x04c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_16_gpio_pin: pinmux_P9_16_gpio_pin {
++		pinctrl-single,pins = <0x04c  0x2F>; };     /* Mode 7, RxActive */
++	P9_16_gpio_pu_pin: pinmux_P9_16_gpio_pu_pin {
++		pinctrl-single,pins = <0x04c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_16_gpio_pd_pin: pinmux_P9_16_gpio_pd_pin {
++		pinctrl-single,pins = <0x04c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_16_pwm_pin: pinmux_P9_16_pwm_pin {
++		pinctrl-single,pins = <0x04c  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_17 (ZCZ ball A16) */
++	P9_17_default_pin: pinmux_P9_17_default_pin {
++		pinctrl-single,pins = <0x15c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_17_gpio_pin: pinmux_P9_17_gpio_pin {
++		pinctrl-single,pins = <0x15c  0x2F>; };     /* Mode 7, RxActive */
++	P9_17_gpio_pu_pin: pinmux_P9_17_gpio_pu_pin {
++		pinctrl-single,pins = <0x15c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_17_gpio_pd_pin: pinmux_P9_17_gpio_pd_pin {
++		pinctrl-single,pins = <0x15c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_17_spi_pin: pinmux_P9_17_spi_pin {
++		pinctrl-single,pins = <0x15c  0x30>; };     /* Mode 0, Pull-Up, RxActive */
++	P9_17_i2c_pin: pinmux_P9_17_i2c_pin {
++		pinctrl-single,pins = <0x15c  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++	P9_17_pwm_pin: pinmux_P9_17_pwm_pin {
++		pinctrl-single,pins = <0x15c  0x33>; };     /* Mode 3, Pull-Up, RxActive */
++
++	/* P9_18 (ZCZ ball B16) */
++	P9_18_default_pin: pinmux_P9_18_default_pin {
++		pinctrl-single,pins = <0x158  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_18_gpio_pin: pinmux_P9_18_gpio_pin {
++		pinctrl-single,pins = <0x158  0x2F>; };     /* Mode 7, RxActive */
++	P9_18_gpio_pu_pin: pinmux_P9_18_gpio_pu_pin {
++		pinctrl-single,pins = <0x158  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_18_gpio_pd_pin: pinmux_P9_18_gpio_pd_pin {
++		pinctrl-single,pins = <0x158  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_18_spi_pin: pinmux_P9_18_spi_pin {
++		pinctrl-single,pins = <0x158  0x30>; };     /* Mode 0, Pull-Up, RxActive */
++	P9_18_i2c_pin: pinmux_P9_18_i2c_pin {
++		pinctrl-single,pins = <0x158  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++	P9_18_pwm_pin: pinmux_P9_18_pwm_pin {
++		pinctrl-single,pins = <0x158  0x33>; };     /* Mode 3, Pull-Up, RxActive */
++
++	// Leave the cape I2C EEPROM bus alone
++	/* P9_19 (ZCZ ball D17) I2C     */
++	/* P9_20 (ZCZ ball D18) I2C     */
++
++	/* P9_21 (ZCZ ball B17) */
++	P9_21_default_pin: pinmux_P9_21_default_pin {
++		pinctrl-single,pins = <0x154  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_21_gpio_pin: pinmux_P9_21_gpio_pin {
++		pinctrl-single,pins = <0x154  0x2F>; };     /* Mode 7, RxActive */
++	P9_21_gpio_pu_pin: pinmux_P9_21_gpio_pu_pin {
++		pinctrl-single,pins = <0x154  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_21_gpio_pd_pin: pinmux_P9_21_gpio_pd_pin {
++		pinctrl-single,pins = <0x154  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_21_spi_pin: pinmux_P9_21_spi_pin {
++		pinctrl-single,pins = <0x154  0x30>; };     /* Mode 0, Pull-Up, RxActive */
++	P9_21_uart_pin: pinmux_P9_21_uart_pin {
++		pinctrl-single,pins = <0x154  0x31>; };     /* Mode 1, Pull-Up, RxActive */
++	P9_21_i2c_pin: pinmux_P9_21_i2c_pin {
++		pinctrl-single,pins = <0x154  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++	P9_21_pwm_pin: pinmux_P9_21_pwm_pin {
++		pinctrl-single,pins = <0x154  0x33>; };     /* Mode 3, Pull-Up, RxActive */
++
++	/* P9_22 (ZCZ ball A17) */
++	P9_22_default_pin: pinmux_P9_22_default_pin {
++		pinctrl-single,pins = <0x150  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_22_gpio_pin: pinmux_P9_22_gpio_pin {
++		pinctrl-single,pins = <0x150  0x2F>; };     /* Mode 7, RxActive */
++	P9_22_gpio_pu_pin: pinmux_P9_22_gpio_pu_pin {
++		pinctrl-single,pins = <0x150  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_22_gpio_pd_pin: pinmux_P9_22_gpio_pd_pin {
++		pinctrl-single,pins = <0x150  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_22_spi_pin: pinmux_P9_22_spi_pin {
++		pinctrl-single,pins = <0x150  0x30>; };     /* Mode 0, Pull-Up, RxActive */
++	P9_22_uart_pin: pinmux_P9_22_uart_pin {
++		pinctrl-single,pins = <0x150  0x31>; };     /* Mode 1, Pull-Up, RxActive */
++	P9_22_i2c_pin: pinmux_P9_22_i2c_pin {
++		pinctrl-single,pins = <0x150  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++	P9_22_pwm_pin: pinmux_P9_22_pwm_pin {
++		pinctrl-single,pins = <0x150  0x33>; };     /* Mode 3, Pull-Up, RxActive */
++
++	/* P9_23 (ZCZ ball V14) */
++	P9_23_default_pin: pinmux_P9_23_default_pin {
++		pinctrl-single,pins = <0x044  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_23_gpio_pin: pinmux_P9_23_gpio_pin {
++		pinctrl-single,pins = <0x044  0x2F>; };     /* Mode 7, RxActive */
++	P9_23_gpio_pu_pin: pinmux_P9_23_gpio_pu_pin {
++		pinctrl-single,pins = <0x044  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_23_gpio_pd_pin: pinmux_P9_23_gpio_pd_pin {
++		pinctrl-single,pins = <0x044  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_23_pwm_pin: pinmux_P9_23_pwm_pin {
++		pinctrl-single,pins = <0x044  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_24 (ZCZ ball D15) */
++	P9_24_default_pin: pinmux_P9_24_default_pin {
++		pinctrl-single,pins = <0x184  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_24_gpio_pin: pinmux_P9_24_gpio_pin {
++		pinctrl-single,pins = <0x184  0x2F>; };     /* Mode 7, RxActive */
++	P9_24_gpio_pu_pin: pinmux_P9_24_gpio_pu_pin {
++		pinctrl-single,pins = <0x184  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_24_gpio_pd_pin: pinmux_P9_24_gpio_pd_pin {
++		pinctrl-single,pins = <0x184  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_24_uart_pin: pinmux_P9_24_uart_pin {
++		pinctrl-single,pins = <0x184  0x30>; };     /* Mode 0, Pull-Up, RxActive */
++	P9_24_can_pin: pinmux_P9_24_can_pin {
++		pinctrl-single,pins = <0x184  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++	P9_24_i2c_pin: pinmux_P9_24_i2c_pin {
++		pinctrl-single,pins = <0x184  0x33>; };     /* Mode 3, Pull-Up, RxActive */
++	P9_24_pruin_pin: pinmux_P9_24_pruin_pin {
++		pinctrl-single,pins = <0x184  0x36>; };     /* Mode 6, Pull-Up, RxActive */
++
++	/* P9_25 (ZCZ ball A14) Audio   */
++	P9_25_default_pin: pinmux_P9_25_default_pin {
++		pinctrl-single,pins = <0x1ac  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_25_gpio_pin: pinmux_P9_25_gpio_pin {
++		pinctrl-single,pins = <0x1ac  0x2F>; };     /* Mode 7, RxActive */
++	P9_25_gpio_pu_pin: pinmux_P9_25_gpio_pu_pin {
++		pinctrl-single,pins = <0x1ac  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_25_gpio_pd_pin: pinmux_P9_25_gpio_pd_pin {
++		pinctrl-single,pins = <0x1ac  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_25_qep_pin: pinmux_P9_25_qep_pin {
++		pinctrl-single,pins = <0x1ac  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_25_pruout_pin: pinmux_P9_25_pruout_pin {
++		pinctrl-single,pins = <0x1ac  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_25_pruin_pin: pinmux_P9_25_pruin_pin {
++		pinctrl-single,pins = <0x1ac  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_26 (ZCZ ball D16) */
++	P9_26_default_pin: pinmux_P9_26_default_pin {
++		pinctrl-single,pins = <0x180  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_26_gpio_pin: pinmux_P9_26_gpio_pin {
++		pinctrl-single,pins = <0x180  0x2F>; };     /* Mode 7, RxActive */
++	P9_26_gpio_pu_pin: pinmux_P9_26_gpio_pu_pin {
++		pinctrl-single,pins = <0x180  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_26_gpio_pd_pin: pinmux_P9_26_gpio_pd_pin {
++		pinctrl-single,pins = <0x180  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_26_uart_pin: pinmux_P9_26_uart_pin {
++		pinctrl-single,pins = <0x180  0x30>; };     /* Mode 0, Pull-Up, RxActive */
++	P9_26_can_pin: pinmux_P9_26_can_pin {
++		pinctrl-single,pins = <0x180  0x32>; };     /* Mode 2, Pull-Up, RxActive */
++	P9_26_i2c_pin: pinmux_P9_26_i2c_pin {
++		pinctrl-single,pins = <0x180  0x33>; };     /* Mode 3, Pull-Up, RxActive */
++	P9_26_pruin_pin: pinmux_P9_26_pruin_pin {
++		pinctrl-single,pins = <0x180  0x36>; };     /* Mode 6, Pull-Up, RxActive */
++
++	/* P9_27 (ZCZ ball C13) */
++	P9_27_default_pin: pinmux_P9_27_default_pin {
++		pinctrl-single,pins = <0x1a4  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_27_gpio_pin: pinmux_P9_27_gpio_pin {
++		pinctrl-single,pins = <0x1a4  0x2F>; };     /* Mode 7, RxActive */
++	P9_27_gpio_pu_pin: pinmux_P9_27_gpio_pu_pin {
++		pinctrl-single,pins = <0x1a4  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_27_gpio_pd_pin: pinmux_P9_27_gpio_pd_pin {
++		pinctrl-single,pins = <0x1a4  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_27_qep_pin: pinmux_P9_27_qep_pin {
++		pinctrl-single,pins = <0x1a4  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_27_pruout_pin: pinmux_P9_27_pruout_pin {
++		pinctrl-single,pins = <0x1a4  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_27_pruin_pin: pinmux_P9_27_pruin_pin {
++		pinctrl-single,pins = <0x1a4  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_28 (ZCZ ball C12) Audio   */
++	P9_28_default_pin: pinmux_P9_28_default_pin {
++		pinctrl-single,pins = <0x19c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_28_gpio_pin: pinmux_P9_28_gpio_pin {
++		pinctrl-single,pins = <0x19c  0x2F>; };     /* Mode 7, RxActive */
++	P9_28_gpio_pu_pin: pinmux_P9_28_gpio_pu_pin {
++		pinctrl-single,pins = <0x19c  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_28_gpio_pd_pin: pinmux_P9_28_gpio_pd_pin {
++		pinctrl-single,pins = <0x19c  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_28_pwm_pin: pinmux_P9_28_pwm_pin {
++		pinctrl-single,pins = <0x19c  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_28_spi_pin: pinmux_P9_28_spi_pin {
++		pinctrl-single,pins = <0x19c  0x23>; };     /* Mode 3, Pull-Down, RxActive */
++	P9_28_pwm2_pin: pinmux_P9_28_pwm2_pin {
++		pinctrl-single,pins = <0x19c  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++	P9_28_pruout_pin: pinmux_P9_28_pruout_pin {
++		pinctrl-single,pins = <0x19c  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_28_pruin_pin: pinmux_P9_28_pruin_pin {
++		pinctrl-single,pins = <0x19c  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_29 (ZCZ ball B13) Audio   */
++	P9_29_default_pin: pinmux_P9_29_default_pin {
++		pinctrl-single,pins = <0x194  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_29_gpio_pin: pinmux_P9_29_gpio_pin {
++		pinctrl-single,pins = <0x194  0x2F>; };     /* Mode 7, RxActive */
++	P9_29_gpio_pu_pin: pinmux_P9_29_gpio_pu_pin {
++		pinctrl-single,pins = <0x194  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_29_gpio_pd_pin: pinmux_P9_29_gpio_pd_pin {
++		pinctrl-single,pins = <0x194  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_29_pwm_pin: pinmux_P9_29_pwm_pin {
++		pinctrl-single,pins = <0x194  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_29_spi_pin: pinmux_P9_29_spi_pin {
++		pinctrl-single,pins = <0x194  0x23>; };     /* Mode 3, Pull-Down, RxActive */
++	P9_29_pruout_pin: pinmux_P9_29_pruout_pin {
++		pinctrl-single,pins = <0x194  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_29_pruin_pin: pinmux_P9_29_pruin_pin {
++		pinctrl-single,pins = <0x194  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_30 (ZCZ ball D12) */
++	P9_30_default_pin: pinmux_P9_30_default_pin {
++		pinctrl-single,pins = <0x198  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_30_gpio_pin: pinmux_P9_30_gpio_pin {
++		pinctrl-single,pins = <0x198  0x2F>; };     /* Mode 7, RxActive */
++	P9_30_gpio_pu_pin: pinmux_P9_30_gpio_pu_pin {
++		pinctrl-single,pins = <0x198  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_30_gpio_pd_pin: pinmux_P9_30_gpio_pd_pin {
++		pinctrl-single,pins = <0x198  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_30_pwm_pin: pinmux_P9_30_pwm_pin {
++		pinctrl-single,pins = <0x198  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_30_spi_pin: pinmux_P9_30_spi_pin {
++		pinctrl-single,pins = <0x198  0x23>; };     /* Mode 3, Pull-Down, RxActive */
++	P9_30_pruout_pin: pinmux_P9_30_pruout_pin {
++		pinctrl-single,pins = <0x198  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_30_pruin_pin: pinmux_P9_30_pruin_pin {
++		pinctrl-single,pins = <0x198  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_31 (ZCZ ball A13) Audio   */
++	P9_31_default_pin: pinmux_P9_31_default_pin {
++		pinctrl-single,pins = <0x190  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_31_gpio_pin: pinmux_P9_31_gpio_pin {
++		pinctrl-single,pins = <0x190  0x2F>; };     /* Mode 7, RxActive */
++	P9_31_gpio_pu_pin: pinmux_P9_31_gpio_pu_pin {
++		pinctrl-single,pins = <0x190  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_31_gpio_pd_pin: pinmux_P9_31_gpio_pd_pin {
++		pinctrl-single,pins = <0x190  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_31_pwm_pin: pinmux_P9_31_pwm_pin {
++		pinctrl-single,pins = <0x190  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_31_spi_pin: pinmux_P9_31_spi_pin {
++		pinctrl-single,pins = <0x190  0x23>; };     /* Mode 3, Pull-Down, RxActive */
++	P9_31_pruout_pin: pinmux_P9_31_pruout_pin {
++		pinctrl-single,pins = <0x190  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_31_pruin_pin: pinmux_P9_31_pruin_pin {
++		pinctrl-single,pins = <0x190  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_32                VADC    */
++	/* P9_33 (ZCZ ball C8 ) AIN4    */
++	/* P9_34                AGND    */
++	/* P9_35 (ZCZ ball A8 ) AIN6    */
++	/* P9_36 (ZCZ ball B8 ) AIN5    */
++	/* P9_37 (ZCZ ball B7 ) AIN2    */
++	/* P9_38 (ZCZ ball A7 ) AIN3    */
++	/* P9_39 (ZCZ ball B6 ) AIN0    */
++	/* P9_40 (ZCZ ball C7 ) AIN1    */
++
++	/* P9_41 (ZCZ ball D14) */
++	P9_41_default_pin: pinmux_P9_41_default_pin {
++		pinctrl-single,pins = <0x1b4  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_41_gpio_pin: pinmux_P9_41_gpio_pin {
++		pinctrl-single,pins = <0x1b4  0x2F>; };     /* Mode 7, RxActive */
++	P9_41_gpio_pu_pin: pinmux_P9_41_gpio_pu_pin {
++		pinctrl-single,pins = <0x1b4  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_41_gpio_pd_pin: pinmux_P9_41_gpio_pd_pin {
++		pinctrl-single,pins = <0x1b4  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_41_timer_pin: pinmux_P9_41_timer_pin {
++		pinctrl-single,pins = <0x1b4  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++	P9_41_pruin_pin: pinmux_P9_41_pruin_pin {
++		pinctrl-single,pins = <0x1b4  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++
++	/* P9_41.1              */
++	/* P9_91 (ZCZ ball D13) */
++	P9_91_default_pin: pinmux_P9_91_default_pin {
++		pinctrl-single,pins = <0x1a8  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_91_gpio_pin: pinmux_P9_91_gpio_pin {
++		pinctrl-single,pins = <0x1a8  0x2F>; };     /* Mode 7, RxActive */
++	P9_91_gpio_pu_pin: pinmux_P9_91_gpio_pu_pin {
++		pinctrl-single,pins = <0x1a8  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_91_gpio_pd_pin: pinmux_P9_91_gpio_pd_pin {
++		pinctrl-single,pins = <0x1a8  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_91_qep_pin: pinmux_P9_91_qep_pin {
++		pinctrl-single,pins = <0x1a8  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_91_pruout_pin: pinmux_P9_91_pruout_pin {
++		pinctrl-single,pins = <0x1a8  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_91_pruin_pin: pinmux_P9_91_pruin_pin {
++		pinctrl-single,pins = <0x1a8  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_42 (ZCZ ball C18) */
++	P9_42_default_pin: pinmux_P9_42_default_pin {
++		pinctrl-single,pins = <0x164  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_42_gpio_pin: pinmux_P9_42_gpio_pin {
++		pinctrl-single,pins = <0x164  0x2F>; };     /* Mode 7, RxActive */
++	P9_42_gpio_pu_pin: pinmux_P9_42_gpio_pu_pin {
++		pinctrl-single,pins = <0x164  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_42_gpio_pd_pin: pinmux_P9_42_gpio_pd_pin {
++		pinctrl-single,pins = <0x164  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_42_pwm_pin: pinmux_P9_42_pwm_pin {
++		pinctrl-single,pins = <0x164  0x20>; };     /* Mode 0, Pull-Down, RxActive */
++	P9_42_uart_pin: pinmux_P9_42_uart_pin {
++		pinctrl-single,pins = <0x164  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_42_spics_pin: pinmux_P9_42_spics_pin {
++		pinctrl-single,pins = <0x164  0x22>; };     /* Mode 2, Pull-Down, RxActive */
++	P9_42_spiclk_pin: pinmux_P9_42_spiclk_pin {
++		pinctrl-single,pins = <0x164  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++
++	/* P9_42.1              */
++	/* P9_92 (ZCZ ball B12) */
++	P9_92_default_pin: pinmux_P9_92_default_pin {
++		pinctrl-single,pins = <0x1a0  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_92_gpio_pin: pinmux_P9_92_gpio_pin {
++		pinctrl-single,pins = <0x1a0  0x2F>; };     /* Mode 7, RxActive */
++	P9_92_gpio_pu_pin: pinmux_P9_92_gpio_pu_pin {
++		pinctrl-single,pins = <0x1a0  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P9_92_gpio_pd_pin: pinmux_P9_92_gpio_pd_pin {
++		pinctrl-single,pins = <0x1a0  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P9_92_qep_pin: pinmux_P9_92_qep_pin {
++		pinctrl-single,pins = <0x1a0  0x21>; };     /* Mode 1, Pull-Down, RxActive */
++	P9_92_pruout_pin: pinmux_P9_92_pruout_pin {
++		pinctrl-single,pins = <0x1a0  0x25>; };     /* Mode 5, Pull-Down, RxActive */
++	P9_92_pruin_pin: pinmux_P9_92_pruin_pin {
++		pinctrl-single,pins = <0x1a0  0x26>; };     /* Mode 6, Pull-Down, RxActive */
++
++	/* P9_43                GND     */
++	/* P9_44                GND     */
++	/* P9_45                GND     */
++	/* P9_46                GND     */
++};
++
++/**********************************************************************/
++/* Pin Multiplex Helpers                                              */
++/*                                                                    */
++/* These provide userspace runtime pin configuration for the          */
++/* BeagleBone cape expansion headers                                  */
++/**********************************************************************/
++
++&ocp {
++	/************************/
++	/* P8 Header            */
++	/************************/
++
++	P8_07_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "timer";
++		pinctrl-0 = <&P8_07_default_pin>;
++		pinctrl-1 = <&P8_07_gpio_pin>;
++		pinctrl-2 = <&P8_07_gpio_pu_pin>;
++		pinctrl-3 = <&P8_07_gpio_pd_pin>;
++		pinctrl-4 = <&P8_07_timer_pin>;
++	};
++
++	P8_08_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "timer";
++		pinctrl-0 = <&P8_08_default_pin>;
++		pinctrl-1 = <&P8_08_gpio_pin>;
++		pinctrl-2 = <&P8_08_gpio_pu_pin>;
++		pinctrl-3 = <&P8_08_gpio_pd_pin>;
++		pinctrl-4 = <&P8_08_timer_pin>;
++	};
++
++	P8_09_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "timer";
++		pinctrl-0 = <&P8_09_default_pin>;
++		pinctrl-1 = <&P8_09_gpio_pin>;
++		pinctrl-2 = <&P8_09_gpio_pu_pin>;
++		pinctrl-3 = <&P8_09_gpio_pd_pin>;
++		pinctrl-4 = <&P8_09_timer_pin>;
++	};
++
++	P8_10_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "timer";
++		pinctrl-0 = <&P8_10_default_pin>;
++		pinctrl-1 = <&P8_10_gpio_pin>;
++		pinctrl-2 = <&P8_10_gpio_pu_pin>;
++		pinctrl-3 = <&P8_10_gpio_pd_pin>;
++		pinctrl-4 = <&P8_10_timer_pin>;
++	};
++
++	P8_11_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pruout", "qep";
++		pinctrl-0 = <&P8_11_default_pin>;
++		pinctrl-1 = <&P8_11_gpio_pin>;
++		pinctrl-2 = <&P8_11_gpio_pu_pin>;
++		pinctrl-3 = <&P8_11_gpio_pd_pin>;
++		pinctrl-4 = <&P8_11_pruout_pin>;
++		pinctrl-5 = <&P8_11_qep_pin>;
++	};
++
++	P8_12_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pruout", "qep";
++		pinctrl-0 = <&P8_12_default_pin>;
++		pinctrl-1 = <&P8_12_gpio_pin>;
++		pinctrl-2 = <&P8_12_gpio_pu_pin>;
++		pinctrl-3 = <&P8_12_gpio_pd_pin>;
++		pinctrl-4 = <&P8_12_pruout_pin>;
++		pinctrl-5 = <&P8_12_qep_pin>;
++	};
++
++	P8_13_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P8_13_default_pin>;
++		pinctrl-1 = <&P8_13_gpio_pin>;
++		pinctrl-2 = <&P8_13_gpio_pu_pin>;
++		pinctrl-3 = <&P8_13_gpio_pd_pin>;
++		pinctrl-4 = <&P8_13_pwm_pin>;
++	};
++
++	P8_14_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P8_14_default_pin>;
++		pinctrl-1 = <&P8_14_gpio_pin>;
++		pinctrl-2 = <&P8_14_gpio_pu_pin>;
++		pinctrl-3 = <&P8_14_gpio_pd_pin>;
++		pinctrl-4 = <&P8_14_pwm_pin>;
++	};
++
++	P8_15_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pruin", "qep";
++		pinctrl-0 = <&P8_15_default_pin>;
++		pinctrl-1 = <&P8_15_gpio_pin>;
++		pinctrl-2 = <&P8_15_gpio_pu_pin>;
++		pinctrl-3 = <&P8_15_gpio_pd_pin>;
++		pinctrl-4 = <&P8_15_pruin_pin>;
++		pinctrl-5 = <&P8_15_qep_pin>;
++	};
++
++	P8_16_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pruin", "qep";
++		pinctrl-0 = <&P8_16_default_pin>;
++		pinctrl-1 = <&P8_16_gpio_pin>;
++		pinctrl-2 = <&P8_16_gpio_pu_pin>;
++		pinctrl-3 = <&P8_16_gpio_pd_pin>;
++		pinctrl-4 = <&P8_16_pruin_pin>;
++		pinctrl-5 = <&P8_16_qep_pin>;
++	};
++
++	P8_17_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P8_17_default_pin>;
++		pinctrl-1 = <&P8_17_gpio_pin>;
++		pinctrl-2 = <&P8_17_gpio_pu_pin>;
++		pinctrl-3 = <&P8_17_gpio_pd_pin>;
++		pinctrl-4 = <&P8_17_pwm_pin>;
++	};
++
++	P8_18_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio";
++		pinctrl-0 = <&P8_18_default_pin>;
++		pinctrl-1 = <&P8_18_gpio_pin>;
++		pinctrl-2 = <&P8_18_gpio_pu_pin>;
++		pinctrl-3 = <&P8_18_gpio_pd_pin>;
++	};
++
++	P8_19_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P8_19_default_pin>;
++		pinctrl-1 = <&P8_19_gpio_pin>;
++		pinctrl-2 = <&P8_19_gpio_pu_pin>;
++		pinctrl-3 = <&P8_19_gpio_pd_pin>;
++		pinctrl-4 = <&P8_19_pwm_pin>;
++	};
++
++	P8_26_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio";
++		pinctrl-0 = <&P8_26_default_pin>;
++		pinctrl-1 = <&P8_26_gpio_pin>;
++		pinctrl-2 = <&P8_26_gpio_pu_pin>;
++		pinctrl-3 = <&P8_26_gpio_pd_pin>;
++	};
++
++	/************************/
++	/* P9 Header            */
++	/************************/
++
++	P9_11_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "uart";
++		pinctrl-0 = <&P9_11_default_pin>;
++		pinctrl-1 = <&P9_11_gpio_pin>;
++		pinctrl-2 = <&P9_11_gpio_pu_pin>;
++		pinctrl-3 = <&P9_11_gpio_pd_pin>;
++		pinctrl-4 = <&P9_11_uart_pin>;
++	};
++
++	P9_12_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio";
++		pinctrl-0 = <&P9_12_default_pin>;
++		pinctrl-1 = <&P9_12_gpio_pin>;
++		pinctrl-2 = <&P9_12_gpio_pu_pin>;
++		pinctrl-3 = <&P9_12_gpio_pd_pin>;
++	};
++
++	P9_13_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "uart";
++		pinctrl-0 = <&P9_13_default_pin>;
++		pinctrl-1 = <&P9_13_gpio_pin>;
++		pinctrl-2 = <&P9_13_gpio_pu_pin>;
++		pinctrl-3 = <&P9_13_gpio_pd_pin>;
++		pinctrl-4 = <&P9_13_uart_pin>;
++	};
++
++	P9_14_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P9_14_default_pin>;
++		pinctrl-1 = <&P9_14_gpio_pin>;
++		pinctrl-2 = <&P9_14_gpio_pu_pin>;
++		pinctrl-3 = <&P9_14_gpio_pd_pin>;
++		pinctrl-4 = <&P9_14_pwm_pin>;
++	};
++
++	P9_15_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P9_15_default_pin>;
++		pinctrl-1 = <&P9_15_gpio_pin>;
++		pinctrl-2 = <&P9_15_gpio_pu_pin>;
++		pinctrl-3 = <&P9_15_gpio_pd_pin>;
++		pinctrl-4 = <&P9_15_pwm_pin>;
++	};
++
++	P9_16_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P9_16_default_pin>;
++		pinctrl-1 = <&P9_16_gpio_pin>;
++		pinctrl-2 = <&P9_16_gpio_pu_pin>;
++		pinctrl-3 = <&P9_16_gpio_pd_pin>;
++		pinctrl-4 = <&P9_16_pwm_pin>;
++	};
++
++	P9_17_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "spi", "i2c", "pwm";
++		pinctrl-0 = <&P9_17_default_pin>;
++		pinctrl-1 = <&P9_17_gpio_pin>;
++		pinctrl-2 = <&P9_17_gpio_pu_pin>;
++		pinctrl-3 = <&P9_17_gpio_pd_pin>;
++		pinctrl-4 = <&P9_17_spi_pin>;
++		pinctrl-5 = <&P9_17_i2c_pin>;
++		pinctrl-6 = <&P9_17_pwm_pin>;
++	};
++
++	P9_18_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "spi", "i2c", "pwm";
++		pinctrl-0 = <&P9_18_default_pin>;
++		pinctrl-1 = <&P9_18_gpio_pin>;
++		pinctrl-2 = <&P9_18_gpio_pu_pin>;
++		pinctrl-3 = <&P9_18_gpio_pd_pin>;
++		pinctrl-4 = <&P9_18_spi_pin>;
++		pinctrl-5 = <&P9_18_i2c_pin>;
++		pinctrl-6 = <&P9_18_pwm_pin>;
++	};
++
++	// I2C Pins
++	// P9_19_pinmux
++	// P9_20_pinmux
++
++	P9_21_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "spi", "uart", "i2c", "pwm";
++		pinctrl-0 = <&P9_21_default_pin>;
++		pinctrl-1 = <&P9_21_gpio_pin>;
++		pinctrl-2 = <&P9_21_gpio_pu_pin>;
++		pinctrl-3 = <&P9_21_gpio_pd_pin>;
++		pinctrl-4 = <&P9_21_spi_pin>;
++		pinctrl-5 = <&P9_21_uart_pin>;
++		pinctrl-6 = <&P9_21_i2c_pin>;
++		pinctrl-7 = <&P9_21_pwm_pin>;
++	};
++
++	P9_22_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "spi", "uart", "i2c", "pwm";
++		pinctrl-0 = <&P9_22_default_pin>;
++		pinctrl-1 = <&P9_22_gpio_pin>;
++		pinctrl-2 = <&P9_22_gpio_pu_pin>;
++		pinctrl-3 = <&P9_22_gpio_pd_pin>;
++		pinctrl-4 = <&P9_22_spi_pin>;
++		pinctrl-5 = <&P9_22_uart_pin>;
++		pinctrl-6 = <&P9_22_i2c_pin>;
++		pinctrl-7 = <&P9_22_pwm_pin>;
++	};
++
++	P9_23_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm";
++		pinctrl-0 = <&P9_23_default_pin>;
++		pinctrl-1 = <&P9_23_gpio_pin>;
++		pinctrl-2 = <&P9_23_gpio_pu_pin>;
++		pinctrl-3 = <&P9_23_gpio_pd_pin>;
++		pinctrl-4 = <&P9_23_pwm_pin>;
++	};
++
++	P9_24_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "uart", "can", "i2c", "pruin";
++		pinctrl-0 = <&P9_24_default_pin>;
++		pinctrl-1 = <&P9_24_gpio_pin>;
++		pinctrl-2 = <&P9_24_gpio_pu_pin>;
++		pinctrl-3 = <&P9_24_gpio_pd_pin>;
++		pinctrl-4 = <&P9_24_uart_pin>;
++		pinctrl-5 = <&P9_24_can_pin>;
++		pinctrl-6 = <&P9_24_i2c_pin>;
++		pinctrl-7 = <&P9_24_pruin_pin>;
++	};
++
++	P9_25_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "qep", "pruout", "pruin";
++		pinctrl-0 = <&P9_25_default_pin>;
++		pinctrl-1 = <&P9_25_gpio_pin>;
++		pinctrl-2 = <&P9_25_gpio_pu_pin>;
++		pinctrl-3 = <&P9_25_gpio_pd_pin>;
++		pinctrl-4 = <&P9_25_qep_pin>;
++		pinctrl-5 = <&P9_25_pruout_pin>;
++		pinctrl-6 = <&P9_25_pruin_pin>;
++	};
++
++	P9_26_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "uart", "can", "i2c", "pruin";
++		pinctrl-0 = <&P9_26_default_pin>;
++		pinctrl-1 = <&P9_26_gpio_pin>;
++		pinctrl-2 = <&P9_26_gpio_pu_pin>;
++		pinctrl-3 = <&P9_26_gpio_pd_pin>;
++		pinctrl-4 = <&P9_26_uart_pin>;
++		pinctrl-5 = <&P9_26_can_pin>;
++		pinctrl-6 = <&P9_26_i2c_pin>;
++		pinctrl-7 = <&P9_26_pruin_pin>;
++	};
++
++	P9_27_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "qep", "pruout", "pruin";
++		pinctrl-0 = <&P9_27_default_pin>;
++		pinctrl-1 = <&P9_27_gpio_pin>;
++		pinctrl-2 = <&P9_27_gpio_pu_pin>;
++		pinctrl-3 = <&P9_27_gpio_pd_pin>;
++		pinctrl-4 = <&P9_27_qep_pin>;
++		pinctrl-5 = <&P9_27_pruout_pin>;
++		pinctrl-6 = <&P9_27_pruin_pin>;
++	};
++
++	P9_28_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm", "spi", "pwm2", "pruout", "pruin";
++		pinctrl-0 = <&P9_28_default_pin>;
++		pinctrl-1 = <&P9_28_gpio_pin>;
++		pinctrl-2 = <&P9_28_gpio_pu_pin>;
++		pinctrl-3 = <&P9_28_gpio_pd_pin>;
++		pinctrl-4 = <&P9_28_pwm_pin>;
++		pinctrl-5 = <&P9_28_spi_pin>;
++		pinctrl-6 = <&P9_28_pwm2_pin>;
++		pinctrl-7 = <&P9_28_pruout_pin>;
++		pinctrl-8 = <&P9_28_pruin_pin>;
++	};
++
++	P9_29_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm", "spi", "pruout", "pruin";
++		pinctrl-0 = <&P9_29_default_pin>;
++		pinctrl-1 = <&P9_29_gpio_pin>;
++		pinctrl-2 = <&P9_29_gpio_pu_pin>;
++		pinctrl-3 = <&P9_29_gpio_pd_pin>;
++		pinctrl-4 = <&P9_29_pwm_pin>;
++		pinctrl-5 = <&P9_29_spi_pin>;
++		pinctrl-6 = <&P9_29_pruout_pin>;
++		pinctrl-7 = <&P9_29_pruin_pin>;
++	};
++
++	P9_30_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm", "spi", "pruout", "pruin";
++		pinctrl-0 = <&P9_30_default_pin>;
++		pinctrl-1 = <&P9_30_gpio_pin>;
++		pinctrl-2 = <&P9_30_gpio_pu_pin>;
++		pinctrl-3 = <&P9_30_gpio_pd_pin>;
++		pinctrl-4 = <&P9_30_pwm_pin>;
++		pinctrl-5 = <&P9_30_spi_pin>;
++		pinctrl-6 = <&P9_30_pruout_pin>;
++		pinctrl-7 = <&P9_30_pruin_pin>;
++	};
++
++	P9_31_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm", "spi", "pruout", "pruin";
++		pinctrl-0 = <&P9_31_default_pin>;
++		pinctrl-1 = <&P9_31_gpio_pin>;
++		pinctrl-2 = <&P9_31_gpio_pu_pin>;
++		pinctrl-3 = <&P9_31_gpio_pd_pin>;
++		pinctrl-4 = <&P9_31_pwm_pin>;
++		pinctrl-5 = <&P9_31_spi_pin>;
++		pinctrl-6 = <&P9_31_pruout_pin>;
++		pinctrl-7 = <&P9_31_pruin_pin>;
++	};
++
++	P9_41_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "timer", "pruin";
++		pinctrl-0 = <&P9_41_default_pin>;
++		pinctrl-1 = <&P9_41_gpio_pin>;
++		pinctrl-2 = <&P9_41_gpio_pu_pin>;
++		pinctrl-3 = <&P9_41_gpio_pd_pin>;
++		pinctrl-4 = <&P9_41_timer_pin>;
++		pinctrl-5 = <&P9_41_pruin_pin>;
++	};
++
++	P9_91_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "qep", "pruout", "pruin";
++		pinctrl-0 = <&P9_91_default_pin>;
++		pinctrl-1 = <&P9_91_gpio_pin>;
++		pinctrl-2 = <&P9_91_gpio_pu_pin>;
++		pinctrl-3 = <&P9_91_gpio_pd_pin>;
++		pinctrl-4 = <&P9_91_qep_pin>;
++		pinctrl-5 = <&P9_91_pruout_pin>;
++		pinctrl-6 = <&P9_91_pruin_pin>;
++	};
++
++	P9_42_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "pwm", "uart", "spics", "spiclk";
++		pinctrl-0 = <&P9_42_default_pin>;
++		pinctrl-1 = <&P9_42_gpio_pin>;
++		pinctrl-2 = <&P9_42_gpio_pu_pin>;
++		pinctrl-3 = <&P9_42_gpio_pd_pin>;
++		pinctrl-4 = <&P9_42_pwm_pin>;
++		pinctrl-5 = <&P9_42_uart_pin>;
++		pinctrl-6 = <&P9_42_spics_pin>;
++		pinctrl-7 = <&P9_42_spiclk_pin>;
++	};
++
++	P9_92_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd", "qep", "pruout", "pruin";
++		pinctrl-0 = <&P9_92_default_pin>;
++		pinctrl-1 = <&P9_92_gpio_pin>;
++		pinctrl-2 = <&P9_92_gpio_pu_pin>;
++		pinctrl-3 = <&P9_92_gpio_pd_pin>;
++		pinctrl-4 = <&P9_92_qep_pin>;
++		pinctrl-5 = <&P9_92_pruout_pin>;
++		pinctrl-6 = <&P9_92_pruin_pin>;
++	};
++
++	cape-universal {
++		compatible = "gpio-of-helper";
++		status = "okay";
++		pinctrl-names = "default";
++		pinctrl-0 = <>;
++
++		P8_07 {
++			gpio-name = "P8_07";
++			gpio = <&gpio2 2 0>;
++			input;
++			dir-changeable;
++		};
++		P8_08 {
++			gpio-name = "P8_08";
++			gpio = <&gpio2 3 0>;
++			input;
++			dir-changeable;
++		};
++		P8_09 {
++			gpio-name = "P8_09";
++			gpio = <&gpio2 5 0>;
++			input;
++			dir-changeable;
++		};
++		P8_10 {
++			gpio-name = "P8_10";
++			gpio = <&gpio2 4 0>;
++			input;
++			dir-changeable;
++		};
++		P8_11 {
++			gpio-name = "P8_11";
++			gpio = <&gpio1 13 0>;
++			input;
++			dir-changeable;
++		};
++		P8_12 {
++			gpio-name = "P8_12";
++			gpio = <&gpio1 12 0>;
++			input;
++			dir-changeable;
++		};
++		P8_13 {
++			gpio-name = "P8_13";
++			gpio = <&gpio0 23 0>;
++			input;
++			dir-changeable;
++		};
++		P8_14 {
++			gpio-name = "P8_14";
++			gpio = <&gpio0 26 0>;
++			input;
++			dir-changeable;
++		};
++		P8_15 {
++			gpio-name = "P8_15";
++			gpio = <&gpio1 15 0>;
++			input;
++			dir-changeable;
++		};
++		P8_16 {
++			gpio-name = "P8_16";
++			gpio = <&gpio1 14 0>;
++			input;
++			dir-changeable;
++		};
++		P8_17 {
++			gpio-name = "P8_17";
++			gpio = <&gpio0 27 0>;
++			input;
++			dir-changeable;
++		};
++		P8_18 {
++			gpio-name = "P8_18";
++			gpio = <&gpio2 1 0>;
++			input;
++			dir-changeable;
++		};
++		P8_19 {
++			gpio-name = "P8_19";
++			gpio = <&gpio0 22 0>;
++			input;
++			dir-changeable;
++		};
++		P8_26 {
++			gpio-name = "P8_26";
++			gpio = <&gpio1 29 0>;
++			input;
++			dir-changeable;
++		};
++
++		P9_11 {
++			gpio-name = "P9_11";
++			gpio = <&gpio0 30 0>;
++			input;
++			dir-changeable;
++		};
++		P9_12 {
++			gpio-name = "P9_12";
++			gpio = <&gpio1 28 0>;
++			input;
++			dir-changeable;
++		};
++		P9_13 {
++			gpio-name = "P9_13";
++			gpio = <&gpio0 31 0>;
++			input;
++			dir-changeable;
++		};
++		P9_14 {
++			gpio-name = "P9_14";
++			gpio = <&gpio1 18 0>;
++			input;
++			dir-changeable;
++		};
++		P9_15 {
++			gpio-name = "P9_15";
++			gpio = <&gpio1 16 0>;
++			input;
++			dir-changeable;
++		};
++		P9_16 {
++			gpio-name = "P9_16";
++			gpio = <&gpio1 19 0>;
++			input;
++			dir-changeable;
++		};
++		P9_17 {
++			gpio-name = "P9_17";
++			gpio = <&gpio0 5 0>;
++			input;
++			dir-changeable;
++		};
++		P9_18 {
++			gpio-name = "P9_18";
++			gpio = <&gpio0 4 0>;
++			input;
++			dir-changeable;
++		};
++
++		// I2C pins
++		// P9_19
++		// P9_20
++
++		P9_21 {
++			gpio-name = "P9_21";
++			gpio = <&gpio0 3 0>;
++			input;
++			dir-changeable;
++		};
++		P9_22 {
++			gpio-name = "P9_22";
++			gpio = <&gpio0 2 0>;
++			input;
++			dir-changeable;
++		};
++		P9_23 {
++			gpio-name = "P9_23";
++			gpio = <&gpio1 17 0>;
++			input;
++			dir-changeable;
++		};
++		P9_24 {
++			gpio-name = "P9_24";
++			gpio = <&gpio0 15 0>;
++			input;
++			dir-changeable;
++		};
++		P9_25 {
++			gpio-name = "P9_25";
++			gpio = <&gpio3 21 0>;
++			input;
++			dir-changeable;
++		};
++		P9_26 {
++			gpio-name = "P9_26";
++			gpio = <&gpio0 14 0>;
++			input;
++			dir-changeable;
++		};
++		P9_27 {
++			gpio-name = "P9_27";
++			gpio = <&gpio3 19 0>;
++			input;
++			dir-changeable;
++		};
++		P9_28 {
++			gpio-name = "P9_28";
++			gpio = <&gpio3 17 0>;
++			input;
++			dir-changeable;
++		};
++		P9_29 {
++			gpio-name = "P9_29";
++			gpio = <&gpio3 15 0>;
++			input;
++			dir-changeable;
++		};
++		P9_30 {
++			gpio-name = "P9_30";
++			gpio = <&gpio3 16 0>;
++			input;
++			dir-changeable;
++		};
++		P9_31 {
++			gpio-name = "P9_31";
++			gpio = <&gpio3 14 0>;
++			input;
++			dir-changeable;
++		};
++		P9_41 {
++			gpio-name = "P9_41";
++			gpio = <&gpio0 20 0>;
++			input;
++			dir-changeable;
++		};
++		P9_91 {
++			gpio-name = "P9_91";
++			gpio = <&gpio3 20 0>;
++			input;
++			dir-changeable;
++		};
++		P9_42 {
++			gpio-name = "P9_42";
++			gpio = <&gpio0 7 0>;
++			input;
++			dir-changeable;
++		};
++		P9_92 {
++			gpio-name = "P9_92";
++			gpio = <&gpio3 18 0>;
++			input;
++			dir-changeable;
++		};
++	};
++};
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0008-bone-pinmux-helper-Add-support-for-mode-device-tree-.patch b/patches/beaglebone/pinmux-helper/0008-bone-pinmux-helper-Add-support-for-mode-device-tree-.patch
new file mode 100644
index 000000000..409b67abe
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0008-bone-pinmux-helper-Add-support-for-mode-device-tree-.patch
@@ -0,0 +1,117 @@
+From e0e0f1da3f2df4bc4ee2b27a65ee99734bd3fb77 Mon Sep 17 00:00:00 2001
+From: Charles Steinkuehler <charles@steinkuehler.net>
+Date: Tue, 16 Sep 2014 20:42:56 +0000
+Subject: [PATCH 8/8] bone-pinmux-helper: Add support for "mode" device-tree
+ parameter The new mode parameter is used to set the initial pinmux mode to
+ something other than "default" or NULL, which is what happens currently. 
+ This allows enabling SoC hardware via device-tree which requires specific
+ pinmux settings to function on boot, but still leaves the pinmux register
+ under control of the bone-pinmux- helper driver meaning the pinmux setting
+ can be changed at run time via user-mode access to sysfs.
+
+Signed-off-by: Charles Steinkuehler <charles@steinkuehler.net>
+---
+ drivers/misc/cape/beaglebone/bone-pinmux-helper.c | 58 ++++++++++++++++++-----
+ 1 file changed, 47 insertions(+), 11 deletions(-)
+
+diff --git a/drivers/misc/cape/beaglebone/bone-pinmux-helper.c b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+index 5074365..d81363a 100644
+--- a/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
++++ b/drivers/misc/cape/beaglebone/bone-pinmux-helper.c
+@@ -117,6 +117,8 @@ static int bone_pinmux_helper_probe(struct platform_device *pdev)
+ 	struct pinmux_helper_data *data;
+ 	struct pinctrl_state *state;
+ 	char *state_name;
++	const char *mode_name;
++	int mode_len;
+ 	int err;
+ 
+ 	data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL);
+@@ -125,12 +127,13 @@ static int bone_pinmux_helper_probe(struct platform_device *pdev)
+ 		err = -ENOMEM;
+ 		goto err_no_mem;
+ 	}
++
+ 	state_name = kmalloc(strlen(PINCTRL_STATE_DEFAULT) + 1,
+ 			GFP_KERNEL);
+ 	if (state_name == NULL) {
+ 		dev_err(dev, "Failed to allocate state name\n");
+ 		err = -ENOMEM;
+-		goto err_no_mem;
++		goto err_no_state_mem;
+ 	}
+ 	data->selected_state_name = state_name;
+ 	strcpy(data->selected_state_name, PINCTRL_STATE_DEFAULT);
+@@ -144,17 +147,47 @@ static int bone_pinmux_helper_probe(struct platform_device *pdev)
+ 		goto err_no_pinctrl;
+ 	}
+ 
+-	/* try to select default state at first (if it exists) */
+-	state = pinctrl_lookup_state(data->pinctrl,
+-			data->selected_state_name);
+-	if (!IS_ERR(state)) {
+-		err = pinctrl_select_state(data->pinctrl, state);
+-		if (err != 0) {
+-			dev_err(dev, "Failed to select default state\n");
+-			goto err_no_state;
++	/* See if an initial mode is specified in the device tree */
++	mode_name = of_get_property(dev->of_node, "mode", &mode_len);
++
++	err = -1;
++	if (mode_name != NULL ) {
++		state_name = kmalloc(mode_len + 1, GFP_KERNEL);
++		if (state_name == NULL) {
++			dev_err(dev, "Failed to allocate state name\n");
++			err = -ENOMEM;
++			goto err_no_mode_mem;
++		}
++		strncpy(state_name, mode_name, mode_len);
++
++		/* try to select requested mode */
++		state = pinctrl_lookup_state(data->pinctrl, state_name);
++		if (!IS_ERR(state)) {
++			err = pinctrl_select_state(data->pinctrl, state);
++			if (err != 0) {
++				dev_warn(dev, "Unable to select requested mode %s\n", state_name);
++				kfree(state_name);
++			} else {
++				kfree(data->selected_state_name);
++				data->selected_state_name = state_name;
++				dev_notice(dev, "Set initial pinmux mode to %s\n", state_name);
++			}
++		}
++	}
++
++	/* try to select default state if mode_name failed */
++	if ( err != 0) {
++		state = pinctrl_lookup_state(data->pinctrl,
++				data->selected_state_name);
++		if (!IS_ERR(state)) {
++			err = pinctrl_select_state(data->pinctrl, state);
++			if (err != 0) {
++				dev_err(dev, "Failed to select default state\n");
++				goto err_no_state;
++			}
++		} else {
++			data->selected_state_name = '\0';
+ 		}
+-	} else {
+-		data->selected_state_name = '\0';
+ 	}
+ 
+ 	/* Register sysfs hooks */
+@@ -168,8 +201,11 @@ static int bone_pinmux_helper_probe(struct platform_device *pdev)
+ 
+ err_no_sysfs:
+ err_no_state:
++err_no_mode_mem:
+ 	devm_pinctrl_put(data->pinctrl);
+ err_no_pinctrl:
++	devm_kfree(dev, data->selected_state_name);
++err_no_state_mem:
+ 	devm_kfree(dev, data);
+ err_no_mem:
+ 	return err;
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux-helper/0009-pinmux-helper-add-P8_37_pinmux-P8_38_pinmux.patch b/patches/beaglebone/pinmux-helper/0009-pinmux-helper-add-P8_37_pinmux-P8_38_pinmux.patch
new file mode 100644
index 000000000..8a0d7c135
--- /dev/null
+++ b/patches/beaglebone/pinmux-helper/0009-pinmux-helper-add-P8_37_pinmux-P8_38_pinmux.patch
@@ -0,0 +1,82 @@
+From 5b9925987b1a3d60835920cbf94286f7271a7d8b Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Fri, 19 Sep 2014 08:49:29 -0500
+Subject: [PATCH 9/9] pinmux-helper: add P8_37_pinmux & P8_38_pinmux
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 50 ++++++++++++++++++++++++
+ 1 file changed, 50 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+index 8bddcd2..e00bab9 100644
+--- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+@@ -208,7 +208,33 @@
+ 	/* P8_35 (ZCZ ball V2 ) hdmi    */
+ 	/* P8_36 (ZCZ ball U3 ) hdmi    */
+ 	/* P8_37 (ZCZ ball U1 ) hdmi    */
++	P8_37_default_pin: pinmux_P8_37_default_pin {
++		pinctrl-single,pins = <0x0C0  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_37_gpio_pin: pinmux_P8_37_gpio_pin {
++		pinctrl-single,pins = <0x0C0  0x2F>; };     /* Mode 7, RxActive */
++	P8_37_gpio_pu_pin: pinmux_P8_37_gpio_pu_pin {
++		pinctrl-single,pins = <0x0C0  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_37_gpio_pd_pin: pinmux_P8_37_gpio_pd_pin {
++		pinctrl-single,pins = <0x0C0  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_37_uart_pin: pinmux_P8_37_uart_pin {
++		pinctrl-single,pins = <0x0C0  0x04>; };     /* Mode 4, Pull-Down*/
++	P8_37_pwm_pin: pinmux_P8_37_pwm_pin {
++		pinctrl-single,pins = <0x0C0  0x02>; };     /* Mode 2, Pull-Down*/
++
+ 	/* P8_38 (ZCZ ball U2 ) hdmi    */
++	P8_38_default_pin: pinmux_P8_38_default_pin {
++		pinctrl-single,pins = <0x0C4  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_38_gpio_pin: pinmux_P8_38_gpio_pin {
++		pinctrl-single,pins = <0x0C4  0x2F>; };     /* Mode 7, RxActive */
++	P8_38_gpio_pu_pin: pinmux_P8_38_gpio_pu_pin {
++		pinctrl-single,pins = <0x0C4  0x37>; };     /* Mode 7, Pull-Up, RxActive */
++	P8_38_gpio_pd_pin: pinmux_P8_38_gpio_pd_pin {
++		pinctrl-single,pins = <0x0C4  0x27>; };     /* Mode 7, Pull-Down, RxActive */
++	P8_38_uart_pin: pinmux_P8_38_uart_pin {
++		pinctrl-single,pins = <0x0C4  0x24>; };     /* Mode 4, Pull-Down, RxActive */
++	P8_38_pwm_pin: pinmux_P8_38_pwm_pin {
++		pinctrl-single,pins = <0x0C4  0x22>; };     /* Mode 2, Pull-Down, RxActive */
++
+ 	/* P8_39 (ZCZ ball T3 ) hdmi    */
+ 	/* P8_40 (ZCZ ball T4 ) hdmi    */
+ 	/* P8_41 (ZCZ ball T1 ) hdmi    */
+@@ -780,6 +806,30 @@
+ 		pinctrl-3 = <&P8_26_gpio_pd_pin>;
+ 	};
+ 
++	P8_37_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd","uart","pwm";
++		pinctrl-0 = <&P8_37_default_pin>;
++		pinctrl-1 = <&P8_37_gpio_pin>;
++		pinctrl-2 = <&P8_37_gpio_pu_pin>;
++		pinctrl-3 = <&P8_37_gpio_pd_pin>;
++		pinctrl-4 = <&P8_37_uart_pin>;
++		pinctrl-5 = <&P8_37_pwm_pin>;
++	};
++
++	P8_38_pinmux {
++		compatible = "bone-pinmux-helper";
++		status = "okay";
++		pinctrl-names = "default", "gpio", "gpio_pu", "gpio_pd","uart","pwm";
++		pinctrl-0 = <&P8_38_default_pin>;
++		pinctrl-1 = <&P8_38_gpio_pin>;
++		pinctrl-2 = <&P8_38_gpio_pu_pin>;
++		pinctrl-3 = <&P8_38_gpio_pd_pin>;
++		pinctrl-4 = <&P8_38_uart_pin>;
++		pinctrl-5 = <&P8_38_pwm_pin>;
++	};
++
+ 	/************************/
+ 	/* P9 Header            */
+ 	/************************/
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux/0001-am335x-bone-common-split-out-am33xx_pinmux.patch b/patches/beaglebone/pinmux/0001-am335x-bone-common-split-out-am33xx_pinmux.patch
index aa087cbff..07b42496a 100644
--- a/patches/beaglebone/pinmux/0001-am335x-bone-common-split-out-am33xx_pinmux.patch
+++ b/patches/beaglebone/pinmux/0001-am335x-bone-common-split-out-am33xx_pinmux.patch
@@ -1,32 +1,24 @@
-From 320230cce3855cc1f09cc7105fd3ce0a18261c55 Mon Sep 17 00:00:00 2001
+From bf5cb595e98a89ed843ab3e124bdd6adc3a2d132 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 19 Aug 2014 11:43:01 -0500
-Subject: [PATCH 01/19] am335x-bone-common: split out am33xx_pinmux
+Date: Mon, 15 Sep 2014 20:56:49 -0500
+Subject: [PATCH 01/20] am335x-bone-common: split out am33xx_pinmux
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 113 +++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-common.dtsi        | 109 ----------------------
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 104 +++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-common.dtsi        | 109 -----------------------
  arch/arm/boot/dts/am335x-bone.dts                |   6 ++
  arch/arm/boot/dts/am335x-boneblack.dts           |   4 +
- 4 files changed, 123 insertions(+), 109 deletions(-)
- create mode 100644 arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+ 4 files changed, 114 insertions(+), 109 deletions(-)
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-new file mode 100644
-index 0000000..316122e
---- /dev/null
+index e00bab9..d95303d 100644
+--- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -0,0 +1,113 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&am33xx_pinmux {
+@@ -7,6 +7,110 @@
+  */
+ 
+ &am33xx_pinmux {
 +	user_leds_s0: user_leds_s0 {
 +		pinctrl-single,pins = <
 +			0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a5.gpio1_21 */
@@ -36,6 +28,20 @@ index 0000000..316122e
 +		>;
 +	};
 +
++	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 */
@@ -96,6 +102,12 @@ index 0000000..316122e
 +		>;
 +	};
 +
++	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 */
@@ -111,26 +123,9 @@ index 0000000..316122e
 +		>;
 +	};
 +
-+	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 */
-+		>;
-+	};
-+
-+	mmc1_pins: pinmux_mmc1_pins {
-+		pinctrl-single,pins = <
-+			0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
-+		>;
-+	};
-+
-+	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 */
-+		>;
-+	};
-+};
+ 	/************************/
+ 	/* P8 Header            */
+ 	/************************/
 diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
 index bde1777..7ca7df6 100644
 --- a/arch/arm/boot/dts/am335x-bone-common.dtsi
diff --git a/patches/beaglebone/pinmux/0002-am335x-boneblack-split-out-am33xx_pinmux.patch b/patches/beaglebone/pinmux/0002-am335x-boneblack-split-out-am33xx_pinmux.patch
index 50ad55f07..97db7a1f8 100644
--- a/patches/beaglebone/pinmux/0002-am335x-boneblack-split-out-am33xx_pinmux.patch
+++ b/patches/beaglebone/pinmux/0002-am335x-boneblack-split-out-am33xx_pinmux.patch
@@ -1,7 +1,7 @@
-From 19dd79116f78b828d47e012f0606c9cd8668e4ff Mon Sep 17 00:00:00 2001
+From 1201e25dc0e618fd864af95e1b0888176ebf4226 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 19 Aug 2014 11:48:05 -0500
-Subject: [PATCH 02/19] am335x-boneblack: split out am33xx_pinmux
+Date: Mon, 15 Sep 2014 20:59:13 -0500
+Subject: [PATCH 02/20] am335x-boneblack: split out am33xx_pinmux
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
@@ -10,10 +10,10 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
  2 files changed, 32 insertions(+), 31 deletions(-)
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 316122e..793d94b 100644
+index d95303d..d1b5d87 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -104,6 +104,38 @@
+@@ -111,6 +111,38 @@
  		>;
  	};
  
@@ -49,9 +49,9 @@ index 316122e..793d94b 100644
 +		>;
 +	};
 +
- 	uart0_pins: pinmux_uart0_pins {
- 		pinctrl-single,pins = <
- 			0x170 (PIN_INPUT_PULLUP | MUX_MODE0)	/* uart0_rxd.uart0_rxd */
+ 	/************************/
+ 	/* P8 Header            */
+ 	/************************/
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
 index 3606bc6..b009880 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
diff --git a/patches/beaglebone/pinmux/0003-am335x-boneblack-split-out-emmc.patch b/patches/beaglebone/pinmux/0003-am335x-boneblack-split-out-emmc.patch
index 212f777f1..ae59c24e8 100644
--- a/patches/beaglebone/pinmux/0003-am335x-boneblack-split-out-emmc.patch
+++ b/patches/beaglebone/pinmux/0003-am335x-boneblack-split-out-emmc.patch
@@ -1,7 +1,7 @@
-From 983619cf13b62ea57150fd91ee2401d24e779e9a Mon Sep 17 00:00:00 2001
+From 837a3a76f4acd8b1d9f6cbb4ee5079a0dd340fc2 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 19 Aug 2014 11:51:29 -0500
-Subject: [PATCH 03/19] am335x-boneblack: split out emmc
+Date: Mon, 15 Sep 2014 21:00:53 -0500
+Subject: [PATCH 03/20] am335x-boneblack: split out emmc
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
diff --git a/patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-audio.patch b/patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-audio.patch
new file mode 100644
index 000000000..68cf8b803
--- /dev/null
+++ b/patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-audio.patch
@@ -0,0 +1,152 @@
+From a41d8b66ff63eb5a1468787a2c2fa9022b33fafd Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Mon, 15 Sep 2014 21:02:57 -0500
+Subject: [PATCH 04/20] am335x-boneblack: split out nxp hdmi audio
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ .../boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi  | 64 ++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-boneblack.dts             | 59 +-------------------
+ 2 files changed, 66 insertions(+), 57 deletions(-)
+ create mode 100644 arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
+
+diff --git a/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi b/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
+new file mode 100644
+index 0000000..915dd3b
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
+@@ -0,0 +1,64 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&lcdc {
++	status = "okay";
++};
++
++&mcasp0	{
++	pinctrl-names = "default";
++	pinctrl-0 = <&mcasp0_pins>;
++	status = "okay";
++	op-mode = <0>;	/* MCASP_IIS_MODE */
++	tdm-slots = <2>;
++	serial-dir = <	/* 0: INACTIVE, 1: TX, 2: RX */
++			0 0 1 0
++		>;
++	tx-num-evt = <1>;
++	rx-num-evt = <1>;
++};
++
++/ {
++	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";
++	};
++
++	clk_mcasp0_fixed: clk_mcasp0_fixed {
++		#clock-cells = <0>;
++		compatible = "fixed-clock";
++		clock-frequency = <24576000>;
++	};
++
++	clk_mcasp0: clk_mcasp0 {
++		#clock-cells = <0>;
++		compatible = "ti,gpio-gate-clock";
++		clocks = <&clk_mcasp0_fixed>;
++		enable-gpios = <&gpio1 27 0>; /* BeagleBone Black Clk enable on GPIO1_27 */
++	};
++
++	hdmi_audio: hdmi_audio@0 {
++		compatible = "linux,hdmi-audio";
++		status = "okay";
++	};
++
++	sound {
++		compatible = "ti,beaglebone-black-audio";
++		ti,model = "TI BeagleBone Black";
++		ti,audio-codec = <&hdmi_audio>;
++		ti,mcasp-controller = <&mcasp0>;
++		ti,audio-routing =
++			"HDMI Out",	"TX";
++		clocks = <&clk_mcasp0>;
++		clock-names = "mclk";
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
+index 2f23a55..46f3e8a 100644
+--- a/arch/arm/boot/dts/am335x-boneblack.dts
++++ b/arch/arm/boot/dts/am335x-boneblack.dts
+@@ -27,60 +27,5 @@
+ };
+ 
+ #include "am335x-boneblack-emmc.dtsi"
+-
+-&lcdc {
+-	status = "okay";
+-};
+-
+-&mcasp0	{
+-	pinctrl-names = "default";
+-	pinctrl-0 = <&mcasp0_pins>;
+-	status = "okay";
+-	op-mode = <0>;	/* MCASP_IIS_MODE */
+-	tdm-slots = <2>;
+-	serial-dir = <	/* 0: INACTIVE, 1: TX, 2: RX */
+-			0 0 1 0
+-		>;
+-	tx-num-evt = <1>;
+-	rx-num-evt = <1>;
+-};
+-
+-/ {
+-	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";
+-	};
+-
+-	clk_mcasp0_fixed: clk_mcasp0_fixed {
+-	      #clock-cells = <0>;
+-	      compatible = "fixed-clock";
+-	      clock-frequency = <24576000>;
+-	};
+-
+-	clk_mcasp0: clk_mcasp0 {
+-	      #clock-cells = <0>;
+-	      compatible = "ti,gpio-gate-clock";
+-	      clocks = <&clk_mcasp0_fixed>;
+-	      enable-gpios = <&gpio1 27 0>; /* BeagleBone Black Clk enable on GPIO1_27 */
+-	};
+-
+-	hdmi_audio: hdmi_audio@0 {
+-	       compatible = "linux,hdmi-audio";
+-	       status = "okay";
+-	};
+-
+-	sound {
+-		compatible = "ti,beaglebone-black-audio";
+-		ti,model = "TI BeagleBone Black";
+-		ti,audio-codec = <&hdmi_audio>;
+-		ti,mcasp-controller = <&mcasp0>;
+-		ti,audio-routing =
+-			"HDMI Out",	"TX";
+-		clocks = <&clk_mcasp0>;
+-		clock-names = "mclk";
+-	};
+-};
++/* HDMI: with audio */
++#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-no-audio.patch b/patches/beaglebone/pinmux/0005-am335x-bone-nxp-hdmi-no-audio.patch
similarity index 81%
rename from patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-no-audio.patch
rename to patches/beaglebone/pinmux/0005-am335x-bone-nxp-hdmi-no-audio.patch
index 8baee1356..77d3b6c69 100644
--- a/patches/beaglebone/pinmux/0004-am335x-boneblack-split-out-nxp-hdmi-no-audio.patch
+++ b/patches/beaglebone/pinmux/0005-am335x-bone-nxp-hdmi-no-audio.patch
@@ -1,13 +1,13 @@
-From 2c492182e83029334513dd61c8836c3b29552347 Mon Sep 17 00:00:00 2001
+From 3aeb2335c2152cf95fbd9b1cef7f43dda09f5b9a Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 19 Aug 2014 11:55:43 -0500
-Subject: [PATCH 04/19] am335x-boneblack: split out nxp hdmi no audio
+Date: Mon, 15 Sep 2014 21:06:12 -0500
+Subject: [PATCH 05/20] am335x-bone: nxp hdmi no audio
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
  .../dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi    | 22 ++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack.dts             | 16 ++--------------
- 2 files changed, 24 insertions(+), 14 deletions(-)
+ arch/arm/boot/dts/am335x-boneblack.dts             | 17 ++---------------
+ 2 files changed, 24 insertions(+), 15 deletions(-)
  create mode 100644 arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
 
 diff --git a/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi b/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
@@ -39,13 +39,14 @@ index 0000000..3eafd75
 +	};
 +};
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index 3b1ed82..b004d2ec 100644
+index 3b1ed82..2bb6918 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
 +++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -28,17 +28,5 @@
+@@ -27,18 +27,5 @@
+ };
  
  #include "am335x-boneblack-emmc.dtsi"
- 
+-
 -&lcdc {
 -	status = "okay";
 -};
@@ -60,7 +61,7 @@ index 3b1ed82..b004d2ec 100644
 -		status = "okay";
 -	};
 -};
-+/* Display */
++/* HDMI: without audio */
 +#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
 -- 
 2.1.0
diff --git a/patches/beaglebone/pinmux/0006-am335x-bone-common-pinmux-uart1-uart2-uart4-uart5.patch b/patches/beaglebone/pinmux/0006-am335x-bone-common-pinmux-uart1-uart2-uart4-uart5.patch
deleted file mode 100644
index aa86d0f4a..000000000
--- a/patches/beaglebone/pinmux/0006-am335x-bone-common-pinmux-uart1-uart2-uart4-uart5.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-From 12ee2935fd3610628f36cb431a7d63b08d211508 Mon Sep 17 00:00:00 2001
-From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 10:21:53 -0500
-Subject: [PATCH 06/19] am335x-bone-common: pinmux uart1/uart2/uart4/uart5
-
-Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
----
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 28 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-ttyO1.dtsi         | 14 ++++++++++++
- arch/arm/boot/dts/am335x-bone-ttyO2.dtsi         | 14 ++++++++++++
- arch/arm/boot/dts/am335x-bone-ttyO4.dtsi         | 14 ++++++++++++
- arch/arm/boot/dts/am335x-bone-ttyO5.dtsi         | 14 ++++++++++++
- arch/arm/boot/dts/am335x-bone.dts                |  9 ++++++++
- arch/arm/boot/dts/am335x-boneblack.dts           |  9 ++++++++
- 7 files changed, 102 insertions(+)
- create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO1.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO2.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO4.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO5.dtsi
-
-diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 04beb88..78cee3a 100644
---- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-+++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -156,4 +156,32 @@
- 			0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* uart0_txd.uart0_txd */
- 		>;
- 	};
-+
-+	uart1_pins: pinmux_uart1_pins {
-+		pinctrl-single,pins = <
-+			0x180 (PIN_INPUT_PULLUP | MUX_MODE0)	/* uart1_rxd.uart1_rxd */
-+			0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* uart1_txd.uart1_txd */
-+		>;
-+	};
-+
-+	uart2_pins: pinmux_uart2_pins {
-+		pinctrl-single,pins = <
-+			0x150 0x21	/* spi0_sclk.uart2_rxd | MODE1 */
-+			0x154 0x01	/* spi0_d0.uart2_txd | MODE1 */
-+		>;
-+	};
-+
-+	uart4_pins: pinmux_uart4_pins {
-+		pinctrl-single,pins = <
-+			0x070 0x26	/* gpmc_wait0.uart4_rxd | MODE6 */
-+			0x074 0x06	/* gpmc_wpn.uart4_txd | MODE6 */
-+		>;
-+	};
-+
-+	uart5_pins: pinmux_uart5_pins {
-+		pinctrl-single,pins = <
-+			0x0C4 0x24	/* lcd_data9.uart5_rxd | MODE4 */
-+			0x0C0 0x04	/* lcd_data8.uart5_txd | MODE4 */
-+		>;
-+	};
- };
-diff --git a/arch/arm/boot/dts/am335x-bone-ttyO1.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO1.dtsi
-new file mode 100644
-index 0000000..aac2137
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-ttyO1.dtsi
-@@ -0,0 +1,14 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&uart1 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&uart1_pins>;
-+
-+	status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone-ttyO2.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO2.dtsi
-new file mode 100644
-index 0000000..8a7e0b2
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-ttyO2.dtsi
-@@ -0,0 +1,14 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&uart2 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&uart2_pins>;
-+
-+	status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone-ttyO4.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO4.dtsi
-new file mode 100644
-index 0000000..54c5149
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-ttyO4.dtsi
-@@ -0,0 +1,14 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&uart4 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&uart4_pins>;
-+
-+	status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone-ttyO5.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO5.dtsi
-new file mode 100644
-index 0000000..0b8544c
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-ttyO5.dtsi
-@@ -0,0 +1,14 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&uart5 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&uart5_pins>;
-+
-+	status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index 7dbfe07..875dbff 100644
---- a/arch/arm/boot/dts/am335x-bone.dts
-+++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -33,3 +33,12 @@
- &aes {
- 	status = "okay";
- };
-+
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index b004d2ec..8781178 100644
---- a/arch/arm/boot/dts/am335x-boneblack.dts
-+++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -28,5 +28,14 @@
- 
- #include "am335x-boneblack-emmc.dtsi"
- 
-+/* uart1: P9.24, P9.26 */
-+/* #include "am335x-bone-ttyO1.dtsi" */
-+/* uart2: P9.21, P9.22 */
-+/* #include "am335x-bone-ttyO2.dtsi" */
-+/* uart4: P9.11, P9.13 */
-+/* #include "am335x-bone-ttyO4.dtsi" */
-+/* uart5: P8.37, P8.38 am335x-boneblack: hdmi has to be disabled for ttyO5 */
-+/* #include "am335x-bone-ttyO5.dtsi" */
-+
- /* Display */
- #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
--- 
-2.1.0
-
diff --git a/patches/beaglebone/pinmux/0006-pinmux-bone-black-disable-pins-for-hdmi-audio-clkout.patch b/patches/beaglebone/pinmux/0006-pinmux-bone-black-disable-pins-for-hdmi-audio-clkout.patch
new file mode 100644
index 000000000..17fdb01ed
--- /dev/null
+++ b/patches/beaglebone/pinmux/0006-pinmux-bone-black-disable-pins-for-hdmi-audio-clkout.patch
@@ -0,0 +1,81 @@
+From f4bcdd1477f46e4c46708c063cedbd0fb075f373 Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Fri, 19 Sep 2014 08:53:54 -0500
+Subject: [PATCH 06/20] pinmux: bone/black disable pins for
+ hdmi/audio/clkout2/mmc1
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone.dts                         | 11 +++++++++++
+ arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi | 10 ++++++++++
+ arch/arm/boot/dts/am335x-boneblack.dts                    | 11 +++++++++++
+ 3 files changed, 32 insertions(+)
+
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index 7dbfe07..6c70507 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -17,6 +17,17 @@
+ 	regulator-always-on;
+ };
+ 
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
+ &mmc1 {
+ 	vmmc-supply = <&ldo3_reg>;
+ };
+diff --git a/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi b/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
+index 3eafd75..63d0214 100644
+--- a/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
++++ b/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-no-audio.dtsi
+@@ -6,6 +6,16 @@
+  * published by the Free Software Foundation.
+  */
+ 
++&ocp {
++	/* hdmi */
++	P8_37_pinmux {
++		status = "disabled";
++	};
++	P8_38_pinmux {
++		status = "disabled";
++	};
++};
++
+ &lcdc {
+ 	status = "okay";
+ };
+diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
+index 2bb6918..55326d9 100644
+--- a/arch/arm/boot/dts/am335x-boneblack.dts
++++ b/arch/arm/boot/dts/am335x-boneblack.dts
+@@ -17,6 +17,17 @@
+ 	regulator-always-on;
+ };
+ 
++&ocp {
++	/* clkout2 */
++	P9_41_pinmux {
++		status = "disabled";
++	};
++	/* mmc1 */
++	P9_92_pinmux {
++		status = "disabled";
++	};
++};
++
+ &mmc1 {
+ 	vmmc-supply = <&vmmcsd_fixed>;
+ };
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux/0007-am335x-bone-common-pinmux-spi0-spidev.patch b/patches/beaglebone/pinmux/0007-am335x-bone-common-pinmux-spi0-spidev.patch
deleted file mode 100644
index 699c28aeb..000000000
--- a/patches/beaglebone/pinmux/0007-am335x-bone-common-pinmux-spi0-spidev.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From 1511224c54e26ee7c7878a3b9c9bb1bf4ac28485 Mon Sep 17 00:00:00 2001
-From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 10:24:29 -0500
-Subject: [PATCH 07/19] am335x-bone-common: pinmux spi0-spidev
-
-Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
----
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi |  9 ++++++++
- arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi   | 26 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone.dts                |  3 +++
- arch/arm/boot/dts/am335x-boneblack.dts           |  3 +++
- 4 files changed, 41 insertions(+)
- create mode 100644 arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi
-
-diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 78cee3a..b9da76b 100644
---- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-+++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -150,6 +150,15 @@
- 		>;
- 	};
- 
-+	spi0_pins: pinmux_spi0_pins {
-+		pinctrl-single,pins = <
-+			0x150 (PIN_INPUT_PULLUP | MUX_MODE0)	/* spi0_sclk.spi0_sclk */
-+			0x154 (PIN_INPUT_PULLUP | MUX_MODE0)	/* spi0_d0.spi0_d0 */
-+			0x158 (PIN_OUTPUT_PULLUP | MUX_MODE0)	/* spi0_d1.spi0_d1 */
-+			0x15c (PIN_OUTPUT_PULLUP | MUX_MODE0)	/* spi0_cs0.spi0_cs0 */
-+		>;
-+	};
-+
- 	uart0_pins: pinmux_uart0_pins {
- 		pinctrl-single,pins = <
- 			0x170 (PIN_INPUT_PULLUP | MUX_MODE0)	/* uart0_rxd.uart0_rxd */
-diff --git a/arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi b/arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi
-new file mode 100644
-index 0000000..93c5d3e
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi
-@@ -0,0 +1,26 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&spi0 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&spi0_pins>;
-+	status = "okay";
-+
-+	spidev0: spi@0 {
-+		compatible = "spidev";
-+		reg = <0>;
-+		spi-max-frequency = <16000000>;
-+		spi-cpha;
-+	};
-+
-+	spidev1: spi@1 {
-+		compatible = "spidev";
-+		reg = <1>;
-+		spi-max-frequency = <16000000>;
-+	};
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index 875dbff..175051f 100644
---- a/arch/arm/boot/dts/am335x-bone.dts
-+++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -34,6 +34,9 @@
- 	status = "okay";
- };
- 
-+/* spi0: P9.17, P9.18, P9.21, P9.22 */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
- /* uart1: P9.24, P9.26 */
- /* #include "am335x-bone-ttyO1.dtsi" */
- /* uart2: P9.21, P9.22 */
-diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index 8781178..2338611 100644
---- a/arch/arm/boot/dts/am335x-boneblack.dts
-+++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -28,6 +28,9 @@
- 
- #include "am335x-boneblack-emmc.dtsi"
- 
-+/* spi0: P9.17, P9.18, P9.21, P9.22 */
-+/* #include "am335x-bone-spi0-spidev.dtsi" */
-+
- /* uart1: P9.24, P9.26 */
- /* #include "am335x-bone-ttyO1.dtsi" */
- /* uart2: P9.21, P9.22 */
--- 
-2.1.0
-
diff --git a/patches/beaglebone/pinmux/0005-am335x-bone-common-pinmux-i2c1-i2c2.patch b/patches/beaglebone/pinmux/0007-pinmux-i2c.patch
similarity index 84%
rename from patches/beaglebone/pinmux/0005-am335x-bone-common-pinmux-i2c1-i2c2.patch
rename to patches/beaglebone/pinmux/0007-pinmux-i2c.patch
index 7d37d4f21..6a8142bb1 100644
--- a/patches/beaglebone/pinmux/0005-am335x-bone-common-pinmux-i2c1-i2c2.patch
+++ b/patches/beaglebone/pinmux/0007-pinmux-i2c.patch
@@ -1,7 +1,7 @@
-From 08e4938480c6a7e07fc6d65a9d6ddb62e207a6cf Mon Sep 17 00:00:00 2001
+From 700973dce4f694718a0dc4e237a1e684d189196b Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 10:15:07 -0500
-Subject: [PATCH 05/19] am335x-bone-common: pinmux i2c1/i2c2
+Date: Fri, 19 Sep 2014 08:56:28 -0500
+Subject: [PATCH 07/20] pinmux: i2c
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
@@ -10,10 +10,10 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
  2 files changed, 46 insertions(+)
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 793d94b..04beb88 100644
+index f4bfdcd..df72b92 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -98,6 +98,20 @@
+@@ -32,6 +32,20 @@
  		>;
  	};
  
@@ -31,14 +31,14 @@ index 793d94b..04beb88 100644
 +		>;
 +	};
 +
- 	mmc1_pins: pinmux_mmc1_pins {
+ 	uart0_pins: pinmux_uart0_pins {
  		pinctrl-single,pins = <
- 			0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
+ 			0x170 (PIN_INPUT_PULLUP | MUX_MODE0)	/* uart0_rxd.uart0_rxd */
 diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
-index 7ca7df6..6ef4bab 100644
+index 97a7d93..32540b9 100644
 --- a/arch/arm/boot/dts/am335x-bone-common.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
-@@ -111,6 +111,38 @@
+@@ -112,6 +112,38 @@
  		reg = <0x24>;
  	};
  
diff --git a/patches/beaglebone/pinmux/0008-pinmux-uart.patch b/patches/beaglebone/pinmux/0008-pinmux-uart.patch
new file mode 100644
index 000000000..33c547c61
--- /dev/null
+++ b/patches/beaglebone/pinmux/0008-pinmux-uart.patch
@@ -0,0 +1,248 @@
+From 7b86dd6fb6ceae66bb07eefd63e9d44c1c7e8173 Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Fri, 19 Sep 2014 08:58:59 -0500
+Subject: [PATCH 08/20] pinmux: uart
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-ttyO1.dtsi | 18 ++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-ttyO2.dtsi | 18 ++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-ttyO4.dtsi | 18 ++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-ttyO5.dtsi | 18 ++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone.dts        | 13 +++++++++++++
+ arch/arm/boot/dts/am335x-boneblack.dts   | 13 +++++++++++++
+ arch/arm/boot/dts/am335x-ttyO1.dtsi      | 14 ++++++++++++++
+ arch/arm/boot/dts/am335x-ttyO2.dtsi      | 14 ++++++++++++++
+ arch/arm/boot/dts/am335x-ttyO4.dtsi      | 14 ++++++++++++++
+ arch/arm/boot/dts/am335x-ttyO5.dtsi      | 14 ++++++++++++++
+ 10 files changed, 154 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO1.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO2.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO4.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-ttyO5.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-ttyO1.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-ttyO2.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-ttyO4.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-ttyO5.dtsi
+
+diff --git a/arch/arm/boot/dts/am335x-bone-ttyO1.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO1.dtsi
+new file mode 100644
+index 0000000..6bf4a0d
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-ttyO1.dtsi
+@@ -0,0 +1,18 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++#include "am335x-ttyO1.dtsi"
++
++&ocp {
++	P9_24_pinmux {
++		mode = "uart";
++	};
++	P9_26_pinmux {
++		mode = "uart";
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-ttyO2.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO2.dtsi
+new file mode 100644
+index 0000000..c2f5d09
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-ttyO2.dtsi
+@@ -0,0 +1,18 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++#include "am335x-ttyO2.dtsi"
++
++&ocp {
++	P9_21_pinmux {
++		mode = "uart";
++	};
++	P9_22_pinmux {
++		mode = "uart";
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-ttyO4.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO4.dtsi
+new file mode 100644
+index 0000000..0d04a81
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-ttyO4.dtsi
+@@ -0,0 +1,18 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++#include "am335x-ttyO4.dtsi"
++
++&ocp {
++	P9_11_pinmux {
++		mode = "uart";
++	};
++	P9_13_pinmux {
++		mode = "uart";
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-ttyO5.dtsi b/arch/arm/boot/dts/am335x-bone-ttyO5.dtsi
+new file mode 100644
+index 0000000..19ddeee
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-ttyO5.dtsi
+@@ -0,0 +1,18 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++#include "am335x-ttyO5.dtsi"
++
++&ocp {
++	P8_37_pinmux {
++		mode = "uart";
++	};
++	P8_38_pinmux {
++		mode = "uart";
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index 6c70507..46067e0 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -44,3 +44,16 @@
+ &aes {
+ 	status = "okay";
+ };
++
++/* uart1: P9.24, P9.26 */
++#include "am335x-ttyO1.dtsi"
++/* #include "am335x-bone-ttyO1.dtsi" */
++/* uart2: P9.21, P9.22 */
++#include "am335x-ttyO2.dtsi"
++/* #include "am335x-bone-ttyO2.dtsi" */
++/* uart4: P9.11, P9.13 */
++#include "am335x-ttyO4.dtsi"
++/* #include "am335x-bone-ttyO4.dtsi" */
++/* uart5: P8.37, P8.38 */
++#include "am335x-ttyO5.dtsi"
++/* #include "am335x-bone-ttyO5.dtsi" */
+diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
+index 55326d9..175b724 100644
+--- a/arch/arm/boot/dts/am335x-boneblack.dts
++++ b/arch/arm/boot/dts/am335x-boneblack.dts
+@@ -40,3 +40,16 @@
+ #include "am335x-boneblack-emmc.dtsi"
+ /* HDMI: without audio */
+ #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
++
++/* uart1: P9.24, P9.26 */
++#include "am335x-ttyO1.dtsi"
++/* #include "am335x-bone-ttyO1.dtsi" */
++/* uart2: P9.21, P9.22 */
++#include "am335x-ttyO2.dtsi"
++/* #include "am335x-bone-ttyO2.dtsi" */
++/* uart4: P9.11, P9.13 */
++#include "am335x-ttyO4.dtsi"
++/* #include "am335x-bone-ttyO4.dtsi" */
++/* uart5: P8.37, P8.38 boneblack: hdmi has to be disabled for ttyO5 */
++#include "am335x-ttyO5.dtsi"
++/* #include "am335x-bone-ttyO5.dtsi" */
+diff --git a/arch/arm/boot/dts/am335x-ttyO1.dtsi b/arch/arm/boot/dts/am335x-ttyO1.dtsi
+new file mode 100644
+index 0000000..039763a
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-ttyO1.dtsi
+@@ -0,0 +1,14 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&uart1 {
++	pinctrl-names = "default";
++	pinctrl-0 = <>;
++
++	status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-ttyO2.dtsi b/arch/arm/boot/dts/am335x-ttyO2.dtsi
+new file mode 100644
+index 0000000..a7c3117
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-ttyO2.dtsi
+@@ -0,0 +1,14 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&uart2 {
++	pinctrl-names = "default";
++	pinctrl-0 = <>;
++
++	status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-ttyO4.dtsi b/arch/arm/boot/dts/am335x-ttyO4.dtsi
+new file mode 100644
+index 0000000..76fb6a2
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-ttyO4.dtsi
+@@ -0,0 +1,14 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&uart4 {
++	pinctrl-names = "default";
++	pinctrl-0 = <>;
++
++	status = "okay";
++};
+diff --git a/arch/arm/boot/dts/am335x-ttyO5.dtsi b/arch/arm/boot/dts/am335x-ttyO5.dtsi
+new file mode 100644
+index 0000000..5675eeb
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-ttyO5.dtsi
+@@ -0,0 +1,14 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&uart5 {
++	pinctrl-names = "default";
++	pinctrl-0 = <>;
++
++	status = "okay";
++};
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux/0017-am335x-bone-common-pinmux-spi1-spidev.patch b/patches/beaglebone/pinmux/0009-pinmux-spi.patch
similarity index 60%
rename from patches/beaglebone/pinmux/0017-am335x-bone-common-pinmux-spi1-spidev.patch
rename to patches/beaglebone/pinmux/0009-pinmux-spi.patch
index 85b16877a..b225e1bff 100644
--- a/patches/beaglebone/pinmux/0017-am335x-bone-common-pinmux-spi1-spidev.patch
+++ b/patches/beaglebone/pinmux/0009-pinmux-spi.patch
@@ -1,27 +1,38 @@
-From eb1bd98b0785df93fa070df238e16a4e3275a913 Mon Sep 17 00:00:00 2001
+From 0447947c7bb91dae4592b68931f00e41407b5e4f Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 28 Aug 2014 10:01:06 -0500
-Subject: [PATCH 17/19] am335x-bone-common: pinmux spi1-spidev
+Date: Fri, 19 Sep 2014 09:05:19 -0500
+Subject: [PATCH 09/20] pinmux: spi
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 21 +++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-spi1-spidev.dtsi   | 26 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-spi1a-spidev.dtsi  | 26 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone.dts                | 20 +++++++++++++++++-
- arch/arm/boot/dts/am335x-boneblack.dts           | 20 +++++++++++++++++-
- 5 files changed, 111 insertions(+), 2 deletions(-)
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 30 +++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi   | 41 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-spi1-spidev.dtsi   | 41 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-spi1a-spidev.dtsi  | 41 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone.dts                | 21 ++++++++++++
+ arch/arm/boot/dts/am335x-boneblack.dts           | 21 ++++++++++++
+ 6 files changed, 195 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-spi1-spidev.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-spi1a-spidev.dtsi
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 827a9f2..0503b70 100644
+index bf206aa..4a82558 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -274,6 +274,27 @@
+@@ -37,6 +37,36 @@
  		>;
  	};
  
++	spi0_pins: pinmux_spi0_pins {
++		pinctrl-single,pins = <
++			0x150 (PIN_INPUT_PULLUP | MUX_MODE0)	/* spi0_sclk.spi0_sclk */
++			0x154 (PIN_INPUT_PULLUP | MUX_MODE0)	/* spi0_d0.spi0_d0 */
++			0x158 (PIN_OUTPUT_PULLUP | MUX_MODE0)	/* spi0_d1.spi0_d1 */
++			0x15c (PIN_OUTPUT_PULLUP | MUX_MODE0)	/* spi0_cs0.spi0_cs0 */
++		>;
++	};
++
 +	spi1_pins: pinmux_spi1_pins {
 +		pinctrl-single,pins = <
 +			0x190 0x33	/* mcasp0_aclkx.spi1_sclk, INPUT_PULLUP | MODE3 */
@@ -46,12 +57,59 @@ index 827a9f2..0503b70 100644
  	uart0_pins: pinmux_uart0_pins {
  		pinctrl-single,pins = <
  			0x170 (PIN_INPUT_PULLUP | MUX_MODE0)	/* uart0_rxd.uart0_rxd */
+diff --git a/arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi b/arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi
+new file mode 100644
+index 0000000..b914369
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-spi0-spidev.dtsi
+@@ -0,0 +1,41 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P9_17_pinmux {
++		status = "disabled";
++	};
++	P9_18_pinmux {
++		status = "disabled";
++	};
++	P9_21_pinmux {
++		status = "disabled";
++	};
++	P9_22_pinmux {
++		status = "disabled";
++	};
++};
++
++&spi0 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&spi0_pins>;
++	status = "okay";
++
++	spidev0: spi@0 {
++		compatible = "spidev";
++		reg = <0>;
++		spi-max-frequency = <16000000>;
++		spi-cpha;
++	};
++
++	spidev1: spi@1 {
++		compatible = "spidev";
++		reg = <1>;
++		spi-max-frequency = <16000000>;
++	};
++};
 diff --git a/arch/arm/boot/dts/am335x-bone-spi1-spidev.dtsi b/arch/arm/boot/dts/am335x-bone-spi1-spidev.dtsi
 new file mode 100644
-index 0000000..5bc03e8
+index 0000000..c116d60
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-spi1-spidev.dtsi
-@@ -0,0 +1,26 @@
+@@ -0,0 +1,41 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -60,6 +118,21 @@ index 0000000..5bc03e8
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_28_pinmux {
++		status = "disabled";
++	};
++	P9_29_pinmux {
++		status = "disabled";
++	};
++	P9_30_pinmux {
++		status = "disabled";
++	};
++	P9_31_pinmux {
++		status = "disabled";
++	};
++};
++
 +&spi1 {
 +	pinctrl-names = "default";
 +	pinctrl-0 = <&spi1_pins>;
@@ -80,10 +153,10 @@ index 0000000..5bc03e8
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone-spi1a-spidev.dtsi b/arch/arm/boot/dts/am335x-bone-spi1a-spidev.dtsi
 new file mode 100644
-index 0000000..3aded7b
+index 0000000..084fa8b
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-spi1a-spidev.dtsi
-@@ -0,0 +1,26 @@
+@@ -0,0 +1,41 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -92,6 +165,21 @@ index 0000000..3aded7b
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_20_pinmux {
++		status = "disabled";
++	};
++	P9_29_pinmux {
++		status = "disabled";
++	};
++	P9_30_pinmux {
++		status = "disabled";
++	};
++	P9_42_pinmux {
++		status = "disabled";
++	};
++};
++
 +&spi1 {
 +	pinctrl-names = "default";
 +	pinctrl-0 = <&spi1a_pins>;
@@ -111,21 +199,20 @@ index 0000000..3aded7b
 +	};
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index 8c049a0..73d834e 100644
+index 46067e0..c29901f 100644
 --- a/arch/arm/boot/dts/am335x-bone.dts
 +++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -34,9 +34,27 @@
+@@ -45,6 +45,27 @@
  	status = "okay";
  };
  
--/* spi0: P9.17, P9.18, P9.21, P9.22 */
 +/* spi0: */
 +/* P9.17 spi0_cs0 */
 +/* P9.18 spi0_d1 */
 +/* P9.21 spi0_d0 */
 +/* P9.22 spi0_sclk */
- /* #include "am335x-bone-spi0-spidev.dtsi" */
- 
++/* #include "am335x-bone-spi0-spidev.dtsi" */
++
 +/* spi1: */
 +/* P9.31 spi1_sclk */
 +/* P9.29 spi1_d0 */
@@ -141,24 +228,23 @@ index 8c049a0..73d834e 100644
 +/* #include "am335x-bone-spi1a-spidev.dtsi" */
 +
  /* uart1: P9.24, P9.26 */
+ #include "am335x-ttyO1.dtsi"
  /* #include "am335x-bone-ttyO1.dtsi" */
- /* uart2: P9.21, P9.22 */
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index 3b7dbdb..86c9b31 100644
+index 175b724..1908dba 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
 +++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -28,9 +28,27 @@
+@@ -41,6 +41,27 @@
+ /* HDMI: without audio */
+ #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
  
- #include "am335x-boneblack-emmc.dtsi"
- 
--/* spi0: P9.17, P9.18, P9.21, P9.22 */
 +/* spi0: */
 +/* P9.17 spi0_cs0 */
 +/* P9.18 spi0_d1 */
 +/* P9.21 spi0_d0 */
 +/* P9.22 spi0_sclk */
- /* #include "am335x-bone-spi0-spidev.dtsi" */
- 
++/* #include "am335x-bone-spi0-spidev.dtsi" */
++
 +/* spi1: */
 +/* P9.31 spi1_sclk */
 +/* P9.29 spi1_d0 */
@@ -174,8 +260,8 @@ index 3b7dbdb..86c9b31 100644
 +/* #include "am335x-bone-spi1a-spidev.dtsi" */
 +
  /* uart1: P9.24, P9.26 */
+ #include "am335x-ttyO1.dtsi"
  /* #include "am335x-bone-ttyO1.dtsi" */
- /* uart2: P9.21, P9.22 */
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/pinmux/0009-am335x-bone-ti-tscadc-4-wire.patch b/patches/beaglebone/pinmux/0010-node-4-wire-touchscreen.patch
similarity index 87%
rename from patches/beaglebone/pinmux/0009-am335x-bone-ti-tscadc-4-wire.patch
rename to patches/beaglebone/pinmux/0010-node-4-wire-touchscreen.patch
index 5a3f9242a..993bd98b1 100644
--- a/patches/beaglebone/pinmux/0009-am335x-bone-ti-tscadc-4-wire.patch
+++ b/patches/beaglebone/pinmux/0010-node-4-wire-touchscreen.patch
@@ -1,7 +1,7 @@
-From 18c1efbebd44090f7fea8a99917d061d2ea357ba Mon Sep 17 00:00:00 2001
+From a0c117ffbb1852acd6aea75307aaeb7103259e1a Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 10:36:09 -0500
-Subject: [PATCH 09/19] am335x-bone: ti-tscadc-4-wire
+Date: Fri, 19 Sep 2014 09:08:16 -0500
+Subject: [PATCH 10/20] node: 4-wire touchscreen
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
diff --git a/patches/beaglebone/pinmux/0010-am335x-bone-common-pinmux-led-gpio1_18-gpio1_28-gpio.patch b/patches/beaglebone/pinmux/0011-node-led-gpio.patch
similarity index 60%
rename from patches/beaglebone/pinmux/0010-am335x-bone-common-pinmux-led-gpio1_18-gpio1_28-gpio.patch
rename to patches/beaglebone/pinmux/0011-node-led-gpio.patch
index 093adef82..ddf3ae538 100644
--- a/patches/beaglebone/pinmux/0010-am335x-bone-common-pinmux-led-gpio1_18-gpio1_28-gpio.patch
+++ b/patches/beaglebone/pinmux/0011-node-led-gpio.patch
@@ -1,28 +1,37 @@
-From db014b36cea595a84f248f1e43504506854faead Mon Sep 17 00:00:00 2001
+From cc3c0a4f8425638ff7c1a8233a19787bd3bf1812 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 11:08:46 -0500
-Subject: [PATCH 10/19] am335x-bone-common: pinmux led
- (gpio1_18/gpio1_28/gpio3_19)
+Date: Fri, 19 Sep 2014 09:11:50 -0500
+Subject: [PATCH 11/20] node: led-gpio
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 21 +++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-led-gpio1-18.dtsi  | 23 +++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-led-gpio1-28.dtsi  | 23 +++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-led-gpio3-19.dtsi  | 23 +++++++++++++++++++++++
- 4 files changed, 90 insertions(+)
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi   | 29 ++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-led-gpio1-18.dtsi    | 30 +++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-led-gpio1-28.dtsi    | 29 ++++++++++++++++
+ .../boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi  | 39 ++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-led-gpio3-19.dtsi    | 30 +++++++++++++++++
+ 5 files changed, 157 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-led-gpio1-18.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-led-gpio1-28.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-led-gpio3-19.dtsi
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 0f22048..83d824b 100644
+index 9b52339..8276c83 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -91,6 +91,27 @@
+@@ -25,6 +25,35 @@
  		>;
  	};
  
++	/* bbb-exp-c */
++	user_leds_s1: user_leds_s1 {
++		pinctrl-single,pins = <
++			0x98 0x7	/* gpmc_wen.gpio2_4, OUTPUT | MODE7 */
++			0x9c 0x7	/* gpmc_ben0_cle.gpio2_5, OUTPUT | MODE7 */
++		>;
++	};
++
 +	/* lcd4-01-00a0 */
 +	gpio1_18_led_pins: pinmux_gpio1_18_led_pins {
 +		pinctrl-single,pins = <
@@ -49,10 +58,10 @@ index 0f22048..83d824b 100644
  			0x188 (PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c0_sda.i2c0_sda */
 diff --git a/arch/arm/boot/dts/am335x-bone-led-gpio1-18.dtsi b/arch/arm/boot/dts/am335x-bone-led-gpio1-18.dtsi
 new file mode 100644
-index 0000000..14c57c7
+index 0000000..ae10465
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-led-gpio1-18.dtsi
-@@ -0,0 +1,23 @@
+@@ -0,0 +1,30 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -61,6 +70,13 @@ index 0000000..14c57c7
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_14_pinmux {
++		/* gpio1[18] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	gpio-leds-cape-lcd {
 +		compatible = "gpio-leds";
@@ -78,10 +94,10 @@ index 0000000..14c57c7
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone-led-gpio1-28.dtsi b/arch/arm/boot/dts/am335x-bone-led-gpio1-28.dtsi
 new file mode 100644
-index 0000000..7c54f98
+index 0000000..5a1ec39
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-led-gpio1-28.dtsi
-@@ -0,0 +1,23 @@
+@@ -0,0 +1,29 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -90,6 +106,12 @@ index 0000000..7c54f98
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_12_pinmux {
++		status = "disabled";
++	};
++};
++
 +/ {
 +	gpio-leds-cape-lcd {
 +		compatible = "gpio-leds";
@@ -105,12 +127,57 @@ index 0000000..7c54f98
 +		};
 +	};
 +};
+diff --git a/arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi b/arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi
+new file mode 100644
+index 0000000..c80d580
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi
+@@ -0,0 +1,39 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P8_09_pinmux {
++		status = "disabled";
++	};
++	P8_10_pinmux {
++		status = "disabled";
++	};
++};
++
++/ {
++	gpio-leds-cape-lcd {
++		compatible = "gpio-leds";
++		pinctrl-names = "default";
++
++		pinctrl-0 = <&user_leds_s1>;
++
++		lcd-led0 {
++			label = "lcd:green:usr0";
++			gpios = <&gpio2 4 0>;
++			linux,default-trigger = "heartbeat";
++			default-state = "off";
++		};
++
++		lcd-led1 {
++			label = "lcd:green:usr1";
++			gpios = <&gpio2 5 0>;
++			linux,default-trigger = "mmc0";
++			default-state = "off";
++		};
++	};
++};
 diff --git a/arch/arm/boot/dts/am335x-bone-led-gpio3-19.dtsi b/arch/arm/boot/dts/am335x-bone-led-gpio3-19.dtsi
 new file mode 100644
-index 0000000..e73fc10
+index 0000000..619831f
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-led-gpio3-19.dtsi
-@@ -0,0 +1,23 @@
+@@ -0,0 +1,30 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -119,6 +186,13 @@ index 0000000..e73fc10
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_27_pinmux {
++		/* gpio3[19] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	gpio-leds-cape-lcd {
 +		compatible = "gpio-leds";
diff --git a/patches/beaglebone/pinmux/0011-am335x-bone-common-pinmux-gpio-backlight-gpio1_18.patch b/patches/beaglebone/pinmux/0012-node-backlight-gpio.patch
similarity index 72%
rename from patches/beaglebone/pinmux/0011-am335x-bone-common-pinmux-gpio-backlight-gpio1_18.patch
rename to patches/beaglebone/pinmux/0012-node-backlight-gpio.patch
index 9654fcb15..d9cfbd295 100644
--- a/patches/beaglebone/pinmux/0011-am335x-bone-common-pinmux-gpio-backlight-gpio1_18.patch
+++ b/patches/beaglebone/pinmux/0012-node-backlight-gpio.patch
@@ -1,21 +1,21 @@
-From be3202df9a20564765647c5acc602b3df355c910 Mon Sep 17 00:00:00 2001
+From 437bbb51396bf97eefc26114cb7d915927904280 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 11:14:27 -0500
-Subject: [PATCH 11/19] am335x-bone-common: pinmux gpio-backlight (gpio1_18)
+Date: Fri, 19 Sep 2014 09:13:08 -0500
+Subject: [PATCH 12/20] node: backlight-gpio
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-bl-gpio1-18.dtsi   | 18 ++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-bl-gpio1-18.dtsi   | 25 ++++++++++++++++++++++++
  arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi |  6 ++++++
- 2 files changed, 24 insertions(+)
+ 2 files changed, 31 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-bl-gpio1-18.dtsi
 
 diff --git a/arch/arm/boot/dts/am335x-bone-bl-gpio1-18.dtsi b/arch/arm/boot/dts/am335x-bone-bl-gpio1-18.dtsi
 new file mode 100644
-index 0000000..a8dae4a
+index 0000000..d66301c
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-bl-gpio1-18.dtsi
-@@ -0,0 +1,18 @@
+@@ -0,0 +1,25 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -24,6 +24,13 @@ index 0000000..a8dae4a
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_14_pinmux {
++		/* gpio1[18] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	backlight {
 +		status = "okay";
@@ -35,10 +42,10 @@ index 0000000..a8dae4a
 +	};
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 83d824b..2e6f158 100644
+index 8276c83..1a116b8 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -16,6 +16,12 @@
+@@ -54,6 +54,12 @@
  		>;
  	};
  
@@ -48,9 +55,9 @@ index 83d824b..2e6f158 100644
 +		>;
 +	};
 +
- 	clkout2_pin: pinmux_clkout2_pin {
+ 	i2c0_pins: pinmux_i2c0_pins {
  		pinctrl-single,pins = <
- 			0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)	/* xdma_event_intr1.clkout2 */
+ 			0x188 (PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c0_sda.i2c0_sda */
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/pinmux/0013-am335x-bone-common-pinmux-lcd-panels.patch b/patches/beaglebone/pinmux/0013-am335x-bone-common-pinmux-lcd-panels.patch
deleted file mode 100644
index 878d9ac57..000000000
--- a/patches/beaglebone/pinmux/0013-am335x-bone-common-pinmux-lcd-panels.patch
+++ /dev/null
@@ -1,230 +0,0 @@
-From 700a99361c73bad8a60790da4df83689e5261f62 Mon Sep 17 00:00:00 2001
-From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 11:44:40 -0500
-Subject: [PATCH 13/19] am335x-bone-common: pinmux lcd panels
-
-Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
----
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 31 ++++++++++++++
- arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi | 51 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi | 50 +++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi | 50 +++++++++++++++++++++++
- 4 files changed, 182 insertions(+)
- create mode 100644 arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi
-
-diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index cec6ca8..347e88f 100644
---- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-+++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -22,6 +22,37 @@
- 		>;
- 	};
- 
-+	bbcape_lcd_pins: bbcape_lcd_pins {
-+		pinctrl-single,pins = <
-+			0xa0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data0.lcd_data0 */
-+			0xa4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data1.lcd_data1 */
-+			0xa8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data2.lcd_data2 */
-+			0xac (PIN_OUTPUT | MUX_MODE0)	/* lcd_data3.lcd_data3 */
-+			0xb0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data4.lcd_data4 */
-+			0xb4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data5.lcd_data5 */
-+			0xb8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data6.lcd_data6 */
-+			0xbc (PIN_OUTPUT | MUX_MODE0)	/* lcd_data7.lcd_data7 */
-+			0xc0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data8.lcd_data8 */
-+			0xc4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data9.lcd_data9 */
-+			0xc8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data10.lcd_data10 */
-+			0xcc (PIN_OUTPUT | MUX_MODE0)	/* lcd_data11.lcd_data11 */
-+			0xd0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data12.lcd_data12 */
-+			0xd4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data13.lcd_data13 */
-+			0xd8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data14.lcd_data14 */
-+			0xdc (PIN_OUTPUT | MUX_MODE0)	/* lcd_data15.lcd_data15 */
-+			0xe0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_vsync.lcd_vsync */
-+			0xe4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_hsync.lcd_hsync */
-+			0xe8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_pclk.lcd_pclk */
-+			0xec (PIN_OUTPUT | MUX_MODE0)	/* lcd_ac_bias_en.lcd_ac_bias_en (lcd_en) */
-+		>;
-+	};
-+
-+	bbcape_lcd4_disen_pins: bbcape_lcd4_disen_pins {
-+		pinctrl-single,pins = <
-+			0x1a4 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* mcasp0_fsr.gpio3[19] (lcd_disen) */
-+		>;
-+	};
-+
- 	clkout2_pin: pinmux_clkout2_pin {
- 		pinctrl-single,pins = <
- 			0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)	/* xdma_event_intr1.clkout2 */
-diff --git a/arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi b/arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi
-new file mode 100644
-index 0000000..e262e1c
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi
-@@ -0,0 +1,51 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&lcdc {
-+	status = "okay";
-+};
-+
-+/ {
-+	panel {
-+		status = "okay";
-+		compatible = "ti,tilcdc,panel";
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&bbcape_lcd_pins>;
-+		panel-info {
-+			ac-bias           = <255>;
-+			ac-bias-intrpt    = <0>;
-+			dma-burst-sz      = <16>;
-+			bpp               = <16>;
-+			fdd               = <0x80>;
-+			sync-edge         = <0>;
-+			sync-ctrl         = <1>;
-+			raster-order      = <0>;
-+			fifo-th           = <0>;
-+			invert-pxl-clk;
-+		};
-+		display-timings {
-+			/* Settings for CDTech_S035Q01 / LCD3 cape: */
-+			native-mode = <&timing0>;
-+			timing0: 320x240 {
-+				clock-frequency = <8000000>;
-+				hactive = <320>;
-+				vactive = <240>;
-+				hfront-porch = <59>;
-+				hback-porch = <22>;
-+				hsync-len = <48>;
-+				vback-porch = <12>;
-+				vfront-porch = <23>;
-+				vsync-len = <2>;
-+				hsync-active = <0>;
-+				vsync-active = <0>;
-+				de-active = <1>;
-+				pixelclk-active = <0>;
-+			};
-+		};
-+	};
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi b/arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi
-new file mode 100644
-index 0000000..2df34ce
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi
-@@ -0,0 +1,50 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&lcdc {
-+	status = "okay";
-+};
-+
-+/ {
-+	panel {
-+		status = "okay";
-+		compatible = "ti,tilcdc,panel";
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&bbcape_lcd_pins &bbcape_lcd4_disen_pins>;
-+		panel-info {
-+			ac-bias           = <255>;
-+			ac-bias-intrpt    = <0>;
-+			dma-burst-sz      = <16>;
-+			bpp               = <16>;
-+			fdd               = <0x80>;
-+			sync-edge         = <0>;
-+			sync-ctrl         = <1>;
-+			raster-order      = <0>;
-+			fifo-th           = <0>;
-+		};
-+		display-timings {
-+			native-mode = <&timing0>;
-+			/* www.newhavendisplay.com/app_notes/OTA5180A.pdf */
-+			timing0: 480x272 {
-+				clock-frequency = <9200000>;
-+				hactive = <480>;
-+				vactive = <272>;
-+				hfront-porch = <8>;
-+				hback-porch = <47>;
-+				hsync-len = <41>;
-+				vback-porch = <2>;
-+				vfront-porch = <3>;
-+				vsync-len = <10>;
-+				hsync-active = <0>;
-+				vsync-active = <0>;
-+				de-active = <1>;
-+				pixelclk-active = <0>;
-+			};
-+		};
-+	};
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi b/arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi
-new file mode 100644
-index 0000000..cbc5e66
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi
-@@ -0,0 +1,50 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&lcdc {
-+	status = "okay";
-+};
-+
-+/ {
-+	panel {
-+		status = "okay";
-+		compatible = "ti,tilcdc,panel";
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&bbcape_lcd_pins>;
-+		panel-info {
-+			ac-bias           = <255>;
-+			ac-bias-intrpt    = <0>;
-+			dma-burst-sz      = <16>;
-+			bpp               = <16>;
-+			fdd               = <0x80>;
-+			sync-edge         = <0>;
-+			sync-ctrl         = <1>;
-+			raster-order      = <0>;
-+			fifo-th           = <0>;
-+		};
-+		display-timings {
-+			native-mode = <&timing0>;
-+			/* Settings for ThreeFive S9700RTWV35TR / LCD7 cape: */
-+			timing0: 800x480 {
-+				clock-frequency = <30000000>;
-+				hactive = <800>;
-+				vactive = <480>;
-+				hfront-porch = <40>;
-+				hback-porch = <40>;
-+				hsync-len = <48>;
-+				vback-porch = <30>;
-+				vfront-porch = <13>;
-+				vsync-len = <3>;
-+				hsync-active = <0>;
-+				vsync-active = <0>;
-+				de-active = <1>;
-+				pixelclk-active = <0>;
-+			};
-+		};
-+	};
-+};
--- 
-2.1.0
-
diff --git a/patches/beaglebone/pinmux/0012-am335x-bone-common-pinmux-keymaps.patch b/patches/beaglebone/pinmux/0013-node-keymap.patch
similarity index 50%
rename from patches/beaglebone/pinmux/0012-am335x-bone-common-pinmux-keymaps.patch
rename to patches/beaglebone/pinmux/0013-node-keymap.patch
index c767428fb..7a5e69b9a 100644
--- a/patches/beaglebone/pinmux/0012-am335x-bone-common-pinmux-keymaps.patch
+++ b/patches/beaglebone/pinmux/0013-node-keymap.patch
@@ -1,24 +1,28 @@
-From 65434b8f0fedf9572b41dd7a6457b6444e2b7d86 Mon Sep 17 00:00:00 2001
+From 2f62dc7596ceea0254cf64c8861bc6d94ec6b649 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 11:38:38 -0500
-Subject: [PATCH 12/19] am335x-bone-common: pinmux keymaps
+Date: Fri, 19 Sep 2014 09:23:42 -0500
+Subject: [PATCH 13/20] node: keymap
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 33 ++++++++++++++
- arch/arm/boot/dts/am335x-bone-keymap0.dtsi       | 58 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-keymap1.dtsi       | 58 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-keymap2.dtsi       | 58 ++++++++++++++++++++++++
- 4 files changed, 207 insertions(+)
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 54 ++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-keymap0.dtsi       | 81 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-keymap1.dtsi       | 81 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-keymap2.dtsi       | 81 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-keymap3.dtsi       | 79 +++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-keymap4.dtsi       | 68 ++++++++++++++++++++
+ 6 files changed, 444 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-keymap0.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-keymap1.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-keymap2.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-keymap3.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-keymap4.dtsi
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 2e6f158..cec6ca8 100644
+index 9941568..08129d9 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -139,6 +139,39 @@
+@@ -222,6 +222,60 @@
  		>;
  	};
  
@@ -55,15 +59,36 @@ index 2e6f158..cec6ca8 100644
 +		>;
 +	};
 +
- 	mcasp0_pins_audio: mcasp0_pins_audio {
- 		pinctrl-single,pins = <
- 			0x1ac 0x00	/* mcasp0_ahclkx, OUTPUT | MODE0, Codec MCLK */
++	/* bbb-exp-c */
++	keymap3_pins: pinmux_keymap3_pins {
++		pinctrl-single,pins = <
++			0x040 0x2f	/* KEY_UP gpmc_a0.gpio1_16, INPUT | PULLDIS | MODE7 */
++			0x04c 0x2f	/* KEY_DOWN gpmc_a3.gpio1_19, INPUT | PULLDIS | MODE7 */
++			0x078 0x2f	/* KEY_RIGHT gpmc_ben1.gpio1_28, INPUT | PULLDIS | MODE7 */
++			0x164 0x2f	/* KEY_LEFT ecap0_in_pwm0_out.gpio0_7, INPUT | PULLDIS | MODE7 */
++			0x1a4 0x2f	/* KEY_ENTER mcasp0_fxr.gpio3_19, INPUT | PULLDIS | MODE7 */
++		>;
++	};
++
++	/* bb-view */
++	keymap4_pins: pinmux_keymap4_pins {
++		pinctrl-single,pins = <
++			0x044 0x2f	/* usr2 gpmc_a1.gpio1_17, INPUT | PULLDIS | MODE7 */
++			0x04c 0x2f	/* usr0 gpmc_a3.gpio1_19, INPUT | PULLDIS | MODE7 */
++			0x070 0x2f	/* usr3 gpmc_wait0.gpio0_30, INPUT | PULLDIS | MODE7 */
++			0x184 0x2f	/* usr1 uart1_txd.gpio0_15, INPUT | PULLDIS | MODE7 */
++		>;
++	};
++
+ 	/************************/
+ 	/* P8 Header            */
+ 	/************************/
 diff --git a/arch/arm/boot/dts/am335x-bone-keymap0.dtsi b/arch/arm/boot/dts/am335x-bone-keymap0.dtsi
 new file mode 100644
-index 0000000..4bfde0c
+index 0000000..8f00096
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-keymap0.dtsi
-@@ -0,0 +1,58 @@
+@@ -0,0 +1,81 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -72,6 +97,29 @@ index 0000000..4bfde0c
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_15_pinmux {
++		/* gpio1[16] */
++		status = "disabled";
++	};
++	P9_16_pinmux {
++		/* gpio1[19] */
++		status = "disabled";
++	};
++	P9_21_pinmux {
++		/* gpio0[3] */
++		status = "disabled";
++	};
++	P9_23_pinmux {
++		/* gpio1[17] */
++		status = "disabled";
++	};
++	P9_30_pinmux {
++		/* gpio3[16] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	gpio_keys {
 +		compatible = "gpio-keys";
@@ -124,10 +172,10 @@ index 0000000..4bfde0c
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone-keymap1.dtsi b/arch/arm/boot/dts/am335x-bone-keymap1.dtsi
 new file mode 100644
-index 0000000..7b23ec6
+index 0000000..58586bc
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-keymap1.dtsi
-@@ -0,0 +1,58 @@
+@@ -0,0 +1,81 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -136,6 +184,29 @@ index 0000000..7b23ec6
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_15_pinmux {
++		/* gpio1[16] */
++		status = "disabled";
++	};
++	P9_16_pinmux {
++		/* gpio1[19] */
++		status = "disabled";
++	};
++	P9_23_pinmux {
++		/* gpio1[17] */
++		status = "disabled";
++	};
++	P9_24_pinmux {
++		/* gpio0[15] */
++		status = "disabled";
++	};
++	P9_30_pinmux {
++		/* gpio3[16] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	gpio_keys {
 +		compatible = "gpio-keys";
@@ -188,10 +259,10 @@ index 0000000..7b23ec6
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone-keymap2.dtsi b/arch/arm/boot/dts/am335x-bone-keymap2.dtsi
 new file mode 100644
-index 0000000..5c86a0c
+index 0000000..944d1bb
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-keymap2.dtsi
-@@ -0,0 +1,58 @@
+@@ -0,0 +1,81 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -200,6 +271,29 @@ index 0000000..5c86a0c
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_15_pinmux {
++		/* gpio1[16] */
++		status = "disabled";
++	};
++	P9_16_pinmux {
++		/* gpio1[19] */
++		status = "disabled";
++	};
++	P9_23_pinmux {
++		/* gpio1[17] */
++		status = "disabled";
++	};
++	P9_27_pinmux {
++		/* gpio3[19] */
++		status = "disabled";
++	};
++	P9_30_pinmux {
++		/* gpio3[16] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	gpio_keys {
 +		compatible = "gpio-keys";
@@ -250,6 +344,165 @@ index 0000000..5c86a0c
 +		};
 +	};
 +};
+diff --git a/arch/arm/boot/dts/am335x-bone-keymap3.dtsi b/arch/arm/boot/dts/am335x-bone-keymap3.dtsi
+new file mode 100644
+index 0000000..cbedf50
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-keymap3.dtsi
+@@ -0,0 +1,79 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P9_12_pinmux {
++		status = "disabled";
++	};
++	P9_15_pinmux {
++		/* gpio1[16] */
++		status = "disabled";
++	};
++	P9_16_pinmux {
++		/* gpio1[19] */
++		status = "disabled";
++	};
++	P9_27_pinmux {
++		/* gpio3[19] */
++		status = "disabled";
++	};
++	P9_42_pinmux {
++		status = "disabled";
++	};
++};
++
++/ {
++	gpio_keys {
++		compatible = "gpio-keys";
++		pinctrl-names = "default";
++		pinctrl-0 = <&keymap3_pins>;
++
++		#address-cells = <1>;
++		#size-cells = <0>;
++
++		button@1 {
++			debounce_interval = <50>;
++			linux,code = <105>;
++			label = "left";
++			gpios = <&gpio0 7 0x1>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++		button@2 {
++			debounce_interval = <50>;
++			linux,code = <106>;
++			label = "right";
++			gpios = <&gpio1 28 0x1>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++		button@3 {
++			debounce_interval = <50>;
++			linux,code = <103>;
++			label = "up";
++			gpios = <&gpio1 16 0x1>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++		button@4 {
++			debounce_interval = <50>;
++			linux,code = <108>;
++			label = "down";
++			gpios = <&gpio1 19 0x1>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++		button@5 {
++			debounce_interval = <50>;
++			linux,code = <28>;
++			label = "enter";
++			gpios = <&gpio3 19 0x1>;
++			gpio-key,wakeup;
++		};
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-keymap4.dtsi b/arch/arm/boot/dts/am335x-bone-keymap4.dtsi
+new file mode 100644
+index 0000000..e18e4c3
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-keymap4.dtsi
+@@ -0,0 +1,68 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P9_11_pinmux {
++		status = "disabled";
++	};
++	P9_16_pinmux {
++		/* gpio1[19] */
++		status = "disabled";
++	};
++	P9_23_pinmux {
++		/* gpio1[17] */
++		status = "disabled";
++	};
++	P9_24_pinmux {
++		status = "disabled";
++	};
++};
++
++/ {
++	gpio_keys {
++		compatible = "gpio-keys";
++		pinctrl-names = "default";
++		pinctrl-0 = <&keymap4_pins>;
++
++		#address-cells = <1>;
++		#size-cells = <0>;
++
++		button@1 {
++			debounce_interval = <50>;
++			label = "bb-view:usr0";
++			linux,code = <0x100>;
++			gpios = <&gpio1 19 0x0>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++		button@2 {
++			debounce_interval = <50>;
++			label = "bb-view:usr1";
++			linux,code = <0x101>;
++			gpios = <&gpio0 15 0x0>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++		button@3 {
++			debounce_interval = <50>;
++			label = "bb-view:usr2";
++			linux,code = <0x102>;
++			gpios = <&gpio1 17 0x0>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++		button@4 {
++			debounce_interval = <50>;
++			label = "bb-view:usr3";
++			linux,code = <0x103>;
++			gpios = <&gpio0 30 0x0>;
++			gpio-key,wakeup;
++			autorepeat;
++		};
++	};
++};
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/pinmux/0014-node-panel.patch b/patches/beaglebone/pinmux/0014-node-panel.patch
new file mode 100644
index 000000000..ec689ec6e
--- /dev/null
+++ b/patches/beaglebone/pinmux/0014-node-panel.patch
@@ -0,0 +1,461 @@
+From f800f21d1b9ab771ae48d21f7c499873aea5f771 Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Fri, 19 Sep 2014 09:26:21 -0500
+Subject: [PATCH 14/20] node: panel
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi   | 71 +++++++++++++++++++
+ .../boot/dts/am335x-bone-panel-1240x600-24bit.dtsi | 82 ++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi   | 61 ++++++++++++++++
+ .../dts/am335x-bone-panel-480x272-bgrx_16bpp.dtsi  | 59 ++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi   | 62 ++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi   | 62 ++++++++++++++++
+ 6 files changed, 397 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-panel-480x272-bgrx_16bpp.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi
+
+diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+index 406f778..f845c67 100644
+--- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+@@ -118,6 +118,77 @@
+ 		>;
+ 	};
+ 
++	bbcape_lcd_pins: bbcape_lcd_pins {
++		pinctrl-single,pins = <
++			0xa0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data0.lcd_data0 */
++			0xa4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data1.lcd_data1 */
++			0xa8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data2.lcd_data2 */
++			0xac (PIN_OUTPUT | MUX_MODE0)	/* lcd_data3.lcd_data3 */
++			0xb0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data4.lcd_data4 */
++			0xb4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data5.lcd_data5 */
++			0xb8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data6.lcd_data6 */
++			0xbc (PIN_OUTPUT | MUX_MODE0)	/* lcd_data7.lcd_data7 */
++			0xc0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data8.lcd_data8 */
++			0xc4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data9.lcd_data9 */
++			0xc8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data10.lcd_data10 */
++			0xcc (PIN_OUTPUT | MUX_MODE0)	/* lcd_data11.lcd_data11 */
++			0xd0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data12.lcd_data12 */
++			0xd4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data13.lcd_data13 */
++			0xd8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_data14.lcd_data14 */
++			0xdc (PIN_OUTPUT | MUX_MODE0)	/* lcd_data15.lcd_data15 */
++			0xe0 (PIN_OUTPUT | MUX_MODE0)	/* lcd_vsync.lcd_vsync */
++			0xe4 (PIN_OUTPUT | MUX_MODE0)	/* lcd_hsync.lcd_hsync */
++			0xe8 (PIN_OUTPUT | MUX_MODE0)	/* lcd_pclk.lcd_pclk */
++			0xec (PIN_OUTPUT | MUX_MODE0)	/* lcd_ac_bias_en.lcd_ac_bias_en (lcd_en) */
++		>;
++	};
++
++	/* bbb-exp-c */
++	bbcape_lcd_24bit_pins: bbcape_lcd_24bit_pins {
++		pinctrl-single,pins = <
++			0xa0 0x00       /* lcd_data0.lcd_data0, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xa4 0x00       /* lcd_data1.lcd_data1, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xa8 0x00       /* lcd_data2.lcd_data2, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xac 0x00       /* lcd_data3.lcd_data3, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xb0 0x00       /* lcd_data4.lcd_data4, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xb4 0x00       /* lcd_data5.lcd_data5, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xb8 0x00       /* lcd_data6.lcd_data6, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xbc 0x00       /* lcd_data7.lcd_data7, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xc0 0x00       /* lcd_data8.lcd_data8, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xc4 0x00       /* lcd_data9.lcd_data9, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xc8 0x00       /* lcd_data10.lcd_data10, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xcc 0x00       /* lcd_data11.lcd_data11, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xd0 0x00       /* lcd_data12.lcd_data12, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xd4 0x00       /* lcd_data13.lcd_data13, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xd8 0x00       /* lcd_data14.lcd_data14, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0xdc 0x00       /* lcd_data15.lcd_data15, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
++			0x3c 0x11       /* gpmc_ad15.lcd_data16, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			0x38 0x11       /* gpmc_ad14.lcd_data17, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			0x34 0x11       /* gpmc_ad13.lcd_data18, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			0x30 0x11       /* gpmc_ad12.lcd_data19, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			0x2c 0x11       /* gpmc_ad11.lcd_data20, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			0x28 0x11       /* gpmc_ad10.lcd_data21, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			0x24 0x11       /* gpmc_ad9.lcd_data22, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			0x20 0x11       /* gpmc_ad8.lcd_data23, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
++			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 */
++		>;
++	};
++
++	bbcape_lcd7_avdd_en_pins: bbcape_lcd7_avdd_en {
++		pinctrl-single,pins = <
++			0x150 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* spi0_sclk.gpio0_2, OUTPUT | MODE7 - AVDD_EN */
++		>;
++	};
++
++	bbcape_lcd4_disen_pins: bbcape_lcd4_disen_pins {
++		pinctrl-single,pins = <
++			0x1a4 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* mcasp0_fsr.gpio3[19] (lcd_disen) */
++		>;
++	};
++
+ 	clkout2_pin: pinmux_clkout2_pin {
+ 		pinctrl-single,pins = <
+ 			0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)	/* xdma_event_intr1.clkout2 */
+diff --git a/arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi b/arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi
+new file mode 100644
+index 0000000..2fd366c
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi
+@@ -0,0 +1,82 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P8_11_pinmux {
++		status = "disabled";
++	};
++	P8_12_pinmux {
++		status = "disabled";
++	};
++	P8_13_pinmux {
++		status = "disabled";
++	};
++	P8_14_pinmux {
++		status = "disabled";
++	};
++	P8_15_pinmux {
++		status = "disabled";
++	};
++	P8_16_pinmux {
++		status = "disabled";
++	};
++	P8_17_pinmux {
++		status = "disabled";
++	};
++	P8_19_pinmux {
++		status = "disabled";
++	};
++	P8_37_pinmux {
++		status = "disabled";
++	};
++	P8_38_pinmux {
++		status = "disabled";
++	};
++};
++
++&lcdc {
++	status = "okay";
++};
++
++/ {
++	panel {
++		status = "okay";
++		compatible = "ti,tilcdc,panel";
++		pinctrl-names = "default";
++		pinctrl-0 = <&bbcape_lcd_24bit_pins>;
++		panel-info {
++			ac-bias           = <255>;
++			ac-bias-intrpt    = <0>;
++			dma-burst-sz      = <16>;
++			bpp               = <32>;
++			fdd               = <0x80>;
++			sync-edge         = <0>;
++			sync-ctrl         = <0>;
++			raster-order      = <1>;
++			fifo-th           = <0>;
++		};
++		display-timings {
++			native-mode = <&timing0>;
++			timing0: 1024x600 {
++				clock-frequency = <36000000>;
++				hactive = <1024>;
++				vactive = <600>;
++				hfront-porch = <1>;
++				hback-porch = <45>;
++				hsync-len = <30>;
++				vback-porch = <22>;
++				vfront-porch = <12>;
++				vsync-len = <2>;
++				hsync-active = <1>;
++				vsync-active = <1>;
++				de-active = <1>;
++				pixelclk-active = <0>;
++			};
++		};
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi b/arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi
+new file mode 100644
+index 0000000..9643f0e
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-panel-320x240.dtsi
+@@ -0,0 +1,61 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	/* hdmi */
++	P8_37_pinmux {
++		status = "disabled";
++	};
++	P8_38_pinmux {
++		status = "disabled";
++	};
++};
++
++&lcdc {
++	status = "okay";
++};
++
++/ {
++	panel {
++		status = "okay";
++		compatible = "ti,tilcdc,panel";
++		pinctrl-names = "default";
++		pinctrl-0 = <&bbcape_lcd_pins>;
++		panel-info {
++			ac-bias           = <255>;
++			ac-bias-intrpt    = <0>;
++			dma-burst-sz      = <16>;
++			bpp               = <16>;
++			fdd               = <0x80>;
++			sync-edge         = <0>;
++			sync-ctrl         = <1>;
++			raster-order      = <0>;
++			fifo-th           = <0>;
++			invert-pxl-clk;
++		};
++		display-timings {
++			/* Settings for CDTech_S035Q01 / LCD3 cape: */
++			native-mode = <&timing0>;
++			timing0: 320x240 {
++				clock-frequency = <8000000>;
++				hactive = <320>;
++				vactive = <240>;
++				hfront-porch = <59>;
++				hback-porch = <22>;
++				hsync-len = <48>;
++				vback-porch = <12>;
++				vfront-porch = <23>;
++				vsync-len = <2>;
++				hsync-active = <0>;
++				vsync-active = <0>;
++				de-active = <1>;
++				pixelclk-active = <0>;
++			};
++		};
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-panel-480x272-bgrx_16bpp.dtsi b/arch/arm/boot/dts/am335x-bone-panel-480x272-bgrx_16bpp.dtsi
+new file mode 100644
+index 0000000..bdd05af
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-panel-480x272-bgrx_16bpp.dtsi
+@@ -0,0 +1,59 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P8_37_pinmux {
++		status = "disabled";
++	};
++	P8_38_pinmux {
++		status = "disabled";
++	};
++};
++
++&lcdc {
++	bgrx_16bpp = <1>;
++	status = "okay";
++};
++
++/ {
++	panel {
++		status = "okay";
++		compatible = "ti,tilcdc,panel";
++		pinctrl-names = "default";
++		pinctrl-0 = <&bbcape_lcd_pins>;
++		panel-info {
++			ac-bias           = <255>;
++			ac-bias-intrpt    = <0>;
++			dma-burst-sz      = <16>;
++			bpp               = <16>;
++			fdd               = <0x80>;
++			sync-edge         = <0>;
++			sync-ctrl         = <1>;
++			raster-order      = <0>;
++			fifo-th           = <0>;
++		};
++		display-timings {
++			native-mode = <&timing0>;
++			timing0: 480x272 {
++				clock-frequency = <9000000>;
++				hactive = <480>;
++				vactive = <272>;
++				hfront-porch = <9>;
++				hback-porch = <44>;
++				hsync-len = <5>;
++				vback-porch = <13>;
++				vfront-porch = <4>;
++				vsync-len = <10>;
++				hsync-active = <0>;
++				vsync-active = <0>;
++				de-active = <0>;
++				pixelclk-active = <0>;
++			};
++		};
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi b/arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi
+new file mode 100644
+index 0000000..aa02625
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-panel-480x272.dtsi
+@@ -0,0 +1,62 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P8_37_pinmux {
++		status = "disabled";
++	};
++	P8_38_pinmux {
++		status = "disabled";
++	};
++	P9_27_pinmux {
++		status = "disabled";
++	};
++};
++
++&lcdc {
++	status = "okay";
++};
++
++/ {
++	panel {
++		status = "okay";
++		compatible = "ti,tilcdc,panel";
++		pinctrl-names = "default";
++		pinctrl-0 = <&bbcape_lcd_pins &bbcape_lcd4_disen_pins>;
++		panel-info {
++			ac-bias           = <255>;
++			ac-bias-intrpt    = <0>;
++			dma-burst-sz      = <16>;
++			bpp               = <16>;
++			fdd               = <0x80>;
++			sync-edge         = <0>;
++			sync-ctrl         = <1>;
++			raster-order      = <0>;
++			fifo-th           = <0>;
++		};
++		display-timings {
++			native-mode = <&timing0>;
++			/* www.newhavendisplay.com/app_notes/OTA5180A.pdf */
++			timing0: 480x272 {
++				clock-frequency = <9200000>;
++				hactive = <480>;
++				vactive = <272>;
++				hfront-porch = <8>;
++				hback-porch = <47>;
++				hsync-len = <41>;
++				vback-porch = <2>;
++				vfront-porch = <3>;
++				vsync-len = <10>;
++				hsync-active = <0>;
++				vsync-active = <0>;
++				de-active = <1>;
++				pixelclk-active = <0>;
++			};
++		};
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi b/arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi
+new file mode 100644
+index 0000000..7b8c053
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-panel-800x480.dtsi
+@@ -0,0 +1,62 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	P8_37_pinmux {
++		status = "disabled";
++	};
++	P8_38_pinmux {
++		status = "disabled";
++	};
++	P9_22_pinmux {
++		status = "disabled";
++	};
++};
++
++&lcdc {
++	status = "okay";
++};
++
++/ {
++	panel {
++		status = "okay";
++		compatible = "ti,tilcdc,panel";
++		pinctrl-names = "default";
++		pinctrl-0 = <&bbcape_lcd_pins &bbcape_lcd7_avdd_en_pins>;
++		panel-info {
++			ac-bias           = <255>;
++			ac-bias-intrpt    = <0>;
++			dma-burst-sz      = <16>;
++			bpp               = <16>;
++			fdd               = <0x80>;
++			sync-edge         = <0>;
++			sync-ctrl         = <1>;
++			raster-order      = <0>;
++			fifo-th           = <0>;
++		};
++		display-timings {
++			native-mode = <&timing0>;
++			/* Settings for ThreeFive S9700RTWV35TR / LCD7 cape: */
++			timing0: 800x480 {
++				clock-frequency = <30000000>;
++				hactive = <800>;
++				vactive = <480>;
++				hfront-porch = <40>;
++				hback-porch = <40>;
++				hsync-len = <48>;
++				vback-porch = <30>;
++				vfront-porch = <13>;
++				vsync-len = <3>;
++				hsync-active = <0>;
++				vsync-active = <0>;
++				de-active = <1>;
++				pixelclk-active = <0>;
++			};
++		};
++	};
++};
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux/0008-am335x-bone-common-pinmux-mcasp-audio-cape-revb.patch b/patches/beaglebone/pinmux/0015-cape-audio-revb.patch
similarity index 65%
rename from patches/beaglebone/pinmux/0008-am335x-bone-common-pinmux-mcasp-audio-cape-revb.patch
rename to patches/beaglebone/pinmux/0015-cape-audio-revb.patch
index 8f089dc22..91f174740 100644
--- a/patches/beaglebone/pinmux/0008-am335x-bone-common-pinmux-mcasp-audio-cape-revb.patch
+++ b/patches/beaglebone/pinmux/0015-cape-audio-revb.patch
@@ -1,27 +1,27 @@
-From c6e0b8228a96264b5d7ad1ea2b6f8434542a83e7 Mon Sep 17 00:00:00 2001
+From c79210a98d97fe4e5867e82dc1609b38e7fc9e8f Mon Sep 17 00:00:00 2001
 From: John Syn <john3909@gmail.com>
 Date: Tue, 15 Jul 2014 19:14:24 -0500
-Subject: [PATCH 08/19] am335x-bone-common: pinmux mcasp (audio cape revb)
+Subject: [PATCH 15/20] cape: audio-revb
 
 (split into pinmux and cape patches rcn-ee)
 
 Signed-off-by: John Syn <john3909@gmail.com>
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-audio.dtsi         | 60 ++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 10 ++++
- arch/arm/boot/dts/am335x-bone-common.dtsi        | 10 +++-
- arch/arm/boot/dts/am335x-bone.dts                |  5 ++
- arch/arm/boot/dts/am335x-boneblack.dts           |  5 ++
- 5 files changed, 89 insertions(+), 1 deletion(-)
- create mode 100644 arch/arm/boot/dts/am335x-bone-audio.dtsi
+ arch/arm/boot/dts/am335x-bone-audio-revb.dtsi    | 83 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 11 ++++
+ arch/arm/boot/dts/am335x-bone-common.dtsi        | 10 ++-
+ arch/arm/boot/dts/am335x-bone.dts                |  6 ++
+ arch/arm/boot/dts/am335x-boneblack.dts           |  6 ++
+ 5 files changed, 115 insertions(+), 1 deletion(-)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-audio-revb.dtsi
 
-diff --git a/arch/arm/boot/dts/am335x-bone-audio.dtsi b/arch/arm/boot/dts/am335x-bone-audio.dtsi
+diff --git a/arch/arm/boot/dts/am335x-bone-audio-revb.dtsi b/arch/arm/boot/dts/am335x-bone-audio-revb.dtsi
 new file mode 100644
-index 0000000..f21b269
+index 0000000..b54549e
 --- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-audio.dtsi
-@@ -0,0 +1,60 @@
++++ b/arch/arm/boot/dts/am335x-bone-audio-revb.dtsi
+@@ -0,0 +1,83 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -30,6 +30,29 @@ index 0000000..f21b269
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P9_25_pinmux {
++		/* mcasp0_ahclkx, OUTPUT | MODE0, Codec MCLK */
++		status = "disabled";
++	};
++	P9_28_pinmux {
++		/* mcasp0_axr2, INPUT | MODE2, Codec DIN */
++		status = "disabled";
++	};
++	P9_29_pinmux {
++		/* mcasp0_fsx, INPUT | MODE0, Codec WCLK */
++		status = "disabled";
++	};
++	P9_30_pinmux {
++		/* mcasp0_axr0, INPUT | MODE0, Codec DOUT */
++		status = "disabled";
++	};
++	P9_31_pinmux {
++		/* mcasp0_aclkx, INPUT | MODE0, Codec BCLK */
++		status = "disabled";
++	};
++};
++
 +&i2c2 {
 +	tlv320aic3x: tlv320aic3x@18 {
 +		compatible = "ti,tlv320aic3x";
@@ -47,7 +70,7 @@ index 0000000..f21b269
 +
 +&mcasp0 {
 +	pinctrl-names = "default";
-+	pinctrl-0 = <&mcasp0_pins_audio>;
++	pinctrl-0 = <&mcasp0_pins_audio_revb>;
 +	status = "okay";
 +	op-mode = <0>;          /* MCASP_IIS_MODE */
 +	tdm-slots = <2>;
@@ -83,14 +106,15 @@ index 0000000..f21b269
 +	};
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index b9da76b..0f22048 100644
+index f845c67..2c90709 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -112,6 +112,16 @@
+@@ -385,6 +385,17 @@
  		>;
  	};
  
-+	mcasp0_pins_audio: mcasp0_pins_audio {
++	/* audio rev b */
++	mcasp0_pins_audio_revb: mcasp0_pins_audio_revb {
 +		pinctrl-single,pins = <
 +			0x1ac 0x00	/* mcasp0_ahclkx, OUTPUT | MODE0, Codec MCLK */
 +			0x190 0x20	/* mcasp0_aclkx, INPUT | MODE0, Codec BCLK */
@@ -100,14 +124,14 @@ index b9da76b..0f22048 100644
 +		>;
 +	};
 +
- 	mmc1_pins: pinmux_mmc1_pins {
- 		pinctrl-single,pins = <
- 			0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
+ 	/************************/
+ 	/* P8 Header            */
+ 	/************************/
 diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi b/arch/arm/boot/dts/am335x-bone-common.dtsi
-index 6ef4bab..c8eefbc 100644
+index 32540b9..00fbb94 100644
 --- a/arch/arm/boot/dts/am335x-bone-common.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
-@@ -56,7 +56,15 @@
+@@ -57,7 +57,15 @@
  		};
  	};
  
@@ -125,32 +149,33 @@ index 6ef4bab..c8eefbc 100644
  		regulator-name = "vmmcsd_fixed";
  		regulator-min-microvolt = <3300000>;
 diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index 175051f..95d7ab9 100644
+index c29901f..cc12e62 100644
 --- a/arch/arm/boot/dts/am335x-bone.dts
 +++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -45,3 +45,8 @@
- /* #include "am335x-bone-ttyO4.dtsi" */
+@@ -78,3 +78,9 @@
  /* uart5: P8.37, P8.38 */
+ #include "am335x-ttyO5.dtsi"
  /* #include "am335x-bone-ttyO5.dtsi" */
 +
 +/* Capes */
++
 +/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
 +/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
++/* #include "am335x-bone-audio-revb.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index 2338611..3fddf48 100644
+index b6c8182..9432f7a 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
 +++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -42,3 +42,8 @@
- 
- /* Display */
- #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
+@@ -76,3 +76,9 @@
+ /* uart5: P8.37, P8.38 boneblack: hdmi has to be disabled for ttyO5 */
+ #include "am335x-ttyO5.dtsi"
+ /* #include "am335x-bone-ttyO5.dtsi" */
 +
 +/* Capes */
++
 +/* http://elinux.org/CircuitCo:Audio_Cape_RevB */
 +/* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
-+/* #include "am335x-bone-audio.dtsi" */
-\ No newline at end of file
++/* #include "am335x-bone-audio-revb.dtsi" */
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/pinmux/0016-cape-audio-reva.patch b/patches/beaglebone/pinmux/0016-cape-audio-reva.patch
new file mode 100644
index 000000000..da481f7af
--- /dev/null
+++ b/patches/beaglebone/pinmux/0016-cape-audio-reva.patch
@@ -0,0 +1,162 @@
+From 22304d332ab4585bc920254d9845f1b506d55b2f Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Fri, 19 Sep 2014 09:52:24 -0500
+Subject: [PATCH 16/20] cape: audio reva
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-audio-reva.dtsi    | 90 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi | 10 +++
+ arch/arm/boot/dts/am335x-bone.dts                |  3 +
+ arch/arm/boot/dts/am335x-boneblack.dts           |  3 +
+ 4 files changed, 106 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-audio-reva.dtsi
+
+diff --git a/arch/arm/boot/dts/am335x-bone-audio-reva.dtsi b/arch/arm/boot/dts/am335x-bone-audio-reva.dtsi
+new file mode 100644
+index 0000000..0234b8b
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-audio-reva.dtsi
+@@ -0,0 +1,90 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++&ocp {
++	/* gpio */
++	P9_14_pinmux {
++		mode = "P9_14_gpio_pu_pin";
++	};
++	P9_16_pinmux {
++		mode = "P9_16_gpio_pu_pin";
++	};
++	/* audio */
++	P9_25_pinmux {
++		status = "disabled";
++	};
++	P9_28_pinmux {
++		status = "disabled";
++	};
++	P9_29_pinmux {
++		status = "disabled";
++	};
++	P9_31_pinmux {
++		status = "disabled";
++	};
++
++	gpio-leds-cape-audio {
++		compatible = "gpio-leds";
++		pinctrl-names = "default";
++		pinctrl-0 = <>;
++
++		audio-led0 {
++			label = "audio:green:usr0";
++			gpios = <&gpio1 18 0>;
++			linux,default-trigger = "heartbeat";
++			default-state = "off";
++		};
++
++		audio-led1 {
++			label = "audio:green:usr1";
++			gpios = <&gpio1 19 0>;
++			linux,default-trigger = "mmc0";
++			default-state = "off";
++		};
++	};
++};
++
++&i2c2 {
++	tlv320aic3x: tlv320aic3x@1b {
++		compatible = "ti,tlv320aic3x";
++		reg = <0x1b>;
++		status = "okay";
++	};
++};
++
++&mcasp0 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&mcasp0_pins_audio_reva>;
++	status = "okay";
++	op-mode = <0>;          /* MCASP_IIS_MODE */
++	tdm-slots = <2>;
++	num-serializer = <16>;
++	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
++		0 0 2 1
++		0 0 0 0
++		0 0 0 0
++		0 0 0 0
++	>;
++	tx-num-evt = <1>;
++	rx-num-evt = <1>;
++};
++
++/ {
++	sound {
++		compatible = "ti,da830-evm-audio";
++		ti,model = "DA830 EVM";
++		ti,audio-codec = <&tlv320aic3x>;
++		ti,mcasp-controller = <&mcasp0>;
++		ti,codec-clock-rate = <12000000>;
++		ti,audio-routing =
++			"Headphone Jack",       "HPLOUT",
++			"Headphone Jack",       "HPROUT",
++			"LINE1L",               "Line In",
++			"LINE1R",               "Line In";
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+index 2c90709..3abacfe 100644
+--- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+@@ -385,6 +385,16 @@
+ 		>;
+ 	};
+ 
++	/* audio rev a */
++	mcasp0_pins_audio_reva: mcasp0_pins_audio_reva {
++		pinctrl-single,pins = <
++			0x190 0x20	/* mcasp0_aclkx.mcasp0_aclkx, INPUT | MODE0 */
++			0x194 0x20	/* mcasp0_fsx.mcasp0_fsx, INPUT | MODE0 */
++			0x19c 0x22	/* mcasp0_ahclkr.mcasp0_axr2, INPUT | MODE2 */
++			0x1ac 0x22	/* mcasp0_ahclkx.mcasp0_axr3, INPUT | MODE2 */
++		>;
++	};
++
+ 	/* audio rev b */
+ 	mcasp0_pins_audio_revb: mcasp0_pins_audio_revb {
+ 		pinctrl-single,pins = <
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index cc12e62..bb06739 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -81,6 +81,9 @@
+ 
+ /* Capes */
+ 
++/* http://elinux.org/CircuitCo:Audio_Cape_RevA */
++/* #include "am335x-bone-audio-reva.dtsi" */
++
+ /* http://elinux.org/CircuitCo:Audio_Cape_RevB */
+ /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
+ /* #include "am335x-bone-audio-revb.dtsi" */
+diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
+index 9432f7a..ff38cc8 100644
+--- a/arch/arm/boot/dts/am335x-boneblack.dts
++++ b/arch/arm/boot/dts/am335x-boneblack.dts
+@@ -79,6 +79,9 @@
+ 
+ /* Capes */
+ 
++/* http://elinux.org/CircuitCo:Audio_Cape_RevA */
++/* #include "am335x-bone-audio-reva.dtsi" */
++
+ /* http://elinux.org/CircuitCo:Audio_Cape_RevB */
+ /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
+ /* #include "am335x-bone-audio-revb.dtsi" */
+-- 
+2.1.0
+
diff --git a/patches/beaglebone/pinmux/0016-am335x-bone-cape-crypto-00a0.patch b/patches/beaglebone/pinmux/0017-cape-crypto-00a0.patch
similarity index 77%
rename from patches/beaglebone/pinmux/0016-am335x-bone-cape-crypto-00a0.patch
rename to patches/beaglebone/pinmux/0017-cape-crypto-00a0.patch
index 77eaebf8c..56a6dc0fa 100644
--- a/patches/beaglebone/pinmux/0016-am335x-bone-cape-crypto-00a0.patch
+++ b/patches/beaglebone/pinmux/0017-cape-crypto-00a0.patch
@@ -1,22 +1,22 @@
-From cad6af0f5a77dbcf78261a514590b70ff868c6cf Mon Sep 17 00:00:00 2001
+From e9a073e0b7796c355fe9c7b85281167edde3c04a Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 12:15:33 -0500
-Subject: [PATCH 16/19] am335x-bone: cape: crypto-00a0
+Date: Fri, 19 Sep 2014 10:07:15 -0500
+Subject: [PATCH 17/20] cape: crypto 00a0
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
  arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi |  7 +++++
  arch/arm/boot/dts/am335x-bone-crypto-00a0.dtsi   | 36 ++++++++++++++++++++++++
  arch/arm/boot/dts/am335x-bone.dts                |  5 ++++
- arch/arm/boot/dts/am335x-boneblack.dts           |  7 ++++-
- 4 files changed, 54 insertions(+), 1 deletion(-)
+ arch/arm/boot/dts/am335x-boneblack.dts           |  5 ++++
+ 4 files changed, 53 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-crypto-00a0.dtsi
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 31a1b95..827a9f2 100644
+index 3abacfe..b61bb0d 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -22,6 +22,13 @@
+@@ -118,6 +118,13 @@
  		>;
  	};
  
@@ -73,35 +73,31 @@ index 0000000..a6aa596
 +/* uart4: P9.11, P9.13 */
 +#include "am335x-bone-ttyO4.dtsi"
 diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index f5ffa5d..8c049a0 100644
+index bb06739..f34452f 100644
 --- a/arch/arm/boot/dts/am335x-bone.dts
 +++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -65,3 +65,8 @@
- /* i2c1: P9.17, P9.18 */
- /* gpio: P8.26 (mfp: wakeup) */
- /* #include "am335x-bone-rtc-01-00a1.dtsi" */
+@@ -87,3 +87,8 @@
+ /* http://elinux.org/CircuitCo:Audio_Cape_RevB */
+ /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
+ /* #include "am335x-bone-audio-revb.dtsi" */
 +
 +/* http://elinux.org/Cryptotronix:CryptoCape */
 +/* uart4: P9.11, P9.13 */
 +/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
 +/* #include "am335x-bone-crypto-00a0.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index dfb1ae3..3b7dbdb 100644
+index ff38cc8..c0c6174 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
 +++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -74,4 +74,9 @@
- /* http://elinux.org/CircuitCo:RTC_Cape */
- /* i2c1: P9.17, P9.18 */
- /* gpio: P8.26 (mfp: wakeup) */
--/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-\ No newline at end of file
-+/* #include "am335x-bone-rtc-01-00a1.dtsi" */
+@@ -85,3 +85,8 @@
+ /* http://elinux.org/CircuitCo:Audio_Cape_RevB */
+ /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
+ /* #include "am335x-bone-audio-revb.dtsi" */
 +
 +/* http://elinux.org/Cryptotronix:CryptoCape */
 +/* uart4: P9.11, P9.13 */
 +/* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
 +/* #include "am335x-bone-crypto-00a0.dtsi" */
-\ No newline at end of file
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/pinmux/0018-am335x-bone-cape-chipsee-bbb-exp-c.patch b/patches/beaglebone/pinmux/0018-am335x-bone-cape-chipsee-bbb-exp-c.patch
deleted file mode 100644
index 98cb95963..000000000
--- a/patches/beaglebone/pinmux/0018-am335x-bone-cape-chipsee-bbb-exp-c.patch
+++ /dev/null
@@ -1,403 +0,0 @@
-From 6bbb9fc9ceeb01c44c0b0daa294469efbb36431c Mon Sep 17 00:00:00 2001
-From: Robert Nelson <robertcnelson@gmail.com>
-Date: Wed, 10 Sep 2014 15:27:11 -0500
-Subject: [PATCH 18/19] am335x-bone: cape: chipsee bbb-exp-c
-
-Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
----
- arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi       | 97 ++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi   | 70 ++++++++++++++++
- arch/arm/boot/dts/am335x-bone-keymap3.dtsi         | 58 +++++++++++++
- .../boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi  | 30 +++++++
- .../boot/dts/am335x-bone-panel-1240x600-24bit.dtsi | 49 +++++++++++
- arch/arm/boot/dts/am335x-boneblack.dts             |  3 +
- 6 files changed, 307 insertions(+)
- create mode 100644 arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-keymap3.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi
- create mode 100644 arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi
-
-diff --git a/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi b/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi
-new file mode 100644
-index 0000000..c17a240
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi
-@@ -0,0 +1,97 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+#include "am335x-bone-ttyO1.dtsi"
-+#include "am335x-bone-ttyO2.dtsi"
-+#include "am335x-bone-ttyO4.dtsi"
-+
-+&i2c1 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&i2c1_pins>;
-+
-+	status = "okay";
-+	clock-frequency = <400000>;
-+
-+	edt-ft5306@38 {
-+		status = "okay";
-+		compatible = "edt,edt-ft5306", "edt,edt-ft5x06";
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&gpio1_17_pins>;
-+
-+		reg = <0x38>;
-+		interrupt-parent = <&gpio1>;
-+		interrupts = <17 0>;
-+
-+		touchscreen-size-x = <1240>;
-+		touchscreen-size-y = <600>;
-+	};
-+
-+	tlv320aic3x: tlv320aic3x@1b {
-+		compatible = "ti,tlv320aic3x";
-+		reg = <0x1b>;
-+		status = "okay";
-+	};
-+};
-+
-+&mcasp0 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&mcasp0_pins_audio2>;
-+
-+	status = "okay";
-+
-+	op-mode = <0>;          /* MCASP_IIS_MODE */
-+	tdm-slots = <2>;
-+	num-serializer = <16>;
-+	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
-+		1 0 2 0
-+		0 0 0 0
-+		0 0 0 0
-+		0 0 0 0
-+	>;
-+	tx-num-evt = <1>;
-+	rx-num-evt = <1>;
-+};
-+
-+/ {
-+	sound {
-+		compatible = "ti,da830-evm-audio";
-+		ti,model = "DA830 EVM";
-+		ti,audio-codec = <&tlv320aic3x>;
-+		ti,mcasp-controller = <&mcasp0>;
-+		ti,codec-clock-rate = <12000000>;
-+		ti,audio-routing =
-+			"Headphone Jack",       "HPLOUT",
-+			"Headphone Jack",       "HPROUT",
-+			"MIC3L",                "Mic Jack",
-+			"MIC3R",                "Mic Jack";
-+	};
-+};
-+
-+/* Led */
-+/* #include "am335x-bone-led-gpio1-18.dtsi" */
-+/* #include "am335x-bone-led-gpio1-28.dtsi" */
-+/* #include "am335x-bone-led-gpio3-19.dtsi" */
-+#include "am335x-bone-led-gpio2-4-gpio2-5.dtsi"
-+
-+/* Keypad */
-+/* #include "am335x-bone-keymap0.dtsi" */
-+/* #include "am335x-bone-keymap1.dtsi" */
-+/* #include "am335x-bone-keymap2.dtsi" */
-+#include "am335x-bone-keymap3.dtsi"
-+
-+/* Backlight */
-+#include "am335x-bone-bl-gpio1-18.dtsi"
-+
-+/* Touchscreen */
-+/* #include "am335x-bone-ti-tscadc-4-wire.dtsi" */
-+
-+/* Panel */
-+/* #include "am335x-bone-panel-320x240.dtsi" */
-+/* #include "am335x-bone-panel-480x272.dtsi" */
-+/* #include "am335x-bone-panel-800x480.dtsi" */
-+#include "am335x-bone-panel-1240x600-24bit.dtsi"
-diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 0503b70..0c0a64d 100644
---- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-+++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -16,6 +16,14 @@
- 		>;
- 	};
- 
-+	/* bbb-exp-c */
-+	user_leds_s1: user_leds_s1 {
-+		pinctrl-single,pins = <
-+			0x98 0x7	/* gpmc_wen.gpio2_4, OUTPUT | MODE7 */
-+			0x9c 0x7	/* gpmc_ben0_cle.gpio2_5, OUTPUT | MODE7 */
-+		>;
-+	};
-+
- 	bbcape_backlight_pins: bbcape_backlight_pins {
- 		pinctrl-single,pins = <
- 			0x48  (PIN_OUTPUT | MUX_MODE7)	/* gpmc_a[2].GPIO1[18] (backlight control) */
-@@ -54,6 +62,40 @@
- 		>;
- 	};
- 
-+	/* bbb-exp-c */
-+	bbcape_lcd_24bit_pins: bbcape_lcd_24bit_pins {
-+		pinctrl-single,pins = <
-+			0xa0 0x00       /* lcd_data0.lcd_data0, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xa4 0x00       /* lcd_data1.lcd_data1, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xa8 0x00       /* lcd_data2.lcd_data2, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xac 0x00       /* lcd_data3.lcd_data3, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xb0 0x00       /* lcd_data4.lcd_data4, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xb4 0x00       /* lcd_data5.lcd_data5, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xb8 0x00       /* lcd_data6.lcd_data6, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xbc 0x00       /* lcd_data7.lcd_data7, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xc0 0x00       /* lcd_data8.lcd_data8, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xc4 0x00       /* lcd_data9.lcd_data9, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xc8 0x00       /* lcd_data10.lcd_data10, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xcc 0x00       /* lcd_data11.lcd_data11, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xd0 0x00       /* lcd_data12.lcd_data12, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xd4 0x00       /* lcd_data13.lcd_data13, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xd8 0x00       /* lcd_data14.lcd_data14, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0xdc 0x00       /* lcd_data15.lcd_data15, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
-+			0x3c 0x11       /* gpmc_ad15.lcd_data16, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			0x38 0x11       /* gpmc_ad14.lcd_data17, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			0x34 0x11       /* gpmc_ad13.lcd_data18, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			0x30 0x11       /* gpmc_ad12.lcd_data19, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			0x2c 0x11       /* gpmc_ad11.lcd_data20, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			0x28 0x11       /* gpmc_ad10.lcd_data21, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			0x24 0x11       /* gpmc_ad9.lcd_data22, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			0x20 0x11       /* gpmc_ad8.lcd_data23, OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT */
-+			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 */
-+		>;
-+	};
-+
- 	bbcape_lcd4_disen_pins: bbcape_lcd4_disen_pins {
- 		pinctrl-single,pins = <
- 			0x1a4 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* mcasp0_fsr.gpio3[19] (lcd_disen) */
-@@ -135,6 +177,13 @@
- 		>;
- 	};
- 
-+	/* bbb-exp-c */
-+	gpio1_17_pins: pinmux_gpio1_17_pins {
-+		pinctrl-single,pins = <
-+			0x044 0x27      /* CAP_TSC gpmc_a1.gpio1_17, INPUT | MODE7 */
-+		>;
-+	};
-+
- 	/* lcd4-01-00a0 */
- 	gpio1_18_led_pins: pinmux_gpio1_18_led_pins {
- 		pinctrl-single,pins = <
-@@ -217,6 +266,17 @@
- 		>;
- 	};
- 
-+	/* bbb-exp-c */
-+	keymap3_pins: pinmux_keymap3_pins {
-+		pinctrl-single,pins = <
-+			0x040 0x2f      /* KEY_UP gpmc_a0.gpio1_16, INPUT | PULLDIS | MODE7 */
-+			0x04c 0x2f      /* KEY_DOWN gpmc_a3.gpio1_19, INPUT | PULLDIS | MODE7 */
-+			0x078 0x2f      /* KEY_RIGHT gpmc_ben1.gpio1_28, INPUT | PULLDIS | MODE7 */
-+			0x164 0x2f      /* KEY_LEFT ecap0_in_pwm0_out.gpio0_7, INPUT | PULLDIS | MODE7 */
-+			0x1a4 0x2f      /* KEY_ENTER mcasp0_fxr.gpio3_19, INPUT | PULLDIS | MODE7 */
-+		>;
-+	};
-+
- 	mcasp0_pins_audio: mcasp0_pins_audio {
- 		pinctrl-single,pins = <
- 			0x1ac 0x00	/* mcasp0_ahclkx, OUTPUT | MODE0, Codec MCLK */
-@@ -227,6 +287,16 @@
- 		>;
- 	};
- 
-+	/* bbb-exp-c */
-+	mcasp0_pins_audio2: mcasp0_pins_audio2 {
-+		pinctrl-single,pins = <
-+			0x190 0x20      /* mcasp0_aclkx.mcasp0_aclkx, INPUT | MODE0 */
-+			0x194 0x20      /* mcasp0_fsx.mcasp0_fsx, INPUT | MODE0 */
-+			0x198 0x20      /* mcasp0_axr0.mcasp0_axr0, INPUT | MODE0 */
-+			0x19c 0x22      /* mcasp0_ahclkr.mcasp0_axr2, INPUT | MODE2 */
-+		>;
-+	};
-+
- 	mmc1_pins: pinmux_mmc1_pins {
- 		pinctrl-single,pins = <
- 			0x160 (PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
-diff --git a/arch/arm/boot/dts/am335x-bone-keymap3.dtsi b/arch/arm/boot/dts/am335x-bone-keymap3.dtsi
-new file mode 100644
-index 0000000..2b17363
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-keymap3.dtsi
-@@ -0,0 +1,58 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+/ {
-+	gpio_keys {
-+		compatible = "gpio-keys";
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&keymap3_pins>;
-+
-+		#address-cells = <1>;
-+		#size-cells = <0>;
-+
-+		button@1 {
-+			debounce_interval = <50>;
-+			linux,code = <105>;
-+			label = "left";
-+			gpios = <&gpio0 7 0x1>;
-+			gpio-key,wakeup;
-+			autorepeat;
-+		};
-+		button@2 {
-+			debounce_interval = <50>;
-+			linux,code = <106>;
-+			label = "right";
-+			gpios = <&gpio1 28 0x1>;
-+			gpio-key,wakeup;
-+			autorepeat;
-+		};
-+		button@3 {
-+			debounce_interval = <50>;
-+			linux,code = <103>;
-+			label = "up";
-+			gpios = <&gpio1 16 0x1>;
-+			gpio-key,wakeup;
-+			autorepeat;
-+		};
-+		button@4 {
-+			debounce_interval = <50>;
-+			linux,code = <108>;
-+			label = "down";
-+			gpios = <&gpio1 19 0x1>;
-+			gpio-key,wakeup;
-+			autorepeat;
-+		};
-+		button@5 {
-+			debounce_interval = <50>;
-+			linux,code = <28>;
-+			label = "enter";
-+			gpios = <&gpio3 19 0x1>;
-+			gpio-key,wakeup;
-+		};
-+	};
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi b/arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi
-new file mode 100644
-index 0000000..4cda925
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-led-gpio2-4-gpio2-5.dtsi
-@@ -0,0 +1,30 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+/ {
-+	gpio-leds-cape-lcd {
-+		compatible = "gpio-leds";
-+		pinctrl-names = "default";
-+
-+		pinctrl-0 = <&user_leds_s1>;
-+
-+		lcd-led0 {
-+			label = "lcd:green:usr0";
-+			gpios = <&gpio2 4 0>;
-+			linux,default-trigger = "heartbeat";
-+			default-state = "off";
-+		};
-+
-+		lcd-led1 {
-+			label = "lcd:green:usr1";
-+			gpios = <&gpio2 5 0>;
-+			linux,default-trigger = "mmc0";
-+			default-state = "off";
-+		};
-+	};
-+};
-diff --git a/arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi b/arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi
-new file mode 100644
-index 0000000..d123220
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-bone-panel-1240x600-24bit.dtsi
-@@ -0,0 +1,49 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&lcdc {
-+	status = "okay";
-+};
-+
-+/ {
-+	panel {
-+		status = "okay";
-+		compatible = "ti,tilcdc,panel";
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&bbcape_lcd_24bit_pins>;
-+		panel-info {
-+			ac-bias           = <255>;
-+			ac-bias-intrpt    = <0>;
-+			dma-burst-sz      = <16>;
-+			bpp               = <32>;
-+			fdd               = <0x80>;
-+			sync-edge         = <0>;
-+			sync-ctrl         = <0>;
-+			raster-order      = <1>;
-+			fifo-th           = <0>;
-+		};
-+		display-timings {
-+			native-mode = <&timing0>;
-+			timing0: 1024x600 {
-+				clock-frequency = <36000000>;
-+				hactive = <1024>;
-+				vactive = <600>;
-+				hfront-porch = <1>;
-+				hback-porch = <45>;
-+				hsync-len = <30>;
-+				vback-porch = <22>;
-+				vfront-porch = <12>;
-+				vsync-len = <2>;
-+				hsync-active = <1>;
-+				vsync-active = <1>;
-+				de-active = <1>;
-+				pixelclk-active = <0>;
-+			};
-+		};
-+	};
-+};
-diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index 86c9b31..4f57e53 100644
---- a/arch/arm/boot/dts/am335x-boneblack.dts
-+++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -89,6 +89,9 @@
- /* #include "am335x-bone-lcd7-01-00a2.dtsi" */
- /* #include "am335x-bone-lcd7-01-00a3.dtsi" */
- 
-+/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
-+/* #include "am335x-bone-bbb-exp-c.dtsi" */
-+
- /* http://elinux.org/CircuitCo:RTC_Cape */
- /* i2c1: P9.17, P9.18 */
- /* gpio: P8.26 (mfp: wakeup) */
--- 
-2.1.0
-
diff --git a/patches/beaglebone/pinmux/0015-am335x-bone-cape-rtc-01-00a1.patch b/patches/beaglebone/pinmux/0018-cape-rtc-01-00a1.patch
similarity index 69%
rename from patches/beaglebone/pinmux/0015-am335x-bone-cape-rtc-01-00a1.patch
rename to patches/beaglebone/pinmux/0018-cape-rtc-01-00a1.patch
index f183657b9..2a9887f90 100644
--- a/patches/beaglebone/pinmux/0015-am335x-bone-cape-rtc-01-00a1.patch
+++ b/patches/beaglebone/pinmux/0018-cape-rtc-01-00a1.patch
@@ -1,22 +1,22 @@
-From 1a5cac457d65e53bfddda65d73acc1f489701790 Mon Sep 17 00:00:00 2001
+From 70f91ab36c7c4572dba618a176aef52f7303f13f Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 12:12:53 -0500
-Subject: [PATCH 15/19] am335x-bone: cape: rtc-01-00a1
+Date: Fri, 19 Sep 2014 10:12:50 -0500
+Subject: [PATCH 18/20] cape: rtc 01 00a1
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi |  7 +++++
- arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dtsi   | 39 ++++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi |  7 ++++
+ arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dtsi   | 46 ++++++++++++++++++++++++
  arch/arm/boot/dts/am335x-bone.dts                |  5 +++
- arch/arm/boot/dts/am335x-boneblack.dts           |  7 ++++-
- 4 files changed, 57 insertions(+), 1 deletion(-)
+ arch/arm/boot/dts/am335x-boneblack.dts           |  5 +++
+ 4 files changed, 63 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dtsi
 
 diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 347e88f..31a1b95 100644
+index b61bb0d..6718786 100644
 --- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
 +++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -142,6 +142,13 @@
+@@ -47,6 +47,13 @@
  		>;
  	};
  
@@ -32,10 +32,10 @@ index 347e88f..31a1b95 100644
  		pinctrl-single,pins = <
 diff --git a/arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dtsi b/arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dtsi
 new file mode 100644
-index 0000000..59549c8
+index 0000000..8216878
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-rtc-01-00a1.dtsi
-@@ -0,0 +1,39 @@
+@@ -0,0 +1,46 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -44,6 +44,13 @@ index 0000000..59549c8
 + * published by the Free Software Foundation.
 + */
 +
++&ocp {
++	P8_26_pinmux {
++		/* gpio1[29] */
++		status = "disabled";
++	};
++};
++
 +/ {
 +	gpio_keys {
 +		compatible = "gpio-keys";
@@ -76,35 +83,37 @@ index 0000000..59549c8
 +	};
 +};
 diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index 126880f..f5ffa5d 100644
+index f34452f..ee6cb5e 100644
 --- a/arch/arm/boot/dts/am335x-bone.dts
 +++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -60,3 +60,8 @@
- /* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
- /* #include "am335x-bone-lcd7-01-00a2.dtsi" */
- /* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
+@@ -88,6 +88,11 @@
+ /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
+ /* #include "am335x-bone-audio-revb.dtsi" */
+ 
 +/* http://elinux.org/CircuitCo:RTC_Cape */
 +/* i2c1: P9.17, P9.18 */
 +/* gpio: P8.26 (mfp: wakeup) */
 +/* #include "am335x-bone-rtc-01-00a1.dtsi" */
++
+ /* http://elinux.org/Cryptotronix:CryptoCape */
+ /* uart4: P9.11, P9.13 */
+ /* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index a019df7..dfb1ae3 100644
+index c0c6174..602629c 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
 +++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -69,4 +69,9 @@
- /* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
- /* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
- /* #include "am335x-bone-lcd7-01-00a2.dtsi" */
--/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-\ No newline at end of file
-+/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-+
+@@ -86,6 +86,11 @@
+ /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
+ /* #include "am335x-bone-audio-revb.dtsi" */
+ 
 +/* http://elinux.org/CircuitCo:RTC_Cape */
 +/* i2c1: P9.17, P9.18 */
 +/* gpio: P8.26 (mfp: wakeup) */
 +/* #include "am335x-bone-rtc-01-00a1.dtsi" */
-\ No newline at end of file
++
+ /* http://elinux.org/Cryptotronix:CryptoCape */
+ /* uart4: P9.11, P9.13 */
+ /* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/pinmux/0019-am335x-bone-common-pinmux-hdmi-audio.patch b/patches/beaglebone/pinmux/0019-am335x-bone-common-pinmux-hdmi-audio.patch
deleted file mode 100644
index 46dd5140e..000000000
--- a/patches/beaglebone/pinmux/0019-am335x-bone-common-pinmux-hdmi-audio.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From 4fbe2f285bc65ea8e15b7fc10fec27a181abb76f Mon Sep 17 00:00:00 2001
-From: Robert Nelson <robertcnelson@gmail.com>
-Date: Thu, 21 Aug 2014 10:20:26 -0500
-Subject: [PATCH 19/19] am335x-bone-common: pinmux hdmi audio
-
-Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
----
- arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi   | 10 ++++
- .../boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi  | 66 ++++++++++++++++++++++
- arch/arm/boot/dts/am335x-boneblack.dts             |  4 +-
- 3 files changed, 79 insertions(+), 1 deletion(-)
- create mode 100644 arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
-
-diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-index 2dc5d5f..4526000 100644
---- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-+++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
-@@ -287,6 +287,16 @@
- 		>;
- 	};
- 
-+	mcasp0_pins: mcasp0_pins {
-+		pinctrl-single,pins = <
-+			0x1ac (PIN_INPUT_PULLUP | MUX_MODE0)    /* mcasp0_ahclkx.mcasp0_ahclkx */
-+			0x19c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mcasp0_ahclkr.mcasp0_axr2 */
-+			0x194 (PIN_OUTPUT_PULLUP | MUX_MODE0)   /* mcasp0_fsx.mcasp0_fsx */
-+			0x190 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mcasp0_aclkx.mcasp0_aclkx */
-+			0x06c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a11.GPIO1_27 */
-+		>;
-+	};
-+
- 	mcasp0_pins_audio: mcasp0_pins_audio {
- 		pinctrl-single,pins = <
- 			0x1ac 0x00	/* mcasp0_ahclkx, OUTPUT | MODE0, Codec MCLK */
-diff --git a/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi b/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
-new file mode 100644
-index 0000000..9a3c163
---- /dev/null
-+++ b/arch/arm/boot/dts/am335x-boneblack-nxp-hdmi-audio.dtsi
-@@ -0,0 +1,66 @@
-+/*
-+ * Copyright (C) 2012 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.
-+ */
-+
-+&lcdc {
-+	status = "okay";
-+};
-+
-+&mcasp0        {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&mcasp0_pins>;
-+	status = "okay";
-+	op-mode = <0>;  /* MCASP_IIS_MODE */
-+	tdm-slots = <2>;
-+	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
-+			0 0 1 0
-+		>;
-+	tx-num-evt = <1>;
-+	rx-num-evt = <1>;
-+};
-+
-+&ext_clocks {
-+	clk_mcasp0_fixed: clk_mcasp0_fixed {
-+		#clock-cells = <0>;
-+		compatible = "fixed-clock";
-+		clock-frequency = <24576000>;
-+	};
-+
-+	clk_mcasp0: clk_mcasp0 {
-+		#clock-cells = <0>;
-+		compatible = "ti,gpio-clock";
-+		clocks = <&clk_mcasp0_fixed>;
-+		enable-gpios = <&gpio1 27 0>; /* BeagleBone Black Clk enable on GPIO1_27 */
-+	};
-+};
-+
-+/ {
-+	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";
-+	};
-+
-+	hdmi_audio: hdmi_audio@0 {
-+		compatible = "linux,hdmi-audio";
-+		status = "okay";
-+	};
-+
-+	sound {
-+		compatible = "ti,am335x-beaglebone-black-audio";
-+		ti,model = "TI BeagleBone Black";
-+		ti,audio-codec = <&hdmi_audio>;
-+		ti,mcasp-controller = <&mcasp0>;
-+		ti,audio-routing =
-+			"HDMI Out",     "TX";
-+		clocks = <&clk_mcasp0>;
-+		clock-names = "mclk";
-+	};
-+};
-diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index 4f57e53..25e943e 100644
---- a/arch/arm/boot/dts/am335x-boneblack.dts
-+++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -59,7 +59,9 @@
- /* #include "am335x-bone-ttyO5.dtsi" */
- 
- /* Display */
--#include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
-+/* #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi" */
-+/* Pins: audio: P9.25, P9.28, P9.29, P9.30, P9.31 */
-+#include "am335x-boneblack-nxp-hdmi-audio.dtsi"
- 
- /* Capes */
- /* http://elinux.org/4D_4.3_LCD_CAPE */
--- 
-2.1.0
-
diff --git a/patches/beaglebone/pinmux/0014-am335x-bone-capes-lcd3-lcd4-lcd7-4dcape-43-t-4dcape-.patch b/patches/beaglebone/pinmux/0019-cape-lcd.patch
similarity index 52%
rename from patches/beaglebone/pinmux/0014-am335x-bone-capes-lcd3-lcd4-lcd7-4dcape-43-t-4dcape-.patch
rename to patches/beaglebone/pinmux/0019-cape-lcd.patch
index 6dce02548..04b9e082a 100644
--- a/patches/beaglebone/pinmux/0014-am335x-bone-capes-lcd3-lcd4-lcd7-4dcape-43-t-4dcape-.patch
+++ b/patches/beaglebone/pinmux/0019-cape-lcd.patch
@@ -1,26 +1,30 @@
-From 393d863c2d5b0cbc1ae3f7932669752ce2bdb94f Mon Sep 17 00:00:00 2001
+From 9625292a0c5a953656379c5b08b38e4abc102130 Mon Sep 17 00:00:00 2001
 From: Robert Nelson <robertcnelson@gmail.com>
-Date: Tue, 26 Aug 2014 12:07:25 -0500
-Subject: [PATCH 14/19] am335x-bone: capes:
- lcd3/lcd4/lcd7/4dcape-43(t)/4dcape-70(t)
+Date: Fri, 19 Sep 2014 10:16:49 -0500
+Subject: [PATCH 19/20] cape: lcd
 
 Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 ---
- arch/arm/boot/dts/am335x-bone-4dcape-43.dtsi    | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-4dcape-43t.dtsi   | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-4dcape-70.dtsi    | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-4dcape-70t.dtsi   | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dtsi | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dtsi | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dtsi | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dtsi | 28 +++++++++++++++++++++++++
- arch/arm/boot/dts/am335x-bone.dts               | 10 +++++++++
- arch/arm/boot/dts/am335x-boneblack.dts          | 25 +++++++++++++++++++++-
- 10 files changed, 258 insertions(+), 1 deletion(-)
+ arch/arm/boot/dts/am335x-bone-4dcape-43.dtsi     |  31 ++++++
+ arch/arm/boot/dts/am335x-bone-4dcape-43t.dtsi    |  31 ++++++
+ arch/arm/boot/dts/am335x-bone-4dcape-70.dtsi     |  31 ++++++
+ arch/arm/boot/dts/am335x-bone-4dcape-70t.dtsi    |  31 ++++++
+ arch/arm/boot/dts/am335x-bone-bb-view-43.dtsi    |  33 ++++++
+ arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi     | 127 +++++++++++++++++++++++
+ arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi |  17 +++
+ arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dtsi  |  31 ++++++
+ arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dtsi  |  31 ++++++
+ arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dtsi  |  31 ++++++
+ arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dtsi  |  31 ++++++
+ arch/arm/boot/dts/am335x-bone.dts                |  24 +++++
+ arch/arm/boot/dts/am335x-boneblack.dts           |  25 +++++
+ 13 files changed, 474 insertions(+)
  create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-43.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-43t.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-70.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-4dcape-70t.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-bb-view-43.dtsi
+ create mode 100644 arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dtsi
  create mode 100644 arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dtsi
@@ -28,10 +32,10 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
 
 diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-43.dtsi b/arch/arm/boot/dts/am335x-bone-4dcape-43.dtsi
 new file mode 100644
-index 0000000..87502a0
+index 0000000..3ef21bc
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-4dcape-43.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -44,11 +48,13 @@ index 0000000..87502a0
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +#include "am335x-bone-led-gpio1-28.dtsi"
 +/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +/* #include "am335x-bone-keymap0.dtsi" */
 +#include "am335x-bone-keymap1.dtsi"
 +/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -60,12 +66,13 @@ index 0000000..87502a0
 +/* #include "am335x-bone-panel-320x240.dtsi" */
 +#include "am335x-bone-panel-480x272.dtsi"
 +/* #include "am335x-bone-panel-800x480.dtsi" */
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-43t.dtsi b/arch/arm/boot/dts/am335x-bone-4dcape-43t.dtsi
 new file mode 100644
-index 0000000..a94e37a
+index 0000000..bb27434
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-4dcape-43t.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -78,11 +85,13 @@ index 0000000..a94e37a
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +#include "am335x-bone-led-gpio1-28.dtsi"
 +/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +/* #include "am335x-bone-keymap0.dtsi" */
 +#include "am335x-bone-keymap1.dtsi"
 +/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -94,12 +103,13 @@ index 0000000..a94e37a
 +/* #include "am335x-bone-panel-320x240.dtsi" */
 +#include "am335x-bone-panel-480x272.dtsi"
 +/* #include "am335x-bone-panel-800x480.dtsi" */
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-70.dtsi b/arch/arm/boot/dts/am335x-bone-4dcape-70.dtsi
 new file mode 100644
-index 0000000..83ad7cb
+index 0000000..aa30010
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-4dcape-70.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -112,11 +122,13 @@ index 0000000..83ad7cb
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +#include "am335x-bone-led-gpio1-28.dtsi"
 +/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +#include "am335x-bone-keymap0.dtsi"
 +/* #include "am335x-bone-keymap1.dtsi" */
 +/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -128,12 +140,13 @@ index 0000000..83ad7cb
 +/* #include "am335x-bone-panel-320x240.dtsi" */
 +/* #include "am335x-bone-panel-480x272.dtsi" */
 +#include "am335x-bone-panel-800x480.dtsi"
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-bone-4dcape-70t.dtsi b/arch/arm/boot/dts/am335x-bone-4dcape-70t.dtsi
 new file mode 100644
-index 0000000..8ae1e8c
+index 0000000..4ce42f3
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-4dcape-70t.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -146,11 +159,13 @@ index 0000000..8ae1e8c
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +#include "am335x-bone-led-gpio1-28.dtsi"
 +/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +#include "am335x-bone-keymap0.dtsi"
 +/* #include "am335x-bone-keymap1.dtsi" */
 +/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -162,12 +177,220 @@ index 0000000..8ae1e8c
 +/* #include "am335x-bone-panel-320x240.dtsi" */
 +/* #include "am335x-bone-panel-480x272.dtsi" */
 +#include "am335x-bone-panel-800x480.dtsi"
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
+diff --git a/arch/arm/boot/dts/am335x-bone-bb-view-43.dtsi b/arch/arm/boot/dts/am335x-bone-bb-view-43.dtsi
+new file mode 100644
+index 0000000..9786816
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-bb-view-43.dtsi
+@@ -0,0 +1,33 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++/* Led */
++/* #include "am335x-bone-led-gpio1-18.dtsi" */
++#include "am335x-bone-led-gpio1-28.dtsi"
++/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
++
++/* Keypad */
++/* #include "am335x-bone-keymap0.dtsi" */
++/* #include "am335x-bone-keymap1.dtsi" */
++/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
++#include "am335x-bone-keymap4.dtsi"
++
++/* Backlight */
++#include "am335x-bone-bl-gpio1-18.dtsi"
++
++/* Touchscreen */
++#include "am335x-bone-ti-tscadc-4-wire.dtsi"
++
++/* Panel */
++/* #include "am335x-bone-panel-320x240.dtsi" */
++/* #include "am335x-bone-panel-480x272.dtsi" */
++/* #include "am335x-bone-panel-800x480.dtsi" */
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
++#include "am335x-bone-panel-480x272-bgrx_16bpp.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi b/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi
+new file mode 100644
+index 0000000..8edb4f5
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-bbb-exp-c.dtsi
+@@ -0,0 +1,127 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++#include "am335x-bone-ttyO1.dtsi"
++#include "am335x-bone-ttyO2.dtsi"
++#include "am335x-bone-ttyO4.dtsi"
++
++&ocp {
++	/* i2c */
++	P9_17_pinmux {
++		status = "disabled";
++	};
++	P9_18_pinmux {
++		status = "disabled";
++	};
++	/* edt-ft5306 irq pin */
++	P9_23_pinmux {
++		status = "disabled";
++	};
++	/* audio */
++	P9_28_pinmux {
++		status = "disabled";
++	};
++	P9_29_pinmux {
++		status = "disabled";
++	};
++	P9_30_pinmux {
++		status = "disabled";
++	};
++	P9_31_pinmux {
++		status = "disabled";
++	};
++	P9_41_pinmux {
++		status = "disabled";
++	};
++};
++
++&i2c1 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&i2c1_pins>;
++
++	status = "okay";
++	clock-frequency = <400000>;
++
++	edt-ft5306@38 {
++		status = "okay";
++		compatible = "edt,edt-ft5306", "edt,edt-ft5x06";
++		pinctrl-names = "default";
++		pinctrl-0 = <&gpio1_17_pins>;
++
++		reg = <0x38>;
++		interrupt-parent = <&gpio1>;
++		interrupts = <17 0>;
++
++		touchscreen-size-x = <1240>;
++		touchscreen-size-y = <600>;
++	};
++
++	tlv320aic3x: tlv320aic3x@1b {
++		compatible = "ti,tlv320aic3x";
++		reg = <0x1b>;
++		status = "okay";
++	};
++};
++
++&mcasp0 {
++	pinctrl-names = "default";
++	pinctrl-0 = <&mcasp0_pins_audio2>;
++
++	status = "okay";
++
++	op-mode = <0>;          /* MCASP_IIS_MODE */
++	tdm-slots = <2>;
++	num-serializer = <16>;
++	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
++		1 0 2 0
++		0 0 0 0
++		0 0 0 0
++		0 0 0 0
++	>;
++	tx-num-evt = <1>;
++	rx-num-evt = <1>;
++};
++
++/ {
++	sound {
++		compatible = "ti,da830-evm-audio";
++		ti,model = "DA830 EVM";
++		ti,audio-codec = <&tlv320aic3x>;
++		ti,mcasp-controller = <&mcasp0>;
++		ti,codec-clock-rate = <12000000>;
++		ti,audio-routing =
++			"Headphone Jack",       "HPLOUT",
++			"Headphone Jack",       "HPROUT",
++			"MIC3L",                "Mic Jack",
++			"MIC3R",                "Mic Jack";
++	};
++};
++
++/* Led */
++/* #include "am335x-bone-led-gpio1-18.dtsi" */
++/* #include "am335x-bone-led-gpio1-28.dtsi" */
++/* #include "am335x-bone-led-gpio3-19.dtsi" */
++#include "am335x-bone-led-gpio2-4-gpio2-5.dtsi"
++
++/* Keypad */
++/* #include "am335x-bone-keymap0.dtsi" */
++/* #include "am335x-bone-keymap1.dtsi" */
++/* #include "am335x-bone-keymap2.dtsi" */
++#include "am335x-bone-keymap3.dtsi"
++
++/* Backlight */
++#include "am335x-bone-bl-gpio1-18.dtsi"
++
++/* Touchscreen */
++/* #include "am335x-bone-ti-tscadc-4-wire.dtsi" */
++
++/* Panel */
++/* #include "am335x-bone-panel-320x240.dtsi" */
++/* #include "am335x-bone-panel-480x272.dtsi" */
++/* #include "am335x-bone-panel-800x480.dtsi" */
++#include "am335x-bone-panel-1240x600-24bit.dtsi"
+diff --git a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+index 6718786..09907ed 100644
+--- a/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
++++ b/arch/arm/boot/dts/am335x-bone-common-pinmux.dtsi
+@@ -33,6 +33,13 @@
+ 		>;
+ 	};
+ 
++	/* bbb-exp-c */
++	gpio1_17_pins: pinmux_gpio1_17_pins {
++		pinctrl-single,pins = <
++			0x044 0x27      /* CAP_TSC gpmc_a1.gpio1_17, INPUT | MODE7 */
++		>;
++	};
++
+ 	/* lcd4-01-00a0 */
+ 	gpio1_18_led_pins: pinmux_gpio1_18_led_pins {
+ 		pinctrl-single,pins = <
+@@ -420,6 +427,16 @@
+ 		>;
+ 	};
+ 
++	/* bbb-exp-c */
++	mcasp0_pins_audio2: mcasp0_pins_audio2 {
++		pinctrl-single,pins = <
++			0x190 0x20      /* mcasp0_aclkx.mcasp0_aclkx, INPUT | MODE0 */
++			0x194 0x20      /* mcasp0_fsx.mcasp0_fsx, INPUT | MODE0 */
++			0x198 0x20      /* mcasp0_axr0.mcasp0_axr0, INPUT | MODE0 */
++			0x19c 0x22      /* mcasp0_ahclkr.mcasp0_axr2, INPUT | MODE2 */
++		>;
++	};
++
+ 	/************************/
+ 	/* P8 Header            */
+ 	/************************/
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dtsi b/arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dtsi
 new file mode 100644
-index 0000000..8921faa
+index 0000000..6a7378c
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd3-01-00a2.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -180,11 +403,13 @@ index 0000000..8921faa
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +/* #include "am335x-bone-led-gpio1-28.dtsi" */
 +#include "am335x-bone-led-gpio3-19.dtsi"
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +#include "am335x-bone-keymap0.dtsi"
 +/* #include "am335x-bone-keymap1.dtsi" */
 +/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -196,12 +421,13 @@ index 0000000..8921faa
 +#include "am335x-bone-panel-320x240.dtsi"
 +/* #include "am335x-bone-panel-480x272.dtsi" */
 +/* #include "am335x-bone-panel-800x480.dtsi" */
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dtsi b/arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dtsi
 new file mode 100644
-index 0000000..a94e37a
+index 0000000..bb27434
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd4-01-00a1.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -214,11 +440,13 @@ index 0000000..a94e37a
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +#include "am335x-bone-led-gpio1-28.dtsi"
 +/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +/* #include "am335x-bone-keymap0.dtsi" */
 +#include "am335x-bone-keymap1.dtsi"
 +/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -230,12 +458,13 @@ index 0000000..a94e37a
 +/* #include "am335x-bone-panel-320x240.dtsi" */
 +#include "am335x-bone-panel-480x272.dtsi"
 +/* #include "am335x-bone-panel-800x480.dtsi" */
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dtsi b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dtsi
 new file mode 100644
-index 0000000..7f94375
+index 0000000..5eb68c3
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a2.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -248,11 +477,13 @@ index 0000000..7f94375
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +#include "am335x-bone-led-gpio1-28.dtsi"
 +/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +/* #include "am335x-bone-keymap0.dtsi" */
 +/* #include "am335x-bone-keymap1.dtsi" */
 +#include "am335x-bone-keymap2.dtsi"
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -264,12 +495,13 @@ index 0000000..7f94375
 +/* #include "am335x-bone-panel-320x240.dtsi" */
 +/* #include "am335x-bone-panel-480x272.dtsi" */
 +#include "am335x-bone-panel-800x480.dtsi"
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dtsi b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dtsi
 new file mode 100644
-index 0000000..8ae1e8c
+index 0000000..4ce42f3
 --- /dev/null
 +++ b/arch/arm/boot/dts/am335x-bone-lcd7-01-00a3.dtsi
-@@ -0,0 +1,28 @@
+@@ -0,0 +1,31 @@
 +/*
 + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
 + *
@@ -282,11 +514,13 @@ index 0000000..8ae1e8c
 +/* #include "am335x-bone-led-gpio1-18.dtsi" */
 +#include "am335x-bone-led-gpio1-28.dtsi"
 +/* #include "am335x-bone-led-gpio3-19.dtsi" */
++/* #include "am335x-bone-led-gpio2-4-gpio2-5.dtsi" */
 +
 +/* Keypad */
 +#include "am335x-bone-keymap0.dtsi"
 +/* #include "am335x-bone-keymap1.dtsi" */
 +/* #include "am335x-bone-keymap2.dtsi" */
++/* #include "am335x-bone-keymap3.dtsi" */
 +
 +/* Backlight */
 +#include "am335x-bone-bl-gpio1-18.dtsi"
@@ -298,15 +532,33 @@ index 0000000..8ae1e8c
 +/* #include "am335x-bone-panel-320x240.dtsi" */
 +/* #include "am335x-bone-panel-480x272.dtsi" */
 +#include "am335x-bone-panel-800x480.dtsi"
++/* #include "am335x-bone-panel-1240x600-24bit.dtsi" */
 diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
-index 95d7ab9..126880f 100644
+index ee6cb5e..31f5071 100644
 --- a/arch/arm/boot/dts/am335x-bone.dts
 +++ b/arch/arm/boot/dts/am335x-bone.dts
-@@ -50,3 +50,13 @@
- /* http://elinux.org/CircuitCo:Audio_Cape_RevB */
- /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
- /* #include "am335x-bone-audio.dtsi" */
+@@ -80,6 +80,17 @@
+ /* #include "am335x-bone-ttyO5.dtsi" */
+ 
+ /* Capes */
++/* http://elinux.org/4D_4.3_LCD_CAPE */
++/* 4DCAPE-43 (Non Touch version): */
++/* #include "am335x-bone-4dcape-43.dtsi" */
++/* 4DCAPE-43T (Resistive Touch version): */
++/* #include "am335x-bone-4dcape-43t.dtsi" */
 +
++/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
++/* 4DCAPE-70 (Non Touch version): */
++/* #include "am335x-bone-4dcape-70.dtsi" */
++/* 4DCAPE-70T (Resistive Touch version): */
++/* #include "am335x-bone-4dcape-70t.dtsi" */
+ 
+ /* http://elinux.org/CircuitCo:Audio_Cape_RevA */
+ /* #include "am335x-bone-audio-reva.dtsi" */
+@@ -88,6 +99,19 @@
+ /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
+ /* #include "am335x-bone-audio-revb.dtsi" */
+ 
 +/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
 +/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
 +
@@ -316,12 +568,19 @@ index 95d7ab9..126880f 100644
 +/* http://elinux.org/CircuitCo:BeagleBone_LCD7 */
 +/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
 +/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
++
++/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
++/* #include "am335x-bone-bbb-exp-c.dtsi" */
++
+ /* http://elinux.org/CircuitCo:RTC_Cape */
+ /* i2c1: P9.17, P9.18 */
+ /* gpio: P8.26 (mfp: wakeup) */
 diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
-index 3fddf48..a019df7 100644
+index 602629c..27ac8ec 100644
 --- a/arch/arm/boot/dts/am335x-boneblack.dts
 +++ b/arch/arm/boot/dts/am335x-boneblack.dts
-@@ -44,6 +44,29 @@
- #include "am335x-boneblack-nxp-hdmi-no-audio.dtsi"
+@@ -78,6 +78,17 @@
+ /* #include "am335x-bone-ttyO5.dtsi" */
  
  /* Capes */
 +/* http://elinux.org/4D_4.3_LCD_CAPE */
@@ -331,17 +590,17 @@ index 3fddf48..a019df7 100644
 +/* #include "am335x-bone-4dcape-43t.dtsi" */
 +
 +/* http://www.4dsystems.com.au/product/4DCAPE_70T/ */
-+/* 4DCAPE-43 (Non Touch version): */
++/* 4DCAPE-70 (Non Touch version): */
 +/* #include "am335x-bone-4dcape-70.dtsi" */
-+/* 4DCAPE-43T (Resistive Touch version): */
++/* 4DCAPE-70T (Resistive Touch version): */
 +/* #include "am335x-bone-4dcape-70t.dtsi" */
-+
- /* http://elinux.org/CircuitCo:Audio_Cape_RevB */
+ 
+ /* http://elinux.org/CircuitCo:Audio_Cape_RevA */
+ /* #include "am335x-bone-audio-reva.dtsi" */
+@@ -86,6 +97,20 @@
  /* Pins: P9.24, P9.28, P9.29, P9.31, P9.30 */
--/* #include "am335x-bone-audio.dtsi" */
-\ No newline at end of file
-+/* #include "am335x-bone-audio.dtsi" */
-+
+ /* #include "am335x-bone-audio-revb.dtsi" */
+ 
 +/* http://elinux.org/CircuitCo:BeagleBone_LCD3 */
 +/* #include "am335x-bone-lcd3-01-00a2.dtsi" */
 +
@@ -352,7 +611,13 @@ index 3fddf48..a019df7 100644
 +/* am335x-boneblack: emmc has to be disabled for lcd7-01-00a2 */
 +/* #include "am335x-bone-lcd7-01-00a2.dtsi" */
 +/* #include "am335x-bone-lcd7-01-00a3.dtsi" */
-\ No newline at end of file
++
++/* http://www.chipsee.com/product/evm/beagle/beaglebone-black-expansion-capacitive.html */
++/* #include "am335x-bone-bbb-exp-c.dtsi" */
++
+ /* http://elinux.org/CircuitCo:RTC_Cape */
+ /* i2c1: P9.17, P9.18 */
+ /* gpio: P8.26 (mfp: wakeup) */
 -- 
 2.1.0
 
diff --git a/patches/beaglebone/pinmux/0020-cape-basic-proto.patch b/patches/beaglebone/pinmux/0020-cape-basic-proto.patch
new file mode 100644
index 000000000..f86b990d9
--- /dev/null
+++ b/patches/beaglebone/pinmux/0020-cape-basic-proto.patch
@@ -0,0 +1,61 @@
+From 0a2e7a47721a6299a2b68330d1d9560decc62423 Mon Sep 17 00:00:00 2001
+From: Robert Nelson <robertcnelson@gmail.com>
+Date: Fri, 19 Sep 2014 10:26:40 -0500
+Subject: [PATCH 20/20] cape: basic proto
+
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi | 17 +++++++++++++++++
+ arch/arm/boot/dts/am335x-bone.dts                   |  3 +++
+ arch/arm/boot/dts/am335x-boneblack.dts              |  3 +++
+ 3 files changed, 23 insertions(+)
+ create mode 100644 arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi
+
+diff --git a/arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi b/arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi
+new file mode 100644
+index 0000000..a4e4b4e
+--- /dev/null
++++ b/arch/arm/boot/dts/am335x-bone-basic-proto-cape.dtsi
+@@ -0,0 +1,17 @@
++/*
++ * Copyright (C) 2012 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.
++ */
++
++#include "am335x-bone-spi0-spidev.dtsi"
++#include "am335x-bone-ttyO1.dtsi"
++
++&tscadc {
++	status = "okay";
++	adc {
++		ti,adc-channels = <4 5 6>;
++	};
++};
+diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
+index 31f5071..bd39da9 100644
+--- a/arch/arm/boot/dts/am335x-bone.dts
++++ b/arch/arm/boot/dts/am335x-bone.dts
+@@ -121,3 +121,6 @@
+ /* uart4: P9.11, P9.13 */
+ /* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
+ /* #include "am335x-bone-crypto-00a0.dtsi" */
++
++/* http://elinux.org/CircuitCo:Basic_Proto_Cape */
++/* #include "am335x-bone-basic-proto-cape.dtsi" */
+diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts
+index 27ac8ec..59e9c20 100644
+--- a/arch/arm/boot/dts/am335x-boneblack.dts
++++ b/arch/arm/boot/dts/am335x-boneblack.dts
+@@ -120,3 +120,6 @@
+ /* uart4: P9.11, P9.13 */
+ /* gpio: gpio1 13 gpio1 17 (gpio NOT IMPLEMENTED YET) */
+ /* #include "am335x-bone-crypto-00a0.dtsi" */
++
++/* http://elinux.org/CircuitCo:Basic_Proto_Cape */
++/* #include "am335x-bone-basic-proto-cape.dtsi" */
+-- 
+2.1.0
+
diff --git a/patches/defconfig b/patches/defconfig
index a665c2e34..dba0df125 100644
--- a/patches/defconfig
+++ b/patches/defconfig
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.17.0-rc5 Kernel Configuration
+# Linux/arm 3.17.0-rc6 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_HAS_SG_CHAIN=y
@@ -1634,6 +1634,7 @@ CONFIG_ALTERA_STAPL=m
 # Argus cape driver for beaglebone black
 #
 CONFIG_CAPE_BONE_ARGUS=y
+CONFIG_BEAGLEBONE_PINMUX_HELPER=y
 # CONFIG_ECHO is not set
 
 #
@@ -4796,8 +4797,6 @@ CONFIG_OMAP_CONTROL_PHY=y
 CONFIG_OMAP_USB2=y
 CONFIG_TI_PIPE3=y
 # CONFIG_BCM_KONA_USB2_PHY is not set
-# CONFIG_PHY_ST_SPEAR1310_MIPHY is not set
-# CONFIG_PHY_ST_SPEAR1340_MIPHY is not set
 # CONFIG_POWERCAP is not set
 # CONFIG_MCB is not set
 
diff --git a/patches/ref_omap2plus_defconfig b/patches/ref_omap2plus_defconfig
index f3d87bc27..75cd5a3da 100644
--- a/patches/ref_omap2plus_defconfig
+++ b/patches/ref_omap2plus_defconfig
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.17.0-rc5 Kernel Configuration
+# Linux/arm 3.17.0-rc6 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_HAS_SG_CHAIN=y
@@ -1113,6 +1113,7 @@ CONFIG_SENSORS_LIS3_I2C=m
 # Argus cape driver for beaglebone black
 #
 # CONFIG_CAPE_BONE_ARGUS is not set
+# CONFIG_BEAGLEBONE_PINMUX_HELPER is not set
 # CONFIG_ECHO is not set
 
 #
@@ -2872,8 +2873,6 @@ CONFIG_OMAP_CONTROL_PHY=y
 CONFIG_OMAP_USB2=y
 CONFIG_TI_PIPE3=y
 # CONFIG_BCM_KONA_USB2_PHY is not set
-# CONFIG_PHY_ST_SPEAR1310_MIPHY is not set
-# CONFIG_PHY_ST_SPEAR1340_MIPHY is not set
 # CONFIG_POWERCAP is not set
 # CONFIG_MCB is not set
 
diff --git a/version.sh b/version.sh
index 7e24aa235..3057e6ba6 100644
--- a/version.sh
+++ b/version.sh
@@ -26,8 +26,8 @@ toolchain="gcc_linaro_gnueabihf_4_9"
 
 #Kernel/Build
 KERNEL_REL=3.17
-KERNEL_TAG=${KERNEL_REL}-rc5
-BUILD=bone3
+KERNEL_TAG=${KERNEL_REL}-rc6
+BUILD=bone4
 
 #v3.X-rcX + upto SHA
 #KERNEL_SHA=""
-- 
GitLab