]> git.pld-linux.org Git - projects/geninitrd.git/blob - mod-sata.sh
glibc 2.31 ldd prints 'not a dynamic executable' on stderr, so silence it.
[projects/geninitrd.git] / mod-sata.sh
1 #!/bin/sh
2 # geninitrd mod: sata
3
4 find_modules_sata() {
5         verbose "Finding SATA modules (class=0x0106)"
6
7         # Classes (we want only 0106)
8         # http://pci-ids.ucw.cz/read/PD/01
9         # 0100 - SCSI
10         # 0101 - IDE/PATA
11         # 0106 - SATA/AHCI
12         # 0107 - SAS
13         local m modules=$(find_modules_by_class 0106)
14
15         # sort modules that ones who depend on libata are first
16         # this is best we could think of now :)
17         local left right
18         for m in $modules; do
19                 if NEW_MODINFO=1 modinfo -k $kernel -F depends $m | grep -q libata; then
20                         left="$left $m"
21                 else
22                         right="$right $m"
23                 fi
24         done
25
26         for m in $left $right; do
27                 find_module $m
28         done
29 }
This page took 0.049399 seconds and 3 git commands to generate.