18c2ecf20Sopenharmony_ci* QEMU Firmware Configuration bindings for ARM
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciQEMU's arm-softmmu and aarch64-softmmu emulation / virtualization targets
48c2ecf20Sopenharmony_ciprovide the following Firmware Configuration interface on the "virt" machine
58c2ecf20Sopenharmony_citype:
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ci- A write-only, 16-bit wide selector (or control) register,
88c2ecf20Sopenharmony_ci- a read-write, 64-bit wide data register.
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ciQEMU exposes the control and data register to ARM guests as memory mapped
118c2ecf20Sopenharmony_ciregisters; their location is communicated to the guest's UEFI firmware in the
128c2ecf20Sopenharmony_ciDTB that QEMU places at the bottom of the guest's DRAM.
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciThe authoritative guest-side hardware interface documentation to the fw_cfg
158c2ecf20Sopenharmony_cidevice can be found in "docs/specs/fw_cfg.txt" in the QEMU source tree.
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ciRequired properties:
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ci- compatible: "qemu,fw-cfg-mmio".
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci- reg: the MMIO region used by the device.
238c2ecf20Sopenharmony_ci  * Bytes 0x0 to 0x7 cover the data register.
248c2ecf20Sopenharmony_ci  * Bytes 0x8 to 0x9 cover the selector register.
258c2ecf20Sopenharmony_ci  * Further registers may be appended to the region in case of future interface
268c2ecf20Sopenharmony_ci    revisions / feature bits.
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciExample:
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci/ {
318c2ecf20Sopenharmony_ci	#size-cells = <0x2>;
328c2ecf20Sopenharmony_ci	#address-cells = <0x2>;
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci	fw-cfg@9020000 {
358c2ecf20Sopenharmony_ci		compatible = "qemu,fw-cfg-mmio";
368c2ecf20Sopenharmony_ci		reg = <0x0 0x9020000 0x0 0xa>;
378c2ecf20Sopenharmony_ci	};
388c2ecf20Sopenharmony_ci};
39