[Suzaku:01500] Re: Help:仮想アドレスを物理アドレスに変換
Yasushi SHOJI
email@hidden
2009年 6月 4日 (木) 09:25:04 JST
At Thu, 4 Jun 2009 08:32:22 +0900 (JST),
菊地 義和[DNP情報システム] <email@hidden> wrote:
>
> AUTO変数を定義し、DMAを使用するためにその物理アドレスを知りたいのです。
auto(stack)変数は、あまり DMAに使いません。DMAコントローラによりますが、
x86の ISAのように、DMAに使えるアドレス空間が固定されていることがあるか
らです。
Linux device driver の Direct memory accessの章に詳しい説明があります
が、dma_alloc_coherent()を使うのが定石のようです。
ちなみに、stackの物理アドレスを知るには、virt_to_physで、currentが指し
ている thread_infoの物理アドレスを取得して、auto変数の offsetを足して
あげると取れるはずです。
http://hira-consulting.com/wiki/index.php?thread_info%2Flinux2.6
--
yashi
suzaku メーリングリストの案内