|
|
a56a5e |
From 9c45cb9c117505191f2678e25edac481ff6da9f2 Mon Sep 17 00:00:00 2001
|
|
|
a56a5e |
From: Peter Robinson <pbrobinson@gmail.com>
|
|
|
a56a5e |
Date: Fri, 23 May 2014 11:54:01 +0100
|
|
|
a56a5e |
Subject: [PATCH] kernel-modules: Fix storage module selection for
|
|
|
a56a5e |
sdhci/mmc/ahci
|
|
|
a56a5e |
|
|
|
a56a5e |
Currently the block driver detection for generic initrd doesn't include
|
|
|
a56a5e |
the SD/MMC drivers so we fail to boot generic images on any device using
|
|
|
a56a5e |
those platforms as boot devices when using a generic initrd. Add logic
|
|
|
a56a5e |
to detect those modules. This primarily fixes embedded ARM devices but
|
|
|
a56a5e |
also likely intel tablets/dev boards and enterprise hypervisors that
|
|
|
a56a5e |
have the ability to boot from SD.
|
|
|
a56a5e |
|
|
|
a56a5e |
Also the ahci_init_controller misses a number of drivers that use the
|
|
|
a56a5e |
libahci_platform module for the init so this fixes some missing achi
|
|
|
a56a5e |
moduless too.
|
|
|
a56a5e |
|
|
|
a56a5e |
Finally it cleans up the ARM storage module hacks that the above now
|
|
|
a56a5e |
deals with in a more generic manner.
|
|
|
a56a5e |
|
|
|
a56a5e |
Signed-off-by: <pbrobinson@gmail.com>
|
|
|
a56a5e |
(cherry picked from commit 827ec27a9c36755095dda899eff75cdae78b2120)
|
|
|
a56a5e |
---
|
|
|
a56a5e |
modules.d/90kernel-modules/module-setup.sh | 6 ++----
|
|
|
a56a5e |
1 file changed, 2 insertions(+), 4 deletions(-)
|
|
|
a56a5e |
|
|
|
a56a5e |
diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh
|
|
|
1755ca |
index a7803d00..603a7a19 100755
|
|
|
a56a5e |
--- a/modules.d/90kernel-modules/module-setup.sh
|
|
|
a56a5e |
+++ b/modules.d/90kernel-modules/module-setup.sh
|
|
|
a56a5e |
@@ -5,7 +5,7 @@
|
|
|
a56a5e |
installkernel() {
|
|
|
a56a5e |
if [[ -z $drivers ]]; then
|
|
|
a56a5e |
block_module_filter() {
|
|
|
a56a5e |
- local _blockfuncs='ahci_init_controller|ata_scsi_ioctl|scsi_add_host|blk_cleanup_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device|usb_stor_disconnect'
|
|
|
a56a5e |
+ local _blockfuncs='ahci_platform_get_resources|ata_scsi_ioctl|scsi_add_host|blk_cleanup_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device|usb_stor_disconnect|mmc_add_host|sdhci_pltfm_init'
|
|
|
a56a5e |
# subfunctions inherit following FDs
|
|
|
a56a5e |
local _merge=8 _side2=9
|
|
|
a56a5e |
function bmf1() {
|
|
|
a56a5e |
@@ -50,9 +50,7 @@ installkernel() {
|
|
|
a56a5e |
|
|
|
a56a5e |
if [[ "$(uname -p)" == arm* ]]; then
|
|
|
a56a5e |
# arm specific modules
|
|
|
a56a5e |
- hostonly='' instmods sdhci_esdhc_imx mmci sdhci_tegra mvsdio omap omapdrm \
|
|
|
a56a5e |
- omap_hsmmc panel-tfp410 sdhci_dove ahci_platform pata_imx sata_mv \
|
|
|
a56a5e |
- ehci-tegra mmc_block usb_storage
|
|
|
a56a5e |
+ hostonly='' instmods omapdrm panel-tfp410
|
|
|
a56a5e |
fi
|
|
|
a56a5e |
|
|
|
a56a5e |
# install virtual machine support
|