On Wed, Jul 30, 2014 at 06:41:42PM +0000, Maupin, Chase wrote: > >-----Original Message----- > >From: [email protected] [mailto:meta-ti- > >[email protected]] On Behalf Of Cooper Jr., Franklin > >Sent: Wednesday, July 30, 2014 1:38 PM > >To: Denys Dmytriyenko; [email protected] > >Subject: Re: [meta-ti] [PATCH 2/2] omap3-sgx-modules 5.01.01.01: > >add Darren's patches to work with 3.14 kernel > > > >Acked-by: Franklin Cooper Jr. <[email protected]> > > > >It might be a good idea to run sourceipk (meta-arago) on this so > >that the version of the Graphics SDK we bundle already have these > >patches included. > >Nothing we need to do here in meta-ti but just something to keep > >track of in meta-arago. > > Well, until the graphics SDK splits out into drivers and libraries this > would be everything. That may not be such a big deal overall if we then > drop the graphics SDK installer binary from the backend packaging. This is > something we have always wanted to do, but I was hoping that with a clean > split of libraries and drivers we could then package drivers in the > board-support directory and libraries elsewhere that makes more sense.
+1 Any ETA on when that's coming? > >> -----Original Message----- > >> From: [email protected] [mailto:meta-ti- > >> [email protected]] On Behalf Of Denys Dmytriyenko > >> Sent: Tuesday, July 29, 2014 8:35 PM > >> To: [email protected] > >> Subject: [meta-ti] [PATCH 2/2] omap3-sgx-modules 5.01.01.01: add > >Darren's > >> patches to work with 3.14 kernel > >> > >> From: Denys Dmytriyenko <[email protected]> > >> > >> Signed-off-by: Denys Dmytriyenko <[email protected]> > >> --- > >> ...SDK-Make-5_01_01_01-work-against-3.14-LTS.patch | 52 > >+++++++ ...x-use- > >> platform-data-to-provide-reset-info.patch | 121 ++++++++++++++++ > >...class- > >> am335x-am437x-fix-mutex-deadlock-wa.patch | 153 > >+++++++++++++++++++++ > >> ...-make-it-building-against-ti-linux-3.14.y.patch | 44 ++++++ > >> .../omap3-sgx-modules_5.01.01.01.bb | 7 +- > >> 5 files changed, 376 insertions(+), 1 deletion(-) create mode > >100644 recipes- > >> bsp/powervr-drivers/omap3-sgx-modules-5.01.01.01/0001-PoC-GFX- > >SDK-Make- > >> 5_01_01_01-work-against-3.14-LTS.patch > >> create mode 100644 recipes-bsp/powervr-drivers/omap3-sgx- > >modules- > >> 5.01.01.01/0002-SGX-linux-use-platform-data-to-provide-reset- > >info.patch > >> create mode 100644 recipes-bsp/powervr-drivers/omap3-sgx- > >modules- > >> 5.01.01.01/0003-SGX-displayclass-am335x-am437x-fix-mutex- > >deadlock- > >> wa.patch > >> create mode 100644 recipes-bsp/powervr-drivers/omap3-sgx- > >modules- > >> 5.01.01.01/0004-SGX-linux-make-it-building-against-ti-linux- > >3.14.y.patch > >> > >> diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0001- > >> PoC-GFX-SDK-Make-5_01_01_01-work-against-3.14-LTS.patch > >b/recipes- > >> bsp/powervr-drivers/omap3-sgx-modules-5.01.01.01/0001-PoC-GFX- > >SDK-Make- > >> 5_01_01_01-work-against-3.14-LTS.patch > >> new file mode 100644 > >> index 0000000..e541079 > >> --- /dev/null > >> +++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0001-PoC- > >> +++ GFX-SDK-Make-5_01_01_01-work-against-3.14-LTS.patch > >> @@ -0,0 +1,52 @@ > >> +From e2db38959a70d1be604a297276a0b0c2ac219bf5 Mon Sep 17 > >00:00:00 > >> 2001 > >> +From: Darren Etheridge <[email protected]> > >> +Date: Tue, 29 Jul 2014 16:06:17 -0500 > >> +Subject: [PATCH 1/4] PoC: GFX: SDK: Make 5_01_01_01 work > >against 3.14 > >> +LTS > >> + > >> +An API rename is the main change. Also hacked in some function > >> +prototypes for enabling use of the tilcdc DRM driver instead of > >the > >> +fbdev driver on AM335x. However this all really needs a good > >cleanup > >> +as it is hacky at the moment. > >> + > >> +Signed-off-by: Darren Etheridge <[email protected]> > >> +--- > >> + > >GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c | > >5 > >> +++++ > >> + GFX_Linux_KM/services4/srvkm/env/linux/mutils.h > >| 6 +++++- > >> + 2 files changed, 10 insertions(+), 1 deletion(-) > >> + > >> +diff --git > >> > >+a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> > >+b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> +index 5c3fc48..3857b95 100644 > >> +--- > >a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> ++++ > >b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> +@@ -93,6 +93,11 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR > >> OTHER DEALINGS IN THE SOFTWARE. > >> + #include <linux/mutex.h> > >> + > >> + #include <video/da8xx-fb.h> > >> ++/* used by SGX OMAPLFB drvier */ > >> ++typedef void (*vsync_callback_t)(void *arg); int > >> ++register_vsync_cb(vsync_callback_t handler, void *arg, int > >idx); int > >> ++unregister_vsync_cb(vsync_callback_t handler, void *arg, int > >idx); > >> ++ > >> + #if defined(PVR_OMAPLFB_DRM_FB) > >> + #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,0,0)) #include > >> +<plat/display.h> diff --git > >> +a/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h > >> +b/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h > >> +index 31e0dac..90ec41c 100644 > >> +--- a/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h > >> ++++ b/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h > >> +@@ -79,7 +79,11 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR > >> OTHER DEALINGS IN THE SOFTWARE. > >> + #define IOREMAP(pa, bytes) ioremap_cache(pa, bytes) > >> + #else > >> + #if defined(__arm__) && (LINUX_VERSION_CODE >= > >> KERNEL_VERSION(2,6,0)) > >> +- #define IOREMAP(pa, bytes) ioremap_cached(pa, > >bytes) > >> ++ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0)) > >> ++ #define IOREMAP(pa, bytes) > > ioremap_cache(pa, > >> bytes) > >> ++ #else > >> ++ #define IOREMAP(pa, bytes) > > ioremap_cached(pa, > >> bytes) > >> ++ #endif > >> + #else > >> + #define IOREMAP(pa, bytes) ioremap(pa, bytes) > >> + #endif > >> +-- > >> +1.9.1 > >> + > >> diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0002- > >> SGX-linux-use-platform-data-to-provide-reset-info.patch > >b/recipes- > >> bsp/powervr-drivers/omap3-sgx-modules-5.01.01.01/0002-SGX-linux- > >use- > >> platform-data-to-provide-reset-info.patch > >> new file mode 100644 > >> index 0000000..22b73fd > >> --- /dev/null > >> +++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0002-SGX- > >> +++ linux-use-platform-data-to-provide-reset-info.patch > >> @@ -0,0 +1,121 @@ > >> +From 30a695502496302f804e14eeca90568f067b2db2 Mon Sep 17 > >00:00:00 > >> 2001 > >> +From: Darren Etheridge <[email protected]> > >> +Date: Fri, 25 Jul 2014 16:03:14 -0500 > >> +Subject: [PATCH 2/4] SGX: linux: use platform data to provide > >reset > >> +info > >> + > >> +In ti-linux-3.14.y we will not have a reset driver unlike > >> +ti-linux-3.12.y so this commit removes the dependency on the > >reset > >> +driver and instead uses the platform data that in a dt > >environment is > >> +configured in mach-omap2/pdata-quirks.c > >> + > >> +Signed-off-by: Darren Etheridge <[email protected]> > >> +--- > >> + GFX_Linux_KM/services4/srvkm/env/linux/module.c | 34 > >> +++++++++++++++++++++----- > >> + 1 file changed, 28 insertions(+), 6 deletions(-) > >> + > >> +diff --git a/GFX_Linux_KM/services4/srvkm/env/linux/module.c > >> +b/GFX_Linux_KM/services4/srvkm/env/linux/module.c > >> +index e03dc00..82d07f4 100644 > >> +--- a/GFX_Linux_KM/services4/srvkm/env/linux/module.c > >> ++++ b/GFX_Linux_KM/services4/srvkm/env/linux/module.c > >> +@@ -47,6 +47,10 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR > >> OTHER DEALINGS IN THE SOFTWARE. > >> + #endif > >> + #endif > >> + > >> ++#ifndef CONFIG_RESET_CONTROLLER > >> ++#include <linux/platform_data/gfx-sgx.h> #endif > >> ++ > >> + #if defined(SUPPORT_DRI_DRM) && > >!defined(SUPPORT_DRI_DRM_PLUGIN) > >> + #define PVR_MOD_STATIC > >> + #else > >> +@@ -344,9 +348,11 @@ static LDM_DRV powervr_driver = { LDM_DEV > >> +*gpsPVRLDMDev; > >> + > >> + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) > >> ++#ifdef CONFIG_RESET_CONTROLLER > >> + struct reset_control *rstc; > >> + bool already_deasserted = false; > >> + #endif > >> ++#endif > >> + > >> + #if defined(MODULE) && defined(PVR_LDM_PLATFORM_MODULE) && \ > >> + !defined(PVR_USE_PRE_REGISTERED_PLATFORM_DEV) > >> +@@ -388,11 +394,14 @@ static int __devinit > >PVRSRVDriverProbe(LDM_DEV > >> +*pDevice, const struct pci_device #endif { > >> + SYS_DATA *psSysData; > >> +- int ret; > >> ++ int ret; > >> ++ struct device *dev = &pDevice->dev; > >> ++ struct gfx_sgx_platform_data *pdata = dev->platform_data; > >> ++ > >> + PVR_TRACE(("PVRSRVDriverProbe(pDevice=%p)", pDevice)); #if > >> + (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) > >> ++#ifdef CONFIG_RESET_CONTROLLER > >> + rstc = reset_control_get(&pDevice->dev, NULL); > >> +- > >> + if (IS_ERR(rstc)) > >> + { > >> + dev_err(&pDevice->dev, "%s: error: > >reset_control_get\n", > >> __func__); > >> +@@ -403,7 +412,7 @@ static int __devinit > >PVRSRVDriverProbe(LDM_DEV > >> +*pDevice, const struct pci_device > >> + > >> + if (ret < 0) > >> + { > >> +- dev_err(&pDevice->dev, "%s: error: > >> reset_control_clear_reset\n", __func__); > >> ++ dev_err(dev, "%s: error: reset_control_clear_reset\n", > >> __func__); > >> + return ret; > >> + } > >> + > >> +@@ -413,11 +422,22 @@ static int __devinit > >PVRSRVDriverProbe(LDM_DEV > >> *pDevice, const struct pci_device > >> + { > >> + already_deasserted = true; > >> + } > >> +- else if (ret < 0) > >> ++ else if (ret < 0) > >> + { > >> +- dev_err(&pDevice->dev, "%s: error: > >reset_control_deassert\n", > >> __func__); > >> ++ dev_err(dev, "%s: error: reset_control_deassert\n", > >__func__); > >> + return ret; > >> + } > >> ++#else > >> ++ if (pdata && pdata->deassert_reset) { > >> ++ ret = pdata->deassert_reset(pDevice, pdata- > >>reset_name); > >> ++ if (ret) { > >> ++ dev_err(dev, "Unable to reset SGX!\n"); > >> ++ } > >> ++ } else { > >> ++ dev_err(dev, "SGX Platform data missing > >deassert_reset!\n"); > >> ++ return -ENODEV; > >> ++ } > >> ++#endif /* CONFIG_RESET_CONTROLLER */ > >> + #endif > >> + > >> + #if 0 /* INTEGRATION_POINT */ > >> +@@ -432,7 +452,7 @@ static int __devinit > >PVRSRVDriverProbe(LDM_DEV > >> *pDevice, const struct pci_device > >> + { > >> + return -EINVAL; > >> + } > >> +-#endif > >> ++#endif > >> + /* SysInitialise only designed to be called once. > >> + */ > >> + psSysData = SysAcquireDataNoCheck(); > >> +@@ -445,6 +465,7 @@ static int __devinit > >PVRSRVDriverProbe(LDM_DEV > >> *pDevice, const struct pci_device > >> + } > >> + } > >> + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) > >> ++#ifdef CONFIG_RESET_CONTROLLER > >> + if (!already_deasserted) > >> + { > >> + ret = reset_control_is_reset(rstc); @@ -454,6 > >+475,7 > >> +@@ static int __devinit PVRSRVDriverProbe(LDM_DEV *pDevice, > >const struct > >> pci_device > >> + } > >> + } > >> + reset_control_put(rstc); > >> ++#endif /* CONFIG_RESET_CONTROLLER */ > >> + #endif > >> + > >> + return PVRSRVIONClientCreate(); > >> +-- > >> +1.9.1 > >> + > >> diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0003- > >> SGX-displayclass-am335x-am437x-fix-mutex-deadlock-wa.patch > >b/recipes- > >> bsp/powervr-drivers/omap3-sgx-modules-5.01.01.01/0003-SGX- > >displayclass- > >> am335x-am437x-fix-mutex-deadlock-wa.patch > >> new file mode 100644 > >> index 0000000..0e2902d > >> --- /dev/null > >> +++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0003-SGX- > >> +++ displayclass-am335x-am437x-fix-mutex-deadlock-wa.patch > >> @@ -0,0 +1,153 @@ > >> +From cf5156ff82e14fe01a194f9fa9a9adc528ac72f0 Mon Sep 17 > >00:00:00 2001 > >> +From: Darren Etheridge <[email protected]> > >> +Date: Tue, 29 Jul 2014 15:39:56 -0500 > >> +Subject: [PATCH 3/4] SGX: displayclass: am335x, am437x - fix > >mutex > >> +deadlock warning > >> + > >> +Rearrange the locking semantics in the Unblank screen function > >to > >> +remove the kernel warning about a possible deadlock scenario. > >> + > >> +The warning presents itself on the console like this: > >> +[ 2976.202979] > >> ====================================================== > >> +[ 2976.202983] [ INFO: possible circular locking dependency > >detected ] > >> +[ 2976.202994] 3.14.11-00997-gb20d0ac-dirty #53 Tainted: G > >O > >> +[ 2976.202997] ------------------------------------------------ > >------- > >> +[ 2976.203005] OGLES2Chameleon/1203 is trying to acquire lock: > >> +[ 2976.203058] (console_lock){+.+.+.}, at: [<bf07a310>] > >> +OMAPLFBUnblankDisplay+0x24/0xbc [omaplfb] > >> +[ 2976.203062] > >> +[ 2976.203062] but task is already holding lock: > >> +[ 2976.203087] (&fb_info->lock){+.+.+.}, at: [<c0312358>] > >> +lock_fb_info+0x18/0x3c [ 2976.203090] [ 2976.203090] which lock > >already > >> +depends on the new lock. > >> +[ 2976.203090] > >> +[ 2976.203093] > >> +[ 2976.203093] the existing dependency chain (in reverse order) > >is: > >> +[ 2976.203101] > >> +[ 2976.203101] -> #1 (&fb_info->lock){+.+.+.}: > >> +[ 2976.203112] [<c0312358>] lock_fb_info+0x18/0x3c > >> +[ 2976.203124] [<c0313a7c>] > >register_framebuffer+0x174/0x26c > >> +[ 2976.203146] [<c033c314>] > >omapfb_create_framebuffers+0x48c/0x7ac > >> +[ 2976.203157] [<c033d3c4>] omapfb_probe+0x4d4/0x848 > >> +[ 2976.203170] [<c0381cc8>] platform_drv_probe+0x18/0x48 > >> +[ 2976.203189] [<c038096c>] > >driver_probe_device+0x10c/0x238 > >> +[ 2976.203199] [<c0380b2c>] __driver_attach+0x94/0x98 > >> +[ 2976.203208] [<c037f0f0>] bus_for_each_dev+0x54/0x88 > >> +[ 2976.203216] [<c03800f0>] bus_add_driver+0xd8/0x1d8 > >> +[ 2976.203223] [<c038115c>] driver_register+0x78/0xf4 > >> +[ 2976.203234] [<c0008968>] do_one_initcall+0xe4/0x144 > >> +[ 2976.203250] [<c07d3c18>] > >kernel_init_freeable+0xfc/0x1cc > >> +[ 2976.203261] [<c0563260>] kernel_init+0x8/0xec > >> +[ 2976.203275] [<c000e648>] ret_from_fork+0x14/0x2c > >> +[ 2976.203284] > >> +[ 2976.203284] -> #0 (console_lock){+.+.+.}: > >> +[ 2976.203301] [<c008bc00>] console_lock+0x4c/0x60 > >> +[ 2976.203328] [<bf07a310>] > >OMAPLFBUnblankDisplay+0x24/0xbc > >> [omaplfb] > >> +[ 2976.203340] [<bf0797f4>] OpenDCDevice+0x60/0x78 > >[omaplfb] > >> +[ 2976.203459] [<bf041ac0>] > >PVRSRVOpenDCDeviceKM+0xec/0x178 > >> [pvrsrvkm] > >> +[ 2976.203654] [<bf05645c>] > >PVRSRVOpenDCDeviceBW+0x6c/0xac > >> [pvrsrvkm] > >> +[ 2976.203811] [<bf056d10>] BridgedDispatchKM+0xf4/0x14c > >[pvrsrvkm] > >> +[ 2976.203966] [<bf04f304>] > >PVRSRV_BridgeDispatchKM+0xf0/0x204 > >> +[pvrsrvkm] > >> +[ 2976.203987] [<c0129500>] do_vfs_ioctl+0x78/0x61c > >> +[ 2976.203997] [<c0129b08>] SyS_ioctl+0x64/0x74 > >> +[ 2976.204013] [<c000e580>] ret_fast_syscall+0x0/0x48 > >> +[ 2976.204016] > >> +[ 2976.204016] other info that might help us debug this: > >> +[ 2976.204016] > >> +[ 2976.204019] Possible unsafe locking scenario: > >> +[ 2976.204019] > >> +[ 2976.204022] CPU0 CPU1 > >> +[ 2976.204024] ---- ---- > >> +[ 2976.204030] lock(&fb_info->lock); > >> +[ 2976.204036] > >lock(console_lock); > >> +[ 2976.204041] lock(&fb_info- > >>lock); > >> +[ 2976.204046] lock(console_lock); > >> +[ 2976.204048] > >> +[ 2976.204048] *** DEADLOCK *** > >> +[ 2976.204048] > >> +[ 2976.204055] 2 locks held by OGLES2Chameleon/1203: > >> +[ 2976.204217] #0: (psPVRSRVMutex#2/1){+.+.+.}, at: > >[<bf04f238>] > >> +PVRSRV_BridgeDispatchKM+0x24/0x204 [pvrsrvkm] [ 2976.204240] > >#1: > >> +(&fb_info->lock){+.+.+.}, at: [<c0312358>] > >lock_fb_info+0x18/0x3c > >> + > >> +Signed-off-by: Darren Etheridge <[email protected]> > >> +--- > >> + > >GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c | > >8 > >> ++++++--- > >> +GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c > >| 7 > >> ++++++-- > >> + 2 files changed, 10 insertions(+), 5 deletions(-) > >> + > >> +diff --git > >> > >+a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> > >+b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> +index 3857b95..a5cc7d0 100644 > >> +--- > >a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> ++++ > >b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c > >> +@@ -812,10 +812,13 @@ static OMAPLFB_ERROR > >> +OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM { > >> #ifdef > >> +FBDEV_PRESENT > >> + int res; > >> ++ > >> ++ OMAPLFB_CONSOLE_LOCK(); > >> + if (!lock_fb_info(psDevInfo->psLINFBInfo)) > >> + { > >> + printk(KERN_ERR DRIVER_PREFIX > >> + ": %s: Device %u: Couldn't lock FB info\n", > >> __FUNCTION__, > >> + psDevInfo->uiFBDevID); > >> ++ OMAPLFB_CONSOLE_UNLOCK(); > >> + return (OMAPLFB_ERROR_GENERIC); > >> + } > >> + > >> +@@ -825,14 +828,13 @@ static OMAPLFB_ERROR > >> OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM > >> + * notification. > >> + */ > >> + > >> +- > >> +- OMAPLFB_CONSOLE_LOCK(); > >> + psDevInfo->psLINFBInfo->flags |= FBINFO_MISC_USEREVENT; > >> + res = fb_blank(psDevInfo->psLINFBInfo, bBlank ? 1 : 0); > >> + psDevInfo->psLINFBInfo->flags &= ~FBINFO_MISC_USEREVENT; > >> + > >> +- OMAPLFB_CONSOLE_UNLOCK(); > >> + unlock_fb_info(psDevInfo->psLINFBInfo); > >> ++ OMAPLFB_CONSOLE_UNLOCK(); > >> ++ > >> + if (res != 0 && res != -EINVAL) > >> + { > >> + printk(KERN_ERR DRIVER_PREFIX > >> +diff --git > >> > >+a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c > >> > >+b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c > >> +index c79dbd0..58b8640 100755 > >> +--- > >a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c > >> ++++ > >b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c > >> +@@ -948,10 +948,13 @@ static OMAPLFB_ERROR > >> +OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM { > >> #ifdef > >> +FBDEV_PRESENT > >> + int res; > >> ++ > >> ++ OMAPLFB_CONSOLE_LOCK(); > >> + if (!lock_fb_info(psDevInfo->psLINFBInfo)) > >> + { > >> + printk(KERN_ERR DRIVER_PREFIX > >> + ": %s: Device %u: Couldn't lock FB info\n", > >__FUNCTION__, > >> + psDevInfo->uiFBDevID); > >> ++ OMAPLFB_CONSOLE_UNLOCK(); > >> + return (OMAPLFB_ERROR_GENERIC); > >> + } > >> + > >> +@@ -961,13 +964,13 @@ static OMAPLFB_ERROR > >> OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM > >> + * notification. > >> + */ > >> + > >> +- OMAPLFB_CONSOLE_LOCK(); > >> + psDevInfo->psLINFBInfo->flags |= FBINFO_MISC_USEREVENT; > >> + res = fb_blank(psDevInfo->psLINFBInfo, bBlank ? 1 : 0); > >> + psDevInfo->psLINFBInfo->flags &= ~FBINFO_MISC_USEREVENT; > >> + > >> +- OMAPLFB_CONSOLE_UNLOCK(); > >> + unlock_fb_info(psDevInfo->psLINFBInfo); > >> ++ OMAPLFB_CONSOLE_UNLOCK(); > >> ++ > >> + if (res != 0 && res != -EINVAL) > >> + { > >> + printk(KERN_ERR DRIVER_PREFIX > >> +-- > >> +1.9.1 > >> + > >> diff --git a/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0004- > >> SGX-linux-make-it-building-against-ti-linux-3.14.y.patch > >b/recipes- > >> bsp/powervr-drivers/omap3-sgx-modules-5.01.01.01/0004-SGX-linux- > >make-it- > >> building-against-ti-linux-3.14.y.patch > >> new file mode 100644 > >> index 0000000..b9c004f > >> --- /dev/null > >> +++ b/recipes-bsp/powervr-drivers/omap3-sgx-modules- > >5.01.01.01/0004-SGX- > >> +++ linux-make-it-building-against-ti-linux-3.14.y.patch > >> @@ -0,0 +1,44 @@ > >> +From 21e14daefe16351320e01392f188cf473f67702f Mon Sep 17 > >00:00:00 > >> 2001 > >> +From: Darren Etheridge <[email protected]> > >> +Date: Tue, 29 Jul 2014 15:54:14 -0500 > >> +Subject: [PATCH 4/4] SGX: linux: make it building against > >> +ti-linux-3.14.y > >> + > >> +The fbdev drivers moved into their own directory under > >drivers/video. > >> +All of the omap2 dss stuff moved there as well so update the > >Makefile > >> +to point to the right place. > >> + > >> +Signed-off-by: Darren Etheridge <[email protected]> > >> +--- > >> + GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild | 2 +- > >> +GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild | 2 +- > >> + 2 files changed, 2 insertions(+), 2 deletions(-) > >> + > >> +diff --git > >a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild > >> +b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild > >> +index 1ae2359..7c2a39d 100755 > >> +--- a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild > >> ++++ b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild > >> +@@ -14,7 +14,7 @@ EXTRA_CFLAGS = -DLINUX \ > >> + -I$(PVR_BUILD_DIR)/include4 \ > >> + -I$(PVR_BUILD_DIR)/services4/include \ > >> + -I$(PVR_BUILD_DIR)/services4/system/$(PVR_SYSTEM) \ > >> +- -I$(KERNELDIR)/drivers/video/omap2 \ > >> ++ -I$(KERNELDIR)/drivers/video/fbdev/omap2 \ > >> + -I$(PVR_BUILD_DIR)/services4/system/include \ > >> + $(SYS_CFLAGS.1) \ > >> + > >> +diff --git > >a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild > >> +b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild > >> +index 1ae2359..7c2a39d 100755 > >> +--- a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild > >> ++++ b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild > >> +@@ -14,7 +14,7 @@ EXTRA_CFLAGS = -DLINUX \ > >> + -I$(PVR_BUILD_DIR)/include4 \ > >> + -I$(PVR_BUILD_DIR)/services4/include \ > >> + -I$(PVR_BUILD_DIR)/services4/system/$(PVR_SYSTEM) \ > >> +- -I$(KERNELDIR)/drivers/video/omap2 \ > >> ++ -I$(KERNELDIR)/drivers/video/fbdev/omap2 \ > >> + -I$(PVR_BUILD_DIR)/services4/system/include \ > >> + $(SYS_CFLAGS.1) \ > >> + > >> +-- > >> +1.9.1 > >> + > >> diff --git a/recipes-bsp/powervr-drivers/omap3-sgx- > >modules_5.01.01.01.bb > >> b/recipes-bsp/powervr-drivers/omap3-sgx-modules_5.01.01.01.bb > >> index 40bf8c0..0b1c06f 100644 > >> --- a/recipes-bsp/powervr-drivers/omap3-sgx- > >modules_5.01.01.01.bb > >> +++ b/recipes-bsp/powervr-drivers/omap3-sgx- > >modules_5.01.01.01.bb > >> @@ -10,7 +10,7 @@ IMGPV = "1.10.2359475" > >> > >> inherit module > >> > >> -MACHINE_KERNEL_PR_append = "a" > >> +MACHINE_KERNEL_PR_append = "b" > >> PR = "${MACHINE_KERNEL_PR}" > >> > >> BINFILE_HARDFP = "Graphics_SDK_setuplinux_hardfp_${SGXPV}.bin" > >> @@ -33,6 +33,11 @@ BINFILE := "${BINFILE_HARDFP}" > >> > >> SRC_URI = "http://software- > >> > >dl.ti.com/dsps/dsps_public_sw/gfxsdk/${SGXPV}/exports/${BINFILE}" > >> > >> +SRC_URI += "file://0001-PoC-GFX-SDK-Make-5_01_01_01-work- > >against-3.14- > >> LTS.patch;striplevel=2 \ > >> + file://0002-SGX-linux-use-platform-data-to-provide- > >reset- > >> info.patch;striplevel=2 \ > >> + file://0003-SGX-displayclass-am335x-am437x-fix- > >mutex-deadlock- > >> wa.patch;striplevel=2 \ > >> + file://0004-SGX-linux-make-it-building-against-ti- > >linux- > >> 3.14.y.patch;striplevel=2" > >> + > >> SRC_URI[md5sum] := "${MD5SUM_HARDFP}" > >> SRC_URI[sha256sum] := "${SHA256SUM_HARDFP}" > >> > >> -- > >> 2.0.2 > >> > >> -- > >> _______________________________________________ > >> meta-ti mailing list > >> [email protected] > >> https://lists.yoctoproject.org/listinfo/meta-ti > >-- > >_______________________________________________ > >meta-ti mailing list > >[email protected] > >https://lists.yoctoproject.org/listinfo/meta-ti > -- > _______________________________________________ > meta-ti mailing list > [email protected] > https://lists.yoctoproject.org/listinfo/meta-ti -- _______________________________________________ meta-ti mailing list [email protected] https://lists.yoctoproject.org/listinfo/meta-ti
