mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-01-27 23:44:04 +00:00
core/linux-cubox Enable iwMMXt support and 2 fb patches
This commit is contained in:
parent
fb06e45dac
commit
86a1804f45
4 changed files with 81 additions and 5 deletions
|
@ -8,7 +8,7 @@ pkgname=('linux-cubox' 'linux-headers-cubox')
|
|||
_kernelname=${pkgname#linux}
|
||||
_basekernel=3.5
|
||||
pkgver=${_basekernel}.7
|
||||
pkgrel=4
|
||||
pkgrel=5
|
||||
cryptover=1.4
|
||||
arch=('arm')
|
||||
url="http://www.kernel.org/"
|
||||
|
@ -17,10 +17,14 @@ makedepends=('xmlto' 'docbook-xsl' 'uboot-mkimage' 'git' 'python2')
|
|||
options=('!strip')
|
||||
source=('config'
|
||||
'change-default-console-loglevel.patch'
|
||||
"http://download.gna.org/cryptodev-linux/cryptodev-linux-${cryptover}.tar.gz")
|
||||
md5sums=('64f271dbdde04963c91092c88bce50e8'
|
||||
"http://download.gna.org/cryptodev-linux/cryptodev-linux-${cryptover}.tar.gz"
|
||||
'dovefb_patch1'.patch
|
||||
'dovefb_patch2'.patch)
|
||||
md5sums=('6b1ace88a0a286654f6075d1def3c0bc'
|
||||
'9d3c56a4b999c8bfbd4018089a62f662'
|
||||
'7b0ac1c0a88d8fbe7316db02f21666e6')
|
||||
'7b0ac1c0a88d8fbe7316db02f21666e6'
|
||||
'f1a0a82c5a957c45d3a118e4f7c2a80e'
|
||||
'778d87956820ce7bffe8bb1a45416d2e')
|
||||
|
||||
__gitroot="git://github.com/vDorst/linux.git"
|
||||
__gitname="linux"
|
||||
|
@ -45,6 +49,10 @@ build() {
|
|||
# (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
|
||||
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
|
||||
|
||||
#video patches
|
||||
patch -Np1 -i "${srcdir}/dovefb_patch1.patch"
|
||||
patch -Np1 -i "${srcdir}/dovefb_patch2.patch"
|
||||
|
||||
cat "${srcdir}/config" > ./.config
|
||||
|
||||
# set extraversion to pkgrel
|
||||
|
|
|
@ -318,7 +318,7 @@ CONFIG_PLAT_ORION=y
|
|||
#
|
||||
# Processor Type
|
||||
#
|
||||
# CONFIG_CPU_PJ4 is not set
|
||||
CONFIG_CPU_PJ4=y
|
||||
CONFIG_CPU_V7=y
|
||||
CONFIG_CPU_32v6K=y
|
||||
CONFIG_CPU_32v7=y
|
||||
|
|
54
core/linux-cubox/dovefb_patch1.patch
Normal file
54
core/linux-cubox/dovefb_patch1.patch
Normal file
|
@ -0,0 +1,54 @@
|
|||
From: Jean-Francois Moine <moinejf@free.fr>
|
||||
Date: Thu Nov 15 18:14:43 CET 2012
|
||||
|
||||
Stop the dovefb irq's after video display
|
||||
|
||||
This patch is to be applied to René van Dorst's linux kernel
|
||||
|
||||
git://github.com/vDorst/linux.git
|
||||
|
||||
branch
|
||||
CuBox-v3.5.7-Patched
|
||||
|
||||
diff --git a/drivers/video/dovefb/dovefb_ovly.c b/drivers/video/dovefb/dovefb_ovly.c
|
||||
index 68cfdd2..d640ac7 100644
|
||||
--- a/drivers/video/dovefb/dovefb_ovly.c
|
||||
+++ b/drivers/video/dovefb/dovefb_ovly.c
|
||||
@@ -322,7 +322,7 @@ static int dovefb_ovly_ioctl(struct fb_info *fi, unsigned int cmd,
|
||||
{
|
||||
void __user *argp = (void __user *)arg;
|
||||
struct dovefb_layer_info *dfli = fi->par;
|
||||
- u32 x;
|
||||
+ u32 x, irq_ena;
|
||||
int vmode = 0;
|
||||
int gfx_on = 1;
|
||||
int vid_on = 1;
|
||||
@@ -528,19 +528,19 @@ static int dovefb_ovly_ioctl(struct fb_info *fi, unsigned int cmd,
|
||||
case DOVEFB_IOCTL_SWITCH_VID_OVLY:
|
||||
if (copy_from_user(&vid_on, argp, sizeof(int)))
|
||||
return -EFAULT;
|
||||
+ x = readl(dfli->reg_base + LCD_SPU_DMA_CTRL0);
|
||||
+ irq_ena = readl(dfli->reg_base + SPU_IRQ_ENA);
|
||||
if (0 == vid_on) {
|
||||
- x = readl(dfli->reg_base + LCD_SPU_DMA_CTRL0) &
|
||||
- ~CFG_DMA_ENA_MASK;
|
||||
- writel(x, dfli->reg_base + LCD_SPU_DMA_CTRL0);
|
||||
+ x &= ~CFG_DMA_ENA_MASK;
|
||||
+ irq_ena &= ~(DOVEFB_VID_INT_MASK | DOVEFB_VSYNC_INT_MASK);
|
||||
} else {
|
||||
- x = readl(dfli->reg_base + LCD_SPU_DMA_CTRL0) |
|
||||
- CFG_DMA_ENA(0x1);
|
||||
- writel(x, dfli->reg_base + LCD_SPU_DMA_CTRL0);
|
||||
+ x |= CFG_DMA_ENA(0x1);
|
||||
+
|
||||
/* Enable VID & VSync. */
|
||||
- x = readl(dfli->reg_base + SPU_IRQ_ENA) |
|
||||
- DOVEFB_VID_INT_MASK | DOVEFB_VSYNC_INT_MASK;
|
||||
- writel(x, dfli->reg_base + SPU_IRQ_ENA);
|
||||
+ irq_ena |= DOVEFB_VID_INT_MASK | DOVEFB_VSYNC_INT_MASK;
|
||||
}
|
||||
+ writel(x, dfli->reg_base + LCD_SPU_DMA_CTRL0);
|
||||
+ writel(irq_ena, dfli->reg_base + SPU_IRQ_ENA);
|
||||
break;
|
||||
case DOVEFB_IOCTL_SWITCH_GRA_OVLY:
|
||||
if (copy_from_user(&gfx_on, argp, sizeof(int)))
|
14
core/linux-cubox/dovefb_patch2.patch
Normal file
14
core/linux-cubox/dovefb_patch2.patch
Normal file
|
@ -0,0 +1,14 @@
|
|||
diff -upr linux-a/drivers/video/dovefb/dovefb_ovly.c linux-b/drivers/video/dovefb/dovefb_ovly.c
|
||||
--- linux-a/drivers/video/dovefb/dovefb_ovly.c 2012-11-16 05:47:41.682464311 -0600
|
||||
+++ linux-b/drivers/video/dovefb/dovefb_ovly.c 2012-11-16 05:41:41.217634544 -0600
|
||||
@@ -284,7 +284,9 @@ static int check_surface(struct fb_info
|
||||
(dfli->surface.viewPortInfo.srcWidth != new_info->srcWidth ||
|
||||
dfli->surface.viewPortInfo.srcHeight != new_info->srcHeight ||
|
||||
dfli->surface.viewPortInfo.zoomXSize != new_info->zoomXSize ||
|
||||
- dfli->surface.viewPortInfo.zoomYSize != new_info->zoomYSize)) {
|
||||
+ dfli->surface.viewPortInfo.zoomYSize != new_info->zoomYSize ||
|
||||
+ dfli->surface.viewPortInfo.ycPitch != new_info->ycPitch ||
|
||||
+ dfli->surface.viewPortInfo.uvPitch != new_info->uvPitch)) {
|
||||
var->xres = new_info->srcWidth;
|
||||
var->yres = new_info->srcHeight;
|
||||
var->xres_virtual = new_info->srcWidth;
|
Loading…
Reference in a new issue