blob: 78c2bc96056194e8cf4a7a9f421f0efa8af62fb2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
AArch64 virt can't write to memory related to gicv3
Description of problem:
According to the info in generated dtb, the memory-mapped registers of gicv3-distributor have a base addr, which is `0x0800_0000`.
And I have checked the validity by reading `gicd_typer`, which means the base addr is right.
But when I want to configure the gicv3-distributor (like changing `gicd_ctlr`), the value is not changed, keeping the default value. The same thing happens on any register of GICD in my machine.
**Even I write to this memory by gdb `set` command, the value is also unchangeable.**
The addr of `gicd_ctlr` should be `0x0800_0000`(offset=0), which should be readable and writable, isn't it?
I try to modify the value of this addr in assembly as soon as the **machine starts, without enabling MMU**.
This problem should be easier to reproduce.
|