BAR を公開する PCI デバイスと、デバイスにアクセスするためのバーのオフセットがいくつかあります。バー オフセットの 1 つで、64KB の割り当てられたメモリをプログラムする必要があります。私の Linux ドライバーでは、kmalloc() を使用して 64KB のメモリを割り当てていますが、これは仮想アドレスを返します。これがオフセットにプログラムされている場合、ハードウェアは同じものを見ることができません。この仮想アドレスを物理アドレスに変換するにはどうすればよいですか? Google で検索すると、virt_to_phys() を指しているリンクがほとんど表示されませんが、これが kmalloc() ではうまく機能しないという回答はほとんどありません。これについてどうすればいいですか?
質問する
2195 次