2007-10-26 22:44:33 +00:00
|
|
|
#!/bin/sh
|
|
|
|
# IBM(c) 2007 EPL license http://www.eclipse.org/legal/epl-v10.html
|
|
|
|
nic=0
|
|
|
|
hba=0
|
|
|
|
|
|
|
|
MOD=""
|
|
|
|
|
|
|
|
#Load common usb drivers
|
|
|
|
modprobe ohci-hcd
|
|
|
|
modprobe uhci-hcd
|
|
|
|
modprobe ehci-hcd
|
|
|
|
for i in $(lspci -n | awk '{print $1 "%" $3}')
|
|
|
|
do
|
|
|
|
PCI=$(echo $i | awk -F% '{print $1}')
|
|
|
|
VID="0x0000$(echo $i | awk -F% '{print $2}' |awk -F: '{print $1}')"
|
|
|
|
DID="0x0000$(echo $i | awk -F% '{print $2}' |awk -F: '{print $2}')"
|
|
|
|
if egrep "^[^ ]*[ ]*$VID[ ]*$DID" /lib/modules/*/modules.pcimap >/dev/null
|
|
|
|
then
|
|
|
|
TYPE=$(
|
|
|
|
lspci | \
|
|
|
|
grep "^$PCI " | \
|
|
|
|
awk '{print $2}' | \
|
|
|
|
tr '[A-Z]' '[a-z]'
|
|
|
|
)
|
|
|
|
DESC=$(
|
|
|
|
lspci | \
|
|
|
|
grep "^$PCI " | \
|
|
|
|
awk -F: '{print $3}' | \
|
|
|
|
sed 's/^ *//'
|
|
|
|
)
|
|
|
|
MOD=$(
|
|
|
|
egrep "^[^ ]*[ ]*$VID[ ]*$DID" /lib/modules/*/modules.pcimap | \
|
|
|
|
head -1 | \
|
|
|
|
awk '{print $1}' | \
|
|
|
|
tr -d '"'
|
|
|
|
)
|
|
|
|
case "$TYPE" in
|
|
|
|
ethernet|network)
|
|
|
|
echo "Found ($MOD) $DESC"
|
|
|
|
GOTNIC=1
|
|
|
|
if [ "$MOD" = "gm" ]
|
|
|
|
then
|
|
|
|
echo "alias myri0 $MOD"
|
|
|
|
echo "alias myri0 $MOD" >>/etc/modules.conf
|
|
|
|
echo "alias myri0 $MOD" >>/etc/modprobe.conf
|
|
|
|
else
|
|
|
|
modprobe $MOD
|
|
|
|
udhcpc -i eth$nic -b
|
|
|
|
nic=$(($nic + 1))
|
|
|
|
fi
|
|
|
|
;;
|
|
|
|
scsi|raid)
|
|
|
|
echo "Found ($MOD) $DESC"
|
|
|
|
GOTHBA=1
|
|
|
|
modprobe $MOD
|
|
|
|
modprobe sd_mod
|
|
|
|
modprobe scsi_mod
|
|
|
|
hba=$(($hba + 1))
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
continue
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
fi
|
|
|
|
done
|
2007-11-26 18:43:11 +00:00
|
|
|
if [ -d /proc/device-tree/vdevice/l-lan* ]; then
|
|
|
|
modprobe ibmveth
|
|
|
|
for i in /sys/bus/vio/drivers/ibmveth/*/net*; do
|
|
|
|
udhcpc -i eth$nic -b
|
|
|
|
nic=$(($nic + 1))
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
|
2007-11-12 18:30:02 +00:00
|
|
|
if [ -d /proc/device-tree/lhea* ]; then
|
|
|
|
modprobe ehea
|
|
|
|
for i in /sys/bus/ibmebus/devices/port*; do
|
|
|
|
udhcpc -i eth$nic -b
|
|
|
|
nic=$(($nic + 1))
|
|
|
|
done
|
|
|
|
fi
|
2007-10-26 22:44:33 +00:00
|
|
|
|
2008-01-15 19:37:30 +00:00
|
|
|
#Give 10 seconds for things to quiesce.
|
|
|
|
sleep 10
|