As the autodetect hook gets better with every kernel release, we can
"afford" to remove the needless segregation of block device driver hooks
and simply merge all the "vanilla" or "unstacked" block device drivers.
This should make a lot of setups, like usb or virtio, easier as you
won't need to remember to add the hook.
Signed-off-by: Dave Reisner
---
install/block | 45 +++++++++++++++++++++++++++++++++++++++++++++
install/fw | 22 +---------------------
install/mmc | 19 +------------------
install/pata | 22 +---------------------
install/sata | 23 +----------------------
install/scsi | 22 +---------------------
install/usb | 21 +--------------------
install/virtio | 16 +---------------
mkinitcpio.conf | 14 +++++---------
9 files changed, 57 insertions(+), 147 deletions(-)
create mode 100644 install/block
mode change 100644 => 120000 install/fw
mode change 100644 => 120000 install/mmc
mode change 100644 => 120000 install/pata
mode change 100644 => 120000 install/sata
mode change 100644 => 120000 install/scsi
mode change 100644 => 120000 install/usb
mode change 100644 => 120000 install/virtio
diff --git a/install/block b/install/block
new file mode 100644
index 0000000..44f2c27
--- /dev/null
+++ b/install/block
@@ -0,0 +1,45 @@
+#!/bin/bash
+
+build() {
+ local filter
+ local -A blockdevs
+
+ # pata, sata, scsi
+ for filter in 'scsi/.*ata' '/(block|scsi|fusion)/' 'ata/[ps]ata_' \
+ 'ata/(ahci|pdc_adma|ata_piix|ata_generic)'; do
+ add_checked_modules "$filter" && blockdevs['sd_mod']=1
+ done
+
+ # usb
+ if add_checked_modules -f '(_cs|sl811_hcd|isp116x_hcd)' '/usb/host'; then
+ blockdevs+=(['usb_storage']=1 ['sd_mod']=1 ['sr_mod']=1)
+ add_checked_modules 'drivers/usb/storage/ums-*'
+ fi
+
+ # firewire
+ if add_checked_modules '/drivers/firewire/'; then
+ blockdevs+=(['firewire-sbp2']=1 ['sd_mod']=1 ['sr_mod']=1)
+ fi
+
+ # mmc
+ if add_checked_modules '/mmc'; then
+ blockdevs+=(['tifm_7xx1']=1 ['mmc_block']=1)
+ fi
+
+ # virtio
+ if add_checked_modules 'virtio'; then
+ blockdevs['virtio_blk']=1
+ fi
+
+ map add_module "${!blockdevs[@]}"
+}
+
+help() {
+ cat <