On 04/01/17 02:46, Eduardo Habkost wrote:
> TYPE_CFI_PFLASH01 devices need to be mapped by
> pflash_cfi01_register() and can't be used with -device. Remove
> user_creatable from the device class.
>
> Cc: Kevin Wolf <kwolf@redhat.com>
> Cc: Max Reitz <mreitz@redhat.com>
> Cc: qemu-block@nongnu.org
> Cc: Laszlo Ersek <lersek@redhat.com>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> hw/block/pflash_cfi01.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c
> index f48dc20035..594d4cf6fe 100644
> --- a/hw/block/pflash_cfi01.c
> +++ b/hw/block/pflash_cfi01.c
> @@ -927,11 +927,6 @@ static void pflash_cfi01_class_init(ObjectClass *klass, void *data)
> dc->props = pflash_cfi01_properties;
> dc->vmsd = &vmstate_pflash;
> set_bit(DEVICE_CATEGORY_STORAGE, dc->categories);
> - /*
> - * FIXME: Set only for compatibility on q35 machine-type.
> - * Probably never meant to be user-creatable
> - */
> - dc->user_creatable = true;
> }
>
>
>
The commit message is not entirely correct; for example "virt" creates
each flash device in the create_one_flash() function, with manual
qdev_create / qdev_prop_set_* / qdev_init_nofail /
memory_region_add_subregion.
So I recommend updating the commit message to say,
... TYPE_CFI_PFLASH01 devices need to be mapped by
pflash_cfi01_register *or equivalent* and can't be used...
With that,
Reviewed-by: Laszlo Ersek <lersek@redhat.com>