Here is a brief context that might help you.
I am referring hw/arm/versatilepb.c
The ARM PrimeCell UART (PL011) device created as follows
dev = qdev_create(NULL, "pl011");
s = SYS_BUS_DEVICE(dev);
qdev_prop_set_chr(dev, "chardev", chr);
qdev_init_nofail(dev);
sysbus_mmio_map(s, 0, addr);
sysbus_connect_irq(s, 0, irq);
Whereas the PL031 RTC device is created as
/* Add PL031 Real Time Clock. */
sysbus_create_simple("pl031", 0x101e8000, pic[10]);
What is the difference between these two devices creation? How do I know which method to use while creating an object?
Thanks & Regards,
Pratik
Hi Support team,Can someone please guide me to understand the difference between sysbus_create_simple and qdev_create?.I understand that these two methods are used to create a new device. But, when to use these functions is not clear to me.Regards,Pratik