diff options
4 files changed, 107 insertions, 6 deletions
diff --git a/packages/powervr-drivers/libgles-omap3/rc.pvr b/packages/powervr-drivers/libgles-omap3/rc.pvr index 7c23603280..f9877e4992 100755 --- a/packages/powervr-drivers/libgles-omap3/rc.pvr +++ b/packages/powervr-drivers/libgles-omap3/rc.pvr @@ -4,7 +4,7 @@ rmmod bc_example rmmod omaplfb rmmod pvrsrvkm -insmod $(find /lib/modules/$(uname -r) -name "pvrsrvkm.ko") +insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko") modprobe -f bc_example modprobe -f omaplfb diff --git a/packages/powervr-drivers/libgles-omap3_3.00.00.05.bb b/packages/powervr-drivers/libgles-omap3_3.00.00.05.bb index 43f6a55269..62c69a0ed0 100644 --- a/packages/powervr-drivers/libgles-omap3_3.00.00.05.bb +++ b/packages/powervr-drivers/libgles-omap3_3.00.00.05.bb @@ -2,7 +2,7 @@ require libgles-omap3.inc # Not released yet DEFAULT_PREFERENCE = "-1" -PR = "r1" +PR = "r2" SGXPV = "3_00_00_05" diff --git a/packages/powervr-drivers/omap3-sgx-modules/0001-Compile-fixes-for-DSS2.patch b/packages/powervr-drivers/omap3-sgx-modules/0001-Compile-fixes-for-DSS2.patch new file mode 100644 index 0000000000..7dbf4d9e6e --- /dev/null +++ b/packages/powervr-drivers/omap3-sgx-modules/0001-Compile-fixes-for-DSS2.patch @@ -0,0 +1,96 @@ +From 8b6a6bb6702ab796ab56dbbd6caa1b271ed4485b Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@nokia.com> +Date: Fri, 9 Jan 2009 12:40:28 +0200 +Subject: [PATCH] Compile fixes for DSS2 + +--- + .../dc_omap3430_linux/omaplfb_displayclass.c | 6 ++++-- + .../3rdparty/dc_omap3430_linux/omaplfb_linux.c | 14 ++++---------- + 2 files changed, 8 insertions(+), 12 deletions(-) + +diff --git a/services4/3rdparty/dc_omap3430_linux/omaplfb_displayclass.c b/services4/3rdparty/dc_omap3430_linux/omaplfb_displayclass.c +index 7b8ec37..6fde397 100755 +--- a/services4/3rdparty/dc_omap3430_linux/omaplfb_displayclass.c ++++ b/services4/3rdparty/dc_omap3430_linux/omaplfb_displayclass.c +@@ -57,8 +57,6 @@ PVRSRV_ERROR OMAPLFBPostPower (IMG_HANDLE hDevHandle, + PVR_POWER_STATE eCurrentPowerState); + #endif + +-extern void omap_dispc_set_plane_base(int plane, IMG_UINT32 phys_addr); +- + static PFN_DC_GET_PVRJTABLE pfnGetPVRJTable = IMG_NULL; + + static OMAPLFB_DEVINFO * GetAnchorPtr(IMG_VOID) +@@ -124,6 +122,9 @@ static void WorkHandler( + static PVRSRV_ERROR Flip(OMAPLFB_SWAPCHAIN *psSwapChain, + IMG_UINT32 aPhyAddr) + { ++ printk("no flipping\n"); ++ return PVRSRV_OK; ++#if 0 + if (1 /* omap2_disp_get_output_dev(OMAP2_GRAPHICS) == OMAP2_OUTPUT_LCD */) + { + omap_dispc_set_plane_base(0, aPhyAddr); +@@ -137,6 +138,7 @@ static PVRSRV_ERROR Flip(OMAPLFB_SWAPCHAIN *psSwapChain, + } + + return PVRSRV_ERROR_INVALID_PARAMS; ++#endif + } + + static IMG_VOID EnableVSyncInterrupt(OMAPLFB_SWAPCHAIN *psSwapChain) +diff --git a/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c b/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c +index acf1631..12f3e32 100755 +--- a/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c ++++ b/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c +@@ -37,6 +37,7 @@ + #include <linux/slab.h> + #include <linux/errno.h> + #include <linux/interrupt.h> ++#include <mach/display.h> + + #include <asm/io.h> + +@@ -52,10 +53,6 @@ MODULE_LICENSE("GPL"); + MODULE_SUPPORTED_DEVICE(DRVNAME); + + +-extern int omap_dispc_request_irq(unsigned long, void (*)(void *), void *); +-extern void omap_dispc_free_irq(unsigned long, void (*)(void *), void *); +- +- + #define unref__ __attribute__ ((unused)) + + +@@ -101,17 +98,14 @@ PVRSRV_ERROR OMAPLFBGetLibFuncAddr (IMG_CHAR *szFunctionName, PFN_DC_GET_PVRJTAB + } + + static void +-OMAPLFBVSyncISR(void *arg) ++OMAPLFBVSyncISR(void *arg, u32 mask) + { + (void) OMAPLFBVSyncIHandler((OMAPLFB_SWAPCHAIN *)arg); + } + +-#define DISPC_IRQ_VSYNC 0x0002 +- + PVRSRV_ERROR OMAPLFBInstallVSyncISR(OMAPLFB_SWAPCHAIN *psSwapChain) + { +- +- if (omap_dispc_request_irq(DISPC_IRQ_VSYNC, OMAPLFBVSyncISR, psSwapChain) != 0) ++ if (omap_dispc_register_isr(OMAPLFBVSyncISR, psSwapChain, DISPC_IRQ_VSYNC) != 0) + return PVRSRV_ERROR_OUT_OF_MEMORY; /* not worth a proper mapping */ + + return PVRSRV_OK; +@@ -120,7 +114,7 @@ PVRSRV_ERROR OMAPLFBInstallVSyncISR(OMAPLFB_SWAPCHAIN *psSwapChain) + + PVRSRV_ERROR OMAPLFBUninstallVSyncISR (OMAPLFB_SWAPCHAIN *psSwapChain) + { +- omap_dispc_free_irq(DISPC_IRQ_VSYNC, OMAPLFBVSyncISR, psSwapChain); ++ omap_dispc_unregister_isr(OMAPLFBVSyncISR); + + return PVRSRV_OK; + } +-- +1.5.6.3 + diff --git a/packages/powervr-drivers/omap3-sgx-modules_1.3.13.1397.bb b/packages/powervr-drivers/omap3-sgx-modules_1.3.13.1397.bb index 01208275ac..20bce6091c 100644 --- a/packages/powervr-drivers/omap3-sgx-modules_1.3.13.1397.bb +++ b/packages/powervr-drivers/omap3-sgx-modules_1.3.13.1397.bb @@ -1,17 +1,22 @@ DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs" LICENSE = "GPLv2" -PR = "r2" +PR = "r3" inherit module -SRC_URI = "http://dominion.thruhere.net/koen/OE/omap3-sgx-modules-1.3.13.1397.tar.bz2" - -S = ${WORKDIR}/${PN}-${PV}/eurasiacon/build/linux/omap3430_linux/kbuild/ +SRC_URI = "http://dominion.thruhere.net/koen/OE/omap3-sgx-modules-${PV}.tar.bz2 \ +# file://0001-Compile-fixes-for-DSS2.patch;patch=1 \ +" MAKE_TARGETS = "BUILD=debug" +do_compile_prepend() { + cd ${S}/eurasiacon/build/linux/omap3430_linux/kbuild/ +} + do_install() { + cd ${S}/eurasiacon/build/linux/omap3430_linux/kbuild/ mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr cp ${WORKDIR}/${PN}-${PV}/eurasiacon/binary_omap3430_linux_debug/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr } |