Skip to contentSkip to conversation

sh: kernel: cpu: provide 'NULL' parameter for calling cpuidle_register().

PATCH In review Chen Gang 2 participants 4 messages Jul 31, 2013 SuperH

lore
Share & tools
lore

Chen Gang

author
#0 lore raw

PATCH 1/1 sh: kernel: cpu: provide 'NULL' parameter for calling cpuidle_register().

Need provide additional parameter for calling cpuidle_register() just like some of another architectures have done, or can not pass compiling.

The related error (with kfr2r09_defconfig):

CC arch/sh/kernel/cpu/shmobile/cpuidle.o
arch/sh/kernel/cpu/shmobile/cpuidle.c: In function 'sh_mobile_setup_cpuidle':
arch/sh/kernel/cpu/shmobile/cpuidle.c:102:2: error: too few arguments to function 'cpuidle_register'

    return cpuidle_register(&cpuidle_driver);
    ^
  In file included from arch/sh/kernel/cpu/shmobile/cpuidle.c:16:0:
  include/linux/cpuidle.h:130:12: note: declared here
   extern int cpuidle_register(struct cpuidle_driver *drv,
            ^
---
 arch/sh/kernel/cpu/shmobile/cpuidle.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
arch/sh/kernel/cpu/shmobile/cpuidle.c +1 -1
index d306225..5f88393 100644
@@ -99,5 +99,5 @@ int __init sh_mobile_setup_cpuidle(void)
 	if (sh_mobile_sleep_supported & SUSP_SH_STANDBY)
 		cpuidle_driver.states[2].disabled = false;
 
-	return cpuidle_register(&cpuidle_driver);
+	return cpuidle_register(&cpuidle_driver, NULL);
 }
Signature · 1 line
1.7.7.6
#1 lore raw
Quoted 15 lines · Chen Gang

Need provide additional parameter for calling cpuidle_register() just like some of another architectures have done, or can not pass compiling.

The related error (with kfr2r09_defconfig):

CC arch/sh/kernel/cpu/shmobile/cpuidle.o
arch/sh/kernel/cpu/shmobile/cpuidle.c: In function 'sh_mobile_setup_cpuidle':
arch/sh/kernel/cpu/shmobile/cpuidle.c:102:2: error: too few arguments to function 'cpuidle_register'

    return cpuidle_register(&cpuidle_driver);
    ^
  In file included from arch/sh/kernel/cpu/shmobile/cpuidle.c:16:0:
  include/linux/cpuidle.h:130:12: note: declared here
   extern int cpuidle_register(struct cpuidle_driver *drv,
            ^
Quoted 2 lines

---

Thanks for the patch.

I have the same fix in my tree sent by Geert Uytterhoeven

-- Daniel

Signature · 5 lines
 <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
author
#2 lore raw
In reply to Chen Gang
Quoted 16 lines · Daniel Lezcano
Quoted 15 lines · Chen Gang

Need provide additional parameter for calling cpuidle_register() just like some of another architectures have done, or can not pass compiling.

The related error (with kfr2r09_defconfig):

CC arch/sh/kernel/cpu/shmobile/cpuidle.o
arch/sh/kernel/cpu/shmobile/cpuidle.c: In function 'sh_mobile_setup_cpuidle':
arch/sh/kernel/cpu/shmobile/cpuidle.c:102:2: error: too few arguments to function 'cpuidle_register'

    return cpuidle_register(&cpuidle_driver);
    ^
  In file included from arch/sh/kernel/cpu/shmobile/cpuidle.c:16:0:
  include/linux/cpuidle.h:130:12: note: declared here
   extern int cpuidle_register(struct cpuidle_driver *drv,
            ^
Quoted 10 lines
Quoted 2 lines

---

Thanks for the patch.

I have the same fix in my tree sent by Geert Uytterhoeven

-- Daniel

OK, thanks, and I will send another patches.

:-)

Signature · 1 line
Chen Gang
author
#3 lore raw

PATCH 1/1 scripts/recordmcount.pl: remove "-m32" for sh architecture

'allmodconfig' will report error for "-m32", Now "-m32" is useless for latest compiler and neither can find "-m32" in "arch/sh" directory, so just remove it is OK.

The related error:

CC init/main.o
sh3-gchen-linux-gnu-gcc: error: unrecognized command line option '-m32'
sh3-gchen-linux-gnu-ld: cannot find init/.tmp_mc_main.o: No such file or directory sh3-gchen-linux-gnu-objcopy: 'init/.tmp_mx_main.o': No such file
rm: cannot remove `init/.tmp_mx_main.o': No such file or directory
rm: cannot remove `init/.tmp_mc_main.o': No such file or directory

    CHK     include/generated/compile.h
    CC      init/version.o
    CC      init/do_mounts.o
  sh3-gchen-linux-gnu-gcc: error: unrecognized command line option '-m32'
  sh3-gchen-linux-gnu-ld: cannot find init/.tmp_mc_do_mounts.o: No such file or directory
  mv: cannot stat `init/.tmp_mx_do_mounts.o': No such file or directory
  rm: cannot remove `init/.tmp_mc_do_mounts.o': No such file or directory
    CC      init/do_mounts_initrd.o
    LD      init/mounts.o
    CC      init/initramfs.o
    CC      init/init_task.o
    LD      init/built-in.o

sh3-gchen-linux-gnu-ld: cannot find init/main.o: No such file or directory make[1]: *** [init/built-in.o] Error 1
make: *** [init] Error 2

The related compiler information:

[root@dhcp122 linux-next]# sh3-gchen-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=sh3-gchen-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/home/gchen/x-tools/sh3-gchen-linux-gnu/bin/../libexec/gcc/sh3-gchen-linux-gnu/4.8.0/lto-wrapper
Target: sh3-gchen-linux-gnu
Configured with: /root/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/src/gcc-4.8.0/configure --build=x86_64-build_unknown-linux-gnu --host=x86_64-build_unknown-linux-gnu --target=sh3-gchen-linux-gnu --prefix=/root/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/sh3-gchen-linux-gnu/buildtools --with-local-prefix=/home/gchen/x-tools/sh3-gchen-linux-gnu/sh3-gchen-linux-gnu/sysroot --disable-libmudflap --with-sysroot=/home/gchen/x-tools/sh3-gchen-linux-gnu/sh3-gchen-linux-gnu/sysroot --enable-shared --with-pkgversion='crosstool-NG hg+unknown-20130731.103227' --enable-__cxa_atexit --with-gmp=/root/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/sh3-gchen-linux-gnu/buildtools --with-mpfr=/root/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/sh3-gchen-linux-gnu/buildtools --with-mpc=/root/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/sh3-gchen-linux-gnu/buildtools --with-isl=/root/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/sh3-gchen-linux-gnu/buildtools --with
-cloog=/r
oot/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/sh3-gchen-linux-gnu/buildtools --with-libelf=/root/src/toolchain_sh/crosstool-ng-2685dfa9de14/.build/sh3-gchen-linux-gnu/buildtools --enable-lto --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-nls --disable-multilib --enable-languages=c
Thread model: posix
gcc version 4.8.0 (crosstool-NG hg+unknown-20130731.103227)

---
 scripts/recordmcount.pl |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)
scripts/recordmcount.pl +0 -1
index 858966a..679218b 100755
@@ -262,7 +262,6 @@ if ($arch eq "x86_64") {
     # force flags for this arch
     $ld .= " -m shlelf_linux";
     $objcopy .= " -O elf32-sh-linux";
-    $cc .= " -m32";
 
 } elsif ($arch eq "powerpc") {
     $local_regex = "^[0-9a-fA-F]+\\s+t\\s+(\\.?\\S+)";
Signature · 1 line
1.7.7.6