Thank you for the detailed feedback. My initial goal is intentionally much smaller than full smartphone emulation. I mainly want to establish a minimal MSM7K machine model capable of early Linux/Android boot and serial console output.
I agree that a complete emulation of commercial devices would require significant long-term work, especially for multimedia and modem-related hardware. Regarding experience: - I have been studying QEMU internals and ARM board models - I have experience with low-level firmware/kernel analysis - I have also been working with vendor kernel sources and older Android boot chains For the initial devices: - ARM1136 support already existing in QEMU simplifies the CPU side - Some peripherals appear to be Qualcomm-specific rather than standard ARM PrimeCell IP blocks, although I am still verifying this through downstream kernel sources and available documentation My current plan is roughly: 1. Minimal machine definition 2. UART support 3. Interrupt/timer implementation 4. NAND boot path 5. Linux kernel boot to serial console I also appreciate the comments regarding: - record/replay compatibility - maintainability expectations - testing and documentation - avoiding legacy API patterns I intend to keep the implementation incremental and localized as much as possible. Thanks again for the guidance and references.
