qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/3] Drop default SD card creation


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH 0/3] Drop default SD card creation
Date: Thu, 16 Aug 2012 17:17:41 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1 (gnu/linux)

Paul Brook <address@hidden> writes:

>> On 16 August 2012 15:11, Markus Armbruster <address@hidden> wrote:
>> > Peter Maydell <address@hidden> writes:
>> >> As suggested in the recent discussion on Markus' patchset to suppress
>> >> unused default drives, this patchset cleans up the omap and pxa2xx
>> >> 
>> >> SD card controllers to behave like the other controllers:
>> >>  * the init function looks for the next IF_SD drive
>> >>  * if there isn't one, we start up as a controller with no card
>> >>  
>> >>    present
>> > 
>> > Isn't this an incompatible change?  Before, you get an SD card reader
>> > backed by an empty BDS default.  You can load/unload cards in the
>> > monitor.  After, you get an SD card reader that isn't backed by a BDS by
>> > default.  Device models prepared for that can treat it as permanently
>> > empty.
>> 
>> Hmm, yes, but most of our SD controllers already act that way.
>> We should probably fix them all...
>> 
>> So what's the block layer equivalent of drive_get_next() that always
>> returns us something we can get a bdrv from?
>
> I think this may be the wrong way to fix this.  SD cards aren't really have 
> removable media.  In the same way that a SCSI HDD are generally not removable 
> media - you hotplug the whole drive.

If an SD card device doesn't support media change, then the device model
should:

1. Insist on non-null, non-empty BDS on initialization (this ensures we
got media)

2. Not implement BlockDevOps method change_media_cb() (this ensures we
keep it).

> Don't we really want a proper QOM device for the SD card, with hotplug 
> support.

Don't we really want that for any device model?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]