Dear developers,.

 

I’m trying to build a kernel for tizen TM1. (
<https://review.tizen.org/gerrit/#/projects/profile/mobile/platform/kernel/l
inux-3.10-sc7730,dashboards/default> profile/mobile/platform/kernel/linux-3.
10-sc7730)

I have tried two versions of toolchain.

 

gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf.tar.xz

and

gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabihf.tar.xz

 

And I have referenced two sites.
https://source.tizen.org/documentation/developer-guide/getting-started-
guide/installing-development-tools ,
https://wiki.tizen.org/wiki/Porting_Guide#Kernel_Build

 

But the compilation was failed with two errors,.

One is the duplicated symbol “return_address”

And the other is “undefined symbol “uwi””.

 

----------------- build error -------------------------

LD      init/mounts.o

init/do_mounts_rd.o: In function `return_address':

/root/workspace/linux-3.10-sc7730/arch/arm/include/asm/ftrace.h:51:
multiple definition of `return_address'

init/do_mounts.o:/root/workspace/linux-3.10-
sc7730/arch/arm/include/asm/ftrace.h:51: first defined here

init/do_mounts_initrd.o: In function `return_address':

/root/workspace/linux-3.10-sc7730/arch/arm/include/asm/ftrace.h:51:
multiple definition of `return_address'

init/do_mounts.o:/root/workspace/linux-3.10-
sc7730/arch/arm/include/asm/ftrace.h:51: first defined here

scripts/Makefile.build:441: recipe for target 'init/mounts.o' failed

make[1]: *** [init/mounts.o] Error 1

Makefile:797: recipe for target 'init' failed

make: *** [init] Error 2

/usr/local/bin/build.tizen: 12: exit: Illegal number: -1

nicesj.park@nclab:~/workspace/linux-3.10-sc7730#
<mailto:nicesj.park@nclab:~/workspace/linux-3.10-sc7730#> 

--------------------------------------------------------

 

So I wrote a patch to fix these errors.

Is this a right approach to figure it out?

Of course, after applying my patch, the tm1 device booted well. But I’m
not sure that all device functions are working well..

 

Best regards,

nicesj.

 

Ps. Patchset. (based on: commit ee59be35abfd69893c7ab1efb022622c5e9cc073)

diff --git a/arch/arm/include/asm/ftrace.h b/arch/arm/include/asm/ftrace.h

index 39eb16b..bfe2a2f 100644

--- a/arch/arm/include/asm/ftrace.h

+++ b/arch/arm/include/asm/ftrace.h

@@ -45,7 +45,7 @@ void *return_address(unsigned int);

 

#else

 

-extern inline void *return_address(unsigned int level)

+static inline void *return_address(unsigned int level)

{

        return NULL;

}

diff --git a/arch/arm/kernel/return_address.c
b/arch/arm/kernel/return_address.c

index fafedd8..f6aa84d 100644

--- a/arch/arm/kernel/return_address.c

+++ b/arch/arm/kernel/return_address.c

@@ -63,11 +63,6 @@ void *return_address(unsigned int level)

#warning "TODO: return_address should use unwind tables"

#endif

 

-void *return_address(unsigned int level)

-{

-       return NULL;

-}

-

#endif /* if defined(CONFIG_FRAME_POINTER) && !defined(CONFIG_ARM_UNWIND) /
else */

 

EXPORT_SYMBOL_GPL(return_address);

diff --git a/drivers/cpufreq/cpufreq_sprdemand.c
b/drivers/cpufreq/cpufreq_sprdemand.c

index 23f9f09..4a4bc77 100644

--- a/drivers/cpufreq/cpufreq_sprdemand.c

+++ b/drivers/cpufreq/cpufreq_sprdemand.c

@@ -98,12 +98,14 @@ struct work_struct unplug_all_work;

static int cpu_num_limit_temp;

static void sprd_thm_unplug_cpu(struct work_struct *work);

 

+#if 0

static DEFINE_PER_CPU(struct unplug_work_info, uwi);

 

static DEFINE_SPINLOCK(g_lock);

static unsigned int percpu_total_load[CONFIG_NR_CPUS] = {0};

static unsigned int percpu_check_count[CONFIG_NR_CPUS] = {0};

static int cpu_score = 0;

+#endif

 

/* FIXME. default touch boost is enabled */

#define CONFIG_TOUCH_BOOST

_______________________________________________
Dev mailing list
Dev@lists.tizen.org
https://lists.tizen.org/listinfo/dev

Reply via email to