web-dev-qa-db-ja.com

カスタム組み込みシステムでクロックドリフトの原因を見つけるにはどうすればよいですか?

SAM9G45プロセッサで3.2オングストロームを実行するカスタムハードウェアがあります。すべてが正常に動作します。最近、SAM9G25プロセッサを使用する同様のハードウェアを設計しました。 2.6カーネルはSAM9G25で正常に動作することがわかりましたが、一部のワイヤレスドライバーを利用するには、3.2カーネルをプラットフォームに移植する必要がありました。港を完成させましたが、時刻が信頼できないことがわかりました。約20分間は正常に動作します。その後、時間(「日付」で報告)は数時間または数日先に進みます。 2.6カーネルは引き続き正常に動作するため、正しく移植されなかったと考えられます。私たちはすべてを見てきましたが、今のところ運がありません。次にどこを見ればいいのかわからない。

最終回答:Atmelは2.6カーネルのパッチをファイルtcb_clksrc.cに提供します。 3.2カーネルへの移植ではそれを見逃しました。洞察力をありがとう!

3
Jeff

カーネルオプションclocksource=jiffiesまたはnohpetを使用してシステムを起動してみてください。

SLES11 SP2(Kernel 3.0を使用)について、VMで時間の不一致が見られるという未解決のケースがあります。

clocksource=jiffiesは私の場合は悪化しましたが、あなたの場合は役立つかもしれません。

現在、サポートは高精度イベントタイマーに焦点を合わせています(しかし、組み込みシステムにそのようなデバイスがあるとは思えません)。

2
Nils