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

On Tue, Jul 14, 2020 at 9:39 PM Pratik Parvati <prat...@vayavyalabs.com>
wrote:

> 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
>

Reply via email to