Date   

[PATCH 1/3] matrix-gui-browser: port from arago overlay

Chase Maupin <Chase.Maupin@...>
 

* This package adds a simple web browser GUI application with
no decorations used to display matrix on the local display.
* Ported from arago overlay

Signed-off-by: Chase Maupin <Chase.Maupin@...>
---
recipes-ti/matrix/matrix-gui-browser_2.0.bb | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
create mode 100644 recipes-ti/matrix/matrix-gui-browser_2.0.bb

diff --git a/recipes-ti/matrix/matrix-gui-browser_2.0.bb b/recipes-ti/matrix/matrix-gui-browser_2.0.bb
new file mode 100644
index 0000000..602487b
--- /dev/null
+++ b/recipes-ti/matrix/matrix-gui-browser_2.0.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "Simple Qt web display using webkit"
+HOMEPAGE = "https://gitorious.org/matrix-gui-v2/matrix_browser"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://main.cpp;beginline=9;endline=37;md5=884b90f5bf0d711fe32c4f04b5276496"
+SECTION = "multimedia"
+PRIORITY = "optional"
+
+# Make sure that QT font libraries have been installed
+RDEPENDS += "qt4-embedded-fonts"
+
+PR = "r0"
+
+SRCREV = "db2e6b10e5a14358b6120a4a28de2f9d591bc55c"
+BRANCH ?= "master"
+
+SRC_URI = "git://gitorious.org/matrix-gui-v2/matrix_browser.git;protocol=git;branch=${BRANCH}"
+
+S = "${WORKDIR}/git"
+
+inherit qt4e
+
+do_install() {
+ install -d ${D}/${bindir}
+ install -m 0755 ${S}/matrix_browser ${D}/${bindir}
+}
--
1.7.0.4


Re: [PATCH] linux-ti33x-psp 3.1: add dto patch to fix problems with various sd cards

Koen Kooi
 

Op 26 jan. 2012, om 19:01 heeft Tom Rini het volgende geschreven:

On Thu, Jan 26, 2012 at 10:38 AM, Koen Kooi <koen@...> wrote:
Signed-off-by: Koen Kooi <koen@...>
I know the patch isn't yours but should we perhaps go in and make the
patch more obvious? The function we're patching does a lot of
guesswork to find 'dto' and then we just say 'use the max'. Why not
also go rip out that logic?
I was having the same conversation with Philip Balister on IRC just now :) It seems that this patch is being used by various TI customers to magically fix things so we do need to come up with a proper solution.

regards,

Koen


Re: [PATCH] linux-ti33x-psp 3.1: add dto patch to fix problems with various sd cards

Tom Rini
 

On Thu, Jan 26, 2012 at 10:38 AM, Koen Kooi <koen@...> wrote:
Signed-off-by: Koen Kooi <koen@...>
I know the patch isn't yours but should we perhaps go in and make the
patch more obvious? The function we're patching does a lot of
guesswork to find 'dto' and then we just say 'use the max'. Why not
also go rip out that logic?

--
Tom


[PATCH] linux-ti33x-psp 3.1: add dto patch to fix problems with various sd cards

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
...Set-dto-to-max-value-of-14-to-avoid-SD-Ca.patch | 34 ++++++++++++++++++++
recipes-kernel/linux/linux-ti33x-psp_3.1.bb | 3 +-
2 files changed, 36 insertions(+), 1 deletions(-)
create mode 100644 recipes-kernel/linux/linux-ti33x-psp-3.1/0038-omap_hsmmc-Set-dto-to-max-value-of-14-to-avoid-SD-Ca.patch

diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/0038-omap_hsmmc-Set-dto-to-max-value-of-14-to-avoid-SD-Ca.patch b/recipes-kernel/linux/linux-ti33x-psp-3.1/0038-omap_hsmmc-Set-dto-to-max-value-of-14-to-avoid-SD-Ca.patch
new file mode 100644
index 0000000..4fe037e
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/0038-omap_hsmmc-Set-dto-to-max-value-of-14-to-avoid-SD-Ca.patch
@@ -0,0 +1,34 @@
+From d12058d27dddf60b36f5b2142ee999e55bddfff6 Mon Sep 17 00:00:00 2001
+From: Steve Sakoman <steve@...>
+Date: Mon, 18 Jul 2011 23:13:41 -0500
+Subject: [PATCH 38/38] omap_hsmmc: Set dto to max value of 14 to avoid SD
+ Card timeouts
+
+This fixes MMC errors due to timeouts on certain SD Cards following suggestions
+to set dto to 14 by Jason Kridner and Steven Kipisz
+
+Details of the issue:
+http://talk.maemo.org/showthread.php?p=1000707#post1000707
+
+This fix was originally proposed by Sukumar Ghoral of TI.
+---
+ drivers/mmc/host/omap_hsmmc.c | 3 +++
+ 1 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
+index 35505bd..0be77ec 100644
+--- a/drivers/mmc/host/omap_hsmmc.c
++++ b/drivers/mmc/host/omap_hsmmc.c
+@@ -1574,6 +1574,9 @@ static void set_data_timeout(struct omap_hsmmc_host *host,
+ dto = 14;
+ }
+
++ /* Set dto to max value of 14 to avoid SD Card timeouts */
++ dto = 14;
++
+ reg &= ~DTO_MASK;
+ reg |= dto << DTO_SHIFT;
+ OMAP_HSMMC_WRITE(host->base, SYSCTL, reg);
+--
+1.7.7.5
+
diff --git a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
index 84e5c3b..591731c 100644
--- a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
+++ b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
@@ -11,7 +11,7 @@ MULTI_CONFIG_BASE_SUFFIX = ""

BRANCH = "v3.1-meta-ti-r1r+gitr1d84d8853fa30cf3db2571a5aec572accca4e29d"
SRCREV = "1d84d8853fa30cf3db2571a5aec572accca4e29d"
-MACHINE_KERNEL_PR_append = "k+gitr${SRCREV}"
+MACHINE_KERNEL_PR_append = "l+gitr${SRCREV}"

COMPATIBLE_MACHINE = "(ti33x)"

@@ -62,6 +62,7 @@ PATCHES_OVER_PSP = " \
file://0035-beaglebone-add-structs-for-DVI-cape-LEDs.patch\
file://0036-beaglebone-update-LCD-cape-partnumber.patch \
file://0037-beaglebone-compare-complete-partnumber-not-the-first.patch \
+ file://0038-omap_hsmmc-Set-dto-to-max-value-of-14-to-avoid-SD-Ca.patch \
"

SRC_URI += "${@base_contains('DISTRO_FEATURES', 'tipspkernel', "", "${PATCHES_OVER_PSP}", d)}"
--
1.7.2.5


[PATCH] libgles-omap3: hide subpackages from shlib code

Koen Kooi
 

This depends on a matching patch to OE-core: http://patches.openembedded.org/patch/20191/

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index da3aeb8..69254c1 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r24"
+PR = "r25"

COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

@@ -241,6 +241,13 @@ FILES_${PN}-es5 = "${libdir}/ES5*/* ${bindir}/ES5*/*"
FILES_${PN}-es6 = "${libdir}/ES6*/* ${bindir}/ES6*/*"
FILES_${PN}-es8 = "${libdir}/ES8*/* ${bindir}/ES8*/*"

+# Stop shlib code from picking a subpackage
+PRIVATE_LIBS_${PN}-es2 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
+PRIVATE_LIBS_${PN}-es3 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
+PRIVATE_LIBS_${PN}-es5 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
+PRIVATE_LIBS_${PN}-es6 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
+PRIVATE_LIBS_${PN}-es8 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
+
PACKAGES =+ "${PN}-blitwsegl ${PN}-flipwsegl ${PN}-frontwsegl ${PN}-linuxfbwsegl ${PN}-x11wsegl ${PN}-driwsegl"
FILES_${PN}-blitwsegl = "${libdir}/libpvrPVR2D_BLITWSEGL.so.*"
FILES_${PN}-flipwsegl = "${libdir}/libpvrPVR2D_FLIPWSEGL.so.*"
--
1.7.2.5


[PATCH 2/2] libgles-omap3: make postinsts safe for offline-root usage (e.g. do_rootfs)

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 16 ++++++++--------
1 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index 3f792b1..da3aeb8 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r23"
+PR = "r24"

COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

@@ -340,35 +340,35 @@ INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."

# Append to update-rc.d postinst
pkg_postinst_${PN}_append() {
-rm -f ${sysconfdir}/powervr-esrev
+rm -f $D${sysconfdir}/powervr-esrev

ln -sf /usr/lib/libXdmcp.so.6.0.0 /usr/lib/libXdmcp.so.0
ln -sf /usr/lib/libXau.so.6.0.0 /usr/lib/libXau.so.0
}

pkg_postinst_${PN}-blitwsegl() {
-rm -f ${sysconfdir}/powervr-esrev
+rm -f $D${sysconfdir}/powervr-esrev
}

pkg_postinst_${PN}-flipwsegl() {
-rm -f ${sysconfdir}/powervr-esrev
+rm -f $D${sysconfdir}/powervr-esrev
}

pkg_postinst_${PN}-frontwsegl() {
-rm -f ${sysconfdir}/powervr-esrev
+rm -f $D${sysconfdir}/powervr-esrev
}
pkg_postinst_${PN}-linuxfbwsegl() {
-rm -f ${sysconfdir}/powervr-esrev
+rm -f $D${sysconfdir}/powervr-esrev
}

pkg_postinst_${PN}-x11wsegl() {
-rm -f ${sysconfdir}/powervr-esrev
+rm -f $D${sysconfdir}/powervr-esrev

echo "[default]" > $D${sysconfdir}/powervr.ini
echo "WindowSystem=libpvrPVR2D_X11WSEGL.so.1" >> $D${sysconfdir}/powervr.ini
}

pkg_postinst_${PN}-driwsegl() {
-rm -f ${sysconfdir}/powervr-esrev
+rm -f $D${sysconfdir}/powervr-esrev
}

--
1.7.2.5


[PATCH 1/2] libgles-omap3: enable X11 windowing system when installing the X11 WS subpackage

Koen Kooi
 

The X11 WS is not installed by default, but currently won't work when being manually installed. This change has no effect existing X11-less installs/images/tasks.

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index 016b991..3f792b1 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r22"
+PR = "r23"

COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

@@ -363,6 +363,9 @@ rm -f ${sysconfdir}/powervr-esrev

pkg_postinst_${PN}-x11wsegl() {
rm -f ${sysconfdir}/powervr-esrev
+
+echo "[default]" > $D${sysconfdir}/powervr.ini
+echo "WindowSystem=libpvrPVR2D_X11WSEGL.so.1" >> $D${sysconfdir}/powervr.ini
}

pkg_postinst_${PN}-driwsegl() {
--
1.7.2.5


[PATCH 2/2] linux-3.0: fix beagleboard DSI PLL regression

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
...d-reinstate-usage-of-hi-speed-PLL-divider.patch | 29 ++++++++++++++++++++
recipes-kernel/linux/linux_3.0.bb | 3 +-
2 files changed, 31 insertions(+), 1 deletions(-)
create mode 100644 recipes-kernel/linux/linux-3.0/beagle/0011-beagleboard-reinstate-usage-of-hi-speed-PLL-divider.patch

diff --git a/recipes-kernel/linux/linux-3.0/beagle/0011-beagleboard-reinstate-usage-of-hi-speed-PLL-divider.patch b/recipes-kernel/linux/linux-3.0/beagle/0011-beagleboard-reinstate-usage-of-hi-speed-PLL-divider.patch
new file mode 100644
index 0000000..4d2a978
--- /dev/null
+++ b/recipes-kernel/linux/linux-3.0/beagle/0011-beagleboard-reinstate-usage-of-hi-speed-PLL-divider.patch
@@ -0,0 +1,29 @@
+From a2139a0efb9472a649465a1080799c73470fd201 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@...>
+Date: Wed, 25 Jan 2012 15:48:36 +0100
+Subject: [PATCH] beagleboard: reinstate usage of hi-speed PLL divider
+
+Signed-off-by: Koen Kooi <koen@...>
+---
+ arch/arm/mach-omap2/board-omap3beagle.c | 5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
+index 016d0985..c4c7a99 100644
+--- a/arch/arm/mach-omap2/board-omap3beagle.c
++++ b/arch/arm/mach-omap2/board-omap3beagle.c
+@@ -467,6 +467,11 @@ static struct omap_dss_device beagle_dvi_device = {
+ .driver_name = "generic_dpi_panel",
+ .data = &dvi_panel,
+ .phy.dpi.data_lines = 24,
++ .clocks = {
++ .dispc = {
++ .dispc_fclk_src = OMAP_DSS_CLK_SRC_DSI_PLL_HSDIV_DISPC,
++ },
++ },
+ .reset_gpio = -EINVAL,
+ };
+
+--
+1.7.7.5
+
diff --git a/recipes-kernel/linux/linux_3.0.bb b/recipes-kernel/linux/linux_3.0.bb
index 70ca7cc..d62c1ea 100644
--- a/recipes-kernel/linux/linux_3.0.bb
+++ b/recipes-kernel/linux/linux_3.0.bb
@@ -10,7 +10,7 @@ PV = "3.0.17"
SRCREV_pn-${PN} = "e9d23be2708477feeaec78e707c80441520c1ef6"

# The main PR is now using MACHINE_KERNEL_PR, for omap3 see conf/machine/include/omap3.inc
-MACHINE_KERNEL_PR_append = "b"
+MACHINE_KERNEL_PR_append = "c"

FILESPATH =. "${FILE_DIRNAME}/linux-3.0:${FILE_DIRNAME}/linux-3.0/${MACHINE}:"

@@ -194,6 +194,7 @@ SRC_URI += "git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gi
file://beagle/0008-OMAP2-add-cpu-id-register-to-MAC-address-helper.patch \
file://beagle/0009-HACK-OMAP2-BeagleBoard-Fix-up-random-or-missing-MAC-.patch \
file://beagle/0010-ARM-OMAP2-beagleboard-fix-mmc-write-protect-pin-when.patch \
+ file://beagle/0011-beagleboard-reinstate-usage-of-hi-speed-PLL-divider.patch \
file://madc/0001-Enabling-Hwmon-driver-for-twl4030-madc.patch \
file://madc/0002-mfd-twl-core-enable-madc-clock.patch \
\
--
1.7.2.5


[PATCH 1/2] linux-ti335x-psp 3.1: enable support for beaglebone cape EEPROM based detection

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
...dd-support-for-7-LCD-cape-fix-DVI-entries.patch | 359 ++++++++++++++++++++
...033-beaglebone-update-DVI-cape-partnumber.patch | 26 ++
...really-enable-i2c2-pullups-fixes-timeouts.patch | 29 ++
...-beaglebone-add-structs-for-DVI-cape-LEDs.patch | 119 +++++++
...036-beaglebone-update-LCD-cape-partnumber.patch | 26 ++
recipes-kernel/linux/linux-ti33x-psp_3.1.bb | 9 +-
6 files changed, 566 insertions(+), 2 deletions(-)
create mode 100644 recipes-kernel/linux/linux-ti33x-psp-3.1/0032-am335x-add-support-for-7-LCD-cape-fix-DVI-entries.patch
create mode 100644 recipes-kernel/linux/linux-ti33x-psp-3.1/0033-beaglebone-update-DVI-cape-partnumber.patch
create mode 100644 recipes-kernel/linux/linux-ti33x-psp-3.1/0034-beaglebone-really-enable-i2c2-pullups-fixes-timeouts.patch
create mode 100644 recipes-kernel/linux/linux-ti33x-psp-3.1/0035-beaglebone-add-structs-for-DVI-cape-LEDs.patch
create mode 100644 recipes-kernel/linux/linux-ti33x-psp-3.1/0036-beaglebone-update-LCD-cape-partnumber.patch

diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/0032-am335x-add-support-for-7-LCD-cape-fix-DVI-entries.patch b/recipes-kernel/linux/linux-ti33x-psp-3.1/0032-am335x-add-support-for-7-LCD-cape-fix-DVI-entries.patch
new file mode 100644
index 0000000..eda9493
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/0032-am335x-add-support-for-7-LCD-cape-fix-DVI-entries.patch
@@ -0,0 +1,359 @@
+From cdd84fe3886d332e9e706940af2516559da92349 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@...>
+Date: Thu, 5 Jan 2012 12:03:20 +0100
+Subject: [PATCH 32/35] am335x: add support for 7" LCD cape, fix DVI entries
+
+Using the EEPROMs!
+
+Signed-off-by: Koen Kooi <koen@...>
+---
+ arch/arm/mach-omap2/board-am335xevm.c | 216 ++++++++++++++++++++++++++++++---
+ arch/arm/mach-omap2/mux33xx.c | 2 +-
+ 2 files changed, 199 insertions(+), 19 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c
+index 116089f..6c19334 100644
+--- a/arch/arm/mach-omap2/board-am335xevm.c
++++ b/arch/arm/mach-omap2/board-am335xevm.c
+@@ -146,6 +146,36 @@ struct da8xx_lcdc_platform_data TFC_S9700RTWV35TR_01B_pdata = {
+ .type = "TFC_S9700RTWV35TR_01B",
+ };
+
++static const struct display_panel bbtoys7_panel = {
++ WVGA,
++ 16,
++ 16,
++ COLOR_ACTIVE,
++};
++
++static struct lcd_ctrl_config bbtoys7_cfg = {
++ &bbtoys7_panel,
++ .ac_bias = 255,
++ .ac_bias_intrpt = 0,
++ .dma_burst_sz = 16,
++ .bpp = 16,
++ .fdd = 0x80,
++ .tft_alt_mode = 0,
++ .stn_565_mode = 0,
++ .mono_8bit_mode = 0,
++ .invert_line_clock = 1,
++ .invert_frm_clock = 1,
++ .sync_edge = 0,
++ .sync_ctrl = 1,
++ .raster_order = 0,
++};
++
++struct da8xx_lcdc_platform_data bbtoys7_pdata = {
++ .manu_name = "ThreeFive",
++ .controller_data = &bbtoys7_cfg,
++ .type = "TFC_S9700RTWV35TR_01B",
++};
++
+ static const struct display_panel dvi_panel = {
+ WVGA,
+ 16,
+@@ -345,9 +375,34 @@ struct am335x_evm_eeprom_config {
+ static struct am335x_evm_eeprom_config config;
+ static bool daughter_brd_detected;
+
++struct beaglebone_cape_eeprom_config {
++ u32 header;
++ char format_revision[2];
++ char name[32];
++ char version[4];
++ char manufacturer[16];
++ char partnumber[16];
++ u16 numpins;
++ char serial[12];
++ u8 muxdata[170];
++ u16 current_3v3;
++ u16 current_vdd5v;
++ u16 current_sys5v;
++ u16 dc;
++};
++
++static struct beaglebone_cape_eeprom_config cape_config;
++static bool beaglebone_cape_detected;
++
++/* keep track of ADC pin usage */
++static int capecount = 0;
++static bool beaglebone_tsadcpins_free = 1;
++
++
+ #define GP_EVM_REV_IS_1_0A 0x1
+ #define GP_EVM_REV_IS_1_1A 0x2
+ #define GP_EVM_REV_IS_UNKNOWN 0xFF
++#define GP_EVM_ACTUALLY_BEAGLEBONE 0xBB
+ static unsigned int gp_evm_revision = GP_EVM_REV_IS_UNKNOWN;
+
+ #define EEPROM_MAC_ADDRESS_OFFSET 60 /* 4+8+4+12+32 */
+@@ -422,7 +477,7 @@ static struct pinmux_config lcdc_pin_mux[] = {
+ {NULL, 0},
+ };
+
+-/* Module pin mux for DVI board */
++/* Module pin mux for Beagleboardtoys DVI cape */
+ static struct pinmux_config dvi_pin_mux[] = {
+ {"lcd_data0.lcd_data0", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
+ | AM33XX_PULL_DISA},
+@@ -459,13 +514,56 @@ static struct pinmux_config dvi_pin_mux[] = {
+ {"lcd_vsync.lcd_vsync", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
+ {"lcd_hsync.lcd_hsync", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
+ {"lcd_pclk.lcd_pclk", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
+- {"lcd_ac_bias_en.lcd_ac_bias_en", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT}, //DVIEN
++ {"lcd_ac_bias_en.lcd_ac_bias_en", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
+ {"gpmc_a2.rgmii2_td3", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT}, // USR0 LED
+ {"gpmc_a3.rgmii2_td2", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT}, // USR1 LED
+ {"gpmc_ad7.gpmc_ad7", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT}, // DVI PDn
+ {NULL, 0},
+ };
+
++/* Module pin mux for Beagleboardtoys 7" LCD cape */
++static struct pinmux_config bbtoys7_pin_mux[] = {
++ {"lcd_data0.lcd_data0", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data1.lcd_data1", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data2.lcd_data2", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data3.lcd_data3", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data4.lcd_data4", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data5.lcd_data5", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data6.lcd_data6", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data7.lcd_data7", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data8.lcd_data8", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data9.lcd_data9", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data10.lcd_data10", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data11.lcd_data11", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data12.lcd_data12", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data13.lcd_data13", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data14.lcd_data14", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_data15.lcd_data15", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
++ | AM33XX_PULL_DISA},
++ {"lcd_vsync.lcd_vsync", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
++ {"lcd_hsync.lcd_hsync", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
++ {"lcd_pclk.lcd_pclk", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
++ {"lcd_ac_bias_en.lcd_ac_bias_en", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT},
++ {"gpmc_a2.gpio1_18", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT}, // Backlight
++ {"ecap0_in_pwm0_out.gpio0_7", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT}, // AVDD_EN
++ {NULL, 0},
++};
++
+ static struct pinmux_config tsc_pin_mux[] = {
+ {"ain0.ain0", OMAP_MUX_MODE0 | AM33XX_INPUT_EN},
+ {"ain1.ain1", OMAP_MUX_MODE0 | AM33XX_INPUT_EN},
+@@ -771,16 +869,6 @@ static struct gpio_led gpio_leds[] = {
+ .name = "beaglebone::usr3",
+ .gpio = BEAGLEBONE_USR4_LED,
+ },
+- {
+- .name = "dvi::usr0",
+- .default_trigger = "heartbeat",
+- .gpio = BEAGLEBONEDVI_USR0_LED,
+- },
+- {
+- .name = "dvi::usr1",
+- .default_trigger = "mmc0",
+- .gpio = BEAGLEBONEDVI_USR1_LED,
+- },
+ };
+
+ static struct gpio_led_platform_data gpio_led_info = {
+@@ -905,6 +993,31 @@ static void lcdc_init(int evm_id, int profile)
+ return;
+ }
+
++#define BEAGLEBONE_LCD_AVDD_EN GPIO_TO_PIN(0, 7)
++#define BEAGLEBONE_LCD_BL GPIO_TO_PIN(1, 18)
++
++static void bbtoys7lcd_init(int evm_id, int profile)
++{
++ setup_pin_mux(bbtoys7_pin_mux);
++
++ // we are being stupid and setting pixclock from here instead of da8xx-fb.c
++ if (conf_disp_pll(300000000)) {
++ pr_info("Failed to set pixclock to 300000000, not attempting to"
++ "register LCD cape\n");
++ return;
++ }
++
++ if (am33xx_register_lcdc(&bbtoys7_pdata))
++ pr_info("Failed to register Beagleboardtoys 7\" LCD cape device\n");
++
++ gpio_request(BEAGLEBONE_LCD_BL, "BONE_LCD_BL");
++ gpio_direction_output(BEAGLEBONE_LCD_BL, 1);
++ gpio_request(BEAGLEBONE_LCD_AVDD_EN, "BONE_LCD_AVDD_EN");
++ gpio_direction_output(BEAGLEBONE_LCD_AVDD_EN, 1);
++
++ return;
++}
++
+ #define BEAGLEBONEDVI_PDn GPIO_TO_PIN(1, 7)
+
+ static void dvi_init(int evm_id, int profile)
+@@ -921,7 +1034,7 @@ static void dvi_init(int evm_id, int profile)
+ }
+
+ if (am33xx_register_lcdc(&dvi_pdata))
+- pr_info("Failed to register BeagleBoardToys DVI adapter\n");
++ pr_info("Failed to register BeagleBoardToys DVI cape\n");
+ return;
+ }
+
+@@ -932,10 +1045,15 @@ static void tsc_init(int evm_id, int profile)
+ if (gp_evm_revision == GP_EVM_REV_IS_1_1A) {
+ am335x_touchscreen_data.analog_input = 1;
+ pr_info("TSC connected to beta GP EVM\n");
+- } else {
++ }
++ if (gp_evm_revision == GP_EVM_REV_IS_1_1A) {
+ am335x_touchscreen_data.analog_input = 0;
+ pr_info("TSC connected to alpha GP EVM\n");
+ }
++ if( gp_evm_revision == GP_EVM_ACTUALLY_BEAGLEBONE) {
++ am335x_touchscreen_data.analog_input = 1;
++ pr_info("TSC connected to BeagleBone\n");;
++ }
+ setup_pin_mux(tsc_pin_mux);
+ err = platform_device_register(&tsc_device);
+ if (err)
+@@ -1148,11 +1266,76 @@ static struct i2c_board_info beaglebone_i2c_boardinfo2[] = {
+ },
+ };
+
++static void beaglebone_cape_setup(struct memory_accessor *mem_acc, void *context)
++{
++ capecount++;
++ int ret;
++ char tmp[32];
++ char name[32];
++ char manufacturer[32];
++
++ /* get cape specific data */
++ ret = mem_acc->read(mem_acc, (char *)&cape_config, 0, sizeof(cape_config));
++ if (ret != sizeof(cape_config)) {
++ pr_warning("BeagleBone cape EEPROM: could not read eeprom at address 0x%x\n", capecount + 0x53);
++ if ((capecount > 3) && (beaglebone_tsadcpins_free == 1)) {
++ pr_info("BeagleBone cape: exporting ADC pins to sysfs\n");
++ bone_tsc_init(0,0);
++ beaglebone_tsadcpins_free = 0;
++ }
++ return;
++ }
++
++ if (cape_config.header != AM335X_EEPROM_HEADER) {
++ pr_warning("BeagleBone Cape EEPROM: wrong header 0x%x, expected 0x%x\n",
++ cape_config.header, AM335X_EEPROM_HEADER);
++ goto out;
++ }
++
++ pr_info("BeagleBone cape EEPROM: found eeprom at address 0x%x\n", capecount + 0x53);
++ snprintf(name, sizeof(cape_config.name) + 1, "%s", cape_config.name);
++ snprintf(manufacturer, sizeof(cape_config.manufacturer) + 1, "%s", cape_config.manufacturer);
++ pr_info("BeagleBone cape: %s %s\n", manufacturer, name);
++ snprintf(tmp, sizeof(cape_config.partnumber) + 1, "%s", cape_config.partnumber);
++ pr_info("BeagleBone cape partnumber: %s\n", tmp);
++
++ if (!strncmp("DVI01", cape_config.partnumber, 5)) {
++ pr_info("BeagleBone cape: initializing DVI cape\n");
++ dvi_init(0,0);
++ }
++ if (!strncmp("LCD01", cape_config.partnumber, 5)) {
++ pr_info("BeagleBone cape: initializing LCD cape\n");
++ bbtoys7lcd_init(0,0);
++ pr_info("BeagleBone cape: initializing LCD cape touchscreen\n");
++ tsc_init(0,0);
++ beaglebone_tsadcpins_free = 0;
++ }
++
++
++ if ((capecount > 3) && (beaglebone_tsadcpins_free == 1)) {
++ pr_info("BeagleBone cape: exporting ADC pins to sysfs\n");
++ bone_tsc_init(0,0);
++ beaglebone_tsadcpins_free = 0;
++ }
++
++ return;
++out:
++ /*
++ * If the EEPROM hasn't been programed or an incorrect header
++ * or board name are read, assume this is an old beaglebone board
++ * (< Rev A3)
++ */
++ pr_err("Could not detect BeagleBone cape properly\n");
++ beaglebone_cape_detected = false;
++
++}
++
+ static struct at24_platform_data cape_eeprom_info = {
+ .byte_len = (256*1024) / 8,
+ .page_size = 64,
+ .flags = AT24_FLAG_ADDR16,
+ .context = (void *)NULL,
++ .setup = beaglebone_cape_setup,
+ };
+
+ static struct i2c_board_info __initdata cape_i2c_boardinfo[] = {
+@@ -1587,26 +1770,22 @@ static struct evm_dev_cfg ip_phn_evm_dev_cfg[] = {
+ /* Beaglebone < Rev A3 */
+ static struct evm_dev_cfg beaglebone_old_dev_cfg[] = {
+ {rmii1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+- {dvi_init, DEV_ON_BASEBOARD, PROFILE_ALL},
+ {usb0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {usb1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {i2c2_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {mmc0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {boneleds_init, DEV_ON_BASEBOARD, PROFILE_ALL},
+- {bone_tsc_init, DEV_ON_BASEBOARD, PROFILE_ALL},
+ {NULL, 0, 0},
+ };
+
+ /* Beaglebone Rev A3 and after */
+ static struct evm_dev_cfg beaglebone_dev_cfg[] = {
+ {mii1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+- {dvi_init, DEV_ON_BASEBOARD, PROFILE_ALL},
+ {usb0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {usb1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {i2c2_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {mmc0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
+ {boneleds_init, DEV_ON_BASEBOARD, PROFILE_ALL},
+- {bone_tsc_init, DEV_ON_BASEBOARD, PROFILE_ALL},
+ {NULL, 0, 0},
+ };
+
+@@ -1689,6 +1868,7 @@ static void setup_beaglebone_old(void)
+ static void setup_beaglebone(void)
+ {
+ pr_info("The board is a AM335x Beaglebone.\n");
++ gp_evm_revision = GP_EVM_ACTUALLY_BEAGLEBONE;
+
+ /* Beagle Bone has Micro-SD slot which doesn't have Write Protect pin */
+ am335x_mmc[0].gpio_wp = -EINVAL;
+diff --git a/arch/arm/mach-omap2/mux33xx.c b/arch/arm/mach-omap2/mux33xx.c
+index 35986ca..da08e2e 100644
+--- a/arch/arm/mach-omap2/mux33xx.c
++++ b/arch/arm/mach-omap2/mux33xx.c
+@@ -85,7 +85,7 @@ static struct omap_mux __initdata am33xx_muxmodes[] = {
+ NULL, NULL, NULL, NULL),
+ _AM33XX_MUXENTRY(GPMC_A2, 0,
+ "gpmc_a2", "mii2_txd3", "rgmii2_td3", "mmc2_dat1",
+- NULL, NULL, NULL, NULL),
++ NULL, NULL, NULL, "gpio1_18"),
+ _AM33XX_MUXENTRY(GPMC_A3, 0,
+ "gpmc_a3", "mii2_txd2", "rgmii2_td2", "mmc2_dat2",
+ NULL, NULL, NULL, NULL),
+--
+1.7.2.5
+
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/0033-beaglebone-update-DVI-cape-partnumber.patch b/recipes-kernel/linux/linux-ti33x-psp-3.1/0033-beaglebone-update-DVI-cape-partnumber.patch
new file mode 100644
index 0000000..d69e1e5
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/0033-beaglebone-update-DVI-cape-partnumber.patch
@@ -0,0 +1,26 @@
+From 0ddfbfd5d5b6fdf84b9ea174e39b872cacaa8be5 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@...>
+Date: Wed, 25 Jan 2012 09:56:14 +0100
+Subject: [PATCH 33/35] beaglebone: update DVI cape partnumber
+
+Signed-off-by: Koen Kooi <koen@...>
+---
+ arch/arm/mach-omap2/board-am335xevm.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c
+index 6c19334..7c91ff8 100644
+--- a/arch/arm/mach-omap2/board-am335xevm.c
++++ b/arch/arm/mach-omap2/board-am335xevm.c
+@@ -1299,7 +1299,7 @@ static void beaglebone_cape_setup(struct memory_accessor *mem_acc, void *context
+ snprintf(tmp, sizeof(cape_config.partnumber) + 1, "%s", cape_config.partnumber);
+ pr_info("BeagleBone cape partnumber: %s\n", tmp);
+
+- if (!strncmp("DVI01", cape_config.partnumber, 5)) {
++ if (!strncmp("BB-BONE-DVID-01", cape_config.partnumber, 5)) {
+ pr_info("BeagleBone cape: initializing DVI cape\n");
+ dvi_init(0,0);
+ }
+--
+1.7.2.5
+
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/0034-beaglebone-really-enable-i2c2-pullups-fixes-timeouts.patch b/recipes-kernel/linux/linux-ti33x-psp-3.1/0034-beaglebone-really-enable-i2c2-pullups-fixes-timeouts.patch
new file mode 100644
index 0000000..018473d
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/0034-beaglebone-really-enable-i2c2-pullups-fixes-timeouts.patch
@@ -0,0 +1,29 @@
+From d8bf8cea10710285b5bc1759162bd18c81d8ea3a Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@...>
+Date: Wed, 25 Jan 2012 12:52:13 +0100
+Subject: [PATCH 34/35] beaglebone: really enable i2c2 pullups, fixes timeouts on boot ~4 seconds less wasted
+
+Signed-off-by: Koen Kooi <koen@...>
+---
+ arch/arm/mach-omap2/board-am335xevm.c | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c
+index 7c91ff8..9556736 100644
+--- a/arch/arm/mach-omap2/board-am335xevm.c
++++ b/arch/arm/mach-omap2/board-am335xevm.c
+@@ -707,9 +707,9 @@ static struct pinmux_config i2c1_pin_mux[] = {
+
+ static struct pinmux_config i2c2_pin_mux[] = {
+ {"uart1_ctsn.i2c2_sda", OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW |
+- AM33XX_PULL_ENBL | AM33XX_INPUT_EN},
++ AM33XX_PIN_INPUT_PULLUP},
+ {"uart1_rtsn.i2c2_scl", OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW |
+- AM33XX_PULL_ENBL | AM33XX_INPUT_EN},
++ AM33XX_PIN_INPUT_PULLUP},
+ {NULL, 0},
+ };
+
+--
+1.7.2.5
+
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/0035-beaglebone-add-structs-for-DVI-cape-LEDs.patch b/recipes-kernel/linux/linux-ti33x-psp-3.1/0035-beaglebone-add-structs-for-DVI-cape-LEDs.patch
new file mode 100644
index 0000000..5d13ea9
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/0035-beaglebone-add-structs-for-DVI-cape-LEDs.patch
@@ -0,0 +1,119 @@
+From f4d66b3ee9bbe36e17f9aaee2aedfa547e7bbb8c Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@...>
+Date: Wed, 25 Jan 2012 10:04:15 +0100
+Subject: [PATCH 35/35] beaglebone: add structs for DVI cape LEDs
+
+Signed-off-by: Koen Kooi <koen@...>
+---
+ arch/arm/mach-omap2/board-am335xevm.c | 67 +++++++++++++++++++++++++++++---
+ 1 files changed, 60 insertions(+), 7 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c
+index 9556736..1b398c7 100644
+--- a/arch/arm/mach-omap2/board-am335xevm.c
++++ b/arch/arm/mach-omap2/board-am335xevm.c
+@@ -847,10 +847,45 @@ static struct pinmux_config usb1_pin_mux[] = {
+ #define BEAGLEBONE_USR3_LED GPIO_TO_PIN(1, 23)
+ #define BEAGLEBONE_USR4_LED GPIO_TO_PIN(1, 24)
+
++static struct gpio_led bone_gpio_leds[] = {
++ {
++ .name = "beaglebone::usr0",
++ .default_trigger = "heartbeat",
++ .gpio = BEAGLEBONE_USR1_LED,
++ },
++ {
++ .name = "beaglebone::usr1",
++ .default_trigger = "mmc0",
++ .gpio = BEAGLEBONE_USR2_LED,
++ },
++ {
++ .name = "beaglebone::usr2",
++ .gpio = BEAGLEBONE_USR3_LED,
++ },
++ {
++ .name = "beaglebone::usr3",
++ .gpio = BEAGLEBONE_USR4_LED,
++ },
++};
++
++static struct gpio_led_platform_data bone_gpio_led_info = {
++ .leds = bone_gpio_leds,
++ .num_leds = ARRAY_SIZE(bone_gpio_leds),
++};
++
++static struct platform_device bone_leds_gpio = {
++ .name = "leds-gpio",
++ .id = -1,
++ .dev = {
++ .platform_data = &bone_gpio_led_info,
++ },
++};
++
++
+ #define BEAGLEBONEDVI_USR0_LED GPIO_TO_PIN(1, 18)
+ #define BEAGLEBONEDVI_USR1_LED GPIO_TO_PIN(1, 19)
+
+-static struct gpio_led gpio_leds[] = {
++static struct gpio_led dvi_gpio_leds[] = {
+ {
+ .name = "beaglebone::usr0",
+ .default_trigger = "heartbeat",
+@@ -869,18 +904,28 @@ static struct gpio_led gpio_leds[] = {
+ .name = "beaglebone::usr3",
+ .gpio = BEAGLEBONE_USR4_LED,
+ },
++ {
++ .name = "dvi::usr0",
++ .default_trigger = "heartbeat",
++ .gpio = BEAGLEBONEDVI_USR0_LED,
++ },
++ {
++ .name = "dvi::usr1",
++ .default_trigger = "mmc0",
++ .gpio = BEAGLEBONEDVI_USR1_LED,
++ },
+ };
+
+-static struct gpio_led_platform_data gpio_led_info = {
+- .leds = gpio_leds,
+- .num_leds = ARRAY_SIZE(gpio_leds),
++static struct gpio_led_platform_data dvi_gpio_led_info = {
++ .leds = dvi_gpio_leds,
++ .num_leds = ARRAY_SIZE(dvi_gpio_leds),
+ };
+
+-static struct platform_device leds_gpio = {
++static struct platform_device dvi_leds_gpio = {
+ .name = "leds-gpio",
+ .id = -1,
+ .dev = {
+- .platform_data = &gpio_led_info,
++ .platform_data = &dvi_gpio_led_info,
+ },
+ };
+
+@@ -1074,11 +1119,19 @@ static void boneleds_init(int evm_id, int profile )
+ {
+ int err;
+ setup_pin_mux(bone_pin_mux);
+- err = platform_device_register(&leds_gpio);
++ err = platform_device_register(&bone_leds_gpio);
+ if (err)
+ pr_err("failed to register BeagleBone LEDS\n");
+ }
+
++static void dvileds_init(int evm_id, int profile )
++{
++ int err;
++ err = platform_device_register(&dvi_leds_gpio);
++ if (err)
++ pr_err("failed to register BeagleBone DVI cape LEDS\n");
++}
++
+ static void rgmii1_init(int evm_id, int profile)
+ {
+ setup_pin_mux(rgmii1_pin_mux);
+--
+1.7.2.5
+
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/0036-beaglebone-update-LCD-cape-partnumber.patch b/recipes-kernel/linux/linux-ti33x-psp-3.1/0036-beaglebone-update-LCD-cape-partnumber.patch
new file mode 100644
index 0000000..19fdd90
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/0036-beaglebone-update-LCD-cape-partnumber.patch
@@ -0,0 +1,26 @@
+From 4089ed795fc26961e0e0ece07af2c628b96321de Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@...>
+Date: Wed, 25 Jan 2012 17:18:43 +0100
+Subject: [PATCH 36/36] beaglebone: update LCD cape partnumber
+
+Signed-off-by: Koen Kooi <koen@...>
+---
+ arch/arm/mach-omap2/board-am335xevm.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c
+index 1b398c7..6a0ace9 100644
+--- a/arch/arm/mach-omap2/board-am335xevm.c
++++ b/arch/arm/mach-omap2/board-am335xevm.c
+@@ -1356,7 +1356,7 @@ static void beaglebone_cape_setup(struct memory_accessor *mem_acc, void *context
+ pr_info("BeagleBone cape: initializing DVI cape\n");
+ dvi_init(0,0);
+ }
+- if (!strncmp("LCD01", cape_config.partnumber, 5)) {
++ if (!strncmp("BB-BONE-LCD7-01", cape_config.partnumber, 5)) {
+ pr_info("BeagleBone cape: initializing LCD cape\n");
+ bbtoys7lcd_init(0,0);
+ pr_info("BeagleBone cape: initializing LCD cape touchscreen\n");
+--
+1.7.7.5
+
diff --git a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
index ef706cb..150a282 100644
--- a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
+++ b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
@@ -11,7 +11,7 @@ MULTI_CONFIG_BASE_SUFFIX = ""

BRANCH = "v3.1-meta-ti-r1r+gitr1d84d8853fa30cf3db2571a5aec572accca4e29d"
SRCREV = "1d84d8853fa30cf3db2571a5aec572accca4e29d"
-MACHINE_KERNEL_PR_append = "i+gitr${SRCREV}"
+MACHINE_KERNEL_PR_append = "j+gitr${SRCREV}"

COMPATIBLE_MACHINE = "(ti33x)"

@@ -55,7 +55,12 @@ PATCHES_OVER_PSP = " \
file://adc/0009-meta-ti-Remove-debug-messages-for-meta-ti.patch \
file://adc/0010-tscadc-switch-to-polling-instead-of-interrupts.patch \
file://st7735fb/0001-st7735fb-WIP-framebuffer-driver-supporting-Adafruit-.patch \
- file://0031-am335x-evm-add-pdata-for-all-cape-EEPROM-permutation.patch \
+ file://0031-am335x-evm-add-pdata-for-all-cape-EEPROM-permutation.patch \
+ file://0032-am335x-add-support-for-7-LCD-cape-fix-DVI-entries.patch \
+ file://0033-beaglebone-update-DVI-cape-partnumber.patch \
+ file://0034-beaglebone-really-enable-i2c2-pullups-fixes-timeouts.patch \
+ file://0035-beaglebone-add-structs-for-DVI-cape-LEDs.patch\
+ file://0036-beaglebone-update-LCD-cape-partnumber.patch \
"

SRC_URI += "${@base_contains('DISTRO_FEATURES', 'tipspkernel', "", "${PATCHES_OVER_PSP}", d)}"
--
1.7.2.5


[PATCH] linux-ti33x-psp 3.1: re-enable MUSB DMA for beaglebone

Koen Kooi
 

The production tester breaks with DMA disabled, so enable it again. Any breakage due to this should get reported to TI PSP so they can fix it.

This effectively reverts aa209df889e2fce6f231e10552b5e7de4605889a

Signed-off-by: Koen Kooi <koen@...>
---
.../linux/linux-ti33x-psp-3.1/beaglebone/defconfig | 7 +++++--
recipes-kernel/linux/linux-ti33x-psp_3.1.bb | 2 +-
2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/beaglebone/defconfig b/recipes-kernel/linux/linux-ti33x-psp-3.1/beaglebone/defconfig
index 628f149..4e8644c 100644
--- a/recipes-kernel/linux/linux-ti33x-psp-3.1/beaglebone/defconfig
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/beaglebone/defconfig
@@ -2507,10 +2507,13 @@ CONFIG_USB_MUSB_TI81XX_GLUE=y
CONFIG_USB_MUSB_TI81XX=y
# CONFIG_USB_MUSB_BLACKFIN is not set
# CONFIG_USB_MUSB_UX500 is not set
-CONFIG_MUSB_PIO_ONLY=y
+# CONFIG_MUSB_PIO_ONLY is not set
+# CONFIG_USB_INVENTRA_DMA_HW is not set
+# CONFIG_USB_TI_CPPI_DMA_HW is not set
+CONFIG_USB_TI_CPPI41_DMA_HW=y
# CONFIG_USB_INVENTRA_DMA is not set
# CONFIG_USB_TI_CPPI_DMA is not set
-# CONFIG_USB_TI_CPPI41_DMA is not set
+CONFIG_USB_TI_CPPI41_DMA=y
# CONFIG_USB_TUSB_OMAP_DMA is not set
# CONFIG_USB_UX500_DMA is not set

diff --git a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
index c48435b..ef706cb 100644
--- a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
+++ b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb
@@ -11,7 +11,7 @@ MULTI_CONFIG_BASE_SUFFIX = ""

BRANCH = "v3.1-meta-ti-r1r+gitr1d84d8853fa30cf3db2571a5aec572accca4e29d"
SRCREV = "1d84d8853fa30cf3db2571a5aec572accca4e29d"
-MACHINE_KERNEL_PR_append = "h+gitr${SRCREV}"
+MACHINE_KERNEL_PR_append = "i+gitr${SRCREV}"

COMPATIBLE_MACHINE = "(ti33x)"

--
1.7.2.5


[PATCH] alsa-state: add beagleboard specific asound.state

Koen Kooi
 

From: Joshua Lock <josh@...>

Signed-off-by: Joshua Lock <josh@...>
Signed-off-by: Koen Kooi <koen@...>
---
recipes-bsp/alsa-state/alsa-state.bbappend | 1 +
.../alsa-state/alsa-state/beagleboard/asound.state | 656 ++++++++++++++++++++
2 files changed, 657 insertions(+), 0 deletions(-)
create mode 100644 recipes-bsp/alsa-state/alsa-state.bbappend
create mode 100644 recipes-bsp/alsa-state/alsa-state/beagleboard/asound.state

diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-bsp/alsa-state/alsa-state.bbappend
new file mode 100644
index 0000000..72d991c
--- /dev/null
+++ b/recipes-bsp/alsa-state/alsa-state.bbappend
@@ -0,0 +1 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-bsp/alsa-state/alsa-state/beagleboard/asound.state b/recipes-bsp/alsa-state/alsa-state/beagleboard/asound.state
new file mode 100644
index 0000000..f924491
--- /dev/null
+++ b/recipes-bsp/alsa-state/alsa-state/beagleboard/asound.state
@@ -0,0 +1,656 @@
+state.omap3beagle {
+ control.1 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Option 2 (voice/audio)'
+ comment.item.1 'Option 1 (audio)'
+ iface MIXER
+ name 'Codec Operation Mode'
+ value 'Option 1 (audio)'
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 63'
+ comment.dbmin -6300
+ comment.dbmax 0
+ iface MIXER
+ name 'DAC1 Digital Fine Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 63'
+ comment.dbmin -6300
+ comment.dbmax 0
+ iface MIXER
+ name 'DAC2 Digital Fine Playback Volume'
+ value.0 50
+ value.1 50
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 2'
+ comment.dbmin 0
+ comment.dbmax 1200
+ iface MIXER
+ name 'DAC1 Digital Coarse Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 2'
+ comment.dbmin 0
+ comment.dbmax 1200
+ iface MIXER
+ name 'DAC2 Digital Coarse Playback Volume'
+ value.0 2
+ value.1 2
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 18'
+ comment.dbmin -2400
+ comment.dbmax 1200
+ iface MIXER
+ name 'DAC1 Analog Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 18'
+ comment.dbmin -2400
+ comment.dbmax 1200
+ iface MIXER
+ name 'DAC2 Analog Playback Volume'
+ value.0 15
+ value.1 15
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'DAC1 Analog Playback Switch'
+ value.0 false
+ value.1 false
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'DAC2 Analog Playback Switch'
+ value.0 true
+ value.1 true
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 49'
+ comment.dbmin -3700
+ comment.dbmax 1200
+ iface MIXER
+ name 'DAC Voice Digital Downlink Volume'
+ value 0
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 18'
+ comment.dbmin -2400
+ comment.dbmax 1200
+ iface MIXER
+ name 'DAC Voice Analog Downlink Volume'
+ value 18
+ }
+ control.12 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'DAC Voice Analog Downlink Switch'
+ value false
+ }
+ control.13 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 3'
+ comment.dbmin -1200
+ comment.dbmax 600
+ iface MIXER
+ name 'PreDriv Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.14 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 3'
+ comment.dbmin -1200
+ comment.dbmax 600
+ iface MIXER
+ name 'Headset Playback Volume'
+ value.0 3
+ value.1 3
+ }
+ control.15 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 3'
+ comment.dbmin -1200
+ comment.dbmax 600
+ iface MIXER
+ name 'Carkit Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.16 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 3'
+ comment.dbmin -600
+ comment.dbmax 1200
+ iface MIXER
+ name 'Earpiece Playback Volume'
+ value 0
+ }
+ control.17 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin 0
+ comment.dbmax 3100
+ iface MIXER
+ name 'TX1 Digital Capture Volume'
+ value.0 12
+ value.1 12
+ }
+ control.18 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin 0
+ comment.dbmax 3100
+ iface MIXER
+ name 'TX2 Digital Capture Volume'
+ value.0 0
+ value.1 0
+ }
+ control.19 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 5'
+ comment.dbmin 0
+ comment.dbmax 3000
+ iface MIXER
+ name 'Analog Capture Volume'
+ value.0 0
+ value.1 0
+ }
+ control.20 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Voice high priority'
+ comment.item.1 'HiFi high priority'
+ iface MIXER
+ name 'AVADC Clock Priority'
+ value 'Voice high priority'
+ }
+ control.21 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '27/20/14 ms'
+ comment.item.1 '55/40/27 ms'
+ comment.item.2 '109/81/55 ms'
+ comment.item.3 '218/161/109 ms'
+ comment.item.4 '437/323/218 ms'
+ comment.item.5 '874/645/437 ms'
+ comment.item.6 '1748/1291/874 ms'
+ comment.item.7 '3495/2581/1748 ms'
+ iface MIXER
+ name 'HS ramp delay'
+ value '27/20/14 ms'
+ }
+ control.22 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Vibra H-bridge direction'
+ comment.item.1 'Audio data MSB'
+ iface MIXER
+ name 'Vibra H-bridge mode'
+ value 'Vibra H-bridge direction'
+ }
+ control.23 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Positive polarity'
+ comment.item.1 'Negative polarity'
+ iface MIXER
+ name 'Vibra H-bridge direction'
+ value 'Positive polarity'
+ }
+ control.24 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Analog Right Sub Mic Capture Switch'
+ value false
+ }
+ control.25 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Analog Right AUXR Capture Switch'
+ value true
+ }
+ control.26 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Analog Left Main Mic Capture Switch'
+ value false
+ }
+ control.27 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Analog Left Headset Mic Capture Switch'
+ value false
+ }
+ control.28 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Analog Left AUXL Capture Switch'
+ value true
+ }
+ control.29 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Analog Left Carkit Mic Capture Switch'
+ value false
+ }
+ control.30 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Analog
+ comment.item.1 Digimic1
+ iface MIXER
+ name 'TX2 Capture Route'
+ value Analog
+ }
+ control.31 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Analog
+ comment.item.1 Digimic0
+ iface MIXER
+ name 'TX1 Capture Route'
+ value Analog
+ }
+ control.32 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Local vibrator'
+ comment.item.1 Audio
+ iface MIXER
+ name 'Vibra Route'
+ value 'Local vibrator'
+ }
+ control.33 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 AudioL1
+ comment.item.1 AudioR1
+ comment.item.2 AudioL2
+ comment.item.3 AudioR2
+ iface MIXER
+ name 'Vibra Mux'
+ value AudioL1
+ }
+ control.34 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HandsfreeR Switch'
+ value false
+ }
+ control.35 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Voice
+ comment.item.1 AudioR1
+ comment.item.2 AudioR2
+ comment.item.3 AudioL2
+ iface MIXER
+ name 'HandsfreeR Mux'
+ value Voice
+ }
+ control.36 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HandsfreeL Switch'
+ value false
+ }
+ control.37 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Voice
+ comment.item.1 AudioL1
+ comment.item.2 AudioL2
+ comment.item.3 AudioR2
+ iface MIXER
+ name 'HandsfreeL Mux'
+ value Voice
+ }
+ control.38 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'CarkitR Mixer Voice'
+ value false
+ }
+ control.39 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'CarkitR Mixer AudioR1'
+ value false
+ }
+ control.40 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'CarkitR Mixer AudioR2'
+ value false
+ }
+ control.41 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'CarkitL Mixer Voice'
+ value false
+ }
+ control.42 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'CarkitL Mixer AudioL1'
+ value false
+ }
+ control.43 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'CarkitL Mixer AudioL2'
+ value false
+ }
+ control.44 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HeadsetR Mixer Voice'
+ value false
+ }
+ control.45 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HeadsetR Mixer AudioR1'
+ value false
+ }
+ control.46 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HeadsetR Mixer AudioR2'
+ value true
+ }
+ control.47 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HeadsetL Mixer Voice'
+ value false
+ }
+ control.48 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HeadsetL Mixer AudioL1'
+ value false
+ }
+ control.49 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'HeadsetL Mixer AudioL2'
+ value true
+ }
+ control.50 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveR Mixer Voice'
+ value false
+ }
+ control.51 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveR Mixer AudioR1'
+ value false
+ }
+ control.52 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveR Mixer AudioR2'
+ value false
+ }
+ control.53 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveR Mixer AudioL2'
+ value false
+ }
+ control.54 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveL Mixer Voice'
+ value false
+ }
+ control.55 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveL Mixer AudioL1'
+ value false
+ }
+ control.56 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveL Mixer AudioL2'
+ value false
+ }
+ control.57 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'PredriveL Mixer AudioR2'
+ value false
+ }
+ control.58 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Earpiece Mixer Voice'
+ value false
+ }
+ control.59 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Earpiece Mixer AudioL1'
+ value false
+ }
+ control.60 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Earpiece Mixer AudioL2'
+ value false
+ }
+ control.61 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Earpiece Mixer AudioR1'
+ value false
+ }
+ control.62 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 41'
+ comment.dbmin -5100
+ comment.dbmax -1000
+ iface MIXER
+ name 'Voice Digital Loopback Volume'
+ value 0
+ }
+ control.63 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ comment.dbmin -2400
+ comment.dbmax 0
+ iface MIXER
+ name 'Right Digital Loopback Volume'
+ value 0
+ }
+ control.64 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ comment.dbmin -2400
+ comment.dbmax 0
+ iface MIXER
+ name 'Left Digital Loopback Volume'
+ value 0
+ }
+ control.65 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Voice Analog Loopback Switch'
+ value false
+ }
+ control.66 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left2 Analog Loopback Switch'
+ value false
+ }
+ control.67 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right2 Analog Loopback Switch'
+ value false
+ }
+ control.68 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left1 Analog Loopback Switch'
+ value false
+ }
+ control.69 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right1 Analog Loopback Switch'
+ value false
+ }
+}
--
1.7.2.5


[PATCH 7/7] libgles-omap3: add 4.05.00.03

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
...3_4.03.00.02.bb => libgles-omap3_4.05.00.03.bb} | 14 +++++---------
1 files changed, 5 insertions(+), 9 deletions(-)
copy recipes-graphics/libgles/{libgles-omap3_4.03.00.02.bb => libgles-omap3_4.05.00.03.bb} (68%)

diff --git a/recipes-graphics/libgles/libgles-omap3_4.03.00.02.bb b/recipes-graphics/libgles/libgles-omap3_4.05.00.03.bb
similarity index 68%
copy from recipes-graphics/libgles/libgles-omap3_4.03.00.02.bb
copy to recipes-graphics/libgles/libgles-omap3_4.05.00.03.bb
index f605ec0..0092221 100644
--- a/recipes-graphics/libgles/libgles-omap3_4.03.00.02.bb
+++ b/recipes-graphics/libgles/libgles-omap3_4.05.00.03.bb
@@ -1,10 +1,6 @@
BINLOCATION_omap3 = "${S}/gfx_rel_es3.x"
BINLOCATION_ti816x = "${S}/gfx_rel_es6.x"
-
-ES2LOCATION = "${S}/gfx_rel_es2.x"
-ES3LOCATION = "${S}/gfx_rel_es3.x"
-ES5LOCATION = "${S}/gfx_rel_es5.x"
-ES6LOCATION = "${S}/gfx_rel_es6.x"
+BINLOCATION_ti33x = "${S}/gfx_rel_es8.x"

require libgles-omap3.inc

@@ -12,8 +8,8 @@ require libgles-omap3.inc
# http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/latest/index_FDS.html
# see libgles-omap3.inc for detailed installation instructions

-SGXPV = "4_03_00_02"
-IMGPV = "1.6.16.3977"
+SGXPV = "4_05_00_03"
+IMGPV = "1.6.16.4117"
BINFILE := "Graphics_SDK_setuplinux_${SGXPV}.bin"

SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/Graphics_SDK_setuplinux_${SGXPV}.bin \
@@ -23,8 +19,8 @@ SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gf
file://99-bufferclass.rules \
"

-SRC_URI[md5sum] = "ff8c1f2b8e4cb42f4ced6a613b081ada"
-SRC_URI[sha256sum] = "cdb0bd3964e107733d632aa8224e0537b05c1ffac34befc036423458c8d75255"
+SRC_URI[md5sum] = "0e651eaa92bb91760f0b40a17697a7dc"
+SRC_URI[sha256sum] = "bfe764a8959556195545d6fff76f63a489642f345c105bbbc309a3f243c2dd0e"

S = "${WORKDIR}/Graphics_SDK_${SGXPV}"

--
1.7.2.5


[PATCH 6/7] omap3-sgx-modules: add 4.05.00.03

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
....16.3977.bb => omap3-sgx-modules_4.05.00.03.bb} | 14 +++++++-------
1 files changed, 7 insertions(+), 7 deletions(-)
copy recipes-bsp/powervr-drivers/{omap3-sgx-modules_1.6.16.3977.bb => omap3-sgx-modules_4.05.00.03.bb} (79%)

diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules_1.6.16.3977.bb b/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.05.00.03.bb
similarity index 79%
copy from recipes-bsp/powervr-drivers/omap3-sgx-modules_1.6.16.3977.bb
copy to recipes-bsp/powervr-drivers/omap3-sgx-modules_4.05.00.03.bb
index f37299d..f034fc8 100644
--- a/recipes-bsp/powervr-drivers/omap3-sgx-modules_1.6.16.3977.bb
+++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.05.00.03.bb
@@ -5,8 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=21228a42e27d1d104b31a83f7c9da935"
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
require ../../recipes-ti/includes/ti-eula-unpack.inc

-SGXPV = "4_03_00_02"
-IMGPV = "1.6.16.3977"
+SGXPV = "4_05_00_03"
BINFILE := "Graphics_SDK_setuplinux_${SGXPV}.bin"

inherit module
@@ -15,12 +14,9 @@ MACHINE_KERNEL_PR_append = "a"
PR = "${MACHINE_KERNEL_PR}"

SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/Graphics_SDK_setuplinux_${SGXPV}.bin \
- file://Compile-fixes-for-38-kernel.patch \
- file://kernel-30.patch \
"
-SRC_URI[md5sum] = "ff8c1f2b8e4cb42f4ced6a613b081ada"
-SRC_URI[sha256sum] = "cdb0bd3964e107733d632aa8224e0537b05c1ffac34befc036423458c8d75255"
-
+SRC_URI[md5sum] = "0e651eaa92bb91760f0b40a17697a7dc"
+SRC_URI[sha256sum] = "bfe764a8959556195545d6fff76f63a489642f345c105bbbc309a3f243c2dd0e"
S = "${WORKDIR}/Graphics_SDK_${SGXPV}/GFX_Linux_KM"

PVRBUILD = "release"
@@ -29,10 +25,14 @@ export KERNELDIR = "${STAGING_KERNEL_DIR}"
PACKAGE_STRIP = "no"

TI_PLATFORM_omap3 = "omap3630"
+TI_PLATFORM_ti814x = "ti81xx
TI_PLATFORM_ti816x = "ti81xx"
+TI_PLATFORM_ti33x = "ti335x"

MODULESLOCATION_omap3 = "dc_omap3430_linux"
+MODULESLOCATION_ti814x = "dc_ti81xx_linux"
MODULESLOCATION_ti816x = "dc_ti81xx_linux"
+MODULESLOCATION_ti33x = "dc_ti335x_linux"

MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM}"

--
1.7.2.5


[PATCH 5/7] libgles-omap3: adjust packaging for all windowing systems to remove the magic esrev file

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 28 ++++++++++++++++++++++++++--
1 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index 3ee4124..722ac13 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r21"
+PR = "r22"

COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

@@ -340,8 +340,32 @@ INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."

# Append to update-rc.d postinst
pkg_postinst_${PN}_append() {
-rm -f /etc/powervr-esrev
+rm -f ${sysconfdir}/powervr-esrev

ln -sf /usr/lib/libXdmcp.so.6.0.0 /usr/lib/libXdmcp.so.0
ln -sf /usr/lib/libXau.so.6.0.0 /usr/lib/libXau.so.0
}
+
+pkg_postinst_${PN}-blitwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-flipwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-frontwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+pkg_postinst_${PN}-linuxfbwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-x11wsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-driwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
--
1.7.2.5


[PATCH 4/7] libgles-omap3: install X11 windowing system for newer SDK releases as well

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index fff19f0..3ee4124 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r20"
+PR = "r21"

COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

@@ -136,6 +136,7 @@ do_install () {
install -m 0755 ${BINLOCATION}/xgles1test1 ${D}${bindir}/

install -m 0755 ${BINLOCATION}/freedesktop/kdrive/usr/X11R6_SGX/bin/Xsgx ${D}${bindir}/|| true
+ cp -pPR ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/LinuxOMAP3/lib/*X11WS* ${D}${libdir} || true

install -d ${D}${includedir}
cp -pPR ${S}/GFX_Linux_KM/include4 ${D}${includedir}/
--
1.7.2.5


[PATCH 3/7] libgles-omap3: package DRI windowing system as well

Koen Kooi
 

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index 0a05a0b..fff19f0 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r19"
+PR = "r20"

COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

@@ -240,12 +240,13 @@ FILES_${PN}-es5 = "${libdir}/ES5*/* ${bindir}/ES5*/*"
FILES_${PN}-es6 = "${libdir}/ES6*/* ${bindir}/ES6*/*"
FILES_${PN}-es8 = "${libdir}/ES8*/* ${bindir}/ES8*/*"

-PACKAGES =+ "${PN}-blitwsegl ${PN}-flipwsegl ${PN}-frontwsegl ${PN}-linuxfbwsegl ${PN}-x11wsegl"
+PACKAGES =+ "${PN}-blitwsegl ${PN}-flipwsegl ${PN}-frontwsegl ${PN}-linuxfbwsegl ${PN}-x11wsegl ${PN}-driwsegl"
FILES_${PN}-blitwsegl = "${libdir}/libpvrPVR2D_BLITWSEGL.so.*"
FILES_${PN}-flipwsegl = "${libdir}/libpvrPVR2D_FLIPWSEGL.so.*"
FILES_${PN}-frontwsegl = "${libdir}/libpvrPVR2D_FRONTWSEGL.so.*"
FILES_${PN}-linuxfbwsegl = "${libdir}/libpvrPVR2D_LINUXFBWSEGL.so.*"
FILES_${PN}-x11wsegl = "${libdir}/libpvrPVR2D_X11WSEGL.so*"
+FILES_${PN}-driwsegl = "${libdir}/libpvrPVR2D_DRIWSEGL.so*"

PACKAGES =+ "${PN}-blitwsegl-es2 ${PN}-blitwsegl-es3 ${PN}-blitwsegl-es5 ${PN}-blitwsegl-es6 ${PN}-blitwsegl-es8 ${PN}-flipwsegl-es2 ${PN}-flipwsegl-es3 ${PN}-flipwsegl-es5 ${PN}-flipwsegl-es6 ${PN}-flipwsegl-es8 ${PN}-frontwsegl-es2 ${PN}-frontwsegl-es3 ${PN}-frontwsegl-es5 ${PN}-frontwsegl-es6 ${PN}-frontwsegl-es8 ${PN}-linuxfbwsegl-es2 ${PN}-linuxfbwsegl-es3 ${PN}-linuxfbwsegl-es5 ${PN}-linuxfbwsegl-es6 ${PN}-linuxfbwsegl-es8 ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8"
FILES_${PN}-blitwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_BLITWSEGL.so.*"
@@ -283,6 +284,13 @@ FILES_${PN}-x11wsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_X11WSEGL.so.*"
FILES_${PN}-x11wsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_X11WSEGL.so.*"
RRECOMMENDS_${PN}-x11wsegl = " ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8"

+FILES_${PN}-driwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_DRIWSEGL.so.*"
+FILES_${PN}-driwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_DRIWSEGL.so.*"
+FILES_${PN}-driwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_DRIWSEGL.so.*"
+FILES_${PN}-driwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_DRIWSEGL.so.*"
+FILES_${PN}-driwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_DRIWSEGL.so.*"
+RRECOMMENDS_${PN}-driwsegl = " ${PN}-driwsegl-es2 ${PN}-driwsegl-es3 ${PN}-driwsegl-es5 ${PN}-driwsegl-es6 ${PN}-driwsegl-es8"
+
CONFFILES_${PN} = "${sysconfdir}/powervr.ini"

FILES_${PN} = "${sysconfdir} ${libdir}/lib*.so.* ${libdir}/ES*/* ${bindir}/pvrsrvinit ${bindir}/cputype ${bindir}/*/*"
@@ -316,6 +324,7 @@ INSANE_SKIP_${PN}-flipwsegl = "ldflags"
INSANE_SKIP_${PN}-frontwsegl = "ldflags"
INSANE_SKIP_${PN}-linuxfbwsegl = "ldflags"
INSANE_SKIP_${PN}-x11wsegl = "ldflags dev-so"
+INSANE_SKIP_${PN}-driwsegl = "ldflags dev-so"
INSANE_SKIP_${PN}-tests = "ldflags"
INSANE_SKIP_xserver-kdrive-powervrsgx = "ldflags"

--
1.7.2.5


[PATCH 2/7] libgles-omap3: merge in updates from arago

Koen Kooi
 

* ES3.x do_install fix
* AM335x support

And one non-arago fix: break dependency on 'initscripts' package

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 26 ++++++++++++++------
recipes-graphics/libgles/libgles-omap3/cputype | 10 ++++++-
recipes-graphics/libgles/libgles-omap3/rc.pvr | 29 +++++++++++++++++++-----
3 files changed, 49 insertions(+), 16 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index dc0185a..0a05a0b 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,9 +3,9 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r18"
+PR = "r19"

-COMPATIBLE_MACHINE = "(omap3|ti816x)"
+COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

DEPENDS = "virtual/libx11 libxau libxdmcp"

@@ -29,6 +29,7 @@ ES2LOCATION ?= "${S}/gfx_rel_es2.x"
ES3LOCATION ?= "${S}/gfx_rel_es3.x"
ES5LOCATION ?= "${S}/gfx_rel_es5.x"
ES6LOCATION ?= "${S}/gfx_rel_es6.x"
+ES8LOCATION ?= "${S}/gfx_rel_es8.x"

do_configure() {
# Attempt to fix up the worst offenders for file permissions
@@ -158,22 +159,28 @@ do_install () {

# The ES2.x, ES3.x, ES5.x and ES6.x CPUs have different SGX hardware, so we need to install multiple sets of userspace

+ install -d ${D}${libdir}/ES8.0
install -d ${D}${libdir}/ES6.0
install -d ${D}${libdir}/ES5.0
install -d ${D}${libdir}/ES3.0
install -d ${D}${libdir}/ES2.0

+ install -d ${D}${bindir}/ES8.0
install -d ${D}${bindir}/ES6.0
install -d ${D}${bindir}/ES5.0
install -d ${D}${bindir}/ES3.0
install -d ${D}${bindir}/ES2.0


- cp -pPR ${ES2LOCATION}/lib*${IMGPV} ${D}${libdir}/ES2.0/
- cp ${ES2LOCATION}/p[dv]* ${D}${bindir}/ES2.0/
+ if [ -e ${ES2LOCATION} ] ; then
+ cp -pPR ${ES2LOCATION}/lib*${IMGPV} ${D}${libdir}/ES2.0/
+ cp ${ES2LOCATION}/p[dv]* ${D}${bindir}/ES2.0/
+ fi

- cp -pPR ${D}${libdir}/lib*${IMGPV} ${D}${libdir}/ES3.0/
- cp ${D}${bindir}/p[dv]* ${D}${bindir}/ES3.0
+ if [ -e ${ES3LOCATION} ] ; then
+ cp -pPR ${ES3LOCATION}/lib*${IMGPV} ${D}${libdir}/ES3.0/
+ cp ${ES3LOCATION}/p[dv]* ${D}${bindir}/ES3.0
+ fi

if [ -e ${ES5LOCATION} ] ; then
cp -pPR ${ES5LOCATION}/lib*${IMGPV} ${D}${libdir}/ES5.0/
@@ -185,6 +192,11 @@ do_install () {
cp ${ES6LOCATION}/p[dv]* ${D}${bindir}/ES6.0/
fi

+ if [ -e ${ES8LOCATION} ] ; then
+ cp -pPR ${ES8LOCATION}/lib*${IMGPV} ${D}${libdir}/ES8.0/
+ cp ${ES8LOCATION}/p[dv]* ${D}${bindir}/ES8.0/
+ fi
+
rm ${D}${bindir}/ES*/*.h ${D}${bindir}/ES*/pdsasm ${D}${bindir}/pdsasm -f || true

install -d ${D}${prefix}/share/applications
@@ -272,8 +284,6 @@ FILES_${PN}-x11wsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_X11WSEGL.so.*"
RRECOMMENDS_${PN}-x11wsegl = " ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8"

CONFFILES_${PN} = "${sysconfdir}/powervr.ini"
-# 'cputype' uses /etc/init.d/functions
-RRECOMMENDS_${PN} += "initscripts"

FILES_${PN} = "${sysconfdir} ${libdir}/lib*.so.* ${libdir}/ES*/* ${bindir}/pvrsrvinit ${bindir}/cputype ${bindir}/*/*"

diff --git a/recipes-graphics/libgles/libgles-omap3/cputype b/recipes-graphics/libgles/libgles-omap3/cputype
index 27f411d..4448c30 100755
--- a/recipes-graphics/libgles/libgles-omap3/cputype
+++ b/recipes-graphics/libgles/libgles-omap3/cputype
@@ -1,11 +1,17 @@
#!/bin/sh
-. /etc/init.d/functions
+
+machine_id() { # return the machine ID
+ awk 'BEGIN { FS=": " } /Hardware/ \
+ { gsub(" ", "_", $2); print tolower($2) } ' </proc/cpuinfo
+}

if [ "$(machine_id)" = "ti8168evm" ] ; then
echo TI816x
+elif [ "$(machine_id)" = "am335xevm" ] ; then
+ echo TI33XX
else
devmem2 0x4800244c | \
grep 'Read at address' | \
sed -e 's/.*): //' | \
- sed -e 's/0x00005C00/OMAP3503/' -e 's/0x00001C00/OMAP3515/' -e 's/0x00004C00/OMAP3525/' -e 's/0x00000C00/OMAP3530/'
+ sed -e 's/0x00005C00/OMAP3503/' -e 's/0x00001C00/OMAP3515/' -e 's/0x00004C00/OMAP3525/' -e 's/0x00000C00/OMAP3530/' -e 's/0x00005E00/OMAP3503/' -e 's/0x00001E00/OMAP3515/' -e 's/0x00004E00/OMAP3525/' -e 's/0x00000E00/OMAP3530/' -e 's/0x00000CC0/OMAP3530/'
fi
diff --git a/recipes-graphics/libgles/libgles-omap3/rc.pvr b/recipes-graphics/libgles/libgles-omap3/rc.pvr
index d32f9e4..07efa66 100755
--- a/recipes-graphics/libgles/libgles-omap3/rc.pvr
+++ b/recipes-graphics/libgles/libgles-omap3/rc.pvr
@@ -1,6 +1,15 @@
#!/bin/sh
PATH=$PATH:/usr/sbin

+# Check if an fb device is available. If not then just go ahead and
+# exit because we have no display.
+fbset > /dev/null 2>&1
+if [ "$?" == "1" ]
+then
+ # looks like there is no display, so let's exit
+ exit 0
+fi
+
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
YRES="$(fbset | grep geom | awk '{print $3}')"

@@ -28,7 +37,7 @@ if [ "$BITSPERPIXEL" = "32" ] ; then
fi

# Try to enable triple buffering when there's enough VRAM
-fbset -vyres $(expr $YRES \* 3)
+fbset -vyres $(expr $YRES \* 3)

sgxprepare () {
echo Starting PVR
@@ -39,11 +48,11 @@ sgxprepare () {
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`

- if [ -e /dev/pvrsrvkm ] ; then
+ if [ -e /dev/pvrsrvkm ] ; then
rm -f /dev/pvrsrvkm
fi

- mknod /dev/pvrsrvkm c $pvr_maj 0
+ mknod /dev/pvrsrvkm c $pvr_maj 0
chmod 666 /dev/pvrsrvkm

touch /etc/powervr-esrev
@@ -56,7 +65,7 @@ sgxfinish () {
echo -n "Starting SGX fixup for"
echo " ES${ES_REVISION}.x"
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
- cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
+ cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
echo "${ES_REVISION}" > /etc/powervr-esrev
fi
/usr/bin/pvrsrvinit
@@ -74,6 +83,16 @@ case $CPUTYPE in

sgxfinish
;;
+"TI33XX")
+ sgxprepare
+
+ devmem2 0x44e01104 w 0x0 > /dev/null
+ devmem2 0x44e00904 w 0x2 > /dev/null
+
+ ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
+
+ sgxfinish
+ ;;
"TI816x")
sgxprepare

@@ -89,5 +108,3 @@ case $CPUTYPE in
echo No SGX hardware, not starting PVR
;;
esac
-
-
--
1.7.2.5


[PATCH 1/7] libgles-omap3: split support for ES revisions into subpackages where possible

Koen Kooi
 

This allows deinstalling ES revisions which aren't wanted on your target.

Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 59 ++++++++++++++++++++++++---
1 files changed, 52 insertions(+), 7 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index 4459bef..dc0185a 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r17"
+PR = "r18"

COMPATIBLE_MACHINE = "(omap3|ti816x)"

@@ -219,19 +219,64 @@ PACKAGES =+ "${PN}-rawdemos \
PACKAGES += "xserver-kdrive-powervrsgx \
${PN}-tests "

-PACKAGES =+ "${PN}-blitwsegl ${PN}-flipwsegl ${PN}-frontwsegl ${PN}-linuxfbwsegl ${PN}-x11wsegl"
+# Package the base libraries per silicon revision
+PACKAGES =+ "${PN}-es2 ${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8"
+RRECOMMENDS_${PN} += "${PN}-es2 ${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8"
+FILES_${PN}-es2 = "${libdir}/ES2*/* ${bindir}/ES2*/*"
+FILES_${PN}-es3 = "${libdir}/ES3*/* ${bindir}/ES3*/*"
+FILES_${PN}-es5 = "${libdir}/ES5*/* ${bindir}/ES5*/*"
+FILES_${PN}-es6 = "${libdir}/ES6*/* ${bindir}/ES6*/*"
+FILES_${PN}-es8 = "${libdir}/ES8*/* ${bindir}/ES8*/*"

-FILES_${PN}-blitwsegl = "${libdir}/libpvrPVR2D_BLITWSEGL.so.* ${libdir}/*/libpvrPVR2D_BLITWSEGL.so.*"
-FILES_${PN}-flipwsegl = "${libdir}/libpvrPVR2D_FLIPWSEGL.so.* ${libdir}/*/libpvrPVR2D_FLIPWSEGL.so.*"
-FILES_${PN}-frontwsegl = "${libdir}/libpvrPVR2D_FRONTWSEGL.so.* ${libdir}/*/libpvrPVR2D_FRONTWSEGL.so.*"
-FILES_${PN}-linuxfbwsegl = "${libdir}/libpvrPVR2D_LINUXFBWSEGL.so.* ${libdir}/*/libpvrPVR2D_LINUXFBWSEGL.so.*"
-FILES_${PN}-x11wsegl = "${libdir}/libpvrPVR2D_X11WSEGL.so* ${libdir}/*/libpvrPVR2D_X11WSEGL.so*"
+PACKAGES =+ "${PN}-blitwsegl ${PN}-flipwsegl ${PN}-frontwsegl ${PN}-linuxfbwsegl ${PN}-x11wsegl"
+FILES_${PN}-blitwsegl = "${libdir}/libpvrPVR2D_BLITWSEGL.so.*"
+FILES_${PN}-flipwsegl = "${libdir}/libpvrPVR2D_FLIPWSEGL.so.*"
+FILES_${PN}-frontwsegl = "${libdir}/libpvrPVR2D_FRONTWSEGL.so.*"
+FILES_${PN}-linuxfbwsegl = "${libdir}/libpvrPVR2D_LINUXFBWSEGL.so.*"
+FILES_${PN}-x11wsegl = "${libdir}/libpvrPVR2D_X11WSEGL.so*"
+
+PACKAGES =+ "${PN}-blitwsegl-es2 ${PN}-blitwsegl-es3 ${PN}-blitwsegl-es5 ${PN}-blitwsegl-es6 ${PN}-blitwsegl-es8 ${PN}-flipwsegl-es2 ${PN}-flipwsegl-es3 ${PN}-flipwsegl-es5 ${PN}-flipwsegl-es6 ${PN}-flipwsegl-es8 ${PN}-frontwsegl-es2 ${PN}-frontwsegl-es3 ${PN}-frontwsegl-es5 ${PN}-frontwsegl-es6 ${PN}-frontwsegl-es8 ${PN}-linuxfbwsegl-es2 ${PN}-linuxfbwsegl-es3 ${PN}-linuxfbwsegl-es5 ${PN}-linuxfbwsegl-es6 ${PN}-linuxfbwsegl-es8 ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8"
+FILES_${PN}-blitwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_BLITWSEGL.so.*"
+FILES_${PN}-blitwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_BLITWSEGL.so.*"
+FILES_${PN}-blitwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_BLITWSEGL.so.*"
+FILES_${PN}-blitwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_BLITWSEGL.so.*"
+FILES_${PN}-blitwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_BLITWSEGL.so.*"
+RRECOMMENDS_${PN}-blitwsegl = " ${PN}-blitwsegl-es2 ${PN}-blitwsegl-es3 ${PN}-blitwsegl-es5 ${PN}-blitwsegl-es6 ${PN}-blitwsegl-es8"
+
+FILES_${PN}-flipwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_FLIPWSEGL.so.*"
+FILES_${PN}-flipwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_FLIPWSEGL.so.*"
+FILES_${PN}-flipwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_FLIPWSEGL.so.*"
+FILES_${PN}-flipwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_FLIPWSEGL.so.*"
+FILES_${PN}-flipwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_FLIPWSEGL.so.*"
+RRECOMMENDS_${PN}-flipwsegl = " ${PN}-flipwsegl-es2 ${PN}-flipwsegl-es3 ${PN}-flipwsegl-es5 ${PN}-flipwsegl-es6 ${PN}-flipwsegl-es8"
+
+FILES_${PN}-frontwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_FRONTWSEGL.so.*"
+FILES_${PN}-frontwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_FRONTWSEGL.so.*"
+FILES_${PN}-frontwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_FRONTWSEGL.so.*"
+FILES_${PN}-frontwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_FRONTWSEGL.so.*"
+FILES_${PN}-frontwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_FRONTWSEGL.so.*"
+RRECOMMENDS_${PN}-frontwsegl = " ${PN}-frontwsegl-es2 ${PN}-frontwsegl-es3 ${PN}-frontwsegl-es5 ${PN}-frontwsegl-es6 ${PN}-frontwsegl-es8"
+
+FILES_${PN}-linuxfbwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_LINUXFBWSEGL.so.*"
+FILES_${PN}-linuxfbwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_LINUXFBWSEGL.so.*"
+FILES_${PN}-linuxfbwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_LINUXFBWSEGL.so.*"
+FILES_${PN}-linuxfbwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_LINUXFBWSEGL.so.*"
+FILES_${PN}-linuxfbwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_LINUXFBWSEGL.so.*"
+RRECOMMENDS_${PN}-linuxfbwsegl = " ${PN}-linuxfbwsegl-es2 ${PN}-linuxfbwsegl-es3 ${PN}-linuxfbwsegl-es5 ${PN}-linuxfbwsegl-es6 ${PN}-linuxfbwsegl-es8"
+
+FILES_${PN}-x11wsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_X11WSEGL.so.*"
+FILES_${PN}-x11wsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_X11WSEGL.so.*"
+FILES_${PN}-x11wsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_X11WSEGL.so.*"
+FILES_${PN}-x11wsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_X11WSEGL.so.*"
+FILES_${PN}-x11wsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_X11WSEGL.so.*"
+RRECOMMENDS_${PN}-x11wsegl = " ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8"

CONFFILES_${PN} = "${sysconfdir}/powervr.ini"
# 'cputype' uses /etc/init.d/functions
RRECOMMENDS_${PN} += "initscripts"

FILES_${PN} = "${sysconfdir} ${libdir}/lib*.so.* ${libdir}/ES*/* ${bindir}/pvrsrvinit ${bindir}/cputype ${bindir}/*/*"
+
FILES_xserver-kdrive-powervrsgx = "${bindir}/Xsgx"
FILES_${PN}-tests = "${bindir}/*"
FILES_${PN}-dbg = "${libdir}/.debug/* ${bindir}/.debug/* \
--
1.7.2.5


Re: [PATCH 5/7] libgles-omap3: adjust packaging for all windowing systems to remove the magic esrev file

Denys Dmytriyenko
 

On Mon, Jan 23, 2012 at 03:18:27PM +0100, Koen Kooi wrote:
Signed-off-by: Koen Kooi <koen@...>
---
recipes-graphics/libgles/libgles-omap3.inc | 29 ++++++++++++++++++++++++++-
1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/recipes-graphics/libgles/libgles-omap3.inc b/recipes-graphics/libgles/libgles-omap3.inc
index 289b7d5..722ac13 100644
--- a/recipes-graphics/libgles/libgles-omap3.inc
+++ b/recipes-graphics/libgles/libgles-omap3.inc
@@ -3,7 +3,7 @@ LICENSE = "proprietary-binary"
# 'TSPA.txt' might not be the best file to md5sum
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"

-PR = "r21"
+PR = "r22"

COMPATIBLE_MACHINE = "(omap3|ti816x|ti33x)"

@@ -325,6 +325,7 @@ INSANE_SKIP_${PN}-flipwsegl = "ldflags"
INSANE_SKIP_${PN}-frontwsegl = "ldflags"
INSANE_SKIP_${PN}-linuxfbwsegl = "ldflags"
INSANE_SKIP_${PN}-x11wsegl = "ldflags dev-so"
+INSANE_SKIP_${PN}-driwsegl = "ldflags dev-so"
While we can argue this entire patch can be squashed with #3, the above line
definitely belongs to #3, when split this way...

--
Denys


INSANE_SKIP_${PN}-tests = "ldflags"
INSANE_SKIP_xserver-kdrive-powervrsgx = "ldflags"

@@ -339,8 +340,32 @@ INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."

# Append to update-rc.d postinst
pkg_postinst_${PN}_append() {
-rm -f /etc/powervr-esrev
+rm -f ${sysconfdir}/powervr-esrev

ln -sf /usr/lib/libXdmcp.so.6.0.0 /usr/lib/libXdmcp.so.0
ln -sf /usr/lib/libXau.so.6.0.0 /usr/lib/libXau.so.0
}
+
+pkg_postinst_${PN}-blitwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-flipwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-frontwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+pkg_postinst_${PN}-linuxfbwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-x11wsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
+pkg_postinst_${PN}-driwsegl() {
+rm -f ${sysconfdir}/powervr-esrev
+}
+
--
1.7.2.5

_______________________________________________
meta-ti mailing list
meta-ti@...
https://lists.yoctoproject.org/listinfo/meta-ti


Re: [PATCH 6/7] omap3-sgx-modules: add 4.05.00.03

Denys Dmytriyenko
 

On Mon, Jan 23, 2012 at 03:18:28PM +0100, Koen Kooi wrote:
Signed-off-by: Koen Kooi <koen@...>
---
....16.3977.bb => omap3-sgx-modules_4.05.00.03.bb} | 12 +++++-------
1 files changed, 5 insertions(+), 7 deletions(-)
copy recipes-bsp/powervr-drivers/{omap3-sgx-modules_1.6.16.3977.bb => omap3-sgx-modules_4.05.00.03.bb} (81%)

diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules_1.6.16.3977.bb b/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.05.00.03.bb
similarity index 81%
copy from recipes-bsp/powervr-drivers/omap3-sgx-modules_1.6.16.3977.bb
copy to recipes-bsp/powervr-drivers/omap3-sgx-modules_4.05.00.03.bb
index f37299d..cb3aba7 100644
--- a/recipes-bsp/powervr-drivers/omap3-sgx-modules_1.6.16.3977.bb
+++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules_4.05.00.03.bb
@@ -5,8 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=21228a42e27d1d104b31a83f7c9da935"
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
require ../../recipes-ti/includes/ti-eula-unpack.inc

-SGXPV = "4_03_00_02"
-IMGPV = "1.6.16.3977"
+SGXPV = "4_05_00_03"
BINFILE := "Graphics_SDK_setuplinux_${SGXPV}.bin"

inherit module
@@ -15,12 +14,9 @@ MACHINE_KERNEL_PR_append = "a"
PR = "${MACHINE_KERNEL_PR}"

SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/Graphics_SDK_setuplinux_${SGXPV}.bin \
- file://Compile-fixes-for-38-kernel.patch \
- file://kernel-30.patch \
"
-SRC_URI[md5sum] = "ff8c1f2b8e4cb42f4ced6a613b081ada"
-SRC_URI[sha256sum] = "cdb0bd3964e107733d632aa8224e0537b05c1ffac34befc036423458c8d75255"
-
+SRC_URI[md5sum] = "0e651eaa92bb91760f0b40a17697a7dc"
+SRC_URI[sha256sum] = "bfe764a8959556195545d6fff76f63a489642f345c105bbbc309a3f243c2dd0e"
S = "${WORKDIR}/Graphics_SDK_${SGXPV}/GFX_Linux_KM"

PVRBUILD = "release"
@@ -30,9 +26,11 @@ PACKAGE_STRIP = "no"

TI_PLATFORM_omap3 = "omap3630"
TI_PLATFORM_ti816x = "ti81xx"
+TI_PLATFORM_ti33x = "ti335x"

This seems slightly outdated - can you please merge the latest changes from
Arago from few weeks ago to enable ti814x as well? Thanks.

--
Denys


MODULESLOCATION_omap3 = "dc_omap3430_linux"
MODULESLOCATION_ti816x = "dc_ti81xx_linux"
+MODULESLOCATION_ti33x = "dc_ti335x_linux"

MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM}"

--
1.7.2.5

_______________________________________________
meta-ti mailing list
meta-ti@...
https://lists.yoctoproject.org/listinfo/meta-ti

15341 - 15360 of 15719