Feature changed by: Michal Marek (michal-m)
Feature #305312, revision 40
Title: openSUSE earlier than 11.1 Alpha 2 don't install on SD card
openSUSE-11.2: Rejected by Stephan Binner (cthiel1)
reject date: 2009-10-27 15:57:58
reject reason: -ENOTIMELEFT for 11.2.
- openSUSE-11.3: Rejected by (a_jaeger)
+ openSUSE-11.3: Rejected by Stephan Binner (a_jaeger)
reject date: 2010-10-06 16:03:35
reject reason: not done.
Requested by: Harald Welte (laf0rge)
[Please note that I'm working for the CPU+Chipset maker VIA and this is
an actually important feature for the 'netbook' class of devices in the
Recently, BIOS vendors have been starting to implement a 'boot from SD
card' feature, much like they have added 'boot from USB memory stick'
some years ago.
The only SD-card host controller that I've seen this implemented for is
SDHCI compliant host controllers.
While this is a nice feature to support, for most systems it is just a
gimmick and not something neccessarry.
However, there are hand-held devices such as netbooks in the pipeline
which do not have any other mass storage device. No hard disk and no
IDE-attached flash disk or the like. They just have one (more likely
two or more) SD card slots and you install and store not only your data
but the entire operating system on that SD card.
Furthermore, there are products like Samsung moviNAND which are
basically a SDcard in a BGA package that can be soldered onto a PCB. So
from a protocol and software point of view it is a SD card, but it is
mechanically soldered onto the board. Such device have gained some
popularity in ARM-based designs, but we'll likely see them in the x86
To make this happen,
The distribution installation initrd needs to
1. include and auto-load the sdhc.ko and sdhci_pci.ko kernel modules 2.
create the /dev/mmcblk* device nodes as per udev/hotplug events
The actual distribution installation program needs to
1. recognize /dev/mmcblk* as block devices that can be used as target
device 2. use a grub-install or similar program that can discover the
bios drive number to /dev/mmcblk* device name mapping
I have outlined the full details at
- OpenSUSE <= 11.1 Alpha 2 don't install on SD card
- Installing Linux on booting SD card (url:
#6: Christoph Thiel (cthiel1) (2009-05-26 18:36:11) (reply to #4)
To be able to implement this feature, we will need hardware for
testing. Christian, do you have hardware available now?
#7: Christian Zoz (zoz) (2009-05-27 12:09:25) (reply to #6)
No, we still have no 'SD card only' devices.
#8: Jiri Srain (jsrain) (2009-06-01 12:14:32)
Jozef did some testing with openSUSE 11.1 final, with following results
(laptop had both SD-card as well as internal drive as provided by the
mobile devices team):
* parted has problems with SD cards which have not alligned partitions
(is the case of some cards, others work well). IMO this should be
handled as bug for parted.
* 11.1 installaiton worked without any problems, just with manual
bootloader adjustments (boot device, disk order)
However, our machine had the card reader internally connected via USB.
Steffen, would it be possible to add the modules listed in the initial
request into initrd as well as add probing for the disks?
Arvin, can partitioner work with /dev/mmcblk* at all? If not, how much
work would it mean?
Christian, do we have any device which accesses the SD card as
/dev/mmcblk* (not necessarily with the booting options for the
development, but will be needed for testing)?
#9: Steffen Winterfeldt (snwint) (2009-06-02 15:16:30) (reply to #8)
I've added the mentioned modules; they should be automatically loaded.
Not sure about mmc_block, though.
#10: Arvin Schnell (aschnell) (2009-06-03 14:41:53) (reply to #8)
Extending storage to handle /dev/mmcblk* should be easy if those
devices behave like normal hard disks.
#12: Christian Zoz (zoz) (2009-06-30 13:43:11)
Maybe the Acer Aspire One is the rigth system. Vladislav is just
#13: Greg Kroah-Hartman (gregkh) (2009-06-30 17:22:34) (reply to #12)
On the Acer Aspire One machines I have access to, they do not have BIOS
support to boot from the SD reader.
#15: Jan Engelhardt (jengelh) (2009-07-09 13:52:53)
Hm. Installing SUSE 11.0-factory onto a CF card (with ATA interface
controller) seemed to work already. Is there lots of difference towards
#16: Jiri Srain (jsrain) (2009-07-09 15:27:24) (reply to #15)
From my POV, this feature is mostly about checking that it works.
Anything connected via ATA, SATA or USB shall work, as long as it gets
/dev/sdx device name.
However, so far it has not been tested at all to install system on
/dev/mmcblkx at all (in 11.1, needed kernel drivers are not in the
ramdisk). In theory, everything should work, given there is no hardware
available, we have no way to find out.
#17: Arvin Schnell (aschnell) (2009-07-16 11:44:57)
I have added support for the partition naming of mmcblk devices to
libstorage and yast2-storage.
+ #21: Michal Marek (michal-m) (2010-10-06 16:28:07)
+ mkinitrd in 11.2 and 11.3 adds the mmc_block if the root fs is on
+ /dev/mmc*. Can someone test to see if there is anything else to do?