1
0
mirror of https://git.yoctoproject.org/meta-ti synced 2026-04-20 19:53:43 +00:00

ti-linuxutils: Fix build problems for kernel up to 3.17

Add to patches to fix the build of cmemk and sdmak kernel modules.

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
This commit is contained in:
Enric Balletbo i Serra
2014-10-08 19:47:46 +00:00
committed by Denys Dmytriyenko
parent 888ea37444
commit a9a74cc33d
4 changed files with 89 additions and 2 deletions

View File

@@ -15,7 +15,7 @@ require recipes-ti/includes/ti-staging.inc
PR = "${MACHINE_KERNEL_PR}"
#This is a kernel module, don't set PR directly
MACHINE_KERNEL_PR_append = "e"
MACHINE_KERNEL_PR_append = "f"
inherit module

View File

@@ -0,0 +1,59 @@
Index: linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
===================================================================
--- linuxutils_2_26_01_02.orig/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
+++ linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
@@ -31,6 +31,7 @@
#include <linux/seq_file.h>
#include <linux/vmalloc.h>
#include <linux/sched.h>
+#include <linux/slab.h>
#include <asm/cacheflush.h>
#include <asm/uaccess.h>
#include <asm/pgtable.h>
@@ -1072,7 +1073,7 @@ static int set_noncached(struct vm_area_
{
vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
- vma->vm_flags |= VM_RESERVED | VM_IO;
+ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP | VM_IO;
if (remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff,
vma->vm_end - vma->vm_start, vma->vm_page_prot)) {
@@ -1095,7 +1096,7 @@ static int set_cached(struct vm_area_str
);
#endif
- vma->vm_flags |= VM_RESERVED | VM_IO;
+ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP | VM_IO;
if (remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff,
vma->vm_end - vma->vm_start, vma->vm_page_prot)) {
@@ -2062,8 +2063,13 @@ int __init cmem_init(void)
block_avail_size[bi] = length;
/* attempt to determine the end of Linux kernel memory */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 11, 0)
phys_end_kernel = virt_to_phys((void *)PAGE_OFFSET) +
(num_physpages << PAGE_SHIFT);
+#else
+ phys_end_kernel = virt_to_phys((void *)PAGE_OFFSET) +
+ (get_num_physpages() << PAGE_SHIFT);
+#endif
if (phys_end_kernel > block_start[bi]) {
if (allowOverlap == 0) {
@@ -2186,10 +2192,14 @@ int __init cmem_init(void)
}
/* Create the /proc entry */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
cmem_proc_entry = create_proc_entry("cmem", 0, NULL);
if (cmem_proc_entry) {
cmem_proc_entry->proc_fops = &cmem_proc_ops;
}
+#else
+ cmem_proc_entry = proc_create_data("cmem", 0, NULL, &cmem_proc_ops, NULL);
+#endif
mutex_init(&cmem_mutex);

View File

@@ -0,0 +1,25 @@
Index: linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c
===================================================================
--- linuxutils_2_26_01_02.orig/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c
+++ linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c
@@ -44,7 +44,7 @@
#include <mach/hardware.h>
#include <mach/dma.h>
#include <mach/tc.h>
-#else
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)
#include <plat/hardware.h>
#include <plat/dma.h>
#include <plat/tc.h>
@@ -97,6 +97,11 @@
#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18) */
+#ifndef OMAP_DMA_NO_DEVICE
+#include <linux/omap-dma.h>
+#define OMAP_DMA_NO_DEVICE 0
+#endif
+
#include "../interface/sdma.h"
struct channel {

View File

@@ -1,6 +1,9 @@
require ti-linuxutils.inc
SRC_URI += "file://linuxutils-BKL-fix-2.patch"
SRC_URI += "file://linuxutils-BKL-fix-2.patch \
file://linuxutils_2_26-cmemk-fixes.patch \
file://linuxutils_2_26-sdmak-fixes.patch \
"
PE = "1"
PV = "2_26_01_02"