On Thu, 2009-07-09 at 21:00 +0530, Azam Ansari wrote:

...

>         
>         > constant
>         > arch/arm/mach-davinci/io.c:53: error: (near initialization
>         for
>         > `davinci_io_desc[2].physical')
>         > arch/arm/mach-davinci/io.c:56: error: initializer element is
>         not
>         > constant
>         > arch/arm/mach-davinci/io.c:56: error: (near initialization
>         for
>         > `davinci_io_desc[2]')
>         > arch/arm/mach-davinci/io.c: In function
>         `davinci_map_common_io':
>         > arch/arm/mach-davinci/io.c:
>         > 111: warning: too few arguments for format
>         
>         
>         Kind of difficult to tell without having the source code
>         available.

Just dawn on me after looking at the patch, you are using 2.6.10 kernel
right?  The problem is that the kernel is too old for the patch.  The
compiler issues are relatively easy to fix, but there is no guarantee
that power management will work after getting pass the compiler issue.

>         >
>         >
>         > So bypass this error I commented following lines in
>         > arch/arm/mach-davinci/io.c file:
>         > .pfn            = phys_to_pfn(DDR2_CTRL_PHYS),
>         > .pfn            = phys_to_pfn(TCM_PHYS),

In 2.6.10, you want to use .physical instead of .pfn.

>         >
>         >
>         > But then I get following error during linking.
>         >
>         >
>         > arch/arm/mach-davinci/built-in.o(.text+0x4fd4): In function
>         > `davinci_pm_idle':
>         > arch/arm/mach-davinci/sleep.S: undefined reference to
>         > `timer_dyn_reprogram'
>         > arch/arm/mach-davinci/built-in.o(.text
>         > +0x5004):arch/arm/mach-davinci/sleep.S: undefined reference
>         to
>         > `timer_dyn_reprogram'
>         > arch/arm/mach-davinci/built-in.o(.init.text+0x14cc): In
>         function
>         > `davinci_pm_init':
>         > arch/arm/mach-davinci/sleep.S: undefined reference to
>         > `suspend_set_ops'
>         >
>         >
>         > I didn't find suspend_set_ops() and timer_dyn_reprogram()
>         functions

suspend_set_ops is defined newer kernels in kernel/power/main.c.  The
2.6.10 kernel predates power management patches.  It seems that your
option at this point are

1.  Move to a newer kernel with power management support (2.6.21 or
later I believe.  Please correct me if I am mistaken).
2. Backport power management to your existing kernel

As for timer_dyn_repgrogram(), you may want to reference
0faf34c154a511cb419ea2e142293f950fcfe619.

Regards,

Steve



_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to