1
私はqemuに新しいデバイスを追加しようとしています。gemを使用してqemuのiomem領域に書き込むことができません
それぞれのcpuファイルで、ベースアドレスを設定するためにsysbus_mmio_mapを使用しました。
新しく作成されたデバイスファイルでsysbus_mmio_map(SYS_BUS_DEVICE(&s->brif), 0, BASE_ADDRESS);
、
memory_region_init_io(&s->iomem, obj, &ops, s, "brif", SIZE);
sysbus_init_mmio((SYS_BUS_DEVICE(obj), &s->iomem);
OPSは、対応する読み取りと書き込みのハンドラがあります。
gdbを使用してIOメモリ領域にアクセスすると、読み取りハンドラが呼び出されますが、gdbを使用してIOメモリ領域に書き込むときに書き込みハンドラが呼び出されません。
私には何が欠けていますか?
更新:ゲスト内で実行されているコードからIOメモリ領域に書き込む場合、書き込みハンドラを取得しますが、問題はgdbからアクセスしようとするときだけです。