Hello all, I am working with QEMU to simulate VersatilePB board.
I am trying to understand how QEMU initialize the virtual peripherals (e.g. UART, vectored Interrupt controller .. etc). When I traced the code, I found a function called "object_init_with_type" in object.c, in which the function pointer "ti->instance_init(obj)" seems to call the peripherals initialization functions. *I have couple of questions here:* 1.) Some peripheral initialization functions are called multiple times such as pl011_init, why is that ? 2.) Where is the entry point for the whole initialization functionalities (that will eventually call "object_init_with_type") Thank you. -- Best Regards, Ramy Sameh Embedded Software Engineer