[Armadillo:09364] Re: Armadillo-420 リセット要因を知る方法

HSC:熊谷 貴広 email@hidden
2013年 12月 16日 (月) 22:44:19 JST


いつもお世話になっております。熊谷です。

お教えいただいたレジスタについて、
SoftWatchDog リセットを発生させ、
以下の2点で読み出したのですが、リセット要因が設定されていないようでした。
起動時(①)はリセット要因クリアされている可能性があるため、
リセット発生時(②)にはリセット要因が設定されているものと考えていたので
すが、タイミング(読み出す)は全く異なるのでしょうか。

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

■読み出し箇所
    ①Armadillo 起動時
        arch/arm/mach-mx25/armadillo400.c
        static void __init armadillo400_init(void)


    ②WatchDog リセット発生時
        arch/arm/mach-mx25/system.c
        void arch_reset(char mode)

■読み出し結果
  ①の場合
        Machine: Armadillo-420
        Memory policy: ECC disabled, Data cache writeback

        ~略~

        MXC WDOG1 Enabled
        @@@@ reg_rcsr = 0x1000800
        CPU is i.MX25 Revision 1.2
        Clock input source is 24000000
        MXC GPIO hardware

  ②の場合
    SoftDog: Initiating system reboot.
    0x1000800
    
    期待値:0x*******2

    <コード>
        int reg_rcsr;

        reg_rcsr = __raw_readl(MXC_CCM_CRSR);
        printk(KERN_INFO "reg_rcsr = 0x%x\n", reg_rcsr);

以上、よろしくお願いいたします。
  ________
 〆 引用 メール φ \
|           ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|From    :  Shin-ya Koga <email@hidden>
|Cc      :  
|Date    :  2013/12/08 11:05:40
|Subject :  Armadillo-420 リセット要因を知る方法
|________________________________________________________________
|
|サムシングプレシャスの古賀です。
|
|熊谷さん([Armadillo:09341]):
|>Arimadillo のリセット要因(Power-on reset、Cold/Warm reset)を
|>任意ファイル(/dev/xxxxx.inf)に格納し、
|>ユーザランド側からファイルを参照し、
|>そのリセット要因に沿った初期起動処理を分岐させたいと考えております。
|>
|>下記資料(※1・※2)を見る限り、
|>リセット要因を「POR_B」/「RESET_B」から読み取れるようですが、
|>可能なのでしょうか。
|
|i.MX257 の CCM (Clock Controller Module) の RCSR レジスタの
|値を読み、その REST フィールドの値でリセット要因を判定できる
|かと思います。
|
|IMX25RM.pdf の、"15.3.3.11 CCM Status Register (RCSR)" を
|ご覧ください。
|
|--
|古賀信哉 (株)サムシングプレシャス
|
|_______________________________________________
|armadillo mailing list
|email@hidden
|http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
|




armadillo メーリングリストの案内