[Armadillo:05045] Re: 開発環境「 linux-2.6.12.3-a9-7 」「 atmark-dist-20060908 」のビルドについて
mizo
email@hidden
2010年 3月 25日 (木) 15:01:00 JST
溝渕です。
yoshi independence wrote:
> 吉村と申します。
> yashi様 早速のご教授ありがとうございます。
> 教えて頂いたとおり[uaccess.h]ファイルを変更しました。
> すると異なる箇所でエラーになりました。
>
> CC drivers/serial/ep93xx.o
> In file included from include/asm/proc-fns.h:154,
> from include/asm/system.h:95,
> from include/asm/bitops.h:22,
> from include/linux/bitops.h:77,
> from include/linux/thread_info.h:20,
> from include/linux/spinlock.h:12,
> from include/linux/capability.h:45,
> from include/linux/sched.h:7,
> from include/linux/module.h:10,
> from drivers/serial/ep93xx.c:39:
> include/asm/cpu-single.h:44: warning: type qualifiers
> ignored on function return type
> drivers/serial/ep93xx.c:925: error: static declaration of
> ‘ep93xx_reg’ follows non-static declaration
> drivers/serial/ep93xx.c:901: error: previous declaration
> of
> ‘ep93xx_reg’ was here
> make[3]: *** [drivers/serial/ep93xx.o] エラー 1
> make[2]: *** [drivers/serial] エラー 2
> make[1]: *** [drivers] エラー 2
> make[1]: ディレクトリ
> `/home/atmark/linux-2.6.12.3-a9-7-vpn-cam'
> から出ます
> make: *** [linux] エラー 1
これを適用するとどうなりますか?ちなみにlinux-2.6.12.3-a9-17ではこのパッ
チはすでに適用されています。
--- linux-2.6.12.3-a9-7.org/include/asm-arm/cpu-single.h
2005-07-16 06:18:57.000000000 +0900
+++ linux-2.6.12.3-a9-7/include/asm-arm/cpu-single.h 2010-03-25
14:36:59.000000000 +0900
@@ -41,4 +41,4 @@
extern void cpu_dcache_clean_area(void *, int);
extern void cpu_do_switch_mm(unsigned long pgd_phys, struct mm_struct *mm);
extern void cpu_set_pte(pte_t *ptep, pte_t pte);
-extern volatile void cpu_reset(unsigned long addr);
+extern void cpu_reset(unsigned long addr) __attribute__((noreturn));
--- linux-2.6.12.3-a9-7.org/drivers/serial/ep93xx.c 2005-12-14
04:37:05.000000000 +0900
+++ linux-2.6.12.3-a9-7/drivers/serial/ep93xx.c 2010-03-25
14:39:09.000000000 +0900
@@ -898,7 +898,7 @@
* it to -1, then uart_get_console will search for the first UART
* which is the same as setting it to 0.
*/
-extern struct uart_driver ep93xx_reg;
+static struct uart_driver ep93xx_reg;
static struct console ep93xx_console = {
.name = "ttyAM",
.write = ep93xxuart_console_write,
カーネルデフォルトコンフィギュレーションのパッチはそのまま使用できないか
もしれませんが、linux-2.6.12.3-a9-17を使用してみてはいかがでしょうか?
[特集 : ET2006デモ紹介 - ネットワーク対応監視カメラシステム]
http://armadillo.atmark-techno.com/articles/et2006/network-camera
にあるソースファイルのバージョンは、この特集を書いたときに動作確認を行
なったバージョンです。これ以外のバージョンのソースファイルでは動作しない
というものではありません。(動作しない場合もあるかもしれませんが…。)
以上です。
> 申し訳ないですが、また教えて頂けないでしょうか?
> よろしくお願いします。
>> こんな感じで直りますか?
>>
>> --- linux-2.6.12.3-a9-6/include/asm-arm/uaccess.h
>> 2005-07-16 06:18:57.000000000 +0900
>> +++ linux-2.6.12.3-a9-17/include/asm-arm/uaccess.h
>> 2009-03-06 19:53:28.000000000 +0900
>> @@ -120,7 +120,7 @@
>> #define get_user(x,p) \
>> ({ \
>> const register typeof(*(p)) __user *__p asm("r0")
>> = (p);\
>> - register typeof(*(p)) __r2 asm("r2"); \
>> + register unsigned long __r2 asm("r2"); \
>> register int __e asm("r0"); \
>> switch (sizeof(*(__p))) { \
>> case 1: \
>> @@ -132,12 +132,9 @@
>> case 4: \
>> __get_user_x(__r2, __p, __e, 4, "lr"); \
>> break; \
>> - case 8: \
>> - __get_user_x(__r2, __p, __e, 8, "lr"); \
>> - break; \
>> default: __e = __get_user_bad(); break; \
>> } \
>> - x = __r2; \
>> + x = (typeof(*(p))) __r2; \
>> __e; \
>> })
>>
>>
>> または、こちらで:
>>
> http://git.kernel.org/linus/d2c5b69099ff747f9757da2416383b9a999171b1
>> --
>> yashi
>> _______________________________________________
>> armadillo mailing list
>> email@hidden
>>
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>
armadillo メーリングリストの案内